Author: mbenson
Date: Sun Sep  8 20:08:55 2013
New Revision: 1520911

URL: http://svn.apache.org/r1520911
Log:
get rid of unnecessary locking given cache use

Modified:
    
commons/proper/proxy/branches/version-2.0-work/asm4/src/main/java/org/apache/commons/proxy2/asm4/ASM4ProxyFactory.java

Modified: 
commons/proper/proxy/branches/version-2.0-work/asm4/src/main/java/org/apache/commons/proxy2/asm4/ASM4ProxyFactory.java
URL: 
http://svn.apache.org/viewvc/commons/proper/proxy/branches/version-2.0-work/asm4/src/main/java/org/apache/commons/proxy2/asm4/ASM4ProxyFactory.java?rev=1520911&r1=1520910&r2=1520911&view=diff
==============================================================================
--- 
commons/proper/proxy/branches/version-2.0-work/asm4/src/main/java/org/apache/commons/proxy2/asm4/ASM4ProxyFactory.java
 (original)
+++ 
commons/proper/proxy/branches/version-2.0-work/asm4/src/main/java/org/apache/commons/proxy2/asm4/ASM4ProxyFactory.java
 Sun Sep  8 20:08:55 2013
@@ -41,7 +41,6 @@ import java.security.AccessController;
 import java.security.PrivilegedAction;
 import java.security.ProtectionDomain;
 import java.util.concurrent.atomic.AtomicInteger;
-import java.util.concurrent.locks.ReentrantLock;
 
 public class ASM4ProxyFactory extends AbstractSubclassingProxyFactory
 {
@@ -76,7 +75,6 @@ public class ASM4ProxyFactory extends Ab
         private static final AtomicInteger CLASS_NUMBER = new AtomicInteger(0);
         private static final String CLASSNAME_PREFIX = "CommonsProxyASM4_";
         private static final String HANDLER_NAME = "__handler";
-        private static final ReentrantLock LOCK = new ReentrantLock();
 
         @Override
         public Class<?> generateProxyClass(final ClassLoader classLoader, 
final Class<?>... proxyClasses)
@@ -89,25 +87,6 @@ public class ASM4ProxyFactory extends Ab
 
                        try
                        {
-                           return classLoader.loadClass(proxyName);
-                       }
-                       catch (Exception e)
-                       {
-                           // no-op
-                       }
-
-                       LOCK.lock();
-                       try
-                       {
-                           try
-                           { // Try it again, another thread may have beaten 
this one...
-                               return classLoader.loadClass(proxyName);
-                           }
-                           catch (Exception e)
-                           {
-                               // no-op
-                           }
-
                            final byte[] proxyBytes = generateProxy(superclass, 
classFileName, implementationMethods, interfaces);
                            return Unsafe.defineClass(classLoader, superclass, 
proxyName, proxyBytes);
                        }
@@ -115,9 +94,6 @@ public class ASM4ProxyFactory extends Ab
                        {
                            throw new ProxyFactoryException(e);
                        }
-                       finally {
-                           LOCK.unlock();
-                       }
         }
 
         public static <T> T constructProxy(final Class<?> clazz, final 
java.lang.reflect.InvocationHandler handler) throws IllegalStateException


Reply via email to