WIP: Use ConfigManager

This commit is contained in:
Jonathan Jenne
2019-05-28 14:07:35 +02:00
parent e9135d3543
commit 2bd7ff9d2c
17 changed files with 418 additions and 248 deletions

View File

@@ -1,5 +1,7 @@
Imports System.ComponentModel
Imports DLLLicenseManager
Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.Config
Public Class ClassInit
Public _lizenzManager As ClassLicenseManager
@@ -10,12 +12,27 @@ Public Class ClassInit
ClassLogger.Init("", Environment.UserName)
ClassLogger.Add(">> Programmstart: " & Now, False)
ClassLogger.Add(">> Username: " & Environment.UserName, False)
'Throw New Exception("Dummy Fehler!")
LOGCONFIG = New LogConfig(LogConfig.PathType.AppData)
LOGGER = LOGCONFIG.GetLogger("Globix")
LOGGER.Info("Programmstart")
LOGGER.Info("Username: {0}", Environment.UserName)
End Sub
Public Sub InitConfig()
CONFIG = New ConfigManager(Of ClassConfig)(LOGCONFIG, Application.UserAppDataPath, Application.CommonAppDataPath)
MyConnectionString = DecryptConnectionString(CONFIG.Config.ConnectionString)
LogErrorsOnly = CONFIG.Config.LogErrorsOnly
Preview = CONFIG.Config.FilePreview
UniversalViewer_Path = CONFIG.Config.UniversalViewerPath
FW_started = CONFIG.Config.FolderWatchStarted
FWSCAN_started = CONFIG.Config.FolderWatchScanStarted
CURR_DELETE_ORIGIN = CONFIG.Config.DeleteOriginalFile
End Sub
Public Function InitDatabase()
Dim dbResult As Boolean
LoadMyConfig()
'LoadMyConfig()
If LoadFileExclusion() = False Then
If USER_LANGUAGE = "de-DE" Then
MsgBox("Die Ausschlusskriterien für Dateien in Folderwatch konnten nicht angelegt werden!", MsgBoxStyle.Information)
@@ -43,7 +60,7 @@ Public Class ClassInit
Return True
End If
End Function
<STAThread()> _
<STAThread()>
Public Sub InitBasics()
Dim configResult As Boolean
configResult = Load_BasicConfig()
@@ -56,6 +73,25 @@ Public Class ClassInit
End If
End If
End Sub
Public Function Load_BasicConfig()
Try
ClassDatabase.Init()
Dim sql As String = "select * from tbdd_Modules where NAME = 'Global-Indexer'"
Dim DT As DataTable = ClassDatabase.Return_Datatable(sql)
If DT.Rows.Count = 1 Then
GI_withWindream = DT.Rows(0).Item("BIT1")
vWLaufwerk = DT.Rows(0).Item("STRING1")
Else
Return False
End If
Catch ex As Exception
MsgBox("Error in Load_BasicConfig" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
Return False
End Try
Return True
End Function
Public Sub Init_Folderwatch()
Try
Dim sql As String = "SELECT FOLDER_PATH FROM TBGI_FOLDERWATCH_USER WHERE FOLDER_TYPE = 'DEFAULT' AND USER_ID = " & USER_ID
@@ -66,14 +102,18 @@ Public Class ClassInit
If folderwatchPath = String.Empty Then
ClassLogger.Add("Init_Folderwatch: folderwatchPath is empty", True)
FW_started = False
SaveConfigValue("FW_started", "False")
'SaveConfigValue("FW_started", "False")
CONFIG.Config.FolderWatchStarted = False
CONFIG.Save()
Exit Sub
End If
If Not IO.Directory.Exists(folderwatchPath) Then
ClassLogger.Add("Init_Folderwatch: folderwatchPath does not exists or is invalid path", True)
FW_started = False
SaveConfigValue("FW_started", "False")
'SaveConfigValue("FW_started", "False")
CONFIG.Config.FolderWatchStarted = False
CONFIG.Save()
Exit Sub
End If
@@ -97,14 +137,18 @@ Public Class ClassInit
If folderwatchScanPath = String.Empty Then
ClassLogger.Add("Init_Folderwatch: folderwatchScanPath is empty", True)
FWSCAN_started = False
SaveConfigValue("FW_started", "False")
'SaveConfigValue("FW_started", "False")
CONFIG.Config.FolderWatchStarted = False
CONFIG.Save()
Exit Sub
End If
If Not IO.Directory.Exists(folderwatchScanPath) Then
ClassLogger.Add("Init_Folderwatch: folderwatchScanPath does not exists or is invalid path", True)
FWSCAN_started = False
SaveConfigValue("FW_started", "False")
'SaveConfigValue("FW_started", "False")
CONFIG.Config.FolderWatchStarted = False
CONFIG.Save()
Exit Sub
End If
@@ -245,7 +289,29 @@ Public Class ClassInit
MsgBox(ex.Message, MsgBoxStyle.Critical)
START_INCOMPLETE = True
End Try
End Sub
Private Function DecryptConnectionString(EncryptedConnectionString As String) As String
Dim oBuilder As New SqlClient.SqlConnectionStringBuilder With {
.ConnectionString = EncryptedConnectionString
}
If oBuilder.ConnectionString.Contains("Password=") Then
Dim oPlaintextPassword As String
Dim oDecryptor As New ClassEncryption("!35452didalog=")
Try
oPlaintextPassword = oDecryptor.DecryptData(oBuilder.Password)
Catch ex As Exception
LOGGER.Error(ex)
LOGGER.Debug("Password {0} could not be decrypted. Assuming plaintext password.")
oPlaintextPassword = oBuilder.Password
End Try
Return EncryptedConnectionString.Replace(oBuilder.Password, oPlaintextPassword)
Else
Return EncryptedConnectionString
End If
End Function
End Class