[cpp-opensaml COMMIT] in /branches/REL_2/saml/saml2/metadata: AbstractMetadataProvider.h DynamicMetadataProvider.h Me...

noreply at shibboleth.net noreply at shibboleth.net
Wed Sep 21 18:11:10 BST 2011


Author: scantor
Date: Wed Sep 21 18:11:10 2011
New Revision: 673

URL: http://svn.shibboleth.net/view/cpp-opensaml?rev=673&view=rev
Log:
Add provider Id, track last update, report in status method.

Modified:
    branches/REL_2/saml/saml2/metadata/AbstractMetadataProvider.h
    branches/REL_2/saml/saml2/metadata/DynamicMetadataProvider.h
    branches/REL_2/saml/saml2/metadata/MetadataProvider.h
    branches/REL_2/saml/saml2/metadata/impl/AbstractMetadataProvider.cpp
    branches/REL_2/saml/saml2/metadata/impl/DynamicMetadataProvider.cpp
    branches/REL_2/saml/saml2/metadata/impl/MetadataProvider.cpp
    branches/REL_2/saml/saml2/metadata/impl/XMLMetadataProvider.cpp

Modified: branches/REL_2/saml/saml2/metadata/AbstractMetadataProvider.h
URL: http://svn.shibboleth.net/view/cpp-opensaml/branches/REL_2/saml/saml2/metadata/AbstractMetadataProvider.h?rev=673&r1=672&r2=673&view=diff
==============================================================================
--- branches/REL_2/saml/saml2/metadata/AbstractMetadataProvider.h (original)
+++ branches/REL_2/saml/saml2/metadata/AbstractMetadataProvider.h Wed Sep 21 18:11:10 2011
@@ -81,6 +81,7 @@
             using MetadataProvider::getEntityDescriptor;
             using MetadataProvider::getEntitiesDescriptor;
 
+            void outputStatus(std::ostream& os) const;
             void emitChangeEvent() const;
             std::pair<const EntityDescriptor*,const RoleDescriptor*> getEntityDescriptor(const Criteria& criteria) const;
             const EntitiesDescriptor* getEntitiesDescriptor(const char* name, bool requireValidMetadata=true) const;
@@ -90,6 +91,9 @@
                 ) const;
 
         protected:
+            /** Time of last update for reporting. */
+            mutable time_t m_lastUpdate;
+
             /** Embedded KeyInfoResolver instance. */
             xmltooling::KeyInfoResolver* m_resolver;
 

Modified: branches/REL_2/saml/saml2/metadata/DynamicMetadataProvider.h
URL: http://svn.shibboleth.net/view/cpp-opensaml/branches/REL_2/saml/saml2/metadata/DynamicMetadataProvider.h?rev=673&r1=672&r2=673&view=diff
==============================================================================
--- branches/REL_2/saml/saml2/metadata/DynamicMetadataProvider.h (original)
+++ branches/REL_2/saml/saml2/metadata/DynamicMetadataProvider.h Wed Sep 21 18:11:10 2011
@@ -54,6 +54,7 @@
             void init();
             xmltooling::Lockable* lock();
             void unlock();
+            const char* getId() const;
             const xmltooling::XMLObject* getMetadata() const;
             std::pair<const EntityDescriptor*,const RoleDescriptor*> getEntityDescriptor(const Criteria& criteria) const;
 
@@ -70,6 +71,7 @@
             virtual EntityDescriptor* resolve(const Criteria& criteria) const;
 
         private:
+            std::string m_id;
             mutable xmltooling::RWLock* m_lock;
             double m_refreshDelayFactor;
             time_t m_minCacheDuration, m_maxCacheDuration;

Modified: branches/REL_2/saml/saml2/metadata/MetadataProvider.h
URL: http://svn.shibboleth.net/view/cpp-opensaml/branches/REL_2/saml/saml2/metadata/MetadataProvider.h?rev=673&r1=672&r2=673&view=diff
==============================================================================
--- branches/REL_2/saml/saml2/metadata/MetadataProvider.h (original)
+++ branches/REL_2/saml/saml2/metadata/MetadataProvider.h Wed Sep 21 18:11:10 2011
@@ -95,6 +95,13 @@
              * Destructor will delete any installed filters.
              */
             virtual ~MetadataProvider();
+
+            /**
+             * Returns an identifier for the provider for logging/status purposes.
+             *
+             * @return an identifier, or null
+             */
+            virtual const char* getId() const;
 
             /**
              * Adds a metadata filter to apply to any resolved metadata. Will not be applied

Modified: branches/REL_2/saml/saml2/metadata/impl/AbstractMetadataProvider.cpp
URL: http://svn.shibboleth.net/view/cpp-opensaml/branches/REL_2/saml/saml2/metadata/impl/AbstractMetadataProvider.cpp?rev=673&r1=672&r2=673&view=diff
==============================================================================
--- branches/REL_2/saml/saml2/metadata/impl/AbstractMetadataProvider.cpp (original)
+++ branches/REL_2/saml/saml2/metadata/impl/AbstractMetadataProvider.cpp Wed Sep 21 18:11:10 2011
@@ -37,6 +37,7 @@
 #include <xmltooling/security/Credential.h>
 #include <xmltooling/security/KeyInfoResolver.h>
 #include <xmltooling/security/SecurityHelper.h>
+#include <xmltooling/util/DateTime.h>
 #include <xmltooling/util/Threads.h>
 #include <xmltooling/util/XMLHelper.h>
 
@@ -50,7 +51,7 @@
 static const XMLCh type[] =             UNICODE_LITERAL_4(t,y,p,e);
 
 AbstractMetadataProvider::AbstractMetadataProvider(const DOMElement* e)
-    : ObservableMetadataProvider(e), m_resolver(nullptr), m_credentialLock(nullptr)
+    : ObservableMetadataProvider(e), m_lastUpdate(0),  m_resolver(nullptr), m_credentialLock(nullptr)
 {
     e = XMLHelper::getFirstChildElement(e, _KeyInfoResolver);
     if (e) {

[... 112 lines stripped ...]


More information about the commits mailing list