public void CreateParemetersFile(RoleConfiguration role, string filePath) { this.log.Debug("Creating {0}", filePath); XmlTextWriter xmlTextWriter = new XmlTextWriter(filePath, Encoding.UTF8); xmlTextWriter.Formatting = Formatting.Indented; xmlTextWriter.Indentation = 4; xmlTextWriter.WriteStartDocument(); xmlTextWriter.WriteStartElement("parameters"); foreach (ParameterConfiguration parameter in role.Parameters) { xmlTextWriter.WriteStartElement("parameter"); xmlTextWriter.WriteAttributeString("name", parameter.Name); foreach (ParameterEntry entry in parameter.Entries) { xmlTextWriter.WriteStartElement("parameterEntry"); xmlTextWriter.WriteAttributeString("kind", entry.Kind); xmlTextWriter.WriteAttributeString("scope", entry.Scope); xmlTextWriter.WriteAttributeString("match", entry.Match); xmlTextWriter.WriteEndElement(); } xmlTextWriter.WriteEndElement(); } xmlTextWriter.WriteEndElement(); xmlTextWriter.WriteEndDocument(); xmlTextWriter.Flush(); xmlTextWriter.Close(); }
public static void ConfigSection(this RoleConfiguration roleConfiguration, string name, params Func <SimpleRoleConfiguration, SimpleRoleConfiguration>[] parameters) { foreach (var parameter in parameters) { parameter(new SimpleRoleConfiguration(roleConfiguration, name)); } }
public void Role(string name, params Action <RoleConfiguration>[] configurations) { RoleConfiguration roleConfiguration = new RoleConfiguration(name); foreach (Action <RoleConfiguration> configuration in configurations) { configuration(roleConfiguration); } this.roles.Add(roleConfiguration); }
public void CreateSetParametersFile(string filePath, RoleConfiguration role, IDictionary <string, object> values) { this.log.Debug("Creating {0}", filePath); XmlTextWriter xmlTextWriter = new XmlTextWriter(filePath, Encoding.UTF8); xmlTextWriter.Formatting = Formatting.Indented; xmlTextWriter.Indentation = 4; xmlTextWriter.WriteStartDocument(); xmlTextWriter.WriteStartElement("parameters"); foreach (ParameterConfiguration parameter in role.Parameters) { xmlTextWriter.WriteStartElement("setParameter"); xmlTextWriter.WriteAttributeString("name", parameter.Name); xmlTextWriter.WriteAttributeString("value", values[parameter.Name].ToString()); xmlTextWriter.WriteEndElement(); } xmlTextWriter.WriteEndElement(); xmlTextWriter.WriteEndDocument(); xmlTextWriter.Flush(); xmlTextWriter.Close(); }
public IDictionary <string, object> GetParameters(RoleConfiguration role, string environment) { var data = (IDictionary <string, object>) new ExpandoObject(); foreach (var dataSetGetter in this.environments[environment]) { var dataSet = dataSetGetter(data); foreach (var item in dataSet) { var key = item.Key; var value = item.Value; data[key] = value; } } foreach (var parameter in role.Parameters) { string name = parameter.Name; object value = parameter.ValueGetter(data); data[name] = value; } return(data); }
public static ParameterConfiguration ConnectionString(this RoleConfiguration roleConfiguration, string name, Func <dynamic, object> valueGetter = null) { return(roleConfiguration.Parameter(name, valueGetter).AsConnectionString()); }
public SimpleRoleConfiguration(RoleConfiguration roleConfiguration, string sectionName) { this.roleConfiguration = roleConfiguration; this.sectionName = sectionName; }