private static void OnError(object source, ErrorEventArgs e) { Exception ex = (e != null) ? e.GetException() : null; if (ex != null) { KillbitWatcher.HandleFileWatcherException(ex); } }
public static void TryWatch(KillbitWatcher.ReadKillBitFromFileCallback readKillBitFromFileCallback) { if (!Directory.Exists(KillBitHelper.KillBitDirectory)) { Exception ex = null; try { KillbitWatcher.Tracer.TraceInformation <string>(0, 0L, "Killbit folder {0} is not there. Creating it.", KillBitHelper.KillBitDirectory); ExtensionDiagnostics.Logger.LogEvent(ApplicationLogicEventLogConstants.Tuple_KillbitFolderNotExist, null, new object[] { "ProcessKillBit" }); Directory.CreateDirectory(KillBitHelper.KillBitDirectory); } catch (DirectoryNotFoundException ex2) { ex = ex2; } catch (IOException ex3) { ex = ex3; } catch (UnauthorizedAccessException ex4) { ex = ex4; } if (ex != null) { KillbitWatcher.Tracer.TraceError <string, Exception>(0L, "Cannot created killbit folder {0} due to Exception {1}.", KillBitHelper.KillBitDirectory, ex); ExtensionDiagnostics.Logger.LogEvent(ApplicationLogicEventLogConstants.Tuple_CanNotCreateKillbitFolder, null, new object[] { "ProcessKillBit", ExtensionDiagnostics.GetLoggedExceptionString(ex) }); return; } } try { KillbitWatcher.Watch(readKillBitFromFileCallback); } catch (Exception e) { KillbitWatcher.HandleFileWatcherException(e); } }