public final class DayTimeDurationValue extends DurationValue implements Comparable
microseconds, months, negative, secondstypeLabel| Constructor and Description |
|---|
DayTimeDurationValue(int sign,
int days,
int hours,
int minutes,
long seconds,
int microseconds)
Create a dayTimeDuration given the number of days, hours, minutes, and seconds.
|
| Modifier and Type | Method and Description |
|---|---|
DurationValue |
add(DurationValue other)
Add two dayTimeDurations
|
int |
compareTo(Object other)
Compare the value to another duration value
|
AtomicValue |
copyAsSubType(AtomicType typeLabel)
Create a copy of this atomic value, with a different type label
|
DecimalValue |
divide(DurationValue other)
Find the ratio between two durations
|
static DayTimeDurationValue |
fromMicroseconds(long microseconds)
Construct a duration value as a number of microseconds.
|
static DayTimeDurationValue |
fromMilliseconds(long milliseconds)
Construct a duration value as a number of milliseconds.
|
static DayTimeDurationValue |
fromSeconds(BigDecimal seconds)
Construct a duration value as a number of seconds.
|
long |
getLengthInMicroseconds()
Get length of duration in microseconds, as a long
|
double |
getLengthInSeconds()
Get length of duration in seconds
|
CharSequence |
getPrimitiveStringValue()
Convert to string
|
BuiltInAtomicType |
getPrimitiveType()
Determine the primitive type of the value.
|
Object |
getXPathComparable(boolean ordered,
StringCollator collator,
XPathContext context)
Get a Comparable value that implements the XPath ordering comparison semantics for this value.
|
static ConversionResult |
makeDayTimeDurationValue(CharSequence s)
Factory method: create a duration value from a supplied string, in
ISO 8601 format [-]PnDTnHnMnS
|
DurationValue |
multiply(double n)
Multiply duration by a number.
|
DurationValue |
negate()
Negate a duration (same as subtracting from zero, but it preserves the type of the original duration)
|
DurationValue |
subtract(DurationValue other)
Subtract two dayTime-durations
|
badDuration, badDuration, equals, getComponent, getDays, getHours, getMicroseconds, getMinutes, getMonths, getSchemaComparable, getSchemaComparable, getSeconds, getTotalMonths, getTotalSeconds, getYears, hashCode, makeDuration, makeDuration, normalizeDuration, normalizeZeroDuration, signum, simpleIntegerasAtomic, checkPermittedContents, effectiveBooleanValue, getCanonicalLexicalRepresentation, getCardinality, getItemType, getStringValue, getStringValueCS, head, isIdentical, isIdentical, isNaN, itemAt, iterate, process, setTypeLabel, toStringgetLength, reduce, subsequenceclone, finalize, getClass, notify, notifyAll, wait, wait, waitgetLengthreduce, subsequencepublic DayTimeDurationValue(int sign,
int days,
int hours,
int minutes,
long seconds,
int microseconds)
throws IllegalArgumentException
sign - positive number for positive durations, negative for negative duratoinsdays - number of dayshours - number of hoursminutes - number of minutesseconds - number of secondsmicroseconds - number of microsecondsIllegalArgumentException - if the value is out of range; specifically, if the total
number of seconds exceeds 2^63; or if any of the values is negativepublic static ConversionResult makeDayTimeDurationValue(CharSequence s)
s - the lexical representation of the xs:dayTimeDuration valuepublic AtomicValue copyAsSubType(AtomicType typeLabel)
copyAsSubType in class DurationValuetypeLabel - the type label of the new copy. The caller is responsible for checking that
the value actually conforms to this type.public BuiltInAtomicType getPrimitiveType()
getPrimitiveType in class DurationValuepublic CharSequence getPrimitiveStringValue()
getPrimitiveStringValue in class DurationValuepublic double getLengthInSeconds()
getLengthInSeconds in class DurationValuepublic long getLengthInMicroseconds()
public static DayTimeDurationValue fromSeconds(BigDecimal seconds)
seconds - the number of seconds in the duration. May be negativepublic static DayTimeDurationValue fromMilliseconds(long milliseconds) throws ValidationException
milliseconds - the number of milliseconds in the duration (may be negative)ValidationException - if implementation-defined limits are exceeded, specifically
if the total number of seconds exceeds 2^63.public static DayTimeDurationValue fromMicroseconds(long microseconds) throws IllegalArgumentException
microseconds - the number of microseconds in the duration. The maximum and minimum
limits are such that the number of days in the duration must fit in a 32-bit signed integer.IllegalArgumentException - if the value is out of range.public DurationValue multiply(double n) throws XPathException
multiply in class DurationValuen - the number to multiply byXPathExceptionpublic DecimalValue divide(DurationValue other) throws XPathException
divide in class DurationValueother - the dividendXPathExceptionpublic DurationValue add(DurationValue other) throws XPathException
add in class DurationValueother - the duration to be added to this oneXPathExceptionpublic DurationValue subtract(DurationValue other) throws XPathException
subtract in class DurationValueother - the duration to be subtracted from this oneXPathExceptionpublic DurationValue negate() throws IllegalArgumentException
negate in class DurationValueIllegalArgumentException - in the extremely unlikely event that the duration is one that cannot
be negated (because the limit for positive durations is one second
off from the limit for negative durations)public int compareTo(Object other)
compareTo in interface Comparableother - The other dateTime valueClassCastException - if the other value is not a DateTimeValue (the parameter
is declared as Object to satisfy the Comparable interface)public Object getXPathComparable(boolean ordered, StringCollator collator, XPathContext context)
getXPathComparable in class DurationValueordered - true if an ordered comparable is neededcollator - Collation used for string comparisoncontext - XPath dynamic contextCopyright (c) 2004-2013 Saxonica Limited. All rights reserved.