pipeproc
Version:
Multi-process log processing for nodejs
29 lines (28 loc) • 1.19 kB
TypeScript
import { IPipeProcMessage } from "../common/messages";
import { IWriteBuffer } from "./writeBuffer";
import { IWorker } from "./workerManager";
import { ServerSocket } from "../socket/bind";
export interface IMessageRegistry {
[key: string]: {
messageType: string;
replySuccess: string;
replyError: string;
writeOp: boolean;
listener: messageListener<any, any>;
};
}
export declare type message<T, U> = {
messageType: string;
replySuccess: string;
replyError: string;
writeOp: boolean;
listener: messageListener<T, U>;
};
export declare type messageListener<T, U> = ((data: T, callback: (errStatus?: string | null, reply?: U) => void) => void);
export declare function sendMessageToWorker(msg: IPipeProcMessage, worker: IWorker, cb?: () => void): void;
export declare function registerMessage<T, U>(registry: IMessageRegistry, newMessage: message<T, U>): void;
export declare function initializeMessages(writeBuffer: IWriteBuffer, registry: IMessageRegistry, address: string, tls: {
key: string;
cert: string;
ca: string;
} | false, callback: (err: Error | null, socketServer?: ServerSocket) => void): void;