const XMLCh* authncontext_class=NULL,
const XMLCh* authncontext_decl=NULL,
const vector<const opensaml::Assertion*>* tokens=NULL,
- const multimap<string,Attribute*>* attributes=NULL
+ const vector<Attribute*>* attributes=NULL
) : m_query(true), m_app(application), m_session(NULL), m_metadata(NULL), m_entity(issuer),
m_protocol(protocol), m_nameid(nameid), m_class(authncontext_class), m_decl(authncontext_decl) {
}
if (m_metadata)
m_metadata->unlock();
- for_each(m_attributes.begin(), m_attributes.end(), cleanup_pair<string,shibsp::Attribute>());
+ for_each(m_attributes.begin(), m_attributes.end(), xmltooling::cleanup<shibsp::Attribute>());
for_each(m_assertions.begin(), m_assertions.end(), xmltooling::cleanup<opensaml::Assertion>());
}
const Session* getSession() const {
return m_session;
}
- multimap<string,shibsp::Attribute*>& getResolvedAttributes() {
+ vector<shibsp::Attribute*>& getResolvedAttributes() {
return m_attributes;
}
vector<opensaml::Assertion*>& getResolvedAssertions() {
const NameID* m_nameid;
const XMLCh* m_class;
const XMLCh* m_decl;
- multimap<string,shibsp::Attribute*> m_attributes;
+ vector<shibsp::Attribute*> m_attributes;
vector<opensaml::Assertion*> m_assertions;
};
const XMLCh* authncontext_class=NULL,
const XMLCh* authncontext_decl=NULL,
const vector<const opensaml::Assertion*>* tokens=NULL,
- const multimap<string,shibsp::Attribute*>* attributes=NULL
+ const vector<shibsp::Attribute*>* attributes=NULL
) const {
return new QueryContext(application,issuer,protocol,nameid,authncontext_class,authncontext_decl,tokens,attributes);
}
}
catch (exception& ex) {
m_log.error("caught exception extracting/filtering attributes from query result: %s", ex.what());
- for_each(ctx.getResolvedAttributes().begin(), ctx.getResolvedAttributes().end(), cleanup_pair<string,shibsp::Attribute>());
+ for_each(ctx.getResolvedAttributes().begin(), ctx.getResolvedAttributes().end(), xmltooling::cleanup<shibsp::Attribute>());
ctx.getResolvedAttributes().clear();
}
}
catch (exception& ex) {
m_log.error("caught exception extracting/filtering attributes from query result: %s", ex.what());
- for_each(ctx.getResolvedAttributes().begin(), ctx.getResolvedAttributes().end(), cleanup_pair<string,shibsp::Attribute>());
+ for_each(ctx.getResolvedAttributes().begin(), ctx.getResolvedAttributes().end(), xmltooling::cleanup<shibsp::Attribute>());
ctx.getResolvedAttributes().clear();
}