Spec-Zone.ru › OpenJDK 8

Класс XMLGregorianCalendar

  • java.lang.Object
    • javax.xml.datatype.XMLGregorianCalendar
Все реализованные интерфейсы:
Cloneable

public abstract class XMLGregorianCalendar
extends Object
implements Cloneable

Представление типов данных даты/времени W3C XML Schema 1.0. В частности, эти типы данных даты/времени являются DatatypeConstants.DATETIME, DatatypeConstants.TIME, DatatypeConstants.DATE, DatatypeConstants.GYEARMONTH, DatatypeConstants.GMONTHDAY, DatatypeConstants.GYEAR, DatatypeConstants.GMONTH и DatatypeConstants.GDAY, определённые в пространстве имён XML "http://www.w3.org/2001/XMLSchema". Эти типы данных нормативно определены в W3C XML Schema 1.0 Часть 2, Раздел 3.2.7-14.

В таблице ниже приведено соответствие между полями типов данных даты/времени XML Schema 1.0 и полями данного класса. Также в ней обобщены ограничения значений для полей даты и времени, определённые в W3C XML Schema 1.0 Часть 2, Приложение D, Форматы дат и времени ISO 8601.

Соответствие между полями типов данных даты/времени XML Schema 1.0 и Java представлением
Поле типа данных
XML Schema 1.0
Соответствующие методы
XMLGregorianCalendar
Диапазон значений
год getYear() + getEon() или
getEonAndYear()
getYear() представляет собой значение от -(10^9-1) до (10^9)-1 или DatatypeConstants.FIELD_UNDEFINED.
getEon() — это значение года высшего порядка в миллиардах лет.
getEon() имеет значения, большие или равные (10^9) или меньшие или равные -(10^9). Значение null указывает на то, что поле не определено. Учитывая, что исправление XML Schema 1.0 утверждает, что год ноль будет допустимым лексическим значением в будущей версии XML Schema, этот класс позволяет установить значение поля года равным нулю. В противном случае значение поля года обрабатывается точно так, как описано в исправлении, и [ISO-8601-1988]. Обратите внимание, что валидация W3C XML Schema 1.0 не допускает значения поля года равного нулю.
месяц getMonth() от 1 до 12 или DatatypeConstants.FIELD_UNDEFINED
день getDay() Независимо от месяца, максимальный диапазон от 1 до 31 или DatatypeConstants.FIELD_UNDEFINED.
Нормативное ограничение значения, связанное со значением поля месяца, указано в W3C XML Schema 1.0 Часть 2, Приложение D.
час getHour() от 0 до 23 или DatatypeConstants.FIELD_UNDEFINED. Значение часа 24 допускается в лексическом пространстве, при условии, что значения минут и секунд равны нулю. Однако значение часа 24 не допускается в пространстве значений и будет преобразовано, чтобы представлять значение первого момента следующего дня, в соответствии с XML Schema Часть 2: Типы данных, второе издание, 3.2 Примитивные типы данных.
минута getMinute() от 0 до 59 или DatatypeConstants.FIELD_UNDEFINED
секунда getSecond() + getMillisecond()/1000 или
getSecond() + getFractionalSecond()
getSecond() от 0 до 60 или DatatypeConstants.FIELD_UNDEFINED.
(Примечание: 60 допускается только для високосной секунды.)
getFractionalSecond() обеспечивает бесконечную точность в диапазоне от 0,0 до 1,0 при определённом значении getSecond().
FractionalSecond является необязательным и имеет значение null при отсутствии определения.
getMillisecond() — это удобная миллисекундная точность значения getFractionalSecond().
часовой пояс getTimezone() Количество минут или DatatypeConstants.FIELD_UNDEFINED. Диапазон значений от -14 часов (-14 * 60 минут) до 14 часов (14 * 60 минут).

Все ограничения максимальных значений для полей в таблице выше проверяются методами фабрики, @{link DatatypeFactory}, методами-сеттерами и методами разбора этого класса. IllegalArgumentException генерируется, когда значение параметра находится за пределами ограничения значения для поля или если составные значения образуют недопустимый экземпляр XMLGregorianCalendar (например, если указано 31 июня).

