Class LifecycleCallbackRegistry


  • public class LifecycleCallbackRegistry
    extends Object
    A registry of lifecycle callbacks for all callback event types. Valid event types are defined in LifecycleEvent enum.
    Since:
    3.0
    • Constructor Detail

      • LifecycleCallbackRegistry

        public LifecycleCallbackRegistry​(EntityResolver resolver)
        Creates an empty callback registry.
    • Method Detail

      • clear

        public void clear()
        Removes all listeners for all event types.
      • clear

        public void clear​(int type)
        Removes listeners for a single event type.
      • isEmpty

        public boolean isEmpty​(LifecycleEvent type)
        Returns true if there are no listeners for a specific event type.
      • addDefaultListener

        public void addDefaultListener​(LifecycleListener listener)
        Registers a LifecycleListener for all events on all entities. Note that listeners are not required to implement LifecycleListener interface. Other methods in this class can be used to register arbitrary listeners.
      • addDefaultListener

        public void addDefaultListener​(LifecycleEvent type,
                                       Object listener,
                                       String methodName)
        Registers a callback method to be invoked on a provided non-entity object when a lifecycle event occurs on any entity that does not suppress default callbacks.
      • addListener

        public void addListener​(Class<?> entityClass,
                                LifecycleListener listener)
        Registers a LifecycleListener for all events on all entities. Note that listeners are not required to implement LifecycleListener interface. Other methods in this class can be used to register arbitrary listeners.
      • addListener

        public void addListener​(LifecycleEvent type,
                                Class<?> entityClass,
                                Object listener,
                                String methodName)
        Registers callback method to be invoked on a provided non-entity object when a lifecycle event occurs for a specific entity.
      • addCallback

        public void addCallback​(LifecycleEvent type,
                                Class<?> entityClass,
                                String methodName)
        Registers a callback method to be invoked on an entity class instances when a lifecycle event occurs.
        Since:
        4.0
      • addCallback

        public void addCallback​(LifecycleEvent type,
                                Class<?> entityClass,
                                Method method)
        Registers a callback method to be invoked on an entity class instances when a lifecycle event occurs.
        Parameters:
        type - of the lifecycle event
        entityClass - type of the entity
        method - callback method reference
        Since:
        4.2
      • addListener

        public void addListener​(Object listener)
        Adds a listener, mapping its methods to events based on annotations.
        Since:
        3.1
      • performCallbacks

        public void performCallbacks​(LifecycleEvent type,
                                     Persistent object)
        Invokes callbacks of a specific type for a given entity object.
      • performCallbacks

        public void performCallbacks​(LifecycleEvent type,
                                     Collection<?> objects)
        Invokes callbacks of a specific type for a collection of entity objects.