[jboss-remoting-commits] JBoss Remoting SVN: r5281 - remoting2/branches/2.2/src/main/org/jboss/remoting/serialization/impl/java.

jboss-remoting-commits at lists.jboss.org jboss-remoting-commits at lists.jboss.org
Tue May 19 16:52:23 EDT 2009


Author: ron.sigal at jboss.com
Date: 2009-05-19 16:52:23 -0400 (Tue, 19 May 2009)
New Revision: 5281

Modified:
   remoting2/branches/2.2/src/main/org/jboss/remoting/serialization/impl/java/JavaSerializationManager.java
Log:
JBREM-1127: Updates ObjectInputStream classloader if RemotingClassLoader's useCurrentThreadClassLoader variable is set to true.

Modified: remoting2/branches/2.2/src/main/org/jboss/remoting/serialization/impl/java/JavaSerializationManager.java
===================================================================
--- remoting2/branches/2.2/src/main/org/jboss/remoting/serialization/impl/java/JavaSerializationManager.java	2009-05-19 20:51:11 UTC (rev 5280)
+++ remoting2/branches/2.2/src/main/org/jboss/remoting/serialization/impl/java/JavaSerializationManager.java	2009-05-19 20:52:23 UTC (rev 5281)
@@ -31,6 +31,7 @@
 import org.jboss.logging.Logger;
 import org.jboss.remoting.Version;
 import org.jboss.remoting.loading.ObjectInputStreamWithClassLoader;
+import org.jboss.remoting.loading.RemotingClassLoader;
 import org.jboss.remoting.serialization.SerializationManager;
 import org.jboss.remoting.serialization.SerializationStreamFactory;
 import org.jboss.remoting.serialization.IMarshalledValue;
@@ -204,8 +205,14 @@
       Object obj = null;
       if(inputStream instanceof ObjectInputStreamWithClassLoader)
       {
-         if(((ObjectInputStreamWithClassLoader) inputStream).getClassLoader() == null)
+         ClassLoader cl = ((ObjectInputStreamWithClassLoader) inputStream).getClassLoader();
+         boolean useCurrentThreadClassLoader = false;
+         if (cl instanceof RemotingClassLoader)
          {
+            useCurrentThreadClassLoader = ((RemotingClassLoader) cl).isUseCurrentThreadClassLoader();
+         }
+         if(cl == null || useCurrentThreadClassLoader)
+         {
             ((ObjectInputStreamWithClassLoader) inputStream).setClassLoader(customClassLoader);
          }
          objInputStream = (ObjectInputStream) inputStream;




More information about the jboss-remoting-commits mailing list