Для этого класса определены следующие операции:

  • доступы/модификаторы для независимых полей даты/времени
  • преобразование между этим классом и лексическим представлением W3C XML Schema 1.0, toString(), DatatypeFactory.newXMLGregorianCalendar(String lexicalRepresentation)
  • преобразование между этим классом и GregorianCalendar, toGregorianCalendar(java.util.TimeZone timezone, java.util.Locale aLocale, XMLGregorianCalendar defaults), DatatypeFactory
  • метод сравнения частичного порядка, compare(XMLGregorianCalendar xmlGregorianCalendar)
  • equals(Object) определён относительно compare(XMLGregorianCalendar xmlGregorianCalendar).
  • операция сложения с экземпляром Duration, как определено в W3C XML Schema 1.0 Часть 2, Приложение E, Добавление продолжительностей к датам и времени.
С:
1.5
См. также:
Duration, DatatypeFactory

Конструкторы

Конструктор и описание
XMLGregorianCalendar()

Конструктор по умолчанию без аргументов.

Методы

Модификатор и тип Метод и описание
abstract void add(Duration duration)

Добавить duration к этому экземпляру.

abstract void clear()

Сбросить все поля в undefined.

abstract Object clone()

Создаёт и возвращает копию этого объекта.

abstract int compare(XMLGregorianCalendar xmlGregorianCalendar)

Сравнивает два экземпляра типов данных даты/времени W3C XML Schema 1.0 в соответствии с отношением частичного порядка, определённым в W3C XML Schema 1.0 Часть 2, Раздел 3.2.7.3, Отображение отношения порядка на dateTime.

boolean equals(Object obj)

Сравнивает этот календарь с указанным объектом.

abstract int getDay()

Возвращает день месяца или DatatypeConstants.FIELD_UNDEFINED.

abstract BigInteger getEon()

Возвращает старший компонент для поля типа данных dateTime схемы XML 1.0 для year.

abstract BigInteger getEonAndYear()

Возвращает поле типа данных dateTime схемы XML 1.0 для year.

abstract BigDecimal getFractionalSecond()

Возвращает дробную часть секунд.

abstract int getHour()

Возвращает часы или DatatypeConstants.FIELD_UNDEFINED.

int getMillisecond()

Возвращает миллисекундную точность getFractionalSecond().

abstract int getMinute()

Возвращает минуты или DatatypeConstants.FIELD_UNDEFINED.

abstract int getMonth()

Возвращает номер месяца или DatatypeConstants.FIELD_UNDEFINED.

abstract int getSecond()

Возвращает секунды или DatatypeConstants.FIELD_UNDEFINED.

abstract int getTimezone()

Возвращает смещение часового пояса в минутах или DatatypeConstants.FIELD_UNDEFINED, если это необязательное поле не определено.

abstract TimeZone getTimeZone(int defaultZoneoffset)

Возвращает java.util.TimeZone для этого класса.

abstract QName getXMLSchemaType()

Возвращает имя типа даты/времени схемы XML, к которому отображается этот экземпляр.

abstract int getYear()

Возвращает младший компонент для поля типа данных dateTime схемы XML 1.0 для year или DatatypeConstants.FIELD_UNDEFINED.

int hashCode()

Возвращает хэш-код, соответствующий определению метода equals.

abstract boolean isValid()

Проверить экземпляр по ограничениям getXMLSchemaType().

abstract XMLGregorianCalendar normalize()

Нормализует этот экземпляр к UTC.

abstract void reset()

Сбросить этот XMLGregorianCalendar до его исходных значений.

abstract void setDay(int day)

Установить дни в месяце.

abstract void setFractionalSecond(BigDecimal fractional)

Установить дробную часть секунд.

abstract void setHour(int hour)

Установить часы.

abstract void setMillisecond(int millisecond)

Установить миллисекунды.

abstract void setMinute(int minute)

Установить минуты.

abstract void setMonth(int month)

Установить месяц.

abstract void setSecond(int second)

Установить секунды.

void setTime(int hour, int minute, int second)

Установить время как единицу.

void setTime(int hour, int minute, int second, BigDecimal fractional)

Установить время как единицу, включая необязательные дробные секунды с бесконечной точностью.

