@Override public void done() throws CommitFailedException { for (PropertyUpdateCallback callback : callbacks) { callback.done(); } } }
PropertyUpdateCallback callback = context.getPropertyUpdateCallback(); if (callback != null) { callback.done();
PropertyUpdateCallback callback = context.getPropertyUpdateCallback(); if (callback != null) { callback.done();
PropertyUpdateCallback callback = context.getPropertyUpdateCallback(); if (callback != null) { callback.done();
@Test public void uniqueProperty() throws Exception{ defnb.indexRule("nt:base").property("foo").unique(); PropertyUpdateCallback callback = newCallback(); callback.propertyUpdated("/a", "foo", pd("foo"), null, createProperty("foo", "bar")); callback.propertyUpdated("/b", "foo", pd("foo"), null, createProperty("foo", "bar2")); callback.done(); assertThat(query("foo", newString("bar")), containsInAnyOrder("/a")); }
@Test public void multipleUniqueProperties() throws Exception{ defnb.indexRule("nt:base").property("foo").unique(); defnb.indexRule("nt:base").property("foo2").unique(); PropertyUpdateCallback callback = newCallback(); propertyUpdated(callback, "/a", "foo", "bar"); propertyUpdated(callback, "/a", "foo2", "bar"); //As properties are different this should pass callback.done(); }
@Test(expected = CommitFailedException.class) public void firstStore_PreExist() throws Exception{ defnb.indexRule("nt:base").property("foo").unique(); updateRootState("/a", "foo", "bar"); PropertyUpdateCallback callback = newCallback(); propertyUpdated(callback, "/a", "foo", "bar"); refreshBuilder(); updateRootState("/b", "foo", "bar"); callback = newCallback(); propertyUpdated(callback, "/b", "foo", "bar"); callback.done(); }
@Test public void singleUniqueProperty() throws Exception{ defnb.indexRule("nt:base").property("foo").unique(); updateRootState("/a", "foo", "bar"); updateRootState("/b", "foo", "bar"); PropertyUpdateCallback callback = newCallback(); callback.propertyUpdated("/a", "foo", pd("foo"), null, createProperty("foo", "bar")); callback.propertyUpdated("/b", "foo", pd("foo"), null, createProperty("foo", "bar")); try { callback.done(); fail(); } catch (CommitFailedException e) { assertEquals(CONSTRAINT, e.getType()); assertEquals(30, e.getCode()); assertThat(e.getMessage(), containsString(indexPath)); assertThat(e.getMessage(), containsString("/a")); assertThat(e.getMessage(), containsString("/b")); assertThat(e.getMessage(), containsString("foo")); } }