org.exist.xquery.value
Class DurationValue

java.lang.Object
  extended byorg.exist.xquery.value.AtomicValue
      extended byorg.exist.xquery.value.ComputableValue
          extended byorg.exist.xquery.value.DurationValue
All Implemented Interfaces:
java.lang.Comparable, Indexable, Item, Sequence
Direct Known Subclasses:
org.exist.xquery.value.OrderedDurationValue

public class DurationValue
extends ComputableValue

Author:
Piotr Kaminski

Field Summary
static int DAY
           
static int HOUR
           
static int MINUTE
           
static int MONTH
           
static int YEAR
           
 
Fields inherited from class org.exist.xquery.value.AtomicValue
EMPTY_VALUE
 
Fields inherited from interface org.exist.xquery.value.Sequence
EMPTY_SEQUENCE
 
Constructor Summary
DurationValue(javax.xml.datatype.Duration duration)
           
DurationValue(java.lang.String str)
           
 
Method Summary
 int compareTo(java.text.Collator collator, AtomicValue other)
           
 boolean compareTo(java.text.Collator collator, int operator, AtomicValue other)
           
 int conversionPreference(java.lang.Class target)
          Returns a preference indicator, indicating the preference of a value to be converted into the given Java class.
 AtomicValue convertTo(int requiredType)
          Convert this item into an atomic value, whose type corresponds to the specified target type.
 ComputableValue div(ComputableValue other)
           
 boolean effectiveBooleanValue()
          Get the effective boolean value of this sequence.
 javax.xml.datatype.Duration getCanonicalDuration()
           
 int getPart(int part)
           
 double getSeconds()
           
 java.lang.String getStringValue()
          Return the string value of this item (see the definition of string value in XPath).
 int getType()
          Return the type of this item according to the type constants defined in class Type.
 AtomicValue max(java.text.Collator collator, AtomicValue other)
           
 AtomicValue min(java.text.Collator collator, AtomicValue other)
           
 ComputableValue minus(ComputableValue other)
           
 ComputableValue mult(ComputableValue other)
           
 DurationValue negate()
           
 ComputableValue plus(ComputableValue other)
           
 java.lang.Object toJavaObject(java.lang.Class target)
          Convert the value into an instance of the specified Java class.
static DurationValue wrap(javax.xml.datatype.Duration duration)
          Create a new duration value of the most specific type allowed by the fields set in the given duration object.
 
Methods inherited from class org.exist.xquery.value.AtomicValue
add, addAll, atomize, clearContext, compareTo, contains, copyTo, deserialize, dump, endsWith, getCardinality, getDocumentSet, getItemType, getLength, hasMany, hasOne, isCached, isEmpty, isPersistentSet, itemAt, iterate, promote, removeDuplicates, serialize, serializeValue, setIsCached, setSelfAsContext, startsWith, toNodeSet, toSAX, toSequence, toString, unorderedIterator
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

YEAR

public static final int YEAR
See Also:
Constant Field Values

MONTH

public static final int MONTH
See Also:
Constant Field Values

DAY

public static final int DAY
See Also:
Constant Field Values

HOUR

public static final int HOUR
See Also:
Constant Field Values

MINUTE

public static final int MINUTE
See Also:
Constant Field Values
Constructor Detail

DurationValue

public DurationValue(javax.xml.datatype.Duration duration)

DurationValue

public DurationValue(java.lang.String str)
              throws XPathException
Method Detail

wrap

public static DurationValue wrap(javax.xml.datatype.Duration duration)
Create a new duration value of the most specific type allowed by the fields set in the given duration object. If no fields are set, return a xs:dayTimeDuration.

Parameters:
duration - the duration to wrap
Returns:
a new instance of the most specific subclass of DurationValue

getCanonicalDuration

public javax.xml.datatype.Duration getCanonicalDuration()

getType

public int getType()
Description copied from interface: Item
Return the type of this item according to the type constants defined in class Type.

Specified by:
getType in interface Item
Overrides:
getType in class AtomicValue

negate

public DurationValue negate()
                     throws XPathException
Throws:
XPathException

getStringValue

public java.lang.String getStringValue()
Description copied from interface: Item
Return the string value of this item (see the definition of string value in XPath).

Specified by:
getStringValue in interface Item
Specified by:
getStringValue in class ComputableValue

getPart

public int getPart(int part)

getSeconds

public double getSeconds()

convertTo

public AtomicValue convertTo(int requiredType)
                      throws XPathException
Description copied from interface: Item
Convert this item into an atomic value, whose type corresponds to the specified target type. requiredType should be one of the type constants defined in Type. An XPathException is thrown if the conversion is impossible.

Specified by:
convertTo in interface Item
Specified by:
convertTo in class ComputableValue
Throws:
XPathException

compareTo

public boolean compareTo(java.text.Collator collator,
                         int operator,
                         AtomicValue other)
                  throws XPathException
Specified by:
compareTo in class ComputableValue
Throws:
XPathException

compareTo

public int compareTo(java.text.Collator collator,
                     AtomicValue other)
              throws XPathException
Specified by:
compareTo in class ComputableValue
Throws:
XPathException

max

public AtomicValue max(java.text.Collator collator,
                       AtomicValue other)
                throws XPathException
Specified by:
max in class ComputableValue
Throws:
XPathException

min

public AtomicValue min(java.text.Collator collator,
                       AtomicValue other)
                throws XPathException
Specified by:
min in class ComputableValue
Throws:
XPathException

plus

public ComputableValue plus(ComputableValue other)
                     throws XPathException
Specified by:
plus in class ComputableValue
Throws:
XPathException

minus

public ComputableValue minus(ComputableValue other)
                      throws XPathException
Specified by:
minus in class ComputableValue
Throws:
XPathException

mult

public ComputableValue mult(ComputableValue other)
                     throws XPathException
Specified by:
mult in class ComputableValue
Throws:
XPathException

div

public ComputableValue div(ComputableValue other)
                    throws XPathException
Specified by:
div in class ComputableValue
Throws:
XPathException

conversionPreference

public int conversionPreference(java.lang.Class target)
Description copied from interface: Sequence
Returns a preference indicator, indicating the preference of a value to be converted into the given Java class. Low numbers mean that the value can be easily converted into the given class.

Specified by:
conversionPreference in interface Item
Overrides:
conversionPreference in class AtomicValue

toJavaObject

public java.lang.Object toJavaObject(java.lang.Class target)
                              throws XPathException
Description copied from interface: Sequence
Convert the value into an instance of the specified Java class.

Specified by:
toJavaObject in interface Item
Overrides:
toJavaObject in class AtomicValue
Throws:
XPathException

effectiveBooleanValue

public boolean effectiveBooleanValue()
                              throws XPathException
Description copied from interface: Sequence
Get the effective boolean value of this sequence. Will be false if the sequence is empty, true otherwise.

Specified by:
effectiveBooleanValue in interface Sequence
Overrides:
effectiveBooleanValue in class AtomicValue
Throws:
XPathException


Copyright (C) Wolfgang Meier. All rights reserved.