Package ognl

Class OgnlCache


  • public class OgnlCache
    extends java.lang.Object
    This class takes care of all the internal caching for OGNL.
    • Field Detail

      • 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
      • 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
      • ctorParameterTypesCache

        private final Cache<java.lang.reflect.Constructor<?>,​java.lang.Class<?>[]> ctorParameterTypesCache
      • methodPermCache

        private final Cache<java.lang.reflect.Method,​java.lang.Boolean> methodPermCache
    • Constructor Detail

      • OgnlCache

        public OgnlCache()
    • 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
      • getPropertyDescriptor

        public java.util.Map<java.lang.String,​java.beans.PropertyDescriptor> getPropertyDescriptor​(java.lang.Class<?> clazz)
                                                                                                  throws CacheException
        Throws:
        CacheException
      • setMethodAccessor

        public void setMethodAccessor​(java.lang.Class<?> clazz,
                                      MethodAccessor accessor)
      • setPropertyAccessor

        public void setPropertyAccessor​(java.lang.Class<?> clazz,
                                        PropertyAccessor accessor)
      • setClassCacheInspector

        public void setClassCacheInspector​(ClassCacheInspector inspector)
        Registers the specified ClassCacheInspector with 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.
      • getMethodPerm

        @Deprecated
        public boolean getMethodPerm​(java.lang.reflect.Method method)
                              throws CacheException
        Deprecated.
        since 3.4.6, forRemoval = true
        Throws:
        CacheException
      • clear

        public void clear()
      • setElementsAccessor

        public void setElementsAccessor​(java.lang.Class<?> clazz,
                                        ElementsAccessor accessor)
      • 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