import { TaskRunner } from './TaskRunner'; import { TASK_RUNNER_SPEC } from './Constants'; import { ITaskRunnerOptions } from './ITaskRunnerOptions'; import { Tasks } from './Tasks'; import { TaskRunnerEvent } from './TaskRunnerEvent'; import { ITaskRunnerStatus } from './ITaskRunnerStatus'; import { SystemNodeInfo } from '../../entities/SystemNodeInfo'; import { Cache } from '../cache/Cache'; /** * Node specific registry for TaskRunner which is initalized as singleton in Activator. */ export declare class TaskRunnerRegistry { static NAME: string; cache: Cache; tasks: Tasks; private intervalId; private localTaskRunner; private systemwideTaskStatus; private taskNames; onStartup(): Promise; onShutdown(): Promise; onTaskRunnerEvent(event: TaskRunnerEvent): Promise; /** * Cleanup registry for old values */ cleanup(): Promise; /** * Called by TaskSystemExtension * * @param nodeInfo */ onNodeUpdate(nodeInfo: SystemNodeInfo): Promise; /** * Add a runner mostly on startup */ addLocalRunner(runner: TaskRunner): void; removeLocalRunner(runnerId: string): void; addTaskStatus(r: TaskRunnerEvent): TaskRunnerEvent | Promise; removeTaskStatus(runnerId: string): void; /** * Create new runner * * @param names * @param options */ createNewRunner(names: TASK_RUNNER_SPEC[], options?: ITaskRunnerOptions): TaskRunner; /** * Check if tasks with name or names are running */ hasRunnerForTasks(taskNames: string | string[]): boolean; /** * Check if tasks with name or names are running */ hasRunningTasks(taskNames: string | string[]): boolean; /** * Returns the currently running runnerIds with the taskNames */ getRunningTasks(): Promise; /** * Count local active tasks * * @param taskNames */ getLocalTaskCounts(taskNames: string | string[]): any; /** * Count local active tasks * * @param taskNames */ getGlobalTaskCounts(taskNames: string | string[]): any; /** * Return the runners variable */ getRunners(): TaskRunner[]; }