[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