X-Git-Url: http://www.project-moonshot.org/gitweb/?a=blobdiff_plain;f=xmltooling%2Futil%2FXMLHelper.cpp;fp=xmltooling%2Futil%2FXMLHelper.cpp;h=bbeb383b54867268b76ce6d87a21e9f2b20e5315;hb=a9e55eb70ce3fcf619988fb7bb590fd9f04e291d;hp=5ffd63d6adfd3ff13c1f727ec034dd89db0e7d0a;hpb=84b7b4ae603125e15802069618c3980efbd6955c;p=shibboleth%2Fxmltooling.git diff --git a/xmltooling/util/XMLHelper.cpp b/xmltooling/util/XMLHelper.cpp index 5ffd63d..bbeb383 100644 --- a/xmltooling/util/XMLHelper.cpp +++ b/xmltooling/util/XMLHelper.cpp @@ -177,6 +177,20 @@ xmltooling::QName* XMLHelper::getNodeValueAsQName(const DOMNode* domNode) return new xmltooling::QName(domNode->lookupNamespaceURI(nullptr), value); } +bool XMLHelper::getNodeValueAsBool(const xercesc::DOMNode* domNode, bool def) +{ + if (!domNode) + return def; + const XMLCh* value = domNode->getNodeValue(); + if (!value || !*value) + return def; + if (*value == chLatin_t || *value == chDigit_1) + return true; + else if (*value == chLatin_f || *value == chDigit_0) + return false; + return def; +} + DOMElement* XMLHelper::appendChildElement(DOMElement* parentElement, DOMElement* childElement) { DOMDocument* parentDocument = parentElement->getOwnerDocument();