Exemplo n.º 1
0
        private void ReceiveData(Tcp.Received data)
        {
            _lastDataReceived = DateTime.Now;
            var responses = ParseResponse(data.Data.ToArray());

            foreach (var response in responses)
            {
                if (!_requesterDictionary.ContainsKey(response.Sync))
                {
                    return;
                }


                var sender = _requesterDictionary[response.Sync];

                if (sender != null)
                {
                    if (response.IsError)
                    {
                        sender.Tell(new Failure {
                            Exception = new Exception(response.Error)
                        }, Self);
                    }
                    else if (!Equals(sender, Self))
                    {
                        sender.Tell(response);
                    }
                }
                _requesterDictionary.Remove(response.Sync);
            }
        }
Exemplo n.º 2
0
        private void TcpReceivePro(Tcp.Received message)
        {
            Console.WriteLine("接收訊息觸發");

            // 解析Bytes Data 做反序列化成Obj
            var received = message as Tcp.Received;
            var bytes    = received.Data.ToArray();
            var str      = Encoding.Default.GetString(bytes);

            Console.WriteLine("接收訊息. Message=" + str);

            // 訊息丟回去
            connection.Tell(Tcp.Write.Create(ByteString.FromBytes(bytes)));
        }
Exemplo n.º 3
0
        void OnReceivedData(Tcp.Received received)
        {
            DataStream.ReadMessage(received.Data.ToArray());
            while (DataStream.HasMessage)
            {
                var data = DataStream.GetMessage();

                //Deserializing data is shown on server
                Console.WriteLine(Encoding.UTF8.GetString(data));

                //Echo the same data to client
                Reply(data);
            }
        }
Exemplo n.º 4
0
 void HandleReceived(Tcp.Received m)
 {
     logger.Info($"接收信息: {m.Data}--{Sender.Path.Address.ToString()}");
 }