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