org.bonitasoft.engine.execution
public class ProcessExecutorImpl extends Object implements ProcessExecutor
| Modifier and Type | Field and Description |
|---|---|
protected org.bonitasoft.engine.core.process.instance.api.ActivityInstanceService |
activityInstanceService |
protected BPMInstancesCreator |
bpmInstancesCreator |
protected org.bonitasoft.engine.classloader.ClassLoaderService |
classLoaderService |
protected org.bonitasoft.engine.core.connector.ConnectorService |
connectorService |
protected EventsHandler |
eventsHandler |
protected org.bonitasoft.engine.core.expression.control.api.ExpressionResolverService |
expressionResolverService |
protected org.bonitasoft.engine.core.process.instance.api.ProcessInstanceService |
processInstanceService |
| Constructor and Description |
|---|
ProcessExecutorImpl(org.bonitasoft.engine.core.process.instance.api.ActivityInstanceService activityInstanceService,
org.bonitasoft.engine.core.process.instance.api.ProcessInstanceService processInstanceService,
org.bonitasoft.engine.log.technical.TechnicalLoggerService logger,
FlowNodeExecutor flowNodeExecutor,
org.bonitasoft.engine.work.WorkService workService,
org.bonitasoft.engine.core.process.definition.ProcessDefinitionService processDefinitionService,
org.bonitasoft.engine.core.process.instance.api.GatewayInstanceService gatewayInstanceService,
org.bonitasoft.engine.core.process.instance.api.TransitionService transitionService,
org.bonitasoft.engine.core.process.instance.api.event.EventInstanceService eventInstanceService,
org.bonitasoft.engine.core.connector.ConnectorService connectorService,
org.bonitasoft.engine.core.connector.ConnectorInstanceService connectorInstanceService,
org.bonitasoft.engine.classloader.ClassLoaderService classLoaderService,
org.bonitasoft.engine.core.operation.OperationService operationService,
org.bonitasoft.engine.core.expression.control.api.ExpressionResolverService expressionResolverService,
org.bonitasoft.engine.events.EventService eventService,
Map<String,SProcessInstanceHandler<org.bonitasoft.engine.events.model.SEvent>> handlers,
org.bonitasoft.engine.core.process.document.api.ProcessDocumentService processDocumentService,
org.bonitasoft.engine.sessionaccessor.ReadSessionAccessor sessionAccessor,
ContainerRegistry containerRegistry,
BPMInstancesCreator bpmInstancesCreator,
org.bonitasoft.engine.core.process.instance.api.TokenService tokenService,
EventsHandler eventsHandler,
org.bonitasoft.engine.transaction.TransactionService transactionService,
FlowNodeStateManager flowNodeStateManager) |
| Modifier and Type | Method and Description |
|---|---|
protected org.bonitasoft.engine.core.process.document.model.SProcessDocument |
attachDocument(long processInstanceId,
String documentName,
String fileName,
String mimeType,
byte[] documentContent,
long authorId) |
protected org.bonitasoft.engine.core.process.document.model.SProcessDocument |
attachDocument(long processInstanceId,
String documentName,
String fileName,
String mimeType,
String url,
long authorId) |
void |
childFinished(long processDefinitionId,
long flowNodeInstanceId,
int stateId,
long parentId)
method called to notify this container executor that a child reached the given state
|
protected void |
createDocuments(org.bonitasoft.engine.core.process.definition.model.SProcessDefinition sDefinition,
org.bonitasoft.engine.core.process.instance.model.SProcessInstance sProcessInstance,
long authorId) |
protected org.bonitasoft.engine.core.process.instance.model.SProcessInstance |
createProcessInstance(org.bonitasoft.engine.core.process.definition.model.SProcessDefinition processDefinition,
long starterId,
long starterDelegateId,
long callerId) |
protected Boolean |
evaluateCondition(org.bonitasoft.engine.core.process.definition.model.SProcessDefinition sDefinition,
org.bonitasoft.engine.core.process.definition.model.STransitionDefinition sTransitionDefinition,
org.bonitasoft.engine.core.expression.control.model.SExpressionContext contextDependency) |
boolean |
executeConnectors(org.bonitasoft.engine.core.process.definition.model.SProcessDefinition processDefinition,
org.bonitasoft.engine.core.process.instance.model.SProcessInstance sProcessInstance,
ConnectorEvent activationEvent,
org.bonitasoft.engine.core.connector.ConnectorService connectorService) |
protected void |
executeConnectors(org.bonitasoft.engine.core.process.definition.model.SProcessDefinition processDefinition,
org.bonitasoft.engine.core.process.instance.model.SProcessInstance sProcessInstance,
List<ConnectorDefinitionWithInputValues> connectorsList) |
org.bonitasoft.engine.core.process.instance.api.states.FlowNodeState |
executeFlowNode(long flowNodeInstanceId,
org.bonitasoft.engine.core.expression.control.model.SExpressionContext contextDependency,
List<org.bonitasoft.engine.core.operation.model.SOperation> operations,
long processInstanceId,
Long executerId,
Long executerDelegateId)
Execute a flow node in the context of this container executor
|
protected void |
executeOperations(List<org.bonitasoft.engine.core.operation.model.SOperation> operations,
Map<String,Object> context,
org.bonitasoft.engine.core.expression.control.model.SExpressionContext expressionContext,
org.bonitasoft.engine.core.process.instance.model.SProcessInstance sProcessInstance) |
protected org.bonitasoft.engine.core.process.definition.model.STransitionDefinition |
getDefaultTransition(org.bonitasoft.engine.core.process.definition.model.SProcessDefinition sDefinition,
org.bonitasoft.engine.core.process.instance.model.SFlowNodeInstance flowNodeInstance) |
String |
getHandledType() |
protected void |
handleEventSubProcess(org.bonitasoft.engine.core.process.definition.model.SProcessDefinition processDefinition,
org.bonitasoft.engine.core.process.instance.model.SProcessInstance sProcessInstance,
long subProcessDefinitionId) |
void |
handleProcessCompletion(org.bonitasoft.engine.core.process.definition.model.SProcessDefinition sProcessDefinition,
org.bonitasoft.engine.core.process.instance.model.SProcessInstance sProcessInstance,
boolean hasActionsToExecute) |
protected boolean |
initialize(long userId,
org.bonitasoft.engine.core.process.definition.model.SProcessDefinition sProcessDefinition,
org.bonitasoft.engine.core.process.instance.model.SProcessInstance sProcessInstance,
org.bonitasoft.engine.core.expression.control.model.SExpressionContext expressionContext,
List<org.bonitasoft.engine.core.operation.model.SOperation> operations,
Map<String,Object> context,
org.bonitasoft.engine.core.process.definition.model.SFlowElementContainerDefinition processContainer,
List<ConnectorDefinitionWithInputValues> connectors) |
org.bonitasoft.engine.core.process.instance.model.SProcessInstance |
start(long starterId,
long starterDelegateId,
List<org.bonitasoft.engine.core.operation.model.SOperation> operations,
Map<String,Object> context,
List<ConnectorDefinitionWithInputValues> connectorsWithInput,
FlowNodeSelector selector) |
org.bonitasoft.engine.core.process.instance.model.SProcessInstance |
start(long processDefinitionId,
long targetSFlowNodeDefinitionId,
long starterId,
long starterDelegateId,
org.bonitasoft.engine.core.expression.control.model.SExpressionContext expressionContext,
List<org.bonitasoft.engine.core.operation.model.SOperation> operations,
Map<String,Object> context,
List<ConnectorDefinitionWithInputValues> connectorsWithInput,
long callerId,
long subProcessDefinitionId) |
org.bonitasoft.engine.core.process.instance.model.SProcessInstance |
start(long starterId,
long starterDelegateId,
org.bonitasoft.engine.core.expression.control.model.SExpressionContext expressionContext,
List<org.bonitasoft.engine.core.operation.model.SOperation> operations,
Map<String,Object> context,
List<ConnectorDefinitionWithInputValues> connectors,
long callerId,
FlowNodeSelector selector) |
org.bonitasoft.engine.core.process.instance.model.SProcessInstance |
startElements(org.bonitasoft.engine.core.process.instance.model.SProcessInstance sProcessInstance,
FlowNodeSelector selector) |
protected final org.bonitasoft.engine.core.process.instance.api.ActivityInstanceService activityInstanceService
protected final org.bonitasoft.engine.core.process.instance.api.ProcessInstanceService processInstanceService
protected final org.bonitasoft.engine.classloader.ClassLoaderService classLoaderService
protected final org.bonitasoft.engine.core.expression.control.api.ExpressionResolverService expressionResolverService
protected final org.bonitasoft.engine.core.connector.ConnectorService connectorService
protected final BPMInstancesCreator bpmInstancesCreator
protected final EventsHandler eventsHandler
public ProcessExecutorImpl(org.bonitasoft.engine.core.process.instance.api.ActivityInstanceService activityInstanceService,
org.bonitasoft.engine.core.process.instance.api.ProcessInstanceService processInstanceService,
org.bonitasoft.engine.log.technical.TechnicalLoggerService logger,
FlowNodeExecutor flowNodeExecutor,
org.bonitasoft.engine.work.WorkService workService,
org.bonitasoft.engine.core.process.definition.ProcessDefinitionService processDefinitionService,
org.bonitasoft.engine.core.process.instance.api.GatewayInstanceService gatewayInstanceService,
org.bonitasoft.engine.core.process.instance.api.TransitionService transitionService,
org.bonitasoft.engine.core.process.instance.api.event.EventInstanceService eventInstanceService,
org.bonitasoft.engine.core.connector.ConnectorService connectorService,
org.bonitasoft.engine.core.connector.ConnectorInstanceService connectorInstanceService,
org.bonitasoft.engine.classloader.ClassLoaderService classLoaderService,
org.bonitasoft.engine.core.operation.OperationService operationService,
org.bonitasoft.engine.core.expression.control.api.ExpressionResolverService expressionResolverService,
org.bonitasoft.engine.events.EventService eventService,
Map<String,SProcessInstanceHandler<org.bonitasoft.engine.events.model.SEvent>> handlers,
org.bonitasoft.engine.core.process.document.api.ProcessDocumentService processDocumentService,
org.bonitasoft.engine.sessionaccessor.ReadSessionAccessor sessionAccessor,
ContainerRegistry containerRegistry,
BPMInstancesCreator bpmInstancesCreator,
org.bonitasoft.engine.core.process.instance.api.TokenService tokenService,
EventsHandler eventsHandler,
org.bonitasoft.engine.transaction.TransactionService transactionService,
FlowNodeStateManager flowNodeStateManager)
public org.bonitasoft.engine.core.process.instance.api.states.FlowNodeState executeFlowNode(long flowNodeInstanceId,
org.bonitasoft.engine.core.expression.control.model.SExpressionContext contextDependency,
List<org.bonitasoft.engine.core.operation.model.SOperation> operations,
long processInstanceId,
Long executerId,
Long executerDelegateId)
throws org.bonitasoft.engine.core.process.instance.api.exceptions.SFlowNodeExecutionException
ContainerExecutorexecuteFlowNode in interface ContainerExecutorflowNodeInstanceId - The identifier of the flow node instanceprocessInstanceId - The identifier of the process instanceexecuterId - The identifier of the user which execute the flow nodeexecuterDelegateId - The identifier of the delegated user which execute the flow nodeorg.bonitasoft.engine.core.process.instance.api.exceptions.SFlowNodeExecutionException - Throw if there is an error when execute the flow nodeprotected org.bonitasoft.engine.core.process.definition.model.STransitionDefinition getDefaultTransition(org.bonitasoft.engine.core.process.definition.model.SProcessDefinition sDefinition,
org.bonitasoft.engine.core.process.instance.model.SFlowNodeInstance flowNodeInstance)
protected Boolean evaluateCondition(org.bonitasoft.engine.core.process.definition.model.SProcessDefinition sDefinition, org.bonitasoft.engine.core.process.definition.model.STransitionDefinition sTransitionDefinition, org.bonitasoft.engine.core.expression.control.model.SExpressionContext contextDependency) throws org.bonitasoft.engine.expression.exception.SExpressionEvaluationException, org.bonitasoft.engine.expression.exception.SExpressionTypeUnknownException, org.bonitasoft.engine.expression.exception.SExpressionDependencyMissingException, org.bonitasoft.engine.expression.exception.SInvalidExpressionException
org.bonitasoft.engine.expression.exception.SExpressionEvaluationExceptionorg.bonitasoft.engine.expression.exception.SExpressionTypeUnknownExceptionorg.bonitasoft.engine.expression.exception.SExpressionDependencyMissingExceptionorg.bonitasoft.engine.expression.exception.SInvalidExpressionExceptionpublic boolean executeConnectors(org.bonitasoft.engine.core.process.definition.model.SProcessDefinition processDefinition,
org.bonitasoft.engine.core.process.instance.model.SProcessInstance sProcessInstance,
ConnectorEvent activationEvent,
org.bonitasoft.engine.core.connector.ConnectorService connectorService)
throws org.bonitasoft.engine.commons.exceptions.SBonitaException
executeConnectors in interface ProcessExecutororg.bonitasoft.engine.commons.exceptions.SBonitaExceptionprotected org.bonitasoft.engine.core.process.instance.model.SProcessInstance createProcessInstance(org.bonitasoft.engine.core.process.definition.model.SProcessDefinition processDefinition,
long starterId,
long starterDelegateId,
long callerId)
throws org.bonitasoft.engine.core.process.instance.api.exceptions.SProcessInstanceCreationException
org.bonitasoft.engine.core.process.instance.api.exceptions.SProcessInstanceCreationExceptionprotected void executeOperations(List<org.bonitasoft.engine.core.operation.model.SOperation> operations, Map<String,Object> context, org.bonitasoft.engine.core.expression.control.model.SExpressionContext expressionContext, org.bonitasoft.engine.core.process.instance.model.SProcessInstance sProcessInstance) throws org.bonitasoft.engine.commons.exceptions.SBonitaException
org.bonitasoft.engine.commons.exceptions.SBonitaExceptionprotected boolean initialize(long userId,
org.bonitasoft.engine.core.process.definition.model.SProcessDefinition sProcessDefinition,
org.bonitasoft.engine.core.process.instance.model.SProcessInstance sProcessInstance,
org.bonitasoft.engine.core.expression.control.model.SExpressionContext expressionContext,
List<org.bonitasoft.engine.core.operation.model.SOperation> operations,
Map<String,Object> context,
org.bonitasoft.engine.core.process.definition.model.SFlowElementContainerDefinition processContainer,
List<ConnectorDefinitionWithInputValues> connectors)
throws org.bonitasoft.engine.core.process.instance.api.exceptions.SProcessInstanceCreationException
org.bonitasoft.engine.core.process.instance.api.exceptions.SProcessInstanceCreationExceptionprotected void createDocuments(org.bonitasoft.engine.core.process.definition.model.SProcessDefinition sDefinition,
org.bonitasoft.engine.core.process.instance.model.SProcessInstance sProcessInstance,
long authorId)
throws org.bonitasoft.engine.commons.exceptions.SBonitaException,
IOException,
BonitaHomeNotSetException
org.bonitasoft.engine.commons.exceptions.SBonitaExceptionIOExceptionBonitaHomeNotSetExceptionprotected org.bonitasoft.engine.core.process.document.model.SProcessDocument attachDocument(long processInstanceId,
String documentName,
String fileName,
String mimeType,
String url,
long authorId)
throws org.bonitasoft.engine.commons.exceptions.SBonitaException
org.bonitasoft.engine.commons.exceptions.SBonitaExceptionprotected org.bonitasoft.engine.core.process.document.model.SProcessDocument attachDocument(long processInstanceId,
String documentName,
String fileName,
String mimeType,
byte[] documentContent,
long authorId)
throws org.bonitasoft.engine.commons.exceptions.SBonitaException
org.bonitasoft.engine.commons.exceptions.SBonitaExceptionpublic void childFinished(long processDefinitionId,
long flowNodeInstanceId,
int stateId,
long parentId)
throws org.bonitasoft.engine.commons.exceptions.SBonitaException
ContainerExecutorchildFinished in interface ContainerExecutorprocessDefinitionId - The identifier of the process instanceflowNodeInstanceId - The identifier of the flow node instanceorg.bonitasoft.engine.commons.exceptions.SBonitaExceptionpublic void handleProcessCompletion(org.bonitasoft.engine.core.process.definition.model.SProcessDefinition sProcessDefinition,
org.bonitasoft.engine.core.process.instance.model.SProcessInstance sProcessInstance,
boolean hasActionsToExecute)
throws org.bonitasoft.engine.commons.exceptions.SBonitaException
handleProcessCompletion in interface ProcessExecutororg.bonitasoft.engine.commons.exceptions.SBonitaExceptionpublic org.bonitasoft.engine.core.process.instance.model.SProcessInstance start(long starterId,
long starterDelegateId,
List<org.bonitasoft.engine.core.operation.model.SOperation> operations,
Map<String,Object> context,
List<ConnectorDefinitionWithInputValues> connectorsWithInput,
FlowNodeSelector selector)
throws org.bonitasoft.engine.core.process.instance.api.exceptions.SProcessInstanceCreationException
start in interface ProcessExecutororg.bonitasoft.engine.core.process.instance.api.exceptions.SProcessInstanceCreationExceptionpublic org.bonitasoft.engine.core.process.instance.model.SProcessInstance start(long processDefinitionId,
long targetSFlowNodeDefinitionId,
long starterId,
long starterDelegateId,
org.bonitasoft.engine.core.expression.control.model.SExpressionContext expressionContext,
List<org.bonitasoft.engine.core.operation.model.SOperation> operations,
Map<String,Object> context,
List<ConnectorDefinitionWithInputValues> connectorsWithInput,
long callerId,
long subProcessDefinitionId)
throws org.bonitasoft.engine.core.process.instance.api.exceptions.SProcessInstanceCreationException
start in interface ProcessExecutororg.bonitasoft.engine.core.process.instance.api.exceptions.SProcessInstanceCreationExceptionpublic org.bonitasoft.engine.core.process.instance.model.SProcessInstance start(long starterId,
long starterDelegateId,
org.bonitasoft.engine.core.expression.control.model.SExpressionContext expressionContext,
List<org.bonitasoft.engine.core.operation.model.SOperation> operations,
Map<String,Object> context,
List<ConnectorDefinitionWithInputValues> connectors,
long callerId,
FlowNodeSelector selector)
throws org.bonitasoft.engine.core.process.instance.api.exceptions.SProcessInstanceCreationException
start in interface ProcessExecutororg.bonitasoft.engine.core.process.instance.api.exceptions.SProcessInstanceCreationExceptionprotected void executeConnectors(org.bonitasoft.engine.core.process.definition.model.SProcessDefinition processDefinition,
org.bonitasoft.engine.core.process.instance.model.SProcessInstance sProcessInstance,
List<ConnectorDefinitionWithInputValues> connectorsList)
throws InvalidEvaluationConnectorConditionException,
org.bonitasoft.engine.commons.exceptions.SBonitaException
InvalidEvaluationConnectorConditionExceptionorg.bonitasoft.engine.commons.exceptions.SBonitaExceptionprotected void handleEventSubProcess(org.bonitasoft.engine.core.process.definition.model.SProcessDefinition processDefinition,
org.bonitasoft.engine.core.process.instance.model.SProcessInstance sProcessInstance,
long subProcessDefinitionId)
throws org.bonitasoft.engine.core.process.instance.api.exceptions.SActivityExecutionException
org.bonitasoft.engine.core.process.instance.api.exceptions.SActivityExecutionExceptionpublic org.bonitasoft.engine.core.process.instance.model.SProcessInstance startElements(org.bonitasoft.engine.core.process.instance.model.SProcessInstance sProcessInstance,
FlowNodeSelector selector)
throws org.bonitasoft.engine.core.process.instance.api.exceptions.SProcessInstanceCreationException,
org.bonitasoft.engine.core.process.instance.api.exceptions.SFlowNodeExecutionException
startElements in interface ProcessExecutororg.bonitasoft.engine.core.process.instance.api.exceptions.SProcessInstanceCreationExceptionorg.bonitasoft.engine.core.process.instance.api.exceptions.SFlowNodeExecutionExceptionpublic String getHandledType()
getHandledType in interface ContainerExecutorCopyright © 2014 Bonitasoft S.A.. All Rights Reserved.