opensaml-2.5.0
opensaml::MessageEncoder Class Reference

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

#include <saml/binding/MessageEncoder.h>

List of all members.

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=nullptr, const char *relayState=nullptr, const ArtifactGenerator *artifactGenerator=nullptr, const xmltooling::Credential *credential=nullptr, const XMLCh *signatureAlg=nullptr, const XMLCh *digestAlg=nullptr) 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

virtual long opensaml::MessageEncoder::encode ( xmltooling::GenericResponse &  genericResponse,
xmltooling::XMLObject *  xmlObject,
const char *  destination,
const saml2md::EntityDescriptor *  recipient = nullptr,
const char *  relayState = nullptr,
const ArtifactGenerator artifactGenerator = nullptr,
const xmltooling::Credential *  credential = nullptr,
const XMLCh *  signatureAlg = nullptr,
const XMLCh *  digestAlg = nullptr 
) 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:
genericResponsereference to interface for sending transport response
xmlObjectXML message to encode
destinationdestination URL for message
recipientoptional message recipient
relayStateoptional RelayState value to accompany message
artifactGeneratoroptional interface for generation of artifacts
credentialoptional Credential to supply signing key
signatureAlgoptional signature algorithm identifier
digestAlgoptional reference digest algorithm identifier
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
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
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: