public void UpsertCollector(Collector collector) { Debug.Assert(!this.m_readOnly, "Configuration in use is read-only. Did you forget BeginCachedConfiguration?"); if (!Collectors.ContainsKey(collector.Name)) { // Clone the collector and add to the configuration's Collector dictionary Collectors.Add(collector.Name, (Collector)collector.Clone()); _logger.LogInformation($"Collector {collector.Name} added."); } else { Debug.Assert(Collectors.ContainsKey(collector.Name), "Collector not found in dictionary. Cannot update."); // Clone the user and update the configuration's UserProfile dictionary Collectors[collector.Name] = (Collector)collector.Clone(); _logger.LogInformation($"Collector {collector.Name} updated."); } }