private HeliosTemplate LoadTemplate(string path, bool isUserTemplate) { HeliosTemplate template = new HeliosTemplate(isUserTemplate); XmlReaderSettings settings = new XmlReaderSettings(); settings.IgnoreComments = true; settings.IgnoreWhitespace = true; settings.CloseInput = true; XmlReader reader = XmlReader.Create(path, settings); template.ReadXml(reader); reader.Close(); return(template); }
private HeliosTemplate LoadTemplate(string path, bool isUserTemplate) { HeliosTemplate template = new HeliosTemplate(isUserTemplate); XmlReaderSettings settings = new XmlReaderSettings(); settings.IgnoreComments = true; settings.IgnoreWhitespace = true; settings.CloseInput = true; ConfigManager.LogManager.LogDebug("TemplateManager Reading Template XML: " + path); XmlReader reader = XmlReader.Create(path, settings); template.ReadXml(reader); reader.Close(); ConfigManager.LogManager.LogDebug("TemplateManager XML Reader Closed: " + path); return(template); }
private void LoadTemplateDirectory(IList <HeliosTemplate> templates, string directory, bool userTemplates) { foreach (string templateFile in Directory.GetFiles(directory, "*.htpl")) { HeliosTemplate template = LoadTemplate(templateFile, userTemplates); // prevent crash on duplicate key if (templates is HeliosTemplateCollection indexed) { string key = indexed.GetKeyForItem(template); if (indexed.ContainsKey(key)) { Logger.Error($"ignored duplicate template '{Util.Anonymizer.Anonymize(templateFile)}' already loaded from another location"); continue; } } templates.Add(template); } foreach (string subDirectory in Directory.GetDirectories(directory)) { LoadTemplateDirectory(templates, subDirectory, userTemplates); } }
private string GetTemplatePath(HeliosTemplate template) { return(Path.Combine(_userTemplateDirectory, template.Category, template.Name + ".htpl")); }
private HeliosTemplate LoadTemplate(string path, bool isUserTemplate) { HeliosTemplate template = new HeliosTemplate(isUserTemplate); XmlReaderSettings settings = new XmlReaderSettings(); settings.IgnoreComments = true; settings.IgnoreWhitespace = true; settings.CloseInput = true; XmlReader reader = XmlReader.Create(path, settings); template.ReadXml(reader); reader.Close(); return template; }
private string GetTemplatePath(HeliosTemplate template) { return Path.Combine(_userTemplateDirectory, template.Category, template.Name + ".htpl"); }