#pragma once #include "ConnectedClient.h" namespace ts { namespace server { class InternalClient : public ConnectedClient { public: InternalClient(sql::SqlManager*, const std::shared_ptr&, std::string, bool); ~InternalClient(); void setSharedLock(const std::shared_ptr& _this){ assert(_this.get() == this); this->_this = _this; } void sendCommand(const ts::Command &command, bool low) override; void sendCommand(const ts::command_builder &command, bool low) override; bool closeConnection(const std::chrono::system_clock::time_point& timeout = std::chrono::system_clock::time_point()) override; bool disconnect(const std::string &reason) override; protected: void tick(const std::chrono::system_clock::time_point &time) override; }; } }