void setTime(int hour, int minute, int second, int millisecond)

Установить время как единицу, включая необязательные миллисекунды.

abstract void setTimezone(int offset)

Установить количество минут в смещении часового пояса.

abstract void setYear(BigInteger year)

Установить младший и старший компонент поля года XSD dateTime.

abstract void setYear(int year)

Установить год поля года XSD dateTime.

abstract GregorianCalendar toGregorianCalendar()

Преобразовать этот XMLGregorianCalendar в GregorianCalendar.

abstract GregorianCalendar toGregorianCalendar(TimeZone timezone, Locale aLocale, XMLGregorianCalendar defaults)

Преобразовать этот XMLGregorianCalendar вместе с предоставленными параметрами в экземпляр GregorianCalendar.

String toString()

Возвращает представление String этого XMLGregorianCalendar Object.

abstract String toXMLFormat()

Возвращает лексическое представление экземпляра this.

Методы, унаследованные от класса java.lang.Object

finalize, getClass, notify, notifyAll, wait, wait, wait

Конструкторы

XMLGregorianCalendar

public XMLGregorianCalendar()

Конструктор по умолчанию без аргументов.

Примечание: Всегда используйте DatatypeFactory для создания экземпляра XMLGregorianCalendar. Не гарантируется, что конструктор этого класса создаст объект с согласованным состоянием, и он может быть удален в будущем.

Методы

clear

public abstract void clear()

Сбросить все поля до неопределенного значения.

Установить все поля типа int в DatatypeConstants.FIELD_UNDEFINED, а ссылочные поля — в null.

reset

public abstract void reset()

Сбросить этот XMLGregorianCalendar к его исходным значениям.

XMLGregorianCalendar сбрасывается до тех же значений, что и при его создании с помощью DatatypeFactory.newXMLGregorianCalendar(), DatatypeFactory.newXMLGregorianCalendar(String lexicalRepresentation), DatatypeFactory.newXMLGregorianCalendar( BigInteger year, int month, int day, int hour, int minute, int second, BigDecimal fractionalSecond, int timezone), DatatypeFactory.newXMLGregorianCalendar( int year, int month, int day, int hour, int minute, int second, int millisecond, int timezone), DatatypeFactory.newXMLGregorianCalendar(GregorianCalendar cal), DatatypeFactory.newXMLGregorianCalendarDate( int year, int month, int day, int timezone), DatatypeFactory.newXMLGregorianCalendarTime( int hours, int minutes, int seconds, int timezone), DatatypeFactory.newXMLGregorianCalendarTime( int hours, int minutes, int seconds, BigDecimal fractionalSecond, int timezone) или DatatypeFactory.newXMLGregorianCalendarTime( int hours, int minutes, int seconds, int milliseconds, int timezone).

reset() предназначен для того, чтобы позволить повторное использование существующих XMLGregorianCalendar, тем самым экономя ресурсы, связанные с созданием новых XMLGregorianCalendar.

setYear

public abstract void setYear(BigInteger year)

Установить младший и старший компоненты поля года XSD dateTime.

Сбросить это поле, вызвав установщик со значением параметра null.

Параметры:
year - ограничения значений, кратко описанные в таблице сопоставления полей даты/времени, поле year.
Исключения:
IllegalArgumentException - если параметр year выходит за рамки ограничений значений для поля, как указано в таблице сопоставления полей даты/времени.

setYear

public abstract void setYear(int year)

Установить год поля года XSD dateTime.

Сбросить это поле, вызвав установщик со значением параметра DatatypeConstants.FIELD_UNDEFINED.

Примечание: если абсолютное значение параметра year меньше 10^9, компонент эры поля года XSD устанавливается в null этим методом.

Параметры:
year - ограничения значений суммированы в таблице сопоставления полей даты/времени, поле year. Если год равен DatatypeConstants.FIELD_UNDEFINED, то эра устанавливается в null.

setMonth

public abstract void setMonth(int month)

Установить месяц.

Сбросить это поле, вызвав установщик со значением параметра DatatypeConstants.FIELD_UNDEFINED.

