public static void ImportProviderSettings(int moduleId, XmlNode settingsNode, string providerName)
{
if ((settingsNode != null))
{
var pc = new ParameterController(providerName);
foreach (var p in pc.GetParameters(moduleId))
{
pc.DeleteParameter(p.Key);
}
foreach (XmlNode node in settingsNode.SelectNodes(Portable.ParamElement))
{
if (node.Attributes == null)
{
continue;
}
var p = new ParameterInfo
{
ModuleId = moduleId,
Name = node.Attributes["name"].Value,
Type = node.Attributes[Portable.TypeAttribute].Value
};
if (p.IsArgumentRequired())
{
p.TypeArgument = node.Attributes[Portable.ArgAttribute].Value;
}
p.IsValueRequired = (node.Attributes[Portable.ValueRequiredAttribute] != null);
pc.AddParameter(p);
}
}
}