Author: kfujino Date: Thu Apr 3 07:33:04 2014 New Revision: 1584274 URL: http://svn.apache.org/r1584274 Log: Move to org.apache.catalina.ha.session.ClusterManagerBase common logics of org.apache.catalina.ha.session.BackupManager and org.apache.catalina.ha.session.DeltaManager.
Modified: tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java tomcat/trunk/java/org/apache/catalina/ha/session/ClusterManagerBase.java tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java tomcat/trunk/webapps/docs/changelog.xml Modified: tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java?rev=1584274&r1=1584273&r2=1584274&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java (original) +++ tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java Thu Apr 3 07:33:04 2014 @@ -20,12 +20,10 @@ import java.util.HashSet; import java.util.Iterator; import java.util.Set; -import org.apache.catalina.Cluster; import org.apache.catalina.DistributedManager; import org.apache.catalina.LifecycleException; import org.apache.catalina.LifecycleState; import org.apache.catalina.Session; -import org.apache.catalina.ha.CatalinaCluster; import org.apache.catalina.ha.ClusterManager; import org.apache.catalina.ha.ClusterMessage; import org.apache.catalina.tribes.Channel; @@ -141,16 +139,7 @@ public class BackupManager extends Clust super.startInternal(); try { - if (getCluster() == null) { - Cluster cluster = getContext().getCluster(); - if (cluster instanceof CatalinaCluster) { - setCluster((CatalinaCluster)cluster); - } else { - throw new LifecycleException( - sm.getString("backupManager.noCluster", getName())); - } - } - cluster.registerManager(this); + if (cluster == null) throw new LifecycleException(sm.getString("backupManager.noCluster", getName())); LazyReplicatedMap<String,Session> map = new LazyReplicatedMap<>( this, cluster.getChannel(), rpcTimeout, getMapName(), getClassLoaders(), terminateOnStartFailure); @@ -194,7 +183,6 @@ public class BackupManager extends Clust map.breakdown(); } - cluster.removeManager(this); super.stopInternal(); } 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=1584274&r1=1584273&r2=1584274&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/ha/session/ClusterManagerBase.java (original) +++ tomcat/trunk/java/org/apache/catalina/ha/session/ClusterManagerBase.java Thu Apr 3 07:33:04 2014 @@ -20,6 +20,7 @@ import java.io.ByteArrayInputStream; import java.io.IOException; import java.util.regex.Pattern; +import org.apache.catalina.Cluster; import org.apache.catalina.Context; import org.apache.catalina.LifecycleException; import org.apache.catalina.Loader; @@ -228,7 +229,20 @@ public abstract class ClusterManagerBase } @Override + protected void startInternal() throws LifecycleException { + super.startInternal(); + if (getCluster() == null) { + Cluster cluster = getContext().getCluster(); + if (cluster instanceof CatalinaCluster) { + setCluster((CatalinaCluster)cluster); + } + } + if (cluster != null) cluster.registerManager(this); + } + + @Override protected void stopInternal() throws LifecycleException { + if (cluster != null) cluster.removeManager(this); replicationValve = null; super.stopInternal(); } Modified: tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java?rev=1584274&r1=1584273&r2=1584274&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java (original) +++ tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java Thu Apr 3 07:33:04 2014 @@ -26,14 +26,11 @@ import java.util.ArrayList; import java.util.Date; import java.util.Iterator; -import org.apache.catalina.Cluster; -import org.apache.catalina.Context; import org.apache.catalina.Engine; import org.apache.catalina.Host; import org.apache.catalina.LifecycleException; import org.apache.catalina.LifecycleState; import org.apache.catalina.Session; -import org.apache.catalina.ha.CatalinaCluster; import org.apache.catalina.ha.ClusterManager; import org.apache.catalina.ha.ClusterMessage; import org.apache.catalina.session.ManagerBase; @@ -723,20 +720,6 @@ public class DeltaManager extends Cluste // Load unloaded sessions, if any try { - //the channel is already running - Cluster cluster = getCluster() ; - // stop remove cluster binding - if(cluster == null) { - Context context = getContext() ; - if (context != null) { - cluster = context.getCluster(); - if(cluster instanceof CatalinaCluster) { - setCluster((CatalinaCluster) cluster); - } else { - cluster = null; - } - } - } if (cluster == null) { log.error(sm.getString("deltaManager.noCluster", getName())); return; @@ -755,9 +738,6 @@ public class DeltaManager extends Cluste if (log.isInfoEnabled()) { log.info(sm.getString("deltaManager.startClustering", getName())); } - //to survice context reloads, as only a stop/start is called, not - // createManager - cluster.registerManager(this); getAllClusterSessions(); @@ -929,7 +909,6 @@ public class DeltaManager extends Cluste } // Require a new random number generator if we are restarted - getCluster().removeManager(this); super.stopInternal(); } Modified: tomcat/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1584274&r1=1584273&r2=1584274&view=diff ============================================================================== --- tomcat/trunk/webapps/docs/changelog.xml (original) +++ tomcat/trunk/webapps/docs/changelog.xml Thu Apr 3 07:33:04 2014 @@ -109,6 +109,12 @@ <code>crossContext</code>=true. The context that refers to the different context must be set to <code>crossContext</code>=true. (kfujino) </fix> + <scode> + Move to <code>org.apache.catalina.ha.session.ClusterManagerBase</code> + common logics of + <code>org.apache.catalina.ha.session.BackupManager</code> and + <code>org.apache.catalina.ha.session.DeltaManager</code>. (kfujino) + </scode> </changelog> </subsection> <subsection name="Web applications"> --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org