Параметры:
month - ограничения значений, кратко описанные в таблице сопоставления полей даты/времени, поле month.
Исключения:
IllegalArgumentException - если параметр month выходит за рамки ограничений значений для поля, как указано в таблице сопоставления полей даты/времени.

setDay

public abstract void setDay(int day)

Установить дни в месяце.

Сбросить это поле, вызвав установщик со значением параметра DatatypeConstants.FIELD_UNDEFINED.

Параметры:
day - ограничения значений, кратко описанные в таблице сопоставления полей даты/времени, поле day.
Исключения:
IllegalArgumentException - если параметр day выходит за рамки ограничений значений для поля, как указано в таблице сопоставления полей даты/времени.

setTimezone

public abstract void setTimezone(int offset)

Установить количество минут в смещении часового пояса.

Сбросить это поле, вызвав установщик со значением параметра DatatypeConstants.FIELD_UNDEFINED.

Параметры:
offset - ограничения значений, кратко описанные в таблице сопоставления полей даты/времени, поле timezone.
Исключения:
IllegalArgumentException - если параметр offset выходит за рамки ограничений значений для поля, как указано в таблице сопоставления полей даты/времени.

setTime

public void setTime(int hour,
                    int minute,
                    int second)

Установить время как один блок.

Параметры:
hour - ограничения значений, кратко описанные в таблице сопоставления полей даты/времени, поле hour.
minute - ограничения значений, кратко описанные в таблице сопоставления полей даты/времени, поле minute.
second - ограничения значений, кратко описанные в таблице сопоставления полей даты/времени, поле second.
Исключения:
IllegalArgumentException - если любой параметр выходит за рамки ограничений значений для поля, как указано в таблице сопоставления полей даты/времени.
См. также:
setTime(int, int, int, BigDecimal)

setHour

public abstract void setHour(int hour)

Установить часы.

Сбросить это поле, вызвав установщик со значением параметра DatatypeConstants.FIELD_UNDEFINED.

Параметры:
hour - ограничения значений, кратко описанные в таблице сопоставления полей даты/времени, поле hour.
Исключения:
IllegalArgumentException - если параметр hour выходит за рамки ограничений значений для поля, как указано в таблице сопоставления полей даты/времени.

setMinute

public abstract void setMinute(int minute)

Установить минуты.

Сбросить это поле, вызвав установщик со значением параметра DatatypeConstants.FIELD_UNDEFINED.

Параметры:
minute - ограничения значений, кратко описанные в таблице сопоставления полей даты/времени, поле minute.
Исключения:
IllegalArgumentException - если параметр minute выходит за рамки ограничений значений для поля, как указано в таблице сопоставления полей даты/времени.

setSecond

public abstract void setSecond(int second)

Установить секунды.

Сбросить это поле, вызвав установщик со значением параметра DatatypeConstants.FIELD_UNDEFINED.

Параметры:
second - ограничения значений, кратко описанные в таблице сопоставления полей даты/времени, поле second.
Исключения:
IllegalArgumentException - если параметр second выходит за рамки ограничений значений для поля, как указано в таблице сопоставления полей даты/времени.

setMillisecond

public abstract void setMillisecond(int millisecond)

Установить миллисекунды.

Сбросить это поле, вызвав установщик со значением параметра DatatypeConstants.FIELD_UNDEFINED.

Параметры:
millisecond - ограничения значений, кратко описанные в таблице сопоставления полей даты/времени, поле second.
Исключения:
IllegalArgumentException - если параметр millisecond выходит за рамки ограничений значений для поля, как указано в таблице сопоставления полей даты/времени.

setFractionalSecond

public abstract void setFractionalSecond(BigDecimal fractional)

Установить дробные секунды.

Сбросить это поле, вызвав установщик со значением параметра null.

Параметры:
fractional - ограничения значений, кратко описанные в таблице сопоставления полей даты/времени, поле second.
Исключения:
IllegalArgumentException - если параметр fractional выходит за рамки ограничений значений для поля, как указано в таблице сопоставления полей даты/времени.

setTime

public void setTime(int hour,
                    int minute,
                    int second,
                    BigDecimal fractional)

Установить время как один блок, включая необязательные дробные секунды с бесконечной точностью.

