Esempio n. 1
0
 protected void DoError(int destination, int session, RPCError errorCode, string errorText)
 {
     Error.response error = new Error.response();
     error.errorCode = (int)errorCode;
     error.errorText = errorText;
     PushToService(destination, "OnError", error.encode(), MessageType.Error, session);
 }
Esempio n. 2
0
        private void OnError(Message msg)
        {
            NetProtocol instance = NetProtocol.GetInstance();
            int         tag      = instance.GetTag("Error");

            Error.response sprotoError = (Error.response)instance.Protocol.GenResponse(tag, msg.Data);

            RPCResponseContext responseCallback = null;
            bool isExist = m_responseCallbacks.TryGetValue(msg.RPCSession, out responseCallback);

            if (isExist)
            {
                responseCallback.Callback(responseCallback.Context, msg.Method, Encoding.ASCII.GetBytes(sprotoError.errorText), (RPCError)sprotoError.errorCode);
                m_responseCallbacks.Remove(msg.RPCSession);
            }
            else
            {
                LoggerHelper.Info(m_serviceAddress, string.Format("Service:{0} session:{1} get error:{2}; error text is {3}",
                                                                  m_serviceAddress, msg.RPCSession, sprotoError.errorCode, sprotoError.errorText));
            }
        }