Class EntityEditEvents

java.lang.Object
is.codion.framework.model.EntityEditEvents

public final class EntityEditEvents extends Object
A central event hub for listening for entity inserts, updates and deletes. You must keep a live reference to any listeners added in order to prevent them from being garbage collected, since listeners are added via a WeakReference. EntityEditModel uses this to post its events.
See Also:
  • Method Details

    • addInsertConsumer

      public static void addInsertConsumer(EntityType entityType, Consumer<Collection<Entity>> consumer)
      Adds an insert consumer, notified each time entities of the given type are inserted. Note that you have to keep a live reference to the consumer instance, otherwise it will be garbage collected, due to a weak reference.
      Parameters:
      entityType - the type of entity to listen for
      consumer - the consumer
    • addUpdateConsumer

      public static void addUpdateConsumer(EntityType entityType, Consumer<Map<Entity.Key,Entity>> consumer)
      Adds an update consumer, notified each time entities of the given type are updated. Note that you have to keep a live reference to the consumer instance, otherwise it will be garbage collected, due to a weak reference.
      Parameters:
      entityType - the type of entity to listen for
      consumer - the consumer
    • addDeleteConsumer

      public static void addDeleteConsumer(EntityType entityType, Consumer<Collection<Entity>> consumer)
      Adds a delete consumer, notified each time entities of the given type are deleted. Note that you have to keep a live reference to the consumer instance, otherwise it will be garbage collected, due to a weak reference.
      Parameters:
      entityType - the type of entity to listen for
      consumer - the consumer
    • removeInsertConsumer

      public static void removeInsertConsumer(EntityType entityType, Consumer<Collection<Entity>> consumer)
      Removes the given consumer
      Parameters:
      entityType - the entityType
      consumer - the consumer to remove
    • removeUpdateConsumer

      public static void removeUpdateConsumer(EntityType entityType, Consumer<Map<Entity.Key,Entity>> consumer)
      Removes the given consumer
      Parameters:
      entityType - the entityType
      consumer - the consumer to remove
    • removeDeleteConsumer

      public static void removeDeleteConsumer(EntityType entityType, Consumer<Collection<Entity>> consumer)
      Removes the given consumer
      Parameters:
      entityType - the entityType
      consumer - the consumer to remove
    • notifyInserted

      public static void notifyInserted(Collection<Entity> insertedEntities)
      Notifies insert
      Parameters:
      insertedEntities - the inserted entities
    • notifyUpdated

      public static void notifyUpdated(Map<Entity.Key,Entity> updatedEntities)
      Notifies update
      Parameters:
      updatedEntities - the updated entities mapped to their original primary key
    • notifyDeleted

      public static void notifyDeleted(Collection<Entity> deletedEntities)
      Notifies delete
      Parameters:
      deletedEntities - the deleted entities