Interface ModelLink.Builder<M extends EntityModel<M,E,T>,E extends EntityEditModel,T extends EntityTableModel<E>,B extends ModelLink.Builder<M,E,T,B>>

Type Parameters:
M - the EntityModel type
E - the EntityEditModel type
T - the EntityTableModel type
B - the builder type
All Known Subinterfaces:
ForeignKeyModelLink.Builder<M,E,T,B>
Enclosing interface:
ModelLink<M extends EntityModel<M,E,T>,E extends EntityEditModel,T extends EntityTableModel<E>>

public static interface ModelLink.Builder<M extends EntityModel<M,E,T>,E extends EntityEditModel,T extends EntityTableModel<E>,B extends ModelLink.Builder<M,E,T,B>>
Builds a ModelLink
  • Method Details

    • onSelection

      B onSelection(Consumer<Collection<Entity>> onSelection)
      Note that only active model links respond to parent model selection by default.
      Parameters:
      onSelection - called when the selection changes in the parent model
      Returns:
      this builder
      See Also:
    • onInsert

      B onInsert(Consumer<Collection<Entity>> onInsert)
      Parameters:
      onInsert - called when an insert is performed in the parent model
      Returns:
      this builder
    • onUpdate

      B onUpdate(Consumer<Map<Entity,Entity>> onUpdate)
      Parameters:
      onUpdate - called when an update is performed in the parent model
      Returns:
      this builder
    • onDelete

      B onDelete(Consumer<Collection<Entity>> onDelete)
      Parameters:
      onDelete - called when a delete is performed in the parent model
      Returns:
      this builder
    • active

      B active(boolean active)
      Parameters:
      active - the initial active state of this link
      Returns:
      this builder
    • build

      ModelLink<M,E,T> build()
      Returns:
      a ModelLink