Class DateTimeFieldType
- java.lang.Object
-
- org.joda.time.DateTimeFieldType
-
- All Implemented Interfaces:
java.io.Serializable
- Direct Known Subclasses:
DateTimeFieldType.StandardDateTimeFieldType
public abstract class DateTimeFieldType extends java.lang.Object implements java.io.Serializable
Identifies a field, such as year or minuteOfHour, in a chronology-neutral way.A field type defines the type of the field, such as hourOfDay. If does not directly enable any calculations, however it does provide a
getField(Chronology)
method that returns the actual calculation engine for a particular chronology. It also provides access to the relatedDurationFieldType
s.Instances of
DateTimeFieldType
are singletons. They can be compared using==
.If required, you can create your own field, for example a quarterOfYear. You must create a subclass of
DateTimeFieldType
that defines the field type. This class returns the actual calculation engine fromgetField(Chronology)
. The subclass should implement equals and hashCode.- Since:
- 1.0
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
DateTimeFieldType.StandardDateTimeFieldType
-
Field Summary
Fields Modifier and Type Field Description (package private) static byte
CENTURY_OF_ERA
Ordinal values for standard field types.private static DateTimeFieldType
CENTURY_OF_ERA_TYPE
The centuryOfEra field type.(package private) static byte
CLOCKHOUR_OF_DAY
Ordinal values for standard field types.private static DateTimeFieldType
CLOCKHOUR_OF_DAY_TYPE
The clockhourOfDay field type.(package private) static byte
CLOCKHOUR_OF_HALFDAY
Ordinal values for standard field types.private static DateTimeFieldType
CLOCKHOUR_OF_HALFDAY_TYPE
The clockhourOfHalfday field type.(package private) static byte
DAY_OF_MONTH
Ordinal values for standard field types.private static DateTimeFieldType
DAY_OF_MONTH_TYPE
The dayOfMonth field type.(package private) static byte
DAY_OF_WEEK
Ordinal values for standard field types.private static DateTimeFieldType
DAY_OF_WEEK_TYPE
The dayOfWeek field type.(package private) static byte
DAY_OF_YEAR
Ordinal values for standard field types.private static DateTimeFieldType
DAY_OF_YEAR_TYPE
The dayOfYear field type.(package private) static byte
ERA
Ordinal values for standard field types.private static DateTimeFieldType
ERA_TYPE
The era field type.(package private) static byte
HALFDAY_OF_DAY
Ordinal values for standard field types.private static DateTimeFieldType
HALFDAY_OF_DAY_TYPE
The halfday field type.(package private) static byte
HOUR_OF_DAY
Ordinal values for standard field types.private static DateTimeFieldType
HOUR_OF_DAY_TYPE
The hourOfDay field type.(package private) static byte
HOUR_OF_HALFDAY
Ordinal values for standard field types.private static DateTimeFieldType
HOUR_OF_HALFDAY_TYPE
The hourOfHalfday field type.private java.lang.String
iName
The name of the field.(package private) static byte
MILLIS_OF_DAY
Ordinal values for standard field types.private static DateTimeFieldType
MILLIS_OF_DAY_TYPE
The millisOfDay field type.(package private) static byte
MILLIS_OF_SECOND
Ordinal values for standard field types.private static DateTimeFieldType
MILLIS_OF_SECOND_TYPE
The millisOfSecond field type.(package private) static byte
MINUTE_OF_DAY
Ordinal values for standard field types.private static DateTimeFieldType
MINUTE_OF_DAY_TYPE
The minuteOfDay field type.(package private) static byte
MINUTE_OF_HOUR
Ordinal values for standard field types.private static DateTimeFieldType
MINUTE_OF_HOUR_TYPE
The minuteOfHour field type.(package private) static byte
MONTH_OF_YEAR
Ordinal values for standard field types.private static DateTimeFieldType
MONTH_OF_YEAR_TYPE
The monthOfYear field type.(package private) static byte
SECOND_OF_DAY
Ordinal values for standard field types.private static DateTimeFieldType
SECOND_OF_DAY_TYPE
The secondOfDay field type.(package private) static byte
SECOND_OF_MINUTE
Ordinal values for standard field types.private static DateTimeFieldType
SECOND_OF_MINUTE_TYPE
The secondOfMinute field type.private static long
serialVersionUID
Serialization version(package private) static byte
WEEK_OF_WEEKYEAR
Ordinal values for standard field types.private static DateTimeFieldType
WEEK_OF_WEEKYEAR_TYPE
The weekOfWeekyear field type.(package private) static byte
WEEKYEAR
Ordinal values for standard field types.(package private) static byte
WEEKYEAR_OF_CENTURY
Ordinal values for standard field types.private static DateTimeFieldType
WEEKYEAR_OF_CENTURY_TYPE
The weekyearOfCentury field type.private static DateTimeFieldType
WEEKYEAR_TYPE
The weekyear field type.(package private) static byte
YEAR
Ordinal values for standard field types.(package private) static byte
YEAR_OF_CENTURY
Ordinal values for standard field types.private static DateTimeFieldType
YEAR_OF_CENTURY_TYPE
The yearOfCentury field type.(package private) static byte
YEAR_OF_ERA
Ordinal values for standard field types.private static DateTimeFieldType
YEAR_OF_ERA_TYPE
The yearOfEra field type.private static DateTimeFieldType
YEAR_TYPE
The year field type.
-
Constructor Summary
Constructors Modifier Constructor Description protected
DateTimeFieldType(java.lang.String name)
Constructor.
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description static DateTimeFieldType
centuryOfEra()
Get the century of era field type.static DateTimeFieldType
clockhourOfDay()
Get the hour of day (offset to 1-24) field type.static DateTimeFieldType
clockhourOfHalfday()
Get the hour of am/pm (offset to 1-12) field type.static DateTimeFieldType
dayOfMonth()
Get the day of month field type.static DateTimeFieldType
dayOfWeek()
Get the day of week field type.static DateTimeFieldType
dayOfYear()
Get the day of year field type.static DateTimeFieldType
era()
Get the era field type.abstract DurationFieldType
getDurationType()
Get the duration unit of the field.abstract DateTimeField
getField(Chronology chronology)
Gets a suitable field for this type from the given Chronology.java.lang.String
getName()
Get the name of the field.abstract DurationFieldType
getRangeDurationType()
Get the duration range of the field.static DateTimeFieldType
halfdayOfDay()
Get the AM(0) PM(1) field type.static DateTimeFieldType
hourOfDay()
Get the hour of day (0-23) field type.static DateTimeFieldType
hourOfHalfday()
Get the hour of am/pm (0-11) field type.boolean
isSupported(Chronology chronology)
Checks whether this field supported in the given Chronology.static DateTimeFieldType
millisOfDay()
Get the millis of day field type.static DateTimeFieldType
millisOfSecond()
Get the millis of second field type.static DateTimeFieldType
minuteOfDay()
Get the minute of day field type.static DateTimeFieldType
minuteOfHour()
Get the minute of hour field type.static DateTimeFieldType
monthOfYear()
Get the month of year field type.static DateTimeFieldType
secondOfDay()
Get the second of day field type.static DateTimeFieldType
secondOfMinute()
Get the second of minute field type.java.lang.String
toString()
Get a suitable debug string.static DateTimeFieldType
weekOfWeekyear()
Get the week of a week based year field type.static DateTimeFieldType
weekyear()
Get the year of a week based year field type.static DateTimeFieldType
weekyearOfCentury()
Get the year of a week based year within a century field type.static DateTimeFieldType
year()
Get the year field type.static DateTimeFieldType
yearOfCentury()
Get the year of century field type.static DateTimeFieldType
yearOfEra()
Get the year of era field type.
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
Serialization version- See Also:
- Constant Field Values
-
ERA
static final byte ERA
Ordinal values for standard field types.- See Also:
- Constant Field Values
-
YEAR_OF_ERA
static final byte YEAR_OF_ERA
Ordinal values for standard field types.- See Also:
- Constant Field Values
-
CENTURY_OF_ERA
static final byte CENTURY_OF_ERA
Ordinal values for standard field types.- See Also:
- Constant Field Values
-
YEAR_OF_CENTURY
static final byte YEAR_OF_CENTURY
Ordinal values for standard field types.- See Also:
- Constant Field Values
-
YEAR
static final byte YEAR
Ordinal values for standard field types.- See Also:
- Constant Field Values
-
DAY_OF_YEAR
static final byte DAY_OF_YEAR
Ordinal values for standard field types.- See Also:
- Constant Field Values
-
MONTH_OF_YEAR
static final byte MONTH_OF_YEAR
Ordinal values for standard field types.- See Also:
- Constant Field Values
-
DAY_OF_MONTH
static final byte DAY_OF_MONTH
Ordinal values for standard field types.- See Also:
- Constant Field Values
-
WEEKYEAR_OF_CENTURY
static final byte WEEKYEAR_OF_CENTURY
Ordinal values for standard field types.- See Also:
- Constant Field Values
-
WEEKYEAR
static final byte WEEKYEAR
Ordinal values for standard field types.- See Also:
- Constant Field Values
-
WEEK_OF_WEEKYEAR
static final byte WEEK_OF_WEEKYEAR
Ordinal values for standard field types.- See Also:
- Constant Field Values
-
DAY_OF_WEEK
static final byte DAY_OF_WEEK
Ordinal values for standard field types.- See Also:
- Constant Field Values
-
HALFDAY_OF_DAY
static final byte HALFDAY_OF_DAY
Ordinal values for standard field types.- See Also:
- Constant Field Values
-
HOUR_OF_HALFDAY
static final byte HOUR_OF_HALFDAY
Ordinal values for standard field types.- See Also:
- Constant Field Values
-
CLOCKHOUR_OF_HALFDAY
static final byte CLOCKHOUR_OF_HALFDAY
Ordinal values for standard field types.- See Also:
- Constant Field Values
-
CLOCKHOUR_OF_DAY
static final byte CLOCKHOUR_OF_DAY
Ordinal values for standard field types.- See Also:
- Constant Field Values
-
HOUR_OF_DAY
static final byte HOUR_OF_DAY
Ordinal values for standard field types.- See Also:
- Constant Field Values
-
MINUTE_OF_DAY
static final byte MINUTE_OF_DAY
Ordinal values for standard field types.- See Also:
- Constant Field Values
-
MINUTE_OF_HOUR
static final byte MINUTE_OF_HOUR
Ordinal values for standard field types.- See Also:
- Constant Field Values
-
SECOND_OF_DAY
static final byte SECOND_OF_DAY
Ordinal values for standard field types.- See Also:
- Constant Field Values
-
SECOND_OF_MINUTE
static final byte SECOND_OF_MINUTE
Ordinal values for standard field types.- See Also:
- Constant Field Values
-
MILLIS_OF_DAY
static final byte MILLIS_OF_DAY
Ordinal values for standard field types.- See Also:
- Constant Field Values
-
MILLIS_OF_SECOND
static final byte MILLIS_OF_SECOND
Ordinal values for standard field types.- See Also:
- Constant Field Values
-
ERA_TYPE
private static final DateTimeFieldType ERA_TYPE
The era field type.
-
YEAR_OF_ERA_TYPE
private static final DateTimeFieldType YEAR_OF_ERA_TYPE
The yearOfEra field type.
-
CENTURY_OF_ERA_TYPE
private static final DateTimeFieldType CENTURY_OF_ERA_TYPE
The centuryOfEra field type.
-
YEAR_OF_CENTURY_TYPE
private static final DateTimeFieldType YEAR_OF_CENTURY_TYPE
The yearOfCentury field type.
-
YEAR_TYPE
private static final DateTimeFieldType YEAR_TYPE
The year field type.
-
DAY_OF_YEAR_TYPE
private static final DateTimeFieldType DAY_OF_YEAR_TYPE
The dayOfYear field type.
-
MONTH_OF_YEAR_TYPE
private static final DateTimeFieldType MONTH_OF_YEAR_TYPE
The monthOfYear field type.
-
DAY_OF_MONTH_TYPE
private static final DateTimeFieldType DAY_OF_MONTH_TYPE
The dayOfMonth field type.
-
WEEKYEAR_OF_CENTURY_TYPE
private static final DateTimeFieldType WEEKYEAR_OF_CENTURY_TYPE
The weekyearOfCentury field type.
-
WEEKYEAR_TYPE
private static final DateTimeFieldType WEEKYEAR_TYPE
The weekyear field type.
-
WEEK_OF_WEEKYEAR_TYPE
private static final DateTimeFieldType WEEK_OF_WEEKYEAR_TYPE
The weekOfWeekyear field type.
-
DAY_OF_WEEK_TYPE
private static final DateTimeFieldType DAY_OF_WEEK_TYPE
The dayOfWeek field type.
-
HALFDAY_OF_DAY_TYPE
private static final DateTimeFieldType HALFDAY_OF_DAY_TYPE
The halfday field type.
-
HOUR_OF_HALFDAY_TYPE
private static final DateTimeFieldType HOUR_OF_HALFDAY_TYPE
The hourOfHalfday field type.
-
CLOCKHOUR_OF_HALFDAY_TYPE
private static final DateTimeFieldType CLOCKHOUR_OF_HALFDAY_TYPE
The clockhourOfHalfday field type.
-
CLOCKHOUR_OF_DAY_TYPE
private static final DateTimeFieldType CLOCKHOUR_OF_DAY_TYPE
The clockhourOfDay field type.
-
HOUR_OF_DAY_TYPE
private static final DateTimeFieldType HOUR_OF_DAY_TYPE
The hourOfDay field type.
-
MINUTE_OF_DAY_TYPE
private static final DateTimeFieldType MINUTE_OF_DAY_TYPE
The minuteOfDay field type.
-
MINUTE_OF_HOUR_TYPE
private static final DateTimeFieldType MINUTE_OF_HOUR_TYPE
The minuteOfHour field type.
-
SECOND_OF_DAY_TYPE
private static final DateTimeFieldType SECOND_OF_DAY_TYPE
The secondOfDay field type.
-
SECOND_OF_MINUTE_TYPE
private static final DateTimeFieldType SECOND_OF_MINUTE_TYPE
The secondOfMinute field type.
-
MILLIS_OF_DAY_TYPE
private static final DateTimeFieldType MILLIS_OF_DAY_TYPE
The millisOfDay field type.
-
MILLIS_OF_SECOND_TYPE
private static final DateTimeFieldType MILLIS_OF_SECOND_TYPE
The millisOfSecond field type.
-
iName
private final java.lang.String iName
The name of the field.
-
-
Method Detail
-
millisOfSecond
public static DateTimeFieldType millisOfSecond()
Get the millis of second field type.- Returns:
- the DateTimeFieldType constant
-
millisOfDay
public static DateTimeFieldType millisOfDay()
Get the millis of day field type.This measures the milliseconds from the start of the day on the local time-line. On a daylight saving date, this means that some values will be missed (in spring) or duplicated (in autumn/fall).
- Returns:
- the DateTimeFieldType constant
-
secondOfMinute
public static DateTimeFieldType secondOfMinute()
Get the second of minute field type.- Returns:
- the DateTimeFieldType constant
-
secondOfDay
public static DateTimeFieldType secondOfDay()
Get the second of day field type.This measures the seconds from the start of the day on the local time-line. On a daylight saving date, this means that some values will be missed (in spring) or duplicated (in autumn/fall).
- Returns:
- the DateTimeFieldType constant
-
minuteOfHour
public static DateTimeFieldType minuteOfHour()
Get the minute of hour field type.- Returns:
- the DateTimeFieldType constant
-
minuteOfDay
public static DateTimeFieldType minuteOfDay()
Get the minute of day field type.This measures the minutes from the start of the day on the local time-line. On a daylight saving date, this means that some values will be missed (in spring) or duplicated (in autumn/fall).
- Returns:
- the DateTimeFieldType constant
-
hourOfDay
public static DateTimeFieldType hourOfDay()
Get the hour of day (0-23) field type.- Returns:
- the DateTimeFieldType constant
-
clockhourOfDay
public static DateTimeFieldType clockhourOfDay()
Get the hour of day (offset to 1-24) field type.- Returns:
- the DateTimeFieldType constant
-
hourOfHalfday
public static DateTimeFieldType hourOfHalfday()
Get the hour of am/pm (0-11) field type.- Returns:
- the DateTimeFieldType constant
-
clockhourOfHalfday
public static DateTimeFieldType clockhourOfHalfday()
Get the hour of am/pm (offset to 1-12) field type.- Returns:
- the DateTimeFieldType constant
-
halfdayOfDay
public static DateTimeFieldType halfdayOfDay()
Get the AM(0) PM(1) field type.- Returns:
- the DateTimeFieldType constant
-
dayOfWeek
public static DateTimeFieldType dayOfWeek()
Get the day of week field type.- Returns:
- the DateTimeFieldType constant
-
dayOfMonth
public static DateTimeFieldType dayOfMonth()
Get the day of month field type.- Returns:
- the DateTimeFieldType constant
-
dayOfYear
public static DateTimeFieldType dayOfYear()
Get the day of year field type.- Returns:
- the DateTimeFieldType constant
-
weekOfWeekyear
public static DateTimeFieldType weekOfWeekyear()
Get the week of a week based year field type.- Returns:
- the DateTimeFieldType constant
-
weekyear
public static DateTimeFieldType weekyear()
Get the year of a week based year field type.- Returns:
- the DateTimeFieldType constant
-
weekyearOfCentury
public static DateTimeFieldType weekyearOfCentury()
Get the year of a week based year within a century field type.- Returns:
- the DateTimeFieldType constant
-
monthOfYear
public static DateTimeFieldType monthOfYear()
Get the month of year field type.- Returns:
- the DateTimeFieldType constant
-
year
public static DateTimeFieldType year()
Get the year field type.- Returns:
- the DateTimeFieldType constant
-
yearOfEra
public static DateTimeFieldType yearOfEra()
Get the year of era field type.- Returns:
- the DateTimeFieldType constant
-
yearOfCentury
public static DateTimeFieldType yearOfCentury()
Get the year of century field type.- Returns:
- the DateTimeFieldType constant
-
centuryOfEra
public static DateTimeFieldType centuryOfEra()
Get the century of era field type.- Returns:
- the DateTimeFieldType constant
-
era
public static DateTimeFieldType era()
Get the era field type.- Returns:
- the DateTimeFieldType constant
-
getName
public java.lang.String getName()
Get the name of the field.By convention, names follow a pattern of "dddOfRrr", where "ddd" represents the (singular) duration unit field name and "Rrr" represents the (singular) duration range field name. If the range field is not applicable, then the name of the field is simply the (singular) duration field name.
- Returns:
- field name
-
getDurationType
public abstract DurationFieldType getDurationType()
Get the duration unit of the field.- Returns:
- duration unit of the field, never null
-
getRangeDurationType
public abstract DurationFieldType getRangeDurationType()
Get the duration range of the field.- Returns:
- duration range of the field, null if unbounded
-
getField
public abstract DateTimeField getField(Chronology chronology)
Gets a suitable field for this type from the given Chronology.- Parameters:
chronology
- the chronology to use, null means ISOChronology in default zone- Returns:
- a suitable field
-
isSupported
public boolean isSupported(Chronology chronology)
Checks whether this field supported in the given Chronology.- Parameters:
chronology
- the chronology to use, null means ISOChronology in default zone- Returns:
- true if supported
-
toString
public java.lang.String toString()
Get a suitable debug string.- Overrides:
toString
in classjava.lang.Object
- Returns:
- debug string
-
-