From 90f6b1c6522ea45110e9a201c8f916772d0aded2 Mon Sep 17 00:00:00 2001 From: Markus Quaritsch <quaritsch@ivt.tugraz.at> Date: Thu, 9 Mar 2023 16:03:10 +0100 Subject: [PATCH] adding binding and dummy mockup result writer --- .../VectoCore/Mockup/Ninject/MockupModule.cs | 2 + .../Reports/MockupReportResultsFactory.cs | 52 +++++++++++++++++++ 2 files changed, 54 insertions(+) create mode 100644 VectoCore/VectoCore/Mockup/Reports/MockupReportResultsFactory.cs diff --git a/VectoCore/VectoCore/Mockup/Ninject/MockupModule.cs b/VectoCore/VectoCore/Mockup/Ninject/MockupModule.cs index 993f9b86a2..f13ab0ae5e 100644 --- a/VectoCore/VectoCore/Mockup/Ninject/MockupModule.cs +++ b/VectoCore/VectoCore/Mockup/Ninject/MockupModule.cs @@ -8,6 +8,7 @@ using TUGraz.VectoCore; using TUGraz.VectoCore.InputData; using TUGraz.VectoCore.InputData.FileIO.XML; using TUGraz.VectoCore.OutputData.XML; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.Common; using TUGraz.VectoMockup.Reports; using TUGraz.VectoMockup.Simulation.RundataFactories; @@ -27,6 +28,7 @@ namespace TUGraz.VectoMockup.Ninject Rebind<IVectoRunDataFactoryFactory>().To<VectoMockUpRunDataFactoryFactory>(); Rebind<IXMLDeclarationReportFactory>().To<MockupReportFactory>(); Rebind<IXMLInputDataReader>().To<MockupXMLInputDataFactory>(); + Rebind<IResultsWriterFactory>().To<MockupReportResultsFactory>().InSingletonScope(); } #endregion diff --git a/VectoCore/VectoCore/Mockup/Reports/MockupReportResultsFactory.cs b/VectoCore/VectoCore/Mockup/Reports/MockupReportResultsFactory.cs new file mode 100644 index 0000000000..0f1786e232 --- /dev/null +++ b/VectoCore/VectoCore/Mockup/Reports/MockupReportResultsFactory.cs @@ -0,0 +1,52 @@ +using System.Collections.Generic; +using System.Xml; +using System.Xml.Linq; +using TUGraz.VectoCommon.InputData; +using TUGraz.VectoCore.OutputData; +using TUGraz.VectoCore.OutputData.XML.DeclarationReports.Common; + +namespace TUGraz.VectoMockup.Reports +{ + class MockupReportResultsFactory : IResultsWriterFactory + { + #region Implementation of IResultsWriterFactory + + public IResultsWriter GetCIFResultsWriter(string vehicleCategory, VectoSimulationJobType jobType, bool ovc, bool exempted) + { + return new MockupDummyResultsWriter(XNamespace.Get("urn:tugraz:ivt:VectoAPI:DeclarationOutput:v0.9")); + } + + public IResultsWriter GetMRFResultsWriter(string vehicleCategory, VectoSimulationJobType jobType, bool ovc, bool exempted) + { + return new MockupDummyResultsWriter(XNamespace.Get("urn:tugraz:ivt:VectoAPI:DeclarationOutput:v0.9")); + } + + public IResultsWriter GetVIFResultsWriter(string vehicleCategory, VectoSimulationJobType jobType, bool ovc, bool exempted) + { + return new MockupDummyResultsWriter(XNamespace.Get("urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1")); + } + + #endregion + } + + internal class MockupDummyResultsWriter : IResultsWriter + { + private readonly XNamespace TNS; + + public MockupDummyResultsWriter(XNamespace ns) + { + TNS = ns; + } + + #region Implementation of IResultsWriter + + public XElement GenerateResults(List<IResultEntry> results) + { + // only return a single 'Results' element - will be replaced in Mockup Report + return new XElement(TNS + "Results"); + } + + #endregion + } + +} \ No newline at end of file -- GitLab