update with the carbon configuration path

Signed-off-by: Manula Thantriwatte <[email protected]>


Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/68ab6e8a
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/68ab6e8a
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/68ab6e8a

Branch: refs/heads/master
Commit: 68ab6e8a033b4cd843ee7bc900a1f55c480a7953
Parents: 54b85c6
Author: gayan <[email protected]>
Authored: Thu Dec 4 14:08:47 2014 +0530
Committer: Manula Thantriwatte <[email protected]>
Committed: Thu Dec 4 13:48:39 2014 +0000

----------------------------------------------------------------------
 .../stratos/autoscaler/util/ConfUtil.java       | 23 +++++++++++++++-----
 1 file changed, 17 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/68ab6e8a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/ConfUtil.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/ConfUtil.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/ConfUtil.java
index 6ca3451..fe783ac 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/ConfUtil.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/ConfUtil.java
@@ -24,6 +24,7 @@ import org.apache.commons.configuration.XMLConfiguration;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.stratos.autoscaler.Constants;
+import org.wso2.carbon.utils.CarbonUtils;
 
 import java.io.File;
 import java.util.HashMap;
@@ -39,12 +40,21 @@ public class ConfUtil {
 
        //To maintain the map of config files
        private static HashMap<String, ConfUtil> instanceMap = new 
HashMap<String, ConfUtil>();
+       private static Object mutex = new Object();
 
        private ConfUtil(String configFilePath) {
                try {
 
-                       File confFile = new File(configFilePath);
+            File confFile;
+            if (configFilePath != null && !configFilePath.isEmpty()) {
+                confFile = new File(configFilePath);
+
+            } else {
+                confFile = new 
File(CarbonUtils.getCarbonConfigDirPath(),Constants.AUTOSCALER_CONFIG_FILE_NAME);
+            }
+
                        config = new XMLConfiguration(confFile);
+
                } catch (ConfigurationException e) {
                        log.error("Unable to load configuration file", e);
                        config = new XMLConfiguration();  // continue with 
default values
@@ -59,13 +69,14 @@ public class ConfUtil {
         */
        public static ConfUtil getInstance(String configFilePath) {
 
-               if (configFilePath == null || configFilePath.isEmpty()) {
-                       configFilePath = Constants.AUTOSCALER_CONFIG_FILE_NAME;
-               }
                ConfUtil instance = instanceMap.get(configFilePath);
                if (instance == null) {
-                       instance = new ConfUtil(configFilePath);
-                       instanceMap.put(configFilePath, instance);
+                       synchronized (mutex) {
+                               if (instance == null) {
+                                       instance = new ConfUtil(configFilePath);
+                                       instanceMap.put(configFilePath, 
instance);
+                               }
+                       }
                }
                return instance;
        }

Reply via email to