Package io.micronaut.data.event
Interface EntityEventListener<T>
- Type Parameters:
T
- the entity type
- All Superinterfaces:
EventListener
,io.micronaut.core.order.Ordered
- All Known Subinterfaces:
PostPersistEventListener<T>
,PostRemoveEventListener<T>
,PostUpdateEventListener<T>
,PrePersistEventListener<T>
,PreRemoveEventListener<T>
,PreUpdateEventListener<T>
- All Known Implementing Classes:
AnnotatedMethodInvokingEntityEventListener
,AutoPopulatedEntityEventListener
,AutoTimestampEntityEventListener
,EntityEventRegistry
,TenantIdEntityEventListener
,UUIDGeneratingEntityEventListener
,VersionGeneratingEntityEventListener
@Indexed(EntityEventListener.class)
public interface EntityEventListener<T>
extends EventListener, io.micronaut.core.order.Ordered
The interface representing an entity event listener.
Event listeners are able to listen for persistence events through the various method hooks provided.
The supports(RuntimePersistentEntity, Class)
method can be used to narrow applicable entities and
should be called by implementors prior to invoking one of the event methods.
Note that EntityEventListener
added by the user SHOULD NOT be annotated with Primary
.
- Since:
- 2.3.0
- Author:
- graemerocher, Denis Stepanov
-
Field Summary
Modifier and TypeFieldDescriptionstatic final EntityEventListener<Object>
A no-op event listener that does nothing.Fields inherited from interface io.micronaut.core.order.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
-
Method Summary
Modifier and TypeMethodDescriptiondefault void
postLoad
(@NonNull EntityEventContext<T> context) A post-load hook.default void
postPersist
(@NonNull EntityEventContext<T> context) A post-persist hook.default void
postRemove
(@NonNull EntityEventContext<T> context) A post-remove hook.default void
postUpdate
(@NonNull EntityEventContext<T> context) A post-update hook.default boolean
prePersist
(@NonNull EntityEventContext<T> context) A pre-persist hook.default boolean
preQuery
(@NonNull QueryEventContext<T> context) A pre-update hook.default boolean
preRemove
(@NonNull EntityEventContext<T> context) A pre-remove hook.default boolean
preUpdate
(@NonNull EntityEventContext<T> context) A pre-update hook.default boolean
supports
(RuntimePersistentEntity<T> entity, Class<? extends Annotation> eventType) Allows including or excluding a listener for a specific entity.Methods inherited from interface io.micronaut.core.order.Ordered
getOrder
-
Field Details
-
NOOP
A no-op event listener that does nothing.
-
-
Method Details
-
supports
Allows including or excluding a listener for a specific entity.- Parameters:
entity
- The entityeventType
- The event type- Returns:
- True if it is supported
-
prePersist
A pre-persist hook. Implementors can return false to evict the operation.- Parameters:
context
- The context object- Returns:
- A boolean value indicating whether to proceed with the operation.
-
postPersist
A post-persist hook. Executed once the object has been persisted.- Parameters:
context
- The context object
-
postLoad
A post-load hook. Executed once the object has been persisted.- Parameters:
context
- The context object
-
preRemove
A pre-remove hook. Implementors can return false to evict the operation.- Parameters:
context
- The context object- Returns:
- A boolean value indicating whether to proceed with the operation.
-
postRemove
A post-remove hook. Executed once the object has been removed.- Parameters:
context
- The context object
-
preUpdate
A pre-update hook. Implementors can return false to evict the operation.- Parameters:
context
- The context object- Returns:
- A boolean value indicating whether to proceed with the operation.
-
preQuery
A pre-update hook. Implementors can return false to evict the operation.- Parameters:
context
- The context object- Returns:
- A boolean value indicating whether to proceed with the operation.
-
postUpdate
A post-update hook. Executed once the object has been updated.- Parameters:
context
- The context object
-