opensaml::MessageEncoder Class Referenceabstract

Interface to SAML protocol binding message encoders. More...

`#include <saml/binding/MessageEncoder.h>`

Inheritance diagram for opensaml::MessageEncoder:
[legend]

## Classes

class | ArtifactGenerator
| Interface to caller-supplied artifact generation mechanism. More...

## Public Member Functions

virtual bool | isCompact () const
| Indicates whether the encoding format requires that messages be as compact as possible.
virtual bool | isUserAgentPresent () const
| Indicates whether a web browser or similar user agent will receive the message.
virtual const XMLCh * | getProtocolFamily () const
| Returns identifier for the protocol family associated with the encoder.
virtual long | encode (xmltooling::GenericResponse &genericResponse, xmltooling::XMLObject *xmlObject, const char *destination, const saml2md::EntityDescriptor *recipient=0, const char *relayState=0, const ArtifactGenerator *artifactGenerator=0, const xmltooling::Credential *credential=0, const XMLCh *signatureAlg=0, const XMLCh *digestAlg=0) const =0
| Encodes an XML object/message into a binding- and transport-specific response.

## Detailed Description

Interface to SAML protocol binding message encoders.

## Member Function Documentation

## encode()

virtual long opensaml::MessageEncoder::encode | ( | xmltooling::GenericResponse & | genericResponse,
|  | xmltooling::XMLObject * | xmlObject,
|  | const char * | destination,
|  | const saml2md::EntityDescriptor * | recipient = 0,
|  | const char * | relayState = 0,
|  | const ArtifactGenerator * | artifactGenerator = 0,
|  | const xmltooling::Credential * | credential = 0,
|  | const XMLCh * | signatureAlg = 0,
|  | const XMLCh * | digestAlg = 0 ) const

pure virtual

Encodes an XML object/message into a binding- and transport-specific response.

The XML content cannot have a parent object, and any existing references to the content will be invalidated if the encode method returns successfully.

If a CredentialResolver is supplied, the message is also signed in a binding-specific manner. The CredentialResolver MUST be locked by the caller.

Artifact-based bindings require an ArtifactGenerator be set to produce an artifact suitable for the intended recipient.

Parameters

  genericResponse | reference to interface for sending transport response
  xmlObject | XML message to encode
  destination | destination URL for message
  recipient | optional message recipient
  relayState | optional RelayState value to accompany message
  artifactGenerator | optional interface for generation of artifacts
  credential | optional Credential to supply signing key
  signatureAlg | optional signature algorithm identifier
  digestAlg | optional reference digest algorithm identifier

## getProtocolFamily()

virtual const XMLCh * opensaml::MessageEncoder::getProtocolFamily | ( |  | ) | const

virtual

Returns identifier for the protocol family associated with the encoder.

Returns
  a protocol family identifier, or nullptr

Reimplemented in opensaml::saml2p::SAML2MessageEncoder.

## isCompact()

virtual bool opensaml::MessageEncoder::isCompact | ( |  | ) | const

virtual

Indicates whether the encoding format requires that messages be as compact as possible.

Returns
  true iff the encoding has size constraints

## isUserAgentPresent()

virtual bool opensaml::MessageEncoder::isUserAgentPresent | ( |  | ) | const

virtual

Indicates whether a web browser or similar user agent will receive the message.

Returns
  true iff the message will be handled by a user agent

The documentation for this class was generated from the following file:

- saml/binding/MessageEncoder.h