Параметры:
hour - ограничения значений, кратко описанные в таблице сопоставления полей даты/времени, поле hour.
minute - ограничения значений, кратко описанные в таблице сопоставления полей даты/времени, поле minute.
second - ограничения значений, кратко описанные в таблице сопоставления полей даты/времени, поле second.
fractional - значение null указывает, что это необязательное поле не установлено.
Исключения:
IllegalArgumentException - если любой параметр выходит за рамки ограничений значений для поля, как указано в таблице сопоставления полей даты/времени.

setTime

public void setTime(int hour,
                    int minute,
                    int second,
                    int millisecond)

Установить время как один блок, включая необязательные миллисекунды.

Параметры:
hour - ограничения значений, кратко описанные в таблице сопоставления полей даты/времени, поле hour.
minute - ограничения значений, кратко описанные в таблице сопоставления полей даты/времени, поле minute.
second - ограничения значений, кратко описанные в таблице сопоставления полей даты/времени, поле second.
millisecond - значение DatatypeConstants.FIELD_UNDEFINED указывает, что это необязательное поле не установлено.
Исключения:
IllegalArgumentException - если любой параметр выходит за рамки ограничений значений для поля, как указано в таблице сопоставления полей даты/времени.

getEon

public abstract BigInteger getEon()

Возвращает высокопорядковый компонент для поля типа данных dateTime схемы XML 1.0 для year. null если эта необязательная часть поля года не определена.

Ограничения значений для этого значения суммированы в таблице сопоставления полей даты/времени для поля год.

Возвращает:
значение этого XMLGregorianCalendar. Возвращаемое значение — целое кратное 10^9.
См. также:
getYear(), getEonAndYear()

getYear

public abstract int getYear()

Возвращает низкопорядковый компонент для поля типа данных dateTime схемы XML 1.0 для year или DatatypeConstants.FIELD_UNDEFINED.

Ограничения значений для этого значения суммированы в таблице сопоставления полей даты/времени для поля год.

Возвращает:
год этого XMLGregorianCalendar.
См. также:
getEon(), getEonAndYear()

getEonAndYear

public abstract BigInteger getEonAndYear()

Возвращает поле типа данных dateTime схемы XML 1.0 для year.

Ограничения значений для этого значения суммированы в таблице сопоставления полей даты/времени для поля год.

Возвращает:
сумму eon и BigInteger.valueOf(year) при определении обоих полей. При определении только year, возвращает его. Если поля eon и year не определены, возвращает null.
См. также:
getEon(), getYear()

getMonth

public abstract int getMonth()

Возвращает номер месяца или DatatypeConstants.FIELD_UNDEFINED.

Ограничения значений для этого значения суммированы в таблице сопоставления полей даты/времени для поля месяц.

Возвращает:
номер месяца этого XMLGregorianCalendar.

getDay

public abstract int getDay()

Возвращает день месяца или DatatypeConstants.FIELD_UNDEFINED.

Ограничения значений для этого значения суммированы в таблице сопоставления полей даты/времени для поля день.

См. также:
setDay(int)

getTimezone

public abstract int getTimezone()

Возвращает смещение часового пояса в минутах или DatatypeConstants.FIELD_UNDEFINED, если это необязательное поле не определено.

Ограничения значений для этого значения суммированы в таблице сопоставления полей даты/времени для поля часовой пояс.

См. также:
setTimezone(int)

getHour

public abstract int getHour()

Возвращает часы или DatatypeConstants.FIELD_UNDEFINED. Возвращает DatatypeConstants.FIELD_UNDEFINED, если это поле не определено.

Ограничения значений для этого значения суммированы в таблице сопоставления полей даты/времени для поля час.

См. также:
setTime(int, int, int)

getMinute

public abstract int getMinute()

Возвращает минуты или DatatypeConstants.FIELD_UNDEFINED. Возвращает DatatypeConstants.FIELD_UNDEFINED, если это поле не определено.

Ограничения значений для этого значения суммированы в таблице сопоставления полей даты/времени для поля минута.

См. также:
setTime(int, int, int)

getSecond

public abstract int getSecond()

Возвращает секунды или DatatypeConstants.FIELD_UNDEFINED.

Возвращает DatatypeConstants.FIELD_UNDEFINED, если это поле не определено. Если это поле не определено, необязательное дробное поле секунд xs:dateTime, представленное методами getFractionalSecond() и getMillisecond(), также не должно быть определено.

Ограничения значений для этого значения суммированы в таблице сопоставления полей даты/времени для поля секунда.

Возвращает:
Секунды этого XMLGregorianCalendar.
См. также:
getFractionalSecond(), getMillisecond(), setTime(int, int, int)

getMillisecond

public int getMillisecond()

Возвращает миллисекундную точность getFractionalSecond().

Этот метод является удобным методом доступа к значению дробных секунд с бесконечной точностью, возвращаемому методом getFractionalSecond(). Возвращаемое значение — округленное вниз до миллисекунд значение getFractionalSecond(). Если getFractionalSecond() возвращает null, этот метод должен вернуть DatatypeConstants.FIELD_UNDEFINED.

Ограничения значений для этого значения суммированы в таблице сопоставления полей даты/времени для поля секунда.

Возвращает:
Миллисекунды этого XMLGregorianCalendar.
См. также:
getFractionalSecond(), setTime(int, int, int)

getFractionalSecond

public abstract BigDecimal getFractionalSecond()

Возвращает дробные секунды.

null возвращается, если это необязательное поле не определено.

Ограничения значений подробно описаны в таблице сопоставления полей даты/времени для поля секунда.

Это необязательное поле может иметь определенное значение только тогда, когда поле секунд xs:dateTime, представленное getSecond(), не возвращает DatatypeConstants.FIELD_UNDEFINED.

Возвращает:
дробные секунды этого XMLGregorianCalendar.
См. также:
getSecond(), setTime(int, int, int, BigDecimal)

compare

public abstract int compare(XMLGregorianCalendar xmlGregorianCalendar)

Сравнивает два экземпляра типов данных даты/времени схемы XML 1.0 W3C в соответствии с отношением частичного порядка, определенным в W3C XML Schema 1.0 Часть 2, Раздел 3.2.7.3, Отношение порядка для dateTime.

xsd:dateTime поле сопоставления типа данных к методам доступа этого класса определены в таблице сопоставления полей даты/времени.

Параметры:
xmlGregorianCalendar - Экземпляр XMLGregorianCalendar для сравнения
Возвращает:
Взаимоотношение между this XMLGregorianCalendar и указанным xmlGregorianCalendar в виде DatatypeConstants.LESSER, DatatypeConstants.EQUAL, DatatypeConstants.GREATER или DatatypeConstants.INDETERMINATE.
Исключения:
NullPointerException - если xmlGregorianCalendar равно null.

normalize

public abstract XMLGregorianCalendar normalize()

Нормализует этот экземпляр до UTC.

2000-03-04T23:00:00+03:00 нормализуется до 2000-03-04T20:00:00Z

Реализует W3C XML Schema Часть 2, Раздел 3.2.7.3 (A).

Возвращает:
this XMLGregorianCalendar нормализованный до UTC.

equals

public boolean equals(Object obj)

Сравнивает этот календарь с указанным объектом. Результат — true тогда и только тогда, когда аргумент не равен null и представляет собой объект XMLGregorianCalendar, представляющий тот же момент времени, что и этот объект.

Переопределяет:
equals в классе Object
Параметры:
obj - для сравнения.
Возвращает:
true когда obj является экземпляром XMLGregorianCalendar и compare(XMLGregorianCalendar obj) возвращает DatatypeConstants.EQUAL, иначе false.
См. также:
Object.hashCode(), HashMap

hashCode

public int hashCode()

Возвращает хэш-код, соответствующий определению метода equals.

Переопределяет:
hashCode в классе Object
Возвращает:
хэш-код этого объекта.
См. также:
Object.equals(java.lang.Object), System.identityHashCode(java.lang.Object)

toXMLFormat

public abstract String toXMLFormat()

Возвращает лексическое представление экземпляра this. Формат указан в XML Schema 1.0 Часть 2, Раздел 3.2.[7-14].1, Лексическое представление".

Конкретный целевой формат лексического представления определяется методом getXMLSchemaType().

Возвращает:
XML, в формате String, представление этого XMLGregorianCalendar
Исключения:
IllegalStateException - если комбинация установленных полей не соответствует одному из восьми встроенных типов данных даты/времени схемы XML.

getXMLSchemaType

public abstract QName getXMLSchemaType()

Возвращает имя типа данных XML Schema date/time, к которому отображается этот экземпляр. Тип вычисляется на основе установленных полей.

Требуемые поля для типов данных XML Schema 1.0 Date/Time.
(часовой пояс является необязательным для всех типов данных date/time)
Тип данных год месяц день час минута секунда
DatatypeConstants.DATETIME X X X X X X
DatatypeConstants.DATE X X X
DatatypeConstants.TIME X X X
DatatypeConstants.GYEARMONTH X X
DatatypeConstants.GMONTHDAY X X
DatatypeConstants.GYEAR X
DatatypeConstants.GMONTH X
DatatypeConstants.GDAY X
Возвращает:
Один из следующих констант классов: DatatypeConstants.DATETIME, DatatypeConstants.TIME, DatatypeConstants.DATE, DatatypeConstants.GYEARMONTH, DatatypeConstants.GMONTHDAY, DatatypeConstants.GYEAR, DatatypeConstants.GMONTH или DatatypeConstants.GDAY.
Выбрасывает:
IllegalStateException - если комбинация установленных полей не соответствует одному из восьми встроенных типов данных date/time XML Schema.

toString

public String toString()

Возвращает строковое представление этого объекта XMLGregorianCalendar Object.

Результат является лексическим представлением, сгенерированным методом toXMLFormat().

Переопределяет:
toString в классе Object
Возвращает:
Не-null корректное строковое представление этого объекта XMLGregorianCalendar.
Выбрасывает:
IllegalStateException - если комбинация установленных полей не соответствует одному из восьми встроенных типов данных date/time XML Schema.
См. также:
toXMLFormat()

isValid

public abstract boolean isValid()

Проверяет экземпляр на соответствие ограничениям.

Возвращает:
true, если значения данных корректны.

add

public abstract void add(Duration duration)

Добавляет duration к этому экземпляру.

Вычисление определено в XML Schema 1.0 Часть 2, Приложение E, Добавление продолжительности к dateTimes. Таблица сопоставления полей date/time определяет сопоставление полей XML Schema 1.0 dateTime с представлением этих полей в этом классе.

Параметры:
duration - Продолжительность, которую нужно добавить к этому экземпляру XMLGregorianCalendar.
Выбрасывает:
NullPointerException - при duration параметр имеет значение null.

toGregorianCalendar

public abstract GregorianCalendar toGregorianCalendar()

Преобразует этот объект XMLGregorianCalendar в GregorianCalendar.

Когда у экземпляра this есть неопределенное поле, это преобразование опирается на значение по умолчанию java.util.GregorianCalendar для соответствующего поля. Отличительная особенность между типами данных date/time XML Schema 1.0 и java.util.GregorianCalendar заключается в том, что часовой пояс является необязательным для типов данных date/time и является обязательным полем для java.util.GregorianCalendar. См. javadoc для java.util.TimeZone.getDefault() для определения способа определения значения по умолчанию. Чтобы явно указать экземпляр TimeZone, см. toGregorianCalendar(TimeZone, Locale, XMLGregorianCalendar).

Преобразование полей из этого класса в java.util.GregorianCalendar
java.util.GregorianCalendar поле javax.xml.datatype.XMLGregorianCalendar поле
ERA getEonAndYear().signum() < 0 ? GregorianCalendar.BC : GregorianCalendar.AD
YEAR getEonAndYear().abs().intValue()*
MONTH getMonth() - DatatypeConstants.JANUARY + Calendar.JANUARY
DAY_OF_MONTH getDay()
HOUR_OF_DAY getHour()
MINUTE getMinute()
SECOND getSecond()
MILLISECOND значение миллисекунд из getFractionalSecond()*
GregorianCalendar.setTimeZone(TimeZone) getTimezone() в формате идентификатора пользовательского часового пояса
* указывает возможную потерю точности при преобразовании из-за того, что тип данных источника имеет большую точность, чем целевой тип данных.

