public interface ListenersRegistry
Core.getListenersRegistry().registerAfterCommitListener(objs -> { //pre-process entities that were committed });
The callback represents a Consumer
with its argument representing the entities which are subject
to the mentioned action. In this case, it is a List
of @IMendixObject
that were committed. The registration of a callback can be done in a custom Java action.
Once registered the callback in the example will be executed for every commit of any persistable entity in the application.
So, usually entities should be filtered, e.g. by type, to avoid executing the logic inside the callback for any entity that is being
committed in the application and thus reducing performance of the application.
A word of caution: it is not recommended to commit any Persistence Entities in the callbacks passed to
registerAfterCommitListener(Consumer)
or registerBeforeCommitListener(Consumer)
since this will trigger the listeners to be executed again thus leading to an infinite loop.
Modifier and Type | Method and Description |
---|---|
<T extends CoreAction<?>> |
addListener(ActionListener<T> actionListener)
Registers the given ActionListener to the ActionManager.
|
void |
registerAfterChangeListener(java.util.function.Consumer<IMendixObject> action)
Registers an after-change callback.
|
void |
registerAfterCommitListener(java.util.function.Consumer<java.util.List<IMendixObject>> action)
Registers an after-commit callback.
|
void |
registerAfterCreateListener(java.util.function.Consumer<IMendixObject> action)
Registers an after-create callback.
|
void |
registerAfterDeleteListener(java.util.function.Consumer<java.util.List<IMendixObject>> action)
Registers an after-delete callback.
|
void |
registerBeforeChangeListener(java.util.function.Consumer<IMendixObject> action)
Registers a before-change callback.
|
void |
registerBeforeCommitListener(java.util.function.Consumer<java.util.List<IMendixObject>> action)
Registers a before-commit callback.
|
void |
registerBeforeCreateListener(java.util.function.Consumer<IMendixObject> action)
Registers a before-create callback.
|
void |
registerBeforeDeleteListener(java.util.function.Consumer<java.util.List<IMendixObject>> action)
Registers a before-delete callback.
|
<T extends CoreAction<?>> void addListener(ActionListener<T> actionListener)
actionListener
- the ActionListener to add.void registerAfterCommitListener(java.util.function.Consumer<java.util.List<IMendixObject>> action)
action
- a Consumer
. List<IMendixObject> type parameter is the list of entities which
were committed.void registerBeforeCommitListener(java.util.function.Consumer<java.util.List<IMendixObject>> action)
action
- a Consumer
instance. List<IMendixObject> type parameter is the list of entities
which are to be committed.void registerAfterDeleteListener(java.util.function.Consumer<java.util.List<IMendixObject>> action)
action
- a Consumer
instance. List<IMendixObject> type parameter is the list of entities
which are deleted.void registerBeforeDeleteListener(java.util.function.Consumer<java.util.List<IMendixObject>> action)
action
- a Consumer
instance. List<IMendixObject> type parameter is the list of entities
which are to be deleted.void registerAfterCreateListener(java.util.function.Consumer<IMendixObject> action)
action
- a Consumer
instance. IMendixObject type parameter is the entity that was created.void registerBeforeCreateListener(java.util.function.Consumer<IMendixObject> action)
action
- a Consumer
instance. IMendixObject type parameter is the entity that is to be
created. The IMendixObject instance will always be null, because the object is not yet created.void registerAfterChangeListener(java.util.function.Consumer<IMendixObject> action)
action
- a Consumer
instance. IMendixObject is the entity that has been changed.void registerBeforeChangeListener(java.util.function.Consumer<IMendixObject> action)
action
- a Consumer
instance. IMendixObject is the entity that is being changed.