diff options
| author | Remko Tronçon <git@el-tramo.be> | 2009-11-09 20:34:44 (GMT) |
|---|---|---|
| committer | Remko Tronçon <git@el-tramo.be> | 2009-11-09 22:12:10 (GMT) |
| commit | c682941cd230ad8caed3f3d457de3dc0cd7172d4 (patch) | |
| tree | e4d4382a8627409d81bb7c79a62f1bc55f45b410 /Swiften/Client/Client.h | |
| parent | f1d74218cb432513c376b46aa115acb3e107ed3a (diff) | |
| download | swift-c682941cd230ad8caed3f3d457de3dc0cd7172d4.zip swift-c682941cd230ad8caed3f3d457de3dc0cd7172d4.tar.bz2 | |
Refactoring Client.
Diffstat (limited to 'Swiften/Client/Client.h')
| -rw-r--r-- | Swiften/Client/Client.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/Swiften/Client/Client.h b/Swiften/Client/Client.h index 0e68f55..27c2458 100644 --- a/Swiften/Client/Client.h +++ b/Swiften/Client/Client.h @@ -1,12 +1,14 @@ #ifndef SWIFTEN_Client_H #define SWIFTEN_Client_H #include <boost/signals.hpp> #include <boost/shared_ptr.hpp> +#include <boost/enable_shared_from_this.hpp> +#include "Swiften/Base/Error.h" #include "Swiften/Client/ClientSession.h" #include "Swiften/Client/ClientError.h" #include "Swiften/Elements/Presence.h" #include "Swiften/Elements/Message.h" #include "Swiften/JID/JID.h" #include "Swiften/Base/String.h" @@ -19,13 +21,13 @@ namespace Swift { class TLSLayerFactory; class ConnectionFactory; class ClientSession; class BasicSessionStream; - class Client : public StanzaChannel, public IQRouter, public boost::bsignals::trackable { + class Client : public StanzaChannel, public IQRouter, public boost::enable_shared_from_this<Client> { public: Client(const JID& jid, const String& password); ~Client(); void setCertificate(const String& certificate); @@ -36,23 +38,23 @@ namespace Swift { virtual void sendIQ(boost::shared_ptr<IQ>); virtual void sendMessage(boost::shared_ptr<Message>); virtual void sendPresence(boost::shared_ptr<Presence>); public: - boost::signal<void (ClientError)> onError; + boost::signal<void (const ClientError&)> onError; boost::signal<void ()> onConnected; boost::signal<void (const String&)> onDataRead; boost::signal<void (const String&)> onDataWritten; private: void handleConnectionConnectFinished(bool error); void send(boost::shared_ptr<Stanza>); virtual String getNewIQID(); void handleElement(boost::shared_ptr<Element>); - void handleSessionFinished(const boost::optional<Session::SessionError>& error); + void handleSessionFinished(boost::shared_ptr<Error>); void handleNeedCredentials(); void handleDataRead(const ByteArray&); void handleDataWritten(const ByteArray&); void reset(); |
Swift