[infinispan-commits] Infinispan SVN: r860 - in trunk/tree/src: test/java/org/infinispan/api/tree and 1 other directory.
infinispan-commits at lists.jboss.org
infinispan-commits at lists.jboss.org
Fri Sep 25 11:05:24 EDT 2009
Author: manik.surtani at jboss.com
Date: 2009-09-25 11:05:24 -0400 (Fri, 25 Sep 2009)
New Revision: 860
Modified:
trunk/tree/src/main/java/org/infinispan/tree/TreeCacheImpl.java
trunk/tree/src/test/java/org/infinispan/api/tree/NodeAPITest.java
Log:
[ISPN-199] (TreeCache.put(Fqn, Map) throws NPE if node does not exist) text and fix
Modified: trunk/tree/src/main/java/org/infinispan/tree/TreeCacheImpl.java
===================================================================
--- trunk/tree/src/main/java/org/infinispan/tree/TreeCacheImpl.java 2009-09-25 14:55:22 UTC (rev 859)
+++ trunk/tree/src/main/java/org/infinispan/tree/TreeCacheImpl.java 2009-09-25 15:05:24 UTC (rev 860)
@@ -68,7 +68,10 @@
public void put(Fqn fqn, Map<? extends K, ? extends V> data) {
startAtomic();
try {
- getNode(fqn).putAll(data);
+ Node n = getNode(fqn);
+ if (n == null) createNodeInCache(fqn);
+ n = getNode(fqn);
+ n.putAll(data);
}
finally {
endAtomic();
Modified: trunk/tree/src/test/java/org/infinispan/api/tree/NodeAPITest.java
===================================================================
--- trunk/tree/src/test/java/org/infinispan/api/tree/NodeAPITest.java 2009-09-25 14:55:22 UTC (rev 859)
+++ trunk/tree/src/test/java/org/infinispan/api/tree/NodeAPITest.java 2009-09-25 15:05:24 UTC (rev 860)
@@ -14,6 +14,7 @@
import org.testng.annotations.Test;
import javax.transaction.TransactionManager;
+import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
@@ -55,6 +56,16 @@
assertEquals("value", nodeA.get("key"));
}
+ public void testAddingDataPutMap() {
+ cache.put(A_B, Collections.singletonMap("key", "value"));
+ assertEquals("value", cache.get(A_B, "key"));
+ }
+
+ public void testAddingDataPutKey() {
+ cache.put(A_B, "key", "value");
+ assertEquals("value", cache.get(A_B, "key"));
+ }
+
public void testAddingDataTx() throws Exception {
Node<Object, Object> rootNode = cache.getRoot();
tm.begin();
More information about the infinispan-commits
mailing list