diff options
Diffstat (limited to 'Swiften/Serializer/PayloadSerializers/DiscoItemsSerializer.cpp')
-rw-r--r-- | Swiften/Serializer/PayloadSerializers/DiscoItemsSerializer.cpp | 35 |
1 files changed, 17 insertions, 18 deletions
diff --git a/Swiften/Serializer/PayloadSerializers/DiscoItemsSerializer.cpp b/Swiften/Serializer/PayloadSerializers/DiscoItemsSerializer.cpp index 91a467c..a8eafef 100644 --- a/Swiften/Serializer/PayloadSerializers/DiscoItemsSerializer.cpp +++ b/Swiften/Serializer/PayloadSerializers/DiscoItemsSerializer.cpp @@ -1,14 +1,13 @@ /* - * Copyright (c) 2010 Isode Limited. + * Copyright (c) 2010-2016 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ #include <Swiften/Serializer/PayloadSerializers/DiscoItemsSerializer.h> -#include <boost/shared_ptr.hpp> +#include <memory> -#include <Swiften/Base/foreach.h> #include <Swiften/Serializer/XML/XMLElement.h> namespace Swift { @@ -16,21 +15,21 @@ namespace Swift { DiscoItemsSerializer::DiscoItemsSerializer() : GenericPayloadSerializer<DiscoItems>() { } -std::string DiscoItemsSerializer::serializePayload(boost::shared_ptr<DiscoItems> discoItems) const { - XMLElement queryElement("query", "http://jabber.org/protocol/disco#items"); - if (!discoItems->getNode().empty()) { - queryElement.setAttribute("node", discoItems->getNode()); - } - foreach(const DiscoItems::Item& item, discoItems->getItems()) { - boost::shared_ptr<XMLElement> itemElement(new XMLElement("item")); - itemElement->setAttribute("name", item.getName()); - itemElement->setAttribute("jid", item.getJID()); - if (!item.getNode().empty()) { - itemElement->setAttribute("node", item.getNode()); - } - queryElement.addNode(itemElement); - } - return queryElement.serialize(); +std::string DiscoItemsSerializer::serializePayload(std::shared_ptr<DiscoItems> discoItems) const { + XMLElement queryElement("query", "http://jabber.org/protocol/disco#items"); + if (!discoItems->getNode().empty()) { + queryElement.setAttribute("node", discoItems->getNode()); + } + for (const auto& item : discoItems->getItems()) { + std::shared_ptr<XMLElement> itemElement(new XMLElement("item")); + itemElement->setAttribute("name", item.getName()); + itemElement->setAttribute("jid", item.getJID()); + if (!item.getNode().empty()) { + itemElement->setAttribute("node", item.getNode()); + } + queryElement.addNode(itemElement); + } + return queryElement.serialize(); } } |