diff --git a/VECTO/OutputData/JSONFileWriter.vb b/VECTO/OutputData/JSONFileWriter.vb index 295cb28882ed122a1bd07f5a009d49bf19fd0e33..4a4f3ab962a2c3ce6d9e0ed0573209bb87ea504f 100644 --- a/VECTO/OutputData/JSONFileWriter.vb +++ b/VECTO/OutputData/JSONFileWriter.vb @@ -256,7 +256,7 @@ Public Class JSONFileWriter 'ADVANCED AUXILIARIES body.Add("AuxiliaryAssembly", aux.AuxiliaryAssembly.GetName()) body.Add("AuxiliaryVersion", aux.AuxiliaryVersion) - body.Add("AdvancedAuxiliaryFilePath", aux.AdvancedAuxiliaryFilePath) + body.Add("AdvancedAuxiliaryFilePath", GetRelativePath(aux.AdvancedAuxiliaryFilePath, basePath)) Dim pAdd As Double = 0.0 Dim auxList As List(Of Object) = New List(Of Object) diff --git a/VECTOAux/VectoAuxiliaries/FilePathUtils.vb b/VECTOAux/VectoAuxiliaries/FilePathUtils.vb index 4060d63a7a60c2a84f883bc9981596dabab9306a..7fa77028360df16d5386e379722335f088cd70fe 100644 --- a/VECTOAux/VectoAuxiliaries/FilePathUtils.vb +++ b/VECTOAux/VectoAuxiliaries/FilePathUtils.vb @@ -8,6 +8,7 @@ ' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. ' ' See the LICENSE.txt for the specific language governing permissions and limitations. +Imports System.IO Public Class FilePathUtils Public Shared Function ValidateFilePath(ByVal filePath As String, ByVal expectedExtension As String, @@ -21,7 +22,7 @@ Public Class FilePathUtils Dim fileNameOnlyNoExtension As String = fileNameOnly(filePath, False) 'Is this filePath empty - If filePath.trim.Length = 0 OrElse Right(filePath, 1) = "\" Then + If filePath.Trim.Length = 0 OrElse Right(filePath, 1) = "\" Then message = "A filename cannot be empty" Return False End If @@ -86,7 +87,7 @@ Public Class FilePathUtils 'Filepath is already absolute Return filename Else - Return vectoPath & filename + Return Path.Combine(vectoPath, filename) 'vectoPath & filename End If End Function @@ -119,7 +120,7 @@ Public Class FilePathUtils Public Shared Function fileExtentionOnly(ByVal filePath As String) As String Dim x As Integer x = filePath.LastIndexOf(".") - If x = - 1 Then + If x = -1 Then Return "" Else Return Microsoft.VisualBasic.Right(filePath, Microsoft.VisualBasic.Len(filePath) - x) diff --git a/VECTOAux/VectoAuxiliaries/UI/frmAuxiliaryConfig.vb b/VECTOAux/VectoAuxiliaries/UI/frmAuxiliaryConfig.vb index bdb0470136bdaed53f07769c233a5fcf7d6910f4..cdcf283270fb5e21eb8808ef4dd341e6905aa6d5 100644 --- a/VECTOAux/VectoAuxiliaries/UI/frmAuxiliaryConfig.vb +++ b/VECTOAux/VectoAuxiliaries/UI/frmAuxiliaryConfig.vb @@ -29,7 +29,7 @@ Public Class frmAuxiliaryConfig Private processing As Boolean = False Private SecondsIntoCycle As Integer = 0 Private vectoFile As String = "" - Private vectoPath As String = "" + Private aauxPath As String = "" Private auxFile As String Private cmFilesList As String() Private SaveClicked As Boolean @@ -60,18 +60,18 @@ Public Class frmAuxiliaryConfig Me.vectoFile = vectoFileName - Me.vectoPath = FilePathUtils.filePathOnly(vectoFileName) + Me.aauxPath = Path.GetDirectoryName(Path.Combine(FilePathUtils.filePathOnly(vectoFileName), fileName)) ' This call is required by the designer. InitializeComponent() ' Add any initialization after the InitializeComponent() call. - auxFile = fileName + auxFile = Path.Combine(FilePathUtils.filePathOnly(vectoFileName), fileName) Try - auxConfig = New AuxiliaryConfig(FilePathUtils.ResolveFilePath(vectoPath, auxFile)) - originalConfig = New AuxiliaryConfig(FilePathUtils.ResolveFilePath(vectoPath, auxFile)) + auxConfig = New AuxiliaryConfig(auxFile) + originalConfig = New AuxiliaryConfig(FilePathUtils.ResolveFilePath(aauxPath, auxFile)) Catch ex As Exception @@ -287,7 +287,7 @@ Public Class frmAuxiliaryConfig Dim comp As CompressorMap Try - comp = New CompressorMap(FilePathUtils.ResolveFilePath(vectoPath, txtCompressorMap.Text)) + comp = New CompressorMap(FilePathUtils.ResolveFilePath(aauxPath, txtCompressorMap.Text)) comp.Initialise() ErrorProvider.SetError(txtCompressorMap, String.Empty) Catch ex As Exception @@ -324,7 +324,7 @@ Public Class frmAuxiliaryConfig Dim actuations As PneumaticActuationsMAP Try - actuations = New PneumaticActuationsMAP(FilePathUtils.ResolveFilePath(vectoPath, txtActuationsMap.Text)) + actuations = New PneumaticActuationsMAP(FilePathUtils.ResolveFilePath(aauxPath, txtActuationsMap.Text)) actuations.Initialise() ErrorProvider.SetError(txtActuationsMap, String.Empty) Catch ex As Exception @@ -415,7 +415,7 @@ Public Class frmAuxiliaryConfig 'Test File is valid Dim alt As ICombinedAlternator Try - alt = New CombinedAlternator(FilePathUtils.ResolveFilePath(vectoPath, txtAlternatorMapPath.Text)) + alt = New CombinedAlternator(FilePathUtils.ResolveFilePath(aauxPath, txtAlternatorMapPath.Text)) ErrorProvider.SetError(txtAlternatorMapPath, String.Empty) Catch ex As Exception ErrorProvider.SetError(txtAlternatorMapPath, @@ -469,7 +469,7 @@ Public Class frmAuxiliaryConfig Dim message As String = "" 'Validate abdb - Bus Database - Dim abdbFile As String = FilePathUtils.ResolveFilePath(vectoPath, txtBusDatabaseFilePath.Text) + Dim abdbFile As String = FilePathUtils.ResolveFilePath(aauxPath, txtBusDatabaseFilePath.Text) Dim bdb As New BusDatabase() If bdb.Initialise(abdbFile) Then ErrorProvider.SetError(txtBusDatabaseFilePath, String.Empty) @@ -482,7 +482,7 @@ Public Class frmAuxiliaryConfig 'Try ahsm - HVac Steady State Model Try - Dim ahsmFile As String = FilePathUtils.ResolveFilePath(vectoPath, txtSSMFilePath.Text) + Dim ahsmFile As String = FilePathUtils.ResolveFilePath(aauxPath, txtSSMFilePath.Text) Dim ssmTool As SSMTOOL = New SSMTOOL(ahsmFile, New HVACConstants, False) If ssmTool.Load(ahsmFile) Then @@ -568,7 +568,7 @@ Public Class frmAuxiliaryConfig Dim result As DialogResult - If Not File.Exists(FilePathUtils.ResolveFilePath(vectoPath, auxFile)) OrElse + If Not File.Exists(FilePathUtils.ResolveFilePath(aauxPath, auxFile)) OrElse Not auxConfig.ConfigValuesAreTheSameAs(originalConfig) Then result = @@ -795,7 +795,7 @@ Public Class frmAuxiliaryConfig End If End If - result = auxConfig.Save(FilePathUtils.ResolveFilePath(vectoPath, auxFile)) + result = auxConfig.Save(FilePathUtils.ResolveFilePath(aauxPath, auxFile)) If Not result Then MessageBox.Show(String.Format("Unable to Save the file '{0}'", auxFile)) @@ -810,7 +810,7 @@ Public Class frmAuxiliaryConfig 'Release existing databindings UnbindAllControls(Me) - result = auxConfig.Load(FilePathUtils.ResolveFilePath(vectoPath, auxFile)) + result = auxConfig.Load(FilePathUtils.ResolveFilePath(aauxPath, auxFile)) If Not result Then MessageBox.Show(String.Format("Unable to load the file '{0}'", auxFile)) @@ -859,7 +859,7 @@ Public Class frmAuxiliaryConfig 'If file Exists, Check validity, else fire up a default SSM Config. If fileExists Then Try - Dim aaltFile As String = FilePathUtils.ResolveFilePath(vectoPath, absoluteAALTPath) + Dim aaltFile As String = FilePathUtils.ResolveFilePath(aauxPath, absoluteAALTPath) Dim combinedAlt As ICombinedAlternator = New CombinedAlternator(aaltFile) Catch ex As Exception MessageBox.Show("The supplied .AALT File was invalid, aborting.") @@ -897,9 +897,9 @@ Public Class frmAuxiliaryConfig Using frm As New frmCombinedAlternators(absoluteAALTPath, New CombinedAlternatorSignals) 'If Dialog result is OK, then take action else bail If frm.ShowDialog() = Windows.Forms.DialogResult.OK Then - If suppliedAALTPath.Contains(":\") AndAlso Not String.IsNullOrEmpty(vectoPath) Then + If suppliedAALTPath.Contains(":\") AndAlso Not String.IsNullOrEmpty(aauxPath) Then txtAlternatorMapPath.Text = - If(suppliedAALTPath.Contains(vectoPath), suppliedAALTPath.Replace(vectoPath, ""), suppliedAALTPath) + If(suppliedAALTPath.Contains(aauxPath), suppliedAALTPath.Replace(aauxPath, ""), suppliedAALTPath) Else txtAlternatorMapPath.Text = fFileWoDir(suppliedAALTPath) End If @@ -981,7 +981,7 @@ Public Class frmAuxiliaryConfig Dim busDB As New BusDatabase() - If Not busDB.Initialise(FilePathUtils.ResolveFilePath(vectoPath, txtBusDatabaseFilePath.Text)) Then + If Not busDB.Initialise(FilePathUtils.ResolveFilePath(aauxPath, txtBusDatabaseFilePath.Text)) Then MessageBox.Show("Unable to load") @@ -1019,7 +1019,7 @@ Public Class frmAuxiliaryConfig If File.Exists(absoluteSSMPath) Then 'is file valid Try ahsm - HVac Steady State Model Try - Dim ahsmFile As String = FilePathUtils.ResolveFilePath(vectoPath, absoluteSSMPath) + Dim ahsmFile As String = FilePathUtils.ResolveFilePath(aauxPath, absoluteSSMPath) Dim ssmTool As SSMTOOL = New SSMTOOL(ahsmFile, New HVACConstants, False) ssmTool.Load(ahsmFile) Catch ex As Exception @@ -1056,9 +1056,9 @@ Public Class frmAuxiliaryConfig Using frm As New frmHVACTool(absoluteBusDatabasePath, absoluteSSMPath, vectoFile, Not fileExists) If frm.ShowDialog() = Windows.Forms.DialogResult.OK Then - If suppliedSSMPath.Contains(":\") AndAlso Not String.IsNullOrEmpty(vectoPath) Then + If suppliedSSMPath.Contains(":\") AndAlso Not String.IsNullOrEmpty(aauxPath) Then txtSSMFilePath.Text = - If(suppliedSSMPath.Contains(vectoPath), suppliedSSMPath.Replace(vectoPath, ""), suppliedSSMPath) + If(suppliedSSMPath.Contains(aauxPath), suppliedSSMPath.Replace(aauxPath, ""), suppliedSSMPath) Else txtSSMFilePath.Text = fFileWoDir(suppliedSSMPath) End If @@ -1233,7 +1233,7 @@ Public Class frmAuxiliaryConfig Try - If ssmMap.SetValuesFromMap(FilePathUtils.ResolveFilePath(vectoPath, txtSSMFilePath.Text), message) Then + If ssmMap.SetValuesFromMap(FilePathUtils.ResolveFilePath(aauxPath, txtSSMFilePath.Text), message) Then Return ssmMap