/* * Copyright (c) 2010 Remko Tronçon * Licensed under the GNU General Public License v3. * See Documentation/Licenses/GPLv3.txt for more information. */ #include "Swiften/Parser/PayloadParsers/PriorityParser.h" #include namespace Swift { PriorityParser::PriorityParser() : level_(0) { } void PriorityParser::handleStartElement(const String&, const String&, const AttributeMap&) { ++level_; } void PriorityParser::handleEndElement(const String&, const String&) { --level_; if (level_ == 0) { int priority = 0; try { priority = boost::lexical_cast(text_); } catch (boost::bad_lexical_cast& e) { } getPayloadInternal()->setPriority(priority); } } void PriorityParser::handleCharacterData(const String& data) { text_ += data; } }