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

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

adding validation method for vehicle (test) in GUI

parent 091f578c
No related branches found
No related tags found
No related merge requests found
......@@ -11,6 +11,7 @@
Option Infer On
Imports System.Collections.Generic
Imports System.ComponentModel.DataAnnotations
Imports System.IO
Imports System.Linq
Imports Newtonsoft.Json.Linq
......@@ -20,7 +21,7 @@ Imports TUGraz.VectoCommon.Utils
Imports TUGraz.VectoCore.InputData.FileIO.JSON
Imports TUGraz.VectoCore.Models.Declaration
<CustomValidation(GetType(Vehicle), "ValidateVehicle")>
Public Class Vehicle
'V2 MassMax is now saved in [t] instead of [kg]
Private Const FormatVersion As Short = 7
......@@ -37,7 +38,7 @@ Public Class Vehicle
Public CrossWindCorrectionMode As CrossWindCorrectionMode
Public ReadOnly CrossWindCorrectionFile As SubPath
Public RetarderType As RetarderType
<ValidateObject()> Public RetarderType As RetarderType
Public RetarderRatio As Double = 0
Public ReadOnly RetarderLossMapFile As SubPath
......@@ -83,6 +84,11 @@ Public Class Vehicle
SetDefault()
End Sub
Public Shared Function ValidateVehicle(vehicle As Vehicle, validationContext As ValidationContext) As ValidationResult
Return New ValidationResult("bla")
End Function
Private Sub SetDefault()
Mass = 0
MassExtra = 0
......@@ -251,6 +257,13 @@ Public Class Vehicle
Public Function SaveFile() As Boolean
SavedInDeclMode = Cfg.DeclMode
Dim validationResults = Validate(If(Cfg.DeclMode, ExecutionMode.Declaration, ExecutionMode.Engineering))
If validationResults.Count > 0 Then
MsgBox(String.Format("Invalid input: \n{0}", String.Join("; ", validationResults)), MsgBoxStyle.OkOnly, "Failed to save vehicle")
Return False
End If
Dim json As New JSONParser
'Header
Dim header As Dictionary(Of String, Object) = New Dictionary(Of String, Object) From {
......
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