Class AutoProxyUtils
- java.lang.Object
- org.springframework.aop.framework.autoproxy.AutoProxyUtils
public abstract class AutoProxyUtils extends Object
Utilities for auto-proxy aware components. Mainly for internal use within the framework.- Since:
- 2.0.3
- Author:
- Juergen Hoeller
- See Also:
AbstractAutoProxyCreator
Field Summary
Fields Modifier and Type Field Description static String
ORIGINAL_TARGET_CLASS_ATTRIBUTE
Bean definition attribute that indicates the original target class of an auto-proxied bean, e.g.static String
PRESERVE_TARGET_CLASS_ATTRIBUTE
Bean definition attribute that may indicate whether a given bean is supposed to be proxied with its target class (in case of it getting proxied in the first place).
Constructor Summary
Constructors Constructor Description AutoProxyUtils()
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static Class<?>
determineTargetClass(ConfigurableListableBeanFactory beanFactory, String beanName)
Determine the original target class for the specified bean, if possible, otherwise falling back to a regulargetType
lookup.static boolean
shouldProxyTargetClass(ConfigurableListableBeanFactory beanFactory, String beanName)
Determine whether the given bean should be proxied with its target class rather than its interfaces.
Field Detail
PRESERVE_TARGET_CLASS_ATTRIBUTE
public static final String PRESERVE_TARGET_CLASS_ATTRIBUTE
Bean definition attribute that may indicate whether a given bean is supposed to be proxied with its target class (in case of it getting proxied in the first place). The value isBoolean.TRUE
orBoolean.FALSE
.Proxy factories can set this attribute if they built a target class proxy for a specific bean, and want to enforce that bean can always be cast to its target class (even if AOP advices get applied through auto-proxying).
ORIGINAL_TARGET_CLASS_ATTRIBUTE
public static final String ORIGINAL_TARGET_CLASS_ATTRIBUTE
Bean definition attribute that indicates the original target class of an auto-proxied bean, e.g. to be used for the introspection of annotations on the target class behind an interface-based proxy.
Constructor Detail
AutoProxyUtils
public AutoProxyUtils()
Method Detail
shouldProxyTargetClass
public static boolean shouldProxyTargetClass(ConfigurableListableBeanFactory beanFactory, String beanName)
Determine whether the given bean should be proxied with its target class rather than its interfaces. Checks the"preserveTargetClass" attribute
of the corresponding bean definition.- Parameters:
beanFactory
- the containing ConfigurableListableBeanFactorybeanName
- the name of the bean- Returns:
- whether the given bean should be proxied with its target class
determineTargetClass
public static Class<?> determineTargetClass(ConfigurableListableBeanFactory beanFactory, String beanName)
Determine the original target class for the specified bean, if possible, otherwise falling back to a regulargetType
lookup.- Parameters:
beanFactory
- the containing ConfigurableListableBeanFactorybeanName
- the name of the bean- Returns:
- the original target class as stored in the bean definition, if any
- Since:
- 4.2.3
- See Also:
BeanFactory.getType(String)