Class CalendarsImpl
- java.lang.Object
-
- com.squarespace.cldrengine.calendars.CalendarsImpl
-
-
Field Summary
Fields Modifier and Type Field Description protected static RelativeTimeFieldType[]
DOW_FIELDS
-
Constructor Summary
Constructors Constructor Description CalendarsImpl(Bundle bundle, Internals internals, PrivateApi privateApi)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected <T extends CalendarDate>
com.squarespace.cldrengine.calendars.CalendarContext<T>_context(T date, NumberParams params, ContextType context, Option<DateFormatAltOptions> alt)
protected <R> R
_formatDate(AbstractValue<R> value, CalendarDate date, DateFormatOptions options)
protected <R> R
_formatInterval(AbstractValue<R> value, CalendarDate start, CalendarDate end, DateIntervalFormatOptions options)
protected CalendarDate
convertDateTo(CalendarType type, CalendarDate date)
DateTimePatternFieldType
fieldOfVisualDifference(CalendarDate a, CalendarDate b)
Find the field of visual difference between two dates.java.lang.String
formatDate(CalendarDate date, DateFormatOptions options)
Formats a date-time value to string.java.lang.String
formatDateInterval(CalendarDate start, CalendarDate end, DateIntervalFormatOptions options)
Formats a date interval with a start and end.java.util.List<Part>
formatDateIntervalToParts(CalendarDate start, CalendarDate end, DateIntervalFormatOptions options)
Formats a date-time interval for the given skeleton to an array of parts.java.lang.String
formatDateRaw(CalendarDate date, DateRawFormatOptions options)
Formats a date-time value to string using a raw date-time pattern.java.util.List<Part>
formatDateToParts(CalendarDate date, DateFormatOptions options)
Formats a date-time value to an array of parts.java.lang.String
formatRelativeTime(CalendarDate start, CalendarDate end, RelativeTimeFormatOptions options)
Formats the relative time from a start to end date.java.lang.String
formatRelativeTimeField(Decimal value, RelativeTimeFieldType field, RelativeTimeFieldFormatOptions options)
Formats a relative time field to string.java.lang.String
resolveTimeZoneId(java.lang.String zoneId)
Resolve a timezone id / alias to the official TZDB identifier.TimeData
timeData()
Return information about the locale's preferred and allowed time cycles.java.util.List<java.lang.String>
timeZoneIds()
Return an array containing the official TZDB timezone identifiers.TimeZoneInfo
timeZoneInfo(java.lang.String zoneId)
Return additional information for a timezone id, including the localized exemplar city.BuddhistDate
toBuddhistDate(long epoch, java.lang.String zoneId)
Convert a date time into a date in the Buddhist calendar, with locale-specific week data.BuddhistDate
toBuddhistDate(CalendarDate date)
Convert a date time into a date in the Buddhist calendar, with locale-specific week data.BuddhistDate
toBuddhistDate(java.util.Date date, java.lang.String zoneId)
Convert a date time into a date in the Buddhist calendar, with locale-specific week data.GregorianDate
toGregorianDate(long epoch, java.lang.String zoneId)
Convert a date time into a date in the Gregorian calendar, with locale-specific week data.GregorianDate
toGregorianDate(CalendarDate date)
Convert a date time into a date in the Gregorian calendar, with locale-specific week data.GregorianDate
toGregorianDate(java.util.Date date, java.lang.String zoneId)
Convert a date time into a date in the Gregorian calendar, with locale-specific week data.ISO8601Date
toISO8601Date(long epoch, java.lang.String zoneId)
Convert a date time into a date in the ISO-8601 calendar, with ISO week data.ISO8601Date
toISO8601Date(CalendarDate date)
Convert a date time into a date in the ISO-8601 calendar, with ISO week data.ISO8601Date
toISO8601Date(java.util.Date date, java.lang.String zoneId)
Convert a date time into a date in the ISO-8601 calendar, with ISO week data.JapaneseDate
toJapaneseDate(long epoch, java.lang.String zoneId)
Convert a date time into a date in the Japanese calendar, with locale-specific week data.JapaneseDate
toJapaneseDate(CalendarDate date)
Convert a date time into a date in the Japanese calendar, with locale-specific week data.JapaneseDate
toJapaneseDate(java.util.Date date, java.lang.String zoneId)
Convert a date time into a date in the Japanese calendar, with locale-specific week data.PersianDate
toPersianDate(long epoch, java.lang.String zoneId)
Convert a date time into a date in the Persian calendar, with locale-specific week data.PersianDate
toPersianDate(CalendarDate date)
Convert a date time into a date in the Persian calendar, with locale-specific week data.PersianDate
toPersianDate(java.util.Date date, java.lang.String zoneId)
Convert a date time into a date in the Persian calendar, with locale-specific week data.protected RelativeTimeFieldType
translateRelativeFieldType(TimePeriodField field)
-
-
-
Field Detail
-
DOW_FIELDS
protected static final RelativeTimeFieldType[] DOW_FIELDS
-
-
Constructor Detail
-
CalendarsImpl
public CalendarsImpl(Bundle bundle, Internals internals, PrivateApi privateApi)
-
-
Method Detail
-
toBuddhistDate
public BuddhistDate toBuddhistDate(long epoch, java.lang.String zoneId)
Description copied from interface:Calendars
Convert a date time into a date in the Buddhist calendar, with locale-specific week data.- Specified by:
toBuddhistDate
in interfaceCalendars
-
toBuddhistDate
public BuddhistDate toBuddhistDate(java.util.Date date, java.lang.String zoneId)
Description copied from interface:Calendars
Convert a date time into a date in the Buddhist calendar, with locale-specific week data.- Specified by:
toBuddhistDate
in interfaceCalendars
-
toBuddhistDate
public BuddhistDate toBuddhistDate(CalendarDate date)
Description copied from interface:Calendars
Convert a date time into a date in the Buddhist calendar, with locale-specific week data.- Specified by:
toBuddhistDate
in interfaceCalendars
-
toGregorianDate
public GregorianDate toGregorianDate(long epoch, java.lang.String zoneId)
Description copied from interface:Calendars
Convert a date time into a date in the Gregorian calendar, with locale-specific week data.- Specified by:
toGregorianDate
in interfaceCalendars
-
toGregorianDate
public GregorianDate toGregorianDate(java.util.Date date, java.lang.String zoneId)
Description copied from interface:Calendars
Convert a date time into a date in the Gregorian calendar, with locale-specific week data.- Specified by:
toGregorianDate
in interfaceCalendars
-
toGregorianDate
public GregorianDate toGregorianDate(CalendarDate date)
Description copied from interface:Calendars
Convert a date time into a date in the Gregorian calendar, with locale-specific week data.- Specified by:
toGregorianDate
in interfaceCalendars
-
toISO8601Date
public ISO8601Date toISO8601Date(long epoch, java.lang.String zoneId)
Description copied from interface:Calendars
Convert a date time into a date in the ISO-8601 calendar, with ISO week data.- Specified by:
toISO8601Date
in interfaceCalendars
-
toISO8601Date
public ISO8601Date toISO8601Date(java.util.Date date, java.lang.String zoneId)
Description copied from interface:Calendars
Convert a date time into a date in the ISO-8601 calendar, with ISO week data.- Specified by:
toISO8601Date
in interfaceCalendars
-
toISO8601Date
public ISO8601Date toISO8601Date(CalendarDate date)
Description copied from interface:Calendars
Convert a date time into a date in the ISO-8601 calendar, with ISO week data.- Specified by:
toISO8601Date
in interfaceCalendars
-
toJapaneseDate
public JapaneseDate toJapaneseDate(long epoch, java.lang.String zoneId)
Description copied from interface:Calendars
Convert a date time into a date in the Japanese calendar, with locale-specific week data.- Specified by:
toJapaneseDate
in interfaceCalendars
-
toJapaneseDate
public JapaneseDate toJapaneseDate(java.util.Date date, java.lang.String zoneId)
Description copied from interface:Calendars
Convert a date time into a date in the Japanese calendar, with locale-specific week data.- Specified by:
toJapaneseDate
in interfaceCalendars
-
toJapaneseDate
public JapaneseDate toJapaneseDate(CalendarDate date)
Description copied from interface:Calendars
Convert a date time into a date in the Japanese calendar, with locale-specific week data.- Specified by:
toJapaneseDate
in interfaceCalendars
-
toPersianDate
public PersianDate toPersianDate(long epoch, java.lang.String zoneId)
Description copied from interface:Calendars
Convert a date time into a date in the Persian calendar, with locale-specific week data.- Specified by:
toPersianDate
in interfaceCalendars
-
toPersianDate
public PersianDate toPersianDate(java.util.Date date, java.lang.String zoneId)
Description copied from interface:Calendars
Convert a date time into a date in the Persian calendar, with locale-specific week data.- Specified by:
toPersianDate
in interfaceCalendars
-
toPersianDate
public PersianDate toPersianDate(CalendarDate date)
Description copied from interface:Calendars
Convert a date time into a date in the Persian calendar, with locale-specific week data.- Specified by:
toPersianDate
in interfaceCalendars
-
fieldOfVisualDifference
public DateTimePatternFieldType fieldOfVisualDifference(CalendarDate a, CalendarDate b)
Find the field of visual difference between two dates. For example, the dates "2019-03-31" and "2019-04-01" differ visually in the month field, even though the dates are only 1 day apart. This can be used by applications to select an appropriate skeleton for date interval formatting, e.g. to format "March 31 - April 01, 2019"
-
formatDate
public java.lang.String formatDate(CalendarDate date, DateFormatOptions options)
Description copied from interface:Calendars
Formats a date-time value to string.- Specified by:
formatDate
in interfaceCalendars
-
formatDateToParts
public java.util.List<Part> formatDateToParts(CalendarDate date, DateFormatOptions options)
Description copied from interface:Calendars
Formats a date-time value to an array of parts.- Specified by:
formatDateToParts
in interfaceCalendars
-
formatDateRaw
public java.lang.String formatDateRaw(CalendarDate date, DateRawFormatOptions options)
Description copied from interface:Calendars
Formats a date-time value to string using a raw date-time pattern. Warning: You should not use this for general formatting.- Specified by:
formatDateRaw
in interfaceCalendars
-
formatDateInterval
public java.lang.String formatDateInterval(CalendarDate start, CalendarDate end, DateIntervalFormatOptions options)
Description copied from interface:Calendars
Formats a date interval with a start and end.- Specified by:
formatDateInterval
in interfaceCalendars
-
formatDateIntervalToParts
public java.util.List<Part> formatDateIntervalToParts(CalendarDate start, CalendarDate end, DateIntervalFormatOptions options)
Description copied from interface:Calendars
Formats a date-time interval for the given skeleton to an array of parts.- Specified by:
formatDateIntervalToParts
in interfaceCalendars
-
formatRelativeTimeField
public java.lang.String formatRelativeTimeField(Decimal value, RelativeTimeFieldType field, RelativeTimeFieldFormatOptions options)
Description copied from interface:Calendars
Formats a relative time field to string.- Specified by:
formatRelativeTimeField
in interfaceCalendars
-
formatRelativeTime
public java.lang.String formatRelativeTime(CalendarDate start, CalendarDate end, RelativeTimeFormatOptions options)
Description copied from interface:Calendars
Formats the relative time from a start to end date.- Specified by:
formatRelativeTime
in interfaceCalendars
-
timeData
public TimeData timeData()
Description copied from interface:Calendars
Return information about the locale's preferred and allowed time cycles.
-
timeZoneIds
public java.util.List<java.lang.String> timeZoneIds()
Description copied from interface:Calendars
Return an array containing the official TZDB timezone identifiers.- Specified by:
timeZoneIds
in interfaceCalendars
-
resolveTimeZoneId
public java.lang.String resolveTimeZoneId(java.lang.String zoneId)
Description copied from interface:Calendars
Resolve a timezone id / alias to the official TZDB identifier.- Specified by:
resolveTimeZoneId
in interfaceCalendars
-
timeZoneInfo
public TimeZoneInfo timeZoneInfo(java.lang.String zoneId)
Description copied from interface:Calendars
Return additional information for a timezone id, including the localized exemplar city.- Specified by:
timeZoneInfo
in interfaceCalendars
-
translateRelativeFieldType
protected RelativeTimeFieldType translateRelativeFieldType(TimePeriodField field)
-
_formatDate
protected <R> R _formatDate(AbstractValue<R> value, CalendarDate date, DateFormatOptions options)
-
_formatInterval
protected <R> R _formatInterval(AbstractValue<R> value, CalendarDate start, CalendarDate end, DateIntervalFormatOptions options)
-
_context
protected <T extends CalendarDate> com.squarespace.cldrengine.calendars.CalendarContext<T> _context(T date, NumberParams params, ContextType context, Option<DateFormatAltOptions> alt)
-
convertDateTo
protected CalendarDate convertDateTo(CalendarType type, CalendarDate date)
-
-