/** * Create a new builder for this object. * * @return A new builder for this object. */ public static ConfigClasspathStoreBuilder create() { return new ConfigClasspathStoreBuilder(); }
@Override /* ContextBuilder */ public ConfigClasspathStore build() { return new ConfigClasspathStore(getPropertyStore()); } }
@Test public void testNoFile() throws Exception { ConfigClasspathStore fs = ConfigClasspathStore.create().build(); assertEquals("", fs.read("X.cfg")); }
@Test public void testUpdate() throws Exception { ConfigClasspathStore fs = ConfigClasspathStore.create().build(); final CountDownLatch latch = new CountDownLatch(2); fs.register("X.cfg", new ConfigStoreListener() { @Override public void onChange(String contents) { if ("xxx".equals(contents)) latch.countDown(); } }); fs.register("Y.cfg", new ConfigStoreListener() { @Override public void onChange(String contents) { if ("yyy".equals(contents)) latch.countDown(); } }); fs.update("X.cfg", "xxx"); fs.update("Y.cfg", "yyy"); if (! latch.await(10, TimeUnit.SECONDS)) throw new Exception("CountDownLatch never reached zero."); }
/** * Create a new builder for this object. * * @return A new builder for this object. */ public static ConfigClasspathStoreBuilder create() { return new ConfigClasspathStoreBuilder(); }
@Override /* ContextBuilder */ public ConfigClasspathStore build() { return new ConfigClasspathStore(getPropertyStore()); } }
@Test public void testSimpleCreate() throws Exception { ConfigClasspathStore fs = ConfigClasspathStore.create().build(); assertNull(fs.write("X.cfg", null, "foo")); assertEquals("foo", fs.read("X.cfg")); }
/** * Create a new builder for this object. * * @return A new builder for this object. */ public static ConfigClasspathStoreBuilder create() { return new ConfigClasspathStoreBuilder(); }
@Override /* ContextBuilder */ public ConfigClasspathStore build() { return new ConfigClasspathStore(getPropertyStore()); } }
@Test public void testOverwriteRealFiles() throws Exception { ConfigClasspathStore fs = ConfigClasspathStore.create().build(); assertContains(fs.read("foo1.cfg"), "bar1"); fs.write("foo1.cfg", fs.read("foo1.cfg"), "xxx"); assertEquals("xxx", fs.read("foo1.cfg")); }
@Override /* Context */ public ConfigClasspathStoreBuilder builder() { return new ConfigClasspathStoreBuilder(getPropertyStore()); }
@Test public void testRealFiles() throws Exception { ConfigClasspathStore fs = ConfigClasspathStore.create().build(); assertContains(fs.read("foo1.cfg"), "bar1"); assertContains(fs.read("sub/foo2.cfg"), "bar2"); assertEquals("", fs.read("sub/bad.cfg")); assertEquals("", fs.read("bad/bad.cfg")); }
@Override /* Context */ public ConfigClasspathStoreBuilder builder() { return new ConfigClasspathStoreBuilder(getPropertyStore()); }
@Test public void testFailOnMismatch() throws Exception { ConfigClasspathStore fs = ConfigClasspathStore.create().build(); assertNotNull(fs.write("X.cfg", "xxx", "foo")); assertEquals("", fs.read("X.cfg")); assertNull(fs.write("X.cfg", null, "foo")); assertEquals("foo", fs.read("X.cfg")); assertNotNull(fs.write("X.cfg", "xxx", "foo")); assertEquals("foo", fs.read("X.cfg")); assertNull(fs.write("X.cfg", "foo", "bar")); assertEquals("bar", fs.read("X.cfg")); }
@Override /* Context */ public ConfigClasspathStoreBuilder builder() { return new ConfigClasspathStoreBuilder(getPropertyStore()); }