Code development platform for open source projects from the European Union institutions

Skip to content
Snippets Groups Projects
Commit c59f4087 authored by Harald MARTINI's avatar Harald MARTINI
Browse files

added IXMLMockupReport interface, refactored ManufacturerReports, implemented...

added IXMLMockupReport interface, refactored ManufacturerReports, implemented WriteMockupResult method
parent 74c599fc
No related branches found
No related tags found
No related merge requests found
......@@ -6,22 +6,31 @@ using System.Threading.Tasks;
using System.Xml;
using System.Xml.Linq;
using TUGraz.VectoCommon.InputData;
using TUGraz.VectoCommon.Resources;
using TUGraz.VectoCore.Models.Declaration;
using TUGraz.VectoCore.Models.Simulation.Data;
using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReportXMLTypeWriter;
using TUGraz.VectoCore.Utils;
namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9
{
internal abstract class AbstractManufacturerReport : IXMLManufacturerReport
internal interface IXMLMockupReport
{
void WriteMockupResult(XMLDeclarationReport.ResultEntry resultValue);
}
internal abstract class AbstractManufacturerReport : IXMLManufacturerReport, IXMLMockupReport
{
protected XNamespace xsi = XNamespace.Get("http://www.w3.org/2001/XMLSchema-instance");
protected readonly IManufacturerReportFactory _mRFReportFactory;
public static XNamespace Mrf => XNamespace.Get("urn:tugraz:ivt:VectoAPI:DeclarationOutput:v0.9");
protected readonly IManufacturerReportFactory _mRFReportFactory;
protected XElement Results { get; set; }
protected XElement Vehicle { get; set; }
public abstract string XmlOutputType { get; } //also used as name for the mockup result element
protected AbstractManufacturerReport(IManufacturerReportFactory MRFReportFactory)
{
......@@ -35,19 +44,42 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
public void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
{
InitializeVehicleData(modelData.InputData);
Results = new XElement(Mrf + XMLNames.Report_Results);
}
public XDocument Report { get; protected set; }
private List<XMLDeclarationReport.ResultEntry> results = new List<XMLDeclarationReport.ResultEntry>();
public void WriteResult(XMLDeclarationReport.ResultEntry resultValue)
{
throw new NotImplementedException();
}
public void WriteMockupResult(XMLDeclarationReport.ResultEntry resultValue)
{
Results.Add(MockupResultReader.GetMockupResult(XmlOutputType, resultValue, Mrf + "Result"));
}
public void GenerateReport()
{
throw new NotImplementedException();
Report = new XDocument(new XElement(Mrf + "VectoOutput",
new XAttribute("xmlns", Mrf),
new XAttribute(XNamespace.Xmlns + "xsi", xsi),
new XAttribute(xsi + "type", $"{XmlOutputType}"),
Vehicle,
Results));
}
#endregion
}
}
......@@ -31,6 +31,8 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
#region Overrides of AbstractManufacturerReport
public override string XmlOutputType { get; }
public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
{
Vehicle = _mRFReportFactory.GetConventional_CompletedBusVehicleType().GetElement(inputData);
......@@ -47,6 +49,8 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
#region Overrides of AbstractManufacturerReport
public override string XmlOutputType { get; }
public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
{
Vehicle = _mRFReportFactory.GetConventional_CompletedBusVehicleType().GetElement(inputData);
......@@ -62,6 +66,8 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
#region Overrides of AbstractManufacturerReport
public override string XmlOutputType { get; }
public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
{
Vehicle = _mRFReportFactory.GetConventional_CompletedBusVehicleType().GetElement(inputData);
......
......@@ -6,8 +6,13 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
{
internal abstract class LorryManufacturerReportBase : AbstractManufacturerReport
{
public static XNamespace Mrf => XNamespace.Get("urn:tugraz:ivt:VectoAPI:DeclarationOutput:v0.9");
public LorryManufacturerReportBase(IManufacturerReportFactory MRFReportFactory) : base(MRFReportFactory) { }
public LorryManufacturerReportBase(IManufacturerReportFactory MRFReportFactory) : base(MRFReportFactory)
{
}
protected void GenerateReport(string outputDataType)
{
......@@ -22,6 +27,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
internal class ConventionalLorryManufacturerReport : LorryManufacturerReportBase
{
public ConventionalLorryManufacturerReport(IManufacturerReportFactory MRFReportFactory) : base(MRFReportFactory)
{
......@@ -30,11 +36,13 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
#region Overrides of AbstractManufacturerReport
public override string XmlOutputType => "ConventionalLorryManufacturerOutputDataType";
public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
{
Vehicle = _mRFReportFactory.GetConventionalLorryVehicleType().GetElement(inputData);
GenerateReport("ConventionalLorryManufacturerOutputDataType");
GenerateReport(XmlOutputType);
}
......@@ -44,16 +52,18 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
internal class HEV_Px_IHPC_LorryManufacturerReport : LorryManufacturerReportBase
{
public HEV_Px_IHPC_LorryManufacturerReport(IManufacturerReportFactory MRFReportFactory) : base(MRFReportFactory) { }
#region Overrides of AbstractManufacturerReport
public override string XmlOutputType => "HEV-Px_IHPCLorryManufacturerOutputDataType";
public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
{
Vehicle = _mRFReportFactory.GetHEV_Px_IHCP_LorryVehicleType().GetElement(inputData);
//TODO: REMOVE
GenerateReport("HEV-Px_IHPCLorryManufacturerOutputDataType");
GenerateReport(XmlOutputType);
}
......@@ -67,10 +77,12 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
#region Overrides of AbstractManufacturerReport
public override string XmlOutputType => "HEV-S2_LorryManufacturerOutputDataType";
public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
{
Vehicle = _mRFReportFactory.GetHEV_S2_LorryVehicleType().GetElement(inputData);
GenerateReport("HEV-S2_LorryManufacturerOutputDataType");
GenerateReport(XmlOutputType);
}
#endregion
......@@ -78,6 +90,8 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
internal class HEV_S3_LorryManufacturerReport : LorryManufacturerReportBase
{
public override string XmlOutputType => "HEV-S3_LorryManufacturerOutputDataType";
public HEV_S3_LorryManufacturerReport(IManufacturerReportFactory MRFReportFactory) : base(MRFReportFactory)
{
......@@ -88,7 +102,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
{
Vehicle = _mRFReportFactory.GetHEV_S3_LorryVehicleType().GetElement(inputData);
GenerateReport("HEV-S3_LorryManufacturerOutputDataType");
GenerateReport(XmlOutputType);
}
#endregion
......@@ -100,6 +114,8 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
#region Overrides of AbstractManufacturerReport
public override string XmlOutputType { get; }
public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
{
Vehicle = _mRFReportFactory.GetHEV_S4_LorryVehicleType().GetElement(inputData);
......@@ -115,6 +131,8 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
#region Overrides of AbstractManufacturerReport
public override string XmlOutputType { get; }
public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
{
Vehicle = _mRFReportFactory.GetHEV_IEPC_S_LorryVehicleType().GetElement(inputData);
......@@ -130,6 +148,8 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
#region Overrides of AbstractManufacturerReport
public override string XmlOutputType { get; }
public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
{
Vehicle = _mRFReportFactory.GetPEV_E2_LorryVehicleType().GetElement(inputData);
......@@ -145,6 +165,8 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
#region Overrides of AbstractManufacturerReport
public override string XmlOutputType { get; }
public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
{
Vehicle = _mRFReportFactory.GetPEV_E3_LorryVehicleType().GetElement(inputData);
......@@ -160,6 +182,8 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
#region Overrides of AbstractManufacturerReport
public override string XmlOutputType { get; }
public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
{
Vehicle = _mRFReportFactory.GetPEV_E4_LorryVehicleType().GetElement(inputData);
......@@ -175,6 +199,8 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
#region Overrides of AbstractManufacturerReport
public override string XmlOutputType { get; }
public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
{
Vehicle = _mRFReportFactory.GetPEV_IEPC_LorryVehicleType().GetElement(inputData);
......
......@@ -27,6 +27,8 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
#region Overrides of AbstractManufacturerReport
public override string XmlOutputType { get; }
public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
{
Vehicle = _mRFReportFactory.GetConventional_PrimaryBusVehicleType().GetElement(inputData);
......@@ -43,6 +45,8 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
#region Overrides of AbstractManufacturerReport
public override string XmlOutputType { get; }
public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
{
Vehicle = _mRFReportFactory.GetHEV_Px_IHPC_PrimaryBusVehicleType().GetElement(inputData);
......@@ -61,6 +65,8 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
#region Overrides of AbstractManufacturerReport
public override string XmlOutputType { get; }
public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
{
Vehicle = _mRFReportFactory.GetHEV_S2_PrimaryBusVehicleType().GetElement(inputData);
......@@ -77,6 +83,8 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
#region Overrides of AbstractManufacturerReport
public override string XmlOutputType { get; }
public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
{
Vehicle = _mRFReportFactory.GetHEV_S3_PrimaryBusVehicleType().GetElement(inputData);
......@@ -92,6 +100,8 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
#region Overrides of AbstractManufacturerReport
public override string XmlOutputType { get; }
public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
{
Vehicle = _mRFReportFactory.GetHEV_S4_PrimaryBusVehicleType().GetElement(inputData);
......@@ -108,6 +118,8 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
#region Overrides of AbstractManufacturerReport
public override string XmlOutputType { get; }
public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
{
Vehicle = _mRFReportFactory.GetHEV_IEPC_S_PrimaryBusVehicleType().GetElement(inputData);
......@@ -123,6 +135,8 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
#region Overrides of AbstractManufacturerReport
public override string XmlOutputType { get; }
public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
{
Vehicle = _mRFReportFactory.GetPEV_E2_PrimaryBusVehicleType().GetElement(inputData);
......@@ -139,6 +153,8 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
#region Overrides of AbstractManufacturerReport
public override string XmlOutputType { get; }
public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
{
Vehicle = _mRFReportFactory.GetPEV_E3_PrimaryBusVehicleType().GetElement(inputData);
......@@ -159,6 +175,8 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
#region Overrides of AbstractManufacturerReport
public override string XmlOutputType { get; }
public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
{
Vehicle = _mRFReportFactory.GetPEV_E4_PrimaryBusVehicleType().GetElement(inputData);
......@@ -175,6 +193,8 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.
#region Overrides of AbstractManufacturerReport
public override string XmlOutputType { get; }
public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
{
Vehicle = _mRFReportFactory.GetPEV_IEPC_PrimaryBusVehicleType().GetElement(inputData);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment