diff options
| author | ivarlovlie <git@ivarlovlie.no> | 2022-06-05 00:19:10 +0200 |
|---|---|---|
| committer | ivarlovlie <git@ivarlovlie.no> | 2022-06-05 00:19:10 +0200 |
| commit | 1bd30ee34323f150c63fc537e0d131dca29dc4ef (patch) | |
| tree | 12f8315916537bd4c9692a2d220a819e78a892fb /server/src/Endpoints | |
| parent | d46743d565461144e1aabfb4b6a297d8387c4075 (diff) | |
| download | greatoffice-1bd30ee34323f150c63fc537e0d131dca29dc4ef.tar.xz greatoffice-1bd30ee34323f150c63fc537e0d131dca29dc4ef.zip | |
refactor: Implement caching in VaultService and use VaultService instead of IOptions
Diffstat (limited to 'server/src/Endpoints')
3 files changed, 34 insertions, 2 deletions
diff --git a/server/src/Endpoints/Internal/Root/ReadConfigurationRoute.cs b/server/src/Endpoints/Internal/Root/ReadConfigurationRoute.cs new file mode 100644 index 0000000..e0dcca3 --- /dev/null +++ b/server/src/Endpoints/Internal/Root/ReadConfigurationRoute.cs @@ -0,0 +1,17 @@ +namespace IOL.GreatOffice.Api.Endpoints.Internal.Root; + +public class ReadConfigurationRoute : RouteBaseSync.WithoutRequest.WithActionResult +{ + private readonly VaultService _vaultService; + + public ReadConfigurationRoute(VaultService vaultService) { + _vaultService = vaultService; + } + + [AllowAnonymous] + [HttpGet("~/_/configuration")] + public override ActionResult Handle() { + var config = _vaultService.GetCurrentAppConfiguration(); + return Content(JsonSerializer.Serialize(config.GetPublicVersion()), "application/json"); + } +} diff --git a/server/src/Endpoints/Internal/Root/RefreshConfigurationRoute.cs b/server/src/Endpoints/Internal/Root/RefreshConfigurationRoute.cs new file mode 100644 index 0000000..4b1beec --- /dev/null +++ b/server/src/Endpoints/Internal/Root/RefreshConfigurationRoute.cs @@ -0,0 +1,15 @@ +namespace IOL.GreatOffice.Api.Endpoints.Internal.Root; + +public class RefreshConfigurationRoute : RouteBaseSync.WithoutRequest.WithoutResult +{ + private readonly VaultService _vaultService; + + public RefreshConfigurationRoute(VaultService vaultService) { + _vaultService = vaultService; + } + + [HttpGet("~/_/refresh-configuration")] + public override void Handle() { + _vaultService.RefreshCurrentAppConfiguration(); + } +} diff --git a/server/src/Endpoints/V1/ApiTokens/CreateTokenRoute.cs b/server/src/Endpoints/V1/ApiTokens/CreateTokenRoute.cs index 3e19626..352ad18 100644 --- a/server/src/Endpoints/V1/ApiTokens/CreateTokenRoute.cs +++ b/server/src/Endpoints/V1/ApiTokens/CreateTokenRoute.cs @@ -9,9 +9,9 @@ public class CreateTokenRoute : RouteBaseSync.WithRequest<ApiAccessToken.ApiAcce private readonly AppConfiguration _configuration; private readonly ILogger<CreateTokenRoute> _logger; - public CreateTokenRoute(AppDbContext context, IOptions<AppConfiguration> configuration, ILogger<CreateTokenRoute> logger) { + public CreateTokenRoute(AppDbContext context, VaultService vaultService, ILogger<CreateTokenRoute> logger) { _context = context; - _configuration = configuration.Value; + _configuration = vaultService.GetCurrentAppConfiguration(); _logger = logger; } |
