Files @ 79b50300351f
Branch filter:

Location: libtransport.git/src/storageparser.h

Jan Kaluza
Check if the user is in room before sending information about nick change. Fixes bug when users have been added to all rooms when they changed their IRC nickname
#pragma once

#include <boost/optional.hpp>

#include "Swiften/Elements/PrivateStorage.h"
#include "Swiften/Parser/GenericPayloadParser.h"

namespace Transport {

	class StorageParser : public Swift::GenericPayloadParser<Swift::PrivateStorage> {
		public:
			StorageParser();

		private:
			virtual void handleStartElement(const std::string& element, const std::string&, const Swift::AttributeMap& attributes);
			virtual void handleEndElement(const std::string& element, const std::string&);
			virtual void handleCharacterData(const std::string& data);

		private:
			int level;
			std::auto_ptr<Swift::PayloadParser> currentPayloadParser;
	};
}