public void delete() { r.destroy(this); }
private void destroySinkMarkers(List<? extends IdRef<?>> markerIds) { for (IdRef<?> id : markerIds) { if (!id.getParentId().getClazz().equals(sourceClazz)) { continue; } r.destroy(id); } }
@Override public void destroy(IdRef<?> id) { init(); get().destroy(id); }
@Test public void testBeforeDestroy() { HookedObject objectToDelete = new HookedObject("beforeDestroy test"); yawp.save(objectToDelete); yawp.destroy(objectToDelete.getId()); List<BasicObject> objects = yawp(BasicObject.class).where("stringValue", "=", "beforeDestroy test: " + objectToDelete.getId()) .list(); assertEquals(1, objects.size()); }
@Test public void testAfterDestroy() { HookedObject objectToDelete = new HookedObject(); yawp.save(objectToDelete); yawp.destroy(objectToDelete.getId()); List<BasicObject> objects = yawp(BasicObject.class).where("stringValue", "=", "afterDestroy test: " + objectToDelete.getId()) .list(); assertEquals(1, objects.size()); }
@Test(expected = NoResultException.class) public void testDestroyInvalidatesCache() { Child c1 = yawp.save(new Child("c1")); assertThat(c1.getId().fetch().getName(), is("c1")); yawp.destroy(c1.getId()); c1.getId().fetch(); }
@Test(expected = NoResultException.class) public void testDelete() { BasicObject object = new BasicObject(); yawp.save(object); yawp.destroy(object.getId()); yawp(BasicObject.class).fetch(object.getId()); }
@Test public void testRefecth() { Child c1 = yawp.save(new Child("c1")); assertThat(c1.getId().fetch().getName(), is("c1")); yawp.destroy(c1.getId()); try { c1.getId().refetch(); } catch (NoResultException ex) { return; } fail("Exception NoResultException should have been thrown..."); } }
@Test public void testDecrement() { if (pipesDriverNotImplemented()) { return; } IdRef<PipedObject> object100Id = saveObjectInGroup(100L, "xpto"); yawp.save(new PipedObject("xpto")); awaitAsync(20, TimeUnit.SECONDS); PipedObjectCounter counter; counter = yawp(PipedObjectCounter.class).only(); assertEquals((Integer) 2, counter.getCount()); yawp.destroy(object100Id); awaitAsync(20, TimeUnit.SECONDS); counter = yawp(PipedObjectCounter.class).only(); assertEquals((Integer) 1, counter.getCount()); }
@Test public void testCountByAttributeDecrement() { if (pipesDriverNotImplemented()) { return; } yawp.save(new PipedObject("group-a")); IdRef<PipedObject> objectInGroupBId = saveObjectInGroup(100L, "group-b"); yawp.save(new PipedObject("xpto")); awaitAsync(20, TimeUnit.SECONDS); PipedObjectCounter counter; counter = yawp(PipedObjectCounter.class).only(); assertEquals((Integer) 3, counter.getCount()); assertEquals((Integer) 1, counter.getCountGroupA()); assertEquals((Integer) 1, counter.getCountGroupB()); yawp.destroy(objectInGroupBId); awaitAsync(20, TimeUnit.SECONDS); counter = yawp(PipedObjectCounter.class).only(); assertEquals((Integer) 2, counter.getCount()); assertEquals((Integer) 1, counter.getCountGroupA()); assertEquals((Integer) 0, counter.getCountGroupB()); }