|
Clio
develop
The XRP Ledger API server.
|
Concrete implementation of LedgerCacheLoadingStateInterface. More...
#include <LedgerCacheLoadingState.hpp>


Public Member Functions | |
| LedgerCacheLoadingState (LedgerCacheInterface const &cache) | |
| Construct a new LedgerCacheLoadingState. | |
| void | allowLoading () override |
| Allow this node to begin loading the cache from the backend. | |
| bool | isLoadingAllowed () const override |
| Check whether loading has been permitted. | |
| void | waitForLoadingAllowed () const override |
| Block until loading is permitted. | |
| bool | isCurrentlyLoading () const override |
| Check whether the cache is currently being loaded from the backend. | |
| std::unique_ptr< LedgerCacheLoadingStateInterface > | clone () const override |
| Create a clone that shares the same loading-allowed flag. | |
Concrete implementation of LedgerCacheLoadingStateInterface.
Stores a reference to the ledger cache to delegate isCurrentlyLoading(), and a shared atomic flag for the loading-allowed coordination.
|
explicit |
Construct a new LedgerCacheLoadingState.
| cache | The cache whose loading status will be monitored |
|
overridevirtual |
Allow this node to begin loading the cache from the backend.
Implements data::LedgerCacheLoadingStateInterface.
|
nodiscardoverridevirtual |
Create a clone that shares the same loading-allowed flag.
isLoadingAllowed_ atomic, so allowLoading() on any copy is visible to all clones. Implements data::LedgerCacheLoadingStateInterface.
|
nodiscardoverridevirtual |
Check whether the cache is currently being loaded from the backend.
Implements data::LedgerCacheLoadingStateInterface.
|
nodiscardoverridevirtual |
Check whether loading has been permitted.
Implements data::LedgerCacheLoadingStateInterface.
|
overridevirtual |
Block until loading is permitted.
Implements data::LedgerCacheLoadingStateInterface.