\r
#include <xmltooling/XMLObject.h>\r
#include <xmltooling/signature/SigningContext.h>\r
+#include <xmltooling/signature/VerifyingContext.h>\r
\r
namespace xmltooling {\r
\r
static const XMLCh LOCAL_NAME[];\r
\r
/**\r
- * Gets the canonicalization method for the ds:SignedInfo element.\r
- * \r
- * @return the canonicalization method\r
- */\r
- virtual const XMLCh* getCanonicalizationMethod() const=0;\r
- \r
- /**\r
- * Gets the signing algorithm for the signature.\r
- * \r
- * @return the signature algorithm\r
- */\r
- virtual const XMLCh* getSignatureAlgorithm() const=0;\r
-\r
- /**\r
- * Returns the ds:KeyInfo information attached to the signature.\r
- * The Signature object must be marshalled before this will return anything.\r
- * The caller MUST NOT mutate the information through the provided pointer.\r
- * \r
- * @return the ds:KeyInfo information\r
- */\r
- virtual DSIGKeyInfoList* getKeyInfo() const=0; \r
-\r
- /**\r
* Sets the canonicalization method for the ds:SignedInfo element\r
* \r
* @param c14n the canonicalization method\r
* @param ctx the signing context that determines the signature's content\r
* @throws SignatureException thrown if the signing operation fails\r
*/\r
- virtual void sign(const SigningContext* ctx)=0;\r
+ virtual void sign(const SigningContext& ctx)=0;\r
\r
+ /**\r
+ * Verifies an XML signature based on the supplied context.\r
+ * \r
+ * @param ctx the verifying context that validates the signature's content\r
+ * @throws SignatureException thrown if the verifying operation fails\r
+ */\r
+ virtual void verify(const VerifyingContext& ctx) const=0;\r
+\r
protected:\r
Signature() {}\r
};\r