Interface WorklistItem

All Superinterfaces:
PluginDataContainer, Serializable, UserAttributeContainer
All Known Subinterfaces:
AdministrativeWorklistItem, ClientWorklistItem, InternalWorklistItem

public interface WorklistItem extends UserAttributeContainer, PluginDataContainer, Serializable
Represents a worklist item with common properties of server-side and client-side worklists. This is a meta-interface - objects will typically either be of type ClientWorklistItem for clients or InternalWorklistItem for the server-side. Additionally there are AdministrativeWorklistItems which allow a supervisor to control a worklist item. This is done by manipulating InternalWorklistItems, therefore AdministrativeWorklistItems represent server-side worklist items but on a special client.

This interface supports several pieces of time information:

  • creation/activation time
  • time of (re-)assignment
  • escalation time
  • due date with respect to the current assignment
Additionally, delegation and escalation information is provided as well as information on priority and complexity of this worklist item.

A client worklist item has the same ID as the corresponding internal worklist item. However, a client worklist item only belongs to a single worklist (see IndividualWorklistItemSettings.getWorklistID()) whereas an internal worklist item can be in multiple worklists. An administrative worklist item is a direct representation of an internal worklist item, therefore the same terms apply.

  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Interface
    Description
    static interface 
    This interface encapsulates all data relevant for a delegation, that is, the initiator of a delegation, whether the delegation has been due to absence and an optional comment for the delegation.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final long
    Generated ID for serialisation.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    Two internal worklist items are equal if their IDs are equal.
    long
    Returns the timestamp when this item has been activated and therefore has become available to worklists.
    Returns a reference to the activity which should be executed.
    In case this item has already been assigned to a user, the method returns the corresponding agent.
    long
    Returns the timestamp when this item has been assigned to the current user and therefore the current worklist.
    long
    Returns the (estimated) complexity of the item as a simple integer.
    Gets the information concerning the last delegation, that is the delegating agent, whether the delegation is due to absence and the optional comment.
    int
    In case the item has already been delegated, the method returns a value > 0, indicating the the level of delegation (which is incremented on each delegation by 1).
    Gets the information concerning the current enquiry, that is the enquiry which the agent performing this worklist item should answer.
    int
    In case the item has already been escalated, the method returns a value > 0, indicating the the level of escalation (which is incremented on each escalation by 1).
    A description of the worklist item for displaying purpose - corresponds to the description of the corresponding executable business process.
    long
    Returns the timestamp as absolute date when this item has to be finished.
    long
    Returns the timestamp as absolute date when this item is escalated.
    Gets the ID of the group this worklist item belongs to.
    Gets the ID of the icon to display in the worklist representing the underlying activity.
    The system-wide unique unique ID of this worklist item.
    int
    Returns the priority of the item as a simple integer.
    Gets the name of the process instance corresponding to this worklist item.
    Gets the name of the process template corresponding to this worklist item.
    Gets the logical version of the process template corresponding to this worklist item.
    Gets the process type corresponding to this worklist item.
    Gets the reply enquiry sent to the agent performing this worklist item if an enquiry has been made for it.
    Returns the state of the worklist item (e.g.
    The title of this item for displaying purpose - corresponds to the name of the corresponding executable business process.

    Methods inherited from interface de.aristaflow.adept2.model.common.PluginDataContainer

    getPluginData, getPluginDatas, getSupportedPlugins

    Methods inherited from interface de.aristaflow.adept2.model.common.UserAttributeContainer

    getUserAttributes, getUserAttributeValue, removeUserAttributeValue, setUserAttributeValue
  • Field Details

    • serialVersionUID

      static final long serialVersionUID
      Generated ID for serialisation.
      See Also:
  • Method Details

    • getID

      UUID getID()
      The system-wide unique unique ID of this worklist item.
      Returns:
      The globally unique ID of this worklist item.
    • getTitle

      String getTitle()
      The title of this item for displaying purpose - corresponds to the name of the corresponding executable business process.
      Returns:
      The title of the item.
    • getDescription

      String getDescription()
      A description of the worklist item for displaying purpose - corresponds to the description of the corresponding executable business process. This may be null.
      Returns:
      A description of the worklist item or null.
    • getProcessType

      String getProcessType()
      Gets the process type corresponding to this worklist item. This may be null.
      Returns:
      The process type of this worklist item or null.
    • getProcessTemplateVersion

      String getProcessTemplateVersion()
      Gets the logical version of the process template corresponding to this worklist item. This may be the empty string or null.
      Returns:
      The logical version of the process template of this worklist item. This may be null.
    • getProcessTemplateName

      String getProcessTemplateName()
      Gets the name of the process template corresponding to this worklist item.
      Returns:
      The name of the process template of this worklist item.
    • getProcessInstanceName

      String getProcessInstanceName()
      Gets the name of the process instance corresponding to this worklist item.
      Returns:
      The name of the process instance of this worklist item.
    • getActivityReference

      ActivityReference getActivityReference()
      Returns a reference to the activity which should be executed. This reference will be used by the client to determine the runtime of the activity (e.g. ADEPT client runtime or legacy runtime), and by the runtime to execute the activity.
      The activity reference may contain further information on this work item, for instance, information on the corresponding process step.
      Returns:
      A reference to the activity to be executed.
    • getIconID

      UUID getIconID()
      Gets the ID of the icon to display in the worklist representing the underlying activity. With the ID the corresponding icon can be requested from an icon providing service in various sizes and formats.
      The icon ID may be null. In this case the caller has to decide which icon to use for instance by determining it via the activity reference.
      Returns:
      The ID of the icon to display in the worklist representing the underly activity; the corresponding icon may be retrieved in various sizes and formats. This may be null if no icon is specified.
    • getGroupId

      UUID getGroupId()
      Gets the ID of the group this worklist item belongs to. If this item does not belong to a group, null will be returned.
      Returns:
      The ID of the group this worklist item belongs to, null if this item does not belong to a group.
    • getState

      Returns the state of the worklist item (e.g. if it is started or available).
      Returns:
      The state of the worklist item.
    • getPriority

      int getPriority()
      Returns the priority of the item as a simple integer. Corresponding named constants are declared in WorklistConstants.Priority
      Returns:
      The priority of the item.
    • getComplexity

      long getComplexity()
      Returns the (estimated) complexity of the item as a simple integer. This may be interpreted by the distribution manager or as hint for the user.
      Returns:
      The complexity of the item.
    • getActivationDate

      long getActivationDate()
      Returns the timestamp when this item has been activated and therefore has become available to worklists. This timestamp never changes, particularly not when delegating or escalating.
      Returns:
      The time when this item has been activated and become available in some worklist.
    • getAssignmentDate

      long getAssignmentDate()
      Returns the timestamp when this item has been assigned to the current user and therefore the current worklist. If this item is reassigned due to delegation or escalation, the timestamp will be reset.
      If 0 is returned, this item has no assignment date.
      Returns:
      The time when this item has been (re-)assigned to the corresponding user.
    • getEscalationDate

      long getEscalationDate()
      Returns the timestamp as absolute date when this item is escalated. When escalating, the escalation date (and maybe also the due date) will usually be adapted accordingly.
      If 0 is returned, this item has no escalation date.
      Returns:
      The escalation date (absolute) when this item is subject of escalation.
    • getDueDate

      long getDueDate()
      Returns the timestamp as absolute date when this item has to be finished. This is for information purpose only for the user. The escalation takes place on the escalation time.
      If 0 is returned, this item has no due date.
      Returns:
      The due date (absolute) when this item has to be finished for displaying to the user.
    • getAssignedAgent

      QualifiedAgent getAssignedAgent()
      In case this item has already been assigned to a user, the method returns the corresponding agent. Otherwise, the method returns null.
      Returns:
      The agent to whom this item has been assigned or null in case this item has not been assigned yet.
    • getCurrentEscalationLevel

      int getCurrentEscalationLevel()
      In case the item has already been escalated, the method returns a value > 0, indicating the the level of escalation (which is incremented on each escalation by 1).
      The method will return 0 if the item has not yet been escalated.
      Returns:
      The current escalation level of the item.
    • getCurrentDelegation

      WorklistItem.Delegation getCurrentDelegation()
      Gets the information concerning the last delegation, that is the delegating agent, whether the delegation is due to absence and the optional comment.
      Returns:
      The information concerning the last delegation.
    • getCurrentEnquiry

      Enquiry getCurrentEnquiry()
      Gets the information concerning the current enquiry, that is the enquiry which the agent performing this worklist item should answer. It contains the delegating agent, the question and the recipients of the enquiry. If the item is not in enquiry-mode, null will be returned.
      Returns:
      The information concerning the last enquiry for the process step corresponding to this worklist item or null in case the item is not in enquiry mode.
    • getRepliedEnquiry

      Enquiry getRepliedEnquiry()
      Gets the reply enquiry sent to the agent performing this worklist item if an enquiry has been made for it. If the performer has not made an enquiry for this item, null will be returned.
      Note that the reply string will be empty if the recipient of this enquiry has not set it.
      Returns:
      The enquiry object replying the question of the originator of the enquiry (the current performer of this worklist item). If the reply string has not been set, an empty string will be returned, if this item has not been made an enquiry for, null will be returned.
    • getCurrentDelegationLevel

      int getCurrentDelegationLevel()
      In case the item has already been delegated, the method returns a value > 0, indicating the the level of delegation (which is incremented on each delegation by 1).
      The method will return 0 if the item has not yet been delegated.
      Returns:
      The current delegation level of the item.
    • equals

      boolean equals(Object obj)
      Two internal worklist items are equal if their IDs are equal. Two client worklist items are equal if additionally the IDs of their associated worklist are equal.

      Object.hashCode() must be implemented accordingly.

      Overrides:
      equals in class Object
      Parameters:
      obj - the reference object with which to compare.
      Returns:
      true if this object is the same as the obj argument; false otherwise.