org.apache.axis2.classloader
Class BeanInfoCache
java.lang.Object
org.apache.axis2.classloader.BeanInfoCache
public final class BeanInfoCache
- extends Object
BeanInfo cache that stores introspection results by bean class and stop class. This goes
beyond the caching provided by the JRE, which only caches the results of
Introspector.getBeanInfo(Class), but not the results of
Introspector.getBeanInfo(Class, Class) (with non null stop class).
To avoid class loader leaks, this class should not be used as a singleton if the introspected
classes are loaded from class loaders that are children of the class loader which holds the
reference to the cache. In such scenarios, use getCachedBeanInfo(Class, Class).
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
BeanInfoCache
public BeanInfoCache()
getBeanInfo
public BeanInfo getBeanInfo(Class<?> beanClass,
Class<?> stopClass)
throws IntrospectionException
- Introspect on a Java bean and return a cached
BeanInfo object.
- Parameters:
beanClass - The bean class to be analyzed.stopClass - The base class at which to stop the analysis; may be null.
- Returns:
- A
BeanInfo object describing the target bean.
- Throws:
IntrospectionException - if an exception occurs during introspection.- See Also:
Introspector.getBeanInfo(Class, Class)
getCachedBeanInfo
public static BeanInfo getCachedBeanInfo(Class<?> beanClass,
Class<?> stopClass)
throws IntrospectionException
- Locate an appropriate
BeanInfoCache and return a cached BeanInfo object.
This method ensures that caching the BeanInfo object will not result in a class
loader leak.
- Parameters:
beanClass - The bean class to be analyzed.stopClass - The base class at which to stop the analysis; may be null.
- Returns:
- A
BeanInfo object describing the target bean.
- Throws:
IntrospectionException - if an exception occurs during introspection.
Copyright © 2004-2012 The Apache Software Foundation. All Rights Reserved.