Class AbstractMessageFilterMenuItem<T extends MessageInfo>
java.lang.Object
com.novomind.ecom.api.imail.common.frontend.menu.AbstractMessageFilterMenuItem<T>
- All Implemented Interfaces:
MessageFilterMenuItem<T>,com.novomind.ecom.common.api.attribute.DisplayNamed,com.novomind.ecom.common.api.attribute.Named
- Direct Known Subclasses:
AgentBacklogMessageFilterMenuItem,AgentOutgoingMessageFilterMenuItem,SupervisorMessageFilterMenuItem
public abstract class AbstractMessageFilterMenuItem<T extends MessageInfo>
extends Object
implements MessageFilterMenuItem<T>
This class 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.
The class cannot be instantiated directly, please use one of the
more specific subclasses
-
SupervisorBacklogMessageFilterMenuItem
- SupervisorOutgoingMessageFilterMenuItem
- AgentBacklogMessageFilterMenuItem
- AgentOutgoingMessageFilterMenuItem- Since:
- 12.0
-
Constructor Summary
ConstructorsConstructorDescriptionConstructs aMessageFilterMenuItemwith the given name. -
Method Summary
Modifier and TypeMethodDescriptionaddSubMenuItem(MessageFilterMenuItem<T> messageFilterMenuItem) Adds a newMessageFilterMenuItemto this item.booleangetName()setDisplayName(String displayName) Set the displayName for the custom message filter menu itemThe method allows to filter the messages displayed in the view that is linked to thisMessageFilterMenuItemby 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 thisMessageFilterMenuItem.
-
Constructor Details
-
AbstractMessageFilterMenuItem
Constructs aMessageFilterMenuItemwith the given name. Please ensure to use a unique name. The name will be used to build the link to the custom view. If you would like to use a different name to be displayed in the frontend please use theAbstractMessageFilterMenuItem#setDisplayName(String)method.- Parameters:
name- the unique name to identify this instance ofMessageFilterMenuItem- Since:
- 12.0
-
-
Method Details
-
getName
- Specified by:
getNamein interfacecom.novomind.ecom.common.api.attribute.Named- Returns:
- the name of the custom message filter menu item.
- Since:
- 12.0
-
getDisplayName
- Specified by:
getDisplayNamein interfacecom.novomind.ecom.common.api.attribute.DisplayNamed- Returns:
- the displayName of the custom message filter menu item
- Since:
- 12.0
-
setDisplayName
Set the displayName for the custom message filter menu item- Parameters:
displayName- the alternative displayName to display the menu entry- Returns:
this- Since:
- 12.0
-
getSubMenuItems
- Returns:
- the sub menu items
- Since:
- 12.0
-
setFilter
The method allows to filter the messages displayed in the view that is linked to thisMessageFilterMenuItemby 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. ******************************************************************************************- Specified by:
setFilterin interfaceMessageFilterMenuItem<T extends MessageInfo>- Parameters:
filter- The filter predicate to make a filter decision for a message to be displayed in the view linked to thisMessageFilterMenuItem. 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
- Specified by:
getFilterin interfaceMessageFilterMenuItem<T extends MessageInfo>- Returns:
- the filter predicate
- Since:
- 12.0
-
setIgnoreVisibility
The method allows to disable or enabled the user's category visibility restrictions for the view linked to thisMessageFilterMenuItem. If the ignoreVisibility parameter is set to true then the view will not be pre-filtered by the user's category visibility restrictions.- Specified by:
setIgnoreVisibilityin interfaceMessageFilterMenuItem<T extends MessageInfo>- Parameters:
ignoreVisibility- the ignoreVisibility option for this menu item- Returns:
this- Since:
- 12.0
-
getIgnoreVisibility
public boolean getIgnoreVisibility()- Specified by:
getIgnoreVisibilityin interfaceMessageFilterMenuItem<T extends MessageInfo>- Returns:
- true if the messages displayed in the view linked to this
MessageFilterMenuItemshould not be pre-filtered by the user's category visibility restrictions, otherwise false - Since:
- 12.0
-