Package org.bonitasoft.engine.execution
Class StateBehaviors
java.lang.Object
org.bonitasoft.engine.execution.StateBehaviors
- Author:
- Baptiste Mesta, Matthieu Chaffotte, Celine Souchet
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionStateBehaviors(BPMInstancesCreator bpmInstancesCreator, EventsHandler eventsHandler, ActivityInstanceService activityInstanceService, UserFilterService userFilterService, ClassLoaderService classLoaderService, ActorMappingService actorMappingService, ConnectorInstanceService connectorInstanceService, ExpressionResolverService expressionResolverService, DataInstanceService dataInstanceService, OperationService operationService, WorkService workService, ContainerRegistry containerRegistry, EventInstanceService eventInstanceService, SCommentService commentService, IdentityService identityService, ParentContainerResolver parentContainerResolver, WaitingEventsInterrupter waitingEventsInterrupter, RefBusinessDataService refBusinessDataService, RefBusinessDataRetriever refBusinessDataRetriever, BPMWorkFactory workFactory, ProcessInstanceInterruptor processInstanceInterruptor) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddAssignmentSystemComment(SFlowNodeInstance flowNodeInstance, long userId) voidaddAssignmentSystemCommentIfTaskWasAutoAssign(SFlowNodeInstance flowNodeInstance) voidcreateAttachedBoundaryEvents(SProcessDefinition processDefinition, SActivityInstance activityInstance) voidcreateData(SProcessDefinition processDefinition, SFlowNodeInstance flowNodeInstance) createInnerInstances(long processDefinitionId, SActivityDefinition activity, SMultiInstanceActivityInstance flowNodeInstance, int numberOfInstanceToCreate) voidexecuteChildrenActivities(SFlowNodeInstance flowNodeInstance) voidexecuteConnector(SProcessDefinition processDefinition, SFlowNodeInstance flowNodeInstance, List<SConnectorDefinition> connectorsOnEnter, SConnectorInstance connectorInstance) voidexecuteConnectorInWork(Long processDefinitionId, long processInstanceId, long rootProcessInstanceId, long flowNodeDefinitionId, long flowNodeInstanceId, SConnectorInstance connector, SConnectorDefinition sConnectorDefinition) voidexecuteOperations(SProcessDefinition processDefinition, SActivityInstance activityInstance) getConnectorDefinition(SConnectorInstance connectorInstance, List<SConnectorDefinition> connectorDefinitions) getConnectorDefinitions(SProcessDefinition processDefinition, SFlowNodeInstance flowNodeInstance, org.bonitasoft.engine.bpm.connector.ConnectorEvent connectorEvent) getNextConnectorInstance(List<SConnectorDefinition> connectorDefinitions, SFlowNodeInstance flowNodeInstance, org.bonitasoft.engine.bpm.connector.ConnectorEvent connectorEvent) intgetNumberOfInstancesToCreateFromInputRef(SProcessDefinition processDefinition, SFlowNodeInstance flowNodeInstance, SMultiInstanceLoopCharacteristics miLoop, int numberOfInstanceMax) getParentContainerType(SFlowNodeInstance flowNodeInstance) voidhandleBoundaryEvent(SProcessDefinition processDefinition, SBoundaryEventInstance boundaryInstance) voidhandleThrowEvent(SProcessDefinition processDefinition, SFlowNodeInstance flowNodeInstance) voidinterruptAttachedBoundaryEvent(SProcessDefinition processDefinition, SActivityInstance activityInstance, SStateCategory categoryState) voidinterruptSubActivities(SFlowNodeInstance flowNodeInstance, SStateCategory stateCategory) booleanisFirst(List<SConnectorDefinition> connectorsOnEnter, SConnectorInstance nextConnectorInstanceToExecute) booleanisNotExecutedYet(SConnectorInstance nextConnectorInstanceToExecute) voidmapActors(SFlowNodeInstance flowNodeInstance, SFlowElementContainerDefinition processContainer) voidmapDataOutputOfMultiInstance(SProcessDefinition processDefinition, SFlowNodeInstance flowNodeInstance) voidmapDataOutputOfMultiInstance(SFlowNodeInstance flowNodeInstance, SMultiInstanceLoopCharacteristics miLoop) booleannoConnectorHasStartedInCurrentList(List<SConnectorDefinition> connectorDefinitions, SConnectorInstance connectorInstance) voidregisterWaitingEvent(SProcessDefinition processDefinition, SFlowNodeInstance flowNodeInstance) booleanshouldCreateANewInstance(SMultiInstanceLoopCharacteristics loopCharacteristics, int numberOfInstances, SMultiInstanceActivityInstance miActivityInstance) voidupdateDisplayDescriptionAfterCompletion(SProcessDefinition processDefinition, SFlowNodeInstance flowNodeInstance) voidupdateDisplayNameAndDescription(SProcessDefinition processDefinition, SFlowNodeInstance flowNodeInstance) voidupdateExpectedDuration(SProcessDefinition processDefinition, SFlowNodeInstance flowNodeInstance) voidupdateOutputData(SProcessDefinition processDefinition, SFlowNodeInstance flowNodeInstance, SMultiInstanceLoopCharacteristics miLoop, int numberOfInstanceMax)
-
Field Details
-
parentContainerResolver
-
-
Constructor Details
-
StateBehaviors
public StateBehaviors(BPMInstancesCreator bpmInstancesCreator, EventsHandler eventsHandler, ActivityInstanceService activityInstanceService, UserFilterService userFilterService, ClassLoaderService classLoaderService, ActorMappingService actorMappingService, ConnectorInstanceService connectorInstanceService, ExpressionResolverService expressionResolverService, DataInstanceService dataInstanceService, OperationService operationService, WorkService workService, ContainerRegistry containerRegistry, EventInstanceService eventInstanceService, SCommentService commentService, IdentityService identityService, ParentContainerResolver parentContainerResolver, WaitingEventsInterrupter waitingEventsInterrupter, RefBusinessDataService refBusinessDataService, RefBusinessDataRetriever refBusinessDataRetriever, BPMWorkFactory workFactory, ProcessInstanceInterruptor processInstanceInterruptor)
-
-
Method Details
-
getParentContainerType
-
getDataInstanceService
-
mapDataOutputOfMultiInstance
public void mapDataOutputOfMultiInstance(SProcessDefinition processDefinition, SFlowNodeInstance flowNodeInstance) throws SActivityStateExecutionException - Throws:
SActivityStateExecutionException
-
mapDataOutputOfMultiInstance
public void mapDataOutputOfMultiInstance(SFlowNodeInstance flowNodeInstance, SMultiInstanceLoopCharacteristics miLoop) throws SBonitaException - Throws:
SBonitaException
-
mapActors
public void mapActors(SFlowNodeInstance flowNodeInstance, SFlowElementContainerDefinition processContainer) throws SActivityStateExecutionException - Throws:
SActivityStateExecutionException
-
registerWaitingEvent
public void registerWaitingEvent(SProcessDefinition processDefinition, SFlowNodeInstance flowNodeInstance) throws SActivityStateExecutionException - Throws:
SActivityStateExecutionException
-
handleBoundaryEvent
public void handleBoundaryEvent(SProcessDefinition processDefinition, SBoundaryEventInstance boundaryInstance) throws SActivityStateExecutionException - Throws:
SActivityStateExecutionException
-
createData
public void createData(SProcessDefinition processDefinition, SFlowNodeInstance flowNodeInstance) throws SActivityStateExecutionException - Throws:
SActivityStateExecutionException
-
updateDisplayNameAndDescription
public void updateDisplayNameAndDescription(SProcessDefinition processDefinition, SFlowNodeInstance flowNodeInstance) throws SActivityStateExecutionException - Throws:
SActivityStateExecutionException
-
updateExpectedDuration
public void updateExpectedDuration(SProcessDefinition processDefinition, SFlowNodeInstance flowNodeInstance) throws SActivityStateExecutionException - Throws:
SActivityStateExecutionException
-
updateDisplayDescriptionAfterCompletion
public void updateDisplayDescriptionAfterCompletion(SProcessDefinition processDefinition, SFlowNodeInstance flowNodeInstance) throws SActivityStateExecutionException - Throws:
SActivityStateExecutionException
-
executeOperations
public void executeOperations(SProcessDefinition processDefinition, SActivityInstance activityInstance) throws SActivityStateExecutionException - Throws:
SActivityStateExecutionException
-
handleThrowEvent
public void handleThrowEvent(SProcessDefinition processDefinition, SFlowNodeInstance flowNodeInstance) throws SActivityStateExecutionException - Throws:
SActivityStateExecutionException
-
executeChildrenActivities
public void executeChildrenActivities(SFlowNodeInstance flowNodeInstance) throws SActivityExecutionException - Throws:
SActivityExecutionException
-
interruptSubActivities
public void interruptSubActivities(SFlowNodeInstance flowNodeInstance, SStateCategory stateCategory) throws SBonitaException - Throws:
SBonitaException
-
executeConnectorInWork
public void executeConnectorInWork(Long processDefinitionId, long processInstanceId, long rootProcessInstanceId, long flowNodeDefinitionId, long flowNodeInstanceId, SConnectorInstance connector, SConnectorDefinition sConnectorDefinition) throws SActivityStateExecutionException - Throws:
SActivityStateExecutionException
-
createAttachedBoundaryEvents
public void createAttachedBoundaryEvents(SProcessDefinition processDefinition, SActivityInstance activityInstance) throws SActivityStateExecutionException - Throws:
SActivityStateExecutionException
-
interruptAttachedBoundaryEvent
public void interruptAttachedBoundaryEvent(SProcessDefinition processDefinition, SActivityInstance activityInstance, SStateCategory categoryState) throws SActivityStateExecutionException - Throws:
SActivityStateExecutionException
-
addAssignmentSystemCommentIfTaskWasAutoAssign
public void addAssignmentSystemCommentIfTaskWasAutoAssign(SFlowNodeInstance flowNodeInstance) throws SActivityStateExecutionException - Throws:
SActivityStateExecutionException
-
addAssignmentSystemComment
public void addAssignmentSystemComment(SFlowNodeInstance flowNodeInstance, long userId) throws SUserNotFoundException, SCommentAddException -
createInnerInstances
public List<SFlowNodeInstance> createInnerInstances(long processDefinitionId, SActivityDefinition activity, SMultiInstanceActivityInstance flowNodeInstance, int numberOfInstanceToCreate) throws SBonitaException - Throws:
SBonitaException
-
getNumberOfInstancesToCreateFromInputRef
public int getNumberOfInstancesToCreateFromInputRef(SProcessDefinition processDefinition, SFlowNodeInstance flowNodeInstance, SMultiInstanceLoopCharacteristics miLoop, int numberOfInstanceMax) throws SDataInstanceException, SActivityStateExecutionException -
shouldCreateANewInstance
public boolean shouldCreateANewInstance(SMultiInstanceLoopCharacteristics loopCharacteristics, int numberOfInstances, SMultiInstanceActivityInstance miActivityInstance) throws SDataInstanceException - Throws:
SDataInstanceException
-
updateOutputData
public void updateOutputData(SProcessDefinition processDefinition, SFlowNodeInstance flowNodeInstance, SMultiInstanceLoopCharacteristics miLoop, int numberOfInstanceMax) throws SDataInstanceException, SActivityStateExecutionException -
getConnectorDefinitions
public List<SConnectorDefinition> getConnectorDefinitions(SProcessDefinition processDefinition, SFlowNodeInstance flowNodeInstance, org.bonitasoft.engine.bpm.connector.ConnectorEvent connectorEvent) -
getNextConnectorInstance
public SConnectorInstance getNextConnectorInstance(List<SConnectorDefinition> connectorDefinitions, SFlowNodeInstance flowNodeInstance, org.bonitasoft.engine.bpm.connector.ConnectorEvent connectorEvent) throws SConnectorInstanceReadException - Throws:
SConnectorInstanceReadException
-
isFirst
public boolean isFirst(List<SConnectorDefinition> connectorsOnEnter, SConnectorInstance nextConnectorInstanceToExecute) -
isNotExecutedYet
-
getConnectorDefinition
public SConnectorDefinition getConnectorDefinition(SConnectorInstance connectorInstance, List<SConnectorDefinition> connectorDefinitions) -
executeConnector
public void executeConnector(SProcessDefinition processDefinition, SFlowNodeInstance flowNodeInstance, List<SConnectorDefinition> connectorsOnEnter, SConnectorInstance connectorInstance) throws SActivityStateExecutionException - Throws:
SActivityStateExecutionException
-
noConnectorHasStartedInCurrentList
public boolean noConnectorHasStartedInCurrentList(List<SConnectorDefinition> connectorDefinitions, SConnectorInstance connectorInstance) throws SBonitaReadException - Throws:
SBonitaReadException
-