Class CompositeResourceBundle
- java.lang.Object
-
- java.util.ResourceBundle
-
- de.hybris.platform.servicelayer.i18n.impl.CompositeResourceBundle
-
public class CompositeResourceBundle extends java.util.ResourceBundleAResourceBundlewhich is a composition of two or more decorated bundles. Generally aResourceBundlealready can manage an internal parent bundle. In that case whenever aPropertyResourceBundleis created the parent bundle is set according specified language, country etc. However disadvantage is that fallback options can't be specified and parent bundles can't be set manually.
This implementation of aResourceBundleallows free choice of parent bundles as well as control over events, when the fallback bundle shall be used (e.g. when key exists but value is empty).
-
-
Field Summary
Fields Modifier and Type Field Description static intKEY_FALLBACKstatic intKEY_VALUE_FALLBACKstatic intVALUE_FALLBACK
-
Constructor Summary
Constructors Constructor Description CompositeResourceBundle(java.util.Collection<java.util.ResourceBundle> bundles)Constructor.CompositeResourceBundle(java.util.Collection<java.util.ResourceBundle> bundles, int fallback)Constructor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static java.util.ResourceBundlegetBundle(java.lang.String baseName, java.util.Locale[] locales)Similar toResourceBundle.getBundle(String, Locale)except that multiple Locales can be given to enable fallback strategies.static java.util.ResourceBundlegetBundle(java.lang.String baseName, java.util.Locale[] locales, java.lang.ClassLoader loader)Similar toResourceBundle.getBundle(String, Locale, ClassLoader)except that multiple Locales can be given to enable fallback strategies.static java.util.ResourceBundlegetBundle(java.util.Collection<java.util.ResourceBundle> bundles)protected java.util.Collection<java.util.ResourceBundle>getBundlesInternal()java.util.Enumeration<java.lang.String>getKeys()protected java.lang.ObjecthandleGetObject(java.lang.String key)Internal.
Processes fallback strategies.booleanisKeyFallbackEnabled()Returns whether key fallback is enabled.booleanisValueFallbackEnabled()Returns whether key fallback is enabled.
-
-
-
Field Detail
-
KEY_FALLBACK
public static final int KEY_FALLBACK
- See Also:
- Constant Field Values
-
VALUE_FALLBACK
public static final int VALUE_FALLBACK
- See Also:
- Constant Field Values
-
KEY_VALUE_FALLBACK
public static final int KEY_VALUE_FALLBACK
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
CompositeResourceBundle
public CompositeResourceBundle(java.util.Collection<java.util.ResourceBundle> bundles)
Constructor. Creates a composition of bundles and sets a default fallback behavior with KEY_FALLBACK.- Parameters:
bundles- collection ofResourceBundlewhich are used to compose this bundle
-
CompositeResourceBundle
public CompositeResourceBundle(java.util.Collection<java.util.ResourceBundle> bundles, int fallback)Constructor. Creates a composition of bundles.- Parameters:
bundles- collection ofResourceBundlewhich are used to compose this bundlefallback- fallback options
-
-
Method Detail
-
isKeyFallbackEnabled
public boolean isKeyFallbackEnabled()
Returns whether key fallback is enabled. When true the next bundle is used in case the requested key doesn't exist.- Returns:
- true when enabled
-
isValueFallbackEnabled
public boolean isValueFallbackEnabled()
Returns whether key fallback is enabled. When true the next bundle is used in case a value is empty.- Returns:
- true when enabled
-
getBundlesInternal
protected java.util.Collection<java.util.ResourceBundle> getBundlesInternal()
- Returns:
- the bundles
-
getKeys
public java.util.Enumeration<java.lang.String> getKeys()
- Specified by:
getKeysin classjava.util.ResourceBundle
-
handleGetObject
protected java.lang.Object handleGetObject(java.lang.String key)
Internal.
Processes fallback strategies.- Specified by:
handleGetObjectin classjava.util.ResourceBundle- Parameters:
key- ressourcebundle key
-
getBundle
public static java.util.ResourceBundle getBundle(java.lang.String baseName, java.util.Locale[] locales)Similar toResourceBundle.getBundle(String, Locale)except that multiple Locales can be given to enable fallback strategies.- Parameters:
baseName-locales-- Returns:
ResourceBundle
-
getBundle
public static java.util.ResourceBundle getBundle(java.lang.String baseName, java.util.Locale[] locales, java.lang.ClassLoader loader)Similar toResourceBundle.getBundle(String, Locale, ClassLoader)except that multiple Locales can be given to enable fallback strategies.- Parameters:
baseName-locales-loader-
-
getBundle
public static java.util.ResourceBundle getBundle(java.util.Collection<java.util.ResourceBundle> bundles)
- Parameters:
bundles- the collection of bundles. Fallback strategies are provided via order of these resource bundles.- Returns:
ResourceBundle
-
-