public final class ZonedChronology extends AssembledChronology
ZonedChronology is thread-safe and immutable.
Modifier and Type | Class and Description |
---|---|
(package private) static class |
ZonedChronology.ZonedDateTimeField
A DateTimeField that decorates another to add timezone behaviour.
|
(package private) static class |
ZonedChronology.ZonedDurationField |
AssembledChronology.Fields
Modifier and Type | Field and Description |
---|---|
private static long |
NEAR_ZERO
Avoid calculation errors near zero.
|
private static long |
serialVersionUID
Serialization lock
|
Modifier | Constructor and Description |
---|---|
private |
ZonedChronology(Chronology base,
DateTimeZone zone)
Restricted constructor
|
Modifier and Type | Method and Description |
---|---|
protected void |
assemble(AssembledChronology.Fields fields)
Invoked by the constructor and after deserialization to allow subclasses
to define all of its supported fields.
|
private DateTimeField |
convertField(DateTimeField field,
java.util.HashMap<java.lang.Object,java.lang.Object> converted) |
private DurationField |
convertField(DurationField field,
java.util.HashMap<java.lang.Object,java.lang.Object> converted) |
boolean |
equals(java.lang.Object obj)
A zoned chronology is only equal to a zoned chronology with the
same base chronology and zone.
|
long |
getDateTimeMillis(int year,
int monthOfYear,
int dayOfMonth,
int millisOfDay)
Returns a datetime millisecond instant, formed from the given year,
month, day, and millisecond values.
|
long |
getDateTimeMillis(int year,
int monthOfYear,
int dayOfMonth,
int hourOfDay,
int minuteOfHour,
int secondOfMinute,
int millisOfSecond)
Returns a datetime millisecond instant, formed from the given year,
month, day, hour, minute, second, and millisecond values.
|
long |
getDateTimeMillis(long instant,
int hourOfDay,
int minuteOfHour,
int secondOfMinute,
int millisOfSecond)
Returns a datetime millisecond instant, from from the given instant,
hour, minute, second, and millisecond values.
|
static ZonedChronology |
getInstance(Chronology base,
DateTimeZone zone)
Create a ZonedChronology for any chronology, overriding any time zone it
may already have.
|
DateTimeZone |
getZone()
Returns the DateTimeZone that this Chronology operates in, or null if
unspecified.
|
int |
hashCode()
A suitable hashcode for the chronology.
|
private long |
localToUTC(long localInstant) |
java.lang.String |
toString()
A debugging string for the chronology.
|
(package private) static boolean |
useTimeArithmetic(DurationField field) |
Chronology |
withUTC()
Returns an instance of this Chronology that operates in the UTC time
zone.
|
Chronology |
withZone(DateTimeZone zone)
Returns an instance of this Chronology that operates in any time zone.
|
centuries, centuryOfEra, clockhourOfDay, clockhourOfHalfday, dayOfMonth, dayOfWeek, dayOfYear, days, era, eras, getBase, getParam, halfdayOfDay, halfdays, hourOfDay, hourOfHalfday, hours, millis, millisOfDay, millisOfSecond, minuteOfDay, minuteOfHour, minutes, monthOfYear, months, secondOfDay, secondOfMinute, seconds, weekOfWeekyear, weeks, weekyear, weekyearOfCentury, weekyears, year, yearOfCentury, yearOfEra, years
private static final long serialVersionUID
private static final long NEAR_ZERO
private ZonedChronology(Chronology base, DateTimeZone zone)
base
- base chronology to wrapzone
- the time zonepublic static ZonedChronology getInstance(Chronology base, DateTimeZone zone)
base
- base chronology to wrapzone
- the time zonejava.lang.IllegalArgumentException
- if chronology or time zone is nullstatic boolean useTimeArithmetic(DurationField field)
public DateTimeZone getZone()
BaseChronology
getZone
in class AssembledChronology
public Chronology withUTC()
BaseChronology
withUTC
in class BaseChronology
public Chronology withZone(DateTimeZone zone)
BaseChronology
withZone
in class BaseChronology
zone
- to use, or default if nullZonedChronology
public long getDateTimeMillis(int year, int monthOfYear, int dayOfMonth, int millisOfDay) throws java.lang.IllegalArgumentException
BaseChronology
The default implementation calls upon separate DateTimeFields to determine the result. Subclasses are encouraged to provide a more efficient implementation.
getDateTimeMillis
in class AssembledChronology
year
- year to usemonthOfYear
- month to usedayOfMonth
- day of month to usemillisOfDay
- millisecond to usejava.lang.IllegalArgumentException
- if the values are invalidpublic long getDateTimeMillis(int year, int monthOfYear, int dayOfMonth, int hourOfDay, int minuteOfHour, int secondOfMinute, int millisOfSecond) throws java.lang.IllegalArgumentException
BaseChronology
The default implementation calls upon separate DateTimeFields to determine the result. Subclasses are encouraged to provide a more efficient implementation.
getDateTimeMillis
in class AssembledChronology
year
- year to usemonthOfYear
- month to usedayOfMonth
- day of month to usehourOfDay
- hour to useminuteOfHour
- minute to usesecondOfMinute
- second to usemillisOfSecond
- millisecond to usejava.lang.IllegalArgumentException
- if the values are invalidpublic long getDateTimeMillis(long instant, int hourOfDay, int minuteOfHour, int secondOfMinute, int millisOfSecond) throws java.lang.IllegalArgumentException
BaseChronology
The default implementation calls upon separate DateTimeFields to determine the result. Subclasses are encouraged to provide a more efficient implementation.
getDateTimeMillis
in class AssembledChronology
instant
- instant to start fromhourOfDay
- hour to useminuteOfHour
- minute to usesecondOfMinute
- second to usemillisOfSecond
- millisecond to usejava.lang.IllegalArgumentException
- if the values are invalidprivate long localToUTC(long localInstant)
localInstant
- the instant from 1970-01-01T00:00:00 local timeprotected void assemble(AssembledChronology.Fields fields)
AssembledChronology
assemble
in class AssembledChronology
fields
- container of fieldsprivate DurationField convertField(DurationField field, java.util.HashMap<java.lang.Object,java.lang.Object> converted)
private DateTimeField convertField(DateTimeField field, java.util.HashMap<java.lang.Object,java.lang.Object> converted)
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
obj
- the object to compare topublic int hashCode()
hashCode
in class java.lang.Object
public java.lang.String toString()
toString
in class BaseChronology