[cpp-opensaml COMMIT] in /branches/REL_2/saml/saml2/metadata/impl: EntityAttributesMetadataFilter.cpp WhitelistMetada...

noreply at shibboleth.net noreply at shibboleth.net
Thu Feb 23 22:44:21 GMT 2012


Author: scantor
Date: Thu Feb 23 22:44:21 2012
New Revision: 710

URL: http://svn.shibboleth.net/view/cpp-opensaml?rev=710&view=rev
Log:
Switch to pointer parameters to fix boost bug.

Modified:
    branches/REL_2/saml/saml2/metadata/impl/EntityAttributesMetadataFilter.cpp
    branches/REL_2/saml/saml2/metadata/impl/WhitelistMetadataFilter.cpp

Modified: branches/REL_2/saml/saml2/metadata/impl/EntityAttributesMetadataFilter.cpp
URL: http://svn.shibboleth.net/view/cpp-opensaml/branches/REL_2/saml/saml2/metadata/impl/EntityAttributesMetadataFilter.cpp?rev=710&r1=709&r2=710&view=diff
==============================================================================
--- branches/REL_2/saml/saml2/metadata/impl/EntityAttributesMetadataFilter.cpp (original)
+++ branches/REL_2/saml/saml2/metadata/impl/EntityAttributesMetadataFilter.cpp Thu Feb 23 22:44:21 2012
@@ -56,8 +56,8 @@
             void doFilter(XMLObject& xmlObject) const;
 
         private:
-            void filterEntity(EntityDescriptor& entity) const;
-            void filterGroup(EntitiesDescriptor& entities) const;
+            void filterEntity(EntityDescriptor* entity) const;
+            void filterGroup(EntitiesDescriptor* entities) const;
 
             vector< boost::shared_ptr<Attribute> > m_attributes;
             typedef multimap<xstring,const Attribute*> applymap_t;
@@ -101,12 +101,12 @@
 {
     EntitiesDescriptor* group = dynamic_cast<EntitiesDescriptor*>(&xmlObject);
     if (group) {
-        filterGroup(*group);
+        filterGroup(group);
     }
     else {
         EntityDescriptor* entity = dynamic_cast<EntityDescriptor*>(&xmlObject);
         if (entity) {
-            filterEntity(*entity);
+            filterEntity(entity);
         }
         else {
             throw MetadataFilterException(ENTITYATTR_METADATA_FILTER" MetadataFilter was given an improper metadata instance to filter.");
@@ -114,30 +114,24 @@
     }
 }
 
-void EntityAttributesMetadataFilter::filterGroup(EntitiesDescriptor& entities) const
+void EntityAttributesMetadataFilter::filterGroup(EntitiesDescriptor* entities) const
 {
-    const vector<EntityDescriptor*>& v = const_cast<const EntitiesDescriptor&>(entities).getEntityDescriptors();
-    for_each(
-        make_indirect_iterator(v.begin()), make_indirect_iterator(v.end()),
-        lambda::bind(&EntityAttributesMetadataFilter::filterEntity, this, _1)
-        );
+    const vector<EntityDescriptor*>& v = const_cast<const EntitiesDescriptor*>(entities)->getEntityDescriptors();
+    for_each(v.begin(), v.end(), lambda::bind(&EntityAttributesMetadataFilter::filterEntity, this, _1));
 
-    const vector<EntitiesDescriptor*>& v2 = const_cast<const EntitiesDescriptor&>(entities).getEntitiesDescriptors();
-    for_each(
-        make_indirect_iterator(v2.begin()), make_indirect_iterator(v2.end()),
-        lambda::bind(&EntityAttributesMetadataFilter::filterGroup, this, _1)
-        );
+    const vector<EntitiesDescriptor*>& v2 = const_cast<const EntitiesDescriptor*>(entities)->getEntitiesDescriptors();
+    for_each(v2.begin(), v2.end(), lambda::bind(&EntityAttributesMetadataFilter::filterGroup, this, _1));
 }
 
-void EntityAttributesMetadataFilter::filterEntity(EntityDescriptor& entity) const
+void EntityAttributesMetadataFilter::filterEntity(EntityDescriptor* entity) const
 {
-    if (entity.getEntityID()) {
-        pair<applymap_t::const_iterator,applymap_t::const_iterator> tags = m_applyMap.equal_range(entity.getEntityID());
+    if (entity->getEntityID()) {
+        pair<applymap_t::const_iterator,applymap_t::const_iterator> tags = m_applyMap.equal_range(entity->getEntityID());
         if (tags.first != tags.second) {
-            Extensions* exts = entity.getExtensions();
+            Extensions* exts = entity->getExtensions();
             if (!exts) {
-                entity.setExtensions(ExtensionsBuilder::buildExtensions());
-                exts = entity.getExtensions();
+                entity->setExtensions(ExtensionsBuilder::buildExtensions());
+                exts = entity->getExtensions();
             }
             EntityAttributes* wrapper = nullptr;
             const vector<XMLObject*>& children = const_cast<const Extensions*>(exts)->getUnknownXMLObjects();

Modified: branches/REL_2/saml/saml2/metadata/impl/WhitelistMetadataFilter.cpp
URL: http://svn.shibboleth.net/view/cpp-opensaml/branches/REL_2/saml/saml2/metadata/impl/WhitelistMetadataFilter.cpp?rev=710&r1=709&r2=710&view=diff
==============================================================================
--- branches/REL_2/saml/saml2/metadata/impl/WhitelistMetadataFilter.cpp (original)
+++ branches/REL_2/saml/saml2/metadata/impl/WhitelistMetadataFilter.cpp Thu Feb 23 22:44:21 2012
@@ -55,7 +55,7 @@
             void doFilter(XMLObject& xmlObject) const;
 
         private:
-            void filterGroup(EntitiesDescriptor&) const;
+            void filterGroup(EntitiesDescriptor*) const;
             bool included(const EntityDescriptor&) const;
             bool matches(const EntityAttributes*, const Attribute*) const;
 
@@ -95,7 +95,7 @@
 {

[... 36 lines stripped ...]


More information about the commits mailing list