@Override public String getId() { return idFor(getWaveletId()); }
private ObservableConversationBlip getBlip(WaveletId wid, String bid) { String conversationId = WaveletBasedConversation.idFor(wid); ObservableConversation c = conversationView.getConversation(conversationId); return c != null ? c.getBlip(bid) : null; }
@Override public Map<String, Long> getBlipVersions(WaveletId id) { Conversation c = view.getConversation(WaveletBasedConversation.idFor(id)); Map<String, Long> blipVersions = new HashMap<String, Long>(); for (ConversationBlip blip : BlipIterators.breadthFirst(c)) { blipVersions.put(blip.getId(), blip.getLastModifiedVersion()); } return blipVersions; }
@Override public long getVersion(WaveletId id) { Conversation c = view.getConversation(WaveletBasedConversation.idFor(id)); return c != null ? // TODO(user): Once bug 2820511 is fixed, get rid of the cast. ((WaveletBasedConversation) c).getWavelet().getVersion() : PrimitiveSupplement.NO_VERSION; }
@Override public HashedVersion getSignature(WaveletId id) { Conversation c = view.getConversation(WaveletBasedConversation.idFor(id)); return (null != c) ? ((WaveletBasedConversation) c).getWavelet().getHashedVersion() : HashedVersion.unsigned(0); }
private void createEntry(WaveletId waveletId) { String waveletIdStr = WaveletBasedConversation.idFor(waveletId); ObservableMutableDocument<? super E, E, ?> doc = getDocument(); E container = doc.createChildElement(doc.getDocumentElement(), WaveletBasedSupplement.CONVERSATION_TAG, new AttributesImpl(WaveletBasedSupplement.ID_ATTR, waveletIdStr)); }
private void createEntry(WaveletId waveletId) { String waveletIdStr = WaveletBasedConversation.idFor(waveletId); E container = getDocument().createChildElement(getDocument().getDocumentElement(), WaveletBasedSupplement.WAVELET_TAG, new AttributesImpl(WaveletBasedSupplement.ID_ATTR, waveletIdStr)); }
@Override public void setAnchor(Anchor newAnchor) { checkIsUsable(); if (newAnchor != null) { Preconditions.checkArgument(newAnchor.getConversation().getClass() == getClass(), "Anchor must not refer to a different conversation class"); Preconditions.checkArgument(newAnchor.getConversation() != this, "Anchor must not refer to a different anchored conversation"); WaveletBasedConversation conv = (WaveletBasedConversation) newAnchor.getConversation(); String blipId = newAnchor.getBlip().getId(); manifest.setAnchor(new AnchorData(idFor(conv.getWaveletId()), blipId)); } else { manifest.setAnchor(new AnchorData(null, null)); } }
conversationId = WaveletBasedConversation.idFor( ApiIdSerializer.instance().deserialiseWaveletId(waveletId)); } catch (InvalidIdException e) {
/** * Tests that setting an anchor updates the conversation manifest correctly. */ public void testSetAnchorUpdatesManifest() { // Anchor target(wavelet1) in alternate (wavelet2). WaveletBasedConversation conversation2 = makeConversation(); populate(conversation2); ConversationBlip firstBlip = getFirstBlip(conversation2); Anchor anchor = conversation2.createAnchor(firstBlip); target.setAnchor(anchor); assertEquals(WaveletBasedConversation.idFor(conversation2.getWavelet().getId()), getManifestAttribute(manifestDoc, "anchorWavelet")); assertEquals(firstBlip.getId(), getManifestAttribute(manifestDoc, "anchorBlip")); }
/** * Tests that setting an anchor updates the conversation manifest correctly. */ public void testSetAnchorUpdatesManifest() { // Anchor target(wavelet1) in alternate (wavelet2). WaveletBasedConversation conversation2 = makeConversation(); populate(conversation2); ConversationBlip firstBlip = getFirstBlip(conversation2); Anchor anchor = conversation2.createAnchor(firstBlip); target.setAnchor(anchor); assertEquals(WaveletBasedConversation.idFor(conversation2.getWavelet().getId()), getManifestAttribute(manifestDoc, "anchorWavelet")); assertEquals(firstBlip.getId(), getManifestAttribute(manifestDoc, "anchorBlip")); }