diff options
author | Pamela Dragosh <pdragosh@research.att.com> | 2018-08-29 11:54:54 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@onap.org> | 2018-08-29 11:54:54 +0000 |
commit | 5443573fe9f8a183f968aa63d08dc3543e73c305 (patch) | |
tree | 9101a6a8f3f44d1c8cadadbd7410b4d16c941940 /common-parameters/src/main/java/org/onap/policy/common/parameters/ParameterService.java | |
parent | 8ae625423fbf11fa031946caa3f86d552854b893 (diff) | |
parent | 655d6f798878cd69b6c02c54d4bbed83d01fd937 (diff) |
Merge "Improvements to Parameter Srvice"
Diffstat (limited to 'common-parameters/src/main/java/org/onap/policy/common/parameters/ParameterService.java')
-rw-r--r-- | common-parameters/src/main/java/org/onap/policy/common/parameters/ParameterService.java | 28 |
1 files changed, 26 insertions, 2 deletions
diff --git a/common-parameters/src/main/java/org/onap/policy/common/parameters/ParameterService.java b/common-parameters/src/main/java/org/onap/policy/common/parameters/ParameterService.java index db6995c5..358e5535 100644 --- a/common-parameters/src/main/java/org/onap/policy/common/parameters/ParameterService.java +++ b/common-parameters/src/main/java/org/onap/policy/common/parameters/ParameterService.java @@ -61,6 +61,20 @@ public abstract class ParameterService { } /** + * Register a parameter group with the parameter service. + * + * @param parameterGroup the parameter group + * @param overwrite if true, overwrite the current value if set + */ + public static void register(final ParameterGroup parameterGroup, final boolean overwrite) { + if (overwrite && parameterGroupMap.containsKey(parameterGroup.getName())) { + deregister(parameterGroup); + } + + register(parameterGroup); + } + + /** * Remove a parameter group from the parameter service. * * @param parameterGroupName the name of the parameter group @@ -74,13 +88,23 @@ public abstract class ParameterService { } /** + * Remove a parameter group from the parameter service. + * + * @param parameterGroup the parameter group + */ + public static void deregister(final ParameterGroup parameterGroup) { + deregister(parameterGroup.getName()); + } + + /** * Get a parameter group from the parameter service. * * @param parameterGroupName the name of the parameter group * @return The parameter group */ - public static ParameterGroup get(final String parameterGroupName) { - final ParameterGroup parameterGroup = parameterGroupMap.get(parameterGroupName); + public static <T extends ParameterGroup> T get(final String parameterGroupName) { + @SuppressWarnings("unchecked") + final T parameterGroup = (T) parameterGroupMap.get(parameterGroupName); if (parameterGroup == null) { throw new ParameterRuntimeException("\"" + parameterGroupName + "\" not found in parameter service"); |