diff --git a/Global_Indexer/ClassInit.vb b/Global_Indexer/ClassInit.vb index 800a06b..b4f3c33 100644 --- a/Global_Indexer/ClassInit.vb +++ b/Global_Indexer/ClassInit.vb @@ -58,35 +58,103 @@ Public Class ClassInit End Sub Public Sub Init_Folderwatch() Try - 'Die FolderWatch starten - Dim sql1 = "SELECT FOLDER_PATH FROM TBGI_FOLDERWATCH_USER WHERE FOLDER_TYPE = 'DEFAULT' AND USER_ID = " & USER_ID - Dim folderwatch = ClassDatabase.Execute_Scalar(sql1, MyConnectionString, True) - sql1 = "SELECT FOLDER_PATH FROM TBGI_FOLDERWATCH_USER WHERE FOLDER_TYPE = 'SCAN' AND USER_ID = " & USER_ID - Dim folderwatch_SCAN = ClassDatabase.Execute_Scalar(sql1, MyConnectionString, True) - If Not folderwatch Is Nothing Then - CURRENT_FOLDERWATCH = folderwatch - If FW_started = True Then - If CURRENT_FOLDERWATCH = "" Then - FW_started = False - SaveConfigValue("FW_started", "False") - Else - FW_ISSTARTED = True - ClassFolderWatcher.StartStop_FolderWatch() - End If + Dim sql As String = "SELECT FOLDER_PATH FROM TBGI_FOLDERWATCH_USER WHERE FOLDER_TYPE = 'DEFAULT' AND USER_ID = " & USER_ID + Dim folderwatchPath = ClassDatabase.Execute_Scalar(sql, MyConnectionString, True) - End If + folderwatchPath = IIf(IsDBNull(folderwatchPath), "", folderwatchPath) + + If folderwatchPath = String.Empty Then + ClassLogger.Add("Init_Folderwatch: folderwatchPath is empty", True) + FW_started = False + SaveConfigValue("FW_started", "False") + Exit Sub End If - If Not folderwatch_SCAN Is Nothing Then - CURRENT_SCAN_FOLDERWATCH = folderwatch_SCAN - If FWSCAN_started = True Then - FW_ISSTARTED = True - ClassFolderWatcher.StartStop_FolderWatchSCAN() - 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") + Exit Sub End If + + CURRENT_FOLDERWATCH = folderwatchPath + + FW_started = True + FW_ISSTARTED = True + ClassFolderWatcher.StartStop_FolderWatch() Catch ex As Exception - ClassLogger.Add("Unexpected Error in Init_Folderwatch: " & ex.Message, True) + MsgBox($"Init_Folderwatch: Unexpected error while starting FolderWatch: {ex.Message}", MsgBoxStyle.Critical) + ClassLogger.Add($"Init_Folderwatch: Unexpected error: {ex.Message}", True) START_INCOMPLETE = True End Try + + Try + Dim sql As String = "SELECT FOLDER_PATH FROM TBGI_FOLDERWATCH_USER WHERE FOLDER_TYPE = 'SCAN' AND USER_ID = " & USER_ID + Dim folderwatchScanPath = ClassDatabase.Execute_Scalar(sql, MyConnectionString, True) + + folderwatchScanPath = IIf(IsDBNull(folderwatchScanPath), "", folderwatchScanPath) + + If folderwatchScanPath = String.Empty Then + ClassLogger.Add("Init_Folderwatch: folderwatchScanPath is empty", True) + FWSCAN_started = False + SaveConfigValue("FW_started", "False") + 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") + Exit Sub + End If + + CURRENT_SCAN_FOLDERWATCH = folderwatchScanPath + + FWSCAN_started = True + FW_ISSTARTED = True + ClassFolderWatcher.StartStop_FolderWatchSCAN() + Catch ex As Exception + MsgBox($"Init_Folderwatch: Unexpected error while starting FolderWatchScan: {ex.Message}", MsgBoxStyle.Critical) + ClassLogger.Add($"Init_Folderwatch: Unexpected error: {ex.Message}", True) + START_INCOMPLETE = True + End Try + + + + 'Try + ' 'Die FolderWatch starten + 'Dim sql1 = "SELECT FOLDER_PATH FROM TBGI_FOLDERWATCH_USER WHERE FOLDER_TYPE = 'DEFAULT' AND USER_ID = " & CURRENT_USER_ID + ' Dim folderwatch = ClassDatabase.Execute_Scalar(sql1, MyConnectionString, True) + ' sql1 = "SELECT FOLDER_PATH FROM TBGI_FOLDERWATCH_USER WHERE FOLDER_TYPE = 'SCAN' AND USER_ID = " & CURRENT_USER_ID + ' Dim folderwatch_SCAN = ClassDatabase.Execute_Scalar(sql1, MyConnectionString, True) + ' If Not folderwatch Is Nothing Then + ' CURRENT_FOLDERWATCH = folderwatch + ' If FW_started = True Then + ' If CURRENT_FOLDERWATCH = "" Then + ' FW_started = False + ' SaveConfigValue("FW_started", "False") + ' Else + ' FW_ISSTARTED = True + ' ClassFolderWatcher.StartStop_FolderWatch() + ' End If + + ' End If + ' Else + ' ClassLogger.Add("Init_Folderwatch: folderwatch path is nothing!", True) + ' End If + ' If Not folderwatch_SCAN Is Nothing Then + ' CURRENT_SCAN_FOLDERWATCH = folderwatch_SCAN + ' If FWSCAN_started = True Then + ' FW_ISSTARTED = True + ' ClassFolderWatcher.StartStop_FolderWatchSCAN() + ' End If + ' Else + ' ClassLogger.Add("Init_Folderwatch: folderwatch_SCAN path is nothing!", True) + ' End If + 'Catch ex As Exception + ' ClassLogger.Add("Unexpected Error in Init_Folderwatch: " & ex.Message, True) + ' START_INCOMPLETE = True + 'End Try End Sub Public Sub InitUserLogin() Try