diff options
Diffstat (limited to 'Swiften/FileTransfer/SOCKS5BytestreamClientSession.h')
-rw-r--r-- | Swiften/FileTransfer/SOCKS5BytestreamClientSession.h | 23 |
1 files changed, 17 insertions, 6 deletions
diff --git a/Swiften/FileTransfer/SOCKS5BytestreamClientSession.h b/Swiften/FileTransfer/SOCKS5BytestreamClientSession.h index ea45955..cf731c1 100644 --- a/Swiften/FileTransfer/SOCKS5BytestreamClientSession.h +++ b/Swiften/FileTransfer/SOCKS5BytestreamClientSession.h @@ -10,4 +10,5 @@ #include <boost/optional.hpp> +#include <Swiften/Base/API.h> #include <Swiften/Base/ByteArray.h> #include <Swiften/FileTransfer/FileTransferError.h> @@ -29,5 +30,5 @@ class TimerFactory; * */ -class SOCKS5BytestreamClientSession { +class SWIFTEN_API SOCKS5BytestreamClientSession { public: enum State { @@ -38,5 +39,5 @@ public: Writing, Reading, - Finished, + Finished }; @@ -45,5 +46,10 @@ public: public: - SOCKS5BytestreamClientSession(boost::shared_ptr<Connection> connection, const HostAddressPort&, const std::string&, TimerFactory*); + SOCKS5BytestreamClientSession( + boost::shared_ptr<Connection> connection, + const HostAddressPort&, + const std::string&, + TimerFactory*); + ~SOCKS5BytestreamClientSession(); void start(); @@ -58,6 +64,6 @@ public: boost::signal<void (boost::optional<FileTransferError>)> onFinished; - boost::signal<void (int)> onBytesSent; - boost::signal<void (int)> onBytesReceived; + boost::signal<void (size_t)> onBytesSent; + // boost::signal<void (size_t)> onBytesReceived; private: @@ -73,4 +79,5 @@ private: void finish(bool error); void sendData(); + void closeConnection(); private: @@ -80,5 +87,4 @@ private: State state; - int destinationPort; ByteArray unprocessedData; @@ -90,4 +96,9 @@ private: Timer::ref weFailedTimeout; + + boost::bsignals::connection connectFinishedConnection; + boost::bsignals::connection dataWrittenConnection; + boost::bsignals::connection dataReadConnection; + boost::bsignals::connection disconnectedConnection; }; |