Files
@ 2fcf167a4e38
Branch filter:
Location: libtransport.git/include/Swiften/Parser/PayloadParsers/PubSubSubscriptionPayloadParser.cpp - annotation
2fcf167a4e38
1.4 KiB
text/x-c++hdr
Forward ChatState messages to backends
7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 7c90087b1774 | /*
* Copyright (c) 2012 Jan Kaluza
* Licensed under the Simplified BSD license.
* See Documentation/Licenses/BSD-simplified.txt for more information.
*/
#include <Swiften/Parser/PayloadParsers/PubSubSubscriptionPayloadParser.h>
#include <boost/lexical_cast.hpp>
#include <Swiften/Parser/PayloadParserFactoryCollection.h>
#include <Swiften/Parser/PayloadParserFactory.h>
#include <Swiften/Base/foreach.h>
#include <Swiften/Elements/MUCOccupant.h>
#include <Swiften/Parser/Tree/TreeReparser.h>
namespace Swift {
void PubSubSubscriptionPayloadParser::handleTree(ParserElement::ref root) {
std::string node = root->getAttributes().getAttribute("node");
if (!node.empty()) {
getPayloadInternal()->setNode(node);
}
std::string jid = root->getAttributes().getAttribute("jid");
if (!jid.empty()) {
getPayloadInternal()->setJID(jid);
}
std::string id = root->getAttributes().getAttribute("subid");
if (!id.empty()) {
getPayloadInternal()->setId(id);
}
std::string type = root->getAttributes().getAttribute("subscription");
if (type == "none") {
getPayloadInternal()->setType(PubSubSubscriptionPayload::None);
}
else if (type == "subscribed") {
getPayloadInternal()->setType(PubSubSubscriptionPayload::Subscribed);
}
else if (type == "pending") {
getPayloadInternal()->setType(PubSubSubscriptionPayload::Pending);
}
else if (type == "unconfigured") {
getPayloadInternal()->setType(PubSubSubscriptionPayload::Unconfigured);
}
}
}
|