Spring Framework

Class AutoProxyRegistrar

  extended by org.springframework.context.annotation.AutoProxyRegistrar
All Implemented Interfaces:

public class AutoProxyRegistrar
extends java.lang.Object
implements ImportBeanDefinitionRegistrar

Registers an auto proxy creator against the current BeanDefinitionRegistry as appropriate based on an @Enable* annotation having mode and proxyTargetClass attributes set to the correct values.

Chris Beams
See Also:

Constructor Summary
Method Summary
 void registerBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry)
          Register, escalate, and configure the standard auto proxy creator (APC) against the given registry.
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Detail


public AutoProxyRegistrar()
Method Detail


public void registerBeanDefinitions(AnnotationMetadata importingClassMetadata,
                                    BeanDefinitionRegistry registry)
Register, escalate, and configure the standard auto proxy creator (APC) against the given registry. Works by finding the nearest annotation declared on the importing @Configuration class that has both mode and proxyTargetClass attributes. If mode is set to PROXY, the APC is registered; if proxyTargetClass is set to true, then the APC is forced to use subclass (CGLIB) proxying.

Several @Enable* annotations expose both mode and proxyTargetClass attributes. It is important to note that most of these capabilities end up sharing a single APC. For this reason, this implementation doesn't "care" exactly which annotation it finds -- as long as it exposes the right mode and proxyTargetClass attributes, the APC can be registered and configured all the same.

Specified by:
registerBeanDefinitions in interface ImportBeanDefinitionRegistrar
importingClassMetadata - annotation metadata of the importing class
registry - current bean definition registry

Spring Framework