|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.emarsys.ecommon.prefs.config.backend.FallbackDefaultConfigurationBackend
public class FallbackDefaultConfigurationBackend
A ConfigurationBackend
that provides both a fallback
and defaults mechanism.
The priority chain for resolving setting names is:
primary --> fallback --> default --> fallback default
ConfigurationBackend
,
DefaultsConfigurationBackend
,
FallbackConfigurationBackend
Field Summary | |
---|---|
protected ConfigurationBackend |
defaults
|
protected ConfigurationBackend |
fallbackDefaults
|
protected ConfigurationBackend |
fallbacks
|
protected ConfigurationBackend |
primaries
|
Constructor Summary | |
---|---|
FallbackDefaultConfigurationBackend(ConfigurationBackend primarySettings,
ConfigurationBackend defaultSettings,
java.util.Map<java.lang.String,java.lang.String> fallbackNames)
|
Method Summary | |
---|---|
ISetting |
get(java.lang.String name)
Retrieves the ISetting with the passed name. |
SettingMode |
getMode(java.lang.String name)
|
java.util.List<ISetting> |
getSettings()
Retrieves all ISetting s from this backend. |
void |
set(ISetting setting)
Sets the passed setting which must not be null
in this configuration backend, if a setting with the given
name is already present it will be overridden. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected ConfigurationBackend primaries
protected ConfigurationBackend defaults
protected ConfigurationBackend fallbacks
protected ConfigurationBackend fallbackDefaults
Constructor Detail |
---|
public FallbackDefaultConfigurationBackend(ConfigurationBackend primarySettings, ConfigurationBackend defaultSettings, java.util.Map<java.lang.String,java.lang.String> fallbackNames)
defaultSettings
- fallbackNames
- Method Detail |
---|
public SettingMode getMode(java.lang.String name)
name
-
public ISetting get(java.lang.String name) throws java.lang.IllegalArgumentException
ConfigurationBackend
ISetting
with the passed name.
get
in interface ConfigurationBackend
ISetting
with the
passed name or null
if not present.
java.lang.IllegalArgumentException
- - if the passed name is
null
.com.emarsys.core.setting.backend.ConfigurationBackend#get(java.lang.String)
public void set(ISetting setting) throws java.lang.IllegalArgumentException
ConfigurationBackend
null
in this configuration backend, if a setting with the given
name is already present it will be overridden.
The next call to ConfigurationBackend.get(String)
with the passed
setting's name will return the passed setting.
set
in interface ConfigurationBackend
java.lang.IllegalArgumentException
- - if the passed setting,
its name or value is null
.com.emarsys.core.setting.backend.ConfigurationBackend#set(ISetting)
public java.util.List<ISetting> getSettings()
ConfigurationBackend
Retrieves all ISetting
s from this backend.
What exactly "all" means in the context of the concrete
ConfigurationBackend
is up to the implementation.
For instance the List
may or may not contain
default values or fallbacked ISetting
s or might
even return a cached list.
The only requirement for this method is to be logically in
synch with ConfigurationBackend.get(String)
and ConfigurationBackend.set(ISetting)
.
Thus if a Setting is inserted/updated/deleted and nothing
is changed in the meantime the next call to
ConfigurationBackend.getSettings()
has to reflect the changes made.
getSettings
in interface ConfigurationBackend
List
of ISetting
s,
never null
.com.emarsys.core.setting.backend.ConfigurationBackend#getSettings()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |