public final class TimeValue extends CalendarValue implements XPathComparable
| Modifier and Type | Class and Description |
|---|---|
static class |
TimeValue.TimeComparable |
MISSING_TIMEZONE, NO_TIMEZONEtypeLabel| Constructor and Description |
|---|
TimeValue(byte hour,
byte minute,
byte second,
int microsecond,
int tz)
Deprecated.
since 10.0: use the constructor
TimeValue(byte, byte, byte, int, int, String)
that accepts nanosecond precision |
TimeValue(byte hour,
byte minute,
byte second,
int nanosecond,
int tz,
java.lang.String flag)
Private constructor to construct a time value given the hour, minute, second, and nanosecond components.
|
TimeValue(java.util.GregorianCalendar calendar,
int tz)
Constructor: create a time value given a Java calendar object
|
| Modifier and Type | Method and Description |
|---|---|
TimeValue |
add(DurationValue duration)
Add a duration to a dateTime
|
TimeValue |
adjustTimezone(int timezone)
Return a new time with the same normalized value, but
in a different timezone.
|
int |
compareTo(CalendarValue other,
int implicitTimezone)
Compare the value to another dateTime value
|
int |
compareTo(XPathComparable other)
Compare the value to another dateTime value
|
AtomicValue |
copyAsSubType(AtomicType typeLabel)
Make a copy of this time value,
but with a different type label
|
boolean |
equals(java.lang.Object other)
The equals() methods on atomic values is defined to follow the semantics of eq when applied
to two atomic values.
|
java.util.GregorianCalendar |
getCalendar()
Get a Java Calendar object corresponding to this time, on a reference date
|
UnicodeString |
getCanonicalLexicalRepresentation()
Get the canonical lexical representation as defined in XML Schema.
|
AtomicValue |
getComponent(AccessorFn.Component component)
Get a component of the value.
|
byte |
getHour()
Get the hour component, 0-23
|
int |
getMicrosecond()
Get the microsecond component, 0-999_999
|
byte |
getMinute()
Get the minute component, 0-59
|
int |
getNanosecond()
Get the nanosecond component, 0-999_999
|
UnicodeString |
getPrimitiveStringValue()
Convert to string
|
BuiltInAtomicType |
getPrimitiveType()
Determine the primitive type of the value.
|
TimeValue.TimeComparable |
getSchemaComparable() |
byte |
getSecond()
Get the second component, 0-59
|
XPathComparable |
getXPathComparable(StringCollator collator,
int implicitTimezone)
Get an object value that implements the XPath equality and ordering comparison semantics for this value.
|
int |
hashCode()
Returns a hash code value for the object.
|
TimeValue |
makeTimeValue(byte hour,
byte minute,
byte second,
int nanosecond,
int tz)
Factory method to construct a time value given the hour, minute, second, and nanosecond components.
|
static ConversionResult |
makeTimeValue(UnicodeString s)
Static factory method: create a time value from a supplied string, in
ISO 8601 format
|
DayTimeDurationValue |
subtract(CalendarValue other,
XPathContext context)
Determine the difference between two points in time, as a duration
|
DateTimeValue |
toDateTime()
Convert to a DateTime value.
|
adjustTimezone, appendString, appendTimezone, appendTimezone, appendTwoDigits, asMapKey, getTimezoneInMinutes, getXMLGregorianCalendar, getXPathMatchKey, hasTimezone, identityHashCode, isIdentical, makeCalendarValue, removeTimezone, setTimezoneInMinutesasAtomic, atomize, checkPermittedContents, checkValidInJavascript, effectiveBooleanValue, getCardinality, getGenre, getItemType, getLength, getUnicodeStringValue, getUType, head, isIdentical, isNaN, isUntypedAtomic, itemAt, iterate, iterator, setTypeLabel, show, toShortString, toStringclone, finalize, getClass, notify, notifyAll, wait, wait, waitasAtomicgetStringValue, isStreamed, reduce, subsequenceasIterable, concatenate, containsNode, materializemakeRepeatable@Deprecated
public TimeValue(byte hour,
byte minute,
byte second,
int microsecond,
int tz)
TimeValue(byte, byte, byte, int, int, String)
that accepts nanosecond precisionhour - the hour value, 0-23minute - the minutes value, 0-59second - the seconds value, 0-59microsecond - the number of microseconds, 0-999999tz - the timezone displacement in minutes from UTC. Supply the value
CalendarValue.NO_TIMEZONE if there is no timezone component.public TimeValue(byte hour,
byte minute,
byte second,
int nanosecond,
int tz,
java.lang.String flag)
hour - the hour value, 0-23minute - the minutes value, 0-59second - the seconds value, 0-59nanosecond - the number of microseconds, 0-999999tz - the timezone displacement in minutes from UTC. Supply the value
CalendarValue.NO_TIMEZONE if there is no timezone component.flag - used to disambiguate this constructor. Must be set to "".public TimeValue(java.util.GregorianCalendar calendar,
int tz)
calendar - holds the date and timetz - the timezone offset in minutes, or NO_TIMEZONE indicating that there is no timezonepublic TimeValue makeTimeValue(byte hour, byte minute, byte second, int nanosecond, int tz)
hour - the hour value, 0-23minute - the minutes value, 0-59second - the seconds value, 0-59nanosecond - the number of nanoseconds, 0-999_999_999tz - the timezone displacement in minutes from UTC. Supply the value
CalendarValue.NO_TIMEZONE if there is no timezone component.public static ConversionResult makeTimeValue(UnicodeString s)
s - the time in the lexical format hh:mm:ss[.ffffff] followed optionally by
timezone in the form [+-]hh:mm or Zpublic BuiltInAtomicType getPrimitiveType()
getPrimitiveType in class AtomicValuepublic byte getHour()
public byte getMinute()
public byte getSecond()
public int getMicrosecond()
public int getNanosecond()
public UnicodeString getPrimitiveStringValue()
getPrimitiveStringValue in class AtomicValuepublic UnicodeString getCanonicalLexicalRepresentation()
getCanonicalLexicalRepresentation in interface AtomicSequencegetCanonicalLexicalRepresentation in class AtomicValuepublic DateTimeValue toDateTime()
toDateTime in class CalendarValuepublic java.util.GregorianCalendar getCalendar()
getCalendar in class CalendarValuepublic AtomicValue copyAsSubType(AtomicType typeLabel)
copyAsSubType in class AtomicValuetypeLabel - the new type label. This must be a subtype of xs:time.public TimeValue adjustTimezone(int timezone)
adjustTimezone in class CalendarValuetimezone - the new timezone offset, in minutespublic AtomicValue getComponent(AccessorFn.Component component) throws XPathException
getComponent in class AtomicValuecomponent - the required componentXPathException - if a dynamic error occurspublic XPathComparable getXPathComparable(StringCollator collator, int implicitTimezone) throws NoDynamicContextException
AtomicValuegetXPathComparable in class CalendarValuecollator - the collation to be used when comparing stringsimplicitTimezone - the implicit timezone in the dynamic context, used when comparing
dates/times with and without timezoneNoDynamicContextException - if the supplied implicit timezone is "NO_TIMEZONE" (meaning
unknown), and the implicit timezone is actually required because the value in question is a date/time
value with no timezone. This can cause a failure to evaluate expressions statically (because the implicit
timezone is not known statically), and it will then be caught, meaning that the expression has to be
evaluated dynamically.public int compareTo(XPathComparable other)
compareTo in interface java.lang.Comparable<XPathComparable>other - The other dateTime valuejava.lang.ClassCastException - if the other value is not a TimeValue (the parameter
is declared as Object to satisfy the Comparable interface)public int compareTo(CalendarValue other, int implicitTimezone) throws NoDynamicContextException
compareTo in class CalendarValueother - The other dateTime valueimplicitTimezone - The implicit timezone assumed for a value with no timezonejava.lang.ClassCastException - if the other value is not a DateTimeValue (the parameter
is declared as Object to satisfy the Comparable interface)NoDynamicContextException - if the implicit timezone is required and is not available
(because the function is called at compile time)public TimeValue.TimeComparable getSchemaComparable()
public boolean equals(java.lang.Object other)
AtomicValueThe hashCode() method is consistent with equals().
equals in class AtomicValueother - the other valuepublic int hashCode()
AtomicValuehashCode in class AtomicValuepublic TimeValue add(DurationValue duration) throws XPathException
add in class CalendarValueduration - the duration to be added (may be negative)XPathException - if the duration is an xs:duration, as distinct from
a subclass thereofpublic DayTimeDurationValue subtract(CalendarValue other, XPathContext context) throws XPathException
subtract in class CalendarValueother - the other point in timecontext - XPath dynamic evaluation contextXPathException - for example if one value is a date and the other is a timeCopyright (c) 2004-2022 Saxonica Limited. All rights reserved.