summary refs log tree commit diff
path: root/LibGit/Interfaces/IRepoSource.cs
diff options
context:
space:
mode:
Diffstat (limited to 'LibGit/Interfaces/IRepoSource.cs')
-rw-r--r--LibGit/Interfaces/IRepoSource.cs9
1 files changed, 9 insertions, 0 deletions
diff --git a/LibGit/Interfaces/IRepoSource.cs b/LibGit/Interfaces/IRepoSource.cs
new file mode 100644
index 0000000..e276f60
--- /dev/null
+++ b/LibGit/Interfaces/IRepoSource.cs
@@ -0,0 +1,9 @@
+namespace LibGit.Interfaces;
+
+public interface IRepoSource
+{
+    public string BasePath { get; set; }
+    public Task<Stream> GetFileStream(string path);
+
+    public Task<Stream> GetObjectStreamById(string objectId) => GetFileStream(Path.Join("objects", objectId[..2], objectId[2..]));
+}
\ No newline at end of file