Interface IItemListModel<T>

Type Parameters:
T - The type of the encapsulated entity.
All Superinterfaces:
IUpdatable, Serializable
All Known Implementing Classes:
AppointmentTemplateListModel, ClientBean.EntityListModelImpl, ClientCounterConfigBean.EntityListModelImpl, ClientResourceBean.EntityListModelImpl, DataSourcesBean.EntityListModelImpl, DbConnectionBean.EntityListModelImpl, DbQueryBean.EntityListModelImpl, EntityListModel, EntityListModelSelectByView, ExternalFormsBean.EntityListModelImpl, FormThemeEditModeSimpleModel, FrontendServerBean.EntityListModelImpl, InboxBean.EntityListModelImpl, ItemListModel, ItemListModelSelectByView, LdapConnectionBean.EntityListModelImpl, LDAPGroupBean.EntityListModelImpl, LdapQueryBean.EntityListModelImpl, MandantFrontendServerBean.EntityListModelImpl, ProjectBean.EntityListModelImpl, ProjectResourceBean.EntityListModelImpl, PromptConnectionListModel, PromptQueryListModel, SystemMessagesBean.EntityListModelImpl, TemplatesBean.EntityListModelImpl, UserBean.EntityListModelImpl, UserGroupBean.EntityListModelImpl, UserRoleBean.EntityListModelImpl

public interface IItemListModel<T> extends IUpdatable
Describes a list of entities of which one can be selected. Mostly used for views with a list of editable entities, such as a list of files for a project.
  • Method Details

    • addMarked

      void addMarked(T entity)
      Adds the given entity to the List of marked entities
      Parameters:
      entity - to be added
    • addNew

      void addNew()
      Sets the currently selected model to a new model. A new model is not yet persisted in the database and exists only in memory.
    • delete

      String delete()
      Deletes the currently selected model from the database. If the currently selected model isNew(), does nothing.
      Returns:
      A view ID of the page to show after the model was deleted.
    • deleteEntity

      String deleteEntity(T model)
      Same as delete(), but takes the model to be deleted as an argument instead of deleting the currently selected model.
      Parameters:
      model - The model to be deleted.
      Returns:
      A view ID of the page to show after the model was deleted.
    • deleteEntity

      String deleteEntity(String targetView, T model)
      Same as deleteEntity(Object), but takes the model to be deleted as an argument instead of deleting the currently selected model.
      Parameters:
      targetView - The name of a view whose view ID is returned after this operation completes successfully. Can also be a relative path, in which case that path is returned.
      model - The model to be deleted.
      Returns:
      A view ID of the page to show after the model was deleted.
    • deleteMarkedEntities

      void deleteMarkedEntities()
      Deletes all marked entities
    • getAll

      List<T> getAll()
      Returns:
      A list of all models, not including a #isNew(), unsaved model.
    • getAllPlusNew

      List<T> getAllPlusNew()
      Returns:
      A list of all models, including the #isNew(), unsaved model, if it exists.
    • getFiltered

      List<T> getFiltered()
      Returns:
      A subset of getAll(), with some models excluded according to some filter criterion.
    • setFiltered

      void setFiltered(List<T> filtered)
      Sets the list of filtered models. This should be subset of getAll().
      Parameters:
      filtered - List of filtered models to set.
    • getMarked

      List<T> getMarked()
      Returns:
      List of entities that have been marked (i.e. for further processing)
    • setMarked

      void setMarked(List<T> marked)
      Sets the list of marked entities
      Parameters:
      marked - List of entities to be marked
    • getSelected

      T getSelected()
      Returns:
      The currently selected model. A new model if none is selected.
    • setSelected

      void setSelected(T selected)
      Sets the currently selected model to the given model. If the given model exists in the database but is not currently managed by an entity manager, rereads the model from the database. Thus the getSelected() model may not refer to the same instance as the given model.
      Parameters:
      selected - The model to be selected.
    • hasEntity

      boolean hasEntity()
      Returns:
      true iff not #isEmptyList() or the currently selected model isNew().
    • isEmptyList

      boolean isEmptyList()
      Returns:
      true iff getAll() is empty.
    • isMarkedDeletable

      boolean isMarkedDeletable()
      Returns:
      true iff every single marked entity is deletable. false otherwise
    • isNew

      boolean isNew()
      Returns:
      Whether the currently selected model is new, ie. whether it is persisted in the database or exists only in memory.
    • loadLazyData

      void loadLazyData()
      Can be overridden to initialize lazily loaded fields on the entity. By default, does not load any lazy data.
    • onRowSelect

      void onRowSelect(org.primefaces.event.SelectEvent<?> event)
    • onRowSelectCheckbox

      void onRowSelectCheckbox(org.primefaces.event.SelectEvent<?> event)
    • onRowUnselectCheckbox

      void onRowUnselectCheckbox(org.primefaces.event.UnselectEvent<?> event)
    • onToggleSelect

      void onToggleSelect(org.primefaces.event.ToggleSelectEvent event)
    • removeMarked

      void removeMarked(T entity)
      Removes the given entity from the List of marked entities
      Parameters:
      entity - to be removed
    • save

      void save()
      Saves the currently selected model to the database. If it isNew(), creates a new entry in the database, otherwise updates the existing entry.
    • setSelectedFromMarked

      void setSelectedFromMarked()
      Sets the currently selected from the List of currently marked entities
    • updateSelected

      void updateSelected()
      Rereads the currently model from the database, discarding any local, unsaved changes. Does nothing iff the currently selected model isNew().