Пример #1
0
 public void UnRegister(CmdNumber cmd)
 {
     if (m_Processor != null)
     {
         m_Processor.DetachParseFun(cmd);
     }
 }
Пример #2
0
 public void Register(MessageHandler handler, CmdNumber cmd)
 {
     if (m_Processor != null)
     {
         m_Processor.RegParseFun(handler, cmd);
     }
 }
Пример #3
0
 /// <summary>
 /// 反注册消息回调
 /// </summary>
 public void DetachParseFun(CmdNumber cmdno)
 {
     if (parser.ContainsKey(cmdno))
     {
         parser[cmdno] = null;
         parser.Remove(cmdno);
     }
 }
Пример #4
0
 /// <summary>
 /// 注册消息回调
 /// </summary>
 public bool RegParseFun(MessageHandler parsefun, CmdNumber cmdno)
 {
     if (parser.ContainsKey(cmdno))
     {
         parser.Remove(cmdno);
     }
     parser[cmdno] = parsefun;
     return(true);
 }
Пример #5
0
        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);
        }
Пример #6
0
 public void Reset()
 {
     this.msgkey  = CmdNumber.None;
     this.msgData = null;
 }
Пример #7
0
 public Message()
 {
     this.msgkey  = CmdNumber.None;
     this.msgData = null;
 }
Пример #8
0
 public Message(CmdNumber key, byte[] data)
 {
     this.msgkey  = key;
     this.msgData = data;
 }
Пример #9
0
 private bool CanLogMessage(CmdNumber msgKey)
 {
     return(msgKey != CmdNumber.RespondPingClientCmd_S && msgKey != CmdNumber.RespondMsgClientCmd_S &&
            msgKey != CmdNumber.RequestPingClientCmd_C);
 }
Пример #10
0
 /// <summary>
 /// 在loading中需处理的个别消息
 /// </summary>
 /// <returns></returns>
 private bool IsMessageNeedHandleInLoading(CmdNumber msgKey)
 {
     return(mInLoadingCanDealMsgs.Contains(msgKey));
 }