Author: markt Date: Thu Jul 29 12:22:27 2010 New Revision: 980421 URL: http://svn.apache.org/viewvc?rev=980421&view=rev Log: Refactoring Change BackupManager to extend ClusterManagerBase rather than StandardManager - The functionality being inherited from StandardManager (persistence over restart) was being bypassed - Further reduces code duplication, mainly in BackupManager
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 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=980421&r1=980420&r2=980421&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java (original) +++ tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java Thu Jul 29 12:22:27 2010 @@ -16,8 +16,6 @@ */ package org.apache.catalina.ha.session; -import java.io.ByteArrayInputStream; -import java.io.IOException; import java.util.Iterator; import org.apache.catalina.LifecycleException; @@ -26,9 +24,7 @@ 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.StandardManager; import org.apache.catalina.tribes.Channel; -import org.apache.catalina.tribes.io.ReplicationStream; import org.apache.catalina.tribes.tipis.LazyReplicatedMap; import org.apache.catalina.tribes.tipis.AbstractReplicatedMap.MapOwner; import org.apache.catalina.util.LifecycleBase; @@ -40,9 +36,9 @@ import org.apache.juli.logging.LogFactor *...@author Filip Hanik *...@version 1.0 */ -public class BackupManager extends StandardManager implements ClusterManager, MapOwner -{ - private static final Log log = LogFactory.getLog( BackupManager.class ); +public class BackupManager extends ClusterManagerBase implements MapOwner { + + private static final Log log = LogFactory.getLog(BackupManager.class); protected static long DEFAULT_REPL_TIMEOUT = 15000;//15 seconds @@ -111,13 +107,6 @@ public class BackupManager extends Stand } - /** - * Override persistence since they don't go hand in hand with replication for now. - */ - @Override - public void unload() throws IOException { - } - public ClusterMessage requestCompleted(String sessionId) { if (!getState().isAvailable()) return null; LazyReplicatedMap map = (LazyReplicatedMap)sessions; @@ -144,29 +133,6 @@ public class BackupManager extends Stand return new DeltaSession(this); } - public ClassLoader[] getClassLoaders() { - return ClusterManagerBase.getClassLoaders(this.container); - } - - /** - * Open Stream and use correct ClassLoader (Container) Switch - * ThreadClassLoader - * - * @param data - * @return The object input stream - * @throws IOException - */ - public ReplicationStream getReplicationStream(byte[] data) throws IOException { - return getReplicationStream(data,0,data.length); - } - - public ReplicationStream getReplicationStream(byte[] data, int offset, int length) throws IOException { - ByteArrayInputStream fis = new ByteArrayInputStream(data, offset, length); - return new ReplicationStream(fis, getClassLoaders()); - } - - - @Override public String getName() { 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=980421&r1=980420&r2=980421&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/ha/session/ClusterManagerBase.java (original) +++ tomcat/trunk/java/org/apache/catalina/ha/session/ClusterManagerBase.java Thu Jul 29 12:22:27 2010 @@ -20,6 +20,8 @@ package org.apache.catalina.ha.session; import org.apache.catalina.ha.ClusterManager; import org.apache.catalina.session.ManagerBase; import org.apache.catalina.Loader; +import org.apache.catalina.Manager; + import java.io.ByteArrayInputStream; import java.io.IOException; import org.apache.catalina.tribes.io.ReplicationStream; @@ -32,7 +34,7 @@ import org.apache.catalina.Container; */ public abstract class ClusterManagerBase extends ManagerBase - implements ClusterManager{ + implements ClusterManager { public static ClassLoader[] getClassLoaders(Container container) { Loader loader = null; @@ -70,4 +72,17 @@ public abstract class ClusterManagerBase } + // ---------------------------------------------------- persistence handler + + /** + * {...@link Manager} implementations that also implement + * {...@link ClusterManager} do not support local session persistence. + */ + public void load() { + // NOOP + } + + public void unload() { + // NOOP + } } \ No newline at end of file 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=980421&r1=980420&r2=980421&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java (original) +++ tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java Thu Jul 29 12:22:27 2010 @@ -1174,16 +1174,6 @@ public class DeltaManager extends Cluste } - // -------------------------------------------------------- persistence handler - - public void load() { - - } - - public void unload() { - - } - // -------------------------------------------------------- expire /** --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org