Remove domainReplication attribute from ClusterManager.
authorkfujino <kfujino@13f79535-47bb-0310-9956-ffa450edef68>
Wed, 4 Aug 2010 08:59:48 +0000 (08:59 +0000)
committerkfujino <kfujino@13f79535-47bb-0310-9956-ffa450edef68>
Wed, 4 Aug 2010 08:59:48 +0000 (08:59 +0000)
git-svn-id: https://svn.apache.org/repos/asf/tomcat/trunk@982165 13f79535-47bb-0310-9956-ffa450edef68

14 files changed:
java/org/apache/catalina/ha/CatalinaCluster.java
java/org/apache/catalina/ha/ClusterManager.java
java/org/apache/catalina/ha/authenticator/ClusterSingleSignOn.java
java/org/apache/catalina/ha/session/BackupManager.java
java/org/apache/catalina/ha/session/DeltaManager.java
java/org/apache/catalina/ha/session/DeltaSession.java
java/org/apache/catalina/ha/session/JvmRouteBinderValve.java
java/org/apache/catalina/ha/session/mbeans-descriptors.xml
java/org/apache/catalina/ha/tcp/ReplicationValve.java
java/org/apache/catalina/ha/tcp/SimpleTcpCluster.java
java/org/apache/catalina/ha/tcp/mbeans-descriptors.xml
webapps/docs/changelog.xml
webapps/docs/config/cluster-interceptor.xml
webapps/docs/config/cluster-manager.xml

