[jboss-cvs] JBossCache/src/org/jboss/cache/optimistic ...

Galder Zamarreno galder.zamarreno at jboss.com
Wed Feb 28 05:58:41 EST 2007


  User: gzamarreno
  Date: 07/02/28 05:58:41

  Modified:    src/org/jboss/cache/optimistic   Tag:
                        Branch_JBossCache_1_4_0 WorkspaceNode.java
                        WorkspaceNodeImpl.java
  Log:
  [JBCACHE-927] Fix backported to the 1.4.x branch
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.12.2.2  +4 -1      JBossCache/src/org/jboss/cache/optimistic/WorkspaceNode.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: WorkspaceNode.java
  ===================================================================
  RCS file: /cvsroot/jboss/JBossCache/src/org/jboss/cache/optimistic/WorkspaceNode.java,v
  retrieving revision 1.12.2.1
  retrieving revision 1.12.2.2
  diff -u -b -r1.12.2.1 -r1.12.2.2
  --- WorkspaceNode.java	11 Dec 2006 17:29:45 -0000	1.12.2.1
  +++ WorkspaceNode.java	28 Feb 2007 10:58:41 -0000	1.12.2.2
  @@ -20,6 +20,7 @@
    * 
    * @author Manik Surtani (<a href="mailto:manik at jboss.org">manik at jboss.org</a>)
    * @author Steve Woodcock (<a href="mailto:stevew at jofti.com">stevew at jofti.com</a>)
  + * @author <a href="mailto:galder.zamarreno at jboss.com">Galder Zamarreno</a>
    */
   public interface WorkspaceNode extends TreeNode
   {
  @@ -41,7 +42,7 @@
   
       public boolean isDeleted();
   
  -    public void markAsDeleted();
  +    public void markAsDeleted(boolean marker);
   
       public TransactionWorkspace getTransactionWorkspace();
   
  @@ -54,4 +55,6 @@
      boolean isVersioningImplicit();
   
      void setVersioningImplicit(boolean b);
  +
  +   void addChild(WorkspaceNode workspaceNode);
   }
  
  
  
  1.21.2.5  +27 -2     JBossCache/src/org/jboss/cache/optimistic/WorkspaceNodeImpl.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: WorkspaceNodeImpl.java
  ===================================================================
  RCS file: /cvsroot/jboss/JBossCache/src/org/jboss/cache/optimistic/WorkspaceNodeImpl.java,v
  retrieving revision 1.21.2.4
  retrieving revision 1.21.2.5
  diff -u -b -r1.21.2.4 -r1.21.2.5
  --- WorkspaceNodeImpl.java	11 Dec 2006 17:29:45 -0000	1.21.2.4
  +++ WorkspaceNodeImpl.java	28 Feb 2007 10:58:41 -0000	1.21.2.5
  @@ -15,6 +15,7 @@
   import org.jboss.cache.OptimisticTreeNode;
   import org.jboss.cache.TreeCache;
   import org.jboss.cache.TreeNode;
  +import org.jboss.cache.Node;
   import org.jboss.cache.factories.NodeFactory;
   import org.jboss.cache.lock.IdentityLock;
   import org.jboss.cache.lock.LockingException;
  @@ -25,12 +26,15 @@
   import java.util.HashSet;
   import java.util.Map;
   import java.util.Set;
  +import java.util.Collection;
  +import java.util.Iterator;
   
   /**
    * Wraps a DataNode and adds versioning and other meta data to it.
    *
    * @author Manik Surtani (<a href="mailto:manik at jboss.org">manik at jboss.org</a>)
    * @author Steve Woodcock (<a href="mailto:stevew at jofti.com">stevew at jofti.com</a>)
  + * @author <a href="mailto:galder.zamarreno at jboss.com">Galder Zamarreno</a>
    */
   public class WorkspaceNodeImpl implements WorkspaceNode
   {
  @@ -302,9 +306,25 @@
           return optimisticDataMap;
       }
   
  -    public void markAsDeleted()
  +    public void markAsDeleted(boolean marker)
       {
  -        deleted = true;
  +       markAsDeleted(marker, false);
  +    }
  +
  +    public void markAsDeleted(boolean marker, boolean recursive)
  +    {
  +       deleted = marker;
  +       if (recursive && optimisticChildNodeMap != null)
  +       {
  +          synchronized (this)
  +          {
  +             Collection values = optimisticChildNodeMap.values();
  +             for (Iterator it=values.iterator(); it.hasNext();)
  +             {
  +                ((WorkspaceNodeImpl) it.next()).markAsDeleted(marker, true);
  +             }
  +          }
  +       }
       }
   
       public boolean isDeleted()
  @@ -581,4 +601,9 @@
           return
             "WorkNode fqn=" + getFqn() + " " + sb + "ver=" + version;
       }
  +
  +    public void addChild(WorkspaceNode child)
  +    {
  +       optimisticChildNodeMap.put(child.getName(), child.getNode());
  +    }
   }
  
  
  



More information about the jboss-cvs-commits mailing list