22#include "etlng/InitialLoadObserverInterface.hpp"
23#include "util/log/Logger.hpp"
25#include <grpcpp/support/status.h>
26#include <org/xrpl/rpc/v1/get_ledger.pb.h>
27#include <xrpl/proto/org/xrpl/rpc/v1/xrp_ledger.grpc.pb.h>
35namespace etlng::impl {
39 std::unique_ptr<org::xrpl::rpc::v1::XRPLedgerAPIService::Stub> stub_;
42 GrpcSource(std::string
const& ip, std::string
const& grpcPort);
55 std::pair<grpc::Status, org::xrpl::rpc::v1::GetLedgerResponse>
56 fetchLedger(uint32_t sequence,
bool getObjects =
true,
bool getObjectNeighbors =
false);
66 std::pair<std::vector<std::string>,
bool>
Definition GrpcSource.hpp:37
std::pair< grpc::Status, org::xrpl::rpc::v1::GetLedgerResponse > fetchLedger(uint32_t sequence, bool getObjects=true, bool getObjectNeighbors=false)
Fetch data for a specific ledger.
Definition GrpcSource.cpp:79
std::pair< std::vector< std::string >, bool > loadInitialLedger(uint32_t sequence, uint32_t numMarkers, etlng::InitialLoadObserverInterface &observer)
Download a ledger in full.
Definition GrpcSource.cpp:107
A simple thread-safe logger for the channel specified in the constructor.
Definition Logger.hpp:110
The interface for observing the initial ledger load.
Definition InitialLoadObserverInterface.hpp:36