index 5c629e0..e3cb88e 100644 (file)
@@ -77,13 +77,6 @@ public interface CatalinaCluster extends Cluster {
      * @param dest Member
      */
     public void send(ClusterMessage msg, Member dest);
-    
-    /**
-     * Sends a message to a all members at local cluster domain
-     *
-     * @param msg ClusterMessage
-     */
-    public void sendClusterDomain(ClusterMessage msg);
 
     /**
      * Returns that cluster has members.
index a984955..5efd945 100644 (file)
@@ -78,18 +78,6 @@ public interface ClusterManager extends Manager {
    public CatalinaCluster getCluster();
 
    public void setCluster(CatalinaCluster cluster);
-   
-   /**
-    * @return Manager send only to same cluster domain.
-    * @since 5.5.10
-    */
-   public boolean doDomainReplication();
-
-   /**
-    * @param domainReplication Flag value.
-    * @since 5.5.10
-    */
-   public void setDomainReplication(boolean domainReplication);
 
    public ReplicationStream getReplicationStream(byte[] data) throws IOException;
 
index 1181d67..d64eab8 100644 (file)
@@ -201,7 +201,7 @@ public class ClusterSingleSignOn
 
             msg.setAction(SingleSignOnMessage.ADD_SESSION);
 
-            cluster.sendClusterDomain(msg);
+            cluster.send(msg);
 
             if (containerLog.isDebugEnabled())
                 containerLog.debug("SingleSignOnMessage Send with action "
@@ -241,7 +241,7 @@ public class ClusterSingleSignOn
 
             msg.setAction(SingleSignOnMessage.DEREGISTER_SESSION);
 
-            cluster.sendClusterDomain(msg);
+            cluster.send(msg);
             if (containerLog.isDebugEnabled())
                 containerLog.debug("SingleSignOnMessage Send with action "
                                    + msg.getAction());
@@ -275,7 +275,7 @@ public class ClusterSingleSignOn
                                         ssoId, null);
             msg.setAction(SingleSignOnMessage.LOGOUT_SESSION);
 
-            cluster.sendClusterDomain(msg);
+            cluster.send(msg);
             if (containerLog.isDebugEnabled())
                 containerLog.debug("SingleSignOnMessage Send with action "
                                    + msg.getAction());
@@ -317,7 +317,7 @@ public class ClusterSingleSignOn
             msg.setUsername(username);
             msg.setPassword(password);
 
-            cluster.sendClusterDomain(msg);
+            cluster.send(msg);
             if (containerLog.isDebugEnabled())
                 containerLog.debug("SingleSignOnMessage Send with action "
                                    + msg.getAction());
@@ -375,7 +375,7 @@ public class ClusterSingleSignOn
             msg.setUsername(username);
             msg.setPassword(password);
 
-            cluster.sendClusterDomain(msg);
+            cluster.send(msg);
             if (containerLog.isDebugEnabled())
                 containerLog.debug("SingleSignOnMessage Send with action "
                                    + msg.getAction());
@@ -415,7 +415,7 @@ public class ClusterSingleSignOn
 
             msg.setAction(SingleSignOnMessage.REMOVE_SESSION);
 
-            cluster.sendClusterDomain(msg);
+            cluster.send(msg);
             if (containerLog.isDebugEnabled())
                 containerLog.debug("SingleSignOnMessage Send with action "
                                    + msg.getAction());
index 69136e2..95d9c6c 100644 (file)
@@ -82,16 +82,6 @@ public class BackupManager extends ClusterManagerBase implements MapOwner {
     public void messageDataReceived(ClusterMessage msg) {
     }
 
-    public boolean doDomainReplication() {
-        return false;
-    }
-
-    /**
-     * @param sendClusterDomainOnly The sendClusterDomainOnly to set.
-     */
-    public void setDomainReplication(boolean sendClusterDomainOnly) {
-    }
-
     public void setExpireSessionsOnShutdown(boolean expireSessionsOnShutdown)
     {
         mExpireSessionsOnShutdown = expireSessionsOnShutdown;
index e6b8eb7..90c28f1 100644 (file)
@@ -100,7 +100,6 @@ public class DeltaManager extends ClusterManagerBase{
     private volatile boolean stateTransfered = false ;
     private int stateTransferTimeout = 60;
     private boolean sendAllSessions = true;
-    private boolean sendClusterDomainOnly = true ;
     private int sendAllSessionsSize = 1000 ;
     
     /**
@@ -346,20 +345,6 @@ public class DeltaManager extends ClusterManagerBase{
     }
     
     /**
-     * @return Returns the sendClusterDomainOnly.
-     */
-    public boolean doDomainReplication() {
-        return sendClusterDomainOnly;
-    }
-    
-    /**
-     * @param sendClusterDomainOnly The sendClusterDomainOnly to set.
-     */
-    public void setDomainReplication(boolean sendClusterDomainOnly) {
-        this.sendClusterDomainOnly = sendClusterDomainOnly;
-    }
-
-    /**
      * @return Returns the stateTimestampDrop.
      */
     public boolean isStateTimestampDrop() {
@@ -511,10 +496,7 @@ public class DeltaManager extends ClusterManagerBase{
      */
     protected void send(SessionMessage msg) {
         if(cluster != null) {
-            if(doDomainReplication())
-                cluster.sendClusterDomain(msg);
-            else
-                cluster.send(msg);
+            cluster.send(msg);
         }
     }
 
@@ -1234,7 +1216,7 @@ public class DeltaManager extends ClusterManagerBase{
      *            requesting node
      */
     protected void messageReceived(SessionMessage msg, Member sender) {
-        if(doDomainReplication() && !checkSenderDomain(msg,sender)) {
+        if(!checkSenderDomain(msg,sender)) {
             return;
         }
         ClassLoader contextLoader = Thread.currentThread().getContextClassLoader();
@@ -1492,7 +1474,6 @@ public class DeltaManager extends ClusterManagerBase{
         result.notifySessionListenersOnReplication = notifySessionListenersOnReplication;
         result.stateTransferTimeout = stateTransferTimeout;
         result.sendAllSessions = sendAllSessions;
-        result.sendClusterDomainOnly = sendClusterDomainOnly ;
         result.sendAllSessionsSize = sendAllSessionsSize;
         result.sendAllSessionsWaitTime = sendAllSessionsWaitTime ; 
         result.receiverQueue = receiverQueue ;
index d05141e..7456e4a 100644 (file)
@@ -402,11 +402,7 @@ public class DeltaSession extends StandardSession implements Externalizable,Clus
             CatalinaCluster cluster = dmanager.getCluster();
             ClusterMessage msg = dmanager.requestCompleted(expiredId, true);
             if (msg != null) {
-                if(dmanager.doDomainReplication()) {
-                    cluster.sendClusterDomain(msg);
-                } else {
-                    cluster.send(msg);
-                }
+                cluster.send(msg);
             }
         }
 
index 49eb0d4..d3312cf 100644 (file)
@@ -421,10 +421,7 @@ public class JvmRouteBinderValve extends ValveBase implements ClusterValve {
         Context context = request.getContext();
         msg.setContextPath(context.getPath());
         msg.setHost(context.getParent().getName());
-        if(manager.doDomainReplication())
-            cluster.sendClusterDomain(msg);
-        else
-            cluster.send(msg);
+        cluster.send(msg);
     }
 
     /**
index ba50f52..8c73b7e 100644 (file)
       description="Total number of sessions created by this manager"
       type="long"/>
     <attribute
-      name="sendClusterDomainOnly"
-      is="true"
-      description="The sendClusterDomainOnly flag send sessions only to members as same cluster domain"
-      type="boolean"/>
-    <attribute
       name="sessionIdLength"
       description="The session id length (in bytes) of Sessions created by this Manager"
       type="int"/>
index e3a8434..eed1d2e 100644 (file)
@@ -539,11 +539,7 @@ public class ReplicationValve
     protected void send(ClusterManager manager, CatalinaCluster cluster, String sessionId) {
         ClusterMessage msg = manager.requestCompleted(sessionId);
         if (msg != null) {
-            if(manager.doDomainReplication()) {
-                cluster.sendClusterDomain(msg);
-            } else {
-                cluster.send(msg);
-            }
+            cluster.send(msg);
             if(doStatistics())
                 nrOfSendRequests++;
         }
index f772ef3..1558cf6 100644 (file)
@@ -769,16 +769,6 @@ public class SimpleTcpCluster extends LifecycleBase
     public void send(ClusterMessage msg) {
         send(msg, null);
     }
-
-    /**
-     * send message to all cluster members same cluster domain
-     * 
-     * @see org.apache.catalina.ha.CatalinaCluster#send(org.apache.catalina.ha.ClusterMessage)
-     */
-    public void sendClusterDomain(ClusterMessage msg) {
-        send(msg,null);
-    } 
-
     
     /**
      * send a cluster message to one member
index 03c9296..7e34065 100644 (file)
         type="org.apache.catalina.ha.ClusterMessage"/>
     </operation>
     <operation
-      name="sendClusterDomain"
-      description="send message to all cluster members with same domain"
-      impact="ACTION"
-      returnType="void">
-      <parameter
-        name="message"
-        description="replication message"
-        type="org.apache.catalina.ha.ClusterMessage"/>
-    </operation>
-    <operation
       name="start"
       description="Start the cluster"
       impact="ACTION"
index 36abe04..a663664 100644 (file)
       </update>
     </changelog>
   </subsection>
+  <subsection name="Cluster">
+    <changelog>
+      <fix>
+        Remove domainReplication attribute from ClusterManager. 
+        If you send session to only same domain, use DomainFilterInterceptor. 
+        (kfujino)
+      </fix>
+    </changelog>
+  </subsection>
   <subsection name="Web applications">
     <changelog>
       <fix>
index 661580c..6298306 100644 (file)
    </attributes>
   </subsection>
 
+  <subsection name="org.apache.catalina.tribes.group.interceptors.DomainFilterInterceptor Attributes">
+   <attributes>
+     <attribute name="domain" required="true">
+       The logical cluster domain that this Interceptor accepts.
+       Two different type of values are possible:<br/>
+       1. Regular string values like &quot;staging-domain&quot; or &quot;tomcat-cluster&quot; will be converted into bytes 
+       using ISO-8859-1 encoding.<br/>
+       2. byte array in string form, for example {216,123,12,3}<br/>
+     </attribute>
+   </attributes>
+  </subsection>
   <subsection name="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor Attributes">
    <attributes>
      <attribute name="className" required="true">
index 6df58ed..1c9db99 100644 (file)
   </subsection> 
   <subsection name="org.apache.catalina.ha.session.DeltaManager Attributes">
     <attributes>
-      <attribute name="domainReplication" required="false">
-        Set to true if you wish sessions to be replicated only to members that
-        have the same logical domain set. If set to false, session replication
-        will ignore the domain setting the 
-        <code><a href="cluster-membership.html">&lt;Membership&gt;</a></code>
-        element.
-      </attribute>
       <attribute name="expireSessionsOnShutdown" required="false">
         When a web application is being shutdown, Tomcat issues an expire call
         to each session to notify all the listeners. If you wish for all