UNPKG

@5minds/processcube_engine

Version:

The ProcessCube Engine. Stores and executes BPMNs.

35 lines (34 loc) 2.06 kB
import { BaseError, FlowNodeInstance, Model } from '@5minds/processcube_engine_sdk'; import { ExternalTaskDatabaseAdapter } from '../../../Tools/DatabaseAdaptersSequelize/ExternalTaskAdapter'; import { FlowNodeInstanceDatabaseAdapter } from '../../../Tools/DatabaseAdaptersSequelize/FlowNodeInstanceAdapter'; import { EventMiddlewareHandler } from '../../../Tools/EventMiddlewareHandler'; import { ProcessInstance } from '../../ProcessInstance'; import { ActivityHandler } from './ActivityHandler'; import { ActivityInstanceHandler } from './ActivityInstanceHandler'; export declare class ExternalServiceTaskInstanceHandler extends ActivityInstanceHandler<Model.Activities.ServiceTask> { private readonly externalTaskDatabaseAdapter; private externalTaskId; private externalTaskFinishedSubscription; private externalTaskExpiredSubscription; private externalTaskFinishedEventId; protected loggerNamespace: string; constructor(eventMiddlewareHandler: EventMiddlewareHandler, externalTaskDatabaseAdapter: ExternalTaskDatabaseAdapter, flowNodeInstanceDatabaseAdapter: FlowNodeInstanceDatabaseAdapter, activityHandler: ActivityHandler<Model.Activities.ServiceTask>, processInstance: ProcessInstance, previousFlowNodeInstanceId?: string, instanceContext?: { [key: string]: any; }); private get serviceTask(); protected persistOnExit(dataObjectValues: Record<string, any>): Promise<void>; protected persistOnError(error: BaseError): Promise<void>; protected persistOnTerminate(): Promise<void>; protected afterExecute(): Promise<void>; protected resumeAfterSuspend(flowNodeInstance: FlowNodeInstance): Promise<void>; protected runHandler(): Promise<void>; private configureExternalTask; private parseExternalTaskTopic; private parseExternalTaskPayload; private getTypeDataForStateChange; private executeExternalServiceTask; private waitForExternalTaskResult; private executeExpression; private publishExternalTaskCreatedNotification; private getDataForErrors; }