Author: kfujino
Date: Mon Apr 13 02:31:01 2015
New Revision: 1673087

URL: http://svn.apache.org/r1673087
Log:
Add new attribute that send all actions for session across Tomcat cluster nodes.

Modified:
    tomcat/trunk/java/org/apache/catalina/ha/session/ClusterManagerBase.java
    tomcat/trunk/java/org/apache/catalina/ha/session/DeltaSession.java
    tomcat/trunk/webapps/docs/config/cluster-manager.xml

Modified: 
tomcat/trunk/java/org/apache/catalina/ha/session/ClusterManagerBase.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/session/ClusterManagerBase.java?rev=1673087&r1=1673086&r2=1673087&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/ha/session/ClusterManagerBase.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/ha/session/ClusterManagerBase.java 
Mon Apr 13 02:31:01 2015
@@ -67,6 +67,11 @@ public abstract class ClusterManagerBase
      */
     private volatile ReplicationValve replicationValve = null ;
 
+    /**
+     * send all actions of session attributes.
+     */
+    private boolean recordAllActions = false;
+
     /*
      * @see org.apache.catalina.ha.ClusterManager#getCluster()
      */
@@ -120,6 +125,14 @@ public abstract class ClusterManagerBase
         }
     }
 
+    public boolean isRecordAllActions() {
+        return recordAllActions;
+    }
+
+    public void setRecordAllActions(boolean recordAllActions) {
+        this.recordAllActions = recordAllActions;
+    }
+
     /**
      * Check whether the given session attribute should be distributed
      *
@@ -210,6 +223,7 @@ public abstract class ClusterManagerBase
              // Ignore
             }
         }
+        copy.setRecordAllActions(isRecordAllActions());
     }
 
     /**

Modified: tomcat/trunk/java/org/apache/catalina/ha/session/DeltaSession.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/session/DeltaSession.java?rev=1673087&r1=1673086&r2=1673087&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/ha/session/DeltaSession.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/ha/session/DeltaSession.java Mon Apr 
13 02:31:01 2015
@@ -594,7 +594,9 @@ public class DeltaSession extends Standa
         lock();
         try {
             if (deltaRequest == null) {
-                deltaRequest = new DeltaRequest(getIdInternal(), false);
+                boolean recordAllActions = manager instanceof 
ClusterManagerBase &&
+                        ((ClusterManagerBase)manager).isRecordAllActions();
+                deltaRequest = new DeltaRequest(getIdInternal(), 
recordAllActions);
             } else {
                 deltaRequest.reset();
                 deltaRequest.setSessionId(getIdInternal());

Modified: tomcat/trunk/webapps/docs/config/cluster-manager.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/config/cluster-manager.xml?rev=1673087&r1=1673086&r2=1673087&view=diff
==============================================================================
--- tomcat/trunk/webapps/docs/config/cluster-manager.xml (original)
+++ tomcat/trunk/webapps/docs/config/cluster-manager.xml Mon Apr 13 02:31:01 
2015
@@ -128,6 +128,13 @@
         secureRandomProvider attribute and set this attribute to the empty
         string.</p>
       </attribute>
+      <attribute name="recordAllActions" required="false">
+        <p>Flag whether send all actions for session across Tomcat cluster
+        nodes. If set to false, if already done something to the same 
attribute, 
+        make sure don't send multiple actions across Tomcat cluster nodes.
+        In that case, sends only the actions that have been added at last.
+        Default is <code>false</code>.</p>
+      </attribute>
     </attributes>
   </subsection>
   <subsection name="org.apache.catalina.ha.session.DeltaManager Attributes">



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to