diff --git a/six/modules/c++/six.sicd/include/six/sicd/Utilities.h b/six/modules/c++/six.sicd/include/six/sicd/Utilities.h index cc3653ead..cac19c097 100644 --- a/six/modules/c++/six.sicd/include/six/sicd/Utilities.h +++ b/six/modules/c++/six.sicd/include/six/sicd/Utilities.h @@ -428,10 +428,14 @@ struct Utilities final * * \return XML string representation of 'data' */ - static std::string toXMLString( + static std::u8string toXMLString( const ComplexData& data, const std::vector& schemaPaths = std::vector(), logging::Logger* logger = nullptr); + static std::string toXMLString_( + const ComplexData& data, + const std::vector& schemaPaths = std::vector(), + logging::Logger* logger = nullptr); static std::u8string toXMLString(const ComplexData&, const std::vector*, logging::Logger* pLogger = nullptr); /*! diff --git a/six/modules/c++/six.sicd/source/Utilities.cpp b/six/modules/c++/six.sicd/source/Utilities.cpp index 81f3f3fdf..99377c227 100644 --- a/six/modules/c++/six.sicd/source/Utilities.cpp +++ b/six/modules/c++/six.sicd/source/Utilities.cpp @@ -1040,7 +1040,7 @@ std::unique_ptr Utilities::parseDataFromString(const std::u8string& return parser.fromXML(xmlStr); } -std::string Utilities::toXMLString(const ComplexData& data, +std::u8string Utilities::toXMLString(const ComplexData& data, const std::vector& schemaPaths_, logging::Logger* logger) { @@ -1048,7 +1048,13 @@ std::string Utilities::toXMLString(const ComplexData& data, std::transform(schemaPaths_.begin(), schemaPaths_.end(), std::back_inserter(schemaPaths), [](const std::string& s) { return s; }); - const auto result = toXMLString(data, &schemaPaths, logger); + return toXMLString(data, &schemaPaths, logger); + } +std::string Utilities::toXMLString_(const ComplexData& data, + const std::vector& schemaPaths, + logging::Logger* logger) +{ + const auto result = toXMLString(data, schemaPaths, logger); return str::to_native(result); } std::u8string Utilities::toXMLString(const ComplexData& data, diff --git a/six/modules/c++/six.sidd/include/six/sidd/Utilities.h b/six/modules/c++/six.sidd/include/six/sidd/Utilities.h index 1bc5713bd..0074311f3 100644 --- a/six/modules/c++/six.sidd/include/six/sidd/Utilities.h +++ b/six/modules/c++/six.sidd/include/six/sidd/Utilities.h @@ -150,9 +150,12 @@ class Utilities * \return XML string representation of *'data' */ - static std::string toXMLString(const DerivedData& data, + static std::u8string toXMLString(const DerivedData& data, const std::vector& schemaPaths, logging::Logger* logger); + static std::string toXMLString_(const DerivedData& data, + const std::vector& schemaPaths, + logging::Logger* logger); static std::u8string toXMLString(const DerivedData&, const std::vector*, logging::Logger* pLogger = nullptr); }; diff --git a/six/modules/c++/six.sidd/source/Utilities.cpp b/six/modules/c++/six.sidd/source/Utilities.cpp index 89ffee2a5..8a2455db2 100644 --- a/six/modules/c++/six.sidd/source/Utilities.cpp +++ b/six/modules/c++/six.sidd/source/Utilities.cpp @@ -580,14 +580,20 @@ std::unique_ptr Utilities::parseDataFromString(const std::u8string& return dataParser.fromXML(xmlStr); } -std::string Utilities::toXMLString(const DerivedData& data, +std::u8string Utilities::toXMLString(const DerivedData& data, const std::vector& schemaPaths_, logging::Logger* logger) { std::vector schemaPaths; std::transform(schemaPaths_.begin(), schemaPaths_.end(), std::back_inserter(schemaPaths), [](const std::string& s) { return s; }); - const auto result = toXMLString(data, &schemaPaths, logger); + return toXMLString(data, &schemaPaths, logger); +} +std::string Utilities::toXMLString_(const DerivedData& data, + const std::vector& schemaPaths, + logging::Logger* logger) +{ + const auto result = toXMLString(data, schemaPaths, logger); return str::to_native(result); } std::u8string Utilities::toXMLString(const DerivedData& data,