[jboss-cvs] JBossAS SVN: r68131 - trunk/security/src/main/org/jboss/security/integration.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Mon Dec 10 23:58:08 EST 2007
Author: anil.saldhana at jboss.com
Date: 2007-12-10 23:58:07 -0500 (Mon, 10 Dec 2007)
New Revision: 68131
Modified:
trunk/security/src/main/org/jboss/security/integration/JNDIBasedSecurityManagement.java
Log:
reduce jndi lookup and cache the security managers
Modified: trunk/security/src/main/org/jboss/security/integration/JNDIBasedSecurityManagement.java
===================================================================
--- trunk/security/src/main/org/jboss/security/integration/JNDIBasedSecurityManagement.java 2007-12-11 03:57:05 UTC (rev 68130)
+++ trunk/security/src/main/org/jboss/security/integration/JNDIBasedSecurityManagement.java 2007-12-11 04:58:07 UTC (rev 68131)
@@ -79,11 +79,16 @@
protected boolean enableIdentity = false;
/** Enable the Audit feature */
- protected boolean enableAudit = true;
+ protected boolean enableAudit = true;
-
private CachePolicy cachePolicy = null;
+ private ConcurrentHashMap<String,AuthenticationManager> authMgrMap = new ConcurrentHashMap<String,AuthenticationManager>();
+ private ConcurrentHashMap<String,AuthorizationManager> authzMgrMap = new ConcurrentHashMap<String,AuthorizationManager>();
+ private ConcurrentHashMap<String,MappingManager> mappingMgrMap = new ConcurrentHashMap<String,MappingManager>();
+ private ConcurrentHashMap<String,AuditManager> auditMgrMap = new ConcurrentHashMap<String,AuditManager>();
+ private ConcurrentHashMap<String,IdentityTrustManager> idmMgrMap = new ConcurrentHashMap<String,IdentityTrustManager>();
+
public JNDIBasedSecurityManagement()
{
}
@@ -94,7 +99,14 @@
try
{
if(this.enableAudit)
- auditManager = (AuditManager) lookUpJNDI(securityDomain + "/auditMgr");
+ {
+ auditManager = this.auditMgrMap.get(securityDomain);
+ if(auditManager == null)
+ {
+ auditManager = (AuditManager) lookUpJNDI(securityDomain + "/auditMgr");
+ this.auditMgrMap.put(securityDomain, auditManager);
+ }
+ }
}
catch(Exception e)
{
@@ -108,7 +120,12 @@
AuthenticationManager am = null;
try
{
- am = (AuthenticationManager) lookUpJNDI(securityDomain + "/authenticationMgr");
+ am = this.authMgrMap.get(securityDomain);
+ if(am == null)
+ {
+ am = (AuthenticationManager) lookUpJNDI(securityDomain + "/authenticationMgr");
+ this.authMgrMap.put(securityDomain, am);
+ }
}
catch(Exception e)
{
@@ -122,7 +139,12 @@
AuthorizationManager am = null;
try
{
- am = (AuthorizationManager) lookUpJNDI(securityDomain + "/authorizationMgr");
+ am = this.authzMgrMap.get(securityDomain);
+ if(am == null)
+ {
+ am = (AuthorizationManager) lookUpJNDI(securityDomain + "/authorizationMgr");
+ this.authzMgrMap.put(securityDomain, am);
+ }
}
catch(Exception e)
{
@@ -137,7 +159,14 @@
try
{
if(this.enableIdentity)
- am = (IdentityTrustManager) lookUpJNDI(securityDomain + "/identityTrustMgr");
+ {
+ am = this.idmMgrMap.get(securityDomain);
+ if(am == null)
+ {
+ am = (IdentityTrustManager) lookUpJNDI(securityDomain + "/identityTrustMgr");
+ this.idmMgrMap.put(securityDomain, am);
+ }
+ }
}
catch(Exception e)
{
@@ -151,7 +180,12 @@
MappingManager am = null;
try
{
- am = (MappingManager) lookUpJNDI(securityDomain + "/mappingMgr");
+ am = this.mappingMgrMap.get(securityDomain);
+ if(am == null)
+ {
+ am = (MappingManager) lookUpJNDI(securityDomain + "/mappingMgr");
+ this.mappingMgrMap.put(securityDomain, am);
+ }
}
catch(Exception e)
{
More information about the jboss-cvs-commits
mailing list