[jboss-cvs] JBossCache/src/org/jboss/cache/statetransfer ...
Brian Stansberry
brian.stansberry at jboss.com
Tue Jan 2 22:56:15 EST 2007
User: bstansberry
Date: 07/01/02 22:56:15
Modified: src/org/jboss/cache/statetransfer
DefaultStateTransferIntegrator.java
Log:
[JBCACHE-913] Add an event to eviction queue for nodes created in state transfer
Revision Changes Path
1.13 +17 -1 JBossCache/src/org/jboss/cache/statetransfer/DefaultStateTransferIntegrator.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: DefaultStateTransferIntegrator.java
===================================================================
RCS file: /cvsroot/jboss/JBossCache/src/org/jboss/cache/statetransfer/DefaultStateTransferIntegrator.java,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -b -r1.12 -r1.13
--- DefaultStateTransferIntegrator.java 2 Jan 2007 19:19:05 -0000 1.12
+++ DefaultStateTransferIntegrator.java 3 Jan 2007 03:56:15 -0000 1.13
@@ -13,7 +13,11 @@
import org.jboss.cache.Fqn;
import org.jboss.cache.Node;
import org.jboss.cache.NodeSPI;
+import org.jboss.cache.Region;
+import org.jboss.cache.RegionManager;
import org.jboss.cache.buddyreplication.BuddyManager;
+import org.jboss.cache.eviction.EvictedEventNode;
+import org.jboss.cache.eviction.NodeEventType;
import org.jboss.cache.factories.NodeFactory;
import org.jboss.cache.loader.CacheLoader;
import org.jboss.cache.loader.NodeData;
@@ -22,6 +26,8 @@
import java.io.IOException;
import java.io.ObjectInputStream;
import java.util.HashSet;
+import java.util.Iterator;
+import java.util.Map;
import java.util.Set;
public class DefaultStateTransferIntegrator implements StateTransferIntegrator
@@ -287,11 +293,21 @@
name = fqn.get(size - 1);
+ Map attrs = nd.getAttributes();
+
// We handle this NodeData. Create a TreeNode and
// integrate its data
- Node target = factory.createDataNode(name, fqn, parent, nd.getAttributes(), false);
+ Node target = factory.createDataNode(name, fqn, parent, attrs, false);
parent.getNodeSPI().addChild(name, target);
+ // JBCACHE-913
+ Region region = cache.getRegion(fqn, false);
+ if (region != null && region.getEvictionPolicy() != null)
+ {
+ region.putNodeEvent(new EvictedEventNode(fqn, NodeEventType.ADD_NODE_EVENT,
+ attrs == null ? 0 : attrs.size()));
+ }
+
// Recursively call, which will walk down the tree
// and return the next NodeData that's a child of our parent
nd = integrateStateTransferChildren(target, offset, in);
More information about the jboss-cvs-commits
mailing list