org.threeten.bp.format
Class DateTimeTextProvider

java.lang.Object
  extended by org.threeten.bp.format.DateTimeTextProvider

public abstract class DateTimeTextProvider
extends Object

The Service Provider Interface (SPI) to be implemented by classes providing the textual form of a date-time field.

Specification for implementors

This interface is a service provider that can be called by multiple threads. Implementations must be thread-safe. Implementations should cache the textual information.

This class has been made pubilc primarily for the benefit of Android.


Constructor Summary
DateTimeTextProvider()
           
 
Method Summary
abstract  String getText(TemporalField field, long value, TextStyle style, Locale locale)
          Gets the text for the specified field, locale and style for the purpose of printing.
abstract  Iterator<Map.Entry<String,Long>> getTextIterator(TemporalField field, TextStyle style, Locale locale)
          Gets an iterator of text to field for the specified field, locale and style for the purpose of parsing.
static void setInitializer(DateTimeTextProvider provider)
          Sets the provider to use.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DateTimeTextProvider

public DateTimeTextProvider()
Method Detail

setInitializer

public static void setInitializer(DateTimeTextProvider provider)
Sets the provider to use.

This can only be invoked before DateTimeTextProvider class is used for formatting/parsing. Invoking this method at a later point will throw an exception.

Parameters:
provider - the provider to use
Throws:
IllegalStateException - if initialization has already occurred or another provider has been set

getText

public abstract String getText(TemporalField field,
                               long value,
                               TextStyle style,
                               Locale locale)
Gets the text for the specified field, locale and style for the purpose of printing.

The text associated with the value is returned. The null return value should be used if there is no applicable text, or if the text would be a numeric representation of the value.

Parameters:
field - the field to get text for, not null
value - the field value to get text for, not null
style - the style to get text for, not null
locale - the locale to get text for, not null
Returns:
the text for the field value, null if no text found

getTextIterator

public abstract Iterator<Map.Entry<String,Long>> getTextIterator(TemporalField field,
                                                                 TextStyle style,
                                                                 Locale locale)
Gets an iterator of text to field for the specified field, locale and style for the purpose of parsing.

The iterator must be returned in order from the longest text to the shortest.

The null return value should be used if there is no applicable parsable text, or if the text would be a numeric representation of the value. Text can only be parsed if all the values for that field-style-locale combination are unique.

Parameters:
field - the field to get text for, not null
style - the style to get text for, null for all parsable text
locale - the locale to get text for, not null
Returns:
the iterator of text to field pairs, in order from longest text to shortest text, null if the field or style is not parsable


Copyright © 2007–2017 ThreeTen.org. All rights reserved.