public class Localizer extends Object
Application
object.
You may register additional IStringResourceLoader to extend or replace Wickets default search strategy for the properties. E.g. string resource loaders which load the properties from a database. There should be hardly any need to extend Localizer.
ResourceSettings.getLocalizer()
,
IStringResourceLoader
,
ResourceSettings.getStringResourceLoaders()
Constructor and Description |
---|
Localizer()
Create the utils instance class backed by the configuration information contained within the
supplied application object.
|
Modifier and Type | Method and Description |
---|---|
void |
clearCache()
Clear all cache entries by instantiating a new cache object
|
static Localizer |
get() |
protected String |
getCacheKey(String key,
Component component,
Locale locale,
String style,
String variation)
Gets the cache key
|
protected String |
getFromCache(String cacheKey)
Get the value associated with the key from the cache.
|
String |
getString(String key,
Component component) |
String |
getString(String key,
Component component,
IModel<?> model) |
String |
getString(String key,
Component component,
IModel<?> model,
Locale locale,
String style,
IModel<String> defaultValue)
Get the localized string using all of the supplied parameters.
|
String |
getString(String key,
Component component,
IModel<?> model,
Locale locale,
String style,
String defaultValue)
Get the localized string using all of the supplied parameters.
|
String |
getString(String key,
Component component,
IModel<?> model,
String defaultValue) |
String |
getString(String key,
Component component,
String defaultValue) |
String |
getStringIgnoreSettings(String key,
Component component,
IModel<?> model,
Locale locale,
String style,
String defaultValue)
This is similar to
getString(String, Component, IModel, String) except that the
resource settings are ignored. |
String |
getStringIgnoreSettings(String key,
Component component,
IModel<?> model,
String defaultValue) |
protected List<IStringResourceLoader> |
getStringResourceLoaders()
In case you want to provide your own list of string resource loaders
|
protected Map<String,String> |
newCache()
Create a new cache, override this method if you want a different map to store the cache keys,
for example a map that hold only the last X number of elements..
|
protected void |
putIntoCache(String cacheKey,
String string)
Put the value into the cache and associate it with the cache key
|
void |
setEnableCache(boolean value)
By default the cache is enabled.
|
String |
substitutePropertyExpressions(Component component,
String string,
IModel<?> model)
Helper method to handle property variable substitution in strings.
|
public Localizer()
public static Localizer get()
public final void clearCache()
newCache()
public String getString(String key, Component component) throws MissingResourceException
key
- The key to obtain the resource forcomponent
- The component to get the resource forMissingResourceException
- If resource not found and configuration dictates that exception should be throwngetString(String, Component, IModel, Locale, String, String)
public String getString(String key, Component component, IModel<?> model) throws MissingResourceException
key
- The key to obtain the resource forcomponent
- The component to get the resource formodel
- The model to use for property substitutions in the strings (optional)MissingResourceException
- If resource not found and configuration dictates that exception should be throwngetString(String, Component, IModel, Locale, String, String)
public String getString(String key, Component component, String defaultValue) throws MissingResourceException
key
- The key to obtain the resource forcomponent
- The component to get the resource fordefaultValue
- The default value (optional)MissingResourceException
- If resource not found and configuration dictates that exception should be throwngetString(String, Component, IModel, Locale, String, String)
public String getString(String key, Component component, IModel<?> model, String defaultValue) throws MissingResourceException
key
- The key to obtain the resource forcomponent
- The component to get the resource formodel
- The model to use for property substitutions in the strings (optional)defaultValue
- The default value (optional)MissingResourceException
- If resource not found and configuration dictates that exception should be throwngetString(String, Component, IModel, Locale, String, String)
public String getString(String key, Component component, IModel<?> model, Locale locale, String style, String defaultValue) throws MissingResourceException
key
- The key to obtain the resource forcomponent
- The component to get the resource for (optional)model
- The model to use for substitutions in the strings (optional)locale
- If != null, it'll supersede the component's localestyle
- If != null, it'll supersede the component's styledefaultValue
- The default value (optional)MissingResourceException
- If resource not found and configuration dictates that exception should be thrownpublic String getString(String key, Component component, IModel<?> model, Locale locale, String style, IModel<String> defaultValue) throws MissingResourceException
key
- The key to obtain the resource forcomponent
- The component to get the resource for (optional)model
- The model to use for substitutions in the strings (optional)locale
- If != null, it'll supersede the component's localestyle
- If != null, it'll supersede the component's styledefaultValue
- The default value (optional)MissingResourceException
- If resource not found and configuration dictates that exception should be thrownpublic String getStringIgnoreSettings(String key, Component component, IModel<?> model, String defaultValue)
key
- The key to obtain the resource forcomponent
- The component to get the resource for (optional)model
- The model to use for substitutions in the strings (optional)defaultValue
- The default value (optional)getStringIgnoreSettings(String, Component, IModel, Locale, String, String)
public String getStringIgnoreSettings(String key, Component component, IModel<?> model, Locale locale, String style, String defaultValue)
getString(String, Component, IModel, String)
except that the
resource settings are ignored. This allows to to code something like
String option = getLocalizer().getStringIgnoreSettings(getId() + ".null", this, ""); if (Strings.isEmpty(option)) { option = getLocalizer().getString("null", this, CHOOSE_ONE); }
key
- The key to obtain the resource forcomponent
- The component to get the resource for (optional)model
- The model to use for substitutions in the strings (optional)locale
- If != null, it'll supersede the component's localestyle
- If != null, it'll supersede the component's styledefaultValue
- The default value (optional)protected List<IStringResourceLoader> getStringResourceLoaders()
protected void putIntoCache(String cacheKey, String string)
cacheKey
- string
- protected String getFromCache(String cacheKey)
cacheKey
- protected String getCacheKey(String key, Component component, Locale locale, String style, String variation)
key
- component
- locale
- Guaranteed to be != nullstyle
- variation
- public String substitutePropertyExpressions(Component component, String string, IModel<?> model)
component
- The component requesting a model value or {@code null]string
- The string to substitute intomodel
- The modelpublic final void setEnableCache(boolean value)
value
- protected Map<String,String> newCache()
ConcurrentHashMap
Copyright © 2006–2020 Apache Software Foundation. All rights reserved.