From 135f236b8c3ace015d684c6afc0e6bc9c5946e30 Mon Sep 17 00:00:00 2001 From: Mike Phares Date: Thu, 18 Apr 2024 07:25:36 -0700 Subject: [PATCH] Trigger --- Helpers/HelperCompass.cs | 5 +++++ Models/Binder/CompassConfiguration.cs | 3 +++ Models/CompassConfiguration.cs | 1 + 3 files changed, 9 insertions(+) diff --git a/Helpers/HelperCompass.cs b/Helpers/HelperCompass.cs index 00e6f19..9c70421 100644 --- a/Helpers/HelperCompass.cs +++ b/Helpers/HelperCompass.cs @@ -83,12 +83,17 @@ internal static partial class HelperCompass private static void CopyFiles(AppSettings appSettings, ReadOnlyCollection files) { string checkFile; + string triggerFile; foreach (string file in files) { checkFile = Path.Combine(appSettings.CompassConfiguration.Destination, Path.GetFileName(file)); + triggerFile = $"{checkFile}{appSettings.CompassConfiguration.TriggerAppendage}"; if (File.Exists(checkFile)) continue; + if (File.Exists(triggerFile)) + continue; File.Copy(file, checkFile); + File.WriteAllText(triggerFile, string.Empty); } } diff --git a/Models/Binder/CompassConfiguration.cs b/Models/Binder/CompassConfiguration.cs index 451eb1e..c14e5c0 100644 --- a/Models/Binder/CompassConfiguration.cs +++ b/Models/Binder/CompassConfiguration.cs @@ -11,6 +11,7 @@ public class CompassConfiguration public string? MonthPattern { get; set; } public string? Pattern { get; set; } public string? Source { get; set; } + public string? TriggerAppendage { get; set; } public string? YearPattern { get; set; } public override string ToString() @@ -49,6 +50,7 @@ public class CompassConfiguration if (configuration.MonthPattern is null) throw new NullReferenceException(nameof(configuration.MonthPattern)); if (configuration.Pattern is null) throw new NullReferenceException(nameof(configuration.Pattern)); if (configuration.Source is null) throw new NullReferenceException(nameof(configuration.Source)); + if (configuration.TriggerAppendage is null) throw new NullReferenceException(nameof(configuration.TriggerAppendage)); if (configuration.YearPattern is null) throw new NullReferenceException(nameof(configuration.YearPattern)); Verify(configuration); result = new(configuration.Destination, @@ -56,6 +58,7 @@ public class CompassConfiguration configuration.MonthPattern, configuration.Pattern, configuration.Source, + configuration.TriggerAppendage, configuration.YearPattern); return result; } diff --git a/Models/CompassConfiguration.cs b/Models/CompassConfiguration.cs index 2e0491b..cb878ab 100644 --- a/Models/CompassConfiguration.cs +++ b/Models/CompassConfiguration.cs @@ -8,6 +8,7 @@ public record CompassConfiguration(string Destination, string MonthPattern, string Pattern, string Source, + string TriggerAppendage, string YearPattern) {