nope-js-node
Version:
NoPE Runtime for Nodejs. For Browser-Support please use nope-browser
46 lines (45 loc) • 1.66 kB
TypeScript
/**
* @author Martin Karkowski
* @email m.karkowski@zema.de
* @create date 2021-03-22 19:03:15
* @modify date 2022-01-03 17:34:13
* @desc [description]
*/
import * as io from "socket.io";
import { ValidLoggerDefinition } from "../../logger/getLogger";
import { IRpcResponseMsg, IRequestRpcMsg } from "../../types/nope";
import { EventCommunicationInterface } from "./EventCommunicationInterface";
/**
* Mirror Layer using IO-Sockets.
*
* @export
* @class IoSocketMirrorServer
*/
export declare class ioSocketServerLayer extends EventCommunicationInterface {
port: number;
protected _sockets: Set<io.Socket>;
protected _openRequests: {
[index: string]: number;
};
protected _profile: boolean;
/**
* Creates an instance of IoSocketMirrorServer.
* @author M.Karkowski
* @param {number} port Port the Server is running on.
* @param {ValidLoggerDefinition} [logger="info"]
* @memberof IoSocketMirrorServer
*/
constructor(port: number, logger?: ValidLoggerDefinition, profile?: boolean);
protected _profileTask(mode: "add" | "remove", data: IRequestRpcMsg | IRpcResponseMsg): void;
/**
* Helper Function, to forward events to the other connected Sockets.
*
* @protected
* @param {io.Socket} socket The socket, which initally received the data.
* @param {string} event the event which was received
* @param {*} data the data, that needs to be forwarded
* @memberof IoSocketMirrorServer
*/
protected _forward(socket: io.Socket, event: string, data: any): void;
dispose(): Promise<void>;
}