public override void ReadFrom(TarsInputStream _is)
        {
            try
            {
                iVersion     = (short)_is.Read(iVersion, 1, true);
                cPacketType  = (byte)_is.Read(cPacketType, 2, true);
                iMessageType = (int)_is.Read(iMessageType, 3, true);
                iRequestId   = (int)_is.Read(iRequestId, 4, true);
                sServantName = (string)_is.ReadString(5, true);
                sFuncName    = (string)_is.ReadString(6, true);

                if (cache_sBuffer == null)
                {
                    cache_sBuffer = new byte[] { 0 };
                }
                sBuffer  = (byte[])_is.Read <byte[]>(cache_sBuffer, 7, true);
                iTimeout = (int)_is.Read(iTimeout, 8, true);

                Dictionary <string, string> cache_context = null;
                context = (Dictionary <string, string>)_is.Read <Dictionary <string, string> >(cache_context, 9, true);
                status  = (Dictionary <string, string>)_is.Read <Dictionary <string, string> >(cache_context, 10, true);
            }
            catch (Exception ex)
            {
                QTrace.Trace(this + " ReadFrom Exception: " + ex.Message);
                throw ex;
            }
        }
示例#2
0
 public virtual void DecodeRequest(TarsInputStream input, RequestPacket request)
 {
     request.PacketType  = input.Read(request.PacketType, 2, true);
     request.MessageType = input.Read(request.MessageType, 3, true);
     request.RequestId   = input.Read(request.RequestId, 4, true);
     request.ServantName = input.ReadString(5, true);
     request.FuncName    = input.ReadString(6, true);
     request.Buffer      = input.ReadBytes(7, true);
     request.Timeout     = input.Read(request.Timeout, 8, true);
     request.Context     = input.ReadMap <string, string>(new Dictionary <string, string>(), 9, false);
     request.Status      = input.ReadMap <string, string>(new Dictionary <string, string>(), 10, false);
 }
示例#3
0
 public override void DecodeResponse(TarsInputStream input, RequestPacket response)
 {
     response.PacketType  = input.Read((byte)0, 2, true);
     response.MessageType = input.Read(0, 3, true);
     response.RequestId   = input.Read(0, 4, true);
     response.ServantName = input.ReadString(5, true);
     response.FuncName    = input.ReadString(6, true);
     response.Buffer      = input.Read(new byte[0], 7, true);
     response.Timeout     = input.Read(0, 8, true);
     response.Status      = input.ReadMap <string, string>(new Dictionary <string, string>(), 9, false);
     response.Context     = input.ReadMap <string, string>(new Dictionary <string, string>(), 10, false);
     response.GetRetToStatus();
 }
示例#4
0
 public virtual void DecodeResponse(TarsInputStream input, RequestPacket response)
 {
     response.PacketType  = input.Read((byte)0, 2, true);
     response.RequestId   = input.Read(0, 3, true);
     response.MessageType = input.Read(0, 4, true);
     response.Ret         = input.Read(0, 5, true);
     response.Buffer      = input.Read(new byte[0], 6, true);
     response.Status      = input.ReadMap <string, string>(new Dictionary <string, string>(), 7, false);
     response.ResultDesc  = input.ReadString(8, false);
     response.Context     = input.ReadMap <string, string>(new Dictionary <string, string>(), 9, false);
 }