private void connectionManager_PullBroadcastMetadatasEvent(object sender, PullBroadcastMetadatasEventArgs e) { var connectionManager = sender as ConnectionManager; if (connectionManager == null) return; var packetManager = _packetControlManager[connectionManager.Node]; if (packetManager.StockBroadcastMetadatas.Count > _maxMetadataCount * packetManager.StockBroadcastMetadatas.SurvivalTime.TotalMinutes) return; Debug.WriteLine(string.Format("ConnectionManager: Pull BroadcastMetadatas ({0})", e.BroadcastMetadatas.Count())); foreach (var metadata in e.BroadcastMetadatas.Take(_maxMetadataCount)) { if (_settings.MetadataManager.SetMetadata(metadata)) { packetManager.StockBroadcastMetadatas.Add(metadata.CreateHash(_hashAlgorithm)); _pullMetadataCount.Increment(); } } }
private void connectionManager_PullBroadcastMetadatasEvent(object sender, PullBroadcastMetadatasEventArgs e) { var connectionManager = sender as ConnectionManager; if (connectionManager == null) return; var messageManager = _messagesManager[connectionManager.Node]; if (messageManager.StockProfileMetadatas.Count > _maxMetadataCount * messageManager.StockProfileMetadatas.SurvivalTime.TotalMinutes) return; Debug.WriteLine(string.Format("ConnectionManager: Pull BroadcastMetadatas ({0})", e.ProfileMetadatas.Count())); foreach (var metadata in e.ProfileMetadatas.Take(_maxMetadataCount)) { if (_settings.MetadataManager.SetMetadata(metadata)) { messageManager.StockProfileMetadatas.Add(metadata.CreateHash(_hashAlgorithm)); var signature = metadata.Certificate.ToString(); _broadcastSignatureLastAccessTimes[signature] = DateTime.UtcNow; } _pullMetadataCount.Increment(); } }