rippled
Loading...
Searching...
No Matches
WorkPlain.h
1#pragma once
2
3#include <xrpld/app/misc/detail/WorkBase.h>
4
5namespace xrpl {
6
7namespace detail {
8
9// Work over TCP/IP
10class WorkPlain : public WorkBase<WorkPlain>, public std::enable_shared_from_this<WorkPlain>
11{
12 friend class WorkBase<WorkPlain>;
13
14public:
16 std::string const& host,
17 std::string const& path,
18 std::string const& port,
19 boost::asio::io_context& ios,
20 endpoint_type const& lastEndpoint,
21 bool lastStatus,
22 callback_type cb);
23 ~WorkPlain() = default;
24
25private:
26 void
27 onConnect(error_code const& ec);
28
31 {
32 return socket_;
33 }
34};
35
36//------------------------------------------------------------------------------
37
39 std::string const& host,
40 std::string const& path,
41 std::string const& port,
42 boost::asio::io_context& ios,
43 endpoint_type const& lastEndpoint,
44 bool lastStatus,
46 : WorkBase(host, path, port, ios, lastEndpoint, lastStatus, cb)
47{
48}
49
50void
52{
53 if (ec)
54 return fail(ec);
55
56 onStart();
57}
58
59} // namespace detail
60
61} // namespace xrpl
void fail(error_code const &ec)
Definition WorkBase.h:162
boost::asio::ip::tcp::endpoint endpoint_type
Definition WorkBase.h:24
boost::system::error_code error_code
Definition WorkBase.h:23
boost::asio::ip::tcp::socket socket_type
Definition WorkBase.h:30
void onConnect(error_code const &ec)
Definition WorkPlain.h:51
WorkPlain(std::string const &host, std::string const &path, std::string const &port, boost::asio::io_context &ios, endpoint_type const &lastEndpoint, bool lastStatus, callback_type cb)
Definition WorkPlain.h:38
socket_type & stream()
Definition WorkPlain.h:30
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
Definition algorithm.h:5