summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMateusz Piekos <mateuszpiekos@gmail.com>2012-06-08 13:37:12 (GMT)
committerMateusz Piekos <mateuszpiekos@gmail.com>2012-06-08 13:37:12 (GMT)
commit6e9fb4e4a3aeee8c40617a4dda6e5e0892ceebad (patch)
treefd2c0a48c6f5d033fe742790fb2e640d7e13ba91 /Swiften/Whiteboard/WhiteboardSessionManager.h
parent13ededd86bfb5dc5115af69d79810122313273b5 (diff)
downloadswift-contrib-6e9fb4e4a3aeee8c40617a4dda6e5e0892ceebad.zip
swift-contrib-6e9fb4e4a3aeee8c40617a4dda6e5e0892ceebad.tar.bz2
Added handling of whiteboard session requests
Diffstat (limited to 'Swiften/Whiteboard/WhiteboardSessionManager.h')
-rw-r--r--Swiften/Whiteboard/WhiteboardSessionManager.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/Swiften/Whiteboard/WhiteboardSessionManager.h b/Swiften/Whiteboard/WhiteboardSessionManager.h
index 93d2f19..3cd3aab 100644
--- a/Swiften/Whiteboard/WhiteboardSessionManager.h
+++ b/Swiften/Whiteboard/WhiteboardSessionManager.h
@@ -10,6 +10,7 @@
#include <Swiften/Queries/IQRouter.h>
#include <Swiften/JID/JID.h>
+#include <Swiften/Base/boost_bsignals.h>
namespace Swift {
class IQRouter;
@@ -23,9 +24,18 @@ namespace Swift {
~WhiteboardSessionManager();
WhiteboardSession* getSession(const JID& to);
- WhiteboardSession* createSession(const JID& to);
+ WhiteboardSession* acceptSession(const JID& to);
+ void requestSession(const JID& to);
+ void cancelSession(const JID& to);
+ void handleRequestAccepted(const JID& contact, WhiteboardSession* session);
+
+ public:
+ boost::signal< void (const JID&)> onRequestReceived;
+ boost::signal< void (const JID&, WhiteboardSession*)> onRequestAccepted;
+
private:
JID getFullJID(const JID& bareJID);
+ WhiteboardSession* createSession(const JID& to);
private:
std::map<JID, WhiteboardSession*> sessions_;