Policy rule redesign for factor out issuer handling.
[shibboleth/cpp-opensaml.git] / saml / binding / SimpleSigningRule.h
index bceac07..ac82b33 100644 (file)
@@ -27,9 +27,6 @@ namespace opensaml {
     /**
      * Blob-oriented signature checking SecurityPolicyRule for
      * bindings that support non-XML signature techniques.
-     * 
-     * Subclasses can provide support for additional message types
-     * by overriding the issuer derivation method.
      */
     class SAML_API SimpleSigningRule : public SecurityPolicyRule
     {
@@ -37,27 +34,7 @@ namespace opensaml {
         SimpleSigningRule(const DOMElement* e) {}
         virtual ~SimpleSigningRule() {}
         
-        std::pair<saml2::Issuer*,const saml2md::RoleDescriptor*> evaluate(
-            const xmltooling::XMLObject& message,
-            const GenericRequest* request,
-            const saml2md::MetadataProvider* metadataProvider,
-            const xmltooling::QName* role,
-            const xmltooling::TrustEngine* trustEngine
-            ) const;
-    
-    protected:
-        /**
-         * Examines the message and/or its contents and extracts the issuer's claimed
-         * identity along with a protocol identifier. The two together can be used to
-         * locate metadata to use in validating the signature. Conventions may be needed
-         * to properly encode non-SAML2 issuer information into a compatible form. 
-         * 
-         * <p>The caller is responsible for freeing the Issuer object.
-         * 
-         * @param message       message to examine
-         * @return  a pair consisting of a SAML 2.0 Issuer object and a protocol constant.
-         */
-        virtual std::pair<saml2::Issuer*,const XMLCh*> getIssuerAndProtocol(const xmltooling::XMLObject& message) const;
+        void evaluate(const xmltooling::XMLObject& message, const GenericRequest* request, SecurityPolicy& policy) const;
     };
     
 };