Class VersionGeneratingEntityEventListener
java.lang.Object
io.micronaut.data.runtime.event.listeners.VersionGeneratingEntityEventListener
- All Implemented Interfaces:
io.micronaut.core.order.Ordered,io.micronaut.data.event.EntityEventListener<Object>,io.micronaut.data.model.runtime.PropertyAutoPopulator<io.micronaut.data.annotation.Version>,EventListener
@Singleton
public class VersionGeneratingEntityEventListener
extends Object
implements io.micronaut.data.event.EntityEventListener<Object>, io.micronaut.data.model.runtime.PropertyAutoPopulator<io.micronaut.data.annotation.Version>
Supports optimistic locking by using a version.
- Since:
- 2.4.0
-
Field Summary
Fields inherited from interface io.micronaut.data.event.EntityEventListener
NOOPFields inherited from interface io.micronaut.core.order.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE -
Constructor Summary
ConstructorsConstructorDescriptionVersionGeneratingEntityEventListener(DateTimeProvider dateTimeProvider, DataConversionService conversionService) -
Method Summary
Modifier and TypeMethodDescription@NonNull Objectpopulate(io.micronaut.data.model.runtime.RuntimePersistentProperty<?> property, @Nullable Object previousValue) booleanprePersist(@NonNull io.micronaut.data.event.EntityEventContext<Object> context) booleanbooleanbooleansupports(io.micronaut.data.model.runtime.RuntimePersistentEntity<Object> entity, Class<? extends Annotation> eventType) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.micronaut.data.event.EntityEventListener
postLoad, postPersist, postRemove, postUpdate, preQueryMethods inherited from interface io.micronaut.core.order.Ordered
getOrder
-
Constructor Details
-
VersionGeneratingEntityEventListener
public VersionGeneratingEntityEventListener(DateTimeProvider dateTimeProvider, DataConversionService conversionService)
-
-
Method Details
-
supports
public boolean supports(io.micronaut.data.model.runtime.RuntimePersistentEntity<Object> entity, Class<? extends Annotation> eventType) - Specified by:
supportsin interfaceio.micronaut.data.event.EntityEventListener<Object>
-
prePersist
public boolean prePersist(@NonNull @NonNull io.micronaut.data.event.EntityEventContext<Object> context) - Specified by:
prePersistin interfaceio.micronaut.data.event.EntityEventListener<Object>
-
preUpdate
public boolean preUpdate(@NonNull @NonNull io.micronaut.data.event.EntityEventContext<Object> context) - Specified by:
preUpdatein interfaceio.micronaut.data.event.EntityEventListener<Object>
-
preRemove
public boolean preRemove(@NonNull @NonNull io.micronaut.data.event.EntityEventContext<Object> context) - Specified by:
preRemovein interfaceio.micronaut.data.event.EntityEventListener<Object>
-
populate
@NonNull public @NonNull Object populate(io.micronaut.data.model.runtime.RuntimePersistentProperty<?> property, @Nullable @Nullable Object previousValue) - Specified by:
populatein interfaceio.micronaut.data.model.runtime.PropertyAutoPopulator<io.micronaut.data.annotation.Version>
-