Class SAMLAddAttributeConsumingServiceHandler
- java.lang.Object
-
- net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
-
- org.opensaml.messaging.handler.AbstractMessageHandler
-
- org.opensaml.saml.common.binding.impl.SAMLAddAttributeConsumingServiceHandler
-
- All Implemented Interfaces:
Component,DestructableComponent,InitializableComponent,MessageHandler
public class SAMLAddAttributeConsumingServiceHandler extends AbstractMessageHandler
SAMLMessageHandlerthat attaches anAttributeConsumingServiceContextto theSAMLMetadataContextbased on the content of anAuthnRequestin the message context.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private classSAMLAddAttributeConsumingServiceHandler.AuthnRequestLookupDefault lookup function that find a SAML 2AuthnRequest.
-
Field Summary
Fields Modifier and Type Field Description private Function<MessageContext,AuthnRequest>authnRequestLookupStrategyLookup strategy for anAuthnRequestindex.private IntegerindexAttributeConsumingServiceindex - if specified.private org.slf4j.LoggerlogLogger.private Function<MessageContext,SAMLMetadataContext>metadataContextLookupStrategyLookup strategy forSAMLMetadataContext.private List<RequestedAttribute>requestedAttributesRequestedAttributelist - if specified.
-
Constructor Summary
Constructors Constructor Description SAMLAddAttributeConsumingServiceHandler()Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private AttributeConsumingServiceattributeConsumingServiceFromRequestedAttributes()Generate anAttributeConsumingServicefrom theRequestedAttributes.protected voiddoInvoke(MessageContext messageContext)protected booleandoPreInvoke(MessageContext messageContext)private List<RequestedAttribute>getRequestedAttributes(AuthnRequest authn)Grab theRequestedAttribute(if any) from theAuthnRequest.voidsetIndexLookupStrategy(Function<MessageContext,AuthnRequest> strategy)Set the strategy to locate theAttributeConsumingServiceindex from theMessageContext.voidsetMetadataContextLookupStrategy(Function<MessageContext,SAMLMetadataContext> strategy)Set the strategy to locate theSAMLMetadataContextfrom theMessageContext.-
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, doInitialize, 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
Logger.
-
metadataContextLookupStrategy
@Nonnull private Function<MessageContext,SAMLMetadataContext> metadataContextLookupStrategy
Lookup strategy forSAMLMetadataContext.
-
authnRequestLookupStrategy
@Nonnull private Function<MessageContext,AuthnRequest> authnRequestLookupStrategy
Lookup strategy for anAuthnRequestindex.
-
index
@Nullable private Integer index
AttributeConsumingServiceindex - if specified.
-
requestedAttributes
@Nullable private List<RequestedAttribute> requestedAttributes
RequestedAttributelist - if specified.
-
-
Method Detail
-
setMetadataContextLookupStrategy
public void setMetadataContextLookupStrategy(@Nonnull Function<MessageContext,SAMLMetadataContext> strategy)Set the strategy to locate theSAMLMetadataContextfrom theMessageContext.- Parameters:
strategy- lookup strategy
-
setIndexLookupStrategy
public void setIndexLookupStrategy(@Nullable Function<MessageContext,AuthnRequest> strategy)Set the strategy to locate theAttributeConsumingServiceindex from theMessageContext.- Parameters:
strategy- lookup strategy
-
doPreInvoke
protected boolean doPreInvoke(@Nonnull MessageContext messageContext) throws MessageHandlerException- Overrides:
doPreInvokein classAbstractMessageHandler- Throws:
MessageHandlerException
-
doInvoke
protected void doInvoke(@Nonnull MessageContext messageContext) throws MessageHandlerException- Specified by:
doInvokein classAbstractMessageHandler- Throws:
MessageHandlerException
-
attributeConsumingServiceFromRequestedAttributes
private AttributeConsumingService attributeConsumingServiceFromRequestedAttributes() throws MessageHandlerException
Generate anAttributeConsumingServicefrom theRequestedAttributes.- Returns:
- a suitable AttributeConsumingService
- Throws:
MessageHandlerException- when the cloning failed
-
getRequestedAttributes
private List<RequestedAttribute> getRequestedAttributes(AuthnRequest authn)
Grab theRequestedAttribute(if any) from theAuthnRequest.- Parameters:
authn- the request to interrogate- Returns:
- null or the list.
-
-