public void UnRegister(CmdNumber cmd) { if (m_Processor != null) { m_Processor.DetachParseFun(cmd); } }
public void Register(MessageHandler handler, CmdNumber cmd) { if (m_Processor != null) { m_Processor.RegParseFun(handler, cmd); } }
/// <summary> /// 反注册消息回调 /// </summary> public void DetachParseFun(CmdNumber cmdno) { if (parser.ContainsKey(cmdno)) { parser[cmdno] = null; parser.Remove(cmdno); } }
/// <summary> /// 注册消息回调 /// </summary> public bool RegParseFun(MessageHandler parsefun, CmdNumber cmdno) { if (parser.ContainsKey(cmdno)) { parser.Remove(cmdno); } parser[cmdno] = parsefun; return(true); }
public void SendMessage(CmdNumber cmd, IExtensible data) { byte[] bytes = null; if (data != null) { MemoryStream mem = new MemoryStream(); #if USE_PROTODLL dto.Serialize(mem, cmd); #else Serializer.Serialize <IExtensible>(mem, data); #endif bytes = NetTools.MemoryStreamToBytes(mem, 0); } Message message = new Message(cmd, bytes); m_Processor.Send(message); }
public void Reset() { this.msgkey = CmdNumber.None; this.msgData = null; }
public Message() { this.msgkey = CmdNumber.None; this.msgData = null; }
public Message(CmdNumber key, byte[] data) { this.msgkey = key; this.msgData = data; }
private bool CanLogMessage(CmdNumber msgKey) { return(msgKey != CmdNumber.RespondPingClientCmd_S && msgKey != CmdNumber.RespondMsgClientCmd_S && msgKey != CmdNumber.RequestPingClientCmd_C); }
/// <summary> /// 在loading中需处理的个别消息 /// </summary> /// <returns></returns> private bool IsMessageNeedHandleInLoading(CmdNumber msgKey) { return(mInLoadingCanDealMsgs.Contains(msgKey)); }