abstract command handlers away from proxy server

This commit is contained in:
Martin Michelsen
2022-04-02 21:39:45 -07:00
parent 522dac9a03
commit 9c33c2de46
6 changed files with 1096 additions and 995 deletions
+10 -2
View File
@@ -35,6 +35,9 @@ public:
struct LinkedSession {
ProxyServer* server;
uint64_t id;
std::string client_name;
std::string server_name;
PrefixedLogger log;
std::unique_ptr<struct event, void(*)(struct event*)> timeout_event;
@@ -126,8 +129,13 @@ public:
void on_stream_error(short events, bool is_server_stream);
void on_timeout();
void send_to_end(const void* data, size_t size, bool to_server);
void send_to_end(const std::string& data, bool to_server);
void send_to_end(bool to_server, uint16_t command, uint32_t flag,
const void* data = nullptr, size_t size = 0);
void send_to_end(bool to_server, uint16_t command, uint32_t flag,
const std::string& data);
void send_to_end_with_header(
bool to_server, const void* data, size_t size);
void send_to_end_with_header(bool to_server, const std::string& data);
void disconnect();