Code formatting of configuration framework
[sdc.git] / common / onap-common-configuration-management / onap-configuration-management-core / src / main / java / org / onap / config / impl / AggregateConfiguration.java
index 7698d3f..80fbaf8 100644 (file)
@@ -1,5 +1,30 @@
+/*
+ * Copyright © 2016-2018 European Support Limited
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 package org.onap.config.impl;
 
+import static org.onap.config.Constants.LOAD_ORDER_KEY;
+
+import java.io.File;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.LinkedHashMap;
+import java.util.Map;
 import org.apache.commons.configuration2.CombinedConfiguration;
 import org.apache.commons.configuration2.Configuration;
 import org.apache.commons.configuration2.tree.MergeCombiner;
@@ -8,166 +33,124 @@ import org.apache.commons.configuration2.tree.UnionCombiner;
 import org.onap.config.ConfigurationUtils;
 import org.onap.config.type.ConfigurationMode;
 
-import java.io.File;
-import java.net.URL;
-import java.util.HashMap;
-import java.util.*;
-
-import static org.onap.config.Constants.LOAD_ORDER_KEY;
-
-/**
- * The type Aggregate configuration.
- */
 public final class AggregateConfiguration {
 
-  private Map<String, Configuration> rootConfig = new HashMap<>();
-  private Map<String, Configuration> unionConfig = new HashMap<>();
-  private Map<String, Configuration> mergeConfig = new HashMap<>();
-  private Map<String, Configuration> overrideConfig = new LinkedHashMap<>();
+    private final Map<String, Configuration> rootConfig = new HashMap<>();
+    private final Map<String, Configuration> unionConfig = new HashMap<>();
+    private final Map<String, Configuration> mergeConfig = new HashMap<>();
+    private final Map<String, Configuration> overrideConfig = new LinkedHashMap<>();
 
-  /**
-   * Instantiates a new Aggregate configuration.
-   */
-  public AggregateConfiguration() {
-    try {
-      Class clazz = Class.forName(Thread.currentThread().getStackTrace()[2].getClassName());
-      if (!clazz.getCanonicalName()
-          .equals(ConfigurationImpl.class.getCanonicalName())) {
-        throw new RuntimeException("Illegal access.");
-      }
-    } catch (ClassNotFoundException cfe) {
-      throw new RuntimeException("Class not found while loading change notifier");
-    }
-  }
+    public AggregateConfiguration() {
 
-  private void addConfig(String path, ConfigurationMode configMode, Configuration config) {
-    if (configMode != null) {
-      switch (configMode) {
-        case MERGE:
-          mergeConfig.put(path, config);
-          break;
-        case OVERRIDE:
-          overrideConfig.put(path, config);
-          break;
-        case UNION:
-          unionConfig.put(path, config);
-          break;
-        default:
-      }
-    } else {
-      rootConfig.put(path, config);
+        try {
+            Class clazz = Class.forName(Thread.currentThread().getStackTrace()[2].getClassName());
+            if (!clazz.getCanonicalName().equals(ConfigurationImpl.class.getCanonicalName())) {
+                throw new RuntimeException("Illegal access.");
+            }
+        } catch (ClassNotFoundException cfe) {
+            throw new RuntimeException("Class not found while loading change notifier");
+        }
     }
-  }
 
-  /**
-   * Add config.
-   *
-   * @param file the file
-   * @throws Exception the exception
-   */
-  public void addConfig(File file) throws Exception {
-    addConfig(file.getAbsolutePath().toUpperCase(), ConfigurationUtils.getMergeStrategy(file),
-        ConfigurationUtils.getConfigurationBuilder(file, false).getConfiguration());
-  }
-
-  /**
-   * Add config.
-   *
-   * @param url the url
-   * @throws Exception the exception
-   */
-  public void addConfig(URL url) throws Exception {
-    addConfig(url.getFile().toUpperCase(), ConfigurationUtils.getMergeStrategy(url),
-        ConfigurationUtils.getConfigurationBuilder(url).getConfiguration());
-  }
-
-  /**
-   * Remove config.
-   *
-   * @param file the file
-   */
-  public void removeConfig(File file) {
-    String key = file.getAbsolutePath().toUpperCase();
-    if (rootConfig.containsKey(key)) {
-      rootConfig.remove(key);
-    } else if (mergeConfig.containsKey(key)) {
-      mergeConfig.remove(key);
-    } else if (unionConfig.containsKey(key)) {
-      unionConfig.remove(key);
-    } else if (overrideConfig.containsKey(key)) {
-      overrideConfig.remove(key);
+    public void addConfig(File file) throws Exception {
+        addConfig(file.getAbsolutePath().toUpperCase(), ConfigurationUtils.getMergeStrategy(file),
+                ConfigurationUtils.getConfigurationBuilder(file, false).getConfiguration());
     }
-  }
-
-  /**
-   * Contains config boolean.
-   *
-   * @param file the file
-   * @return the boolean
-   */
-  public boolean containsConfig(File file) {
-    String key = file.getAbsolutePath().toUpperCase();
-    return rootConfig.containsKey(key) || mergeConfig.containsKey(key)
-        || unionConfig.containsKey(key) || overrideConfig.containsKey(key);
-  }
 
-  /**
-   * Gets final configuration.
-   *
-   * @return the final configuration
-   */
-  public Configuration getFinalConfiguration() {
-    CombinedConfiguration ccRoot = new CombinedConfiguration(new MergeCombiner());
-    ArrayList<Configuration> tempList = new ArrayList<>(rootConfig.values());
-    Collections.sort(tempList, this::sortForMerge);
-    for (Configuration conf : tempList) {
-      ccRoot.addConfiguration(conf);
+    private void addConfig(String path, ConfigurationMode configMode, Configuration config) {
+        if (configMode != null) {
+            switch (configMode) {
+                case MERGE:
+                    mergeConfig.put(path, config);
+                    break;
+                case OVERRIDE:
+                    overrideConfig.put(path, config);
+                    break;
+                case UNION:
+                    unionConfig.put(path, config);
+                    break;
+                default:
+            }
+        } else {
+            rootConfig.put(path, config);
+        }
     }
-    CombinedConfiguration ccMergeRoot = new CombinedConfiguration(new MergeCombiner());
-    ccMergeRoot.addConfiguration(ccRoot);
-    tempList = new ArrayList<>(mergeConfig.values());
-    Collections.sort(tempList, this::sortForMerge);
-    for (Configuration conf : tempList) {
-      ccMergeRoot.addConfiguration(conf);
-    }
-    CombinedConfiguration ccUnionRoot = new CombinedConfiguration(new UnionCombiner());
-    ccUnionRoot.addConfiguration(ccMergeRoot);
-    for (Configuration conf : unionConfig.values()) {
-      ccUnionRoot.addConfiguration(conf);
-    }
-    ArrayList<Configuration> tempOverrideConfigs = new ArrayList<>(overrideConfig.values());
-    Collections.reverse(tempOverrideConfigs);
-    Collections.sort(tempOverrideConfigs, this::sortForOverride);
-    CombinedConfiguration ccOverrideRoot = new CombinedConfiguration(new OverrideCombiner());
-    for (Configuration conf : tempOverrideConfigs) {
-      ccOverrideRoot.addConfiguration(conf);
+
+    public void addConfig(URL url) throws Exception {
+        addConfig(url.getFile().toUpperCase(), ConfigurationUtils.getMergeStrategy(url),
+                ConfigurationUtils.getConfigurationBuilder(url).getConfiguration());
     }
-    ccOverrideRoot.addConfiguration(ccUnionRoot);
-    return ccOverrideRoot;
-  }
 
-  private int sortForOverride(Configuration conf1, Configuration conf2){
-    String order1 = conf1.getString(LOAD_ORDER_KEY);
-    String order2 = conf2.getString(LOAD_ORDER_KEY);
-    if (ConfigurationUtils.isBlank(order1) || !order1.trim().matches("\\d+")){
-      order1 = "0";
+    public void removeConfig(File file) {
+        String key = file.getAbsolutePath().toUpperCase();
+        if (rootConfig.containsKey(key)) {
+            rootConfig.remove(key);
+        } else if (mergeConfig.containsKey(key)) {
+            mergeConfig.remove(key);
+        } else if (unionConfig.containsKey(key)) {
+            unionConfig.remove(key);
+        } else if (overrideConfig.containsKey(key)) {
+            overrideConfig.remove(key);
+        }
     }
-    if (ConfigurationUtils.isBlank(order2) || !order2.trim().matches("\\d+")){
-      order2 = "0";
+
+    public boolean containsConfig(File file) {
+        String key = file.getAbsolutePath().toUpperCase();
+        return rootConfig.containsKey(key) || mergeConfig.containsKey(key) || unionConfig.containsKey(key)
+                       || overrideConfig.containsKey(key);
     }
-    return Integer.parseInt(order2.trim())-Integer.parseInt(order1.trim());
-  }
 
-  private int sortForMerge(Configuration conf1, Configuration conf2){
-    String order1 = conf1.getString(LOAD_ORDER_KEY);
-    String order2 = conf2.getString(LOAD_ORDER_KEY);
-    if (ConfigurationUtils.isBlank(order1) || !order1.trim().matches("\\d+")){
-      order1 = "0";
+    public Configuration getFinalConfiguration() {
+        CombinedConfiguration ccRoot = new CombinedConfiguration(new MergeCombiner());
+        ArrayList<Configuration> tempList = new ArrayList<>(rootConfig.values());
+        tempList.sort(this::sortForMerge);
+        for (Configuration conf : tempList) {
+            ccRoot.addConfiguration(conf);
+        }
+        CombinedConfiguration ccMergeRoot = new CombinedConfiguration(new MergeCombiner());
+        ccMergeRoot.addConfiguration(ccRoot);
+        tempList = new ArrayList<>(mergeConfig.values());
+        tempList.sort(this::sortForMerge);
+        for (Configuration conf : tempList) {
+            ccMergeRoot.addConfiguration(conf);
+        }
+        CombinedConfiguration ccUnionRoot = new CombinedConfiguration(new UnionCombiner());
+        ccUnionRoot.addConfiguration(ccMergeRoot);
+        for (Configuration conf : unionConfig.values()) {
+            ccUnionRoot.addConfiguration(conf);
+        }
+        ArrayList<Configuration> tempOverrideConfigs = new ArrayList<>(overrideConfig.values());
+        Collections.reverse(tempOverrideConfigs);
+        tempOverrideConfigs.sort(this::sortForOverride);
+        CombinedConfiguration ccOverrideRoot = new CombinedConfiguration(new OverrideCombiner());
+        for (Configuration conf : tempOverrideConfigs) {
+            ccOverrideRoot.addConfiguration(conf);
+        }
+        ccOverrideRoot.addConfiguration(ccUnionRoot);
+        return ccOverrideRoot;
     }
-    if (ConfigurationUtils.isBlank(order2) || !order2.trim().matches("\\d+")){
-      order2 = "0";
+
+    private int sortForOverride(Configuration conf1, Configuration conf2) {
+        String order1 = conf1.getString(LOAD_ORDER_KEY);
+        String order2 = conf2.getString(LOAD_ORDER_KEY);
+        if (ConfigurationUtils.isBlank(order1) || !order1.trim().matches("\\d+")) {
+            order1 = "0";
+        }
+        if (ConfigurationUtils.isBlank(order2) || !order2.trim().matches("\\d+")) {
+            order2 = "0";
+        }
+        return Integer.parseInt(order2.trim()) - Integer.parseInt(order1.trim());
     }
-    return Integer.parseInt(order1.trim())-Integer.parseInt(order2.trim());
-  }
 
+    private int sortForMerge(Configuration conf1, Configuration conf2) {
+        String order1 = conf1.getString(LOAD_ORDER_KEY);
+        String order2 = conf2.getString(LOAD_ORDER_KEY);
+        if (ConfigurationUtils.isBlank(order1) || !order1.trim().matches("\\d+")) {
+            order1 = "0";
+        }
+        if (ConfigurationUtils.isBlank(order2) || !order2.trim().matches("\\d+")) {
+            order2 = "0";
+        }
+        return Integer.parseInt(order1.trim()) - Integer.parseInt(order2.trim());
+    }
 }