|
xrpld
|
#include <TransactionAcquire.h>


Public Types | |
| using | pointer = std::shared_ptr<TransactionAcquire> |
Public Member Functions | |
| TransactionAcquire (Application &app, uint256 const &hash, std::unique_ptr< PeerSet > peerSet) | |
| ~TransactionAcquire () override=default | |
| SHAMapAddNode | takeNodes (std::vector< std::pair< SHAMapNodeID, SHAMapTreeNodePtr > > data, std::shared_ptr< Peer > const &peer) |
| void | init (int startPeers) |
| void | stillNeed () |
| virtual void | cancel () |
| Cancel the task by marking it as failed if the task is not done. | |
| T | shared_from_this (T... args) |
| T | weak_from_this (T... args) |
Public Attributes | |
| friend | Object |
Protected Types | |
| using | ScopedLockType = std::unique_lock<std::recursive_mutex> |
Protected Member Functions | |
| void | setTimer (ScopedLockType &) |
| Schedule a call to queueJob() after timerInterval_. | |
| void | queueJob (ScopedLockType &) |
| Queue a job to call invokeOnTimer(). | |
| bool | isDone () const |
Protected Attributes | |
| Application & | app_ |
| beast::Journal | journal_ |
| std::recursive_mutex | mtx_ |
| uint256 const | hash_ |
| The hash of the object (in practice, always a ledger) we are trying to fetch. | |
| int | timeouts_ {0} |
| bool | complete_ {false} |
| bool | failed_ {false} |
| bool | progress_ {false} |
| Whether forward progress has been made. | |
| std::chrono::milliseconds | timerInterval_ |
| The minimum time to wait between calls to execute(). | |
| QueueJobParameter | queueJobParameter_ |
Private Member Functions | |
| void | onTimer (bool progress, ScopedLockType &peerSetLock) override |
| Hook called from invokeOnTimer(). | |
| void | done () |
| void | addPeers (std::size_t limit) |
| void | trigger (std::shared_ptr< Peer > const &) |
| std::weak_ptr< TimeoutCounter > | pmDowncast () override |
| Return a weak pointer to this. | |
| void | invokeOnTimer () |
| Calls onTimer() if in the right state. | |
Static Private Member Functions | |
| static auto & | getCounter () noexcept |
Private Attributes | |
| std::shared_ptr< SHAMap > | map_ |
| bool | haveRoot_ {false} |
| std::unique_ptr< PeerSet > | peerSet_ |
| boost::asio::basic_waitable_timer< std::chrono::steady_clock > | timer_ |
Definition at line 23 of file TransactionAcquire.h.
Definition at line 28 of file TransactionAcquire.h.
|
protectedinherited |
Definition at line 71 of file TimeoutCounter.h.
| xrpl::TransactionAcquire::TransactionAcquire | ( | Application & | app, |
| uint256 const & | hash, | ||
| std::unique_ptr< PeerSet > | peerSet ) |
Definition at line 37 of file TransactionAcquire.cpp.
|
overridedefault |
| SHAMapAddNode xrpl::TransactionAcquire::takeNodes | ( | std::vector< std::pair< SHAMapNodeID, SHAMapTreeNodePtr > > | data, |
| std::shared_ptr< Peer > const & | peer ) |
Definition at line 173 of file TransactionAcquire.cpp.
| void xrpl::TransactionAcquire::init | ( | int | startPeers | ) |
Definition at line 248 of file TransactionAcquire.cpp.
| void xrpl::TransactionAcquire::stillNeed | ( | ) |
Definition at line 258 of file TransactionAcquire.cpp.
|
overrideprivatevirtual |
Hook called from invokeOnTimer().
Implements xrpl::TimeoutCounter.
Definition at line 82 of file TransactionAcquire.cpp.
|
private |
Definition at line 54 of file TransactionAcquire.cpp.
|
private |
Definition at line 239 of file TransactionAcquire.cpp.
|
private |
Definition at line 104 of file TransactionAcquire.cpp.
|
overrideprivatevirtual |
Return a weak pointer to this.
Implements xrpl::TimeoutCounter.
Definition at line 98 of file TransactionAcquire.cpp.
|
virtualinherited |
Cancel the task by marking it as failed if the task is not done.
Definition at line 105 of file TimeoutCounter.cpp.
|
protectedinherited |
Schedule a call to queueJob() after timerInterval_.
Definition at line 40 of file TimeoutCounter.cpp.
|
protectedinherited |
Queue a job to call invokeOnTimer().
Definition at line 58 of file TimeoutCounter.cpp.
|
protectedinherited |
Definition at line 112 of file TimeoutCounter.h.
|
privateinherited |
Calls onTimer() if in the right state.
Only called by queueJob().
Definition at line 80 of file TimeoutCounter.cpp.
|
staticprivatenoexceptinherited |
Definition at line 113 of file CountedObject.h.
|
private |
Definition at line 45 of file TransactionAcquire.h.
|
private |
Definition at line 46 of file TransactionAcquire.h.
|
private |
Definition at line 47 of file TransactionAcquire.h.
|
protectedinherited |
Definition at line 119 of file TimeoutCounter.h.
|
protectedinherited |
Definition at line 120 of file TimeoutCounter.h.
|
mutableprotectedinherited |
Definition at line 121 of file TimeoutCounter.h.
|
protectedinherited |
The hash of the object (in practice, always a ledger) we are trying to fetch.
Definition at line 127 of file TimeoutCounter.h.
|
protectedinherited |
Definition at line 128 of file TimeoutCounter.h.
|
protectedinherited |
Definition at line 129 of file TimeoutCounter.h.
|
protectedinherited |
Definition at line 130 of file TimeoutCounter.h.
|
protectedinherited |
Whether forward progress has been made.
Definition at line 134 of file TimeoutCounter.h.
|
protectedinherited |
The minimum time to wait between calls to execute().
Definition at line 138 of file TimeoutCounter.h.
|
protectedinherited |
Definition at line 140 of file TimeoutCounter.h.
|
privateinherited |
Definition at line 150 of file TimeoutCounter.h.
|
inherited |
Definition at line 138 of file CountedObject.h.