|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object net.sf.saxon.value.Value net.sf.saxon.value.AtomicValue net.sf.saxon.value.DurationValue net.sf.saxon.value.DayTimeDurationValue
public final class DayTimeDurationValue
A value of type xs:dayTimeDuration
Field Summary |
---|
Fields inherited from class net.sf.saxon.value.Value |
---|
EMPTY_CLASS_ARRAY, INDETERMINATE_ORDERING |
Fields inherited from interface net.sf.saxon.om.ValueRepresentation |
---|
EMPTY_VALUE_ARRAY |
Fields inherited from interface net.sf.saxon.om.ValueRepresentation |
---|
EMPTY_VALUE_ARRAY |
Constructor Summary | |
---|---|
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. |
Method Summary | |
---|---|
DurationValue |
add(DurationValue other)
Add two dayTimeDurations |
int |
compareTo(Object other)
Compare the value to another duration value |
Object |
convertToJava(Class target,
XPathContext context)
Convert to Java object (for passing to external functions) |
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 |
long |
getLengthInMilliseconds()
Get length of duration in milliseconds, as a long |
double |
getLengthInSeconds()
Get length of duration in seconds |
BuiltInAtomicType |
getPrimitiveType()
Determine the primitive type of the value. |
CharSequence |
getStringValueCS()
Convert to string |
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 |
Methods inherited from class net.sf.saxon.value.DurationValue |
---|
convertPrimitive, equals, getComponent, getDays, getHours, getMicroseconds, getMinutes, getMonths, getSchemaComparable, getSchemaComparable, getSeconds, getStringValue, getYears, hashCode, makeDuration, normalizeDuration, signum |
Methods inherited from class net.sf.saxon.value.AtomicValue |
---|
asAtomic, checkPermittedContents, convert, convert, effectiveBooleanValue, getCardinality, getItemType, getLength, getTypedValue, getTypeLabel, isNaN, itemAt, iterate, process, setTypeLabel, subsequence, toString |
Methods inherited from class net.sf.saxon.value.Value |
---|
asItem, asItem, asIterator, asValue, convertJavaObjectToXPath, convertToJava, fromItem, getCanonicalLexicalRepresentation, getIterator, iterate, makeQNameValue, reduce, stringToNumber |
Methods inherited from class java.lang.Object |
---|
getClass, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public 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 microseconds
IllegalArgumentException
- if the value is out of range; specifically, if the total
number of seconds exceeds 2^63; or if any of the values is negativeMethod Detail |
---|
public static ConversionResult makeDayTimeDurationValue(CharSequence s)
s
- the lexical representation of the xs:dayTimeDuration value
public AtomicValue copyAsSubType(AtomicType typeLabel)
copyAsSubType
in class DurationValue
typeLabel
- 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 DurationValue
public CharSequence getStringValueCS()
getStringValueCS
in interface Item
getStringValueCS
in interface ValueRepresentation
getStringValueCS
in class DurationValue
Item.getStringValue()
public double getLengthInSeconds()
getLengthInSeconds
in class DurationValue
public long getLengthInMilliseconds()
public long getLengthInMicroseconds()
public static DayTimeDurationValue fromSeconds(BigDecimal seconds) throws XPathException
seconds
- the number of seconds in the duration. May be negative
XPathException
public 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 DurationValue
n
- the number to multiply by
XPathException
public DecimalValue divide(DurationValue other) throws XPathException
divide
in class DurationValue
other
- the dividend
XPathException
public DurationValue add(DurationValue other) throws XPathException
add
in class DurationValue
other
- the duration to be added to this one
XPathException
public DurationValue subtract(DurationValue other) throws XPathException
subtract
in class DurationValue
other
- the duration to be subtracted from this one
XPathException
public DurationValue negate() throws IllegalArgumentException
negate
in class DurationValue
IllegalArgumentException
- 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 Comparable
other
- The other dateTime value
ClassCastException
- 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 DurationValue
ordered
- true if an ordered comparable is neededcollator
- Collation used for string comparisoncontext
- XPath dynamic context
public Object convertToJava(Class target, XPathContext context) throws XPathException
convertToJava
in class DurationValue
target
- the required target classcontext
- the XPath dynamic evaluation context
XPathException
|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |