Class BaseDateTime
- All Implemented Interfaces:
Serializable
,Comparable<ReadableInstant>
,ReadableDateTime
,ReadableInstant
- Direct Known Subclasses:
DateMidnight
,DateTime
,MutableDateTime
long
and Chronology
fields.
This class should generally not be used directly by API users.
The ReadableDateTime
interface should be used when different
kinds of date/time objects are to be referenced.
BaseDateTime subclasses may be mutable and not thread-safe.
- Since:
- 1.0
- Author:
- Stephen Colebourne, Kandarp Shah, Brian S O'Neill
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionConstructs an instance set to the current system millisecond time usingISOChronology
in the default time zone.BaseDateTime
(int year, int monthOfYear, int dayOfMonth, int hourOfDay, int minuteOfHour, int secondOfMinute, int millisOfSecond) Constructs an instance from datetime field values usingISOChronology
in the default time zone.BaseDateTime
(int year, int monthOfYear, int dayOfMonth, int hourOfDay, int minuteOfHour, int secondOfMinute, int millisOfSecond, Chronology chronology) Constructs an instance from datetime field values using the specified chronology.BaseDateTime
(int year, int monthOfYear, int dayOfMonth, int hourOfDay, int minuteOfHour, int secondOfMinute, int millisOfSecond, DateTimeZone zone) Constructs an instance from datetime field values usingISOChronology
in the specified time zone.BaseDateTime
(long instant) Constructs an instance set to the milliseconds from 1970-01-01T00:00:00Z usingISOChronology
in the default time zone.BaseDateTime
(long instant, Chronology chronology) Constructs an instance set to the milliseconds from 1970-01-01T00:00:00Z using the specified chronology.BaseDateTime
(long instant, DateTimeZone zone) Constructs an instance set to the milliseconds from 1970-01-01T00:00:00Z usingISOChronology
in the specified time zone.BaseDateTime
(Object instant, Chronology chronology) Constructs an instance from an Object that represents a datetime, using the specified chronology.BaseDateTime
(Object instant, DateTimeZone zone) Constructs an instance from an Object that represents a datetime, forcing the time zone to that specified.BaseDateTime
(Chronology chronology) Constructs an instance set to the current system millisecond time using the specified chronology.BaseDateTime
(DateTimeZone zone) Constructs an instance set to the current system millisecond time usingISOChronology
in the specified time zone. -
Method Summary
Modifier and TypeMethodDescriptionprotected Chronology
checkChronology
(Chronology chronology) Checks the specified chronology before storing it, potentially altering it.protected long
checkInstant
(long instant, Chronology chronology) Checks the specified instant before storing it, potentially altering it.Gets the chronology of the datetime.long
Gets the milliseconds of the datetime instant from the Java epoch of 1970-01-01T00:00:00Z.protected void
setChronology
(Chronology chronology) Sets the chronology of the datetime.protected void
setMillis
(long instant) Sets the milliseconds of the datetime.Methods inherited from class org.joda.time.base.AbstractDateTime
get, getCenturyOfEra, getDayOfMonth, getDayOfWeek, getDayOfYear, getEra, getHourOfDay, getMillisOfDay, getMillisOfSecond, getMinuteOfDay, getMinuteOfHour, getMonthOfYear, getSecondOfDay, getSecondOfMinute, getWeekOfWeekyear, getWeekyear, getYear, getYearOfCentury, getYearOfEra, toCalendar, toGregorianCalendar, toString, toString, toString
Methods inherited from class org.joda.time.base.AbstractInstant
compareTo, equals, get, getZone, hashCode, isAfter, isAfter, isAfterNow, isBefore, isBefore, isBeforeNow, isEqual, isEqual, isEqualNow, isSupported, toDate, toDateTime, toDateTime, toDateTime, toDateTimeISO, toInstant, toMutableDateTime, toMutableDateTime, toMutableDateTime, toMutableDateTimeISO, toString
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.lang.Comparable
compareTo
Methods inherited from interface org.joda.time.ReadableDateTime
getCenturyOfEra, getDayOfMonth, getDayOfWeek, getDayOfYear, getEra, getHourOfDay, getMillisOfDay, getMillisOfSecond, getMinuteOfDay, getMinuteOfHour, getMonthOfYear, getSecondOfDay, getSecondOfMinute, getWeekOfWeekyear, getWeekyear, getYear, getYearOfCentury, getYearOfEra, toDateTime, toMutableDateTime, toString, toString
-
Constructor Details
-
BaseDateTime
public BaseDateTime()Constructs an instance set to the current system millisecond time usingISOChronology
in the default time zone. -
BaseDateTime
Constructs an instance set to the current system millisecond time usingISOChronology
in the specified time zone.If the specified time zone is null, the default zone is used.
- Parameters:
zone
- the time zone, null means default zone
-
BaseDateTime
Constructs an instance set to the current system millisecond time using the specified chronology.If the chronology is null,
ISOChronology
in the default time zone is used.- Parameters:
chronology
- the chronology, null means ISOChronology in default zone
-
BaseDateTime
public BaseDateTime(long instant) Constructs an instance set to the milliseconds from 1970-01-01T00:00:00Z usingISOChronology
in the default time zone.- Parameters:
instant
- the milliseconds from 1970-01-01T00:00:00Z
-
BaseDateTime
Constructs an instance set to the milliseconds from 1970-01-01T00:00:00Z usingISOChronology
in the specified time zone.If the specified time zone is null, the default zone is used.
- Parameters:
instant
- the milliseconds from 1970-01-01T00:00:00Zzone
- the time zone, null means default zone
-
BaseDateTime
Constructs an instance set to the milliseconds from 1970-01-01T00:00:00Z using the specified chronology.If the chronology is null,
ISOChronology
in the default time zone is used.- Parameters:
instant
- the milliseconds from 1970-01-01T00:00:00Zchronology
- the chronology, null means ISOChronology in default zone
-
BaseDateTime
Constructs an instance from an Object that represents a datetime, forcing the time zone to that specified.If the object contains no chronology,
ISOChronology
is used. If the specified time zone is null, the default zone is used.The recognised object types are defined in
ConverterManager
and include ReadableInstant, String, Calendar and Date.- Parameters:
instant
- the datetime objectzone
- the time zone- Throws:
IllegalArgumentException
- if the instant is invalid
-
BaseDateTime
Constructs an instance from an Object that represents a datetime, using the specified chronology.If the chronology is null, ISO in the default time zone is used.
The recognised object types are defined in
ConverterManager
and include ReadableInstant, String, Calendar and Date.- Parameters:
instant
- the datetime objectchronology
- the chronology- Throws:
IllegalArgumentException
- if the instant is invalid
-
BaseDateTime
public BaseDateTime(int year, int monthOfYear, int dayOfMonth, int hourOfDay, int minuteOfHour, int secondOfMinute, int millisOfSecond) Constructs an instance from datetime field values usingISOChronology
in the default time zone.- Parameters:
year
- the yearmonthOfYear
- the month of the yeardayOfMonth
- the day of the monthhourOfDay
- the hour of the dayminuteOfHour
- the minute of the hoursecondOfMinute
- the second of the minutemillisOfSecond
- the millisecond of the second
-
BaseDateTime
public BaseDateTime(int year, int monthOfYear, int dayOfMonth, int hourOfDay, int minuteOfHour, int secondOfMinute, int millisOfSecond, DateTimeZone zone) Constructs an instance from datetime field values usingISOChronology
in the specified time zone.If the specified time zone is null, the default zone is used.
- Parameters:
year
- the yearmonthOfYear
- the month of the yeardayOfMonth
- the day of the monthhourOfDay
- the hour of the dayminuteOfHour
- the minute of the hoursecondOfMinute
- the second of the minutemillisOfSecond
- the millisecond of the secondzone
- the time zone, null means default time zone
-
BaseDateTime
public BaseDateTime(int year, int monthOfYear, int dayOfMonth, int hourOfDay, int minuteOfHour, int secondOfMinute, int millisOfSecond, Chronology chronology) Constructs an instance from datetime field values using the specified chronology.If the chronology is null,
ISOChronology
in the default time zone is used.- Parameters:
year
- the yearmonthOfYear
- the month of the yeardayOfMonth
- the day of the monthhourOfDay
- the hour of the dayminuteOfHour
- the minute of the hoursecondOfMinute
- the second of the minutemillisOfSecond
- the millisecond of the secondchronology
- the chronology, null means ISOChronology in default zone
-
-
Method Details
-
checkChronology
Checks the specified chronology before storing it, potentially altering it. This method must not access any instance variables.This implementation converts nulls to ISOChronology in the default zone.
- Parameters:
chronology
- the chronology to use, may be null- Returns:
- the chronology to store in this datetime, not null
-
checkInstant
Checks the specified instant before storing it, potentially altering it. This method must not access any instance variables.This implementation simply returns the instant.
- Parameters:
instant
- the milliseconds from 1970-01-01T00:00:00Z to roundchronology
- the chronology to use, not null- Returns:
- the instant to store in this datetime
-
getMillis
public long getMillis()Gets the milliseconds of the datetime instant from the Java epoch of 1970-01-01T00:00:00Z.- Specified by:
getMillis
in interfaceReadableInstant
- Returns:
- the number of milliseconds since 1970-01-01T00:00:00Z
-
getChronology
Gets the chronology of the datetime.- Specified by:
getChronology
in interfaceReadableInstant
- Returns:
- the Chronology that the datetime is using
-
setMillis
protected void setMillis(long instant) Sets the milliseconds of the datetime.All changes to the millisecond field occurs via this method. Override and block this method to make a subclass immutable.
- Parameters:
instant
- the milliseconds since 1970-01-01T00:00:00Z to set the datetime to
-
setChronology
Sets the chronology of the datetime.All changes to the chronology field occurs via this method. Override and block this method to make a subclass immutable.
- Parameters:
chronology
- the chronology to set
-