nxkit
Version:
This is a collection of tools, independent of any other libraries
72 lines (71 loc) • 2.35 kB
TypeScript
import { Server } from '../_server';
import { URL } from '../path';
import * as service from './service';
import * as fnode from './node';
import * as center from './center';
/**
* @class Route
*/
export declare class Route {
readonly id: string;
readonly uuid: string;
readonly time: number;
readonly fnodeId: string;
constructor(host: FastMessageTransferCenter_IMPL, id: string, uuid: string, time: number, fnodeId: string);
}
/**
* @class FastMessageTransferCenter_IMPL
*/
export declare class FastMessageTransferCenter_IMPL {
private m_host;
private m_server;
private m_fnode_id;
private m_publish_url;
private m_fnodes;
private m_isRun;
private m_fnodesCfg;
private m_fmtservice;
private m_routeTable;
private m_connecting;
private m_broadcastMark;
private m_markOffline;
get id(): string;
get host(): center.FastMessageTransferCenter;
get publishURL(): URL | null;
get delegate(): center.FastMessageTransferCenterDelegate;
get routeTable(): Map<string, Route>;
constructor(host: center.FastMessageTransferCenter, server: Server, fnodes?: string[], publish?: string);
addFnodeCfg(url: string, init?: boolean): void;
run(): Promise<void>;
connect(fNodePublishURL: string): Promise<void>;
client(id: string): service.FMTServerClient;
getFMTService(id: string): service.FMTService;
getFMTServiceNoError(id: string): service.FMTService | undefined;
hasOnline(id: string): Promise<boolean>;
user(id: string): Promise<any>;
markOffline(id: string): void;
exec(id: string, args?: any[], method?: string): Promise<any>;
publish(event: string, data: any): void;
broadcast(event: string, data: any): void;
_forwardBroadcast(event: string, data: any, id: string, source?: fnode.FNode): void;
/**
* @func loginFrom() client login
*/
loginFrom(fmtservice: service.FMTService): Promise<void>;
/**
* @func logoutFrom() client logout
*/
logoutFrom(fmtservice: service.FMTService): Promise<void>;
/**
* @func getFnodeFrom()
*/
getFnodeFrom(url: string): fnode.FNode | undefined;
/**
* @func addNode()
*/
addNode(fnode: fnode.FNode): Promise<void>;
/**
* @func deleteNode()
*/
deleteNode(fnode: fnode.FNode): Promise<void>;
}