Object
GDateSpecification
, Serializable
Represents an XML Schema-compatible Gregorian date.
There are many date types in XML Schema, and this type represents the natural union of all those types. A GDate can hold any subset of date fields (Year, Month, Day, Time, Timezone, or some combination). Wherever the specification provides guidance, the guidelines in the XML Schema 1.0 specification (plus published errata) are followed.
Instances may separately have values or no values for the year, month, day-of-month, and time-of-day. Not all operations are meaningful on all combinations.
Object
GDate
GDateSpecification
, Serializable
Constructor Summary |
|
|
|
|
Method Summary |
public |
|
public |
|
public int |
|
public boolean | |
public int |
|
public |
|
public |
|
public final int |
|
public int |
|
public final |
|
public final int |
|
public int |
|
public int |
|
public final int |
|
public final int |
|
public final int |
|
public final int |
|
public final int |
|
public final int |
|
public final int |
|
public final boolean |
|
public final boolean |
|
public int |
|
public final boolean |
|
public final boolean |
|
public final boolean |
|
public final boolean |
|
public final boolean |
|
public boolean |
|
public |
|
public |
|
Methods from class java.lang. |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Methods from interface com.bea.xml. |
|
Constructor Detail |
public GDate(GDateSpecification
gdate)
public GDate(int year,
int month,
int day,
int hour,
int minute,
int second,
BigDecimal
fraction,
int tzSign,
int tzHour,
int tzMinute)
If you wish to have a time or date that isn't in a specified timezone, then use the constructor that does not include the timezone arguments.
public GDate(int year,
int month,
int day,
int hour,
int minute,
int second,
BigDecimal
fraction)
Note that by not specifying the timezone the GDate becomes partially unordered with respect to times that do have a specified timezone.
public GDate(CharSequence
string)
public GDate(Calendar
calendar)
If the calendar does not have some fields set, the same absence of information is reflected in the GDate. Note that java.util.GregorianCalendar fills in all fields as soon as any are fetched, so constructing a GDate with the same calendar object twice may result in a different GDate because of a changed calendar. Note that com.bea.xml.XmlCalendar is stable if you re-get a set field, so it does not have the same problem.
public GDate(Date
date)
The current offset of the default timezone is used as the timezone.
For example, if eastern daylight time is in effect at the given date, the timezone on the east coast of the united states translates to GMT-05:00 (EST) + 1:00 (DT offset) == GMT-04:00.
Method Detail |
publicAdds a duration to this GDate, and returns a new GDate.GDate
add(GDurationSpecification
duration)
public String
canonicalString()
The canonical string representation. Specific moments or
times-of-day in a specified timezone are normalized to
UTC time to produce a canonical string form for them.
Other recurring time specifications keep their timezone
information.
public int compareToGDate(GDateSpecification
datespec)
Comparison to another GDate.
public boolean equals(Object
obj)
GDate is an immutable class, and equality is computed based
on its canonical value.
Object.equals(Object)
public int getBuiltinTypeCode()Returns the builtin type code for the shape of the information contained in this instance, or 0 if the instance doesn't contain information corresponding to a Schema type.
Value will be equal to
SchemaType.BTC_NOT_BUILTIN
,
SchemaType.BTC_G_YEAR
,
SchemaType.BTC_G_YEAR_MONTH
,
SchemaType.BTC_G_MONTH
,
SchemaType.BTC_G_MONTH_DAY
,
SchemaType.BTC_G_DAY
,
SchemaType.BTC_DATE
,
SchemaType.BTC_DATE_TIME
, or
SchemaType.BTC_TIME
.
public XmlCalendar
getCalendar()
Retrieves the value of the current time as an XmlCalendar
.
XmlCalendar
is a subclass of
GregorianCalendar
which is slightly customized to match XML schema date rules.
The returned XmlCalendar
has only those time and date fields
set that are reflected in the GDate object. Because of the way the
Calendar
contract works, any information in the isSet() vanishes
as soon as you view any unset field using get() methods.
This means that if it is important to understand which date fields
are set, you must call isSet() first before get().
public Date
getDate()
Retrieves the value of the current time as a java.util.Date
instance.
public final int getDay()Gets the day-of-month. The first day of each month is 1.
public int getFlags()Returns a combination of flags indicating the information contained by this GDate. The five flags are HAS_TIMEZONE, HAS_YEAR, HAS_MONTH, HAS_DAY, and HAS_TIME.
public final BigDecimal
getFraction()
Gets the fraction-of-second. Range from 0 (inclusive) to 1 (exclusive).
public final int getHour()Gets the hour-of-day. Midnight is 0, and 11PM is 23.
public int getJulianDate()Returns the Julian date corresponding to this Gregorian date. The Julian date (JD) is a continuous count of days from 1 January 4713 BC (= -4712 January 1).
public int getMillisecond()Gets the rounded millisecond value. Range from 0 to 999
public final int getMinute()Gets the minute-of-hour. Range from 0 to 59.
public final int getMonth()Gets the month-of-year. January is 1.
public final int getSecond()Gets the second-of-minute. Range from 0 to 59.
public final int getTimeZoneHour()Gets the time zone hour. This is always positive: for the sign, look at getTimeZoneSign().
public final int getTimeZoneMinute()Gets the time zone minutes. This is always positive: for the sign, look at getTimeZoneSign().
public final int getTimeZoneSign()Gets the time zone sign. For time zones east of GMT, this is positive; for time zones west, this is negative.
public final int getYear()Gets the year. Should be a four-digit year specification.
public final boolean hasDate()True if this date/time specification specifies a full date (year, month, day)
public final boolean hasDay()True if this date/time specification specifies a day-of-month.
public int hashCode()Returns a hash code for this GDate.
Object.hashCode()
public final boolean hasMonth()True if this date/time specification specifies a month-of-year.
public final boolean hasTime()True if this date/time specification specifies a time-of-day.
public final boolean hasTimeZone()True if this date/time specification specifies a timezone.
public final boolean hasYear()True if this date/time specification specifies a year.
public final boolean isImmutable()Returns true: all GDate instances are immutable.
public boolean isValid()True if this GDate corresponds to a valid gregorian date value in XML schema.
publicAdds a duration to this GDate, and returns a new GDate.GDate
subtract(GDurationSpecification
duration)
public String
toString()
The natural string representation. This represents the information
that is available, including timezone. For types that correspond
to defined schema types (schemaBuiltinTypeCode() > 0),
this provides the natural lexical representation.
When both time and timezone are specified, this string is not the canonical representation unless the timezone is UTC (Z) (since the same moment in time can be expressed in different timezones). To get a canonical string, use the canonicalString() method.
Object.toString()