+ public:
+ SAML2ArtifactEncoder(const DOMElement* e, const XMLCh* ns);
+ virtual ~SAML2ArtifactEncoder() {}
+
+ long encode(
+ GenericResponse& genericResponse,
+ XMLObject* xmlObject,
+ const char* destination,
+ const EntityDescriptor* recipient=NULL,
+ const char* relayState=NULL,
+ const ArtifactGenerator* artifactGenerator=NULL,
+ const Credential* credential=NULL,
+ const XMLCh* signatureAlg=NULL,
+ const XMLCh* digestAlg=NULL
+ ) const;
+
+ private:
+ bool m_post;
+ string m_template;
+ };
+
+ MessageEncoder* SAML_DLLLOCAL SAML2ArtifactEncoderFactory(const pair<const DOMElement*,const XMLCh*>& p)
+ {
+ return new SAML2ArtifactEncoder(p.first, p.second);