diff options
author | Remko Tronçon <git@el-tramo.be> | 2010-10-24 13:46:12 (GMT) |
---|---|---|
committer | Remko Tronçon <git@el-tramo.be> | 2010-10-24 15:56:44 (GMT) |
commit | 9dccf1e0c86b10d41dd2d5f3bf71faf1bf8d77c8 (patch) | |
tree | 4d054c17e759f5f206c67fbbef1ca3e77647ba07 /Swiften/Client/Client.cpp | |
parent | efc2bed8610f6e1b7fc29b3dd6f13137fc19bdf6 (diff) | |
download | swift-contrib-9dccf1e0c86b10d41dd2d5f3bf71faf1bf8d77c8.zip swift-contrib-9dccf1e0c86b10d41dd2d5f3bf71faf1bf8d77c8.tar.bz2 |
Created Storages interface.
Diffstat (limited to 'Swiften/Client/Client.cpp')
-rw-r--r-- | Swiften/Client/Client.cpp | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/Swiften/Client/Client.cpp b/Swiften/Client/Client.cpp index 63cd89f..7363c3f 100644 --- a/Swiften/Client/Client.cpp +++ b/Swiften/Client/Client.cpp @@ -12,10 +12,14 @@ #include "Swiften/Presence/PresenceOracle.h" #include "Swiften/Presence/PresenceSender.h" #include "Swiften/MUC/MUCRegistry.h" +#include "Swiften/Client/MemoryStorages.h" +#include "Swiften/VCards/VCardManager.h" namespace Swift { -Client::Client(const JID& jid, const String& password) : CoreClient(jid, password) { +Client::Client(const JID& jid, const String& password, Storages* storages) : CoreClient(jid, password), storages(storages) { + memoryStorages = new MemoryStorages(); + softwareVersionResponder = new SoftwareVersionResponder(getIQRouter()); softwareVersionResponder->start(); @@ -29,9 +33,13 @@ Client::Client(const JID& jid, const String& password) : CoreClient(jid, passwor presenceSender = new PresenceSender(getStanzaChannel()); mucRegistry = new MUCRegistry(); + + vcardManager = new VCardManager(jid, getIQRouter(), getStorages()->getVCardStorage()); } Client::~Client() { + delete vcardManager; + delete mucRegistry; delete presenceSender; @@ -42,6 +50,8 @@ Client::~Client() { softwareVersionResponder->stop(); delete softwareVersionResponder; + + delete memoryStorages; } XMPPRoster* Client::getRoster() const { @@ -65,4 +75,12 @@ Presence::ref Client::getHighestPriorityPresence(const JID& bareJID) const { return presenceOracle->getHighestPriorityPresence(bareJID); } +Storages* Client::getStorages() const { + if (storages) { + return storages; + } + return memoryStorages; +} + + } |