Package com.flowable.engage.task
Class EngageConversationService
java.lang.Object
com.flowable.engage.task.BaseEngageService
com.flowable.engage.task.EngageConversationService
public class EngageConversationService extends BaseEngageService
A service used to support conversation features within case- and process service tasks.
- Author:
- Micha Kiener
-
Field Summary
Fields Modifier and Type Field Description protected ConversationService
conversationService
protected CreateConversationExtension
createConversationExtension
-
Constructor Summary
Constructors Constructor Description EngageConversationService(ConversationService conversationService, CreateConversationExtension createConversationExtension)
-
Method Summary
Modifier and Type Method Description ConversationHolder
createConversation(java.lang.String parentConversationId, java.lang.String conversationName, java.lang.String conversationDescription, java.lang.String conversationType, java.lang.String conversationSubType, java.lang.String definitionKey, java.lang.Object tagValues, java.lang.String referenceId, java.lang.String referenceType, java.lang.String referenceDefinitionId, java.lang.String ownerId, java.lang.String assigneeId, java.lang.String assignedGroupId, java.lang.Object participantIdsValue, boolean reuseConversation, java.lang.String tenantId)
Starts a new conversation based on the given attributes.void
modifyConversation(java.lang.String conversationId, java.lang.String conversationName, java.lang.String conversationDescription, java.lang.String referenceId, java.lang.String referenceType, java.lang.String referenceDefinitionId, java.lang.String assigneeId, java.lang.String assignedGroupId, java.lang.Object joinParticipantIdsValue, java.lang.Object dropParticipantIdsValue, java.lang.Object tagValues)
Modifies certain values of a conversation by providing optional values to be updated.Methods inherited from class com.flowable.engage.task.BaseEngageService
parseParticipantIds, parseTags
-
Field Details
-
Constructor Details
-
EngageConversationService
public EngageConversationService(ConversationService conversationService, CreateConversationExtension createConversationExtension)
-
-
Method Details
-
createConversation
public ConversationHolder createConversation(java.lang.String parentConversationId, java.lang.String conversationName, java.lang.String conversationDescription, java.lang.String conversationType, java.lang.String conversationSubType, java.lang.String definitionKey, java.lang.Object tagValues, java.lang.String referenceId, java.lang.String referenceType, java.lang.String referenceDefinitionId, java.lang.String ownerId, java.lang.String assigneeId, java.lang.String assignedGroupId, java.lang.Object participantIdsValue, boolean reuseConversation, java.lang.String tenantId)Starts a new conversation based on the given attributes.- Parameters:
parentConversationId
- the optional id of a parent conversation (e.g. if a ticket or topic should be created)conversationName
- the optional name of the conversationconversationDescription
- the optional description for the conversationconversationType
- the optional type for the conversation to be created (must be provided, if no definition is referenced)conversationSubType
- the optional sub type for the conversation to be created (must be provided, if no definition is referenced)definitionKey
- the optional key of the conversation definition to base the new conversation ontagValues
- an optional, comma separated string with tag names or a collection of tag namesreferenceId
- the optional id of the referenced work item (e.g. case, process, etc) the conversation should be referencing toreferenceType
- if the reference id is provided, its type also needs to be presentreferenceDefinitionId
- the optional definition id of the referenced work item, if anyownerId
- the options user id to be set as the owner of the conversation, defaults to the current user, if not setassigneeId
- the optional user id to be set as the assignee of the conversationassignedGroupId
- the optional id of the group to be set as the assigned group of the conversationparticipantIdsValue
- the optional user id to be set as a participant or even a collection of user ids to be set as participantsreuseConversation
- true, if an existing conversation should be reused or false to always create a new one- Returns:
- a holder object containing the new or reused conversation and a flag whether it is a newly created one or a reused one
-
modifyConversation
public void modifyConversation(java.lang.String conversationId, java.lang.String conversationName, java.lang.String conversationDescription, java.lang.String referenceId, java.lang.String referenceType, java.lang.String referenceDefinitionId, java.lang.String assigneeId, java.lang.String assignedGroupId, java.lang.Object joinParticipantIdsValue, java.lang.Object dropParticipantIdsValue, java.lang.Object tagValues)Modifies certain values of a conversation by providing optional values to be updated. Values being null will not be changed in the referenced conversation.- Parameters:
conversationId
- the id of the conversation to be modifiedconversationName
- the optional name to be set on the conversation, null, if it should be left untouchedconversationDescription
- the optional description to be set on the conversation, null, if it should be left untouchedreferenceId
- the optional id of the referenced work item (e.g. case, process, etc) the conversation should be referencing toreferenceType
- if the reference id is provided, its type also needs to be presentreferenceDefinitionId
- the optional definition id of the referenced work item, if anyassigneeId
- the optional id of the user to be set as the assignee, null, if it should be left untouchedassignedGroupId
- the optional id of the group to be set the assigned group, null, if it should be left untouchedjoinParticipantIdsValue
- the optional list or single user ids to be added as participants to the conversationdropParticipantIdsValue
- the optional list or single user ids to be removed from the conversationtagValues
- the optional list (or single) tag to be added to the conversation
-