|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.threeten.bp.zone.ZoneRulesInitializer
public abstract class ZoneRulesInitializer
Controls how the time-zone rules are initialized.
The default behavior is to use ServiceLoader to find instances of ZoneRulesProvider.
Use the setInitializer(ZoneRulesInitializer) method to replace this behavior.
The initializer instance must perform the work of creating the ZoneRulesProvider within
the initializeProviders() method to ensure that the provider is not initialized too early.
The initializer must be set before class loading of any other ThreeTen-Backport class to have any effect!
This class has been added primarily for the benefit of Android.
| Field Summary | |
|---|---|
static ZoneRulesInitializer |
DO_NOTHING
An instance that does nothing. |
| Constructor Summary | |
|---|---|
ZoneRulesInitializer()
|
|
| Method Summary | |
|---|---|
protected abstract void |
initializeProviders()
Initialize the providers. |
static void |
setInitializer(ZoneRulesInitializer initializer)
Sets the initializer to use. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final ZoneRulesInitializer DO_NOTHING
setInitializer(ZoneRulesInitializer) with this instance to
block the service loader search. This will leave the system with no providers.
| Constructor Detail |
|---|
public ZoneRulesInitializer()
| Method Detail |
|---|
public static void setInitializer(ZoneRulesInitializer initializer)
This can only be invoked before the ZoneRulesProvider class is loaded.
Invoking this method at a later point will throw an exception.
initializer - the initializer to use
IllegalStateException - if initialization has already occurred or another initializer has been setprotected abstract void initializeProviders()
The implementation should perform whatever work is necessary to initialize the providers.
This will result in one or more calls to ZoneRulesProvider.registerProvider(ZoneRulesProvider).
It is vital that the instance of ZoneRulesProvider is not created until this method is invoked.
It is guaranteed that this method will be invoked once and only once.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||