X-Git-Url: http://www.project-moonshot.org/gitweb/?p=shibboleth%2Fcpp-opensaml.git;a=blobdiff_plain;f=saml%2Fsaml2%2Fbinding%2Fimpl%2FSAML2ArtifactEncoder.cpp;h=d9d91d3341ff01caedd8095aad56830f7580ed9f;hp=f2e8e9e4237680cc7d9aacd13def1cc71aca02f1;hb=16d5976c9821b70d95675983702e0032d8769467;hpb=48ddc68b48bbc752bbf044dce2c71e0af115d447 diff --git a/saml/saml2/binding/impl/SAML2ArtifactEncoder.cpp b/saml/saml2/binding/impl/SAML2ArtifactEncoder.cpp index f2e8e9e..d9d91d3 100644 --- a/saml/saml2/binding/impl/SAML2ArtifactEncoder.cpp +++ b/saml/saml2/binding/impl/SAML2ArtifactEncoder.cpp @@ -69,7 +69,6 @@ namespace opensaml { ) const; private: - bool m_post; string m_template; }; @@ -83,18 +82,12 @@ namespace opensaml { static const XMLCh postArtifact[] = UNICODE_LITERAL_12(p,o,s,t,A,r,t,i,f,a,c,t); }; -SAML2ArtifactEncoder::SAML2ArtifactEncoder(const DOMElement* e, const XMLCh* ns) : m_post(false) +SAML2ArtifactEncoder::SAML2ArtifactEncoder(const DOMElement* e, const XMLCh* ns) { - if (e) { - const XMLCh* flag = e->getAttributeNS(ns, postArtifact); - m_post = (flag && (*flag==chLatin_t || *flag==chDigit_1)); - if (m_post) { - auto_ptr_char t(e->getAttributeNS(ns, _template)); - if (t.get() && *t.get()) { - m_template = t.get(); - XMLToolingConfig::getConfig().getPathResolver()->resolve(m_template, PathResolver::XMLTOOLING_CFG_FILE); - } - } + if (XMLHelper::getAttrBool(e, false, postArtifact, ns)) { + m_template = XMLHelper::getAttrString(e, nullptr, _template, ns); + if (!m_template.empty()) + XMLToolingConfig::getConfig().getPathResolver()->resolve(m_template, PathResolver::XMLTOOLING_CFG_FILE); } }