@@ -5,6 +5,9 @@ Imports System.Threading
55Imports CommunityToolkit.Mvvm.ComponentModel
66
77Imports CompactGUI.Core
8+ Imports CompactGUI.Logging.Watcher
9+
10+ Imports Microsoft.Extensions.Logging
811
912Imports Microsoft.Extensions.Logging.Abstractions
1013
@@ -34,12 +37,14 @@ Public Class Watcher : Inherits ObservableObject
3437 Private _disableCounter As Integer = 0
3538 Private _counterLock As New SemaphoreSlim( 1 , 1 )
3639
40+ Private Shared _logger As ILogger( Of Watcher)
41+
3742 Public Async Function DisableBackgrounding() As Task
3843 Await _counterLock.WaitAsync()
3944 Try
4045 _disableCounter += 1
4146 If _disableCounter = 1 Then
42- Debug.WriteLine( "Backgrounding disabled!" )
47+ WatcherLog.BackgroundingDisabled(_logger )
4348 IdleDetector.Paused = True
4449 Await _parseWatchersSemaphore.WaitAsync()
4550 End If
@@ -56,7 +61,7 @@ Public Class Watcher : Inherits ObservableObject
5661 If _disableCounter = 0 Then
5762 _parseWatchersSemaphore.Release()
5863 IdleDetector.Paused = False
59- Debug.WriteLine( "Backgrounding enabled!" )
64+ WatcherLog.BackgroundingEnabled(_logger )
6065 End If
6166 End If
6267 Finally
@@ -65,14 +70,14 @@ Public Class Watcher : Inherits ObservableObject
6570 End Function
6671
6772
68- Sub New (excludedFiletypes As String ())
73+ Sub New (excludedFiletypes As String (), logger As ILogger( Of Watcher) )
6974
75+ WatcherLog.WatcherStarted(logger)
7076 IdleDetector.Start()
71- Debug.WriteLine( "Idle Detector Started" )
7277 AddHandler IdleDetector.IsIdle, AddressOf OnSystemIdle
7378
74- BGCompactor = New BackgroundCompactor(excludedFiletypes)
75-
79+ BGCompactor = New BackgroundCompactor(excludedFiletypes, _logger )
80+ _logger = logger
7681 InitializeWatchedFoldersAsync()
7782
7883
@@ -206,7 +211,7 @@ Public Class Watcher : Inherits ObservableObject
206211
207212 Catch ex As Exception
208213 validatedResult = (DateTime.Now, Nothing )
209-
214+ WatcherLog.DeserializeWatcherJsonFailed(_logger, ex.Message)
210215 End Try
211216
212217 Return validatedResult
@@ -228,7 +233,6 @@ Public Class Watcher : Inherits ObservableObject
228233 _isHandlingIdle = True
229234 Try
230235
231- Debug.WriteLine( "System Idle Detected" )
232236 If Not IsWatchingEnabled Then Return
233237
234238 Dim recentThresholdDate As DateTime = DateTime.Now.AddSeconds(-LAST_SYSTEM_MODIFIED_TIME_THRESHOLD)
@@ -252,22 +256,22 @@ Public Class Watcher : Inherits ObservableObject
252256 If Not acquired Then Return
253257
254258 Try
255- Debug.WriteLine( "Background Parsing Watchers" )
259+ WatcherLog.ParsingWatchers(_logger, ParseAll )
256260
257261 Dim WatchersToCheck = If (ParseAll, FolderMonitors, FolderMonitors.Where( Function (w) w.HasTargetChanged)).ToList()
258262
259263 If Not WatchersToCheck.Any() Then Return
260264
261265 Dim watchersToRemove = WatchersToCheck.Where( Function (f) Not IO.Directory.Exists(f.Folder)).ToList()
262266 If watchersToRemove.Any() Then
263- Debug.WriteLine( $ "Removing { watchersToRemove.Count} folders that do not exist from watcher list." )
267+ WatcherLog.RemovingNonexistentFolders(_logger, watchersToRemove.Count)
264268 For Each fsWatcher In watchersToRemove
265269 RemoveWatched(WatchedFolders.FirstOrDefault( Function (f) f.Folder = fsWatcher.Folder))
266270 Next
267271 End If
268272
269273 For Each fsWatcher In WatchersToCheck.OrderBy( Function (f) f.DisplayName)
270-
274+ WatcherLog.FolderChanged(_logger, fsWatcher.DisplayName)
271275 Await Analyse(fsWatcher.Folder, ParseAll)
272276 Next
273277
@@ -328,7 +332,7 @@ Public Class Watcher : Inherits ObservableObject
328332
329333
330334 Public Async Function Analyse(folder As String , checkDiskModified As Boolean ) As Task( Of Boolean )
331- Debug.WriteLine( "Background Analysing: " & folder)
335+
332336 Dim analyser As New Analyser(folder, NullLogger( Of Analyser).Instance)
333337
334338 Dim watched = WatchedFolders.First( Function (f) f.Folder = folder)
0 commit comments