public interface WorkflowInstance
Modifier and Type | Interface and Description |
---|---|
static class |
WorkflowInstance.CompletedWorkflowInstance
完了状態のワークフローインスタンス。
本クラスでは、
WorkflowInstance が、 completeUserTask(Map, String) や
completeGroupTask(Map, String) で完了状態になった場合と同様に振舞うワークフローインスタンスを実装している。
すなわち、 WorkflowInstance.CompletedWorkflowInstance.isCompleted() は常に true を返却し、 WorkflowInstance.CompletedWorkflowInstance.isActive(String) は常に false を返却する。
また、完了状態のワークフローインスタンスに対して許されない操作については、 IllegalStateException を送出する。
ただし、 WorkflowInstance.CompletedWorkflowInstance.getWorkflowId() , WorkflowInstance.CompletedWorkflowInstance.getVersion() については、取得することができないため、 UnsupportedOperationException を送出する。 |
Modifier and Type | Method and Description |
---|---|
void |
assignGroup(java.lang.String taskId,
java.lang.String group)
タスクに担当グループを割り当てる。
すでにタスクに担当ユーザや担当グループが割り当てられている場合、それらの情報はクリアされ、今回設定した担当グループ情報のみが有効となる。
|
void |
assignGroups(java.lang.String taskId,
java.util.List<java.lang.String> groups)
タスクに担当グループを割り当てる。マルチインスタンスでないタスクに対しては、複数グループを割り当てることは出来ない。
マルチインスタンスタスクで、シーケンシャルタイプの場合は、指定された担当グループの順序がタスクの実行順となる。
すでにタスクに担当ユーザや担当グループが割り当てられている場合、それらの情報はクリアされ、今回設定した担当ユーザのみが有効となる。
|
void |
assignGroupsToLane(java.lang.String laneId,
java.util.List<java.lang.String> groups)
レーンIDで指定されたレーンに属するすべてのタスクに、指定された担当グループを割り当てる。
|
void |
assignGroupToLane(java.lang.String laneId,
java.lang.String group)
レーンIDで指定されたレーンに属するすべてのタスクに、指定された担当グループを割り当てる。
|
void |
assignUser(java.lang.String taskId,
java.lang.String user)
タスクに担当ユーザを割り当てる。
|
void |
assignUsers(java.lang.String taskId,
java.util.List<java.lang.String> users)
タスクに担当ユーザを割り当てる。マルチインスタンスでないタスクに対しては、複数ユーザを割り当てることは出来ない。
マルチインスタンスタスクで、シーケンシャルタイプの場合は、指定された担当ユーザの順序がタスクの実行順となる。
すでにタスクに担当ユーザや担当グループが割り当てられている場合、それらの情報はクリアされ、今回設定した担当ユーザのみが有効となる。
|
void |
assignUsersToLane(java.lang.String laneId,
java.util.List<java.lang.String> users)
レーンIDで指定されたレーンに属するすべてのタスクに、指定された担当ユーザを割り当てる。
|
void |
assignUserToLane(java.lang.String laneId,
java.lang.String user)
レーンIDで指定されたレーンに属するすべてのタスクに、指定された担当ユーザを割り当てる。
|
void |
changeAssignedGroup(java.lang.String taskId,
java.lang.String oldGroup,
java.lang.String newGroup)
タスクに現在アサインされている担当グループを、別の担当グループに振り替える。
指定されたタスクがアクティブである場合は、アクティブグループタスクについても振り替えを行う。
|
void |
changeAssignedUser(java.lang.String taskId,
java.lang.String oldUser,
java.lang.String newUser)
タスクに現在アサインされている担当ユーザを、別の担当ユーザに振り替える。
指定されたタスクがアクティブタスクの場合は、アクティブユーザタスクについても振り替えを行う。
|
void |
completeGroupTask(java.util.Map<java.lang.String,?> parameter,
java.lang.String assigned)
アクティブグループタスクを完了させた後、ワークフロー定義に従ってワークフローを進行させ、ワークフローインスタンスのアクティブフローノードを次のタスク
もしくは停止イベントに進行させる。
|
void |
completeGroupTask(java.lang.String assigned)
アクティブグループタスクを完了させた後、ワークフロー定義に従ってワークフローを進行させ、ワークフローインスタンスのアクティブフローノードを次のタスク
もしくは停止イベントに進行させる。
|
void |
completeUserTask()
アクティブユーザタスクを完了させた後、ワークフロー定義に従ってワークフローを進行させ、ワークフローインスタンスのアクティブフローノードを次のタスク
もしくは停止イベントに進行させる。
|
void |
completeUserTask(java.util.Map<java.lang.String,?> parameter)
アクティブユーザタスクを完了させた後、ワークフロー定義に従ってワークフローを進行させ、ワークフローインスタンスのアクティブフローノードを次のタスク
もしくは停止イベントに進行させる。
|
void |
completeUserTask(java.util.Map<java.lang.String,?> parameter,
java.lang.String assigned)
アクティブユーザタスクを完了させた後、ワークフロー定義に従ってワークフローを進行させ、ワークフローインスタンスのアクティブフローノードを次のタスク
もしくは停止イベントに進行させる。
|
void |
completeUserTask(java.lang.String assigned)
アクティブユーザタスクを完了させた後、ワークフロー定義に従ってワークフローを進行させ、ワークフローインスタンスのアクティブフローノードを次のタスク
もしくは停止イベントに進行させる。
|
java.util.List<java.lang.String> |
getAssignedGroups(java.lang.String taskId)
タスクに割り当てられた担当グループを取得する。
担当グループは、実行順でソートされて返却される。
|
java.util.List<java.lang.String> |
getAssignedUsers(java.lang.String taskId)
タスクに割り当てられた担当ユーザを取得する。
担当ユーザは、実行順でソートされて返却される。
|
java.lang.String |
getInstanceId()
現在のワークフローインスタンスのインスタンスIDを取得する。
|
long |
getVersion()
バージョン番号を取得する。
|
java.lang.String |
getWorkflowId()
ワークフローIDを取得する。
|
boolean |
hasActiveGroupTask(java.lang.String group)
指定されたグループのアクティブグループタスクが存在するかどうかを確認する。
|
boolean |
hasActiveUserTask(java.lang.String user)
指定されたユーザのアクティブユーザタスクが存在するかどうかを確認する。
|
boolean |
isActive(java.lang.String flowNodeId)
指定されたフローノードIDがアクティブな状態かどうかを判定する。
|
boolean |
isCompleted()
ワークフローが完了状態かどうかを判定する。
|
void |
triggerEvent(java.lang.String eventTriggerId)
アクティブフローノードから、境界イベントトリガーIDに対応する境界イベントを取得し、現在のタスクを中断して、境界イベントから取得される進行先フローノードに
ワークフローを進行させる。
|
void |
triggerEvent(java.lang.String eventTriggerId,
java.util.Map<java.lang.String,?> parameter)
アクティブフローノードから、境界イベントトリガーIDに対応する境界イベントを取得し、現在のタスクを中断して、境界イベントから取得される進行先フローノードに
ワークフローを進行させる。
|
void completeUserTask() throws java.lang.IllegalStateException
java.lang.IllegalStateException
- 終了させる対象のアクティブユーザタスクが見つからない場合。void completeUserTask(java.lang.String assigned) throws java.lang.IllegalStateException
assigned
- タスクを完了させるユーザjava.lang.IllegalStateException
- assigned
に対してアクティブユーザタスクが見つからない場合。void completeUserTask(java.util.Map<java.lang.String,?> parameter) throws java.lang.IllegalStateException
parameter
- ワークフローを進行させる際に、各フローノードで使用するパラメータjava.lang.IllegalStateException
- 終了させる対象のアクティブユーザタスクが見つからない場合。void completeUserTask(java.util.Map<java.lang.String,?> parameter, java.lang.String assigned) throws java.lang.IllegalStateException
parameter
- ワークフローを進行させる際に、各フローノードで使用するパラメータassigned
- タスクを完了させるユーザjava.lang.IllegalStateException
- assigned
に対してアクティブユーザタスクが見つからない場合、またはワークフローが既に完了している場合。void completeGroupTask(java.lang.String assigned) throws java.lang.IllegalStateException
assigned
- タスクを完了させるグループjava.lang.IllegalStateException
- assigned
に対してアクティブグループタスクが見つからない場合、またはワークフローが既に完了している場合。void completeGroupTask(java.util.Map<java.lang.String,?> parameter, java.lang.String assigned) throws java.lang.IllegalStateException
parameter
- ワークフローを進行させる際に、各フローノードで使用するパラメータassigned
- タスクを完了させるグループjava.lang.IllegalStateException
- assigned
に対してアクティブグループタスクが見つからない場合、またはワークフローが既に完了している場合。void triggerEvent(java.lang.String eventTriggerId) throws java.lang.IllegalStateException
eventTriggerId
- 境界イベントトリガーIDjava.lang.IllegalStateException
- アクティブフローノードから、境界イベントトリガーIDに対応する境界イベントを取得できなかった場合。void triggerEvent(java.lang.String eventTriggerId, java.util.Map<java.lang.String,?> parameter) throws java.lang.IllegalStateException
eventTriggerId
- 境界イベントトリガーIDparameter
- ワークフローを進行させる際に利用するパラメータjava.lang.IllegalStateException
- アクティブフローノードから、境界イベントトリガーIDに対応する境界イベントを取得できなかった場合。void assignUser(java.lang.String taskId, java.lang.String user) throws java.lang.IllegalStateException, java.lang.IllegalArgumentException
taskId
- 担当ユーザを割り当てる対象のタスクuser
- 担当ユーザjava.lang.IllegalStateException
- ワークフローがすでに完了している場合java.lang.IllegalArgumentException
- 指定されたタスクが存在しない場合void assignUsers(java.lang.String taskId, java.util.List<java.lang.String> users) throws java.lang.IllegalStateException, java.lang.IllegalArgumentException
taskId
- タスクIDusers
- 担当ユーザリストjava.lang.IllegalStateException
- ワークフローがすでに完了している場合java.lang.IllegalArgumentException
- 指定されたタスクが存在しない場合、もしくはマルチインスタンスでないタスクに複数ユーザを割り当てようとした場合。void assignGroup(java.lang.String taskId, java.lang.String group) throws java.lang.IllegalStateException, java.lang.IllegalArgumentException
taskId
- タスクのフローノードIDgroup
- 担当グループjava.lang.IllegalStateException
- ワークフローがすでに完了している場合java.lang.IllegalArgumentException
- 指定されたタスクが存在しない場合void assignGroups(java.lang.String taskId, java.util.List<java.lang.String> groups) throws java.lang.IllegalStateException, java.lang.IllegalArgumentException
taskId
- タスクのフローノードIDgroups
- 担当グループjava.lang.IllegalStateException
- ワークフローがすでに完了している場合java.lang.IllegalArgumentException
- 指定されたタスクが存在しない場合、もしくはマルチインスタンスでないタスクに複数グループを割り当てようとした場合。void assignUserToLane(java.lang.String laneId, java.lang.String user) throws java.lang.IllegalStateException, java.lang.IllegalArgumentException
laneId
- 担当ユーザを割り当てるタスクが属するレーンのレーンIDuser
- 担当ユーザjava.lang.IllegalStateException
- ワークフローがすでに完了している場合java.lang.IllegalArgumentException
- マルチインスタンスでないタスクに複数ユーザを割り当てようとした場合。void assignUsersToLane(java.lang.String laneId, java.util.List<java.lang.String> users) throws java.lang.IllegalStateException, java.lang.IllegalArgumentException
laneId
- 担当ユーザを割り当てるタスクが属するレーンのレーンIDusers
- 担当ユーザリストjava.lang.IllegalStateException
- ワークフローがすでに完了している場合java.lang.IllegalArgumentException
- マルチインスタンスでないタスクに複数ユーザを割り当てようとした場合。void assignGroupToLane(java.lang.String laneId, java.lang.String group) throws java.lang.IllegalStateException, java.lang.IllegalArgumentException
laneId
- 担当グループを割り当てるタスクが属するレーンのレーンIDgroup
- 担当グループjava.lang.IllegalStateException
- ワークフローがすでに完了している場合java.lang.IllegalArgumentException
- マルチインスタンスでないタスクに複数グループを割り当てようとした場合。void assignGroupsToLane(java.lang.String laneId, java.util.List<java.lang.String> groups) throws java.lang.IllegalStateException, java.lang.IllegalArgumentException
laneId
- 担当ユーザを割り当てるタスクが属するレーンのレーンIDgroups
- 担当ユーザjava.lang.IllegalStateException
- ワークフローがすでに完了している場合java.lang.IllegalArgumentException
- マルチインスタンスでないタスクに複数グループを割り当てようとした場合。void changeAssignedUser(java.lang.String taskId, java.lang.String oldUser, java.lang.String newUser) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException
taskId
- 担当ユーザを振り替えるタスクoldUser
- 振替元の担当ユーザnewUser
- 振替先の担当ユーザjava.lang.IllegalArgumentException
- 指定されたタスクがワークフロー定義に存在しない場合java.lang.IllegalStateException
- 指定されたタスクに、振替元の担当ユーザがアサインされていない場合void changeAssignedGroup(java.lang.String taskId, java.lang.String oldGroup, java.lang.String newGroup) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException
taskId
- 担当ユーザを振り替えるタスクoldGroup
- 振替元の担当グループnewGroup
- 振替先の担当グループjava.lang.IllegalArgumentException
- 指定されたタスクがワークフロー定義に存在しない場合java.lang.IllegalStateException
- 指定されたタスクに、振替元の担当グループがアサインされていない場合java.util.List<java.lang.String> getAssignedUsers(java.lang.String taskId) throws java.lang.IllegalArgumentException
taskId
- タスクIDjava.lang.IllegalArgumentException
- 指定されたタスクがワークフロー定義に存在しない場合java.util.List<java.lang.String> getAssignedGroups(java.lang.String taskId) throws java.lang.IllegalArgumentException
taskId
- タスクIDjava.lang.IllegalArgumentException
- 指定されたタスクがワークフロー定義に存在しない場合boolean hasActiveUserTask(java.lang.String user)
user
- ユーザtrue
boolean hasActiveGroupTask(java.lang.String group)
group
- グループtrue
java.lang.String getInstanceId()
java.lang.String getWorkflowId()
long getVersion()
boolean isActive(java.lang.String flowNodeId)
flowNodeId
- フローノードIDboolean isCompleted()
true