Class CrudFrontendComponent<Model>

java.lang.Object
com.persequor.saga.modules.autocrud.modelcrud.CrudFrontendComponent<Model>
All Implemented Interfaces:
com.persequor.extension.frontend.IFrontendComponent

public abstract class CrudFrontendComponent<Model> extends Object implements com.persequor.extension.frontend.IFrontendComponent
  • Field Details

  • Constructor Details

  • Method Details

    • getPagePath

      public String getPagePath()
      Specified by:
      getPagePath in interface com.persequor.extension.frontend.IFrontendComponent
    • handle

      public void handle(com.persequor.extension.frontend.IPage page, com.persequor.extension.frontend.IInputData inputData)
      Specified by:
      handle in interface com.persequor.extension.frontend.IFrontendComponent
    • getAction

      public static Optional<String> getAction(com.persequor.extension.frontend.IInputData inputData)
    • getActionBuilder

      public ActionBuilder<Model> getActionBuilder(FieldBuilder<Model> fieldBuilder)
    • getSelectedModel

      public Model getSelectedModel(com.persequor.extension.frontend.IInputData inputData, com.persequor.extension.frontend.IPage page, IAction<Model> action)
    • handleExecute

      protected boolean handleExecute(com.persequor.extension.frontend.IPage page, com.persequor.extension.frontend.IInputData inputData, ActionBuilder<Model> actionBuilder) throws UnknownActionTypeException
      Returns:
      true if the "index"-action should happen.
      Throws:
      UnknownActionTypeException
    • getActionType

      public static Optional<String> getActionType(com.persequor.extension.frontend.IInputData inputData)
    • getSelectedAction

      public static Optional<String> getSelectedAction(com.persequor.extension.frontend.IInputData inputData)
    • renderIndex

      protected void renderIndex(com.persequor.extension.frontend.IPage page, com.persequor.extension.frontend.IInputData inputData, ActionBuilder<Model> actionBuilder, FieldBuilder<Model> fieldBuilder)
    • defaultTableLimit

      protected Integer defaultTableLimit()
    • renderFilters

      protected void renderFilters(com.persequor.extension.frontend.IPage page, FieldBuilder<Model> fieldBuilder, com.persequor.extension.frontend.IInputData inputData)
    • renderTable

      public void renderTable(com.persequor.extension.frontend.ITable table, Collection<Model> models, com.persequor.extension.frontend.IInputData inputData)
    • getFieldBuilder

      public FieldBuilder<Model> getFieldBuilder()
    • getActionIconsWidth

      public com.persequor.extension.frontend.Width getActionIconsWidth(ActionBuilder<Model> actionBuilder)
    • getSingularLabel

      public String getSingularLabel()
    • getPluralLabel

      public String getPluralLabel()
    • getSelectOptions

      public Map<String,com.persequor.extension.frontend.IString> getSelectOptions(Stream<Model> models)
    • getModelId

      public String getModelId(Model apply)
    • getModel

      public Model getModel(String id)
    • configure

      public abstract void configure(com.persequor.extension.frontend.ConfigurerDetails configurer)
      Specified by:
      configure in interface com.persequor.extension.frontend.IFrontendComponent
    • configFields

      protected abstract void configFields(FieldBuilder<Model> fieldBuilder)
    • configActions

      protected abstract void configActions(ActionBuilder<Model> actionBuilder)
    • alterQuery

      protected com.valqueries.automapper.ValqueriesQuery<Model> alterQuery(com.valqueries.automapper.ValqueriesQuery<Model> query)
      Alter the query before it is executed.
      Parameters:
      query - the query to alter
      Returns:
      the altered query
    • getDisplayName

      public String getDisplayName(Model model)
    • getRepository

      public ICrudRepository<Model> getRepository()
    • getLinkToAction

      public com.persequor.extension.frontend.link.ExtensionLink getLinkToAction(String action, String actionType, Model model)