Class DatatableEvent<T>

java.lang.Object
java.util.EventObject
org.springframework.context.ApplicationEvent
sk.iway.iwcm.system.datatable.events.DatatableEvent<T>
All Implemented Interfaces:
Serializable

public class DatatableEvent<T> extends org.springframework.context.ApplicationEvent
Generic event for datatable operations in WebJET, based on https://www.baeldung.com/spring-events Supports listening to specific entity types using:
See Also:
  • Constructor Details

    • DatatableEvent

      public DatatableEvent(T source, DatatableEventType eventType)
      Constructor for BEFORE_SAVE, BEFORE_DELETE, BEFORE_DUPLICATE events
      Parameters:
      source - - the entity being operated on
      eventType - - type of event
    • DatatableEvent

      public DatatableEvent(T source, DatatableEventType eventType, T originalEntity)
      Constructor for AFTER_SAVE event
      Parameters:
      source - - the saved entity (with updated ID)
      eventType - - AFTER_SAVE
      originalEntity - - the original entity before save
    • DatatableEvent

      public DatatableEvent(T source, DatatableEventType eventType, Long entityId)
      Constructor for AFTER_DELETE event
      Parameters:
      source - - the deleted entity
      eventType - - AFTER_DELETE
      entityId - - the ID of deleted entity
    • DatatableEvent

      public DatatableEvent(T source, DatatableEventType eventType, T originalEntity, Long originalId)
      Constructor for AFTER_DUPLICATE event
      Parameters:
      source - - the newly duplicated entity
      eventType - - AFTER_DUPLICATE
      originalEntity - - not used for duplicate
      originalId - - the ID of original record that was duplicated
  • Method Details

    • publishEvent

      public void publishEvent()
      Publish this event to Spring ApplicationContext
    • getSource

      public T getSource()
      Overrides:
      getSource in class EventObject
    • setSource

      public void setSource(T source)
    • getEventType

      public DatatableEventType getEventType()
    • setEventType

      public void setEventType(DatatableEventType eventType)
    • getClazz

      public String getClazz()
    • setClazz

      public void setClazz(String clazz)
    • getOriginalEntity

      public T getOriginalEntity()
    • setOriginalEntity

      public void setOriginalEntity(T originalEntity)
    • getEntityId

      public Long getEntityId()
    • setEntityId

      public void setEntityId(Long entityId)
    • getOriginalId

      public Long getOriginalId()
    • setOriginalId

      public void setOriginalId(Long originalId)