Class VersionGeneratingEntityEventListener

  • All Implemented Interfaces:
    io.micronaut.core.order.Ordered, io.micronaut.data.event.EntityEventListener<java.lang.Object>, io.micronaut.data.model.runtime.PropertyAutoPopulator<io.micronaut.data.annotation.Version>, java.util.EventListener

    @Singleton
    public class VersionGeneratingEntityEventListener
    extends java.lang.Object
    implements io.micronaut.data.event.EntityEventListener<java.lang.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

        NOOP
      • Fields inherited from interface io.micronaut.core.order.Ordered

        HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.Object populate​(io.micronaut.data.model.runtime.RuntimePersistentProperty<?> property, java.lang.Object previousValue)  
      boolean prePersist​(io.micronaut.data.event.EntityEventContext<java.lang.Object> context)  
      boolean preRemove​(io.micronaut.data.event.EntityEventContext<java.lang.Object> context)  
      boolean preUpdate​(io.micronaut.data.event.EntityEventContext<java.lang.Object> context)  
      boolean supports​(io.micronaut.data.model.runtime.RuntimePersistentEntity<java.lang.Object> entity, java.lang.Class<? extends java.lang.annotation.Annotation> eventType)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface io.micronaut.data.event.EntityEventListener

        postLoad, postPersist, postRemove, postUpdate, preQuery
      • Methods inherited from interface io.micronaut.core.order.Ordered

        getOrder
    • Method Detail

      • supports

        public boolean supports​(io.micronaut.data.model.runtime.RuntimePersistentEntity<java.lang.Object> entity,
                                java.lang.Class<? extends java.lang.annotation.Annotation> eventType)
        Specified by:
        supports in interface io.micronaut.data.event.EntityEventListener<java.lang.Object>
      • prePersist

        public boolean prePersist​(@NonNull
                                  io.micronaut.data.event.EntityEventContext<java.lang.Object> context)
        Specified by:
        prePersist in interface io.micronaut.data.event.EntityEventListener<java.lang.Object>
      • preUpdate

        public boolean preUpdate​(@NonNull
                                 io.micronaut.data.event.EntityEventContext<java.lang.Object> context)
        Specified by:
        preUpdate in interface io.micronaut.data.event.EntityEventListener<java.lang.Object>
      • preRemove

        public boolean preRemove​(@NonNull
                                 io.micronaut.data.event.EntityEventContext<java.lang.Object> context)
        Specified by:
        preRemove in interface io.micronaut.data.event.EntityEventListener<java.lang.Object>
      • populate

        @NonNull
        public java.lang.Object populate​(io.micronaut.data.model.runtime.RuntimePersistentProperty<?> property,
                                         @Nullable
                                         java.lang.Object previousValue)
        Specified by:
        populate in interface io.micronaut.data.model.runtime.PropertyAutoPopulator<io.micronaut.data.annotation.Version>