예제 #1
0
        private void OnPackageReceived(NetIncomingMessage message)
        {
            try
            {
                var peerId   = (string)message.SenderConnection.Tag;
                var packer   = GetPacker(peerId);
                var unpacked = packer.Unpack <IPackage>(message.Data);

                _requestQueue.Add(peerId, unpacked);
            }
            catch (Exception exc)
            {
                ClientModel.Notifier.AsyncError(new AsyncErrorEventArgs(exc));
                ClientModel.Logger.Write(exc);
            }
        }
예제 #2
0
        protected override void OnPackageReceived(PackageReceivedEventArgs e)
        {
            try
            {
                if (e.Exception != null)
                {
                    OnError(e.Exception);
                    return;
                }

                _requestQueue.Add(ClientId, e.Unpacked);
            }
            catch (Exception exc)
            {
                OnError(exc);
            }
        }
예제 #3
0
 private void OnPackageReceived(object sender, PackageReceivedEventArgs e)
 {
     try
     {
         if (e.Exception != null)
         {
             _logger.Write(e.Exception);
         }
         else if (_isServerRunning)
         {
             var connectionId = ((ServerConnection)sender).Id;
             _requestQueue.Add(connectionId, e.Unpacked);
         }
     }
     catch (Exception exc)
     {
         _logger.Write(exc);
     }
 }
예제 #4
0
        private void OnPackageReceived(NetIncomingMessage message)
        {
            try
            {
                lock (_syncObject)
                {
                    var peerId   = (UserId)message.SenderConnection.Tag;
                    var peer     = GetPeer(peerId);
                    var unpacked = peer.Packer.Unpack <IPackage>(message.Data);

                    _requestQueue.Add(peerId, unpacked);
                }
            }
            catch (Exception exc)
            {
                _notifier.AsyncError(new AsyncErrorEventArgs(exc));
                _logger.Write(exc);
            }
        }