[jboss-cvs] Picketbox SVN: r362 - in trunk: security-jboss-sx/jbosssx/src/main/java/org/jboss/security/plugins/audit and 3 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Dec 4 14:03:43 EST 2012


Author: sguilhen at redhat.com
Date: 2012-12-04 14:03:43 -0500 (Tue, 04 Dec 2012)
New Revision: 362

Modified:
   trunk/security-jboss-sx/identity/src/main/java/org/jboss/security/identity/plugins/IdentityFactory.java
   trunk/security-jboss-sx/jbosssx/src/main/java/org/jboss/security/plugins/audit/JBossAuditManager.java
   trunk/security-jboss-sx/jbosssx/src/main/java/org/jboss/security/plugins/authorization/JBossAuthorizationContext.java
   trunk/security-jboss-sx/jbosssx/src/main/java/org/jboss/security/plugins/mapping/JBossMappingManager.java
   trunk/security-spi/identity/src/main/java/org/jboss/security/identity/RoleFactory.java
Log:
JBPAPP-10300 Remove all class caches

Modified: trunk/security-jboss-sx/identity/src/main/java/org/jboss/security/identity/plugins/IdentityFactory.java
===================================================================
--- trunk/security-jboss-sx/identity/src/main/java/org/jboss/security/identity/plugins/IdentityFactory.java	2012-11-28 16:44:46 UTC (rev 361)
+++ trunk/security-jboss-sx/identity/src/main/java/org/jboss/security/identity/plugins/IdentityFactory.java	2012-12-04 19:03:43 UTC (rev 362)
@@ -24,8 +24,6 @@
 import java.lang.reflect.Constructor;
 import java.security.Principal;
 import java.security.acl.Group;
-import java.util.Map;
-import java.util.WeakHashMap;
 
 import org.jboss.security.identity.Identity;
 import org.jboss.security.identity.Role;
@@ -46,8 +44,6 @@
 
    public static final String GROUP_CLASS = "org.jboss.security.SimpleGroup";
    