Для обеспечения согласованности в реализации преобразований, новый GregorianCalendar должен быть создан следующим образом.

  • Используя значение timeZone как определено выше, создайте новый java.util.GregorianCalendar(timeZone,Locale.getDefault()).
  • Инициализируйте все поля GregorianCalendar, вызвав Calendar.clear().
  • Получите чистый календарь Григорианского стиля, вызвав GregorianCalendar.setGregorianChange( new Date(Long.MIN_VALUE)).
  • Его поля ERA, YEAR, MONTH, DAY_OF_MONTH, HOUR_OF_DAY, MINUTE, SECOND и MILLISECOND устанавливаются с помощью метода Calendar.set(int,int)
См. также:
toGregorianCalendar(java.util.TimeZone, java.util.Locale, XMLGregorianCalendar)

toGregorianCalendar

public abstract GregorianCalendar toGregorianCalendar(TimeZone timezone,
                                                      Locale aLocale,
                                                      XMLGregorianCalendar defaults)

Преобразует этот объект XMLGregorianCalendar вместе с предоставленными параметрами в экземпляр GregorianCalendar.

Так как в типах данных date/time XML Schema 1.0 нет понятия идентификаторов часовых поясов или идентификаторов часовых поясов с учетом летнего времени, данная операция преобразования позволяет пользователю явно указать часовой пояс с помощью параметра timezone.

Для вычисления поля TimeZone возвращаемого значения,

  • если параметр timeZone не равен null, он является значением поля часового пояса.
  • в противном случае, если this.getTimezone() != FIELD_UNDEFINED, создайте java.util.TimeZone с пользовательским идентификатором часового пояса, используя this.getTimezone().
  • в противном случае, если defaults.getTimezone() != FIELD_UNDEFINED, создайте java.util.TimeZone с пользовательским идентификатором часового пояса, используя defaults.getTimezone().
  • в противном случае используйте значение часового пояса по умолчанию для данного хоста, как указано в java.util.TimeZone.getDefault().
  • Для обеспечения согласованности в реализации преобразований, новый GregorianCalendar должен быть создан следующим образом.

    • Создайте новый java.util.GregorianCalendar(TimeZone, Locale) с установленным часовым поясом, как указано выше, и параметром Locale.
    • Инициализируйте все поля GregorianCalendar, вызвав Calendar.clear()
    • Получите чистый календарь Григорианского стиля, вызвав GregorianCalendar.setGregorianChange( new Date(Long.MIN_VALUE)).
    • Его поля ERA, YEAR, MONTH, DAY_OF_MONTH, HOUR_OF_DAY, MINUTE, SECOND и MILLISECOND устанавливаются с помощью метода Calendar.set(int,int)
Параметры:
timezone - предоставьте часовой пояс. null является допустимым значением.
aLocale - предоставьте явный язык. Используйте язык по умолчанию для GregorianCalendar, если значение равно null.
defaults - предоставьте значения полей по умолчанию, которые необходимо использовать, когда соответствующее поле для этого экземпляра равно FIELD_UNDEFINED или null. Если defaults равно null или поле в указанном defaults неопределено, используйте значения по умолчанию java.util.GregorianCalendar.
Возвращает:
объект java.util.GregorianCalendar, полученный из этого экземпляра.

getTimeZone

public abstract TimeZone getTimeZone(int defaultZoneoffset)

Возвращает часовой пояс для этого класса.

Если поле часового пояса определено для этого экземпляра, возвращает часовой пояс, инициализированный пользовательским идентификатором часового пояса zoneoffset. Если поле часового пояса неопределено, используется значение defaultZoneoffset. Если defaultZoneoffset равно FIELD_UNDEFINED, возвращается часовой пояс по умолчанию для этого хоста (аналогично java.util.GregorianCalendar).

Параметры:
defaultZoneoffset - часовой пояс по умолчанию, если текущий часовой пояс DatatypeConstants.FIELD_UNDEFINED.
Возвращает:
Часовой пояс для этого объекта.

clone

public abstract Object clone()

Создает и возвращает копию этого объекта.

Переопределяет:
clone в классе Object
Возвращает:
копию этого объекта Object
См. также:
Cloneable

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API