You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2010/07/29 14:22:28 UTC

svn commit: r980421 - in /tomcat/trunk/java/org/apache/catalina/ha/session: BackupManager.java ClusterManagerBase.java DeltaManager.java

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-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org