Class HTTPPostDecoder

All Implemented Interfaces:
Component, DestructableComponent, InitializableComponent, UnmodifiableComponent, MessageDecoder, HttpServletRequestMessageDecoder, SAMLMessageDecoder
Direct Known Subclasses:

public class HTTPPostDecoder extends BaseHttpServletRequestXMLMessageDecoder implements SAMLMessageDecoder
Message decoder implementing the SAML 2.0 HTTP POST binding.
  • Field Details

  • Constructor Details

    • HTTPPostDecoder

      public HTTPPostDecoder()
  • Method Details

    • getBindingURI

      @Nonnull @NotEmpty public String getBindingURI()
      Gets the SAML binding URI supported by this decoder.
      Specified by:
      getBindingURI in interface SAMLMessageDecoder
      SAML binding URI supported by this decoder
    • getBindingDescriptor

      @Nullable public BindingDescriptor getBindingDescriptor()
      Get an optional BindingDescriptor to inject into SAMLBindingContext created.
      binding descriptor
    • setBindingDescriptor

      public void setBindingDescriptor(@Nullable BindingDescriptor descriptor)
      Set an optional BindingDescriptor to inject into SAMLBindingContext created.
      descriptor - a binding descriptor
    • 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.
      Specified by:
      doDecode in class AbstractMessageDecoder
      MessageDecodingException - thrown if there is a problem decoding the message
    • getBase64DecodedMessage

      protected InputStream getBase64DecodedMessage(javax.servlet.http.HttpServletRequest request) throws MessageDecodingException
      Gets the Base64 encoded message from the request and decodes it.
      request - the inbound HTTP servlet request
      decoded message
      MessageDecodingException - thrown if the message does not contain a base64 encoded SAML message, or the message can not be base64-decoded.
    • populateBindingContext

      protected void populateBindingContext(MessageContext messageContext)
      Populate the context which carries information specific to this binding.
      messageContext - the current message context