- virtual std::pair<saml2::Issuer*,const saml2md::RoleDescriptor*> evaluate(
- const GenericRequest& request,
+ virtual const char* getType() const=0;
+
+ /**
+ * Evaluates the rule against the given request and message.
+ *
+ * <p>An exception will be raised if the message is invalid according to
+ * a policy rule.
+ *
+ * <p>The return value is used to indicate whether a message was ignored or
+ * successfully processed. A false value signals that the rule wasn't successful
+ * but was also not unsuccessful, because the rule was inapplicable to the message.
+ *
+ * @param message the incoming message
+ * @param request the protocol request
+ * @param policy SecurityPolicy to provide various components and track message data
+ * @return indicator as to whether a message was understood and processed
+ */
+ virtual bool evaluate(