diff --git a/utils/src/com/cloud/utils/PropertiesUtil.java b/utils/src/com/cloud/utils/PropertiesUtil.java index 6db66ff484a..6f3796a9f0b 100755 --- a/utils/src/com/cloud/utils/PropertiesUtil.java +++ b/utils/src/com/cloud/utils/PropertiesUtil.java @@ -130,7 +130,7 @@ public class PropertiesUtil { File commandsFile = findConfigFile(configFile); if (commandsFile != null) { try { - preProcessedCommands.load(new FileInputStream(commandsFile)); + loadFromFile(preProcessedCommands, commandsFile); } catch (FileNotFoundException fnfex) { // in case of a file within a jar in classpath, try to open stream using url InputStream stream = PropertiesUtil.openStreamFromURL(configFile); diff --git a/utils/test/com/cloud/utils/PropertiesUtilsTest.java b/utils/test/com/cloud/utils/PropertiesUtilsTest.java index 5ebe095d69d..d27a0b41350 100644 --- a/utils/test/com/cloud/utils/PropertiesUtilsTest.java +++ b/utils/test/com/cloud/utils/PropertiesUtilsTest.java @@ -18,6 +18,7 @@ package com.cloud.utils; import java.io.File; import java.io.IOException; +import java.util.Map; import java.util.Properties; import org.apache.commons.io.FileUtils; @@ -30,6 +31,7 @@ public class PropertiesUtilsTest { File configFile = PropertiesUtil.findConfigFile("notexistingresource"); Assert.assertNull(configFile); } + @Test public void loadFromFile() throws IOException { File file = File.createTempFile("test", ".properties"); @@ -38,4 +40,15 @@ public class PropertiesUtilsTest { PropertiesUtil.loadFromFile(properties, file); Assert.assertEquals("b", properties.get("a")); } + + @Test + public void processConfigFile() throws IOException { + File tempFile = File.createTempFile("temp", ".properties"); + FileUtils.writeStringToFile(tempFile, "a=b\nc=d\n"); + Map config = PropertiesUtil + .processConfigFile(new String[] { tempFile.getAbsolutePath() }); + Assert.assertEquals("b", config.get("a")); + Assert.assertEquals("d", config.get("c")); + tempFile.delete(); + } }