Class PopulateHttpClientSecurityParametersHandler
java.lang.Object
net.shibboleth.shared.component.AbstractInitializableComponent
org.opensaml.messaging.handler.AbstractMessageHandler
org.opensaml.security.messaging.impl.PopulateHttpClientSecurityParametersHandler
- All Implemented Interfaces:
Component,DestructableComponent,InitializableComponent,MessageHandler
Handler that resolves and populates
HttpClientSecurityParameters on a HttpClientSecurityContext
created/accessed via a lookup function, by default as an immediate child context of the target
MessageContext.-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Predicate<MessageContext>Predicate which determines whether clientTLS credentials should be included in the resolved parameters.Strategy used to look up a per-requestHttpClientSecurityConfigurationlist.Strategy used to look up an existingHttpClientSecurityContextto copy.private final org.slf4j.LoggerClass logger.Resolver for parameters to store into context.Strategy used to look up theHttpClientSecurityContextto set the parameters for. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidprotected voiddoInvoke(MessageContext messageContext) protected booleandoPreInvoke(MessageContext messageContext) protected voidpostProcessParams(MessageContext messageContext, HttpClientSecurityParameters params) Post-process the resolved parameters.voidsetClientTLSPredicate(Predicate<MessageContext> predicate) Set the predicate which determines whether clientTLS credentials should be included in the resolved parameters.voidsetConfigurationLookupStrategy(Function<MessageContext, List<HttpClientSecurityConfiguration>> strategy) Set the strategy used to look up a per-requestHttpClientSecurityConfigurationlist.voidsetExistingParametersContextLookupStrategy(Function<MessageContext, HttpClientSecurityContext> strategy) Set the strategy used to look up an existingHttpClientSecurityContextto copy instead of actually resolving the parameters to set.voidSet the resolver to use for the parameters to store into the context.voidsetSecurityParametersContextLookupStrategy(Function<MessageContext, HttpClientSecurityContext> strategy) Set the strategy used to look up theHttpClientSecurityContextto set the parameters for.Methods inherited from class org.opensaml.messaging.handler.AbstractMessageHandler
doPostInvoke, doPostInvoke, getActivationCondition, getLogPrefix, invoke, isPreInvokeCalled, setActivationConditionMethods inherited from class net.shibboleth.shared.component.AbstractInitializableComponent
checkComponentActive, checkSetterPreconditions, destroy, doDestroy, ifDestroyedThrowDestroyedComponentException, ifInitializedThrowUnmodifiabledComponentException, ifNotInitializedThrowUninitializedComponentException, 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.InitializableComponent
initialize, isInitialized
-
Field Details
-
log
@Nonnull private final org.slf4j.Logger logClass logger. -
securityParametersContextLookupStrategy
@Nonnull private Function<MessageContext,HttpClientSecurityContext> securityParametersContextLookupStrategyStrategy used to look up theHttpClientSecurityContextto set the parameters for. -
existingParametersContextLookupStrategy
@Nullable private Function<MessageContext,HttpClientSecurityContext> existingParametersContextLookupStrategyStrategy used to look up an existingHttpClientSecurityContextto copy. -
configurationLookupStrategy
@NonnullAfterInit private Function<MessageContext,List<HttpClientSecurityConfiguration>> configurationLookupStrategyStrategy used to look up a per-requestHttpClientSecurityConfigurationlist. -
resolver
Resolver for parameters to store into context. -
clientTLSPredicate
Predicate which determines whether clientTLS credentials should be included in the resolved parameters.
-
-
Constructor Details
-
PopulateHttpClientSecurityParametersHandler
public PopulateHttpClientSecurityParametersHandler()Constructor.
-
-
Method Details
-
setClientTLSPredicate
Set the predicate which determines whether clientTLS credentials should be included in the resolved parameters.- Parameters:
predicate- clientTLS predicate
-
setSecurityParametersContextLookupStrategy
public void setSecurityParametersContextLookupStrategy(@Nonnull Function<MessageContext, HttpClientSecurityContext> strategy) Set the strategy used to look up theHttpClientSecurityContextto set the parameters for.- Parameters:
strategy- lookup strategy
-
setExistingParametersContextLookupStrategy
public void setExistingParametersContextLookupStrategy(@Nullable Function<MessageContext, HttpClientSecurityContext> strategy) Set the strategy used to look up an existingHttpClientSecurityContextto copy instead of actually resolving the parameters to set.- Parameters:
strategy- lookup strategy
-
setConfigurationLookupStrategy
public void setConfigurationLookupStrategy(@Nonnull Function<MessageContext, List<HttpClientSecurityConfiguration>> strategy) Set the strategy used to look up a per-requestHttpClientSecurityConfigurationlist.- Parameters:
strategy- lookup strategy
-
setHttpClientSecurityParametersResolver
public void setHttpClientSecurityParametersResolver(@Nonnull HttpClientSecurityParametersResolver newResolver) Set the resolver to use for the parameters to store into the context.- Parameters:
newResolver- resolver to use
-
doInitialize
- Overrides:
doInitializein classAbstractInitializableComponent- Throws:
ComponentInitializationException
-
doPreInvoke
protected boolean doPreInvoke(@Nonnull MessageContext messageContext) throws MessageHandlerException - Overrides:
doPreInvokein classAbstractMessageHandler- Throws:
MessageHandlerException
-
doInvoke
- Specified by:
doInvokein classAbstractMessageHandler- Throws:
MessageHandlerException
-
postProcessParams
protected void postProcessParams(@Nonnull MessageContext messageContext, @Nullable HttpClientSecurityParameters params) Post-process the resolved parameters.- Parameters:
messageContext- the current message contextparams- the parameters to process
-