Package org.opensaml.saml.saml2.binding.decoding.impl

# Class HTTPPostSimpleSignDecoder

java.lang.Object
net.shibboleth.shared.component.AbstractInitializableComponent
org.opensaml.messaging.decoder.AbstractMessageDecoder
org.opensaml.messaging.decoder.servlet.AbstractHttpServletRequestMessageDecoder
org.opensaml.messaging.decoder.servlet.BaseHttpServletRequestXMLMessageDecoder
org.opensaml.saml.common.binding.impl.BaseSAMLHttpServletRequestDecoder
org.opensaml.saml.saml2.binding.decoding.impl.HTTPPostDecoder
org.opensaml.saml.saml2.binding.decoding.impl.HTTPPostSimpleSignDecoder

All Implemented Interfaces:
  `Component`, `DestructableComponent`, `InitializableComponent`, `UnmodifiableComponent`, `MessageDecoder`, `HttpServletRequestMessageDecoder`, `SAMLMessageDecoder`

public class HTTPPostSimpleSignDecoder extends HTTPPostDecoder
Message decoder implementing the SAML 2.0 HTTP POST-SimpleSign binding.

## Field Summary

Fields
Modifier and Type
Field
Description
`private org.slf4j.Logger`
`log`
Logger.

### Fields inherited from class org.opensaml.messaging.decoder.AbstractMessageDecoder

`BASE_PROTOCOL_MESSAGE_LOGGER_CATEGORY`

## Constructor Summary

Constructors
Constructor
Description
`HTTPPostSimpleSignDecoder()`

## Method Summary

Modifier and Type
Method
Description
`protected void`
`doDecode()`
Performs the decoding logic.
`protected void`
`evaluateMessageSizeLimit()`
Enforce the configured message size limit, if enabled.
`String`
`getBindingURI()`
Gets the SAML binding URI supported by this decoder.
`protected byte[]`
`getSignedContent()`
Get the signed content data.
`protected void`
`populateBindingContext(MessageContext messageContext)`
Populate the context which carries information specific to this binding.

### Methods inherited from class org.opensaml.saml.saml2.binding.decoding.impl.HTTPPostDecoder

`getBase64DecodedMessage, getBindingDescriptor, getMessageSize, setBindingDescriptor`

### Methods inherited from class org.opensaml.saml.common.binding.impl.BaseSAMLHttpServletRequestDecoder

`getMessageSizeLimit, getMessageType, isEnforceMessageSizeLimit, validateAndGetMessageSize, validateHttpRequest`

### Methods inherited from class org.opensaml.messaging.decoder.servlet.BaseHttpServletRequestXMLMessageDecoder

`decode, doInitialize, getParserPool, serializeMessageForLogging, setParserPool, unmarshallMessage`

### Methods inherited from class org.opensaml.messaging.decoder.servlet.AbstractHttpServletRequestMessageDecoder

`getHttpServletRequest, getHttpServletRequestSupplier, isCheckDuringInit, setCheckDuringInit, setHttpServletRequestSupplier`

### Methods inherited from class org.opensaml.messaging.decoder.AbstractMessageDecoder

`getMessageContext, getMessageToLog, getProtocolMessageLogger, getProtocolMessageLoggerSubCategory, logDecodedMessage, setMessageContext, setProtocolMessageLoggerSubCategory`

### Methods inherited from class net.shibboleth.shared.component.AbstractInitializableComponent

`checkComponentActive, checkSetterPreconditions, destroy, doDestroy, ifDestroyedThrowDestroyedComponentException, ifInitializedThrowUnmodifiabledComponentException, ifNotInitializedThrowUninitializedComponentException, 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.shared.component.DestructableComponent

`destroy, isDestroyed`

### Methods inherited from interface net.shibboleth.shared.component.InitializableComponent

`initialize, isInitialized`

### Methods inherited from interface org.opensaml.messaging.decoder.MessageDecoder

`decode, getMessageContext`

## Field Details

### log

@Nonnull private org.slf4j.Logger log
Logger.

## Constructor Details

### HTTPPostSimpleSignDecoder

public HTTPPostSimpleSignDecoder()

## Method Details

### getBindingURI

@Nonnull @NotEmpty public String getBindingURI()
Gets the SAML binding URI supported by this decoder.

Specified by:
  `getBindingURI` in interface `SAMLMessageDecoder`
Overrides:
  `getBindingURI` in class `HTTPPostDecoder`
Returns:
  SAML binding URI supported by this decoder

### populateBindingContext

protected void populateBindingContext(@Nonnull MessageContext messageContext)
Populate the context which carries information specific to this binding.

Overrides:
  `populateBindingContext` in class `HTTPPostDecoder`
Parameters:
  `messageContext` - the current message context

### doDecode

protected void doDecode() throws MessageDecodingException
Performs the decoding logic. By the time this is called, this decoder has already been initialized and checked to ensure that it has not been destroyed.

Overrides:
  `doDecode` in class `HTTPPostDecoder`
Throws:
  `MessageDecodingException` - thrown if there is a problem decoding the message

### getSignedContent

@Nullable protected byte[] getSignedContent() throws MessageDecodingException
Get the signed content data.

Returns:
  the signed content
Throws:
  `MessageDecodingException` - if there is a fatal issue building the signed content

### evaluateMessageSizeLimit

protected void evaluateMessageSizeLimit() throws MessageDecodingException
Enforce the configured message size limit, if enabled.

Overrides:
  `evaluateMessageSizeLimit` in class `BaseSAMLHttpServletRequestDecoder`
Throws:
  `MessageDecodingException` - if message size exceeds the enabled and configured limit, or if evaluation encounters a fatal error