20 #ifndef RIPPLE_APP_LEDGER_INBOUNDTRANSACTIONS_H_INCLUDED
21 #define RIPPLE_APP_LEDGER_INBOUNDTRANSACTIONS_H_INCLUDED
23 #include <ripple/beast/clock/abstract_clock.h>
24 #include <ripple/overlay/Peer.h>
25 #include <ripple/shamap/SHAMap.h>
std::unique_ptr< InboundTransactions > make_InboundTransactions(Application &app, beast::insight::Collector::ptr const &collector, std::function< void(std::shared_ptr< SHAMap > const &, bool)> gotSet)
virtual std::shared_ptr< SHAMap > getSet(uint256 const &setHash, bool acquire)=0
Find and return a transaction set, or nullptr if it is missing.
InboundTransactions & operator=(InboundTransactions const &)=delete
bool set(T &target, std::string const &name, Section const §ion)
Set a value from a configuration Section If the named value is not found or doesn't parse as a T,...
InboundTransactions()=default
virtual void newRound(std::uint32_t seq)=0
Informs the container if a new consensus round.
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
virtual ~InboundTransactions()=0
virtual void giveSet(uint256 const &setHash, std::shared_ptr< SHAMap > const &set, bool acquired)=0
Add a transaction set.
virtual void gotData(uint256 const &setHash, std::shared_ptr< Peer > peer, std::shared_ptr< protocol::TMLedgerData > message)=0
Add a transaction set from a LedgerData message.
Manages the acquisition and lifetime of transaction sets.