@Override public void remove() { if (removeCalled) { throw new IllegalStateException("remove() has been called after the last call to next()."); } if (currentTag == null) { throw new IllegalStateException("Please call next() first before calling remove()."); } removeCalled = true; operationQueue.modifyTagOfWavelet(wavelet, currentTag, "remove"); storeIterator.remove(); } }
/** * Removes the given tag id if it exists. * * @param tag the tag that will be removed. * @return {@code true} if the given tag exists in the owning wavelet, which * means that a new {@code wavelet.modifyTag()} has been queued. * Otherwise, returns {@code false}. */ public boolean remove(String tag) { if (!tags.contains(tag)) { return false; } operationQueue.modifyTagOfWavelet(wavelet, tag, "remove"); tags.remove(tag); return true; }
/** * Adds the given tag id if it doesn't exist. * * @param tag the tag that will be added. * @return {@code true} if the given tag does not exist yet * in the owning wavelet, which means that a new * {@code wavelet.modifyTag()} has been queued. Otherwise, returns * {@code false}. */ public boolean add(String tag) { if (tags.contains(tag)) { return false; } operationQueue.modifyTagOfWavelet(wavelet, tag, "add"); tags.add(tag); return true; }
public void testAdd() throws Exception { assertTrue(tags.add("tag1")); assertTrue(tags.add("tag2")); assertFalse(tags.add("tag1")); assertEquals(2, tags.size()); verify(opQueue).modifyTagOfWavelet(wavelet, "tag1", "add"); verify(opQueue).modifyTagOfWavelet(wavelet, "tag2", "add"); }
public void testAdd() throws Exception { assertTrue(tags.add("tag1")); assertTrue(tags.add("tag2")); assertFalse(tags.add("tag1")); assertEquals(2, tags.size()); verify(opQueue).modifyTagOfWavelet(wavelet, "tag1", "add"); verify(opQueue).modifyTagOfWavelet(wavelet, "tag2", "add"); }
public void testRemove() throws Exception { assertTrue(tags.add("tag1")); assertTrue(tags.add("tag2")); assertFalse(tags.remove("tag3")); assertEquals(2, tags.size()); assertTrue(tags.remove("tag1")); assertEquals(1, tags.size()); assertTrue(tags.remove("tag2")); assertEquals(0, tags.size()); verify(opQueue).modifyTagOfWavelet(wavelet, "tag1", "remove"); verify(opQueue).modifyTagOfWavelet(wavelet, "tag2", "remove"); }
public void testRemove() throws Exception { assertTrue(tags.add("tag1")); assertTrue(tags.add("tag2")); assertFalse(tags.remove("tag3")); assertEquals(2, tags.size()); assertTrue(tags.remove("tag1")); assertEquals(1, tags.size()); assertTrue(tags.remove("tag2")); assertEquals(0, tags.size()); verify(opQueue).modifyTagOfWavelet(wavelet, "tag1", "remove"); verify(opQueue).modifyTagOfWavelet(wavelet, "tag2", "remove"); }
verify(opQueue).modifyTagOfWavelet(wavelet, "tag1", "remove");
verify(opQueue).modifyTagOfWavelet(wavelet, "tag1", "remove");