diff options
Diffstat (limited to 'MatrixRoomUtils.Core/Interfaces')
-rw-r--r-- | MatrixRoomUtils.Core/Interfaces/IHomeServer.cs | 8 | ||||
-rw-r--r-- | MatrixRoomUtils.Core/Interfaces/Services/IStorageProvider.cs | 26 |
2 files changed, 23 insertions, 11 deletions
diff --git a/MatrixRoomUtils.Core/Interfaces/IHomeServer.cs b/MatrixRoomUtils.Core/Interfaces/IHomeServer.cs index d41a6cd..3521a51 100644 --- a/MatrixRoomUtils.Core/Interfaces/IHomeServer.cs +++ b/MatrixRoomUtils.Core/Interfaces/IHomeServer.cs @@ -11,7 +11,7 @@ public class IHomeServer { public string HomeServerDomain { get; set; } public string FullHomeServerDomain { get; set; } - protected internal MatrixHttpClient _httpClient { get; set; } = new(); + public MatrixHttpClient _httpClient { get; set; } = new(); public async Task<ProfileResponseEventData> GetProfile(string mxid) { if(mxid is null) throw new ArgumentNullException(nameof(mxid)); @@ -20,12 +20,12 @@ public class IHomeServer { if (_profileCache[mxid] is ProfileResponseEventData p) return p; } _profileCache[mxid] = new SemaphoreSlim(1); - + var resp = await _httpClient.GetAsync($"/_matrix/client/v3/profile/{mxid}"); var data = await resp.Content.ReadFromJsonAsync<ProfileResponseEventData>(); if (!resp.IsSuccessStatusCode) Console.WriteLine("Profile: " + data); _profileCache[mxid] = data; - + return data; } -} \ No newline at end of file +} diff --git a/MatrixRoomUtils.Core/Interfaces/Services/IStorageProvider.cs b/MatrixRoomUtils.Core/Interfaces/Services/IStorageProvider.cs index eefb79c..1de9885 100644 --- a/MatrixRoomUtils.Core/Interfaces/Services/IStorageProvider.cs +++ b/MatrixRoomUtils.Core/Interfaces/Services/IStorageProvider.cs @@ -1,4 +1,4 @@ -namespace MatrixRoomUtils.Core.Interfaces.Services; +namespace MatrixRoomUtils.Core.Interfaces.Services; public interface IStorageProvider { // save all children of a type with reflection @@ -6,7 +6,7 @@ public interface IStorageProvider { Console.WriteLine($"StorageProvider<{GetType().Name}> does not implement SaveAllChildren<T>(key, value)!"); throw new NotImplementedException(); } - + // load all children of a type with reflection public Task<T?> LoadAllChildrenAsync<T>(string key) { Console.WriteLine($"StorageProvider<{GetType().Name}> does not implement LoadAllChildren<T>(key)!"); @@ -18,29 +18,41 @@ public interface IStorageProvider { Console.WriteLine($"StorageProvider<{GetType().Name}> does not implement SaveObject<T>(key, value)!"); throw new NotImplementedException(); } - + // load public Task<T?> LoadObjectAsync<T>(string key) { Console.WriteLine($"StorageProvider<{GetType().Name}> does not implement LoadObject<T>(key)!"); throw new NotImplementedException(); } - + // check if exists public Task<bool> ObjectExistsAsync(string key) { Console.WriteLine($"StorageProvider<{GetType().Name}> does not implement ObjectExists(key)!"); throw new NotImplementedException(); } - + // get all keys public Task<List<string>> GetAllKeysAsync() { Console.WriteLine($"StorageProvider<{GetType().Name}> does not implement GetAllKeys()!"); throw new NotImplementedException(); } - + // delete public Task DeleteObjectAsync(string key) { Console.WriteLine($"StorageProvider<{GetType().Name}> does not implement DeleteObject(key)!"); throw new NotImplementedException(); } -} \ No newline at end of file + + // save stream + public Task SaveStreamAsync(string key, Stream stream) { + Console.WriteLine($"StorageProvider<{GetType().Name}> does not implement SaveStream(key, stream)!"); + throw new NotImplementedException(); + } + + // load stream + public Task<Stream?> LoadStreamAsync(string key) { + Console.WriteLine($"StorageProvider<{GetType().Name}> does not implement LoadStream(key)!"); + throw new NotImplementedException(); + } +} |