示例#1
0
 /// <summary>
 /// Registers a config file
 /// </summary>
 /// <param name="ConfigObject">Config object to register</param>
 public static void RegisterConfigFile(IConfig ConfigObject)
 {
     Contract.Requires <ArgumentNullException>(ConfigObject != null, "ConfigObject");
     if (ConfigFiles.ContainsKey(ConfigObject.Name))
     {
         return;
     }
     ConfigObject.Load();
     ConfigFiles.Add(ConfigObject.Name, ConfigObject);
 }
 /// <summary>
 /// Gets a specified config file
 /// </summary>
 /// <typeparam name="T">Type of the config object</typeparam>
 /// <param name="Name">Name of the config object</param>
 /// <returns>The config object specified</returns>
 public static T GetConfigFile <T>(string Name)
 {
     if (!ConfigFiles.ContainsKey(Name))
     {
         throw new ArgumentException("The config object " + Name + " was not found.");
     }
     if (!(ConfigFiles[Name] is T))
     {
         throw new ArgumentException("The config object " + Name + " is not the specified type.");
     }
     return((T)ConfigFiles[Name]);
 }
 /// <summary>
 /// Registers a config file
 /// </summary>
 /// <param name="ConfigObject">Config object to register</param>
 public static void RegisterConfigFile(IConfig ConfigObject)
 {
     if (ConfigObject == null)
     {
         throw new ArgumentNullException("ConfigObject");
     }
     if (ConfigFiles.ContainsKey(ConfigObject.Name))
     {
         return;
     }
     ConfigObject.Load();
     ConfigFiles.Add(ConfigObject.Name, ConfigObject);
 }
 /// <summary>
 /// Determines if a specified config file is registered
 /// </summary>
 /// <typeparam name="T">Type of the config object</typeparam>
 /// <param name="Name">Name of the config object</param>
 /// <returns>The config object specified</returns>
 public static bool ContainsConfigFile <T>(string Name)
 {
     return(ConfigFiles.ContainsKey(Name) && ConfigFiles[Name] is T);
 }