aboutsummaryrefslogtreecommitdiff
path: root/Timeline/Services/PathProvider.cs
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2020-02-21 20:19:10 +0800
committerGitHub <noreply@github.com>2020-02-21 20:19:10 +0800
commit568408cf8242b578e4218e52b60296aacc71afcd (patch)
treebc3da9df67e73dff6578da9a0f4cd3982f4cd5f2 /Timeline/Services/PathProvider.cs
parentce56b8254bb6a080a64b2b97bc000e3011d3f1f2 (diff)
parent18daa99d8f23f0b013d93ce57e3328e16bb174b8 (diff)
downloadtimeline-568408cf8242b578e4218e52b60296aacc71afcd.tar.gz
timeline-568408cf8242b578e4218e52b60296aacc71afcd.tar.bz2
timeline-568408cf8242b578e4218e52b60296aacc71afcd.zip
Merge pull request #59 from crupest/dev
Migrate to sqlite.
Diffstat (limited to 'Timeline/Services/PathProvider.cs')
-rw-r--r--Timeline/Services/PathProvider.cs41
1 files changed, 41 insertions, 0 deletions
diff --git a/Timeline/Services/PathProvider.cs b/Timeline/Services/PathProvider.cs
new file mode 100644
index 00000000..15e66972
--- /dev/null
+++ b/Timeline/Services/PathProvider.cs
@@ -0,0 +1,41 @@
+using Microsoft.Extensions.Configuration;
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Threading.Tasks;
+
+namespace Timeline.Services
+{
+ public interface IPathProvider
+ {
+ public string GetWorkingDirectory();
+ public string GetDatabaseFilePath();
+ }
+
+ public class PathProvider : IPathProvider
+ {
+ const string DatabaseFileName = "timeline.db";
+
+ private readonly IConfiguration _configuration;
+
+ private readonly string _workingDirectory;
+
+
+ public PathProvider(IConfiguration configuration)
+ {
+ _configuration = configuration;
+ _workingDirectory = configuration.GetValue<string>("WorkDir");
+ }
+
+ public string GetWorkingDirectory()
+ {
+ return _workingDirectory;
+ }
+
+ public string GetDatabaseFilePath()
+ {
+ return Path.Combine(_workingDirectory, DatabaseFileName);
+ }
+ }
+}