aboutsummaryrefslogtreecommitdiff
path: root/Plugins/OAuth2ClientApplications/src/Endpoints/ScopesEndpoint.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Plugins/OAuth2ClientApplications/src/Endpoints/ScopesEndpoint.cs')
-rw-r--r--Plugins/OAuth2ClientApplications/src/Endpoints/ScopesEndpoint.cs24
1 files changed, 5 insertions, 19 deletions
diff --git a/Plugins/OAuth2ClientApplications/src/Endpoints/ScopesEndpoint.cs b/Plugins/OAuth2ClientApplications/src/Endpoints/ScopesEndpoint.cs
index b89b591..654bbb1 100644
--- a/Plugins/OAuth2ClientApplications/src/Endpoints/ScopesEndpoint.cs
+++ b/Plugins/OAuth2ClientApplications/src/Endpoints/ScopesEndpoint.cs
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2023 Vaughn Nugent
+* Copyright (c) 2024 Vaughn Nugent
*
* Library: VNLib
* Package: OAuth2ClientApplications
@@ -22,35 +22,21 @@
* along with this program. If not, see https://www.gnu.org/licenses/.
*/
-using System.Linq;
-
using VNLib.Plugins;
using VNLib.Plugins.Essentials;
using VNLib.Plugins.Essentials.Endpoints;
using VNLib.Plugins.Extensions.Loading;
+using VNLib.Plugins.Extensions.Loading.Routing;
namespace OAuth2ClientApplications.Endpoints
{
+ [EndpointPath("{{path}}")]
[ConfigurationName("scopes")]
- internal sealed class ScopesEndpoint : UnprotectedWebEndpoint
+ internal sealed class ScopesEndpoint(PluginBase plugin, IConfigScope config) : UnprotectedWebEndpoint
{
- private readonly string[] _permissions;
-
- public ScopesEndpoint(PluginBase plugin, IConfigScope config)
- {
- //Get configuration variables from plugin
- string? path = config["path"].GetString();
-
- //Get scope permissions
- _permissions = config["scopes"].EnumerateArray()
- .Select(p => p.GetString()!)
- .Where(p => p!= null)
- .ToArray();
-
- InitPathAndLog(path, plugin.Log);
- }
+ private readonly string[] _permissions = config.GetRequiredProperty<string[]>("scopes");
protected override VfReturnType Get(HttpEntity entity)
{