Class PopulateSignatureSigningParametersHandler
- java.lang.Object
-
- net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
-
- org.opensaml.messaging.handler.AbstractMessageHandler
-
- org.opensaml.saml.common.binding.impl.PopulateSignatureSigningParametersHandler
-
- All Implemented Interfaces:
Component,DestructableComponent,InitializableComponent,MessageHandler
public class PopulateSignatureSigningParametersHandler extends AbstractMessageHandler
Handler that resolves and populatesSignatureSigningParameterson aSecurityParametersContextcreated/accessed via a lookup function, by default as an immediate child context of the targetMessageContext.
-
-
Field Summary
Fields Modifier and Type Field Description private Function<MessageContext,List<SignatureSigningConfiguration>>configurationLookupStrategyStrategy used to look up a per-requestSignatureSigningConfigurationlist.private Function<MessageContext,SecurityParametersContext>existingParametersContextLookupStrategyStrategy used to look up an existingSecurityParametersContextto copy.private org.slf4j.LoggerlogClass logger.private Function<MessageContext,SAMLMetadataContext>metadataContextLookupStrategyStrategy used to look up a SAML metadata context.private booleannoResultIsErrorWhether failure to resolve parameters should be raised as an error.private SignatureSigningParametersResolverresolverResolver for parameters to store into context.private Function<MessageContext,SecurityParametersContext>securityParametersContextLookupStrategyStrategy used to look up theSecurityParametersContextto set the parameters for.
-
Constructor Summary
Constructors Constructor Description PopulateSignatureSigningParametersHandler()Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voiddoInitialize()protected voiddoInvoke(MessageContext messageContext)Performs the handler logic.protected booleandoPreInvoke(MessageContext messageContext)Called prior to execution, handlers may override this method to perform pre-processing for a request.voidsetConfigurationLookupStrategy(Function<MessageContext,List<SignatureSigningConfiguration>> strategy)Set the strategy used to look up a per-requestSignatureSigningConfigurationlist.voidsetExistingParametersContextLookupStrategy(Function<MessageContext,SecurityParametersContext> strategy)Set the strategy used to look up an existingSecurityParametersContextto copy instead of actually resolving the parameters to set.voidsetMetadataContextLookupStrategy(Function<MessageContext,SAMLMetadataContext> strategy)Set lookup strategy forSAMLMetadataContextfor input to resolution.voidsetNoResultIsError(boolean flag)Set whether a failure to resolve any parameters should be raised as an exception.voidsetSecurityParametersContextLookupStrategy(Function<MessageContext,SecurityParametersContext> strategy)Set the strategy used to look up theSecurityParametersContextto set the parameters for.voidsetSignatureSigningParametersResolver(SignatureSigningParametersResolver newResolver)Set the resolver to use for the parameters to store into the context.-
Methods inherited from class org.opensaml.messaging.handler.AbstractMessageHandler
doPostInvoke, doPostInvoke, getActivationCondition, getLogPrefix, invoke, setActivationCondition
-
Methods inherited from class net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
destroy, doDestroy, initialize, isDestroyed, isInitialized
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.shibboleth.utilities.java.support.component.InitializableComponent
initialize, isInitialized
-
-
-
-
Field Detail
-
log
@Nonnull private final org.slf4j.Logger log
Class logger.
-
securityParametersContextLookupStrategy
@Nonnull private Function<MessageContext,SecurityParametersContext> securityParametersContextLookupStrategy
Strategy used to look up theSecurityParametersContextto set the parameters for.
-
existingParametersContextLookupStrategy
@Nullable private Function<MessageContext,SecurityParametersContext> existingParametersContextLookupStrategy
Strategy used to look up an existingSecurityParametersContextto copy.
-
configurationLookupStrategy
@NonnullAfterInit private Function<MessageContext,List<SignatureSigningConfiguration>> configurationLookupStrategy
Strategy used to look up a per-requestSignatureSigningConfigurationlist.
-
metadataContextLookupStrategy
@Nullable private Function<MessageContext,SAMLMetadataContext> metadataContextLookupStrategy
Strategy used to look up a SAML metadata context.
-
resolver
@NonnullAfterInit private SignatureSigningParametersResolver resolver
Resolver for parameters to store into context.
-
noResultIsError
private boolean noResultIsError
Whether failure to resolve parameters should be raised as an error.
-
-
Method Detail
-
setSecurityParametersContextLookupStrategy
public void setSecurityParametersContextLookupStrategy(@Nonnull Function<MessageContext,SecurityParametersContext> strategy)Set the strategy used to look up theSecurityParametersContextto set the parameters for.- Parameters:
strategy- lookup strategy
-
setExistingParametersContextLookupStrategy
public void setExistingParametersContextLookupStrategy(@Nullable Function<MessageContext,SecurityParametersContext> strategy)Set the strategy used to look up an existingSecurityParametersContextto copy instead of actually resolving the parameters to set.- Parameters:
strategy- lookup strategy
-
setMetadataContextLookupStrategy
public void setMetadataContextLookupStrategy(@Nullable Function<MessageContext,SAMLMetadataContext> strategy)Set lookup strategy forSAMLMetadataContextfor input to resolution.- Parameters:
strategy- lookup strategy
-
setConfigurationLookupStrategy
public void setConfigurationLookupStrategy(@Nonnull Function<MessageContext,List<SignatureSigningConfiguration>> strategy)Set the strategy used to look up a per-requestSignatureSigningConfigurationlist.- Parameters:
strategy- lookup strategy
-
setSignatureSigningParametersResolver
public void setSignatureSigningParametersResolver(@Nonnull SignatureSigningParametersResolver newResolver)Set the resolver to use for the parameters to store into the context.- Parameters:
newResolver- resolver to use
-
setNoResultIsError
public void setNoResultIsError(boolean flag)
Set whether a failure to resolve any parameters should be raised as an exception.Defaults to false.
- Parameters:
flag- flag to set- Since:
- 3.4.0
-
doInitialize
protected void doInitialize() throws ComponentInitializationException- Overrides:
doInitializein classAbstractInitializableComponent- Throws:
ComponentInitializationException
-
doPreInvoke
protected boolean doPreInvoke(@Nonnull MessageContext messageContext) throws MessageHandlerExceptionCalled prior to execution, handlers may override this method to perform pre-processing for a request.The default impl applies the
Predicateset via theAbstractMessageHandler.setActivationCondition(Predicate).If false is returned, execution will not proceed.
Subclasses which override this method should generally invoke the super version of this method first, so that the activation condition will be applied up front, and immediately return false if the super version returns false. This avoids unnecessary execution of the remaining pre-invocation code if the handler ultimately will not execute.
- Overrides:
doPreInvokein classAbstractMessageHandler- Parameters:
messageContext- the message context on which to invoke the handler- Returns:
- true iff execution should proceed
- Throws:
MessageHandlerException- if there is a problem executing the handler pre-routine
-
doInvoke
protected void doInvoke(@Nonnull MessageContext messageContext) throws MessageHandlerExceptionPerforms the handler logic.- Specified by:
doInvokein classAbstractMessageHandler- Parameters:
messageContext- the message context on which to invoke the handler- Throws:
MessageHandlerException- if there is an error invoking the handler on the message context
-
-