diff options
| author | 7illusions <z@7illusions.com> | 2014-08-30 19:06:58 +0200 |
|---|---|---|
| committer | 7illusions <z@7illusions.com> | 2014-08-30 19:06:58 +0200 |
| commit | 66ad1699e22029b605e17735e8d9450285d8748a (patch) | |
| tree | ffc92c88d24850b2f82b6b3a8bdd904a2ccc77a5 /MediaBrowser.Common/Configuration/IConfigurationManager.cs | |
| parent | 34bc54263e886aae777a3537dc50a6535b51330a (diff) | |
| parent | 9d36f518182bc075c19d78084870f5115fa62d1e (diff) | |
Merge pull request #1 from MediaBrowser/master
Update to latest
Diffstat (limited to 'MediaBrowser.Common/Configuration/IConfigurationManager.cs')
| -rw-r--r-- | MediaBrowser.Common/Configuration/IConfigurationManager.cs | 48 |
1 files changed, 47 insertions, 1 deletions
diff --git a/MediaBrowser.Common/Configuration/IConfigurationManager.cs b/MediaBrowser.Common/Configuration/IConfigurationManager.cs index 0d0759b66..d826a3ee7 100644 --- a/MediaBrowser.Common/Configuration/IConfigurationManager.cs +++ b/MediaBrowser.Common/Configuration/IConfigurationManager.cs @@ -1,15 +1,26 @@ using MediaBrowser.Model.Configuration; using System; +using System.Collections.Generic; namespace MediaBrowser.Common.Configuration { public interface IConfigurationManager { /// <summary> + /// Occurs when [configuration updating]. + /// </summary> + event EventHandler<ConfigurationUpdateEventArgs> NamedConfigurationUpdating; + + /// <summary> /// Occurs when [configuration updated]. /// </summary> event EventHandler<EventArgs> ConfigurationUpdated; - + + /// <summary> + /// Occurs when [named configuration updated]. + /// </summary> + event EventHandler<ConfigurationUpdateEventArgs> NamedConfigurationUpdated; + /// <summary> /// Gets or sets the application paths. /// </summary> @@ -32,5 +43,40 @@ namespace MediaBrowser.Common.Configuration /// </summary> /// <param name="newConfiguration">The new configuration.</param> void ReplaceConfiguration(BaseApplicationConfiguration newConfiguration); + + /// <summary> + /// Gets the configuration. + /// </summary> + /// <param name="key">The key.</param> + /// <returns>System.Object.</returns> + object GetConfiguration(string key); + + /// <summary> + /// Gets the type of the configuration. + /// </summary> + /// <param name="key">The key.</param> + /// <returns>Type.</returns> + Type GetConfigurationType(string key); + + /// <summary> + /// Saves the configuration. + /// </summary> + /// <param name="key">The key.</param> + /// <param name="configuration">The configuration.</param> + void SaveConfiguration(string key, object configuration); + + /// <summary> + /// Adds the parts. + /// </summary> + /// <param name="factories">The factories.</param> + void AddParts(IEnumerable<IConfigurationFactory> factories); + } + + public static class ConfigurationManagerExtensions + { + public static T GetConfiguration<T>(this IConfigurationManager manager, string key) + { + return (T)manager.GetConfiguration(key); + } } } |
