DocumentBasedWaveletThreadState( DocumentEventRouter<? super E, E, ?> router, E container) { this.router = router; this.container = container; threadStates = DocumentBasedBasicMap.create(router, container, Serializer.STRING, threadStateSerializer, WaveletBasedSupplement.THREAD_TAG, WaveletBasedSupplement.ID_ATTR, WaveletBasedSupplement.STATE_ATTR); }
@Override public String getFilename() { return dataMap.get(KeyName.FILENAME); }
@Override public void setCreator(String userId) { dataMap.put(KeyName.CREATOR, userId); }
/** * Creates a Basic Map. */ public static <E, K, V> DocumentBasedBasicMap<E, K, V> create( DocumentEventRouter<? super E, E, ?> router, E entryContainer, Serializer<K> keySerializer, Serializer<V> valueSerializer, String entryTagName, String keyAttrName, String valueAttrName) { DocumentBasedBasicMap<E, K, V> map = new DocumentBasedBasicMap<E, K, V>( router, entryContainer, keySerializer, valueSerializer, entryTagName, keyAttrName, valueAttrName, true); map.dispatchAndLoad(); return map; }
public void testReplacementEntryTriggersSingleEvent() { createEmptyMap(); getTarget().put(KEY1, 10); MockListener<String, Integer> listener = new MockListener<String, Integer>(); getTarget().addListener(listener); getTarget().put(KEY1, 5); List<Entry<String, Integer>> receivedEntries = listener.getEntries().build(); assertEquals(1, receivedEntries.size()); } }
/** * Creates a Permissions view on top of the document. */ public static DocumentBasedIndexability create(final DocEventRouter doc) { DocumentBasedBasicMap<Doc.E, ParticipantId, IndexDecision> map = DocumentBasedBasicMap.create(doc, doc.getDocument().getDocumentElement(), ParticipantIdSerializer.INSTANCE, new Serializer.EnumSerializer<IndexDecision>(IndexDecision.class), INDEX_TAG, ADDRESS_ATTR, VALUE_ATTR); DocumentBasedIndexability indexability = new DocumentBasedIndexability(map); map.addListener(indexability); return indexability; }
/** * Replacement is permitted only when the newEntry is later in the document. */ @Override protected boolean canReplace(E oldEntry, E newEntry, V oldValue, V newValue) { if (oldEntry == null) { return true; } if (getDocument().getLocation(newEntry) > getDocument().getLocation(oldEntry)) { return true; } return false; }
public void testReplacementEntryTriggersSingleEvent() { createEmptyMap(); getTarget().put(KEY1, 10); MockListener<String, Integer> listener = new MockListener<String, Integer>(); getTarget().addListener(listener); getTarget().put(KEY1, 5); List<Entry<String, Integer>> receivedEntries = listener.getEntries().build(); assertEquals(1, receivedEntries.size()); } }
public void testPutOfLaterValuesReplaceOld() { // Set up the target with some initial state. createTargetOn(new ListBuilder<String, Integer>() .add(KEY1, 10) .add(KEY2, 20)); getTarget().put(KEY1, 05); assertEquals(new Integer(05), getTarget().get(KEY1)); assertSubstrateEquals(new ListBuilder<String, Integer>() .add(KEY1, 05) .add(KEY2, 20)); getTarget().put(KEY1, 30); assertEquals(new Integer(30), getTarget().get(KEY1)); assertSubstrateEquals(new ListBuilder<String, Integer>() .add(KEY1, 30) .add(KEY2, 20)); }
public void testPutOfNewEntryTriggersEvent() { createEmptyMap(); MockListener<String, Integer> listener = new MockListener<String, Integer>(); getTarget().addListener(listener); getTarget().put(KEY1, 10); List<Entry<String, Integer>> receivedEntries = listener.getEntries().build(); assertEquals(1, receivedEntries.size()); }
@Override public void setMimeType(String mimeType) { dataMap.put(KeyName.MIME_TYPE, mimeType); }
@Override public String getMimeType() { return dataMap.get(KeyName.MIME_TYPE); }
DocumentBasedGadgetState(DocumentEventRouter<? super E, E, ?> router, E container) { this.router = router; this.container = container; state = DocumentBasedBasicMap.create(router, container, Serializer.STRING, Serializer.STRING, WaveletBasedSupplement.STATE_TAG, WaveletBasedSupplement.NAME_ATTR, WaveletBasedSupplement.VALUE_ATTR); }
public void testPutOfLaterValuesReplaceOld() { // Set up the target with some initial state. createTargetOn(new ListBuilder<String, Integer>() .add(KEY1, 10) .add(KEY2, 20)); getTarget().put(KEY1, 05); assertEquals(new Integer(05), getTarget().get(KEY1)); assertSubstrateEquals(new ListBuilder<String, Integer>() .add(KEY1, 05) .add(KEY2, 20)); getTarget().put(KEY1, 30); assertEquals(new Integer(30), getTarget().get(KEY1)); assertSubstrateEquals(new ListBuilder<String, Integer>() .add(KEY1, 30) .add(KEY2, 20)); }
public void testPutOfNewEntryTriggersEvent() { createEmptyMap(); MockListener<String, Integer> listener = new MockListener<String, Integer>(); getTarget().addListener(listener); getTarget().put(KEY1, 10); List<Entry<String, Integer>> receivedEntries = listener.getEntries().build(); assertEquals(1, receivedEntries.size()); }
@Override public void setAttachmentUrl(String url) { dataMap.put(KeyName.ATTACHMENT_URL, url); }
@Override public String getThumbnailUrl() { return dataMap.get(KeyName.THUMBNAIL_URL); }
/** * Private constructor. Use the factory method ({@link #create}) instead. * * @param document the document to wrap */ // VisibleForTesting AttachmentDocumentWrapper(ObservableMutableDocument<N, E, T> document) { internalDocument = document; dataMap = DocumentBasedBasicMap.create(DefaultDocumentEventRouter.create(document), document.getDocumentElement(), new KeyNameSerializer(), Serializer.STRING, "node", "key", "value"); }