[jboss-cvs] JBossAS SVN: r103936 - projects/security/security-jboss-sx/branches/2.0.4.SP3_JBPAPP-4086/jbosssx/src/main/java/org/jboss/security/authorization/modules.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Apr 13 16:47:06 EDT 2010
Author: mmoyses
Date: 2010-04-13 16:47:06 -0400 (Tue, 13 Apr 2010)
New Revision: 103936
Modified:
projects/security/security-jboss-sx/branches/2.0.4.SP3_JBPAPP-4086/jbosssx/src/main/java/org/jboss/security/authorization/modules/AbstractAuthorizationModule.java
Log:
JBPAPP-4086: backporting SECURITY-493
Modified: projects/security/security-jboss-sx/branches/2.0.4.SP3_JBPAPP-4086/jbosssx/src/main/java/org/jboss/security/authorization/modules/AbstractAuthorizationModule.java
===================================================================
--- projects/security/security-jboss-sx/branches/2.0.4.SP3_JBPAPP-4086/jbosssx/src/main/java/org/jboss/security/authorization/modules/AbstractAuthorizationModule.java 2010-04-13 20:44:15 UTC (rev 103935)
+++ projects/security/security-jboss-sx/branches/2.0.4.SP3_JBPAPP-4086/jbosssx/src/main/java/org/jboss/security/authorization/modules/AbstractAuthorizationModule.java 2010-04-13 20:47:06 UTC (rev 103936)
@@ -59,6 +59,9 @@
/** Map of delegates for the various layers */
protected Map<ResourceType,String> delegateMap = new HashMap<ResourceType,String>();
+ /** A map that is available to reduce the loadClass synchronization */
+ protected static Map<String, Class<?> > clazzMap = new HashMap<String, Class<?> >();
+
/**
* @see AuthorizationModule#authorize(Resource)
*/
@@ -162,7 +165,13 @@
throws Exception
{
ClassLoader tcl = SecurityActions.getContextClassLoader();
- Class<?> clazz = tcl.loadClass(delegateStr);
+ Class<?> clazz = clazzMap.get(delegateStr);
+ if(clazz == null)
+ {
+ clazz = tcl.loadClass(delegateStr);
+ clazzMap.put(delegateStr, clazz);
+ }
+
return (AuthorizationModuleDelegate)clazz.newInstance();
}
More information about the jboss-cvs-commits
mailing list