public virtual void SetCommonConfiguration(Dictionary <string, string> settings)
 {
     lock (_commonLock)
     {
         Configuration config = CoreRegistryRepository.GetOneConfigurationWhere(c => c.Name == CommonConfigName && c.ApplicationId == Application.Unknown.Id);
         config.Settings.Each(s => CoreRegistryRepository.Delete(s));
         config.Settings = DictionaryToSettings(settings, config).ToList();
         CoreRegistryRepository.Save(config);
     }
 }
 public virtual Dictionary <string, string> GetCommonConfiguration()
 {
     lock (_commonLock)
     {
         Configuration config = CoreRegistryRepository.GetOneConfigurationWhere(c => c.Name == CommonConfigName && c.ApplicationId == Application.Unknown.Id);
         if (config != null)
         {
             Dictionary <string, string> result = new Dictionary <string, string>();
             foreach (ConfigurationSetting setting in config.Settings)
             {
                 if (!result.ContainsKey(setting.Key))
                 {
                     result.Add(setting.Key, setting.Value);
                 }
                 else
                 {
                     Logger.Warning("Configuration ({0}) has duplicate keys specified: {1} with values {2} and {3} using {3}", CommonConfigName, setting.Key, setting.Value, result[setting.Key]);
                 }
             }
             return(result);
         }
         return(new Dictionary <string, string>());
     }
 }