private void OnRemoteConfigurationRemoved(object sender, ConfigurationEventArgs e) { Configuration configuration; IConfiguration remoteConfiguration = e.Configuration; Guid configurationUid; try { configurationUid = remoteConfiguration.Uid; } catch (Exception exception) { LoggingProvider.Current.Log(TraceEventType.Error, exception); return; } lock (_collection) { VerifyDisposed(); if (_collection.TryGetValue(configurationUid, out configuration)) { _collection.Remove(configurationUid); } } if (configuration == null) { configuration = new Configuration(remoteConfiguration, _application); } ConfigurationEventArgs.RaiseEvent((EventHandler <ConfigurationEventArgs>)_configurationRemoved, this, configuration); configuration.Dispose(); }
private void OnHostConfigurationCreated(object sender, ConfigurationEventArgs e) { IConfiguration hostConfiguration = e.Configuration; lock (Lock) { VerifyDisposed(); if (!ContainsKey(hostConfiguration.Uid)) { Add(hostConfiguration.Uid, hostConfiguration); } } ConfigurationEventArgs.RaiseEvent((EventHandler <ConfigurationEventArgs>)_configurationCreated, this, hostConfiguration); }
private void OnHostConfigurationRemoved(object sender, ConfigurationEventArgs e) { IConfiguration hostConfiguration = e.Configuration; bool configurationRemoved; lock (Lock) { VerifyDisposed(); configurationRemoved = Remove(hostConfiguration.Uid); } if (configurationRemoved) { ConfigurationEventArgs.RaiseEvent((EventHandler <ConfigurationEventArgs>)_configurationRemoved, this, hostConfiguration); } }