diff options
author | vnugent <public@vaughnnugent.com> | 2024-07-15 19:00:19 -0400 |
---|---|---|
committer | vnugent <public@vaughnnugent.com> | 2024-07-15 19:00:19 -0400 |
commit | 041941d85e5088837dc419d9ff1f1c9b70d41cbf (patch) | |
tree | 830f3636714a255d4ca94b0769de2f42f3bffa8c /plugins/VNLib.Plugins.Essentials.Accounts.AppData/src/Endpoints | |
parent | 754f177da9abecb61b5ccaff5efb203d92aeb581 (diff) |
feat: Update caching with new helpers
Diffstat (limited to 'plugins/VNLib.Plugins.Essentials.Accounts.AppData/src/Endpoints')
-rw-r--r-- | plugins/VNLib.Plugins.Essentials.Accounts.AppData/src/Endpoints/WebEndpoint.cs | 37 |
1 files changed, 6 insertions, 31 deletions
diff --git a/plugins/VNLib.Plugins.Essentials.Accounts.AppData/src/Endpoints/WebEndpoint.cs b/plugins/VNLib.Plugins.Essentials.Accounts.AppData/src/Endpoints/WebEndpoint.cs index 9c8f501..b95930d 100644 --- a/plugins/VNLib.Plugins.Essentials.Accounts.AppData/src/Endpoints/WebEndpoint.cs +++ b/plugins/VNLib.Plugins.Essentials.Accounts.AppData/src/Endpoints/WebEndpoint.cs @@ -28,11 +28,9 @@ using System.Collections.Generic; using System.Threading.Tasks; using VNLib.Net.Http; -using VNLib.Utils.Logging; using VNLib.Hashing.Checksums; using VNLib.Plugins.Essentials.Endpoints; using VNLib.Plugins.Essentials.Extensions; -using VNLib.Plugins.Extensions.VNCache; using VNLib.Plugins.Extensions.Loading; using VNLib.Plugins.Extensions.Validation; @@ -46,42 +44,19 @@ namespace VNLib.Plugins.Essentials.Accounts.AppData.Endpoints { const int DefaultMaxDataSize = 8 * 1024; - private readonly IAppDataStore _store; + private readonly StorageManager _store; private readonly int MaxDataSize; private readonly string[] AllowedScopes; public WebEndpoint(PluginBase plugin, IConfigScope config) { - string path = config.GetRequiredProperty("path", p => p.GetString())!; + string path = config.GetRequiredProperty<string>("path"); InitPathAndLog(path, plugin.Log.CreateScope("Endpoint")); - MaxDataSize = config.GetValueOrDefault("max_data_size", p => p.GetInt32(), DefaultMaxDataSize); - AllowedScopes = config.GetRequiredProperty("allowed_scopes", p => p.EnumerateArray().Select(p => p.GetString()!)).ToArray(); - - bool useCache = false; - - //Cache loading is optional - if (plugin.HasConfigForType<CacheStore>()) - { - //See if caching is enabled - IConfigScope cacheConfig = plugin.GetConfigForType<CacheStore>(); - useCache = cacheConfig.GetValueOrDefault("enabled", e => e.GetBoolean(), false); - - if (useCache && plugin.GetDefaultGlobalCache() is null) - { - plugin.Log.Error("Cache was enabled but no caching library was loaded. Continuing without cache"); - useCache = false; - } - } - - _store = LoadStore(plugin, useCache); - } - - private static IAppDataStore LoadStore(PluginBase plugin, bool withCache) - { - return withCache - ? plugin.GetOrCreateSingleton<CacheStore>() - : plugin.GetOrCreateSingleton<PersistentStorageManager>(); + MaxDataSize = config.GetValueOrDefault("max_data_size", DefaultMaxDataSize); + AllowedScopes = config.GetRequiredProperty<string[]>("allowed_scopes"); + + _store = plugin.GetOrCreateSingleton<StorageManager>(); } protected async override ValueTask<VfReturnType> GetAsync(HttpEntity entity) |