/// <summary> /// Create a new instance using an input stream. /// </summary> /// <param name="configurationFilePath"></param> /// <param name="profile"></param> /// <param name="encoding"></param> /// <returns></returns> public static ConfigFile Parse(string configurationFilePath, string profile, Encoding encoding) { ConfigAccumulator accumulator = new ConfigAccumulator(); try { using (StreamReader ConfigurationStream = new StreamReader(configurationFilePath, encoding)) { string line = null; while ((line = ConfigurationStream.ReadLine()) != null) { accumulator.Accept(line); } } } catch (Exception) { throw; } if (!accumulator.FoundDefaultProfile) { Console.WriteLine("No DEFAULT profile was specified in the configuration"); //LOG.info("No DEFAULT profile was specified in the configuration"); } if (profile != null && !accumulator.ConfigurationByProfile.ContainsKey(profile)) { throw new Exception($"No profile named {profile} exists in the configuration file"); } return(new ConfigFile(accumulator, profile)); }
public ConfigFile(ConfigAccumulator accumulator, string profile) { this.accumulator = accumulator; this.profile = profile; }
/// <summary> /// constracter /// </summary> /// <param name="accumulator"></param> /// <param name="profile"></param> public ConfigFile(ConfigAccumulator accumulator, string profile) { Accumulator = accumulator; Profile = profile; }