diff options
Diffstat (limited to 'Swiften/Whiteboard/WhiteboardSessionManager.h')
-rw-r--r-- | Swiften/Whiteboard/WhiteboardSessionManager.h | 12 |
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_; |