/**
* Compute and append the signature based on the assigned
* ContentReference, KeyInfo, and signing key.
+ *
+ * @param credential optional source of signing key and KeyInfo
*/
- virtual void sign()=0;
+ virtual void sign(const xmltooling::Credential* credential=NULL)=0;
/**
* Type-safe clone operation.
class XMLTOOL_API SignatureBuilder : public xmltooling::XMLObjectBuilder
{
public:
+#ifdef HAVE_COVARIANT_RETURNS
virtual Signature* buildObject(
+#else
+ virtual xmltooling::XMLObject* buildObject(
+#endif
const XMLCh* nsURI, const XMLCh* localName, const XMLCh* prefix=NULL, const xmltooling::QName* schemaType=NULL
) const;