Skip to content

OidcEndpointResolver Class

Answers IOidcEndpointResolver from the route templates the OIDC controllers carry, resolved through the same tokenized configuration that decided where they were mapped.

C#
public class OidcEndpointResolver : Abblix.Oidc.Server.Common.Interfaces.IOidcEndpointResolver

Inheritance System.Object → OidcEndpointResolver

Implements IOidcEndpointResolver

Remarks

The Minimal API adapter registers its own implementation of this contract, so host code that needs one of these URLs is written once and survives a change of adapter. The enabled-endpoint set has to be consulted explicitly here: a route template is a compile-time constant on the controller action and resolves whether or not the endpoint is served, where on the Minimal API side a disabled endpoint was never mapped and has nothing to find. Both then answer null for an endpoint the host does not serve.

Constructors

OidcEndpointResolver(IUriResolver, IOptions<OidcOptions>) Constructor

Answers IOidcEndpointResolver from the route templates the OIDC controllers carry, resolved through the same tokenized configuration that decided where they were mapped.

C#
public OidcEndpointResolver(Abblix.Oidc.Server.Mvc.IUriResolver uriResolver, Microsoft.Extensions.Options.IOptions<Abblix.Oidc.Server.Common.Configuration.OidcOptions> options);

Parameters

uriResolver IUriResolver

Turns a route template into an absolute URL for the current request.

options Microsoft.Extensions.Options.IOptions<OidcOptions>

The enabled-endpoint set, so a disabled endpoint resolves to nothing.

Remarks

The Minimal API adapter registers its own implementation of this contract, so host code that needs one of these URLs is written once and survives a change of adapter. The enabled-endpoint set has to be consulted explicitly here: a route template is a compile-time constant on the controller action and resolves whether or not the endpoint is served, where on the Minimal API side a disabled endpoint was never mapped and has nothing to find. Both then answer null for an endpoint the host does not serve.

Methods

OidcEndpointResolver.Resolve(OidcEndpoints) Method

Returns the absolute URL of endpoint for the current request.

C#
public System.Uri? Resolve(Abblix.Oidc.Server.Common.Configuration.OidcEndpoints endpoint);

Parameters

endpoint OidcEndpoints

The endpoint to resolve. Exactly one flag, never a combination: All and Base name a set rather than an endpoint and resolve to nothing.

Implements Resolve(OidcEndpoints)

Returns

System.Uri
The endpoint's absolute URL, or null when it is not mapped - because the endpoint is disabled in EnabledEndpoints, or because its route takes parameters this contract cannot supply, which today is the per-client configuration endpoint of RegisterClient.