UNPKG

pandora

Version:

A powerful and lightweight application manager for Node.js applications powered by TypeScript.

45 lines (44 loc) 1.55 kB
import { ServiceRepresentation, ServiceInstanceReference, Service, ProcessRepresentation } from '../domain'; import { WorkerContext } from '../application/WorkerContext'; /** * Class ServiceReconciler */ export declare class ServiceReconciler { protected context: WorkerContext; protected services: Map<string, ServiceInstanceReference>; protected state: 'notBoot' | 'booting' | 'booted' | 'stoping'; protected processRepresentation: ProcessRepresentation; protected workModeByForce: any; constructor(processRepresentation: ProcessRepresentation, context: any, workModeByForce?: any); /** * Receive a service representation * @param {ServiceRepresentation} serviceRepresentation */ receiveServiceRepresentation(serviceRepresentation: ServiceRepresentation): void; /** * Get ordered service id set, order by service weight * @param {"asc" | "desc"} order * @return {Array} */ getOrderedServiceIdSet(order: 'asc' | 'desc'): any[]; /** * Get service's weight by service's ID (name) * @param id * @param {string[]} chain * @return {any} */ getWeight(id: any, chain?: string[]): any; /** * Instantiate all the services */ instantiate(): void; /** * Start all the services * @return {Promise<void>} */ start(): Promise<void>; stop(): Promise<void>; get<T extends Service>(id: any): T; getServiceClass(serviceName: any): any; getState(): "notBoot" | "booting" | "booted" | "stoping"; }