opensaml-3.0.1

Classes | Public Member Functions | List of all members
opensaml::MessageEncoder Class Referenceabstract

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

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

## 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. More...
virtual bool | isUserAgentPresent () const
| Indicates whether a web browser or similar user agent will receive the message. More...
virtual const XMLCh * | getProtocolFamily () const
| Returns identifier for the protocol family associated with the encoder. More...
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. More...

## 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

## ◆ 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