Esempio n. 1
0
        private void ProcessRequestHeartBeat(IChannel session, RequestHeartBeat request, byte[] body)
        {
            var response = new ResponseHeartBeat()
            {
                MilliSeconds = request.MilliSeconds,
            };
            var sessionInfo = session.GetSessionInfo();

            sessionInfo.PutOutboundMessage(new OutboundMessage(session, new RpcMessage(response, null)));
        }
Esempio n. 2
0
        public void TestRpcCodec()
        {
            var req = new RequestHeartBeat()
            {
                MilliSeconds = 123
            };
            var rpcMessage = new RpcMessage(req, null);

            var buffer       = rpcCodec.Encode(allocator, rpcMessage) as IByteBuffer;
            var bufferLength = buffer.ReadableBytes;

            var(length, typeName, msg) = rpcCodec.Decode(buffer);

            RpcMessageEqual(rpcMessage, bufferLength, msg as RpcMessage, (int)length);

            ReferenceCountUtil.Release(buffer);
        }
Esempio n. 3
0
        public void TestMiltiMessagesRpcCodec()
        {
            var body1 = new byte[3] {
                4, 5, 6
            };
            var reqHeartBeat1 = new RequestHeartBeat()
            {
                MilliSeconds = 123
            };
            var rpcMessage1   = new RpcMessage(reqHeartBeat1, body1);
            var buffer1       = rpcCodec.Encode(allocator, rpcMessage1) as IByteBuffer;
            var bufferLength1 = buffer1.ReadableBytes;

            var body2 = new byte[4] {
                7, 8, 9, 10
            };
            var reqHeartBeat2 = new RequestHeartBeat()
            {
                MilliSeconds = 34234234
            };
            var rpcMessage2   = new RpcMessage(reqHeartBeat2, body2);
            var buffer2       = rpcCodec.Encode(allocator, rpcMessage2) as IByteBuffer;
            var bufferLength2 = buffer2.ReadableBytes;


            var buffer = allocator.Buffer();

            buffer.WriteBytes(buffer1);
            buffer.WriteBytes(buffer2);

            var(length1, typeName1, msg1) = rpcCodec.Decode(buffer);
            RpcMessageEqual(rpcMessage1, bufferLength1, msg1 as RpcMessage, (int)length1);

            var(length2, typeName2, msg2) = rpcCodec.Decode(buffer);
            RpcMessageEqual(rpcMessage2, bufferLength2, msg2 as RpcMessage, (int)length2);
        }