+ class SAML_DLLLOCAL SAML2POSTEncoder : public MessageEncoder
+ {
+ public:
+ SAML2POSTEncoder(const DOMElement* e, const XMLCh* ns, bool simple=false);
+ virtual ~SAML2POSTEncoder() {}
+
+ const XMLCh* getProtocolFamily() const {
+ return samlconstants::SAML20P_NS;
+ }
+
+ long encode(
+ GenericResponse& genericResponse,
+ XMLObject* xmlObject,
+ const char* destination,
+ const EntityDescriptor* recipient=nullptr,
+ const char* relayState=nullptr,
+ const ArtifactGenerator* artifactGenerator=nullptr,
+ const Credential* credential=nullptr,
+ const XMLCh* signatureAlg=nullptr,
+ const XMLCh* digestAlg=nullptr
+ ) const;
+
+ private:
+ string m_template;
+ bool m_simple;
+ };
+
+ MessageEncoder* SAML_DLLLOCAL SAML2POSTEncoderFactory(const pair<const DOMElement*,const XMLCh*>& p)