diff options
author | TheArcaneBrony <myrainbowdash949@gmail.com> | 2023-06-19 02:36:32 +0200 |
---|---|---|
committer | TheArcaneBrony <myrainbowdash949@gmail.com> | 2023-06-19 02:36:32 +0200 |
commit | ed2205972a7b7d6fdd4563c3775a83616920597a (patch) | |
tree | 54aec1cfdf861fd8a7739be131fbe79ae24d91e4 /MatrixRoomUtils.Core/Services | |
parent | Partial refactor (diff) | |
download | MatrixUtils-ed2205972a7b7d6fdd4563c3775a83616920597a.tar.xz |
Working sync
Diffstat (limited to 'MatrixRoomUtils.Core/Services')
4 files changed, 39 insertions, 9 deletions
diff --git a/MatrixRoomUtils.Core/Services/HomeserverProviderService.cs b/MatrixRoomUtils.Core/Services/HomeserverProviderService.cs new file mode 100644 index 0000000..3db4584 --- /dev/null +++ b/MatrixRoomUtils.Core/Services/HomeserverProviderService.cs @@ -0,0 +1,18 @@ +using MatrixRoomUtils.Core.Attributes; + +namespace MatrixRoomUtils.Core.Services; + +public class HomeserverProviderService { + private readonly TieredStorageService _tieredStorageService; + + public HomeserverProviderService(TieredStorageService tieredStorageService) { + Console.WriteLine("Homeserver provider service instantiated!"); + _tieredStorageService = tieredStorageService; + Console.WriteLine( + $"New HomeserverProviderService created with TieredStorageService<{string.Join(", ", tieredStorageService.GetType().GetProperties().Select(x => x.Name))}>!"); + } + + public async Task<AuthenticatedHomeServer> GetAuthenticatedWithToken(string homeserver, string accessToken) { + return await new AuthenticatedHomeServer(homeserver, accessToken, _tieredStorageService).Configure(); + } +} \ No newline at end of file diff --git a/MatrixRoomUtils.Core/Services/HomeserverService.cs b/MatrixRoomUtils.Core/Services/HomeserverService.cs deleted file mode 100644 index ba48e6c..0000000 --- a/MatrixRoomUtils.Core/Services/HomeserverService.cs +++ /dev/null @@ -1,8 +0,0 @@ -using MatrixRoomUtils.Core.Attributes; - -namespace MatrixRoomUtils.Core.Services; - -[Trace] -public class HomeserverService { - -} \ No newline at end of file diff --git a/MatrixRoomUtils.Core/Services/ServiceInstaller.cs b/MatrixRoomUtils.Core/Services/ServiceInstaller.cs new file mode 100644 index 0000000..43255d8 --- /dev/null +++ b/MatrixRoomUtils.Core/Services/ServiceInstaller.cs @@ -0,0 +1,16 @@ +using MatrixRoomUtils.Core.Interfaces.Services; +using Microsoft.Extensions.DependencyInjection; + +namespace MatrixRoomUtils.Core.Services; + +public static class ServiceInstaller { + + public static IServiceCollection AddRoryLibMatrixServices(this IServiceCollection services) { + if (!services.Any(x => x.ServiceType == typeof(TieredStorageService))) + throw new Exception("[MRUCore/DI] No TieredStorageService has been registered!"); + services.AddScoped<HomeserverProviderService>(); + return services; + } + + +} \ No newline at end of file diff --git a/MatrixRoomUtils.Core/Services/TieredStorageService.cs b/MatrixRoomUtils.Core/Services/TieredStorageService.cs index f6beddd..2f27443 100644 --- a/MatrixRoomUtils.Core/Services/TieredStorageService.cs +++ b/MatrixRoomUtils.Core/Services/TieredStorageService.cs @@ -3,7 +3,11 @@ using MatrixRoomUtils.Core.Interfaces.Services; namespace MatrixRoomUtils.Core.Services; public class TieredStorageService { + public IStorageProvider CacheStorageProvider { get; } + public IStorageProvider DataStorageProvider { get; } + public TieredStorageService(IStorageProvider cacheStorageProvider, IStorageProvider dataStorageProvider) { - + CacheStorageProvider = cacheStorageProvider; + DataStorageProvider = dataStorageProvider; } } \ No newline at end of file |