Interface MessageFilterMenuItem<T extends MessageInfo>

All Superinterfaces:
com.novomind.ecom.common.api.attribute.DisplayNamed, com.novomind.ecom.common.api.attribute.Named
All Known Implementing Classes:
AbstractMessageFilterMenuItem, AgentBacklogMessageFilterMenuItem, AgentOutgoingMessageFilterMenuItem, SupervisorBacklogMessageFilterMenuItem, SupervisorMessageFilterMenuItem, SupervisorOutgoingMessageFilterMenuItem

public interface MessageFilterMenuItem<T extends MessageInfo> extends com.novomind.ecom.common.api.attribute.DisplayNamed
This interface is used to display custom menu entries in the backlog menu of the novomind iAGENT Supervisor or Desk frontend. It also provides functionality to filter the messages displayed in the view that is linked to the menu entry.
Since:
12.0
  • Method Summary

    Modifier and Type
    Method
    Description
     
    boolean
     
    The method allows to filter the messages displayed in the view that is linked to this MessageFilterMenuItem by setting a filter predicate.
    setIgnoreVisibility(boolean ignoreVisibility)
    The method allows to disable or enabled the user's category visibility restrictions for the view linked to this MessageFilterMenuItem.

    Methods inherited from interface com.novomind.ecom.common.api.attribute.DisplayNamed

    getDisplayName

    Methods inherited from interface com.novomind.ecom.common.api.attribute.Named

    getName
  • Method Details

    • setFilter

      MessageFilterMenuItem<T> setFilter(Predicate<T> filter)
      The method allows to filter the messages displayed in the view that is linked to this MessageFilterMenuItem by setting a filter predicate. ************************** !!! IMPORTANT NOTE !!! **************************************** Please note that the applied filter predicate will be evaluated multiple times within frequent loops. The implementation must guarantee high performance and avoid heap garbage. Please do not implement any long term operations like web service calls or database lookups within the filter predicate. ******************************************************************************************
      Parameters:
      filter - The filter predicate to make a filter decision for a message to be displayed in the view linked to this MessageFilterMenuItem. If the parameter is null then no filter is applied and all messages will be displayed in the linked view of this menu entry.
      Returns:
      this
      Since:
      12.0
    • getFilter

      Predicate<T> getFilter()
      Returns:
      the filter predicate
      Since:
      12.0
    • setIgnoreVisibility

      MessageFilterMenuItem<T> setIgnoreVisibility(boolean ignoreVisibility)
      The method allows to disable or enabled the user's category visibility restrictions for the view linked to this MessageFilterMenuItem. If the ignoreVisibility parameter is set to true then the view will not be pre-filtered by the user's category visibility restrictions.
      Parameters:
      ignoreVisibility - the ignoreVisibility option for this menu item
      Returns:
      this
      Since:
      12.0
    • getIgnoreVisibility

      boolean getIgnoreVisibility()
      Returns:
      true if the messages displayed in the view linked to this MessageFilterMenuItem should not be pre-filtered by the user's category visibility restrictions, otherwise false
      Since:
      12.0