n8n
Version:
n8n Workflow Automation Tool
73 lines (72 loc) • 5.01 kB
TypeScript
import { WorkflowsConfig } from '@n8n/config';
import { ActiveWorkflows, ErrorReporter, InstanceSettings, Logger, type IGetExecutePollFunctions, type IGetExecuteTriggerFunctions } from 'n8n-core';
import type { ExecutionError, IWorkflowBase, IWorkflowExecuteAdditionalData, WorkflowActivateMode, WorkflowExecuteMode, WorkflowId } from 'n8n-workflow';
import { Workflow } from 'n8n-workflow';
import { ActivationErrorsService } from './activation-errors.service';
import { ActiveExecutions } from './active-executions';
import type { WorkflowEntity } from './databases/entities/workflow-entity';
import { WorkflowRepository } from './databases/repositories/workflow.repository';
import { ExecutionService } from './executions/execution.service';
import { ExternalHooks } from './external-hooks';
import type { IWorkflowDb } from './interfaces';
import { NodeTypes } from './node-types';
import { Publisher } from './scaling/pubsub/publisher.service';
import { ActiveWorkflowsService } from './services/active-workflows.service';
import { OrchestrationService } from './services/orchestration.service';
import { WebhookService } from './webhooks/webhook.service';
import { WorkflowExecutionService } from './workflows/workflow-execution.service';
import { WorkflowStaticDataService } from './workflows/workflow-static-data.service';
export declare class ActiveWorkflowManager {
private readonly logger;
private readonly errorReporter;
private readonly activeWorkflows;
private readonly activeExecutions;
private readonly externalHooks;
private readonly nodeTypes;
private readonly webhookService;
private readonly workflowRepository;
private readonly orchestrationService;
private readonly activationErrorsService;
private readonly executionService;
private readonly workflowStaticDataService;
private readonly activeWorkflowsService;
private readonly workflowExecutionService;
private readonly instanceSettings;
private readonly publisher;
private readonly workflowsConfig;
private queuedActivations;
constructor(logger: Logger, errorReporter: ErrorReporter, activeWorkflows: ActiveWorkflows, activeExecutions: ActiveExecutions, externalHooks: ExternalHooks, nodeTypes: NodeTypes, webhookService: WebhookService, workflowRepository: WorkflowRepository, orchestrationService: OrchestrationService, activationErrorsService: ActivationErrorsService, executionService: ExecutionService, workflowStaticDataService: WorkflowStaticDataService, activeWorkflowsService: ActiveWorkflowsService, workflowExecutionService: WorkflowExecutionService, instanceSettings: InstanceSettings, publisher: Publisher, workflowsConfig: WorkflowsConfig);
init(): Promise<void>;
getAllWorkflowActivationErrors(): Promise<import("./services/cache/cache.types").Hash<string>>;
removeAll(): Promise<void>;
allActiveInMemory(): string[];
isActive(workflowId: WorkflowId): Promise<boolean>;
addWebhooks(workflow: Workflow, additionalData: IWorkflowExecuteAdditionalData, mode: WorkflowExecuteMode, activation: WorkflowActivateMode): Promise<void>;
clearWebhooks(workflowId: WorkflowId): Promise<void>;
getExecutePollFunctions(workflowData: IWorkflowDb, additionalData: IWorkflowExecuteAdditionalData, mode: WorkflowExecuteMode, activation: WorkflowActivateMode): IGetExecutePollFunctions;
getExecuteTriggerFunctions(workflowData: IWorkflowDb, additionalData: IWorkflowExecuteAdditionalData, mode: WorkflowExecuteMode, activation: WorkflowActivateMode): IGetExecuteTriggerFunctions;
executeErrorWorkflow(error: ExecutionError, workflowData: IWorkflowBase, mode: WorkflowExecuteMode): void;
addActiveWorkflows(activationMode: 'init' | 'leadershipChange'): Promise<void>;
private activateWorkflow;
clearAllActivationErrors(): Promise<void>;
addAllTriggerAndPollerBasedWorkflows(): Promise<void>;
removeAllTriggerAndPollerBasedWorkflows(): Promise<void>;
add(workflowId: WorkflowId, activationMode: WorkflowActivateMode, existingWorkflow?: WorkflowEntity, { shouldPublish }?: {
shouldPublish: boolean;
}): Promise<boolean | undefined>;
checkIfWorkflowCanBeActivated(workflow: Workflow, ignoreNodeTypes?: string[]): boolean;
private countTriggers;
private addQueuedWorkflowActivation;
private removeQueuedWorkflowActivation;
removeAllQueuedWorkflowActivations(): void;
remove(workflowId: WorkflowId): Promise<void>;
removeWorkflowTriggersAndPollers(workflowId: WorkflowId): Promise<void>;
addTriggersAndPollers(dbWorkflow: WorkflowEntity, workflow: Workflow, { activationMode, executionMode, additionalData, }: {
activationMode: WorkflowActivateMode;
executionMode: WorkflowExecuteMode;
additionalData: IWorkflowExecuteAdditionalData;
}): Promise<void>;
removeActivationError(workflowId: WorkflowId): Promise<void>;
shouldAddWebhooks(activationMode: WorkflowActivateMode): boolean;
shouldAddTriggersAndPollers(): boolean;
}