/// <summary> /// parse a <code><process-engine .../></code> element and add it to the list of parsed elements /// </summary> protected internal virtual void parseProcessEngine(Element element, IList <ProcessEngineXml> parsedProcessEngines) { ProcessEngineXmlImpl processEngine = new ProcessEngineXmlImpl(); // set name processEngine.Name = element.attribute(NAME); // set default string defaultValue = element.attribute(DEFAULT); if (string.ReferenceEquals(defaultValue, null) || defaultValue.Length == 0) { processEngine.Default = false; } else { processEngine.Default = bool.Parse(defaultValue); } IDictionary <string, string> properties = new Dictionary <string, string>(); IList <ProcessEnginePluginXml> plugins = new List <ProcessEnginePluginXml>(); foreach (Element childElement in element.elements()) { if (CONFIGURATION.Equals(childElement.TagName)) { processEngine.ConfigurationClass = childElement.Text; } else if (DATASOURCE.Equals(childElement.TagName)) { processEngine.Datasource = childElement.Text; } else if (JOB_ACQUISITION.Equals(childElement.TagName)) { processEngine.JobAcquisitionName = childElement.Text; } else if (PROPERTIES.Equals(childElement.TagName)) { parseProperties(childElement, properties); } else if (PLUGINS.Equals(childElement.TagName)) { parseProcessEnginePlugins(childElement, plugins); } } // set collected properties processEngine.Properties = properties; // set plugins processEngine.Plugins = plugins; // add the process engine to the list of parsed engines. parsedProcessEngines.Add(processEngine); }
/// <summary> /// parse a <code><job-executor .../></code> element and add it to the list of parsed elements /// </summary> protected internal virtual void parseJobExecutor(Element element, JobExecutorXmlImpl jobExecutorXml) { IList <JobAcquisitionXml> jobAcquisitions = new List <JobAcquisitionXml>(); IDictionary <string, string> properties = new Dictionary <string, string>(); foreach (Element childElement in element.elements()) { if (JOB_ACQUISITION.Equals(childElement.TagName)) { parseJobAcquisition(childElement, jobAcquisitions); } else if (PROPERTIES.Equals(childElement.TagName)) { parseProperties(childElement, properties); } } jobExecutorXml.JobAcquisitions = jobAcquisitions; jobExecutorXml.Properties = properties; }