Class EventListenerMethodProcessor
java.lang.Object
org.springframework.context.event.EventListenerMethodProcessor
- All Implemented Interfaces:
Aware,BeanFactoryPostProcessor,SmartInitializingSingleton,ApplicationContextAware
public class EventListenerMethodProcessor
extends Object
implements SmartInitializingSingleton, ApplicationContextAware, BeanFactoryPostProcessor
Registers
EventListener methods as individual ApplicationListener instances.
Implements BeanFactoryPostProcessor (as of 5.1) primarily for early retrieval,
avoiding AOP checks for this processor bean and its EventListenerFactory delegates.- Since:
- 4.2
- Author:
- Stephane Nicoll, Juergen Hoeller, Sebastien Deleuze
- See Also:
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidInvoked right at the end of the singleton pre-instantiation phase, with a guarantee that all regular singleton beans have been created already.voidpostProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) Modify the application context's internal bean factory after its standard initialization.voidsetApplicationContext(ApplicationContext applicationContext) Set the ApplicationContext that this object runs in.
-
Field Details
-
logger
-
-
Constructor Details
-
EventListenerMethodProcessor
public EventListenerMethodProcessor()
-
-
Method Details
-
setApplicationContext
Description copied from interface:ApplicationContextAwareSet the ApplicationContext that this object runs in. Normally this call will be used to initialize the object.Invoked after population of normal bean properties but before an init callback such as
InitializingBean.afterPropertiesSet()or a custom init-method. Invoked afterResourceLoaderAware.setResourceLoader(org.springframework.core.io.ResourceLoader),ApplicationEventPublisherAware.setApplicationEventPublisher(org.springframework.context.ApplicationEventPublisher)andMessageSourceAware, if applicable.- Specified by:
setApplicationContextin interfaceApplicationContextAware- Parameters:
applicationContext- the ApplicationContext object to be used by this object- See Also:
-
postProcessBeanFactory
Description copied from interface:BeanFactoryPostProcessorModify the application context's internal bean factory after its standard initialization. All bean definitions will have been loaded, but no beans will have been instantiated yet. This allows for overriding or adding properties even to eager-initializing beans.- Specified by:
postProcessBeanFactoryin interfaceBeanFactoryPostProcessor- Parameters:
beanFactory- the bean factory used by the application context
-
afterSingletonsInstantiated
public void afterSingletonsInstantiated()Description copied from interface:SmartInitializingSingletonInvoked right at the end of the singleton pre-instantiation phase, with a guarantee that all regular singleton beans have been created already.ListableBeanFactory.getBeansOfType(java.lang.Class<T>)calls within this method won't trigger accidental side effects during bootstrap.NOTE: This callback won't be triggered for singleton beans lazily initialized on demand after
BeanFactorybootstrap, and not for any other bean scope either. Carefully use it for beans with the intended bootstrap semantics only.- Specified by:
afterSingletonsInstantiatedin interfaceSmartInitializingSingleton
-