From c6a09ca77a2da5a2dc7cd78706bb23ae05e7a17a Mon Sep 17 00:00:00 2001 From: "VKMTHD\\franzjosefkober" <franz.josef.kober@ivt.tugraz.at> Date: Wed, 10 Mar 2021 15:32:08 +0100 Subject: [PATCH] added multistage reader --- .../Resources/XMLNames.Designer.cs | 9 +++++ .../VectoCommon/Resources/XMLNames.resx | 3 ++ ...ationInputDataMultistageV01InjectModule.cs | 5 +++ .../Reader/Impl/XMLDeclarationInputReader.cs | 40 +++++++++++++++++-- 4 files changed, 54 insertions(+), 3 deletions(-) diff --git a/VectoCommon/VectoCommon/Resources/XMLNames.Designer.cs b/VectoCommon/VectoCommon/Resources/XMLNames.Designer.cs index c67d405baf..ac375e108f 100644 --- a/VectoCommon/VectoCommon/Resources/XMLNames.Designer.cs +++ b/VectoCommon/VectoCommon/Resources/XMLNames.Designer.cs @@ -3300,6 +3300,15 @@ namespace TUGraz.VectoCommon.Resources { } } + /// <summary> + /// Looks up a localized string similar to VectoOuputMultistage. + /// </summary> + public static string VectoOuputMultistage { + get { + return ResourceManager.GetString("VectoOuputMultistage", resourceCulture); + } + } + /// <summary> /// Looks up a localized string similar to VectoOutputPrimaryVehicle. /// </summary> diff --git a/VectoCommon/VectoCommon/Resources/XMLNames.resx b/VectoCommon/VectoCommon/Resources/XMLNames.resx index b8eaad1e3a..d957901567 100644 --- a/VectoCommon/VectoCommon/Resources/XMLNames.resx +++ b/VectoCommon/VectoCommon/Resources/XMLNames.resx @@ -1419,4 +1419,7 @@ <data name="Bus_WaterElectricHeater" xml:space="preserve"> <value>WaterElectricHeater</value> </data> + <data name="VectoOuputMultistage" xml:space="preserve"> + <value>VectoOuputMultistage</value> + </data> </root> \ No newline at end of file diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/NinjectModules/XMLDeclarationInputDataMultistageV01InjectModule.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/NinjectModules/XMLDeclarationInputDataMultistageV01InjectModule.cs index 54f573aef4..a0f136e535 100644 --- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/NinjectModules/XMLDeclarationInputDataMultistageV01InjectModule.cs +++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/NinjectModules/XMLDeclarationInputDataMultistageV01InjectModule.cs @@ -1,5 +1,6 @@ using Ninject.Modules; using TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Interfaces; +using TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Reader.Impl; namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.NinjectModules { @@ -9,6 +10,10 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.NinjectModules { Bind<IXMLDeclarationInputData>().To<XMLDeclarationInputDataProviderMultistageV01>() .Named(XMLDeclarationInputDataProviderMultistageV01.QUALIFIED_XSD_TYPE); + + Bind<IXMLDeclarationInputDataReader>().To<XMLDeclarationInputReaderMultistageV01>() + .Named(XMLDeclarationInputReaderMultistageV01.QUALIFIED_XSD_TYPE); + } } } \ No newline at end of file diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/Reader/Impl/XMLDeclarationInputReader.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/Reader/Impl/XMLDeclarationInputReader.cs index 6008ba605e..8e374940ce 100644 --- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/Reader/Impl/XMLDeclarationInputReader.cs +++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/Reader/Impl/XMLDeclarationInputReader.cs @@ -59,13 +59,47 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Reader.Impl public new static readonly string QUALIFIED_XSD_TYPE = XMLHelper.CombineNamespace(NAMESPACE_URI.NamespaceName, XSD_TYPE); - public XMLDeclarationInputReaderV20(IXMLDeclarationInputData inputData, XmlNode baseNode) : base(inputData, - baseNode) + public XMLDeclarationInputReaderV20(IXMLDeclarationInputData inputData, XmlNode baseNode) + : base(inputData, baseNode) { } + } + + // --------------------------------------------------------------------------------------- + + public class XMLDeclarationInputReaderMultistageV01 : AbstractComponentReader, IXMLDeclarationInputDataReader + { + + public static readonly XNamespace NAMESPACE_URI = XMLDefinitions.DECLARATION_MULTISTAGE_BUS_VEHICLE_NAMESPACE_VO1; + + public const string XSD_TYPE = "VectoOuputMultistageType"; + + public static readonly string QUALIFIED_XSD_TYPE = XMLHelper.CombineNamespace(NAMESPACE_URI.NamespaceName, XSD_TYPE); + + [Inject] + public IDeclarationInjectFactory Factory { protected get; set; } + + protected IDeclarationJobInputData _jobData; + + + public XMLDeclarationInputReaderMultistageV01(IXMLDeclarationInputData inputData, XmlNode baseNode) + : base(inputData, baseNode) { } - } + public IDeclarationJobInputData JobData + { + get { return _jobData ?? (_jobData = CreateComponent(XMLNames.VectoOuputMultistage, JobCreator)); } + } + + protected virtual IDeclarationJobInputData JobCreator(string version, XmlNode node, string arg3) + { + //var job = Factory.CreateJobData(version, BaseNode, InputData, (InputData as IXMLResource).DataSource.SourceFile); + //job.Reader = Factory.CreateJobReader(version, job, JobNode); + //return job; + + return null; + } + } // --------------------------------------------------------------------------------------- -- GitLab