summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemko Tronçon <git@el-tramo.be>2009-06-10 17:23:57 (GMT)
committerRemko Tronçon <git@el-tramo.be>2009-06-10 17:38:05 (GMT)
commite2f5588d089e4d2148762ea092e032976254a467 (patch)
tree851946c7a36ffa96e0f3ab54bc72f233f8b2c746 /Swift/Controllers/XMPPRosterController.h
parent7214d768dca85a6d43892169d5008898249dce73 (diff)
downloadswift-e2f5588d089e4d2148762ea092e032976254a467.zip
swift-e2f5588d089e4d2148762ea092e032976254a467.tar.bz2
Moved Swiften/Controllers to Swift/Controllers.
Diffstat (limited to 'Swift/Controllers/XMPPRosterController.h')
-rw-r--r--Swift/Controllers/XMPPRosterController.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/Swift/Controllers/XMPPRosterController.h b/Swift/Controllers/XMPPRosterController.h
new file mode 100644
index 0000000..7695ff5
--- /dev/null
+++ b/Swift/Controllers/XMPPRosterController.h
@@ -0,0 +1,32 @@
+#pragma once
+
+#include "Swiften/JID/JID.h"
+#include "Swiften/Base/String.h"
+#include "Swiften/Elements/IQ.h"
+#include "Swiften/Elements/RosterPayload.h"
+#include "Swiften/Queries/IQHandler.h"
+
+#include <boost/signals.hpp>
+#include <boost/shared_ptr.hpp>
+
+namespace Swift {
+ class IQRouter;
+ class XMPPRoster;
+
+ class XMPPRosterController : public IQHandler {
+ public:
+ XMPPRosterController(IQRouter *iqRouter, boost::shared_ptr<XMPPRoster> xmppRoster);
+ ~XMPPRosterController();
+
+ void requestRoster();
+
+ boost::shared_ptr<XMPPRoster> getXMPPRoster() {return xmppRoster_;};
+ bool handleIQ(boost::shared_ptr<IQ>);
+
+ private:
+ IQRouter* iqRouter_;
+ void handleRosterReceived(boost::shared_ptr<RosterPayload> rosterPayload);
+ boost::shared_ptr<XMPPRoster> xmppRoster_;
+ };
+}
+