Esempio n. 1
0
        private void _RServer_OnMsgAsync(IUserToken userToken, RSocketMsg msg)
        {
            try
            {
                switch ((RSocketMsgType)msg.Type)
                {
                case RSocketMsgType.Ping:
                    _RServer.Reply(userToken, new RSocketMsg(RSocketMsgType.Pong)
                    {
                        SequenceNumber = msg.SequenceNumber
                    });
                    break;

                case RSocketMsgType.Pong:

                    break;

                case RSocketMsgType.Request:

                    var data = RPCReversal.Reversal(userToken, msg);

                    var rSocketMsg = new RSocketMsg(RSocketMsgType.Response, null, null, data)
                    {
                        SequenceNumber = msg.SequenceNumber
                    };

                    _RServer.Reply(userToken, rSocketMsg);
                    break;

                case RSocketMsgType.RegistNotice:
                    _noticeCollection.Set(userToken).GetAwaiter();
                    break;

                case RSocketMsgType.Response:

                    break;

                case RSocketMsgType.Error:

                    break;

                case RSocketMsgType.Close:
                    _RServer.Disconnect(userToken);
                    break;
                }
            }
            catch (Exception ex)
            {
                ExceptionCollector.Add("Provider", ex);
            }
        }
Esempio n. 2
0
        private void _RServer_OnMsg(IUserToken userToken, RSocketMsg msg)
        {
            //ConsoleHelper.WriteLine($"2 provider receive: {msg.SequenceNumber}");

            switch ((RSocketMsgType)msg.Type)
            {
            case RSocketMsgType.Ping:
                _RServer.Reply(userToken, new RSocketMsg(RSocketMsgType.Pong)
                {
                    SequenceNumber = msg.SequenceNumber
                });
                break;

            case RSocketMsgType.Pong:

                break;

            case RSocketMsgType.Request:

                var data = RPCReversal.Reversal(userToken, msg);

                var rSocketMsg = new RSocketMsg(RSocketMsgType.Response, null, null, data)
                {
                    SequenceNumber = msg.SequenceNumber
                };

                _RServer.Reply(userToken, rSocketMsg);

                //ConsoleHelper.WriteLine($"3 provider send: {msg.SequenceNumber}");
                break;

            case RSocketMsgType.RegistNotice:
                _noticeCollection.Set(userToken);
                break;

            case RSocketMsgType.Response:

                break;

            case RSocketMsgType.Error:

                break;

            case RSocketMsgType.Close:
                _RServer.Disconnect(userToken);
                break;
            }
        }
Esempio n. 3
0
        private void _RServer_OnMsg(Sockets.Interface.IUserToken userToken, RSocketMsg msg)
        {
            //ConsoleHelper.WriteLine($"2 provider receive: {msg.SequenceNumber}");

            switch ((RSocketMsgType)msg.Type)
            {
            case RSocketMsgType.Ping:
                _RServer.Reply(userToken, new RSocketMsg(RSocketMsgType.Pong)
                {
                    SequenceNumber = msg.SequenceNumber
                });
                break;

            case RSocketMsgType.Pong:

                break;

            case RSocketMsgType.Request:
                _RServer.Reply(userToken, new RSocketMsg(RSocketMsgType.Response, null, null,
                                                         RPCReversal.Reversal(userToken, msg))
                {
                    SequenceNumber = msg.SequenceNumber
                });
                //ConsoleHelper.WriteLine($"3 provider send: {msg.SequenceNumber}");
                break;

            case RSocketMsgType.Response:

                break;

            case RSocketMsgType.RequestBig:

                break;

            case RSocketMsgType.ResponseBig:

                break;

            case RSocketMsgType.Close:
                _RServer.Disconnect(userToken);
                break;
            }
        }
Esempio n. 4
0
        private void _RServer_OnMsg(Sockets.Interface.IUserToken userToken, RSocketMsg msg)
        {
            switch ((RSocketMsgType)msg.Type)
            {
            case RSocketMsgType.Ping:
                _RServer.Reply(userToken, new RSocketMsg(RSocketMsgType.Pong)
                {
                    SequenceNumber = msg.SequenceNumber
                });
                break;

            case RSocketMsgType.Pong:

                break;

            case RSocketMsgType.Request:
                _RServer.Reply(userToken, new RSocketMsg(RSocketMsgType.Response, null, null,
                                                         RPCReversal.Reversal(userToken, msg))
                {
                    SequenceNumber = msg.SequenceNumber
                });
                break;

            case RSocketMsgType.Response:

                break;

            case RSocketMsgType.RequestBig:

                break;

            case RSocketMsgType.ResponseBig:

                break;

            case RSocketMsgType.Close:
                _RServer.Disconnected(userToken);
                break;
            }
        }
Esempio n. 5
0
        private void _RServer_OnMsg(Sockets.Interface.IUserToken userToken, RSocketMsg msg)
        {
            //ConsoleHelper.WriteLine($"2 provider receive: {msg.SequenceNumber}");

            switch ((RSocketMsgType)msg.Type)
            {
            case RSocketMsgType.Ping:
                _RServer.Reply(userToken, new RSocketMsg(RSocketMsgType.Pong)
                {
                    SequenceNumber = msg.SequenceNumber
                });
                break;

            case RSocketMsgType.Pong:

                break;

            case RSocketMsgType.Request:
                try
                {
                    var data = RPCReversal.Reversal(userToken, msg);

                    var rSocketMsg = new RSocketMsg(RSocketMsgType.Response, null, null, data)
                    {
                        SequenceNumber = msg.SequenceNumber
                    };

                    _RServer.Reply(userToken, rSocketMsg);
                }
                catch (Exception ex)
                {
                    try
                    {
                        ExceptionCollector.Add("Provider", ex);

                        if (userToken.Socket != null && userToken.Socket.Connected)
                        {
                            var eData = ParamsSerializeUtil.Serialize(ex.Message);
                            var eMsg  = new RSocketMsg(RSocketMsgType.Error, null, null, eData)
                            {
                                SequenceNumber = msg.SequenceNumber
                            };
                            _RServer.Reply(userToken, eMsg);
                        }
                    }
                    catch (Exception sex)
                    {
                        Console.WriteLine($"_RServer_OnMsg.Error:{sex.Message}");
                    }
                }
                //ConsoleHelper.WriteLine($"3 provider send: {msg.SequenceNumber}");
                break;

            case RSocketMsgType.Response:

                break;

            case RSocketMsgType.Error:

                break;

            case RSocketMsgType.Close:
                _RServer.Disconnect(userToken);
                break;
            }
        }