private void connectionManager_PullUnicastMetadatasEvent(object sender, PullUnicastMetadatasEventArgs e)
        {
            var connectionManager = sender as ConnectionManager;
            if (connectionManager == null) return;

            var packetManager = _packetControlManager[connectionManager.Node];

            if (packetManager.StockUnicastMetadatas.Count > _maxMetadataCount * packetManager.StockUnicastMetadatas.SurvivalTime.TotalMinutes) return;

            Debug.WriteLine(string.Format("ConnectionManager: Pull UnicastMetadatas ({0})", e.UnicastMetadatas.Count()));

            foreach (var metadata in e.UnicastMetadatas.Take(_maxMetadataCount))
            {
                if (_settings.MetadataManager.SetMetadata(metadata))
                {
                    packetManager.StockUnicastMetadatas.Add(metadata.CreateHash(_hashAlgorithm));

                    _pullMetadataCount.Increment();
                }
            }
        }
        private void connectionManager_PullUnicastMetadatasEvent(object sender, PullUnicastMetadatasEventArgs e)
        {
            var connectionManager = sender as ConnectionManager;
            if (connectionManager == null) return;

            var messageManager = _messagesManager[connectionManager.Node];

            if (messageManager.StockSignatureMessageMetadatas.Count > _maxMetadataCount * messageManager.StockSignatureMessageMetadatas.SurvivalTime.TotalMinutes) return;

            Debug.WriteLine(string.Format("ConnectionManager: Pull UnicastMetadatas ({0})",
                e.SignatureMessageMetadatas.Count()));

            foreach (var metadata in e.SignatureMessageMetadatas.Take(_maxMetadataCount))
            {
                if (_settings.MetadataManager.SetMetadata(metadata))
                {
                    messageManager.StockSignatureMessageMetadatas.Add(metadata.CreateHash(_hashAlgorithm));

                    _unicastSignatureLastAccessTimes[metadata.Signature] = DateTime.UtcNow;
                }

                _pullMetadataCount.Increment();
            }
        }