xrpld
Loading...
Searching...
No Matches
Source.h
1#pragma once
2
3#include <xrpld/peerfinder/PeerfinderManager.h>
4
5#include <boost/system/error_code.hpp>
6
7namespace xrpl::PeerFinder {
8
17class Source
18{
19public:
21 struct Results
22 {
23 explicit Results() = default;
24
25 // error_code on a failure
26 boost::system::error_code error;
27
28 // list of fetched endpoints
30 };
31
32 virtual ~Source() = default;
33 virtual std::string const&
34 name() = 0;
35 virtual void
37 {
38 }
39 virtual void
40 fetch(Results& results, beast::Journal journal) = 0;
41};
42
43} // namespace xrpl::PeerFinder
A generic endpoint for log messages.
Definition Journal.h:38
A static or dynamic source of peer addresses.
Definition Source.h:18
virtual std::string const & name()=0
virtual ~Source()=default
virtual void cancel()
Definition Source.h:36
virtual void fetch(Results &results, beast::Journal journal)=0
std::vector< beast::IP::Endpoint > IPAddresses
Represents a set of addresses.
The results of a fetch.
Definition Source.h:22
boost::system::error_code error
Definition Source.h:26