43 std::function<void()> m_invalidHello;
44 std::function<void(
int,
int)> m_incompatible;
52 m_majorVersion(majorVersion),
53 m_minorVersion(minorVersion)
64 bool shouldDowngrade(
int major,
int minor)
const;
66 std::shared_ptr<Deps> m_deps;
67 int16_t m_majorVersion;
68 int16_t m_minorVersion;
Deskflow Network Protocol Specification and Implementation.
Bidirectional stream interface.
Definition IStream.h:24
void handleHello(deskflow::IStream *stream, const std::string &clientName) const
Handle hello message from server and reply with hello back.
Definition HelloBack.cpp:36
HelloBack(std::shared_ptr< Deps > deps, const int16_t majorVersion=kProtocolMajorVersion, const int16_t minorVersion=kProtocolMinorVersion)
Definition HelloBack.h:47
static const int16_t kProtocolMinorVersion
Protocol minor version number.
Definition ProtocolTypes.h:50
static const int16_t kProtocolMajorVersion
Protocol major version number.
Definition ProtocolTypes.h:39
Definition HelloBack.cpp:16
virtual void incompatible(int major, int minor)
Call when the client is incompatible with the server.
Definition HelloBack.cpp:27
virtual void invalidHello()
Call when invalid hello message received from server.
Definition HelloBack.cpp:22
Deps(std::function< void()> invalidHello, std::function< void(int, int)> incompatible)
Definition HelloBack.h:24