1#ifndef XRPL_APP_LEDGER_INBOUNDLEDGERS_H_INCLUDED 
    2#define XRPL_APP_LEDGER_INBOUNDLEDGERS_H_INCLUDED 
    4#include <xrpld/app/ledger/InboundLedger.h> 
    6#include <xrpl/protocol/RippleLedgerHash.h> 
Manages the lifetime of inbound ledgers.
 
virtual void clearFailures()=0
 
virtual void acquireAsync(uint256 const &hash, std::uint32_t seq, InboundLedger::Reason reason)=0
 
virtual std::shared_ptr< Ledger const > acquire(uint256 const &hash, std::uint32_t seq, InboundLedger::Reason)=0
 
virtual Json::Value getInfo()=0
 
virtual void logFailure(uint256 const &h, std::uint32_t seq)=0
 
virtual bool gotLedgerData(LedgerHash const &ledgerHash, std::shared_ptr< Peer >, std::shared_ptr< protocol::TMLedgerData >)=0
 
virtual std::size_t cacheSize()=0
 
virtual ~InboundLedgers()=default
 
virtual std::shared_ptr< InboundLedger > find(LedgerHash const &hash)=0
 
virtual std::size_t fetchRate()=0
Returns the rate of historical ledger fetches per minute.
 
virtual bool isFailure(uint256 const &h)=0
 
virtual void gotFetchPack()=0
 
virtual void gotStaleData(std::shared_ptr< protocol::TMLedgerData > packet)=0
 
virtual void onLedgerFetched()=0
Called when a complete ledger is obtained.
 
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
 
std::unique_ptr< InboundLedgers > make_InboundLedgers(Application &app, InboundLedgers::clock_type &clock, beast::insight::Collector::ptr const &collector)