diff options
author | Remko Tronçon <git@el-tramo.be> | 2010-10-31 18:51:01 (GMT) |
---|---|---|
committer | Remko Tronçon <git@el-tramo.be> | 2010-11-03 12:17:40 (GMT) |
commit | d509598b0f0edf5e103caedbab8662edc834445e (patch) | |
tree | 9365ef58175eee453f999c1c5b8515cb50cf90e0 /Swiften/Client/Client.h | |
parent | badcdcb7456d38016ea1746d6754a40dd9646813 (diff) | |
download | swift-contrib-d509598b0f0edf5e103caedbab8662edc834445e.zip swift-contrib-d509598b0f0edf5e103caedbab8662edc834445e.tar.bz2 |
Refactoring Presence & MUC handling.
Diffstat (limited to 'Swiften/Client/Client.h')
-rw-r--r-- | Swiften/Client/Client.h | 23 |
1 files changed, 17 insertions, 6 deletions
diff --git a/Swiften/Client/Client.h b/Swiften/Client/Client.h index 7e11df9..adfd549 100644 --- a/Swiften/Client/Client.h +++ b/Swiften/Client/Client.h @@ -12,9 +12,12 @@ namespace Swift { class SoftwareVersionResponder; class XMPPRoster; class XMPPRosterImpl; + class MUCManager; class XMPPRosterController; class PresenceOracle; class PresenceSender; + class DirectedPresenceSender; + class StanzaChannelPresenceSender; class MUCRegistry; class Storages; class MemoryStorages; @@ -23,6 +26,7 @@ namespace Swift { class CapsManager; class EntityCapsManager; class NickResolver; + class SubscriptionManager; /** * Provides the core functionality for writing XMPP client software. @@ -88,8 +92,10 @@ namespace Swift { return presenceOracle; } - PresenceSender* getPresenceSender() const { - return presenceSender; + PresenceSender* getPresenceSender() const; + + MUCManager* getMUCManager() const { + return mucManager; } MUCRegistry* getMUCRegistry() const { @@ -112,15 +118,17 @@ namespace Swift { return nickResolver; } + SubscriptionManager* getSubscriptionManager() const { + return subscriptionManager; + } + public: /** * This signal is emitted when a JID changes presence. */ boost::signal<void (Presence::ref)> onPresenceChange; - /** - * This signal is emitted when a presence subscription request is received. - */ + boost::signal<void (const JID&, const String&)> onPresenceSubscriptionRequest; private: @@ -133,12 +141,15 @@ namespace Swift { XMPPRosterImpl* roster; XMPPRosterController* rosterController; PresenceOracle* presenceOracle; - PresenceSender* presenceSender; + DirectedPresenceSender* directedPresenceSender; + StanzaChannelPresenceSender* stanzaChannelPresenceSender; MUCRegistry* mucRegistry; VCardManager* vcardManager; AvatarManager* avatarManager; CapsManager* capsManager; EntityCapsManager* entityCapsManager; NickResolver* nickResolver; + SubscriptionManager* subscriptionManager; + MUCManager* mucManager; }; } |