예제 #1
0
파일: RClient.cs 프로젝트: 13777281504/SAEA
        protected override void OnReceived(byte[] data)
        {
            ((RCoder)UserToken.Unpacker).Unpack(data, msg =>
            {
                switch ((RSocketMsgType)msg.Type)
                {
                case RSocketMsgType.Ping:
                    break;

                case RSocketMsgType.Pong:

                    break;

                case RSocketMsgType.Request:
                    break;

                case RSocketMsgType.Response:
                    _syncHelper.Set(msg.SequenceNumber, msg.Data);
                    break;

                case RSocketMsgType.Error:
                    ExceptionCollector.Add("Consumer", new Exception(ParamsSerializeUtil.Deserialize <string>(msg.Data)));
                    _syncHelper.Set(msg.SequenceNumber, msg.Data);
                    break;

                case RSocketMsgType.Close:
                    break;
                }
            });
        }
예제 #2
0
        protected void OnReceived(byte[] data)
        {
            ((RCoder)_RContext.Unpacker).Unpack(data, msg =>
            {
                switch ((RSocketMsgType)msg.Type)
                {
                case RSocketMsgType.Ping:
                    break;

                case RSocketMsgType.Pong:

                    break;

                case RSocketMsgType.Request:
                    break;

                case RSocketMsgType.Response:
                    _syncHelper.Set(msg.SequenceNumber, msg.Data);
                    break;

                case RSocketMsgType.Notice:
                    OnNoticed.Invoke(msg.Data);
                    break;

                case RSocketMsgType.Error:
                    ExceptionCollector.Add("Consumer.OnReceived Error", new Exception(SAEASerialize.Deserialize <string>(msg.Data)));
                    _syncHelper.Set(msg.SequenceNumber, msg.Data);
                    break;

                case RSocketMsgType.Close:
                    break;
                }
            });
        }
예제 #3
0
        private void _rClient_OnMsg(RSocketMsg msg)
        {
            switch ((RSocketMsgType)msg.Type)
            {
            case RSocketMsgType.Ping:
                break;

            case RSocketMsgType.Pong:

                break;

            case RSocketMsgType.Request:
                break;

            case RSocketMsgType.Response:
                _syncHelper.Set(msg.SequenceNumber, msg.Data);
                break;

            case RSocketMsgType.RequestBig:
                break;

            case RSocketMsgType.ResponseBig:
                break;

            case RSocketMsgType.Close:
                break;
            }
        }
예제 #4
0
        protected void OnReceived(byte[] data)
        {
            try
            {
                ((RUnpacker)_RContext.Unpacker).Unpack(data, msg =>
                {
                    switch ((RSocketMsgType)msg.Type)
                    {
                    case RSocketMsgType.Ping:
                        break;

                    case RSocketMsgType.Pong:

                        break;

                    case RSocketMsgType.Request:
                        break;

                    case RSocketMsgType.Response:
                        _syncHelper.Set(msg.Data);
                        break;

                    case RSocketMsgType.Notice:
                        OnNoticed.Invoke(msg.Data);
                        break;

                    case RSocketMsgType.Error:
                        ExceptionCollector.Add("Consumer.OnReceived Error", new Exception(SAEASerialize.Deserialize <string>(msg.Data)));
                        _syncHelper.Set(msg.Data);
                        break;

                    case RSocketMsgType.Close:
                        break;
                    }
                });
            }
            catch (Exception ex)
            {
                OnError?.Invoke(_client.Endpoint.ToString(), ex);
            }
        }