[jboss-cvs] JBossRemoting/src/main/org/jboss/remoting ...

Ron Sigal ron_sigal at yahoo.com
Thu Oct 11 01:24:53 EDT 2007


  User: rsigal  
  Date: 07/10/11 01:24:53

  Modified:    src/main/org/jboss/remoting  Tag: remoting_2_2_2_GA_CP
                        AbstractInvoker.java
  Log:
  JBREM-811:  ClassLoader is created in AccessController.doPrivileged().
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.12.4.10.14.1 +34 -3     JBossRemoting/src/main/org/jboss/remoting/AbstractInvoker.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: AbstractInvoker.java
  ===================================================================
  RCS file: /cvsroot/jboss/JBossRemoting/src/main/org/jboss/remoting/AbstractInvoker.java,v
  retrieving revision 1.12.4.10
  retrieving revision 1.12.4.10.14.1
  diff -u -b -r1.12.4.10 -r1.12.4.10.14.1
  --- AbstractInvoker.java	17 Jan 2007 05:09:24 -0000	1.12.4.10
  +++ AbstractInvoker.java	11 Oct 2007 05:24:53 -0000	1.12.4.10.14.1
  @@ -37,6 +37,9 @@
   import javax.net.SocketFactory;
   import java.io.IOException;
   import java.lang.reflect.Constructor;
  +import java.security.AccessController;
  +import java.security.PrivilegedActionException;
  +import java.security.PrivilegedExceptionAction;
   import java.util.HashMap;
   import java.util.Map;
   import java.util.Collection;
  @@ -51,7 +54,7 @@
    *
    * @author <a href="mailto:jhaynie at vocalocity.net">Jeff Haynie</a>
    * @author <a href="mailto:telrod at e2technologies.net">Tom Elrod</a>
  - * @version $Revision: 1.12.4.10 $
  + * @version $Revision: 1.12.4.10.14.1 $
    */
   public abstract class AbstractInvoker implements Invoker
   {
  @@ -73,7 +76,21 @@
   
      public AbstractInvoker(InvokerLocator locator, Map configuration)
      {
  -      this.classbyteloader = new ClassByteClassLoader(this.getClass().getClassLoader());
  +	  try
  +	  {
  +	      this.classbyteloader = (ClassByteClassLoader)AccessController.doPrivileged( new PrivilegedExceptionAction()
  +	      {
  +	         public Object run() throws Exception
  +	         {
  +	        	 return new ClassByteClassLoader(this.getClass().getClassLoader());
  +	         }
  +	      });
  +	  }
  +	  catch (PrivilegedActionException e)
  +	  {
  +		  log.error(e.toString(), e);
  +		  throw new RuntimeException("Can't create a ClassLoader", e);
  +	  }
         this.locator = locator;
   
         if (configuration != null)
  @@ -218,7 +235,21 @@
       */
      public synchronized void setClassLoader(ClassLoader classloader)
      {
  -      this.classbyteloader = new ClassByteClassLoader(classloader);
  +	  try
  +	  {
  +	      this.classbyteloader = (ClassByteClassLoader)AccessController.doPrivileged( new PrivilegedExceptionAction()
  +	      {
  +	         public Object run() throws Exception
  +	         {
  +	        	 return new ClassByteClassLoader(this.getClass().getClassLoader());
  +	         }
  +	      });
  +	  }
  +	  catch (PrivilegedActionException e)
  +	  {
  +		  log.error(e.toString(), e);
  +		  throw new RuntimeException("Can't create a ClassLoader", e);
  +	  }
      }
   
      public synchronized ClassLoader getClassLoader()
  
  
  



More information about the jboss-cvs-commits mailing list