-   private static Map<String, Class<?> > clazzMap = new WeakHashMap<String, Class<?>>();
-
    public static Principal createPrincipal(String name) throws Exception
    {
       return (Principal) loadClass(PRINCIPAL_CLASS, name);
@@ -90,12 +86,7 @@
 
    private static Object loadClass(String className, String ctorArg) throws Exception
    {
-      Class<?> clazz = clazzMap.get(className);
-      if( clazz == null )
-      {
-         clazz = SecurityActions.getClass(className);
-         clazzMap.put(className, clazz); 
-      }
+      Class<?> clazz = SecurityActions.getClass(className);
       Constructor<?> ctr = clazz.getConstructor(new Class[]
       {String.class});
       return ctr.newInstance(new Object[]
@@ -104,13 +95,7 @@
 
    private static Object loadClass(String className, String ctorArg1, String ctorArg2) throws Exception
    {
-      Class<?> clazz = clazzMap.get(className);
-      if( clazz == null )
-      {
-         clazz = SecurityActions.getClass(className);
-         clazzMap.put(className, clazz); 
-      }
-      
+      Class<?> clazz = SecurityActions.getClass(className);
       Constructor<?> ctr = clazz.getConstructor(new Class[]
       {String.class, String.class});
       return ctr.newInstance(new Object[]
@@ -119,12 +104,7 @@
 
    private static Object loadClass(String className, String ctorArg1, Role ctorArg2) throws Exception
    {
-      Class<?> clazz = clazzMap.get(className);
-      if( clazz == null )
-      {
-         clazz = SecurityActions.getClass(className);
-         clazzMap.put(className, clazz); 
-      }
+      Class<?> clazz = SecurityActions.getClass(className);
       Constructor<?> ctr = clazz.getConstructor(new Class[]
       {String.class, Role.class});
       return ctr.newInstance(new Object[]

Modified: trunk/security-jboss-sx/jbosssx/src/main/java/org/jboss/security/plugins/audit/JBossAuditManager.java
===================================================================
--- trunk/security-jboss-sx/jbosssx/src/main/java/org/jboss/security/plugins/audit/JBossAuditManager.java	2012-11-28 16:44:46 UTC (rev 361)
+++ trunk/security-jboss-sx/jbosssx/src/main/java/org/jboss/security/plugins/audit/JBossAuditManager.java	2012-12-04 19:03:43 UTC (rev 362)
@@ -9,11 +9,8 @@
 import java.security.PrivilegedActionException;
 import java.util.Arrays;
 import java.util.List;
-import java.util.Map;
-import java.util.WeakHashMap;
 import java.util.concurrent.ConcurrentHashMap;
 
-import org.jboss.logging.Logger;
 import org.jboss.security.PicketBoxLogger;
 import org.jboss.security.SecurityUtil;
 import org.jboss.security.audit.AuditContext;
@@ -40,8 +37,6 @@
    
    private static AuditContext defaultContext = null;
    
-   private static Map<String, Class<?> > clazzMap = new WeakHashMap<String, Class<?>>();
-   
    static
    {
       defaultContext = new JBossAuditContext("Default_Context");
@@ -136,13 +131,7 @@
           String pname = ape.getName();
           try
           {
-             Class<?> clazz = clazzMap.get(pname);
-             if( clazz == null )
-             {
-                clazz = SecurityActions.loadClass(cl, pname);
-                clazzMap.put(pname, clazz); 
-             }
-             
+             Class<?> clazz = SecurityActions.loadClass(cl, pname);
              ac.addProvider((AuditProvider) clazz.newInstance());
           }
           catch (Exception e)

Modified: trunk/security-jboss-sx/jbosssx/src/main/java/org/jboss/security/plugins/authorization/JBossAuthorizationContext.java
===================================================================
--- trunk/security-jboss-sx/jbosssx/src/main/java/org/jboss/security/plugins/authorization/JBossAuthorizationContext.java	2012-11-28 16:44:46 UTC (rev 361)
+++ trunk/security-jboss-sx/jbosssx/src/main/java/org/jboss/security/plugins/authorization/JBossAuthorizationContext.java	2012-12-04 19:03:43 UTC (rev 362)
@@ -27,7 +27,6 @@
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
-import java.util.WeakHashMap;
 
 import javax.security.auth.Subject;
 import javax.security.auth.callback.CallbackHandler;
@@ -79,9 +78,6 @@
    //Application Policy can be injected
    private ApplicationPolicy applicationPolicy = null;
    
-   //Clazz instance cache map to minimize load class synchronization
-   private static Map< String,Class<?> > clazzMap = new WeakHashMap<String, Class<?>>();
-
    public JBossAuthorizationContext(String name)
    {
       this.securityDomainName = name; 
@@ -309,25 +305,21 @@
       AuthorizationModule am = null;
       try
       {
-         Class<?> clazz = clazzMap.get(name);
-         if(clazz == null)
+         Class<?> clazz;
+         try
          {
-            try
+            if(cl == null)
             {
-               if(cl == null)
-               {
-            	   cl = getClass().getClassLoader();
-               }
-               clazz = cl.loadClass(name);
+               cl = getClass().getClassLoader();
             }
-            catch (Exception ignore)
-            {
-               ClassLoader tcl = SecurityActions.getContextClassLoader();
-               clazz = tcl.loadClass(name);
-            }
-            clazzMap.put(name, clazz);
-         }   
-            
+            clazz = cl.loadClass(name);
+         }
+         catch (Exception ignore)
+         {
+            ClassLoader tcl = SecurityActions.getContextClassLoader();
+            clazz = tcl.loadClass(name);
+         }
+
          am = (AuthorizationModule) clazz.newInstance();
       }
       catch (Exception e)

Modified: trunk/security-jboss-sx/jbosssx/src/main/java/org/jboss/security/plugins/mapping/JBossMappingManager.java
===================================================================
--- trunk/security-jboss-sx/jbosssx/src/main/java/org/jboss/security/plugins/mapping/JBossMappingManager.java	2012-11-28 16:44:46 UTC (rev 361)
+++ trunk/security-jboss-sx/jbosssx/src/main/java/org/jboss/security/plugins/mapping/JBossMappingManager.java	2012-12-04 19:03:43 UTC (rev 362)
@@ -22,8 +22,6 @@
 package org.jboss.security.plugins.mapping;
 
 import java.util.ArrayList;
-import java.util.Map;
-import java.util.WeakHashMap;
 
 import org.jboss.security.PicketBoxLogger;
 import org.jboss.security.PicketBoxMessages;
@@ -50,55 +48,53 @@
 {   
    private String securityDomain;
 
-   private static Map<String, Class<?> > clazzMap = new WeakHashMap<String, Class<?>>();
-
    public JBossMappingManager(String domain)
    {
-      this.securityDomain = SecurityUtil.unprefixSecurityDomain(domain);  
-   } 
-   
+      this.securityDomain = SecurityUtil.unprefixSecurityDomain(domain);
+   }
+
    public <T> MappingContext<T> getMappingContext(String mappingType)
    {
-      //Apply Mapping Logic  
+      //Apply Mapping Logic
       ApplicationPolicy aPolicy = SecurityConfiguration.getApplicationPolicy(securityDomain);
-      
+
       if(aPolicy == null)
       {
          String defaultDomain = SecurityConstants.DEFAULT_APPLICATION_POLICY;
          aPolicy = SecurityConfiguration.getApplicationPolicy(defaultDomain);
-      } 
+      }
       if(aPolicy == null )
          throw PicketBoxMessages.MESSAGES.failedToObtainApplicationPolicy(securityDomain);
 
       MappingContext<T> mc = null;
-      MappingInfo rmi = aPolicy.getMappingInfo(mappingType);  
+      MappingInfo rmi = aPolicy.getMappingInfo(mappingType);
 
       if( rmi != null)
          mc = generateMappingContext(mc, rmi);
-      
-      return mc; 
+
+      return mc;
    }
-   
+
    @SuppressWarnings("deprecation")
    public <T> MappingContext<T> getMappingContext(Class<T> mappingType)
-   { 
-      //Apply Mapping Logic  
+   {
+      //Apply Mapping Logic
       ApplicationPolicy aPolicy = SecurityConfiguration.getApplicationPolicy(securityDomain);
-      
+
       if(aPolicy == null)
       {
          String defaultDomain = SecurityConstants.DEFAULT_APPLICATION_POLICY;
          aPolicy = SecurityConfiguration.getApplicationPolicy(defaultDomain);
-      } 
+      }
       if(aPolicy == null )
          throw PicketBoxMessages.MESSAGES.failedToObtainApplicationPolicy(securityDomain);
 
       MappingContext<T> mc = null;
-      MappingInfo rmi = aPolicy.getMappingInfo(mappingType); 
+      MappingInfo rmi = aPolicy.getMappingInfo(mappingType);
       if( rmi != null)
         mc = generateMappingContext(mc, rmi);
-      
-      return mc; 
+
+      return mc;
    }
 
 
@@ -118,18 +114,18 @@
 	   ArrayList<MappingProvider<T>> al = new ArrayList<MappingProvider<T>>();
 
 	   for(int i = 0 ; i < mpe.length; i++)
-	   { 
+	   {
 		   MappingProvider<T> mp = getMappingProvider(moduleCL, mpe[i]);
 		   if(mp != null)
 		   {
-			   al.add(mp);   
-		   } 
+			   al.add(mp);
+		   }
 	   }
-	   return new MappingContext<T>(al); 
+	   return new MappingContext<T>(al);
    }
 
    public String getSecurityDomain()
-   { 
+   {
       return this.securityDomain;
    }
 
@@ -140,12 +136,7 @@
       try
       {
          String fqn = mme.getMappingModuleName();
-         Class<?> clazz = clazzMap.get(fqn);
-         if( clazz == null )
-         {
-        	clazz = SecurityActions.loadClass(cl, fqn);
-            clazzMap.put(fqn, clazz); 
-         } 
+         Class<?> clazz = SecurityActions.loadClass(cl, fqn);
          mp = (MappingProvider<T>) clazz.newInstance();
          mp.init(mme.getOptions());
       }

Modified: trunk/security-spi/identity/src/main/java/org/jboss/security/identity/RoleFactory.java
===================================================================
--- trunk/security-spi/identity/src/main/java/org/jboss/security/identity/RoleFactory.java	2012-11-28 16:44:46 UTC (rev 361)
+++ trunk/security-spi/identity/src/main/java/org/jboss/security/identity/RoleFactory.java	2012-12-04 19:03:43 UTC (rev 362)
@@ -25,9 +25,7 @@
 import java.security.AccessController;
 import java.security.PrivilegedActionException;
 import java.security.PrivilegedExceptionAction;
-import java.util.Map;
-import java.util.WeakHashMap;
- 
+
 /**
  *  Factory to create roles
  *  @author Anil.Saldhana at redhat.com
@@ -39,28 +37,23 @@
    private static String SIMPLE_ROLE_CLASS = "org.jboss.security.identity.plugins.SimpleRole";
    private static String SIMPLE_ROLEGROUP_CLASS = "org.jboss.security.identity.plugins.SimpleRoleGroup";
    
-   private static Map<String, Class<?> > clazzMap = new WeakHashMap<String, Class<?>>();
-   
    public static Role createRole(final String name) throws PrivilegedActionException
    {
      return AccessController.doPrivileged(new PrivilegedExceptionAction<Role>()
      { 
       public Role run() throws Exception
-      { 
-         Class<?> clazz = clazzMap.get(SIMPLE_ROLE_CLASS);
-         if( clazz == null )
+      {
+         Class<?> clazz;
+         try
          {
-            try
-            {
-               clazz = getClass().getClassLoader().loadClass(name);
-            }
-            catch (Exception e)
-            {
-               ClassLoader tcl = Thread.currentThread().getContextClassLoader();
-               clazz = tcl.loadClass(SIMPLE_ROLE_CLASS);
-            }
+            clazz = getClass().getClassLoader().loadClass(name);
          }
-         
+         catch (Exception e)
+         {
+            ClassLoader tcl = Thread.currentThread().getContextClassLoader();
+            clazz = tcl.loadClass(SIMPLE_ROLE_CLASS);
+         }
+
          Constructor<?> ctr = clazz.getConstructor(new Class[] {String.class});
          return (Role) ctr.newInstance(new Object[]{name});
       }  
@@ -73,20 +66,17 @@
      { 
       public RoleGroup run() throws Exception
       { 
-         Class<?> clazz = clazzMap.get(SIMPLE_ROLEGROUP_CLASS);
-         if( clazz == null )
+         Class<?> clazz;
+         try
          {
-            try
-            {
-               clazz = getClass().getClassLoader().loadClass(name);
-            }
-            catch (Exception e)
-            {
-               ClassLoader tcl = Thread.currentThread().getContextClassLoader();
-               clazz = tcl.loadClass(SIMPLE_ROLEGROUP_CLASS);
-            }
+            clazz = getClass().getClassLoader().loadClass(name);
          }
-          
+         catch (Exception e)
+         {
+            ClassLoader tcl = Thread.currentThread().getContextClassLoader();
+            clazz = tcl.loadClass(SIMPLE_ROLEGROUP_CLASS);
+         }
+
          Constructor<?> ctr = clazz.getConstructor(new Class[] {String.class});
          return (RoleGroup) ctr.newInstance(new Object[]{name});
       }  



More information about the jboss-cvs-commits mailing list