virtual ~MessageEncoder() {}\r
\r
/**\r
- * Interface to caller-supplied URL-encoding mechanism.\r
- * \r
- * Since URL-encoding is not canonical, it's important that the same\r
- * encoder is used during some binding-specific signature operations.\r
- */\r
- class SAML_API URLEncoder {\r
- MAKE_NONCOPYABLE(URLEncoder);\r
- protected:\r
- URLEncoder() {}\r
- public:\r
- virtual ~URLEncoder() {}\r
- \r
- /**\r
- * Produce a URL-safe but equivalent version of the input string.\r
- * \r
- * @param s input string to encode\r
- * @return a string object containing the result of encoding the input\r
- */\r
- virtual std::string encode(const char* s) const=0;\r
- };\r
- \r
- /**\r
- * Provides a URLEncoder implementation for the MessageEncoder to use.\r
- * The implementation's lifetime must be longer than the lifetime of this object.\r
- * This method must be externally synchronized. \r
- * \r
- * @param urlEncoder a URLEncoder implementation to use\r
- */\r
- void setURLEncoder(const URLEncoder* urlEncoder) {\r
- m_urlEncoder = urlEncoder;\r
- }\r
-\r
- /**\r
* Interface to caller-supplied artifact generation mechanism.\r
* \r
* Generating an artifact for storage and retrieval requires knowledge of\r
) const=0;\r
\r
protected:\r
- MessageEncoder() : m_urlEncoder(NULL), m_artifactGenerator(NULL) {}\r
+ MessageEncoder() : m_artifactGenerator(NULL) {}\r
\r
/**\r
* Helper function to build a new XML Signature with KeyInfo, based\r
const XMLCh* sigAlgorithm=NULL\r
) const;\r
\r
- /** Pointer to a URLEncoder implementation. */\r
- const URLEncoder* m_urlEncoder;\r
- \r
/** Pointer to an ArtifactGenerator implementation. */\r
const ArtifactGenerator* m_artifactGenerator;\r
};\r