@5minds/processcube_engine
Version:
The ProcessCube Engine. Stores and executes BPMNs.
18 lines (17 loc) • 1.46 kB
TypeScript
import { DataModels, ExternalTaskError, IExternalTaskExtensionAdapter, Identity } from '@5minds/processcube_engine_sdk';
import { ExternalTaskFetchAndLockService, ExternalTaskService } from '../../../Api/Services/index';
import { IdentityService } from '../../Iam/IdentityService';
type ExternalTask<TPayload> = DataModels.ExternalTasks.ExternalTask<TPayload>;
export declare class ExternalTaskExtensionAdapter implements IExternalTaskExtensionAdapter {
private readonly externalTaskService;
private readonly fetchAndLockService;
private readonly identityService;
private readonly logger;
constructor(externalTaskService: ExternalTaskService, fetchAndLockService: ExternalTaskFetchAndLockService, identityService: IdentityService);
getAllDeployedTopics(identity?: Identity): Promise<Array<string>>;
fetchAndLockExternalTasks<TPayload>(workerId: string, topicNames: string | Array<string>, maxTasks: number, longPollingTimeout: number, lockDuration: number, payloadFilter?: RegExp, identity?: Identity): Promise<Array<ExternalTask<TPayload>>>;
extendLock(workerId: string, externalTaskId: string, additionalDuration: number, identity?: Identity): Promise<void>;
handleError(workerId: string, externalTaskId: string, error: ExternalTaskError, identity?: Identity): Promise<void>;
finishExternalTask<TResultType>(workerId: string, externalTaskId: string, result: TResultType, identity?: Identity): Promise<void>;
}
export {};