net.sf.saxon.value
public abstract class CalendarValue extends AtomicValue implements Comparable
Field Summary | |
---|---|
static int | NO_TIMEZONE |
Method Summary | |
---|---|
abstract CalendarValue | add(DurationValue duration)
Add a duration to this date/time value |
abstract CalendarValue | adjustTimezone(int tz)
Return a new date, time, or dateTime with the same normalized value, but
in a different timezone |
static void | appendString(FastStringBuffer sb, int value, int size)
Append an integer, formatted with leading zeros to a fixed size, to a string buffer |
void | appendTimezone(FastStringBuffer sb)
Add a string representation of the timezone, typically
formatted as "Z" or "+03:00" or "-10:00", to a supplied
string buffer |
static void | appendTimezone(int tz, FastStringBuffer sb) |
static void | appendTwoDigits(FastStringBuffer sb, int value)
Append an integer, formatted as two digits, to a string buffer |
abstract int | compareTo(CalendarValue other, XPathContext context)
Compare this value to another value of the same type, using the supplied ConversionContext
to get the implicit timezone if required. |
abstract CalendarValue | copy()
Make a copy of this date, time, or dateTime value |
abstract GregorianCalendar | getCalendar()
Get a Java Calendar object that represents this date/time value. |
String | getStringValue()
Convert the value to a string |
int | getTimezoneInMinutes()
Get the timezone value held in this object. |
boolean | hasTimezone()
Determine whether this value includes a timezone |
CalendarValue | removeTimezone()
Return a date, time, or dateTime with the same localized value, but
without the timezone component |
void | setTimezoneInMinutes(int minutes)
Modify the timezone value held in this object. |
SecondsDurationValue | subtract(CalendarValue other, XPathContext context)
Determine the difference between two points in time, as a duration |
abstract DateTimeValue | toDateTime()
Convert the value to a DateTime, retaining all the components that are actually present, and
substituting conventional values for components that are missing |
Parameters: duration the duration to be added (which might be negative)
Returns: a new date/time value representing the result of adding the duration. The original object is not modified.
Throws: XPathException
Parameters: tz the new timezone, in minutes
Returns: the date/time in the new timezone
Parameters: sb the string buffer value the integer to be formatted size the number of digits required (max 9)
Parameters: sb The StringBuffer that will be updated with the resulting string representation
Parameters: sb the string buffer value the integer to be formatted (must be in the range 0..99
Returns: A Calendar object representing the date and time. Note that Java can only represent the time to millisecond precision, and that it does not support the full range of timezones required by XPath (-14:00 to +14:00)
Returns: The timezone offset from GMT in minutes, positive or negative; or the special value NO_TIMEZONE indicating that the value is not in a timezone
Returns: true if there is a timezone in the value, false if not
Returns: the result of removing the timezone
Parameters: minutes The timezone offset from GMT in minutes, positive or negative; or the special value NO_TIMEZONE indicating that the value is not in a timezone (this is the default if this method is not called)
Parameters: other the other point in time context the dynamic context, used to obtain timezone information. May be set to null only if both values contain an explicit timezone, or if neither does so.
Returns: the duration as an xdt:dayTimeDuration
Throws: net.sf.saxon.trans.XPathException for example if one value is a date and the other is a time