diff options
| author | 2019-10-05 21:10:01 -0400 | |
|---|---|---|
| committer | 2019-10-05 21:10:01 -0400 | |
| commit | dff8b887edf10407f22aaab9d147948cd5491f0a (patch) | |
| tree | 14456ec6e2161ab1146e0bd9a2c9063fd56f87b4 /src/lib/net/TCPSocket.h | |
| parent | 81b2a927d50def6c2643db51394a170593d1db85 (diff) | |
New upstream version 2.3.2+dfsgupstream/2.3.2+dfsg
Diffstat (limited to 'src/lib/net/TCPSocket.h')
| -rw-r--r-- | src/lib/net/TCPSocket.h | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/src/lib/net/TCPSocket.h b/src/lib/net/TCPSocket.h index 1006f88..2889135 100644 --- a/src/lib/net/TCPSocket.h +++ b/src/lib/net/TCPSocket.h @@ -19,14 +19,15 @@ #pragma once #include "net/IDataSocket.h" +#include "net/ISocketMultiplexerJob.h" #include "io/StreamBuffer.h" #include "mt/CondVar.h" #include "mt/Mutex.h" #include "arch/IArchNetwork.h" +#include <memory> class Mutex; class Thread; -class ISocketMultiplexerJob; class IEventQueue; class SocketMultiplexer; @@ -59,8 +60,7 @@ public: virtual void connect(const NetworkAddress&); - virtual ISocketMultiplexerJob* - newJob(); + virtual std::unique_ptr<ISocketMultiplexerJob> newJob(); protected: enum EJobResult { @@ -74,7 +74,8 @@ protected: virtual EJobResult doRead(); virtual EJobResult doWrite(); - void setJob(ISocketMultiplexerJob*); + void removeJob(); + void setJob(std::unique_ptr<ISocketMultiplexerJob>&& job); bool isReadable() { return m_readable; } bool isWritable() { return m_writable; } @@ -93,12 +94,8 @@ private: void onOutputShutdown(); void onDisconnected(); - ISocketMultiplexerJob* - serviceConnecting(ISocketMultiplexerJob*, - bool, bool, bool); - ISocketMultiplexerJob* - serviceConnected(ISocketMultiplexerJob*, - bool, bool, bool); + MultiplexerJobStatus serviceConnecting(ISocketMultiplexerJob*, bool, bool, bool); + MultiplexerJobStatus serviceConnected(ISocketMultiplexerJob*, bool, bool, bool); protected: bool m_readable; |
