diff options
Diffstat (limited to 'common/onap-common-configuration-management/onap-configuration-management-core/src/main/java/org/onap/config/impl/AgglomerateConfiguration.java')
-rw-r--r-- | common/onap-common-configuration-management/onap-configuration-management-core/src/main/java/org/onap/config/impl/AgglomerateConfiguration.java | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/common/onap-common-configuration-management/onap-configuration-management-core/src/main/java/org/onap/config/impl/AgglomerateConfiguration.java b/common/onap-common-configuration-management/onap-configuration-management-core/src/main/java/org/onap/config/impl/AgglomerateConfiguration.java new file mode 100644 index 0000000000..0934608c93 --- /dev/null +++ b/common/onap-common-configuration-management/onap-configuration-management-core/src/main/java/org/onap/config/impl/AgglomerateConfiguration.java @@ -0,0 +1,33 @@ +package org.onap.config.impl; + +import org.apache.commons.configuration2.DatabaseConfiguration; + +import java.util.Collections; +import java.util.Map; +import java.util.WeakHashMap; + +/** + * The type Agglomerate configuration. + */ +public class AgglomerateConfiguration extends DatabaseConfiguration { + + private final Map<String, Object> store = + Collections.synchronizedMap(new WeakHashMap<String, Object>()); + + /** + * Gets property value. + * + * @param key the key + * @return the property value + */ + public Object getPropertyValue(String key) { + Object objToReturn; + objToReturn = store.get(key); + if (objToReturn == null && !store.containsKey(key)) { + objToReturn = super.getProperty(key); + store.put(key, objToReturn); + } + return objToReturn; + } + +} |