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: [email protected]
For additional commands, e-mail: [email protected]