Class HTTPProviderConfigurationFetchingStrategy
java.lang.Object
net.shibboleth.shared.component.AbstractInitializableComponent
net.shibboleth.shared.component.AbstractIdentifiedInitializableComponent
net.shibboleth.shared.component.AbstractIdentifiableInitializableComponent
net.shibboleth.oidc.metadata.impl.AbstractDynamicHTTPFetchingStrategy<OIDCProviderMetadata>
net.shibboleth.oidc.metadata.impl.HTTPProviderConfigurationFetchingStrategy
- All Implemented Interfaces:
Function<CriteriaSet,,OIDCProviderMetadata> Component,DestructableComponent,IdentifiableComponent,IdentifiedComponent,InitializableComponent
@ThreadSafe
public class HTTPProviderConfigurationFetchingStrategy
extends AbstractDynamicHTTPFetchingStrategy<OIDCProviderMetadata>
A dynamic strategy for fetching OpenID Connect Provider Configuration Metadata from its well-known location
(OpenID Connect Discovery 1.0, section 4).
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static final classDefault strategy for composing a well-known URL to fetch a provider's configuration document from.static final classThe response handler for parsing the providers's configuration information intoOIDCProviderMetadata. -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final MediaTypeThe returned content_type, must be application/json see openid-connect-discovery section 4.private static final StringThe default well-known path for OpenID Provider metadata.private final org.slf4j.LoggerClass logger.private BiFunction<Issuer,String, String> Strategy for composing an issuer with the well-known configuration path.private StringThe well-known path for OpenID Provider metadata.Fields inherited from class net.shibboleth.oidc.metadata.impl.AbstractDynamicHTTPFetchingStrategy
MDC_ATTRIB_CURRENT_REQUEST_URI -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedHTTPProviderConfigurationFetchingStrategy(org.apache.hc.client5.http.classic.HttpClient client, org.apache.hc.core5.http.io.HttpClientResponseHandler<OIDCProviderMetadata> handler) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionprotected StringbuildRequestURL(CriteriaSet criteria) Build the request URL based on the input criteria set.voidSet the well-known location composition strategy.voidsetWellKnownPath(String path) Set the well-known URL path component.Methods inherited from class net.shibboleth.oidc.metadata.impl.AbstractDynamicHTTPFetchingStrategy
apply, doInitialize, getSupportedContentTypes, setHttpClientSecurityParameters, setSupportedContentTypesMethods inherited from class net.shibboleth.shared.component.AbstractIdentifiableInitializableComponent
setIdMethods inherited from class net.shibboleth.shared.component.AbstractIdentifiedInitializableComponent
ensureId, getId, ifDestroyedThrowDestroyedComponentException, ifInitializedThrowUnmodifiabledComponentException, ifNotInitializedThrowUninitializedComponentExceptionMethods inherited from class net.shibboleth.shared.component.AbstractInitializableComponent
checkComponentActive, checkSetterPreconditions, destroy, doDestroy, initialize, isDestroyed, isInitializedMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.shibboleth.shared.component.IdentifiedComponent
getId
-
Field Details
-
CONTENT_TYPE
The returned content_type, must be application/json see openid-connect-discovery section 4. -
DEFAULT_OPENID_PROVIDER_WELL_KNOWN_PATH
The default well-known path for OpenID Provider metadata.- See Also:
-
log
@Nonnull private final org.slf4j.Logger logClass logger. -
wellKnownPath
The well-known path for OpenID Provider metadata. -
wellKnownLocationCompositionStrategy
Strategy for composing an issuer with the well-known configuration path.
-
-
Constructor Details
-
HTTPProviderConfigurationFetchingStrategy
protected HTTPProviderConfigurationFetchingStrategy(@Nonnull org.apache.hc.client5.http.classic.HttpClient client, @Nonnull org.apache.hc.core5.http.io.HttpClientResponseHandler<OIDCProviderMetadata> handler) Constructor.- Parameters:
client- the HTTP clienthandler- response handler
-
-
Method Details
-
setWellKnownPath
Set the well-known URL path component.Defaults to "/.well-known/openid-configuration".
- Parameters:
path- the path.
-
setWellKnownLocationCompositionStrategy
public void setWellKnownLocationCompositionStrategy(@Nullable BiFunction<Issuer, String, String> strategy) Set the well-known location composition strategy.- Parameters:
strategy- the strategy to set.
-