List of usage examples for org.apache.commons.configuration HierarchicalINIConfiguration save
public void save(Writer writer) throws ConfigurationException
From source file:io.datalayer.conf.HierarchicalIniConfigurationTest.java
/** * Helper method for testing a save operation. This method constructs a * configuration from the specified content string. Then it saves this * configuration and checks whether the result matches the original content. * * @param content the content of the configuration * @throws ConfigurationException if an error occurs *//*from w w w. ja v a2 s. c om*/ private void checkSave(String content) throws ConfigurationException { HierarchicalINIConfiguration config = setUpConfig(content); StringWriter writer = new StringWriter(); config.save(writer); assertEquals("Wrong content of ini file", content, writer.toString()); }
From source file:io.datalayer.conf.HierarchicalIniConfigurationTest.java
@Test public void testWriteValueWithCommentChar() throws Exception { HierarchicalINIConfiguration config = new HierarchicalINIConfiguration(); config.setProperty("section.key1", "1;2;3"); StringWriter writer = new StringWriter(); config.save(writer); HierarchicalINIConfiguration config2 = new HierarchicalINIConfiguration(); config2.load(new StringReader(writer.toString())); assertEquals("value", "1;2;3", config2.getString("section.key1")); }
From source file:io.datalayer.conf.HierarchicalIniConfigurationTest.java
/** * Tests whether a configuration can be saved that contains section keys * with delimiter characters. This test is related to CONFIGURATION-409. *//*from w w w .ja v a 2 s .c om*/ @Test public void testSaveKeysWithDelimiters() throws ConfigurationException { HierarchicalINIConfiguration conf = new HierarchicalINIConfiguration(); final String section = "Section..with..dots"; conf.addProperty(section + ".test1", "test1"); conf.addProperty(section + ".test2", "test2"); conf.save(TEST_FILE); conf = new HierarchicalINIConfiguration(); conf.load(TEST_FILE); assertEquals("Wrong value (1)", "test1", conf.getString(section + ".test1")); assertEquals("Wrong value (2)", "test2", conf.getString(section + ".test2")); }
From source file:io.datalayer.conf.HierarchicalIniConfigurationTest.java
/** * Tests whether a section that has been cleared can be manipulated and * saved later./*w w w . j a v a2 s . com*/ */ @Test public void testSaveClearedSection() throws ConfigurationException { final String data = "[section]\ntest = failed\n"; HierarchicalINIConfiguration config = setUpConfig(data); SubnodeConfiguration sub = config.getSection("section"); assertFalse("No content", sub.isEmpty()); sub.clear(); sub.setProperty("test", "success"); StringWriter writer = new StringWriter(); config.save(writer); HierarchicalConfiguration config2 = setUpConfig(writer.toString()); assertEquals("Wrong value", "success", config2.getString("section.test")); }
From source file:io.datalayer.conf.HierarchicalIniConfigurationTest.java
/** * Tests whether a section that was created by getSection() can be * manipulated.//from w w w .j a v a2 s .com */ @Test public void testGetSectionNonExistingManipulate() throws ConfigurationException { HierarchicalINIConfiguration config = setUpConfig(INI_DATA); SubnodeConfiguration section = config.getSection("newSection"); section.addProperty("test", "success"); assertEquals("Main config not updated", "success", config.getString("newSection.test")); StringWriter writer = new StringWriter(); config.save(writer); HierarchicalINIConfiguration config2 = setUpConfig(writer.toString()); section = config2.getSection("newSection"); assertEquals("Wrong value", "success", section.getString("test")); }
From source file:io.datalayer.conf.HierarchicalIniConfigurationTest.java
/** * Tests whether a duplicate session is merged. *///from ww w . j ava 2 s .co m @Test public void testMergeDuplicateSection() throws ConfigurationException { final String data = "[section]\nvar1 = sec1\n\n" + "[section]\nvar2 = sec2\n"; HierarchicalINIConfiguration config = setUpConfig(data); assertEquals("Wrong value 1", "sec1", config.getString("section.var1")); assertEquals("Wrong value 2", "sec2", config.getString("section.var2")); SubnodeConfiguration sub = config.getSection("section"); assertEquals("Wrong sub value 1", "sec1", sub.getString("var1")); assertEquals("Wrong sub value 2", "sec2", sub.getString("var2")); StringWriter writer = new StringWriter(); config.save(writer); String content = writer.toString(); int pos = content.indexOf("[section]"); assertTrue("Section not found: " + content, pos >= 0); assertTrue("Section found multiple times: " + content, content.indexOf("[section]", pos + 1) < 0); }
From source file:io.datalayer.conf.HierarchicalIniConfigurationTest.java
/** * Test of save method, of class {@link HierarchicalINIConfiguration}. *///from w ww. ja v a 2s . com @Test public void testSave() throws Exception { Writer writer = new StringWriter(); HierarchicalINIConfiguration instance = new HierarchicalINIConfiguration(); instance.addProperty("section1.var1", "foo"); instance.addProperty("section1.var2", "451"); instance.addProperty("section2.var1", "123.45"); instance.addProperty("section2.var2", "bar"); instance.addProperty("section3.var1", "true"); instance.addProperty("section3.interpolated", "${section3.var1}"); instance.addProperty("section3.multi", "foo"); instance.addProperty("section3.multi", "bar"); instance.save(writer); assertEquals("Wrong content of ini file", INI_DATA, writer.toString()); }
From source file:eu.itesla_project.eurostag.EurostagImpactAnalysis.java
private void writeWp43Configs(List<Contingency> contingencies, Path workingDir) throws IOException, ConfigurationException { Path baseWp43ConfigFile = PlatformConfig.CONFIG_DIR.resolve(WP43_CONFIGS_FILE_NAME); // generate one variant of the base config for all the contingency // this allow to add extra variables for some indexes HierarchicalINIConfiguration configuration = new HierarchicalINIConfiguration(baseWp43ConfigFile.toFile()); SubnodeConfiguration node = configuration.getSection("smallsignal"); node.setProperty("f_instant", parameters.getFaultEventInstant()); for (int i = 0; i < contingencies.size(); i++) { Contingency contingency = contingencies.get(i); if (contingency.getElements().isEmpty()) { throw new AssertionError("Empty contingency " + contingency.getId()); }/*from w w w. ja va2 s . c om*/ Iterator<ContingencyElement> it = contingency.getElements().iterator(); // compute the maximum fault duration double maxDuration = getFaultDuration(contingency, it.next()); while (it.hasNext()) { maxDuration = Math.max(maxDuration, getFaultDuration(contingency, it.next())); } node.setProperty("f_duration", maxDuration); Path wp43Config = workingDir.resolve(WP43_CONFIGS_PER_FAULT_FILE_NAME .replace(Command.EXECUTION_NUMBER_PATTERN, Integer.toString(i))); try (Writer writer = Files.newBufferedWriter(wp43Config, StandardCharsets.UTF_8)) { configuration.save(writer); } } }