Universal.Torrent.Client.PeerIO.EnqueueReceiveMessage C# (CSharp) Method

EnqueueReceiveMessage() public static method

public static EnqueueReceiveMessage ( IConnection connection, IEncryption decryptor, IRateLimiter rateLimiter, ConnectionMonitor monitor, TorrentManager manager, AsyncMessageReceivedCallback callback, object state ) : void
connection IConnection
decryptor IEncryption
rateLimiter IRateLimiter
monitor Universal.Torrent.Client.Managers.ConnectionMonitor
manager TorrentManager
callback AsyncMessageReceivedCallback
state object
return void
        public static void EnqueueReceiveMessage(IConnection connection, IEncryption decryptor, IRateLimiter rateLimiter,
            ConnectionMonitor monitor, TorrentManager manager, AsyncMessageReceivedCallback callback, object state)
        {
            // FIXME: Hardcoded number
            var count = 4;
            var buffer = ClientEngine.BufferManager.GetBuffer(count);
            var data = ReceiveCache.Dequeue()
                .Initialise(connection, decryptor, rateLimiter, monitor, manager, buffer, callback, state);
            NetworkIO.EnqueueReceive(connection, buffer, 0, count, rateLimiter, monitor, data.ManagerMonitor,
                MessageLengthReceivedCallback, data);
        }