Esempio n. 1
0
        private void ThreadBody()
        {
            while (!_disposed)
            {
                if (OnPackageReceived == null)
                {
                    Thread.Sleep(500);
                    continue;
                }

                OnPackageReceived?.Invoke(_cryptoProvider.Decrypt(BytePackageUtil.ReadPackage(_resourceFactory())));
            }
        }
        private void ThreadBody()
        {
            while (!Disposed)
            {
                byte[] package;

                while (this.outgoingPackageQueue.TryDequeue(out package))
                {
                    BytePackageUtil.WritePackage(_resourceFactory(), _cryptoProvider.Encrypt(package));
                }

                this.flushEvent.WaitOne(5000);
            }
        }
Esempio n. 3
0
        private void ReadPackages()
        {
            while (!disposed)
            {
                try
                {
                    byte[] package = BytePackageUtil.ReadPackage(_endpointConnection());

                    package = _cryptoProvider.Decrypt(package);

                    if (package == null)
                    {
                        OnReadError();
                        return;
                    }

                    this.packageProcessor.Enqueue(package);
                }
                catch (Exception)
                {
                    OnReadError();
                }
            }
        }
 private void Write(byte[] package)
 {
     BytePackageUtil.WritePackage(_streamFactory(), _cryptoProvider.Encrypt(package));
 }