org.springframework.beans.factory.support
Interface MergedBeanDefinitionPostProcessor

All Superinterfaces:
BeanPostProcessor
All Known Implementing Classes:
AutowiredAnnotationBeanPostProcessor, CommonAnnotationBeanPostProcessor, InitDestroyAnnotationBeanPostProcessor, PersistenceAnnotationBeanPostProcessor, RequiredAnnotationBeanPostProcessor

public interface MergedBeanDefinitionPostProcessor
extends BeanPostProcessor

Post-processor callback interface for merged bean definitions at runtime. BeanPostProcessor implementations may implement this sub-interface in order to post-process the merged bean definition that the Spring BeanFactory uses to create a specific bean instance.

The postProcessMergedBeanDefinition(org.springframework.beans.factory.support.RootBeanDefinition, java.lang.Class, java.lang.String) method may for example introspect the bean definition in order to prepare some cached metadata before post-processing actual instances of a bean. It is also allowed to modify the bean definition but only for bean definition properties which are actually intended for concurrent modification. Basically, this only applies to operations defined on the RootBeanDefinition itself but not to the properties of its base classes.

Since:
2.5
Author:
Juergen Hoeller

Method Summary
 void postProcessMergedBeanDefinition(RootBeanDefinition beanDefinition, Class<?> beanType, String beanName)
          Post-process the given merged bean definition for the specified bean.
 
Methods inherited from interface org.springframework.beans.factory.config.BeanPostProcessor
postProcessAfterInitialization, postProcessBeforeInitialization
 

Method Detail

postProcessMergedBeanDefinition

void postProcessMergedBeanDefinition(RootBeanDefinition beanDefinition,
                                     Class<?> beanType,
                                     String beanName)
Post-process the given merged bean definition for the specified bean.

Parameters:
beanDefinition - the merged bean definition for the bean
beanType - the actual type of the managed bean instance
beanName - the name of the bean