Package ognl
Class OgnlCache
- java.lang.Object
-
- ognl.OgnlCache
-
public class OgnlCache extends java.lang.ObjectThis class takes care of all the internal caching for OGNL.
-
-
Field Summary
Fields Modifier and Type Field Description private CacheFactorycacheFactoryprivate ClassCache<java.util.List<java.lang.reflect.Constructor<?>>>constructorCacheprivate Cache<java.lang.reflect.Constructor<?>,java.lang.Class<?>[]>ctorParameterTypesCacheprivate ClassCache<ElementsAccessor>elementsAccessorsprivate ClassCache<java.util.Map<java.lang.String,java.lang.reflect.Field>>fieldCache(package private) Cache<GenericMethodParameterTypeCacheEntry,java.lang.Class<?>[]>genericMethodParameterTypesCacheprivate Cache<PermissionCacheEntry,java.security.Permission>invokePermissionCacheprivate Cache<java.lang.reflect.Method,MethodAccessEntryValue>methodAccessCacheprivate ClassCache<MethodAccessor>methodAccessorsprivate Cache<DeclaredMethodCacheEntry,java.util.Map<java.lang.String,java.util.List<java.lang.reflect.Method>>>methodCacheprivate Cache<java.lang.reflect.Method,java.lang.Class<?>[]>methodParameterTypesCacheprivate Cache<java.lang.reflect.Method,java.lang.Boolean>methodPermCacheprivate MethodPermCacheEntryFactorymethodPermCacheEntryFactoryprivate ClassCache<NullHandler>nullHandlersprivate ClassCache<PropertyAccessor>propertyAccessors(package private) ClassCache<java.util.Map<java.lang.String,java.beans.PropertyDescriptor>>propertyDescriptorCache
-
Constructor Summary
Constructors Constructor Description OgnlCache()
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidclear()java.util.List<java.lang.reflect.Constructor<?>>getConstructor(java.lang.Class<?> clazz)ElementsAccessorgetElementsAccessor(java.lang.Class<?> clazz)java.util.Map<java.lang.String,java.lang.reflect.Field>getField(java.lang.Class<?> clazz)java.lang.Class<?>[]getGenericMethodParameterTypes(GenericMethodParameterTypeCacheEntry key)java.security.PermissiongetInvokePermission(PermissionCacheEntry permissionCacheEntry)Deprecated.since 3.4.6, forRemoval = truejava.util.Map<java.lang.String,java.util.List<java.lang.reflect.Method>>getMethod(DeclaredMethodCacheEntry declaredMethodCacheEntry)MethodAccessEntryValuegetMethodAccess(java.lang.reflect.Method method)MethodAccessorgetMethodAccessor(java.lang.Class<?> clazz)java.lang.Class<?>[]getMethodParameterTypes(java.lang.reflect.Method method)booleangetMethodPerm(java.lang.reflect.Method method)Deprecated.since 3.4.6, forRemoval = trueNullHandlergetNullHandler(java.lang.Class<?> clazz)java.lang.Class<?>[]getParameterTypes(java.lang.reflect.Constructor<?> constructor)PropertyAccessorgetPropertyAccessor(java.lang.Class<?> clazz)java.util.Map<java.lang.String,java.beans.PropertyDescriptor>getPropertyDescriptor(java.lang.Class<?> clazz)voidsetClassCacheInspector(ClassCacheInspector inspector)Registers the specifiedClassCacheInspectorwith all class reflection based internal caches.voidsetElementsAccessor(java.lang.Class<?> clazz, ElementsAccessor accessor)voidsetMethodAccessor(java.lang.Class<?> clazz, MethodAccessor accessor)voidsetNullHandler(java.lang.Class<?> clazz, NullHandler handler)voidsetPropertyAccessor(java.lang.Class<?> clazz, PropertyAccessor accessor)voidsetSecurityManager(java.lang.SecurityManager securityManager)Deprecated.since 3.4.6, forRemoval = true
-
-
-
Field Detail
-
cacheFactory
private final CacheFactory cacheFactory
-
methodAccessors
private final ClassCache<MethodAccessor> methodAccessors
-
propertyAccessors
private final ClassCache<PropertyAccessor> propertyAccessors
-
elementsAccessors
private final ClassCache<ElementsAccessor> elementsAccessors
-
nullHandlers
private final ClassCache<NullHandler> nullHandlers
-
propertyDescriptorCache
final ClassCache<java.util.Map<java.lang.String,java.beans.PropertyDescriptor>> propertyDescriptorCache
-
constructorCache
private final ClassCache<java.util.List<java.lang.reflect.Constructor<?>>> constructorCache
-
methodCache
private final Cache<DeclaredMethodCacheEntry,java.util.Map<java.lang.String,java.util.List<java.lang.reflect.Method>>> methodCache
-
invokePermissionCache
private final Cache<PermissionCacheEntry,java.security.Permission> invokePermissionCache
-
fieldCache
private final ClassCache<java.util.Map<java.lang.String,java.lang.reflect.Field>> fieldCache
-
methodParameterTypesCache
private final Cache<java.lang.reflect.Method,java.lang.Class<?>[]> methodParameterTypesCache
-
genericMethodParameterTypesCache
final Cache<GenericMethodParameterTypeCacheEntry,java.lang.Class<?>[]> genericMethodParameterTypesCache
-
ctorParameterTypesCache
private final Cache<java.lang.reflect.Constructor<?>,java.lang.Class<?>[]> ctorParameterTypesCache
-
methodAccessCache
private final Cache<java.lang.reflect.Method,MethodAccessEntryValue> methodAccessCache
-
methodPermCacheEntryFactory
private final MethodPermCacheEntryFactory methodPermCacheEntryFactory
-
methodPermCache
private final Cache<java.lang.reflect.Method,java.lang.Boolean> methodPermCache
-
-
Method Detail
-
getMethodParameterTypes
public java.lang.Class<?>[] getMethodParameterTypes(java.lang.reflect.Method method) throws CacheException- Throws:
CacheException
-
getParameterTypes
public java.lang.Class<?>[] getParameterTypes(java.lang.reflect.Constructor<?> constructor) throws CacheException- Throws:
CacheException
-
getConstructor
public java.util.List<java.lang.reflect.Constructor<?>> getConstructor(java.lang.Class<?> clazz) throws CacheException- Throws:
CacheException
-
getField
public java.util.Map<java.lang.String,java.lang.reflect.Field> getField(java.lang.Class<?> clazz) throws CacheException- Throws:
CacheException
-
getMethod
public java.util.Map<java.lang.String,java.util.List<java.lang.reflect.Method>> getMethod(DeclaredMethodCacheEntry declaredMethodCacheEntry) throws CacheException
- Throws:
CacheException
-
getPropertyDescriptor
public java.util.Map<java.lang.String,java.beans.PropertyDescriptor> getPropertyDescriptor(java.lang.Class<?> clazz) throws CacheException- Throws:
CacheException
-
getInvokePermission
@Deprecated public java.security.Permission getInvokePermission(PermissionCacheEntry permissionCacheEntry) throws CacheException
Deprecated.since 3.4.6, forRemoval = true- Throws:
CacheException
-
getMethodAccessor
public MethodAccessor getMethodAccessor(java.lang.Class<?> clazz) throws OgnlException
- Throws:
OgnlException
-
setMethodAccessor
public void setMethodAccessor(java.lang.Class<?> clazz, MethodAccessor accessor)
-
setPropertyAccessor
public void setPropertyAccessor(java.lang.Class<?> clazz, PropertyAccessor accessor)
-
getPropertyAccessor
public PropertyAccessor getPropertyAccessor(java.lang.Class<?> clazz) throws OgnlException
- Throws:
OgnlException
-
setClassCacheInspector
public void setClassCacheInspector(ClassCacheInspector inspector)
Registers the specifiedClassCacheInspectorwith all class reflection based internal caches. This may have a significant performance impact so be careful using this in production scenarios.- Parameters:
inspector- The inspector instance that will be registered with all internal cache instances.
-
getGenericMethodParameterTypes
public java.lang.Class<?>[] getGenericMethodParameterTypes(GenericMethodParameterTypeCacheEntry key) throws CacheException
- Throws:
CacheException
-
getMethodPerm
@Deprecated public boolean getMethodPerm(java.lang.reflect.Method method) throws CacheExceptionDeprecated.since 3.4.6, forRemoval = true- Throws:
CacheException
-
getMethodAccess
public MethodAccessEntryValue getMethodAccess(java.lang.reflect.Method method) throws CacheException
- Throws:
CacheException
-
clear
public void clear()
-
getElementsAccessor
public ElementsAccessor getElementsAccessor(java.lang.Class<?> clazz) throws OgnlException
- Throws:
OgnlException
-
setElementsAccessor
public void setElementsAccessor(java.lang.Class<?> clazz, ElementsAccessor accessor)
-
getNullHandler
public NullHandler getNullHandler(java.lang.Class<?> clazz) throws OgnlException
- Throws:
OgnlException
-
setNullHandler
public void setNullHandler(java.lang.Class<?> clazz, NullHandler handler)
-
setSecurityManager
@Deprecated public void setSecurityManager(java.lang.SecurityManager securityManager)
Deprecated.since 3.4.6, forRemoval = true
-
-