Class UnityPropertiesHelper
- java.lang.Object
-
- eu.unicore.util.configuration.PropertiesHelper
-
- pl.edu.icm.unity.engine.api.config.UnityPropertiesHelper
-
- All Implemented Interfaces:
eu.unicore.util.configuration.PropertiesHelperAPI
,eu.unicore.util.configuration.UpdateableConfiguration
,Cloneable
public class UnityPropertiesHelper extends eu.unicore.util.configuration.PropertiesHelper
ExtendsPropertiesHelper
with Unity specific methods: returning localized strings and caching ofgetSortedStringKeys(String, boolean)
method results.- Author:
- K. Benedyczak
-
-
Field Summary
Fields Modifier and Type Field Description protected Map<String,Set<String>>
listKeysCache
-
Constructor Summary
Constructors Modifier Constructor Description UnityPropertiesHelper(String prefix, Properties properties, Map<String,eu.unicore.util.configuration.PropertyMD> propertiesMD, org.apache.logging.log4j.Logger log)
protected
UnityPropertiesHelper(UnityPropertiesHelper cloned)
For cloning
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addCachedPrefixes(String... prefixRegexp)
All properties which start with the given regexp will be cached in a way that all properties starting with this prefix can be quickly retrieved usinggetSortedStringKeys(String, boolean)
.protected void
cacheIfNeeded(String key)
String
getAsString()
I18nString
getLocalizedString(MessageSource msg, String baseKey)
I18nString
getLocalizedStringWithoutFallbackToDefault(MessageSource msg, String baseKey)
String
getLocalizedValueWithOutFallbackToDefault(String key, Locale locale)
protected Set<String>
getSortedStringKeys(String base, boolean allowListSubKeys)
protected boolean
isCached(String key)
static Properties
parse(String properties)
protected void
refillCache()
void
setProperties(Properties properties)
void
setProperty(String key, String value)
-
Methods inherited from class eu.unicore.util.configuration.PropertiesHelper
addPropertyChangeListener, canHaveSubkeys, checkBounds, checkConstraints, checkConstraints, checkDeprecated, checkPropertyConstraints, checkStructuredListConstraints, clone, cloneTo, filterChanged, findUnknown, getBooleanValue, getClassValue, getDoubleValue, getDoubleValueNoCheck, getEnumValue, getFileValue, getFileValueAsString, getIntValue, getIntValueNoCheck, getKeyDescription, getListOfValues, getLocalizedValue, getLongValue, getLongValueNoCheck, getMetadata, getMetadataKey, getRawProperty, getSortedNumKeys, getStructuredListKeys, getSubkeyBooleanValue, getSubkeyEnumValue, getSubkeyIntValue, getSubkeyLongValue, getSubkeyValue, getValue, isSet, logValue, notifyAllWithKey, notifyFocusedListeners, notifyGenericListeners, removePropertyChangeListener
-
-
-
-
Constructor Detail
-
UnityPropertiesHelper
public UnityPropertiesHelper(String prefix, Properties properties, Map<String,eu.unicore.util.configuration.PropertyMD> propertiesMD, org.apache.logging.log4j.Logger log)
-
UnityPropertiesHelper
protected UnityPropertiesHelper(UnityPropertiesHelper cloned)
For cloning- Parameters:
cloned
-
-
-
Method Detail
-
addCachedPrefixes
public void addCachedPrefixes(String... prefixRegexp)
All properties which start with the given regexp will be cached in a way that all properties starting with this prefix can be quickly retrieved usinggetSortedStringKeys(String, boolean)
. This also optimizes uses ofPropertiesHelper.getListOfValues(String)
which relies on the above methods. Note that the regexp must include the main prefix of this properties object.- Parameters:
prefixRegexp
-
-
setProperties
public void setProperties(Properties properties)
- Specified by:
setProperties
in interfaceeu.unicore.util.configuration.PropertiesHelperAPI
- Specified by:
setProperties
in interfaceeu.unicore.util.configuration.UpdateableConfiguration
- Overrides:
setProperties
in classeu.unicore.util.configuration.PropertiesHelper
-
setProperty
public void setProperty(String key, String value)
- Specified by:
setProperty
in interfaceeu.unicore.util.configuration.PropertiesHelperAPI
- Overrides:
setProperty
in classeu.unicore.util.configuration.PropertiesHelper
-
refillCache
protected void refillCache()
-
cacheIfNeeded
protected void cacheIfNeeded(String key)
-
isCached
protected boolean isCached(String key)
-
getSortedStringKeys
protected Set<String> getSortedStringKeys(String base, boolean allowListSubKeys)
- Overrides:
getSortedStringKeys
in classeu.unicore.util.configuration.PropertiesHelper
-
getLocalizedString
public I18nString getLocalizedString(MessageSource msg, String baseKey)
- Parameters:
msg
-baseKey
- Property name (without the prefix).- Returns:
- localized string of the given property. Default value is set to the regular value of the property. All sub values of the base key are used as localized values, assuming their subkey is equal to one of supported locales.
-
getLocalizedStringWithoutFallbackToDefault
public I18nString getLocalizedStringWithoutFallbackToDefault(MessageSource msg, String baseKey)
-
getLocalizedValueWithOutFallbackToDefault
public String getLocalizedValueWithOutFallbackToDefault(String key, Locale locale)
-
getAsString
public String getAsString()
-
parse
public static Properties parse(String properties)
-
-