Example usage for org.apache.commons.configuration HierarchicalConfiguration HierarchicalConfiguration

List of usage examples for org.apache.commons.configuration HierarchicalConfiguration HierarchicalConfiguration

Introduction

In this page you can find the example usage for org.apache.commons.configuration HierarchicalConfiguration HierarchicalConfiguration.

Prototype

public HierarchicalConfiguration() 

Source Link

Document

Creates a new instance of HierarchicalConfiguration.

Usage

From source file:org.lable.oss.dynamicconfig.configutil.ConfigUtilTest.java

@Test
public void testChildMapReturnsMap() {
    Configuration input = new HierarchicalConfiguration();
    input.addProperty("prop1", "XXX");
    input.addProperty("prop2.l1", "XXX");
    input.addProperty("prop2.l2", "XXX");
    input.addProperty("prop3.deeper", "XXX");

    final Map<String, Configuration> output = childMap(input);

    assertThat(output.size(), is(3));/*  www .j a  va 2  s. c  o  m*/
    assertThat(output.get("prop3").getString("deeper"), is("XXX"));
}

From source file:org.lable.oss.dynamicconfig.configutil.ConfigUtilTest.java

@Test
public void testChildMapReturnsSubsetMap() {
    Configuration input = new HierarchicalConfiguration();
    input.addProperty("prop1", "XXX");
    input.addProperty("prop2.l1", "XXX");
    input.addProperty("prop2.l2", "XXX");
    input.addProperty("prop3.deeper", "XXX");

    final Map<String, Configuration> output = childMap(input.subset("prop2"));

    assertThat(output.size(), is(2));/*  ww  w . j  av  a  2 s.c  om*/
    assertThat(output.containsKey("l1"), is(true));
    assertThat(output.containsKey("l2"), is(true));
}

From source file:org.lable.oss.dynamicconfig.configutil.ConfigUtilTest.java

@Test
public void testChildMapReturnsSubsetMapWithPath() {
    Configuration input = new HierarchicalConfiguration();
    input.addProperty("prop1", "XXX");
    input.addProperty("prop2.l1", "XXX");
    input.addProperty("prop2.l2", "XXX");
    input.addProperty("prop3.deeper", "XXX");

    final Map<String, Configuration> output = childMap(input, "prop2");

    assertThat(output.size(), is(2));/*w w  w .  ja  v a 2  s . com*/
    assertThat(output.containsKey("l1"), is(true));
    assertThat(output.containsKey("l2"), is(true));
}

From source file:org.lable.oss.dynamicconfig.configutil.ConfigUtilTest.java

@Test
public void testChildMapEmptyPath() {
    Configuration input = new HierarchicalConfiguration();
    input.addProperty("prop1", "XXX");

    final Map<String, Configuration> output = childMap(input, "");

    assertThat(output.containsKey("prop1"), is(true));
}

From source file:org.lable.oss.dynamicconfig.configutil.ConfigUtilTest.java

@Test
public void testChildKeys() {
    Configuration input = new HierarchicalConfiguration();
    input.addProperty("prop1", "XXX");
    input.addProperty("prop2", "XXX");
    input.addProperty("prop3.deeper", "XXX");
    input.addProperty("prop3.deeperest", "XXX");

    final Set<String> result = childKeys(input);

    assertThat(result.size(), is(3));//from w  w  w . j  av a 2 s  .c o m
    assertThat(result.contains("prop1"), is(true));
    assertThat(result.contains("prop2"), is(true));
    assertThat(result.contains("prop3"), is(true));
}

From source file:org.lable.oss.dynamicconfig.configutil.ConfigUtilTest.java

@Test
public void testChildKeysSubList() {
    Configuration input = new HierarchicalConfiguration();
    input.addProperty("prop1", "XXX");
    input.addProperty("prop2", "XXX");
    input.addProperty("prop3.deeper", "XXX");

    final Set<String> result = childKeys(input, "prop3");

    assertThat(result.size(), is(1));//w  w  w  .  j  a  v a2 s .  c  o  m
    assertThat(result.contains("deeper"), is(true));
}

From source file:org.lable.oss.dynamicconfig.configutil.ConfigUtilTest.java

@Test
public void testChildKeysEmptyPath() {
    Configuration input = new HierarchicalConfiguration();
    input.addProperty("prop1", "XXX");

    final Set<String> result = childKeys(input, "");

    assertThat(result.contains("prop1"), is(true));
}

From source file:org.lable.oss.dynamicconfig.core.BasicUseIT.java

