Boost changes
[shibboleth/cpp-opensaml.git] / saml / saml1 / profile / impl / AssertionValidator.cpp
index ff00b8f..11e5b99 100644 (file)
@@ -28,6 +28,7 @@
 #include "saml1/core/Assertions.h"
 #include "saml1/profile/AssertionValidator.h"
 
+#include <boost/bind.hpp>
 #include <xmltooling/logging.h>
 #include <xmltooling/XMLToolingConfig.h>
 #include <xmltooling/util/NDC.h>
@@ -35,6 +36,7 @@
 using namespace opensaml::saml1;
 using namespace xmltooling::logging;
 using namespace xmltooling;
+using namespace boost;
 using namespace std;
 
 AssertionValidator::AssertionValidator(const XMLCh* recipient, const vector<const XMLCh*>* audiences, time_t ts)
@@ -78,16 +80,13 @@ void AssertionValidator::validateAssertion(const Assertion& assertion) const
     // Now we process conditions, starting with the known types and then extensions.
 
     const vector<AudienceRestrictionCondition*>& acvec = conds->getAudienceRestrictionConditions();
-    for (vector<AudienceRestrictionCondition*>::const_iterator ac = acvec.begin(); ac!=acvec.end(); ++ac)
-        validateCondition(*ac);
+    for_each(acvec.begin(), acvec.end(), boost::bind(&AssertionValidator::validateCondition, this, _1));
 
     const vector<DoNotCacheCondition*>& dncvec = conds->getDoNotCacheConditions();
-    for (vector<DoNotCacheCondition*>::const_iterator dnc = dncvec.begin(); dnc!=dncvec.end(); ++dnc) 
-        validateCondition(*dnc);
+    for_each(dncvec.begin(), dncvec.end(), boost::bind(&AssertionValidator::validateCondition, this, _1));
 
     const vector<Condition*>& convec = conds->getConditions();
-    for (vector<Condition*>::const_iterator c = convec.begin(); c!=convec.end(); ++c)
-        validateCondition(*c);
+    for_each(convec.begin(), convec.end(), boost::bind(&AssertionValidator::validateCondition, this, _1));
 }
 
 void AssertionValidator::validateCondition(const Condition* c) const