diff options
author | Remko Tronçon <git@el-tramo.be> | 2009-06-20 08:17:59 (GMT) |
---|---|---|
committer | Remko Tronçon <git@el-tramo.be> | 2009-06-20 14:37:51 (GMT) |
commit | 6310bc00ceeb65f0cf6fc0ada9d1b188517d8a76 (patch) | |
tree | 42f98c3d4a6d6e01043377bbb07125264527bd0f /Swiften/Parser/PayloadParsers/VCardUpdateParser.cpp | |
parent | 9a457c621bd75a9929cc0616b7659dba2945fdac (diff) | |
download | swift-contrib-6310bc00ceeb65f0cf6fc0ada9d1b188517d8a76.zip swift-contrib-6310bc00ceeb65f0cf6fc0ada9d1b188517d8a76.tar.bz2 |
Added vcard-temp update parser.
Diffstat (limited to 'Swiften/Parser/PayloadParsers/VCardUpdateParser.cpp')
-rw-r--r-- | Swiften/Parser/PayloadParsers/VCardUpdateParser.cpp | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/Swiften/Parser/PayloadParsers/VCardUpdateParser.cpp b/Swiften/Parser/PayloadParsers/VCardUpdateParser.cpp new file mode 100644 index 0000000..855f9b0 --- /dev/null +++ b/Swiften/Parser/PayloadParsers/VCardUpdateParser.cpp @@ -0,0 +1,26 @@ +#include "Swiften/Parser/PayloadParsers/VCardUpdateParser.h" + +namespace Swift { + +VCardUpdateParser::VCardUpdateParser() : level_(TopLevel) { +} + +void VCardUpdateParser::handleStartElement(const String& element, const String&, const AttributeMap& attributes) { + if (level_ == PayloadLevel) { + currentText_ = ""; + } + ++level_; +} + +void VCardUpdateParser::handleEndElement(const String& element, const String&) { + --level_; + if (level_ == PayloadLevel && element == "photo") { + getPayloadInternal()->setPhotoHash(currentText_); + } +} + +void VCardUpdateParser::handleCharacterData(const String& text) { + currentText_ += text; +} + +} |