@pandorajs/hub
Version:
pandora.js messenge hub
57 lines • 1.6 kB
TypeScript
/// <reference types="node" />
import { ForceReplyFn, MessagePackage } from '../types';
import { MessengerServer } from '@pandorajs/messenger';
import { RouteTable } from './RouteTable';
import { EventEmitter } from 'events';
/**
* IPC-Hub
*/
export declare class HubServer extends EventEmitter {
protected messengerServer: MessengerServer;
protected routeTable: RouteTable;
/**
* Count of pending reply transactions
* @type {number}
*/
pendingReplyCount: number;
/**
* Start Hub
* @return {Promise<void>}
*/
start(): Promise<void>;
/**
* Handle message from clients
* @param {MessagePackage} message
* @param {ForceReplyFn} reply
*/
protected handleMessageIn(message: MessagePackage, reply?: ForceReplyFn): void;
/**
* Handle kind of message as {remote: {}, broadcast: false}
* @param clients
* @param message
* @param reply
*/
protected balanceToClients(clients: any, message: any, reply: any): void;
/**
* Handle kind of message as {remote: {}, broadcast: true}
* @param clients
* @param message
* @param reply
*/
protected broadcastToClients(clients: any, message: any, reply: any): void;
/**
* Start listen on this.messengerServer
*/
protected startListen(): void;
/**
* Stop listen on this.messengerServer
*/
protected stopListen(): void;
/**
* Stop Hub
* @return {Promise<void>}
*/
stop(): Promise<void>;
getMessengerServer(): MessengerServer;
}
//# sourceMappingURL=HubServer.d.ts.map