From 81400a40f55ac97e25c7cb4dff1c44a6e491b3b5 Mon Sep 17 00:00:00 2001 From: Michael Krisper <michael.krisper@tugraz.at> Date: Thu, 21 Oct 2021 11:25:48 +0200 Subject: [PATCH] refactored and checked many Log-Messages with "Header Line is not valid" --- .../Reader/ComponentData/AccelerationCurveReader.cs | 11 ++++++----- .../ComponentData/CrossWindCorrectionCurveReader.cs | 5 +++-- .../Reader/ComponentData/ElectricMotorMapReader.cs | 8 +++++--- .../Reader/ComponentData/FuelConsumptionMapReader.cs | 8 +++++--- .../Reader/ComponentData/FullLoadCurveReader.cs | 6 ++++-- .../Reader/ComponentData/PTOIdleLossMapReader.cs | 8 +++++--- .../Reader/ComponentData/RetarderLossMapReader.cs | 9 +++++---- .../Reader/ComponentData/ShiftPolygonReader.cs | 9 +++++---- .../Reader/ComponentData/TransmissionLossMapReader.cs | 9 ++++++--- .../InputData/Reader/ComponentData/WHRPowerReader.cs | 8 +++++--- .../Reader/ShiftStrategy/LookupDataReader.cs | 7 ++++--- 11 files changed, 53 insertions(+), 35 deletions(-) diff --git a/VectoCore/VectoCore/InputData/Reader/ComponentData/AccelerationCurveReader.cs b/VectoCore/VectoCore/InputData/Reader/ComponentData/AccelerationCurveReader.cs index 3ffb483361..3040a8b49a 100644 --- a/VectoCore/VectoCore/InputData/Reader/ComponentData/AccelerationCurveReader.cs +++ b/VectoCore/VectoCore/InputData/Reader/ComponentData/AccelerationCurveReader.cs @@ -73,11 +73,12 @@ namespace TUGraz.VectoCore.InputData.Reader.ComponentData if (HeaderIsValid(data.Columns)) { return CreateFromColumnNames(data); } - LoggingObject.Logger<AccelerationCurveData>() - .Warn("Acceleration Curve: Header Line is not valid. Expected: '{0}, {1}, {2}', Got: {3}", - Fields.Velocity, Fields.Acceleration, - Fields.Deceleration, - string.Join(", ", data.Columns.Cast<DataColumn>().Select(c => c.ColumnName))); + LoggingObject.Logger<AccelerationCurveData>().Warn( + "Acceleration Curve: Header Line is not valid. Expected: '{0}, {1}, {2}', Got: {3}. Falling back to column index.", + Fields.Velocity, + Fields.Acceleration, + Fields.Deceleration, + data.Columns.Cast<DataColumn>().Select(c => c.ColumnName).Join()); return CreateFromColumnIndizes(data); } diff --git a/VectoCore/VectoCore/InputData/Reader/ComponentData/CrossWindCorrectionCurveReader.cs b/VectoCore/VectoCore/InputData/Reader/ComponentData/CrossWindCorrectionCurveReader.cs index 3766144203..0fc60b969a 100644 --- a/VectoCore/VectoCore/InputData/Reader/ComponentData/CrossWindCorrectionCurveReader.cs +++ b/VectoCore/VectoCore/InputData/Reader/ComponentData/CrossWindCorrectionCurveReader.cs @@ -100,8 +100,9 @@ namespace TUGraz.VectoCore.InputData.Reader.ComponentData } LogManager.GetLogger(typeof(CrossWindCorrectionCurveReader).FullName).Warn( "Crosswind correction file: Header line is not valid. Expected: '{0}, {1}', Got: '{2}'. Falling back to column index.", - FieldsSpeedDependent.Velocity, FieldsSpeedDependent.Cd, - string.Join(", ", data.Columns.Cast<DataColumn>().Select(c => c.ColumnName).Reverse())); + FieldsSpeedDependent.Velocity, + FieldsSpeedDependent.Cd, + data.Columns.Cast<DataColumn>().Select(c => c.ColumnName).Join()); return ParseSpeedDependentFromColumnIndizes(data, aerodynamicDragArea); } diff --git a/VectoCore/VectoCore/InputData/Reader/ComponentData/ElectricMotorMapReader.cs b/VectoCore/VectoCore/InputData/Reader/ComponentData/ElectricMotorMapReader.cs index abff89457f..87ce14fded 100644 --- a/VectoCore/VectoCore/InputData/Reader/ComponentData/ElectricMotorMapReader.cs +++ b/VectoCore/VectoCore/InputData/Reader/ComponentData/ElectricMotorMapReader.cs @@ -24,9 +24,11 @@ namespace TUGraz.VectoCore.InputData.Reader.ComponentData { if (!headerValid) { LoggingObject.Logger<FuelConsumptionMap>().Warn( - "Efficiencymap: Header Line is not valid. Expected: '{0}, {1}, {2}', Got: {3}", - Fields.MotorSpeed, Fields.Torque, Fields.PowerElectrical, - string.Join(", ", data.Columns.Cast<DataColumn>().Select(c => c.ColumnName))); + "Efficiency Map: Header Line is not valid. Expected: '{0}, {1}, {2}', Got: {3}. Falling back to default names.", + Fields.MotorSpeed, + Fields.Torque, + Fields.PowerElectrical, + data.Columns.Cast<DataColumn>().Select(c => c.ColumnName).Join()); data.Columns[0].ColumnName = Fields.MotorSpeed; data.Columns[1].ColumnName = Fields.Torque; data.Columns[2].ColumnName = Fields.PowerElectrical; diff --git a/VectoCore/VectoCore/InputData/Reader/ComponentData/FuelConsumptionMapReader.cs b/VectoCore/VectoCore/InputData/Reader/ComponentData/FuelConsumptionMapReader.cs index 19690eae24..812dd6ad54 100644 --- a/VectoCore/VectoCore/InputData/Reader/ComponentData/FuelConsumptionMapReader.cs +++ b/VectoCore/VectoCore/InputData/Reader/ComponentData/FuelConsumptionMapReader.cs @@ -69,9 +69,11 @@ namespace TUGraz.VectoCore.InputData.Reader.ComponentData var headerValid = HeaderIsValid(data.Columns); if (!headerValid) { LoggingObject.Logger<FuelConsumptionMap>().Warn( - "FuelConsumptionMap: Header Line is not valid. Expected: '{0}, {1}, {2}', Got: {3}", - Fields.EngineSpeed, Fields.Torque, Fields.FuelConsumption, - string.Join(", ", data.Columns.Cast<DataColumn>().Select(c => c.ColumnName))); + "FuelConsumptionMap: Header Line is not valid. Expected: '{0}, {1}, {2}', Got: {3}. Falling back to column index.", + Fields.EngineSpeed, + Fields.Torque, + Fields.FuelConsumption, + data.Columns.Cast<DataColumn>().Select(c => c.ColumnName).Join()); } var delaunayMap = new DelaunayMap("FuelConsumptionMap"); diff --git a/VectoCore/VectoCore/InputData/Reader/ComponentData/FullLoadCurveReader.cs b/VectoCore/VectoCore/InputData/Reader/ComponentData/FullLoadCurveReader.cs index 9f6550bb27..f7f914d3ef 100644 --- a/VectoCore/VectoCore/InputData/Reader/ComponentData/FullLoadCurveReader.cs +++ b/VectoCore/VectoCore/InputData/Reader/ComponentData/FullLoadCurveReader.cs @@ -71,8 +71,10 @@ namespace TUGraz.VectoCore.InputData.Reader.ComponentData } else { LoggingObject.Logger<EngineFullLoadCurve>().Warn( "FullLoadCurve: Header Line is not valid. Expected: '{0}, {1}, {2}', Got: '{3}'. Falling back to column index.", - Fields.EngineSpeed, Fields.TorqueFullLoad, - Fields.TorqueDrag, string.Join(", ", data.Columns.Cast<DataColumn>().Select(c => c.ColumnName))); + Fields.EngineSpeed, + Fields.TorqueFullLoad, + Fields.TorqueDrag, + data.Columns.Cast<DataColumn>().Select(c => c.ColumnName).Join()); entriesFld = CreateFromColumnIndizes(data); } diff --git a/VectoCore/VectoCore/InputData/Reader/ComponentData/PTOIdleLossMapReader.cs b/VectoCore/VectoCore/InputData/Reader/ComponentData/PTOIdleLossMapReader.cs index 074d41cad9..86c7d840e7 100644 --- a/VectoCore/VectoCore/InputData/Reader/ComponentData/PTOIdleLossMapReader.cs +++ b/VectoCore/VectoCore/InputData/Reader/ComponentData/PTOIdleLossMapReader.cs @@ -68,11 +68,13 @@ namespace TUGraz.VectoCore.InputData.Reader.ComponentData } if (!(data.Columns.Contains(Fields.EngineSpeed) && data.Columns.Contains(Fields.PTOTorque))) { + LoggingObject.Logger<RetarderLossMap>().Warn( + "PTO Idle LossMap: Header Line is not valid. Expected: '{0}, {1}', Got: '{2}'. Falling back to default names.", + Fields.EngineSpeed, + Fields.PTOTorque, + data.Columns.Cast<DataColumn>().Select(c => c.ColumnName).Join()); data.Columns[0].ColumnName = Fields.EngineSpeed; data.Columns[1].ColumnName = Fields.PTOTorque; - LoggingObject.Logger<RetarderLossMap>().Warn( - "PTO Idle LossMap: Header Line is not valid. Expected: '{0}, {1}', Got: '{2}'. Falling back to column index.", - Fields.EngineSpeed, Fields.PTOTorque, string.Join(", ", data.Columns.Cast<DataColumn>().Select(c => c.ColumnName))); } return new PTOLossMap(data.Rows.Cast<DataRow>() diff --git a/VectoCore/VectoCore/InputData/Reader/ComponentData/RetarderLossMapReader.cs b/VectoCore/VectoCore/InputData/Reader/ComponentData/RetarderLossMapReader.cs index 5848389660..be825fece9 100644 --- a/VectoCore/VectoCore/InputData/Reader/ComponentData/RetarderLossMapReader.cs +++ b/VectoCore/VectoCore/InputData/Reader/ComponentData/RetarderLossMapReader.cs @@ -69,12 +69,13 @@ namespace TUGraz.VectoCore.InputData.Reader.ComponentData } if (!data.Columns.Contains(Fields.RetarderSpeed) || !data.Columns.Contains(Fields.TorqueLoss)) { - data.Columns[0].ColumnName = Fields.RetarderSpeed; - data.Columns[1].ColumnName = Fields.TorqueLoss; LoggingObject.Logger<RetarderLossMap>().Warn( - "RetarderLossMap: Header Line is not valid. Expected: '{0}, {1}', Got: '{2}'. Falling back to column index.", - Fields.RetarderSpeed, Fields.TorqueLoss, + "RetarderLossMap: Header Line is not valid. Expected: '{0}, {1}', Got: '{2}'. Falling back to default names.", + Fields.RetarderSpeed, + Fields.TorqueLoss, string.Join(", ", data.Columns.Cast<DataColumn>().Select(c => c.ColumnName))); + data.Columns[0].ColumnName = Fields.RetarderSpeed; + data.Columns[1].ColumnName = Fields.TorqueLoss; } return new RetarderLossMap(data.Rows.Cast<DataRow>() diff --git a/VectoCore/VectoCore/InputData/Reader/ComponentData/ShiftPolygonReader.cs b/VectoCore/VectoCore/InputData/Reader/ComponentData/ShiftPolygonReader.cs index 63c2d71751..0d79e0f3ba 100644 --- a/VectoCore/VectoCore/InputData/Reader/ComponentData/ShiftPolygonReader.cs +++ b/VectoCore/VectoCore/InputData/Reader/ComponentData/ShiftPolygonReader.cs @@ -68,11 +68,12 @@ namespace TUGraz.VectoCore.InputData.Reader.ComponentData entriesDown = CreateFromColumnNames(data, Fields.AngularSpeedDown); entriesUp = CreateFromColumnNames(data, Fields.AngularSpeedUp); } else { - LoggingObject.Logger<ShiftPolygon>() - .Warn( + LoggingObject.Logger<ShiftPolygon>().Warn( "ShiftPolygon: Header Line is not valid. Expected: '{0}, {1}, {2}', Got: '{3}'. Falling back to column index", - Fields.Torque, Fields.AngularSpeedUp, Fields.AngularSpeedDown, - string.Join(", ", data.Columns.Cast<DataColumn>().Select(c => c.ColumnName).Reverse())); + Fields.Torque, + Fields.AngularSpeedUp, + Fields.AngularSpeedDown, + data.Columns.Cast<DataColumn>().Select(c => c.ColumnName).Join()); entriesDown = CreateFromColumnIndizes(data, 1); entriesUp = CreateFromColumnIndizes(data, 2); } diff --git a/VectoCore/VectoCore/InputData/Reader/ComponentData/TransmissionLossMapReader.cs b/VectoCore/VectoCore/InputData/Reader/ComponentData/TransmissionLossMapReader.cs index 3c1aabdc63..e96fb5094a 100644 --- a/VectoCore/VectoCore/InputData/Reader/ComponentData/TransmissionLossMapReader.cs +++ b/VectoCore/VectoCore/InputData/Reader/ComponentData/TransmissionLossMapReader.cs @@ -108,9 +108,12 @@ namespace TUGraz.VectoCore.InputData.Reader.ComponentData List<TransmissionLossMap.GearLossMapEntry> entries; if (!HeaderIsValid(data.Columns)) { LoggingObject.Logger<TransmissionLossMap>().Warn( - "TransmissionLossMap {5}: Header line is not valid. Expected: '{0}, {1}, {2}'. Got: '{4}'. Falling back to column index.", - Fields.InputSpeed, Fields.InputTorque, Fields.TorqeLoss, - string.Join(", ", data.Columns.Cast<DataColumn>().Select(c => c.ColumnName).Reverse()), gearName); + "TransmissionLossMap {0}: Header line is not valid. Expected: '{1}, {2}, {3}'. Got: '{4}'. Falling back to column index.", + gearName, + Fields.InputSpeed, + Fields.InputTorque, + Fields.TorqeLoss, + data.Columns.Cast<DataColumn>().Select(c => c.ColumnName).Join()); data.Columns[0].ColumnName = Fields.InputSpeed; data.Columns[1].ColumnName = Fields.InputTorque; diff --git a/VectoCore/VectoCore/InputData/Reader/ComponentData/WHRPowerReader.cs b/VectoCore/VectoCore/InputData/Reader/ComponentData/WHRPowerReader.cs index a917796dda..b3d870fe0f 100644 --- a/VectoCore/VectoCore/InputData/Reader/ComponentData/WHRPowerReader.cs +++ b/VectoCore/VectoCore/InputData/Reader/ComponentData/WHRPowerReader.cs @@ -41,13 +41,15 @@ namespace TUGraz.VectoCore.InputData.Reader.ComponentData if (!headerValid) { LoggingObject.Logger<FuelConsumptionMap>().Warn( "WHRMap: Header Line is not valid. Expected: '{0}, {1}, {2}', Got: {3}", - Fields.EngineSpeed, Fields.Torque, Fields.ElectricPower, - string.Join(", ", data.Columns.Cast<DataColumn>().Select(c => c.ColumnName))); + Fields.EngineSpeed, + Fields.Torque, + Fields.ElectricPower, + data.Columns.Cast<DataColumn>().Select(c => c.ColumnName).Join()); } // todo mk-2021-08-26 this check is redundant. Previous code would have thrown exception otherwise. if (!headerValid && (type == WHRType.ElectricalOutput || type == WHRType.MechanicalOutputDrivetrain)) { - throw new VectoException("expected column headers: {0}", string.Join(", ", whrColumn)); + throw new VectoException("expected column headers: {0}", whrColumn.Join()); } if (!headerValid) { diff --git a/VectoCore/VectoCore/InputData/Reader/ShiftStrategy/LookupDataReader.cs b/VectoCore/VectoCore/InputData/Reader/ShiftStrategy/LookupDataReader.cs index 740fdf4e86..debcb09b16 100644 --- a/VectoCore/VectoCore/InputData/Reader/ShiftStrategy/LookupDataReader.cs +++ b/VectoCore/VectoCore/InputData/Reader/ShiftStrategy/LookupDataReader.cs @@ -5,6 +5,7 @@ using System.Linq; using TUGraz.VectoCommon.Exceptions; using TUGraz.VectoCommon.InputData; using TUGraz.VectoCommon.Models; +using TUGraz.VectoCommon.Utils; namespace TUGraz.VectoCore.InputData.Reader.ShiftStrategy { @@ -33,10 +34,10 @@ namespace TUGraz.VectoCore.InputData.Reader.ShiftStrategy if (!HeaderIsValid(data.Columns)) { LoggingObject.Logger<ShareIdleLowLookup>().Warn( - "{0} lookup: header line is not valid. Expected: '{1}', Got: {2}", + "{0} lookup: Header line is not valid. Expected: '{1}', Got: {2}", _name, - string.Join(", ", _columns), - string.Join(", ", data.Columns.Cast<DataColumn>().Select(c => c.ColumnName))); + _columns.Join(), + data.Columns.Cast<DataColumn>().Select(c => c.ColumnName).Join()); for (var i = 0; i < Math.Min(_columns.Length, data.Columns.Count); i++) { data.Columns[i].Caption = _columns[i]; } -- GitLab