/*\r
- * Copyright 2001-2007 Internet2\r
+ * Copyright 2001-2009 Internet2\r
* \r
* Licensed under the Apache License, Version 2.0 (the "License");\r
* you may not use this file except in compliance with the License.\r
const char* msg=getMessage();\r
if (msg)\r
xml_encode(xml, "<message>", msg, "</message>");\r
+ const URLEncoder* encoder = XMLToolingConfig::getConfig().getURLEncoder();\r
for (map<string,string>::const_iterator i=m_params.begin(); i!=m_params.end(); i++) {\r
xml_encode(xml, "<param name='", i->first.c_str(), "'");\r
- xml_encode(xml, ">", i->second.c_str(), "</param>");\r
+ xml_encode(xml, ">", encoder->encode(i->second.c_str()).c_str(), "</param>");\r
}\r
xml+="</exception>";\r
return xml;\r
excep->setMessage(m.get());\r
}\r
\r
+ const URLEncoder* encoder = XMLToolingConfig::getConfig().getURLEncoder();\r
child=XMLHelper::getFirstChildElement(root,XMLTOOLING_NS,param);\r
while (child && child->hasChildNodes()) {\r
auto_ptr_char n(child->getAttributeNS(NULL,name));\r
- char* v=toUTF8(child->getFirstChild()->getNodeValue());\r
- if (n.get() && v)\r
- excep->addProperty(n.get(), v);\r
- delete[] v;\r
+ char* encoded = XMLString::transcode(child->getFirstChild()->getNodeValue());\r
+ if (n.get() && encoded) {\r
+ encoder->decode(encoded);\r
+ excep->addProperty(n.get(), encoded);\r
+ }\r
+ XMLString::release(&encoded);\r
child=XMLHelper::getNextSiblingElement(child,XMLTOOLING_NS,param);\r
}\r
\r