Moved URLEncoder into separate header, made it a global service.
[shibboleth/cpp-opensaml.git] / saml / binding / MessageEncoder.h
index 81e39d2..2a5fc71 100644 (file)
@@ -48,39 +48,6 @@ namespace opensaml {
         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
@@ -162,7 +129,7 @@ namespace opensaml {
             ) 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
@@ -177,9 +144,6 @@ namespace opensaml {
             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