Class AutoTimestampEntityEventListener

  • 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.DateUpdated>, java.util.EventListener

    @Singleton
    public class AutoTimestampEntityEventListener
    extends AutoPopulatedEntityEventListener
    implements io.micronaut.data.model.runtime.PropertyAutoPopulator<io.micronaut.data.annotation.DateUpdated>
    An event listener that handles DateCreated and DateUpdated.
    Since:
    2.3.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
      protected java.util.List<java.lang.Class<? extends java.lang.annotation.Annotation>> getEventTypes()  
      protected java.util.function.Predicate<io.micronaut.data.model.runtime.RuntimePersistentProperty<java.lang.Object>> getPropertyPredicate()  
      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 preUpdate​(io.micronaut.data.event.EntityEventContext<java.lang.Object> context)  
      • 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, preRemove
      • Methods inherited from interface io.micronaut.core.order.Ordered

        getOrder
    • Constructor Detail

      • AutoTimestampEntityEventListener

        public AutoTimestampEntityEventListener​(DateTimeProvider<?> dateTimeProvider,
                                                DataConversionService<?> conversionService)
        Default constructor.
        Parameters:
        dateTimeProvider - The date time provider
        conversionService - The conversion service
    • Method Detail

      • getPropertyPredicate

        @NonNull
        protected java.util.function.Predicate<io.micronaut.data.model.runtime.RuntimePersistentProperty<java.lang.Object>> getPropertyPredicate()
        Specified by:
        getPropertyPredicate in class AutoPopulatedEntityEventListener
        Returns:
        A predicate to apply for the given property.
      • 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>
      • 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.DateUpdated>