Add a reset method.
authorcantor <cantor@de75baf8-a10c-0410-a50a-987c0e22f00f>
Tue, 31 Aug 2010 20:40:43 +0000 (20:40 +0000)
committercantor <cantor@de75baf8-a10c-0410-a50a-987c0e22f00f>
Tue, 31 Aug 2010 20:40:43 +0000 (20:40 +0000)
git-svn-id: https://svn.middleware.georgetown.edu/cpp-xmltooling/branches/REL_1@779 de75baf8-a10c-0410-a50a-987c0e22f00f

xmltooling/security/CredentialCriteria.h
xmltooling/security/impl/CredentialCriteria.cpp

index f163985..131f9a6 100644 (file)
@@ -221,6 +221,11 @@ namespace xmltooling {
          */
         void setSignature(const xmlsignature::Signature& sig, int extraction=0);
 
+        /**
+         * Resets object to a default state.
+         */
+        virtual void reset();
+
     private:
         unsigned int m_keyUsage;
         unsigned int m_keySize,m_maxKeySize;
index b52e4d3..fb1dc19 100644 (file)
@@ -200,6 +200,17 @@ void CredentialCriteria::setSignature(const Signature& sig, int extraction)
         setNativeKeyInfo(dsig->getKeyInfoList(), extraction);
 }
 
+void CredentialCriteria::reset()
+{
+    setUsage(Credential::UNSPECIFIED_CREDENTIAL);
+    setKeySize(0);
+    setMaxKeySize(0);
+    setKeyAlgorithm(nullptr);
+    getKeyNames().clear();
+    setKeyInfo(nullptr);
+    setNativeKeyInfo(nullptr);
+}
+
 bool CredentialCriteria::matches(const Credential& credential) const
 {
     Category& log = Category::getInstance(XMLTOOLING_LOGCAT".CredentialCriteria");