Package io.jmix.data.impl
Class EntityListenerManager
java.lang.Object
io.jmix.data.impl.EntityListenerManager
This bean allows to register and fire entity listeners.
 
Usually entity listeners are registered declaratively with @Listeners annotation on entity class.
 Methods addListener(Class, Class) and addListener(Class, String) allow to add listeners dynamically,
 e.g. to an entity from a base project.
- 
Nested Class SummaryNested ClassesModifier and TypeClassDescriptionprotected static classprotected static class
- 
Field SummaryFieldsModifier and TypeFieldDescriptionprotected org.springframework.beans.factory.BeanFactoryprotected Map<EntityListenerManager.Key,List> protected booleanprotected ReadWriteLockprotected ThreadLocal<List<EntityListenerManager.ListenerExecution>>
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionvoidaddListener(Class<?> entityClass, Class<?> listenerClass) Register an entity listener by its class.voidaddListener(Class<?> entityClass, String listenerBeanName) Register an entity listener which is a ManagedBean.voidenable(boolean enable) protected List<?>findListener(Class<?> entityClass, EntityListenerType type) voidfireListener(Object entity, EntityListenerType type, String storeName) getDeclaredListeners(Class<?> entityClass) protected List<?>getListener(Class<?> entityClass, EntityListenerType type) protected voidlogExecution(EntityListenerType type, Object entity) voidremoveListener(Class<?> entityClass, Class<?> listenerClass) Unregister an entity listener.voidremoveListener(Class<?> entityClass, String listenerBeanName) Unregister an entity listener.
- 
Field Details- 
beanFactory@Autowired protected org.springframework.beans.factory.BeanFactory beanFactory
- 
cache
- 
dynamicListeners
- 
lock
- 
enabledprotected volatile boolean enabled
- 
threadLocalExecutions
 
- 
- 
Constructor Details- 
EntityListenerManagerpublic EntityListenerManager()
 
- 
- 
Method Details- 
addListenerRegister an entity listener by its class. The listener instance will be instantiated as a plain object.- Parameters:
- entityClass- entity
- listenerClass- listener class
 
- 
removeListenerUnregister an entity listener.- Parameters:
- entityClass- entity
- listenerClass- listener class
 
- 
addListenerRegister an entity listener which is a ManagedBean.- Parameters:
- entityClass- entity
- listenerBeanName- listener bean name
 
- 
removeListenerUnregister an entity listener.- Parameters:
- entityClass- entity
- listenerBeanName- listener bean name
 
- 
fireListener
- 
enablepublic void enable(boolean enable) 
- 
logExecution
- 
getListener
- 
findListener
- 
getDeclaredListeners
 
-