Package org.pac4j.saml.transport
Class Pac4jHTTPArtifactDecoder
- java.lang.Object
-
- net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
-
- org.opensaml.messaging.decoder.AbstractMessageDecoder
-
- org.pac4j.saml.transport.Pac4jHTTPArtifactDecoder
-
- All Implemented Interfaces:
net.shibboleth.utilities.java.support.component.Component,net.shibboleth.utilities.java.support.component.DestructableComponent,net.shibboleth.utilities.java.support.component.InitializableComponent,net.shibboleth.utilities.java.support.component.UnmodifiableComponent,org.opensaml.messaging.decoder.MessageDecoder,org.opensaml.saml.common.binding.decoding.SAMLMessageDecoder
public class Pac4jHTTPArtifactDecoder extends org.opensaml.messaging.decoder.AbstractMessageDecoder implements org.opensaml.saml.common.binding.decoding.SAMLMessageDecoderDecoder for the artifact binding: it's like the originalHTTPArtifactDecoderbut using a web context instead of the JEE HTTP servlet request.- Since:
- 3.8.0
- Author:
- Jerome LELEU
-
-
Constructor Summary
Constructors Constructor Description Pac4jHTTPArtifactDecoder()Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddecode()protected voiddoDecode()protected voiddoDestroy()protected voiddoInitialize()org.opensaml.saml.saml2.binding.artifact.SAML2ArtifactBuilderFactorygetArtifactBuilderFactory()Get the SAML 2 artifact builder factory.org.opensaml.saml.common.binding.EndpointResolver<org.opensaml.saml.saml2.metadata.ArtifactResolutionService>getArtifactEndpointResolver()Get the artifact endpoint resolver.org.opensaml.saml.common.binding.BindingDescriptorgetBindingDescriptor()Get an optionalBindingDescriptorto inject intoSAMLBindingContextcreated.java.lang.StringgetBindingURI()net.shibboleth.utilities.java.support.security.IdentifierGenerationStrategygetIdentifierGenerationStrategy()Get the identifier generation strategy.net.shibboleth.utilities.java.support.xml.ParserPoolgetParserPool()Gets the parser pool used to deserialize incoming messages.javax.xml.namespace.QNamegetPeerEntityRole()Get the peer entity roleQName.org.opensaml.saml.metadata.resolver.RoleDescriptorResolvergetRoleDescriptorResolver()Get the role descriptor resolver.net.shibboleth.utilities.java.support.resolver.Resolver<java.lang.String,net.shibboleth.utilities.java.support.resolver.CriteriaSet>getSelfEntityIDResolver()Get the resolver for the self entityID.org.opensaml.soap.client.SOAPClientgetSOAPClient()Get the SOAP client instance.java.lang.StringgetSOAPClientSecurityConfigurationProfileId()Get the SOAP client security configuration profile ID to use.java.lang.StringgetSOAPPipelineName()Get the name of the specific SOAP client message pipeline to use, for example withPipelineFactoryHttpSOAPClient.protected voidpopulateBindingContext(org.opensaml.messaging.context.MessageContext messageContext)Populate the context which carries information specific to this binding.voidsetArtifactBuilderFactory(org.opensaml.saml.saml2.binding.artifact.SAML2ArtifactBuilderFactory factory)Set the SAML 2 artifact builder factory.voidsetArtifactEndpointResolver(org.opensaml.saml.common.binding.EndpointResolver<org.opensaml.saml.saml2.metadata.ArtifactResolutionService> resolver)Set the artifact endpoint resolver.voidsetBindingDescriptor(org.opensaml.saml.common.binding.BindingDescriptor descriptor)Set an optionalBindingDescriptorto inject intoSAMLBindingContextcreated.voidsetIdentifierGenerationStrategy(net.shibboleth.utilities.java.support.security.IdentifierGenerationStrategy strategy)Set the identifier generation strategy.voidsetParserPool(net.shibboleth.utilities.java.support.xml.ParserPool pool)Sets the parser pool used to deserialize incoming messages.voidsetPeerEntityRole(javax.xml.namespace.QName role)Set the peer entity roleQName.voidsetRoleDescriptorResolver(org.opensaml.saml.metadata.resolver.RoleDescriptorResolver resolver)Set the role descriptor resolver.voidsetSelfEntityIDResolver(net.shibboleth.utilities.java.support.resolver.Resolver<java.lang.String,net.shibboleth.utilities.java.support.resolver.CriteriaSet> resolver)Set the resolver for the self entityID.voidsetSOAPClient(org.opensaml.soap.client.SOAPClient client)Set the SOAP client instance.voidsetSOAPClientSecurityConfigurationProfileId(java.lang.String profileId)Set the SOAP client security configuration profile ID to use.voidsetSOAPPipelineName(java.lang.String name)Set the name of the specific SOAP client message pipeline to use, for example withPipelineFactoryHttpSOAPClient.voidsetWebContext(org.pac4j.core.context.WebContext webContext)-
Methods inherited from class org.opensaml.messaging.decoder.AbstractMessageDecoder
getMessageContext, setMessageContext
-
Methods inherited from class net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
destroy, 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.DestructableComponent
destroy, isDestroyed
-
-
-
-
Method Detail
-
decode
public void decode() throws org.opensaml.messaging.decoder.MessageDecodingException- Specified by:
decodein interfaceorg.opensaml.messaging.decoder.MessageDecoder- Overrides:
decodein classorg.opensaml.messaging.decoder.AbstractMessageDecoder- Throws:
org.opensaml.messaging.decoder.MessageDecodingException
-
doDestroy
protected void doDestroy()
- Overrides:
doDestroyin classorg.opensaml.messaging.decoder.AbstractMessageDecoder
-
doDecode
protected void doDecode() throws org.opensaml.messaging.decoder.MessageDecodingException- Specified by:
doDecodein classorg.opensaml.messaging.decoder.AbstractMessageDecoder- Throws:
org.opensaml.messaging.decoder.MessageDecodingException
-
getParserPool
@Nonnull public net.shibboleth.utilities.java.support.xml.ParserPool getParserPool()
Gets the parser pool used to deserialize incoming messages.- Returns:
- parser pool used to deserialize incoming messages
-
setParserPool
public void setParserPool(@Nonnull net.shibboleth.utilities.java.support.xml.ParserPool pool)Sets the parser pool used to deserialize incoming messages.- Parameters:
pool- parser pool used to deserialize incoming messages
-
doInitialize
protected void doInitialize() throws net.shibboleth.utilities.java.support.component.ComponentInitializationException- Overrides:
doInitializein classnet.shibboleth.utilities.java.support.component.AbstractInitializableComponent- Throws:
net.shibboleth.utilities.java.support.component.ComponentInitializationException
-
getIdentifierGenerationStrategy
@NonnullAfterInit public net.shibboleth.utilities.java.support.security.IdentifierGenerationStrategy getIdentifierGenerationStrategy()
Get the identifier generation strategy.- Returns:
- Returns the identifier generation strategy
-
setIdentifierGenerationStrategy
public void setIdentifierGenerationStrategy(@Nullable net.shibboleth.utilities.java.support.security.IdentifierGenerationStrategy strategy)Set the identifier generation strategy.- Parameters:
strategy- the identifier generation strategy
-
getSelfEntityIDResolver
@NonnullAfterInit public net.shibboleth.utilities.java.support.resolver.Resolver<java.lang.String,net.shibboleth.utilities.java.support.resolver.CriteriaSet> getSelfEntityIDResolver()
Get the resolver for the self entityID.- Returns:
- the resolver
-
setSelfEntityIDResolver
public void setSelfEntityIDResolver(@Nonnull net.shibboleth.utilities.java.support.resolver.Resolver<java.lang.String,net.shibboleth.utilities.java.support.resolver.CriteriaSet> resolver)Set the resolver for the self entityID.- Parameters:
resolver- the resolver instance
-
getPeerEntityRole
@NonnullAfterInit public javax.xml.namespace.QName getPeerEntityRole()
Get the peer entity roleQName.- Returns:
- the peer entity role
-
setPeerEntityRole
public void setPeerEntityRole(@Nonnull javax.xml.namespace.QName role)Set the peer entity roleQName.- Parameters:
role- the peer entity role
-
getArtifactEndpointResolver
@NonnullAfterInit public org.opensaml.saml.common.binding.EndpointResolver<org.opensaml.saml.saml2.metadata.ArtifactResolutionService> getArtifactEndpointResolver()
Get the artifact endpoint resolver.- Returns:
- the endpoint resolver
-
setArtifactEndpointResolver
public void setArtifactEndpointResolver(@Nullable org.opensaml.saml.common.binding.EndpointResolver<org.opensaml.saml.saml2.metadata.ArtifactResolutionService> resolver)Set the artifact endpoint resolver.- Parameters:
resolver- the new resolver
-
getRoleDescriptorResolver
@NonnullAfterInit public org.opensaml.saml.metadata.resolver.RoleDescriptorResolver getRoleDescriptorResolver()
Get the role descriptor resolver.Must be capable of resolving descriptors based on
ArtifactCriterion.- Returns:
- the role descriptor resolver
-
setRoleDescriptorResolver
public void setRoleDescriptorResolver(@Nullable org.opensaml.saml.metadata.resolver.RoleDescriptorResolver resolver)Set the role descriptor resolver.Must be capable of resolving descriptors based on
ArtifactCriterion.- Parameters:
resolver- the role descriptor resolver
-
getArtifactBuilderFactory
@NonnullAfterInit public org.opensaml.saml.saml2.binding.artifact.SAML2ArtifactBuilderFactory getArtifactBuilderFactory()
Get the SAML 2 artifact builder factory.- Returns:
- the artifact builder factory in use
-
setArtifactBuilderFactory
public void setArtifactBuilderFactory(@Nullable org.opensaml.saml.saml2.binding.artifact.SAML2ArtifactBuilderFactory factory)Set the SAML 2 artifact builder factory.- Parameters:
factory- the artifact builder factory
-
getSOAPClient
@NonnullAfterInit public org.opensaml.soap.client.SOAPClient getSOAPClient()
Get the SOAP client instance.- Returns:
- the SOAP client
-
setSOAPClient
public void setSOAPClient(@Nonnull org.opensaml.soap.client.SOAPClient client)Set the SOAP client instance.- Parameters:
client- the SOAP client
-
getSOAPPipelineName
@Nullable public java.lang.String getSOAPPipelineName()
Get the name of the specific SOAP client message pipeline to use, for example withPipelineFactoryHttpSOAPClient.- Returns:
- the pipeline name, or null
-
setSOAPPipelineName
public void setSOAPPipelineName(@Nullable java.lang.String name)Set the name of the specific SOAP client message pipeline to use, for example withPipelineFactoryHttpSOAPClient.- Parameters:
name- the pipeline name, or null
-
getSOAPClientSecurityConfigurationProfileId
@Nullable public java.lang.String getSOAPClientSecurityConfigurationProfileId()
Get the SOAP client security configuration profile ID to use.- Returns:
- the client security configuration profile ID, or null
-
setSOAPClientSecurityConfigurationProfileId
@Nonnull public void setSOAPClientSecurityConfigurationProfileId(@Nullable java.lang.String profileId)Set the SOAP client security configuration profile ID to use.- Parameters:
profileId- the profile ID, or null
-
getBindingURI
@Nonnull @NotEmpty public java.lang.String getBindingURI()
- Specified by:
getBindingURIin interfaceorg.opensaml.saml.common.binding.decoding.SAMLMessageDecoder
-
getBindingDescriptor
@Nullable public org.opensaml.saml.common.binding.BindingDescriptor getBindingDescriptor()
Get an optionalBindingDescriptorto inject intoSAMLBindingContextcreated.- Returns:
- binding descriptor
-
setBindingDescriptor
public void setBindingDescriptor(@Nullable org.opensaml.saml.common.binding.BindingDescriptor descriptor)Set an optionalBindingDescriptorto inject intoSAMLBindingContextcreated.- Parameters:
descriptor- a binding descriptor
-
populateBindingContext
protected void populateBindingContext(org.opensaml.messaging.context.MessageContext messageContext)
Populate the context which carries information specific to this binding.- Parameters:
messageContext- the current message context
-
setWebContext
public void setWebContext(@Nullable org.pac4j.core.context.WebContext webContext)
-
-