version 0.3.2
[fms.git] / include / ifmsxmldocument.h
index 6358e8f..ae3f4e6 100644 (file)
@@ -77,12 +77,12 @@ protected:
        /**\r
                \brief Creates and returns an element with a boolean value\r
        */\r
-       virtual Poco::XML::Element *XMLCreateBooleanElement(Poco::XML::Document *doc, const std::string &name, const bool value)\r
+       virtual Poco::AutoPtr<Poco::XML::Element> XMLCreateBooleanElement(Poco::AutoPtr<Poco::XML::Document> doc, const std::string &name, const bool value)\r
        {\r
                if(doc)\r
                {\r
-                       Poco::XML::Text *txt=doc->createTextNode(value ? "true" : "false");\r
-                       Poco::XML::Element *el=doc->createElement(name);\r
+                       Poco::AutoPtr<Poco::XML::Text> txt=doc->createTextNode(value ? "true" : "false");\r
+                       Poco::AutoPtr<Poco::XML::Element> el=doc->createElement(name);\r
                        el->appendChild(txt);\r
                        return el;\r
                }\r
@@ -95,15 +95,15 @@ protected:
        /**\r
                \brief Creates and returns an element with a CDATA value\r
        */\r
-       virtual Poco::XML::Element *XMLCreateCDATAElement(Poco::XML::Document *doc, const std::string &name, const std::string &data)\r
+       virtual Poco::AutoPtr<Poco::XML::Element> XMLCreateCDATAElement(Poco::AutoPtr<Poco::XML::Document> doc, const std::string &name, const std::string &data)\r
        {\r
                if(doc)\r
                {\r
                        // Poco XML won't break up CDATA sections correctly when assigned a string with the \r
                        // end tag is present.  However, it will parse it correctly, so we will manually break the\r
                        // CDATA into separate parts\r
-                       Poco::XML::CDATASection *sec=doc->createCDATASection(StringFunctions::Replace(data,"]]>","]]]><![CDATA[]>"));\r
-                       Poco::XML::Element *el=doc->createElement(name);\r
+                       Poco::AutoPtr<Poco::XML::CDATASection> sec=doc->createCDATASection(StringFunctions::Replace(data,"]]>","]]]><![CDATA[]>"));\r
+                       Poco::AutoPtr<Poco::XML::Element> el=doc->createElement(name);\r
                        el->appendChild(sec);\r
                        return el;\r
                }\r
@@ -116,12 +116,12 @@ protected:
        /**\r
                \brief Creates and returns a text element\r
        */\r
-       virtual Poco::XML::Element *XMLCreateTextElement(Poco::XML::Document *doc, const std::string &name, const std::string &data)\r
+       virtual Poco::AutoPtr<Poco::XML::Element> XMLCreateTextElement(Poco::AutoPtr<Poco::XML::Document> doc, const std::string &name, const std::string &data)\r
        {\r
                if(doc)\r
                {\r
-                       Poco::XML::Text *txt=doc->createTextNode(data);\r
-                       Poco::XML::Element *el=doc->createElement(name);\r
+                       Poco::AutoPtr<Poco::XML::Text> txt=doc->createTextNode(data);\r
+                       Poco::AutoPtr<Poco::XML::Element> el=doc->createElement(name);\r
                        el->appendChild(txt);\r
                        return el;\r
                }\r
@@ -131,7 +131,7 @@ protected:
                }\r
        }\r
 \r
-       virtual Poco::XML::Element *XMLCreateTextElement(Poco::XML::Document *doc, const std::string &name, const long data)\r
+       virtual Poco::AutoPtr<Poco::XML::Element> XMLCreateTextElement(Poco::AutoPtr<Poco::XML::Document> doc, const std::string &name, const long data)\r
        {\r
                if(doc)\r
                {\r
@@ -171,6 +171,7 @@ protected:
                        {\r
                                child=child->nextSibling();\r
                        }\r
+                       //return child.cast<Poco::XML::Element>();\r
                        return static_cast<Poco::XML::Element *>(child);\r
                }\r
                else\r
@@ -188,6 +189,7 @@ protected:
                        {\r
                                next=next->nextSibling();\r
                        }\r
+                       //return next.cast<Poco::XML::Element>();\r
                        return static_cast<Poco::XML::Element *>(next);\r
                }\r
                else\r
@@ -207,7 +209,7 @@ protected:
                return returntext;\r
        }\r
 \r
-       const std::string GenerateXML(Poco::XML::Document *doc)\r
+       const std::string GenerateXML(Poco::AutoPtr<Poco::XML::Document> doc)\r
        {\r
                std::ostringstream str;\r
                if(doc)\r