public bool UnRegisterConfiguration(IConfiguration configuration)
{
if (configuration == null) {
throw new ArgumentException("configuration argument cannot be null");
}
var configToRemove = Configurations.FirstOrDefault(kvp => kvp.Value.Equals(configuration));
if (configToRemove.Key != null) {
bool result = Configurations.TryRemove(configToRemove.Key, out configuration);
if (result) {
OnConfigurationUnRegistered(configuration);
}
return result;
}
return false;
}