Joedb 9.1.4
The Journal-Only Embedded Database
Loading...
Searching...
No Matches
Network_Channel.cpp
Go to the documentation of this file.
2
3#include <asio/connect.hpp>
4
5namespace joedb
6{
7 //////////////////////////////////////////////////////////////////////////
9 //////////////////////////////////////////////////////////////////////////
10 (
11 const char *host_name,
12 const char *port_name
13 ):
14 socket(io_context)
15 {
16 asio::ip::tcp::resolver resolver(io_context);
17 asio::connect
18 (
19 socket,
20 resolver.resolve
21 (
22 asio::ip::tcp::v4(),
23 host_name,
24 port_name,
25 asio::ip::tcp::resolver::flags()
26 )
27 );
28 socket.set_option(asio::ip::tcp::no_delay(true));
29 }
30
31 //////////////////////////////////////////////////////////////////////////
32 size_t Network_Channel::write_some(const char *data, size_t size)
33 //////////////////////////////////////////////////////////////////////////
34 {
35 return socket.write_some(asio::buffer(data, size));
36 }
37
38 //////////////////////////////////////////////////////////////////////////
39 size_t Network_Channel::read_some(char *data, size_t size)
40 //////////////////////////////////////////////////////////////////////////
41 {
42 return socket.read_some(asio::buffer(data, size));
43 }
44
45 //////////////////////////////////////////////////////////////////////////
47 //////////////////////////////////////////////////////////////////////////
48}
size_t write_some(const char *data, size_t size) override
asio::io_context io_context
size_t read_some(char *data, size_t size) override
Network_Channel(const char *host_name, const char *port_name)
asio::ip::tcp::socket socket
~Network_Channel() override
Definition Blob.h:7