@Test
public void withDefaultsClasspathTest() throws ConfigurationException {
    System.setProperty(ConfigurationInitializer.LIBRARY_PREFIX + ".type", "classpath");
    System.setProperty(ConfigurationInitializer.LIBRARY_PREFIX + ".classpath.path", "test.yml");
    HierarchicalConfiguration defaults = new HierarchicalConfiguration();
    defaults.setProperty("type.string", "Not okay");
    defaults.setProperty("only.in.defaults", "XXX");

    Configuration configuration = ConfigurationInitializer.configureFromProperties(defaults,
            new YamlDeserializer());

    assertThat(configuration.getString("type.string"), is("Okay"));
    assertThat(configuration.getString("only.in.defaults"), is("XXX"));
}

From source file:org.lable.oss.dynamicconfig.core.commonsconfiguration.ObjectifierTest.java

@Test
@SuppressWarnings("unchecked")
public void testTree() throws Exception {

    // Prepare a configuration object to test with.

    HierarchicalConfiguration configuration = new HierarchicalConfiguration();
    configuration.setProperty("type.unicodeString", "");
    configuration.setProperty("type.booleanFalse", false);
    configuration.setProperty("type.booleanTrue", true);
    configuration.setProperty("type.list", Arrays.asList("1", "2", "3"));
    configuration.setProperty("type.listInt", Arrays.asList(1, 2, 3));

    // Perform the test.

    Object tree = Objectifier.traverseTreeAndEmit(configuration.getRootNode());
    assertThat(tree, instanceOf(Map.class));

    Map<String, Object> treeMap = (Map<String, Object>) tree;
    assertThat(treeMap.get("type"), instanceOf(Map.class));

    Map<String, Object> typeMap = (Map<String, Object>) treeMap.get("type");
    assertThat(typeMap.size(), is(5));//ww w . j  a  va 2s.  c  om

    String unicodeString = (String) typeMap.get("unicodeString");
    assertThat(unicodeString, is(""));

    boolean booleanFalse = (boolean) typeMap.get("booleanFalse");
    boolean booleanTrue = (boolean) typeMap.get("booleanTrue");
    assertThat(booleanFalse, is(false));
    assertThat(booleanTrue, is(true));

    List<String> stringList = (List<String>) typeMap.get("list");
    assertThat(stringList, is(Arrays.asList("1", "2", "3")));

    List<Integer> intList = (List<Integer>) typeMap.get("listInt");
    assertThat(intList, is(Arrays.asList(1, 2, 3)));
}

From source file:org.lable.oss.dynamicconfig.core.ConcurrencyIT.java

@Test
public void concurrencyTest() throws IOException, InterruptedException, ConfigurationException {
    final int threadCount = 20;

    final Path configFile = Files.createTempFile("config", ".yaml");
    Files.write(configFile, "test: 0\n".getBytes());

    System.setProperty(ConfigurationInitializer.LIBRARY_PREFIX + ".type", "file");
    System.setProperty(ConfigurationInitializer.LIBRARY_PREFIX + ".file.path",
            configFile.toAbsolutePath().toString());
    HierarchicalConfiguration defaults = new HierarchicalConfiguration();
    defaults.setProperty("test", -1);
    final Configuration configuration = ConfigurationInitializer.configureFromProperties(defaults,
            new YamlDeserializer());

    final CountDownLatch ready = new CountDownLatch(threadCount + 1);
    final CountDownLatch start = new CountDownLatch(1);
    final CountDownLatch done = new CountDownLatch(threadCount + 1);
    final Map<Integer, Long> result = new ConcurrentHashMap<>(threadCount);
    final long stopTime = System.currentTimeMillis() + 1_000;

    for (int i = 0; i < threadCount; i++) {
        final Integer number = 10 + i;
        new Thread(() -> {
            ready.countDown();//from  ww  w  .ja  va2s  .  c o  m
            try {
                result.put(number, 0L);
                start.await();
                while (System.currentTimeMillis() < stopTime) {
                    System.out.println(configuration.getLong("test"));
                    result.put(number, result.get(number) + 1);
                }
            } catch (Exception e) {
                e.printStackTrace();
                fail(e.getMessage());
            }
            done.countDown();
        }, String.valueOf(number)).start();
    }

    new Thread(() -> {
        long count = 1;
        ready.countDown();
        try {
            start.await();
            while (System.currentTimeMillis() < stopTime) {
                String contents = "test: " + count + "\n";
                Files.write(configFile, contents.getBytes());
                count++;
                Thread.sleep(10);
            }
        } catch (Exception e) {
            fail(e.getMessage());
        }
        done.countDown();
    }, "setter").start();

    ready.await();
    start.countDown();
    done.await();

    for (Map.Entry<Integer, Long> entry : result.entrySet()) {
        System.out.println("Thread " + entry.getKey() + ": " + entry.getValue());
    }

}