You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by ma...@apache.org on 2014/12/04 14:49:57 UTC

[4/7] stratos git commit: update with the carbon configuration path

update with the carbon configuration path

Signed-off-by: Manula Thantriwatte <ma...@apache.org>


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 <ga...@puppet.gayan.org>
Authored: Thu Dec 4 14:08:47 2014 +0530
Committer: Manula Thantriwatte <ma...@apache.org>
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;
 	}