Files
EgtWPFLib5/Utility/Machine.vb
T
Emmanuele Sassi f325ea4bdf EgtWpfLib :
- Agiunti pannelli, StatusBar e scena generici per uso comune.
- Miglioramenti vari.
2017-11-25 17:01:25 +00:00

91 lines
2.7 KiB
VB.net

Imports System.IO
''' <summary>
''' Class that create the association Name/IniPath for the machine
''' </summary>
Public Class Machine
Private m_sName As String
Public ReadOnly Property Name As String
Get
Return m_sName
End Get
End Property
Private m_DirPath As String
Public ReadOnly Property DirPath As String
Get
Return m_DirPath
End Get
End Property
Private m_IniPath As String
Public ReadOnly Property IniPath As String
Get
Return m_IniPath
End Get
End Property
Sub New(sDirPath As String, sIniPath As String)
If Not String.IsNullOrWhiteSpace(sDirPath) Then
m_sName = Path.GetFileName(sDirPath)
m_DirPath = sDirPath
m_IniPath = sIniPath
Else
m_sName = String.Empty
m_DirPath = String.Empty
m_IniPath = String.Empty
End If
End Sub
Public Shared Function MachineListInit(sMachinesRootDir As String, MachineList As IList(Of Machine)) As Boolean
' Se direttorio base macchine non definito o non esiste, ritorno
If String.IsNullOrWhiteSpace(sMachinesRootDir) OrElse
Not Directory.Exists(sMachinesRootDir) Then
MachineList = Nothing
Return False
End If
' Cerco le macchine
Dim Machines As String() = Directory.GetDirectories(sMachinesRootDir)
For i As Integer = 0 To Machines.Count - 1
Dim PathIni As String = Machines(i) & "\" & Path.GetFileName(Machines(i)) & ".ini"
If File.Exists(PathIni) Then
MachineList.Add(New Machine(Machines(i), PathIni))
End If
Next
Return True
End Function
Public Shared Function SearchMachine(sName As String, MachineList As IList(Of Machine), ByRef FoundedMachine As Machine) As Boolean
For Each Machine In MachineList
If Machine.Name = sName Then
FoundedMachine = Machine
Return True
End If
Next
FoundedMachine = Nothing
Return False
End Function
Public Shared Function SearchMachineIni(sName As String, MachineList As IList(Of Machine), ByRef FoundedIni As String) As Boolean
For Each Machine In MachineList
If Machine.Name = sName Then
FoundedIni = Machine.IniPath
Return True
End If
Next
FoundedIni = String.Empty
Return False
End Function
Public Shared Function ExistsMachine(sName As String, MachineList As IList(Of Machine)) As Boolean
For Each Machine In MachineList
If Machine.Name = sName Then
Return True
End If
Next
Return False
End Function
End Class