20 #ifndef MIR_FRONTEND_DETAIL_SOCKET_CONNECTION_H_
21 #define MIR_FRONTEND_DETAIL_SOCKET_CONNECTION_H_
25 #include <boost/asio.hpp>
27 #include <sys/types.h>
35 class MessageProcessor;
36 class MessageReceiver;
42 std::shared_ptr<MessageReceiver>
const& message_receiver,
45 std::shared_ptr<MessageProcessor>
const& processor);
49 int id()
const {
return id_; }
54 void on_response_sent(boost::system::error_code
const& error, std::size_t);
55 void on_new_message(
const boost::system::error_code& ec);
56 void on_read_size(
const boost::system::error_code& ec);
58 std::shared_ptr<MessageReceiver>
const message_receiver;
60 std::shared_ptr<Connections<SocketConnection>>
const connections;
61 std::shared_ptr<MessageProcessor> processor;
63 static size_t const header_size = 2;
64 char header[header_size];
65 std::vector<char> body;
All things Mir.
Definition: atomic_callback.h:25
int id() const
Definition: socket_connection.h:49
Definition: connections.h:33
SocketConnection(std::shared_ptr< MessageReceiver > const &message_receiver, int id_, std::shared_ptr< Connections< SocketConnection >> const &connections, std::shared_ptr< MessageProcessor > const &processor)
Definition: socket_connection.h:38
~SocketConnection() noexcept