@Override public void deleteAll(Iterator<ObjectId> ids) { checkWritable(); subject.get().deleteAll(ids); }
@Override public void deleteAll(Iterator<ObjectId> ids, BulkOpListener listener) { checkWritable(); subject.get().deleteAll(ids, listener); }
@Override public void deleteAll(Iterator<ObjectId> ids, BulkOpListener listener) { checkWritable(); subject.get().deleteAll(ids, listener); }
@Override public void deleteAll(Iterator<ObjectId> ids) { checkWritable(); subject.get().deleteAll(ids); }
@Test public void testDeleteAll() { ImmutableList<RevObject> objs = ImmutableList.of(feature(0, null, "some value"), feature(1, "value", new Integer(111)), feature(2, (Object) null)); for (RevObject o : objs) { assertTrue(db.put(o)); } ObjectId notInDb1 = RevObjectTestSupport.hashString("fake1"); ObjectId notInDb2 = RevObjectTestSupport.hashString("fake2"); Function<RevObject, ObjectId> toId = p -> p.getId(); List<ObjectId> ids = Lists.newArrayList(concat(singletonIterator(notInDb1), transform(objs.iterator(), toId), singletonIterator(notInDb2))); db.deleteAll(ids.iterator()); for (ObjectId id : ids) { assertFalse(db.exists(id)); } }
@Test public void testDeleteAll() { ImmutableList<RevObject> objs = ImmutableList.of(feature(0, null, "some value"), feature(1, "value", new Integer(111)), feature(2, (Object) null)); for (RevObject o : objs) { assertTrue(db.put(o)); } ObjectId notInDb1 = RevObjectTestSupport.hashString("fake1"); ObjectId notInDb2 = RevObjectTestSupport.hashString("fake2"); Function<RevObject, ObjectId> toId = p -> p.getId(); List<ObjectId> ids = Lists.newArrayList(concat(singletonIterator(notInDb1), transform(objs.iterator(), toId), singletonIterator(notInDb2))); db.deleteAll(ids.iterator()); for (ObjectId id : ids) { assertFalse(db.exists(id)); } }
@Test public void testDeleteAllWithListener() { ImmutableList<RevObject> objs = ImmutableList.of(feature(0, null, "some value"), feature(1, "value", new Integer(111)), feature(2, (Object) null)); for (RevObject o : objs) { assertTrue(db.put(o)); } ObjectId notInDb1 = RevObjectTestSupport.hashString("fake1"); ObjectId notInDb2 = RevObjectTestSupport.hashString("fake2"); Function<RevObject, ObjectId> toId = p -> p.getId(); Iterator<ObjectId> ids = concat(singletonIterator(notInDb1), transform(objs.iterator(), toId), singletonIterator(notInDb2)); CountingListener listener = BulkOpListener.newCountingListener(); db.deleteAll(ids, listener); assertEquals(3, listener.deleted()); assertEquals(2, listener.notFound()); }
@Test public void testDeleteAllWithListener() { ImmutableList<RevObject> objs = ImmutableList.of(feature(0, null, "some value"), feature(1, "value", new Integer(111)), feature(2, (Object) null)); for (RevObject o : objs) { assertTrue(db.put(o)); } ObjectId notInDb1 = RevObjectTestSupport.hashString("fake1"); ObjectId notInDb2 = RevObjectTestSupport.hashString("fake2"); Function<RevObject, ObjectId> toId = p -> p.getId(); Iterator<ObjectId> ids = concat(singletonIterator(notInDb1), transform(objs.iterator(), toId), singletonIterator(notInDb2)); CountingListener listener = BulkOpListener.newCountingListener(); db.deleteAll(ids, listener); assertEquals(3, listener.deleted()); assertEquals(2, listener.notFound()); }
@Test public void testChecksClosed() { db.close(); checkClosed(() -> db.delete(ObjectId.NULL)); checkClosed(() -> db.deleteAll(emptyIterator())); checkClosed(() -> db.deleteAll(emptyIterator(), NOOP_LISTENER)); checkClosed(() -> db.exists(RevTree.EMPTY_TREE_ID)); checkClosed(() -> db.get(RevTree.EMPTY_TREE_ID)); checkClosed(() -> db.get(RevTree.EMPTY_TREE_ID, RevTree.class)); checkClosed(() -> db.getAll(ImmutableList.of())); checkClosed(() -> db.getAll(ImmutableList.of(), NOOP_LISTENER)); checkClosed(() -> db.getAll(ImmutableList.of(), NOOP_LISTENER, RevTree.class)); checkClosed(() -> db.getIfPresent(ObjectId.NULL)); checkClosed(() -> db.getIfPresent(RevTree.EMPTY_TREE_ID, RevTree.class)); checkClosed(() -> db.lookUp("abcd1234")); checkClosed(() -> db.put(RevTree.EMPTY)); checkClosed(() -> db.putAll(emptyIterator())); checkClosed(() -> db.putAll(emptyIterator(), NOOP_LISTENER)); }
@Test public void testChecksClosed() { db.close(); checkClosed(() -> db.delete(ObjectId.NULL)); checkClosed(() -> db.deleteAll(emptyIterator())); checkClosed(() -> db.deleteAll(emptyIterator(), NOOP_LISTENER)); checkClosed(() -> db.exists(RevTree.EMPTY_TREE_ID)); checkClosed(() -> db.get(RevTree.EMPTY_TREE_ID)); checkClosed(() -> db.get(RevTree.EMPTY_TREE_ID, RevTree.class)); checkClosed(() -> db.getAll(ImmutableList.of())); checkClosed(() -> db.getAll(ImmutableList.of(), NOOP_LISTENER)); checkClosed(() -> db.getAll(ImmutableList.of(), NOOP_LISTENER, RevTree.class)); checkClosed(() -> db.getIfPresent(ObjectId.NULL)); checkClosed(() -> db.getIfPresent(RevTree.EMPTY_TREE_ID, RevTree.class)); checkClosed(() -> db.lookUp("abcd1234")); checkClosed(() -> db.put(RevTree.EMPTY)); checkClosed(() -> db.putAll(emptyIterator())); checkClosed(() -> db.putAll(emptyIterator(), NOOP_LISTENER)); }
@Test public void testChecksNullArgs() { checkNullArgument(() -> db.delete(null)); checkNullArgument(() -> db.deleteAll(null)); checkNullArgument(() -> db.deleteAll(null, NOOP_LISTENER)); checkNullArgument(() -> db.deleteAll(emptyIterator(), null)); checkNullArgument(() -> db.exists(null)); checkNullArgument(() -> db.get(null)); checkNullArgument(() -> db.get(null, RevTree.class)); checkNullArgument(() -> db.get(RevTree.EMPTY_TREE_ID, null)); checkNullArgument(() -> db.getAll(null)); checkNullArgument(() -> db.getAll(null, NOOP_LISTENER)); checkNullArgument(() -> db.getAll(ImmutableList.of(), NOOP_LISTENER, null)); checkNullArgument(() -> db.getAll(ImmutableList.of(), null)); checkNullArgument(() -> db.getIfPresent(null)); checkNullArgument(() -> db.getIfPresent(null, RevTree.class)); checkNullArgument(() -> db.getIfPresent(RevTree.EMPTY_TREE_ID, null)); checkNullArgument(() -> db.lookUp(null)); checkNullArgument(() -> db.put(null)); checkNullArgument(() -> db.putAll(null)); checkNullArgument(() -> db.putAll(null, NOOP_LISTENER)); checkNullArgument(() -> db.putAll(emptyIterator(), null)); }
@Test public void testChecksNullArgs() { checkNullArgument(() -> db.delete(null)); checkNullArgument(() -> db.deleteAll(null)); checkNullArgument(() -> db.deleteAll(null, NOOP_LISTENER)); checkNullArgument(() -> db.deleteAll(emptyIterator(), null)); checkNullArgument(() -> db.exists(null)); checkNullArgument(() -> db.get(null)); checkNullArgument(() -> db.get(null, RevTree.class)); checkNullArgument(() -> db.get(RevTree.EMPTY_TREE_ID, null)); checkNullArgument(() -> db.getAll(null)); checkNullArgument(() -> db.getAll(null, NOOP_LISTENER)); checkNullArgument(() -> db.getAll(ImmutableList.of(), NOOP_LISTENER, null)); checkNullArgument(() -> db.getAll(ImmutableList.of(), null)); checkNullArgument(() -> db.getIfPresent(null)); checkNullArgument(() -> db.getIfPresent(null, RevTree.class)); checkNullArgument(() -> db.getIfPresent(RevTree.EMPTY_TREE_ID, null)); checkNullArgument(() -> db.lookUp(null)); checkNullArgument(() -> db.put(null)); checkNullArgument(() -> db.putAll(null)); checkNullArgument(() -> db.putAll(null, NOOP_LISTENER)); checkNullArgument(() -> db.putAll(emptyIterator(), null)); }