Author: mcucchiara
Date: Sun Oct 16 22:58:05 2011
New Revision: 1184953
URL: http://svn.apache.org/viewvc?rev=1184953&view=rev
Log:
Allow to dynamically change securityManager implementation
Modified:
commons/proper/ognl/branches/new-cache-approach/src/main/java/org/apache/commons/ognl/OgnlRuntime.java
commons/proper/ognl/branches/new-cache-approach/src/main/java/org/apache/commons/ognl/internal/entry/MethodPermCacheEntryFactory.java
Modified:
commons/proper/ognl/branches/new-cache-approach/src/main/java/org/apache/commons/ognl/OgnlRuntime.java
URL:
http://svn.apache.org/viewvc/commons/proper/ognl/branches/new-cache-approach/src/main/java/org/apache/commons/ognl/OgnlRuntime.java?rev=1184953&r1=1184952&r2=1184953&view=diff
==============================================================================
---
commons/proper/ognl/branches/new-cache-approach/src/main/java/org/apache/commons/ognl/OgnlRuntime.java
(original)
+++
commons/proper/ognl/branches/new-cache-approach/src/main/java/org/apache/commons/ognl/OgnlRuntime.java
Sun Oct 16 22:58:05 2011
@@ -217,8 +217,11 @@ public class OgnlRuntime
static final IntHashMap<Integer, Boolean> _methodAccessCache = new
IntHashMap<Integer, Boolean>( );
+ private static final MethodPermCacheEntryFactory
methodPermCacheEntryFactory =
+ new MethodPermCacheEntryFactory( _securityManager );
+
static final Cache<Method, Boolean> _methodPermCache =
- new ConcurrentHashMapCache<Method, Boolean>( new
MethodPermCacheEntryFactory( _securityManager ) );
+ new ConcurrentHashMapCache<Method, Boolean>(
methodPermCacheEntryFactory );
static ClassCacheInspector _cacheInspector;
@@ -744,6 +747,7 @@ public class OgnlRuntime
public static void setSecurityManager( SecurityManager value )
{
_securityManager = value;
+ methodPermCacheEntryFactory.setSecurityManager( value );
}
/**
Modified:
commons/proper/ognl/branches/new-cache-approach/src/main/java/org/apache/commons/ognl/internal/entry/MethodPermCacheEntryFactory.java
URL:
http://svn.apache.org/viewvc/commons/proper/ognl/branches/new-cache-approach/src/main/java/org/apache/commons/ognl/internal/entry/MethodPermCacheEntryFactory.java?rev=1184953&r1=1184952&r2=1184953&view=diff
==============================================================================
---
commons/proper/ognl/branches/new-cache-approach/src/main/java/org/apache/commons/ognl/internal/entry/MethodPermCacheEntryFactory.java
(original)
+++
commons/proper/ognl/branches/new-cache-approach/src/main/java/org/apache/commons/ognl/internal/entry/MethodPermCacheEntryFactory.java
Sun Oct 16 22:58:05 2011
@@ -34,4 +34,9 @@ public class MethodPermCacheEntryFactory
}
}
+
+ public void setSecurityManager( SecurityManager securityManager )
+ {
+ this.securityManager = securityManager;
+ }
}