summaryrefslogtreecommitdiffstats
path: root/src/server/StartupTasks.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/StartupTasks.cs')
-rw-r--r--src/server/StartupTasks.cs30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/server/StartupTasks.cs b/src/server/StartupTasks.cs
new file mode 100644
index 0000000..0284f34
--- /dev/null
+++ b/src/server/StartupTasks.cs
@@ -0,0 +1,30 @@
+namespace IOL.BookmarkThing.Server;
+
+public static class StartupTasks
+{
+ private static IEnumerable<string> PathsToEnsureCreated => new List<string> {
+ AppPaths.DataProtectionKeys.HostPath,
+ AppPaths.AppData.HostPath,
+ };
+
+ /// <summary>
+ /// Execute startup tasks.
+ /// </summary>
+ /// <param name="stoppingToken"></param>
+ /// <returns></returns>
+ public static Task ExecuteAsync() {
+ EnsureCreated();
+ return Task.CompletedTask;
+ }
+
+ private static void EnsureCreated() {
+ foreach (var path in PathsToEnsureCreated) {
+ if (path.IsNullOrWhiteSpace() || Directory.Exists(path)) {
+ continue;
+ }
+
+ Directory.CreateDirectory(path!);
+ Console.WriteLine("EnsuredCreated: " + path);
+ }
+ }
+}