UNPKG

sdg

Version:

pomelo ts

47 lines (46 loc) 1.64 kB
import Base from '../base'; import Session from '../common/service/session/session'; import ConnectionService from '../common/service/connectionService'; import { IBlackListFunction, IConnectorComponentOptions, IConnector, IConnectorSocket, IHandlerMsg, IReceiveId, IMsgRsp, IDecoder, IEncoder, IComponent, IScheduleOpts, IRoute, TransformRsp } from '..'; import ServerComponent from './server'; import SessionComponent from './session'; import Application from '../application'; export default class ConnectorComponent extends Base implements IComponent { server: ServerComponent; session: SessionComponent; connection: ConnectionService; connector: IConnector; decode?: IDecoder; encode?: IEncoder; transformRsp?: TransformRsp; useHostFilter?: Boolean; blacklistFun?: IBlackListFunction; forwardMsg?: Boolean; useDict: boolean; useProtobuf: boolean; blacklist: string[]; constructor(app: Application, opts: IConnectorComponentOptions); start(): void; afterStart(): void; private bindEvents; /** * 处理消息事件 * @param session * @param msg * @return {Promise<*>} */ handleMessage(session: Session, msg: IHandlerMsg): Promise<any>; /** * 获取当前连接的session * @param socket * @return {*} */ getSession(socket: IConnectorSocket): Session; send(route: IRoute, msgRsp: IMsgRsp, receiveIds: IReceiveId[], opts: IScheduleOpts): void; private hostFilter; private doSend; private getConnector; private getDefaultConnector; private checkServerType; private onSessionClose; }