X-Git-Url: http://www.project-moonshot.org/gitweb/?a=blobdiff_plain;f=saml%2Fsaml2%2Fmetadata%2Fimpl%2FWhitelistMetadataFilter.cpp;h=3b086ba29918385ddd8db09d517f08e17665db3f;hb=f950c36fe7da51066a401ae0275eb5439f311eb5;hp=5c38639f86bee172c9b05da7cf7e5b6ec814e6cc;hpb=250efd189a120ecde4a73bd080e5b9510db670d0;p=shibboleth%2Fopensaml2.git diff --git a/saml/saml2/metadata/impl/WhitelistMetadataFilter.cpp b/saml/saml2/metadata/impl/WhitelistMetadataFilter.cpp index 5c38639..3b086ba 100644 --- a/saml/saml2/metadata/impl/WhitelistMetadataFilter.cpp +++ b/saml/saml2/metadata/impl/WhitelistMetadataFilter.cpp @@ -55,7 +55,7 @@ namespace opensaml { 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 @@ void WhitelistMetadataFilter::doFilter(XMLObject& xmlObject) const { EntitiesDescriptor* group = dynamic_cast(&xmlObject); if (group) { - filterGroup(*group); + filterGroup(group); } else { EntityDescriptor* entity = dynamic_cast(&xmlObject); @@ -109,11 +109,11 @@ void WhitelistMetadataFilter::doFilter(XMLObject& xmlObject) const } } -void WhitelistMetadataFilter::filterGroup(EntitiesDescriptor& entities) const +void WhitelistMetadataFilter::filterGroup(EntitiesDescriptor* entities) const { Category& log=Category::getInstance(SAML_LOGCAT".MetadataFilter."WHITELIST_METADATA_FILTER); - VectorOf(EntityDescriptor) v = entities.getEntityDescriptors(); + VectorOf(EntityDescriptor) v = entities->getEntityDescriptors(); for (VectorOf(EntityDescriptor)::size_type i = 0; i < v.size(); ) { if (!included(*v[i])) { auto_ptr_char id(v[i]->getEntityID()); @@ -125,11 +125,8 @@ void WhitelistMetadataFilter::filterGroup(EntitiesDescriptor& entities) const } } - const vector& groups = const_cast(entities).getEntitiesDescriptors(); - for_each( - make_indirect_iterator(groups.begin()), make_indirect_iterator(groups.end()), - lambda::bind(&WhitelistMetadataFilter::filterGroup, this, _1) - ); + const vector& groups = const_cast(entities)->getEntitiesDescriptors(); + for_each(groups.begin(), groups.end(), lambda::bind(&WhitelistMetadataFilter::filterGroup, this, _1)); } bool WhitelistMetadataFilter::included(const EntityDescriptor& entity) const