/*
- * Copyright 2001-2006 Internet2
+ * Copyright 2001-2007 Internet2
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
/**
* @file saml/saml2/binding/SAML2POSTEncoder.h
*
- * SAML 2.0 HTTP-POST binding message encoder
+ * SAML 2.0 HTTP-POST (and -SimpleSign) binding message encoder
*/
#include <saml/binding/MessageEncoder.h>
namespace saml2p {
/**
- * SAML 2.0 HTTP-POST binding message encoder
+ * SAML 2.0 HTTP-POST (and -SimpleSign) binding message encoder
*/
class SAML_API SAML2POSTEncoder : public MessageEncoder
{
public:
- SAML2POSTEncoder(const DOMElement* e);
- virtual ~SAML2POSTEncoder();
+ SAML2POSTEncoder(const DOMElement* e, bool simple=false);
+ virtual ~SAML2POSTEncoder() {}
- void encode(
- std::map<std::string,std::string>& outputFields,
+ long encode(
+ GenericResponse& genericResponse,
xmltooling::XMLObject* xmlObject,
+ const char* destination,
const char* recipientID=NULL,
const char* relayState=NULL,
const xmlsignature::CredentialResolver* credResolver=NULL,
const XMLCh* sigAlgorithm=NULL
) const;
- };
+
+ protected:
+ /** Pathname of HTML template for transmission of message via POST. */
+ std::string m_template;
+
+ /** Flag controls signing behavior (XML vs. "simple") */
+ bool m_simple;
+ };
};
};