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 typeClientWorklistItem
for clients orInternalWorklistItem
for the server-side. Additionally there areAdministrativeWorklistItem
s which allow a supervisor to control a worklist item. This is done by manipulatingInternalWorklistItem
s, thereforeAdministrativeWorklistItem
s 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
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
WorklistItem.Delegation
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 long
serialVersionUID
Generated ID for serialisation.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description boolean
equals(Object obj)
Two internal worklist items are equal if theirIDs
are equal.long
getActivationDate()
Returns the timestamp when this item has been activated and therefore has become available to worklists.ActivityReference
getActivityReference()
Returns a reference to the activity which should be executed.QualifiedAgent
getAssignedAgent()
In case this item has already been assigned to a user, the method returns the corresponding agent.long
getAssignmentDate()
Returns the timestamp when this item has been assigned to the current user and therefore the current worklist.long
getComplexity()
Returns the (estimated) complexity of the item as a simple integer.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.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).Enquiry
getCurrentEnquiry()
Gets the information concerning the current enquiry, that is the enquiry which the agent performing this worklist item should answer.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).String
getDescription()
A description of the worklist item for displaying purpose - corresponds to the description of the corresponding executable business process.long
getDueDate()
Returns the timestamp as absolute date when this item has to be finished.long
getEscalationDate()
Returns the timestamp as absolute date when this item is escalated.UUID
getGroupId()
Gets the ID of the group this worklist item belongs to.UUID
getIconID()
Gets the ID of the icon to display in the worklist representing the underlying activity.UUID
getID()
The system-wide unique unique ID of this worklist item.int
getPriority()
Returns the priority of the item as a simple integer.String
getProcessInstanceName()
Gets the name of the process instance corresponding to this worklist item.String
getProcessTemplateName()
Gets the name of the process template corresponding to this worklist item.String
getProcessTemplateVersion()
Gets the logical version of the process template corresponding to this worklist item.String
getProcessType()
Gets the process type corresponding to this worklist item.Enquiry
getRepliedEnquiry()
Gets the reply enquiry sent to the agent performing this worklist item if an enquiry has been made for it.WorklistConstants.WorklistItemState
getState()
Returns the state of the worklist item (e.g. if it is started or available).String
getTitle()
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 Detail
-
serialVersionUID
static final long serialVersionUID
Generated ID for serialisation.- See Also:
- Constant Field Values
-
-
Method Detail
-
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.- Returns:
- A description of the worklist item.
-
getProcessType
String getProcessType()
Gets the process type corresponding to this worklist item.- Returns:
- The process type of this worklist item.
-
getProcessTemplateVersion
String getProcessTemplateVersion()
Gets the logical version of the process template corresponding to this worklist item. This may be the empty string.- Returns:
- The logical version of the process template of this worklist item.
-
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
WorklistConstants.WorklistItemState 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 inWorklistConstants.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 theescalation 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 theirIDs
are equal. Two client worklist items are equal if additionally theIDs of their associated worklist
are equal.Object.hashCode()
must be implemented accordingly.
-
-