Package org.elasticsearch.common.joda
Class JodaDateFormatter
- java.lang.Object
-
- org.elasticsearch.common.joda.JodaDateFormatter
-
- All Implemented Interfaces:
DateFormatter
public class JodaDateFormatter extends java.lang.Object implements DateFormatter
-
-
Constructor Summary
Constructors Constructor Description JodaDateFormatter(java.lang.String pattern, org.joda.time.format.DateTimeFormatter parser, org.joda.time.format.DateTimeFormatter printer)
-
Method Summary
Modifier and Type Method Description java.lang.String
format(java.time.temporal.TemporalAccessor accessor)
Print the supplied java time accessor in a string based representation according to this formatterjava.lang.String
formatJoda(org.joda.time.DateTime dateTime)
Return the given JodaDateTime
formatted with this format.java.lang.String
formatMillis(long millis)
Return the given millis-since-epoch formatted with this format.java.util.Locale
locale()
Returns the configured locale of the date formatterjava.time.temporal.TemporalAccessor
parse(java.lang.String input)
Try to parse input to a java time TemporalAccessor using joda-time library.org.joda.time.DateTime
parseJoda(java.lang.String input)
Parse the given input into a JodaDateTime
.long
parseMillis(java.lang.String input)
Parse the given input into millis-since-epoch.java.lang.String
pattern()
A name based format for this formatter.DateMathParser
toDateMathParser()
Return aDateMathParser
built from this formatter.DateFormatter
withLocale(java.util.Locale locale)
Create a copy of this formatter that is configured to parse dates in the specified localeJodaDateFormatter
withYear(int year)
DateFormatter
withZone(java.time.ZoneId zoneId)
Create a copy of this formatter that is configured to parse dates in the specified time zonejava.time.ZoneId
zone()
Returns the configured time zone of the date formatter
-
-
-
Method Detail
-
parse
public java.time.temporal.TemporalAccessor parse(java.lang.String input)
Try to parse input to a java time TemporalAccessor using joda-time library.- Specified by:
parse
in interfaceDateFormatter
- Parameters:
input
- An arbitrary string resembling the string representation of a date or time- Returns:
- The java time object containing the parsed input
- Throws:
java.lang.IllegalArgumentException
- if the text to parse is invalidjava.time.DateTimeException
- if the parsing result exceeds the supported range ofZoneDateTime
or if the parsed instant exceeds the maximum or minimum instant- See Also:
DateFormatter.parse(String)
-
parseMillis
public long parseMillis(java.lang.String input)
Description copied from interface:DateFormatter
Parse the given input into millis-since-epoch.- Specified by:
parseMillis
in interfaceDateFormatter
-
parseJoda
public org.joda.time.DateTime parseJoda(java.lang.String input)
Description copied from interface:DateFormatter
Parse the given input into a JodaDateTime
.- Specified by:
parseJoda
in interfaceDateFormatter
-
withZone
public DateFormatter withZone(java.time.ZoneId zoneId)
Description copied from interface:DateFormatter
Create a copy of this formatter that is configured to parse dates in the specified time zone- Specified by:
withZone
in interfaceDateFormatter
- Parameters:
zoneId
- The time zone to act on- Returns:
- A copy of the date formatter this has been called on
-
withLocale
public DateFormatter withLocale(java.util.Locale locale)
Description copied from interface:DateFormatter
Create a copy of this formatter that is configured to parse dates in the specified locale- Specified by:
withLocale
in interfaceDateFormatter
- Parameters:
locale
- The local to use for the new formatter- Returns:
- A copy of the date formatter this has been called on
-
format
public java.lang.String format(java.time.temporal.TemporalAccessor accessor)
Description copied from interface:DateFormatter
Print the supplied java time accessor in a string based representation according to this formatter- Specified by:
format
in interfaceDateFormatter
- Parameters:
accessor
- The temporal accessor used to format- Returns:
- The string result for the formatting
-
formatJoda
public java.lang.String formatJoda(org.joda.time.DateTime dateTime)
Description copied from interface:DateFormatter
Return the given JodaDateTime
formatted with this format.- Specified by:
formatJoda
in interfaceDateFormatter
-
formatMillis
public java.lang.String formatMillis(long millis)
Description copied from interface:DateFormatter
Return the given millis-since-epoch formatted with this format.- Specified by:
formatMillis
in interfaceDateFormatter
-
withYear
public JodaDateFormatter withYear(int year)
-
pattern
public java.lang.String pattern()
Description copied from interface:DateFormatter
A name based format for this formatter. Can be one of the registered formatters likeepoch_millis
or a configured format likeHH:mm:ss
- Specified by:
pattern
in interfaceDateFormatter
- Returns:
- The name of this formatter
-
locale
public java.util.Locale locale()
Description copied from interface:DateFormatter
Returns the configured locale of the date formatter- Specified by:
locale
in interfaceDateFormatter
- Returns:
- The locale of this formatter
-
zone
public java.time.ZoneId zone()
Description copied from interface:DateFormatter
Returns the configured time zone of the date formatter- Specified by:
zone
in interfaceDateFormatter
- Returns:
- The time zone of this formatter
-
toDateMathParser
public DateMathParser toDateMathParser()
Description copied from interface:DateFormatter
Return aDateMathParser
built from this formatter.- Specified by:
toDateMathParser
in interfaceDateFormatter
-
-