org.exist.xquery.value
Class AbstractDateTimeValue
java.lang.Object
org.exist.xquery.value.AtomicValue
org.exist.xquery.value.ComputableValue
org.exist.xquery.value.AbstractDateTimeValue
- All Implemented Interfaces:
- Item, Sequence
- Direct Known Subclasses:
- DateTimeValue, DateValue, TimeValue
- public abstract class AbstractDateTimeValue
- extends ComputableValue
- Author:
- wolf, Piotr Kaminski
|
Constructor Summary |
protected |
AbstractDateTimeValue(XMLGregorianCalendar calendar)
Create a new date time value based on the given calendar. |
| Methods inherited from class org.exist.xquery.value.AtomicValue |
add, addAll, atomize, clearContext, contains, copyTo, dump, effectiveBooleanValue, endsWith, getCardinality, getDocumentSet, getItemType, getLength, getType, isCached, isPersistentSet, itemAt, iterate, removeDuplicates, setIsCached, setSelfAsContext, startsWith, toNodeSet, toSAX, toSequence, toString, unorderedIterator |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
calendar
protected final XMLGregorianCalendar calendar
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
SECOND
public static final int SECOND
- See Also:
- Constant Field Values
MILLISECOND
public static final int MILLISECOND
- See Also:
- Constant Field Values
AbstractDateTimeValue
protected AbstractDateTimeValue(XMLGregorianCalendar calendar)
- Create a new date time value based on the given calendar. The calendar is
not cloned, so it is the subclass's responsibility to make sure there are
no external references to it that would allow for mutation.
- Parameters:
calendar - the calendar to wrap into an XPath value
getImplicitCalendar
protected XMLGregorianCalendar getImplicitCalendar()
- Return a calendar with the timezone field set, to be used for order comparison.
If the original calendar did not specify a timezone, set the local timezone (unadjusted
for daylight savings). The returned calendars will be totally ordered between themselves.
We also set any missing fields to ensure that normalization doesn't discard important data!
(This is probably a bug in the JAXP implementation, but the workaround doesn't hurt us,
so it's faster to just fix it here.)
- Returns:
- the calendar represented by this object, with the timezone field filled in with an implicit value if necessary
getCanonicalCalendar
protected XMLGregorianCalendar getCanonicalCalendar()
getTrimmedCalendar
protected XMLGregorianCalendar getTrimmedCalendar()
createSameKind
protected abstract AbstractDateTimeValue createSameKind(XMLGregorianCalendar cal)
throws XPathException
- Throws:
XPathException
getTimeInMillis
protected long getTimeInMillis()
getXMLSchemaType
protected abstract QName getXMLSchemaType()
getStringValue
public java.lang.String getStringValue()
throws XPathException
- 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
- Throws:
XPathException
convertTo
public abstract 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
getPart
public int getPart(int part)
validateTimezone
protected void validateTimezone(DayTimeDurationValue offset)
throws XPathException
- Throws:
XPathException
adjustedToTimezone
public AbstractDateTimeValue adjustedToTimezone(DayTimeDurationValue offset)
throws XPathException
- Throws:
XPathException
withoutTimezone
public AbstractDateTimeValue withoutTimezone()
throws XPathException
- Throws:
XPathException
getTimezone
public Sequence getTimezone()
throws XPathException
- 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
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 javaClass)
- 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
<oXygen/>
XML Editor
provides support for editing and debugging XQuery
expressions against the eXist XML Database.