1#ifndef joedb_asio_Server_declared 
    2#define joedb_asio_Server_declared 
    7#include <boost/asio/thread_pool.hpp> 
    8#include <boost/asio/local/stream_protocol.hpp> 
    9#include <boost/asio/signal_set.hpp> 
   10#include <boost/asio/awaitable.hpp> 
   11#include <boost/asio/strand.hpp> 
   23   void log(std::string_view s);
 
   30   boost::asio::local::stream_protocol::endpoint 
endpoint;
 
   31   boost::asio::local::stream_protocol::acceptor 
acceptor;
 
   39     boost::asio::local::stream_protocol::socket 
socket;
 
   40     boost::asio::strand<boost::asio::thread_pool::executor_type> 
strand;
 
   43     boost::asio::awaitable<size_t> 
read_buffer(
size_t offset, 
size_t size);
 
   50      boost::asio::local::stream_protocol::socket &&
socket 
   53     void log(std::string_view s);
 
   55     virtual boost::asio::awaitable<void> 
run() = 0;
 
 
   63    boost::asio::local::stream_protocol::socket &&socket
 
   67   int64_t session_id = 0;
 
   69   boost::asio::awaitable<void> listener();
 
 
virtual boost::asio::awaitable< void > run()=0
void log(std::string_view s)
boost::asio::awaitable< void > write_buffer()
boost::asio::awaitable< size_t > read_buffer(size_t offset, size_t size)
boost::asio::strand< boost::asio::thread_pool::executor_type > strand
boost::asio::local::stream_protocol::socket socket
Superclass for asio servers.
boost::asio::local::stream_protocol::endpoint endpoint
const std::string endpoint_path
virtual std::unique_ptr< Session > new_session(boost::asio::local::stream_protocol::socket &&socket)=0
void log(std::string_view s)
int get_log_level() const
boost::asio::local::stream_protocol::acceptor acceptor
boost::asio::signal_set interrupt_signals
boost::asio::thread_pool thread_pool
const std::string & get_endpoint_path() const
virtual void cleanup_after_join()