diff options
author | Remko Tronçon <git@el-tramo.be> | 2011-03-26 10:09:46 (GMT) |
---|---|---|
committer | Remko Tronçon <git@el-tramo.be> | 2011-04-18 19:11:40 (GMT) |
commit | bb37c9f89e4135f3128fc98c23ea19eea945c4cd (patch) | |
tree | 92e9504a27d6eaa8182bb0bab8a7556825a46ad7 /Swiften/FileTransfer/IBBReceiveSession.h | |
parent | 039636edc1b151431cba21a28986ff2be66b5349 (diff) | |
download | swift-contrib-bb37c9f89e4135f3128fc98c23ea19eea945c4cd.zip swift-contrib-bb37c9f89e4135f3128fc98c23ea19eea945c4cd.tar.bz2 |
Jingle refactoring.
Diffstat (limited to 'Swiften/FileTransfer/IBBReceiveSession.h')
-rw-r--r-- | Swiften/FileTransfer/IBBReceiveSession.h | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/Swiften/FileTransfer/IBBReceiveSession.h b/Swiften/FileTransfer/IBBReceiveSession.h index 6d936de..d512025 100644 --- a/Swiften/FileTransfer/IBBReceiveSession.h +++ b/Swiften/FileTransfer/IBBReceiveSession.h @@ -7,27 +7,30 @@ #pragma once #include <boost/shared_ptr.hpp> -#include <boost/optional.hpp> +#include <boost/optional/optional_fwd.hpp> #include "Swiften/Base/boost_bsignals.h" #include "Swiften/FileTransfer/WriteBytestream.h" #include "Swiften/JID/JID.h" #include "Swiften/Elements/IBB.h" -#include "Swiften/Elements/ErrorPayload.h" #include "Swiften/FileTransfer/FileTransferError.h" -#include "Swiften/Queries/SetResponder.h" namespace Swift { class IQRouter; - class IBBReceiveSession : public SetResponder<IBB> { + class IBBReceiveSession { public: - IBBReceiveSession(const std::string& id, const JID& from, size_t size, WriteBytestream::ref bytestream, IQRouter* router); + IBBReceiveSession( + const std::string& id, + const JID& from, + size_t size, + IQRouter* router); ~IBBReceiveSession(); void start(); void stop(); + boost::signal<void (const std::vector<unsigned char>&)> onDataReceived; boost::signal<void (boost::optional<FileTransferError>)> onFinished; private: @@ -35,13 +38,14 @@ namespace Swift { void finish(boost::optional<FileTransferError>); private: + class IBBResponder; + friend class IBBResponder; + std::string id; JID from; size_t size; - WriteBytestream::ref bytestream; IQRouter* router; - int sequenceNumber; + IBBResponder* responder; bool active; - size_t receivedSize; }; } |