Code development platform for open source projects from the European Union institutions :large_blue_circle: EU Login authentication by SMS has been phased out. To see alternatives please check here

Skip to content
Snippets Groups Projects
Commit 8d44f93e authored by Markus Quaritsch's avatar Markus Quaritsch
Browse files

implementing reading XMLs V2.0

parent cf6558ed
Branches
Tags
No related merge requests found
Showing
with 396 additions and 36 deletions
...@@ -38,7 +38,8 @@ namespace TUGraz.VectoCommon.InputData ...@@ -38,7 +38,8 @@ namespace TUGraz.VectoCommon.InputData
JSONFile, JSONFile,
Missing, Missing,
XMLFile, XMLFile,
XMLEmbedded XMLEmbedded,
DefaultValue
} }
public static class DataSourceTypeExtensions public static class DataSourceTypeExtensions
......
...@@ -21,9 +21,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -21,9 +21,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
public virtual AuxiliaryType Type public virtual AuxiliaryType Type
{ {
get { get { return _type ?? (_type = BaseNode.LocalName.ParseEnum<AuxiliaryType>()).Value; }
return _type ?? (_type = BaseNode.LocalName.ParseEnum<AuxiliaryType>()).Value;
}
} }
public virtual IList<string> Technology public virtual IList<string> Technology
...@@ -45,4 +43,13 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -45,4 +43,13 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
#endregion #endregion
} }
public class XMLAuxiliaryDeclarationDataProviderV20 : XMLAuxiliaryDeclarationDataProviderV10
{
public new const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V20;
public XMLAuxiliaryDeclarationDataProviderV20(XmlNode auxNode, IXMLDeclarationVehicleData vehicle) : base(
auxNode, vehicle) { }
}
} }
...@@ -53,4 +53,44 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -53,4 +53,44 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
#endregion #endregion
} }
// ---------------------------------------------------------------------------------------
public class XMLDeclarationADASDataProviderV20 : XMLDeclarationADASDataProviderV10
{
public new const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V20;
public XMLDeclarationADASDataProviderV20(IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile)
: base(vehicle, componentNode, sourceFile) { }
protected override string SchemaNamespace
{
get { return NAMESPACE_URI; }
}
protected override DataSourceType SourceType
{
get { return DataSourceType.DefaultValue; }
}
public override bool EngineStopStart
{
get { return false; }
}
public override bool EcoRollWitoutEngineStop
{
get { return false; }
}
public override bool EcoRollWithEngineStop
{
get { return false; }
}
public override PredictiveCruiseControlType PredictiveCruiseControl
{
get { return PredictiveCruiseControlType.None; }
}
}
} }
...@@ -47,4 +47,18 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -47,4 +47,18 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
#endregion #endregion
} }
// ---------------------------------------------------------------------------------------
public class XMLDeclarationAirdragDataProviderV20 : XMLDeclarationAirdragDataProviderV10
{
public new const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V20;
public XMLDeclarationAirdragDataProviderV20(IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile) : base(vehicle, componentNode, sourceFile) { }
protected override string SchemaNamespace
{
get { return NAMESPACE_URI; }
}
}
} }
...@@ -63,4 +63,21 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -63,4 +63,21 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
#endregion #endregion
} }
// ---------------------------------------------------------------------------------------
public class XMLDeclarationAngledriveDataProviderV20 : XMLDeclarationAngledriveDataProviderV10
{
public new const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V20;
public XMLDeclarationAngledriveDataProviderV20(
IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile) : base(
vehicle, componentNode, sourceFile) { }
protected override string SchemaNamespace
{
get { return NAMESPACE_URI; }
}
}
} }
...@@ -34,6 +34,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -34,6 +34,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
} }
_auxiliaries = new List<IAuxiliaryDeclarationInputData>(); _auxiliaries = new List<IAuxiliaryDeclarationInputData>();
//var auxNodes = GetNodes(XMLNames.Auxiliaries_Auxiliary); //var auxNodes = GetNodes(XMLNames.Auxiliaries_Auxiliary);
var auxNodes = BaseNode.SelectNodes(XMLHelper.QueryLocalName(XMLNames.Auxiliaries_Auxiliary_Technology) + "/.."); var auxNodes = BaseNode.SelectNodes(XMLHelper.QueryLocalName(XMLNames.Auxiliaries_Auxiliary_Technology) + "/..");
if (auxNodes == null) { if (auxNodes == null) {
...@@ -56,4 +57,15 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -56,4 +57,15 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
#endregion #endregion
} }
// ---------------------------------------------------------------------------------------
public class XMLDeclarationAuxiliariesDataProviderV20 : XMLDeclarationAuxiliariesDataProviderV10
{
public new const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V20;
public XMLDeclarationAuxiliariesDataProviderV20(
IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile) : base(
vehicle, componentNode, sourceFile) { }
}
} }
...@@ -17,7 +17,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -17,7 +17,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
protected bool? _twinTyre; protected bool? _twinTyre;
protected AxleType? _axleType; protected AxleType? _axleType;
public XMLDeclarationAxleDataProviderV10(IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile) : base(componentNode, sourceFile) public XMLDeclarationAxleDataProviderV10(IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile)
: base(componentNode, sourceFile)
{ {
SourceType = DataSourceType.XMLFile; SourceType = DataSourceType.XMLFile;
} }
...@@ -63,4 +64,19 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -63,4 +64,19 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
#endregion #endregion
} }
// ---------------------------------------------------------------------------------------
public class XMLDeclarationAxleDataProviderV20 : XMLDeclarationAxleDataProviderV10
{
public new const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V20;
public XMLDeclarationAxleDataProviderV20(IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile)
: base(vehicle, componentNode, sourceFile) { }
protected override string SchemaNamespace
{
get { return NAMESPACE_URI; }
}
}
} }
...@@ -14,7 +14,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -14,7 +14,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
{ {
public const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V10; public const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V10;
public XMLDeclarationAxlegearDataProviderV10(IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile) : public XMLDeclarationAxlegearDataProviderV10(
IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile) :
base(componentNode, sourceFile) base(componentNode, sourceFile)
{ {
SourceType = DataSourceType.XMLFile; SourceType = DataSourceType.XMLFile;
...@@ -48,6 +49,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -48,6 +49,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
return value.ParseEnum<AxleLineType>(); return value.ParseEnum<AxleLineType>();
} }
} }
#endregion #endregion
#region Overrides of AbstractXMLResource #region Overrides of AbstractXMLResource
...@@ -61,4 +63,21 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -61,4 +63,21 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
#endregion #endregion
} }
// ---------------------------------------------------------------------------------------
public class XMLDeclarationAxlegearDataProviderV20 : XMLDeclarationAxlegearDataProviderV10
{
public new const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V20;
public XMLDeclarationAxlegearDataProviderV20(
IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile) : base(
vehicle, componentNode, sourceFile) { }
protected override string SchemaNamespace
{
get { return NAMESPACE_URI; }
}
}
} }
...@@ -8,7 +8,8 @@ using TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Interfaces; ...@@ -8,7 +8,8 @@ using TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Interfaces;
using TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Reader; using TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Reader;
using TUGraz.VectoCore.Utils; using TUGraz.VectoCore.Utils;
namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider { namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
{
public class XMLDeclarationAxlesDataProviderV10 : AbstractXMLType, IXMLAxlesDeclarationInputData public class XMLDeclarationAxlesDataProviderV10 : AbstractXMLType, IXMLAxlesDeclarationInputData
{ {
public const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V10; public const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V10;
...@@ -16,8 +17,15 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider { ...@@ -16,8 +17,15 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider {
protected IAxleDeclarationInputData[] _axles; protected IAxleDeclarationInputData[] _axles;
public XMLDeclarationAxlesDataProviderV10(IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile) : base(componentNode) public XMLDeclarationAxlesDataProviderV10(
{ DataSource = new DataSource() { SourceType = DataSourceType.XMLFile, SourceFile = sourceFile, SourceVersion = XMLHelper.GetVersionFromNamespaceUri(NAMESPACE_URI)}; } IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile) : base(componentNode)
{
DataSource = new DataSource() {
SourceType = DataSourceType.XMLFile,
SourceFile = sourceFile,
SourceVersion = XMLHelper.GetVersionFromNamespaceUri(NAMESPACE_URI)
};
}
#region Implementation of IAxlesDeclarationInputData #region Implementation of IAxlesDeclarationInputData
...@@ -27,10 +35,12 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider { ...@@ -27,10 +35,12 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider {
if (_axles != null) { if (_axles != null) {
return _axles; return _axles;
} }
var axleNodes = GetNodes(new[] { XMLNames.AxleWheels_Axles, XMLNames.AxleWheels_Axles_Axle }); var axleNodes = GetNodes(new[] { XMLNames.AxleWheels_Axles, XMLNames.AxleWheels_Axles_Axle });
if (axleNodes == null) { if (axleNodes == null) {
return new List<IAxleDeclarationInputData>(); return new List<IAxleDeclarationInputData>();
} }
_axles = new IAxleDeclarationInputData[axleNodes.Count]; _axles = new IAxleDeclarationInputData[axleNodes.Count];
foreach (XmlNode axlenode in axleNodes) { foreach (XmlNode axlenode in axleNodes) {
var axleNumber = GetAttribute(axlenode, XMLNames.AxleWheels_Axles_Axle_AxleNumber_Attr).ToInt(); var axleNumber = GetAttribute(axlenode, XMLNames.AxleWheels_Axles_Axle_AxleNumber_Attr).ToInt();
...@@ -43,6 +53,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider { ...@@ -43,6 +53,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider {
_axles[axleNumber - 1] = Reader.CreateAxle(axlenode); _axles[axleNumber - 1] = Reader.CreateAxle(axlenode);
} }
return _axles; return _axles;
} }
} }
...@@ -61,4 +72,15 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider { ...@@ -61,4 +72,15 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider {
#endregion #endregion
} }
// ---------------------------------------------------------------------------------------
public class XMLDeclarationAxlesDataProviderV20 : XMLDeclarationAxlesDataProviderV10
{
public new const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V20;
public XMLDeclarationAxlesDataProviderV20(
IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile) : base(
vehicle, componentNode, sourceFile) { }
}
} }
...@@ -103,4 +103,19 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -103,4 +103,19 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
#endregion #endregion
} }
// ---------------------------------------------------------------------------------------
public class XMLDeclarationComponentsDataProviderV20 : XMLDeclarationComponentsDataProviderV10
{
public new const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V20;
public XMLDeclarationComponentsDataProviderV20(IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile) : base(vehicle, componentNode, sourceFile) { }
protected override string SchemaNamespace
{
get { return NAMESPACE_URI; }
}
}
} }
...@@ -114,4 +114,18 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -114,4 +114,18 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
#endregion #endregion
} }
// ---------------------------------------------------------------------------------------
public class XMLDeclarationEngineDataProviderV20 : XMLDeclarationEngineDataProviderV10
{
public new const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V20;
public XMLDeclarationEngineDataProviderV20(IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile) : base(vehicle, componentNode, sourceFile) { }
protected override string SchemaNamespace
{
get { return NAMESPACE_URI; }
}
}
} }
...@@ -20,7 +20,10 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -20,7 +20,10 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
public XMLDeclarationGearboxDataProviderV10( public XMLDeclarationGearboxDataProviderV10(
IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile) : IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile) :
base(componentNode, sourceFile) { } base(componentNode, sourceFile)
{
SourceType = DataSourceType.XMLEmbedded;
}
#region Overrides of AbstractXMLResource #region Overrides of AbstractXMLResource
...@@ -29,10 +32,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -29,10 +32,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
get { return NAMESPACE_URI; } get { return NAMESPACE_URI; }
} }
protected override DataSourceType SourceType protected override DataSourceType SourceType { get; }
{
get { return DataSourceType.XMLFile; }
}
#endregion #endregion
...@@ -89,4 +89,20 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -89,4 +89,20 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
#endregion #endregion
} }
// ---------------------------------------------------------------------------------------
public class XMLDeclarationGearboxDataProviderV20 : XMLDeclarationGearboxDataProviderV10
{
public new const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V20;
public XMLDeclarationGearboxDataProviderV20(
IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile) : base(
vehicle, componentNode, sourceFile) { }
protected override string SchemaNamespace
{
get { return NAMESPACE_URI; }
}
}
} }
...@@ -77,7 +77,6 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration ...@@ -77,7 +77,6 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
#endregion #endregion
public virtual IDeclarationJobInputData JobInputData public virtual IDeclarationJobInputData JobInputData
{ {
get { return JobData ?? (JobData = Reader.JobData); } get { return JobData ?? (JobData = Reader.JobData); }
...@@ -87,9 +86,16 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration ...@@ -87,9 +86,16 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
public virtual XElement XMLHash { get; private set; } public virtual XElement XMLHash { get; private set; }
} }
// ---------------------------------------------------------------------------------------
public class XMLDeclarationInputDataProviderV20 : XMLDeclarationInputDataProviderV10 public class XMLDeclarationInputDataProviderV20 : XMLDeclarationInputDataProviderV10
{ {
public new const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V20; public new const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V20;
public XMLDeclarationInputDataProviderV20(XmlDocument xmlDoc, string fileName) : base(xmlDoc, fileName) { } public XMLDeclarationInputDataProviderV20(XmlDocument xmlDoc, string fileName) : base(xmlDoc, fileName) { }
protected override string SchemaNamespace
{
get { return NAMESPACE_URI; }
}
} }
} }
...@@ -8,10 +8,10 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -8,10 +8,10 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
{ {
public class XMLDeclarationJobInputDataProviderV10 : AbstractXMLResource, IXMLDeclarationJobInputData public class XMLDeclarationJobInputDataProviderV10 : AbstractXMLResource, IXMLDeclarationJobInputData
{ {
protected IVehicleDeclarationInputData _vehicle;
public const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V10; public const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V10;
protected IVehicleDeclarationInputData _vehicle;
public XMLDeclarationJobInputDataProviderV10(XmlNode node, IXMLDeclarationInputData inputProvider, string fileName) : public XMLDeclarationJobInputDataProviderV10(XmlNode node, IXMLDeclarationInputData inputProvider, string fileName) :
base(node, fileName) base(node, fileName)
{ {
...@@ -44,7 +44,10 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -44,7 +44,10 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
get { return _vehicle ?? (_vehicle = Reader.CreateVehicle); } get { return _vehicle ?? (_vehicle = Reader.CreateVehicle); }
} }
public virtual string JobName { get { return Vehicle.Identifier; } } public virtual string JobName
{
get { return Vehicle.Identifier; }
}
#endregion #endregion
...@@ -55,4 +58,19 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -55,4 +58,19 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
#endregion #endregion
} }
// ---------------------------------------------------------------------------------------
public class XMLDeclarationJobInputDataProviderV20 : XMLDeclarationJobInputDataProviderV10
{
public new const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V20;
public XMLDeclarationJobInputDataProviderV20(XmlNode node, IXMLDeclarationInputData inputProvider, string fileName) :
base(node, inputProvider, fileName) { }
protected override string SchemaNamespace
{
get { return NAMESPACE_URI; }
}
}
} }
...@@ -27,14 +27,17 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -27,14 +27,17 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
if ("none".Equals(shaftGearWheels, StringComparison.InvariantCultureIgnoreCase)) { if ("none".Equals(shaftGearWheels, StringComparison.InvariantCultureIgnoreCase)) {
return "None"; return "None";
} }
if ("only one engaged gearwheel above oil level".Equals(shaftGearWheels, StringComparison.CurrentCultureIgnoreCase)) { if ("only one engaged gearwheel above oil level".Equals(
shaftGearWheels, StringComparison.CurrentCultureIgnoreCase)) {
return "only one engaged gearwheel above oil level"; return "only one engaged gearwheel above oil level";
} }
var otherElements = GetString(XMLNames.Vehicle_PTO_OtherElements); var otherElements = GetString(XMLNames.Vehicle_PTO_OtherElements);
var ptoTech = string.Format("{0} - {1}", shaftGearWheels, otherElements); var ptoTech = string.Format("{0} - {1}", shaftGearWheels, otherElements);
if (DeclarationData.PTOTransmission.GetTechnologies().Contains(ptoTech)) { if (DeclarationData.PTOTransmission.GetTechnologies().Contains(ptoTech)) {
return ptoTech; return ptoTech;
} }
throw new VectoException("PTO Technology {0} invalid!", ptoTech); throw new VectoException("PTO Technology {0} invalid!", ptoTech);
} }
} }
...@@ -51,4 +54,14 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -51,4 +54,14 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
#endregion #endregion
} }
// ---------------------------------------------------------------------------------------
public class XMLDeclarationPTODataProviderV20 : XMLDeclarationPTODataProviderV10
{
public new const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V20;
public XMLDeclarationPTODataProviderV20(IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile)
: base(vehicle, componentNode, sourceFile) { }
}
} }
...@@ -14,7 +14,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -14,7 +14,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
protected IXMLDeclarationVehicleData Vehicle; protected IXMLDeclarationVehicleData Vehicle;
public XMLDeclarationRetarderDataProviderV10(IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile) : public XMLDeclarationRetarderDataProviderV10(
IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile) :
base(componentNode, sourceFile) base(componentNode, sourceFile)
{ {
SourceType = DataSourceType.XMLFile; SourceType = DataSourceType.XMLFile;
...@@ -36,7 +37,9 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -36,7 +37,9 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
public virtual TableData LossMap public virtual TableData LossMap
{ {
get { get {
return ReadTableData(XMLNames.Retarder_RetarderLossMap, XMLNames.Retarder_RetarderLossMap_Entry, AttributeMappings.RetarderLossmapMapping); return ReadTableData(
XMLNames.Retarder_RetarderLossMap, XMLNames.Retarder_RetarderLossMap_Entry,
AttributeMappings.RetarderLossmapMapping);
} }
} }
...@@ -53,4 +56,20 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -53,4 +56,20 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
#endregion #endregion
} }
// ---------------------------------------------------------------------------------------
public class XMLDeclarationRetarderDataProviderV20 : XMLDeclarationRetarderDataProviderV10
{
public new const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V20;
public XMLDeclarationRetarderDataProviderV20(
IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile) : base(
vehicle, componentNode, sourceFile) { }
protected override string SchemaNamespace
{
get { return NAMESPACE_URI; }
}
}
} }
...@@ -43,4 +43,18 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -43,4 +43,18 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
#endregion #endregion
} }
// ---------------------------------------------------------------------------------------
public class XMLDeclarationTorqueConverterDataProviderV20 : XMLDeclarationTorqueConverterDataProviderV10
{
public new const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V20;
public XMLDeclarationTorqueConverterDataProviderV20(IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile) : base(vehicle, componentNode, sourceFile) { }
protected override string SchemaNamespace
{
get { return NAMESPACE_URI; }
}
}
} }
...@@ -52,4 +52,19 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -52,4 +52,19 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
#endregion #endregion
} }
// ---------------------------------------------------------------------------------------
public class XMLDeclarationTyreDataProviderV20 : XMLDeclarationTyreDataProviderV10
{
public new const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V20;
public XMLDeclarationTyreDataProviderV20(IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile)
: base(vehicle, componentNode, sourceFile) { }
protected override string SchemaNamespace
{
get { return NAMESPACE_URI; }
}
}
} }
...@@ -240,7 +240,6 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -240,7 +240,6 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
#region Implementation of IAdvancedDriverAssistantSystemDeclarationInputData #region Implementation of IAdvancedDriverAssistantSystemDeclarationInputData
#endregion #endregion
#region Overrides of AbstractXMLResource #region Overrides of AbstractXMLResource
...@@ -254,4 +253,64 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -254,4 +253,64 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
#endregion #endregion
} }
// ---------------------------------------------------------------------------------------
public class XMLDeclarationVehicleDataProviderV20 : XMLDeclarationVehicleDataProviderV10
{
public new const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V20;
public XMLDeclarationVehicleDataProviderV20(IXMLDeclarationJobInputData jobData, XmlNode xmlNode, string sourceFile) :
base(jobData, xmlNode, sourceFile) { }
protected override string SchemaNamespace
{
get { return NAMESPACE_URI; }
}
public override bool VocationalVehicle
{
get { return false; }
}
public override bool SleeperCab
{
get { return true; }
}
public override TankSystem? TankSystem
{
get { return VectoCommon.InputData.TankSystem.Compressed; }
}
public override IAdvancedDriverAssistantSystemDeclarationInputData ADAS
{
get { return ADASReader.ADASInputData; }
}
public override bool ZeroEmissionVehicle
{
get { return false; }
}
public override bool HybridElectricHDV
{
get { return false; }
}
public override bool DualFuelVehicle
{
get { return false; }
}
public override Watt MaxNetPower1
{
get { return null; }
}
public override Watt MaxNetPower2
{
get { return null; }
}
}
} }
...@@ -10,8 +10,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -10,8 +10,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
{ {
public abstract class XMLAbstractGearData : AbstractXMLType public abstract class XMLAbstractGearData : AbstractXMLType
{ {
protected TableData _lossmap; protected TableData _lossmap;
protected DataSource _dataSource;
protected XMLAbstractGearData(XmlNode gearNode, string sourceFile) : base(gearNode) protected XMLAbstractGearData(XmlNode gearNode, string sourceFile) : base(gearNode)
{ {
...@@ -20,6 +20,20 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -20,6 +20,20 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
public virtual string SourceFile { get; } public virtual string SourceFile { get; }
public virtual DataSource DataSource
{
get {
return _dataSource ?? (_dataSource = new DataSource() {
SourceFile = SourceFile,
SourceType = DataSourceType.XMLEmbedded,
SourceVersion = XMLHelper.GetVersionFromNamespaceUri(SchemaNamespace)
});
}
}
protected abstract string SchemaNamespace { get; }
#region Implementation of ITransmissionInputData #region Implementation of ITransmissionInputData
public virtual int Gear public virtual int Gear
...@@ -64,8 +78,6 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -64,8 +78,6 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
get { return null; } get { return null; }
} }
#endregion #endregion
} }
...@@ -75,13 +87,24 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider ...@@ -75,13 +87,24 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
{ {
public const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V10; public const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V10;
protected DataSource _dataSource;
public XMLGearDataV10(XmlNode gearNode, string sourceFile) : base(gearNode, sourceFile) { } public XMLGearDataV10(XmlNode gearNode, string sourceFile) : base(gearNode, sourceFile) { }
public virtual DataSource DataSource #region Overrides of XMLAbstractGearData
{
get { return _dataSource ?? (_dataSource = new DataSource() { SourceFile = SourceFile, SourceType = DataSourceType.XMLEmbedded, SourceVersion = XMLHelper.GetVersionFromNamespaceUri(NAMESPACE_URI) }); } protected override string SchemaNamespace { get { return NAMESPACE_URI; } }
#endregion
} }
// ---------------------------------------------------------------------------------------
public class XMLGearDataV20 : XMLGearDataV10
{
public new const string NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V20;
public XMLGearDataV20(XmlNode gearNode, string sourceFile) : base(gearNode, sourceFile) { }
protected override string SchemaNamespace { get { return NAMESPACE_URI; } }
} }
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment