UNPKG

@5minds/processcube_engine

Version:

The ProcessCube Engine. Stores and executes BPMNs.

53 lines (52 loc) 3.25 kB
import { InternalIdentity as Identity, ProcessStartOptionsInternal } from '../Contracts/InternalDataModels/index'; import { EventMessageInternal } from '../Contracts/InternalMessages/index'; import { FlowNodeInstanceDatabaseAdapter, ProcessInstanceDatabaseAdapter } from '../Tools/DatabaseAdaptersSequelize/index'; import { IamService } from '../Tools/Iam/IamService'; import { IdentityService } from '../Tools/Iam/IdentityService'; import { ProcessDefinitionMediator } from '../Tools/ProcessDefinitionMediator'; import { ProcessInstanceFactory } from './ProcessInstance'; export declare class ExecuteProcessService { private readonly flowNodeInstanceDatabaseAdapter; private readonly processDefinitionMediator; private readonly processInstanceDatabaseAdapter; private readonly processInstanceFactory; private readonly iamService; private readonly identityService; private readonly logger; constructor(flowNodeInstanceRepository: FlowNodeInstanceDatabaseAdapter, processDefinitionMediator: ProcessDefinitionMediator, processInstanceRepository: ProcessInstanceDatabaseAdapter, processInstanceFactory: ProcessInstanceFactory, iamService: IamService, identityService: IdentityService); start<TInitialToken extends object>(identity: Identity, options: ProcessStartOptionsInternal<TInitialToken>): Promise<EventMessageInternal>; startAndAwaitEndEvent<TInitialToken extends object>(identity: Identity, options: ProcessStartOptionsInternal<TInitialToken>): Promise<EventMessageInternal>; findAndResumeInterruptedProcessInstances(): Promise<void>; retryProcessInstance(identity: Identity, processInstanceId: string, flowNodeInstanceId?: string, newStartToken?: Record<string, any>, newProcessDefinitionHash?: string): Promise<void>; /** * This function is too strict. It verifies, that all possible paths towards `flowNodeInstanceId` have not been altered. * It should only verify, that the actually executed path has not been altered. * https://5minds.atlassian.net/browse/PCE-1474 */ private ensureProcessInstanceBpmnCanBeMigrated; private migrateProcessInstanceBpmn; private validateStartRequest; private waitForAnyEndEvent; private getBatchOfRunningInstances; private getRootProcessOfProcessInstanceTree; private getRetryableChildProcessInstances; private resetProcessInstanceToFlowNodeInstance; private getNonDescendantProcessInstanceSets; private getAllChildProcessIds; private isFlowNodeInParallizedBranch; private getPreviousParallelizingGateways; private ensureProcessInstanceCanBeRestarted; private getFlowNodeInstancesAfterFlowNodeInstance; private getFollowingFlowNodeInstancesForSubProcesses; private getFollowingFlowNodeInstancesForSubProcess; private resetProcessInstance; private getFlowNodeInstancesToReset; private getFlowNodeInstanceIdsInSubProcesses; private getBoundaryEventsForFlowNodeInstances; private shouldResetFlowNode; private getErrorBoundaryEventInstancesForFlowNodeInstance; private resumeProcessInstance; private finishOrphanedChildProcessIntances; private finishOrphanedProcessInstance; private getFinalFlowNodeInstanceForOrphanedProcessInstance; }