CatapultServer
v0.5.0.1 (Elephant)
|
Basic delta on top of the account state cache. More...
Classes | |
struct | ArrayHeightPairHasher |
struct | HighValueAddressesTuple |
Tuple composed of information about high value addresses that is returned by highValueAddresses. More... | |
Public Types | |
using | ReadOnlyView = ReadOnlyAccountStateCache |
Public Types inherited from catapult::cache::ConstAccessorMixin< TSet, TCacheDescriptor, TValueAdapter > | |
using | const_iterator = detail::CacheFindIterator< TCacheDescriptor, TValueAdapter, SetIteratorType, const ValueType > |
Find (const) iterator. More... | |
Public Types inherited from catapult::cache::MutableAccessorMixin< TSet, TCacheDescriptor, TValueAdapter > | |
using | iterator = detail::CacheFindIterator< TCacheDescriptor, TValueAdapter, SetIteratorType, ValueType > |
Find (mutable) iterator. More... | |
Public Member Functions | |
BasicAccountStateCacheDelta (const AccountStateCacheTypes::BaseSetDeltaPointers &accountStateSets, const AccountStateCacheTypes::Options &options, const model::AddressSet &highValueAddresses) | |
Creates a delta around accountStateSets, options and highValueAddresses. More... | |
model::NetworkIdentifier | networkIdentifier () const |
Gets the network identifier. More... | |
uint64_t | importanceGrouping () const |
Gets the network importance grouping. More... | |
Amount | minHarvesterBalance () const |
Gets the minimum harvester balance. More... | |
MosaicId | harvestingMosaicId () const |
Gets the harvesting mosaic id. More... | |
void | addAccount (const Address &address, Height addressHeight) |
If not present, adds an account to the cache at given height (addressHeight) using address. More... | |
void | addAccount (const Key &publicKey, Height publicKeyHeight) |
void | addAccount (const state::AccountState &accountState) |
If not present, adds an account to the cache using information in accountState. More... | |
void | queueRemove (const Address &address, Height height) |
void | queueRemove (const Key &publicKey, Height height) |
void | commitRemovals () |
Commits all queued removals. More... | |
HighValueAddressesTuple | highValueAddresses () const |
Gets all high value addresses. More... | |
Public Member Functions inherited from catapult::utils::MoveOnly | |
constexpr | MoveOnly ()=default |
Default constructor. More... | |
~MoveOnly ()=default | |
Default destructor. More... | |
MoveOnly (const NonCopyable &)=delete | |
Disabled copy constructor. More... | |
MoveOnly (MoveOnly &&)=default | |
Default move constructor. More... | |
MoveOnly & | operator= (const MoveOnly &)=delete |
Disabled assignment operator. More... | |
MoveOnly & | operator= (MoveOnly &&)=default |
Default move assignment operator. More... | |
Public Member Functions inherited from catapult::cache::ContainsMixin< TSet, TCacheDescriptor > | |
ContainsMixin (const TSet &set) | |
Creates a mixin around set. More... | |
bool | contains (const KeyType &key) const |
Gets a value indicating whether or not the cache contains an element with key. More... | |
Public Member Functions inherited from catapult::cache::ConstAccessorMixin< TSet, TCacheDescriptor, TValueAdapter > | |
ConstAccessorMixin (const TSet &set) | |
Creates a mixin around set. More... | |
const_iterator | find (const KeyType &key) const |
Finds the cache value identified by key. More... | |
Public Member Functions inherited from catapult::cache::MutableAccessorMixin< TSet, TCacheDescriptor, TValueAdapter > | |
MutableAccessorMixin (TSet &set) | |
Creates a mixin around set. More... | |
iterator | find (const KeyType &key) |
Finds the cache value identified by key. More... | |
Public Member Functions inherited from catapult::cache::PatriciaTreeDeltaMixin< TSet, TTree > | |
PatriciaTreeDeltaMixin (TSet &set, const std::shared_ptr< TTree > &pTree) | |
Creates a mixin around delta set and pTree. More... | |
bool | supportsMerkleRoot () const |
Returns true if merkle root is supported. More... | |
std::pair< Hash256, bool > | tryGetMerkleRoot () const |
Tries to get the merkle root if supported. More... | |
void | updateMerkleRoot (Height height) |
Recalculates the merkle root given the specified chain height if supported. More... | |
void | setMerkleRoot (const Hash256 &merkleRoot) |
Private Types | |
template<typename TArray > | |
using | ArrayHeightPair = std::pair< Height, TArray > |
template<typename TArray > | |
using | QueuedRemovalSet = std::unordered_set< ArrayHeightPair< TArray >, ArrayHeightPairHasher< TArray > > |
Private Member Functions | |
BasicAccountStateCacheDelta (const AccountStateCacheTypes::BaseSetDeltaPointers &accountStateSets, const AccountStateCacheTypes::Options &options, const model::AddressSet &highValueAddresses, std::unique_ptr< AccountStateCacheDeltaMixins::KeyLookupAdapter > &&pKeyLookupAdapter) | |
Address | getAddress (const Key &publicKey) |
void | remove (const Address &address, Height height) |
void | remove (const Key &publicKey, Height height) |
Basic delta on top of the account state cache.
|
private |
|
private |
catapult::cache::BasicAccountStateCacheDelta::BasicAccountStateCacheDelta | ( | const AccountStateCacheTypes::BaseSetDeltaPointers & | accountStateSets, |
const AccountStateCacheTypes::Options & | options, | ||
const model::AddressSet & | highValueAddresses | ||
) |
Creates a delta around accountStateSets, options and highValueAddresses.
|
private |
void catapult::cache::BasicAccountStateCacheDelta::addAccount | ( | const Address & | address, |
Height | addressHeight | ||
) |
If not present, adds an account to the cache at given height (addressHeight) using address.
void catapult::cache::BasicAccountStateCacheDelta::addAccount | ( | const Key & | publicKey, |
Height | publicKeyHeight | ||
) |
If not present, adds an account to the cache using publicKey. If public key has not been known earlier, its height is set to publicKeyHeight.
void catapult::cache::BasicAccountStateCacheDelta::addAccount | ( | const state::AccountState & | accountState | ) |
If not present, adds an account to the cache using information in accountState.
void catapult::cache::BasicAccountStateCacheDelta::commitRemovals | ( | ) |
Commits all queued removals.
MosaicId catapult::cache::BasicAccountStateCacheDelta::harvestingMosaicId | ( | ) | const |
Gets the harvesting mosaic id.
BasicAccountStateCacheDelta::HighValueAddressesTuple catapult::cache::BasicAccountStateCacheDelta::highValueAddresses | ( | ) | const |
Gets all high value addresses.
uint64_t catapult::cache::BasicAccountStateCacheDelta::importanceGrouping | ( | ) | const |
Gets the network importance grouping.
Amount catapult::cache::BasicAccountStateCacheDelta::minHarvesterBalance | ( | ) | const |
Gets the minimum harvester balance.
model::NetworkIdentifier catapult::cache::BasicAccountStateCacheDelta::networkIdentifier | ( | ) | const |
Gets the network identifier.
void catapult::cache::BasicAccountStateCacheDelta::queueRemove | ( | const Address & | address, |
Height | height | ||
) |
If height matches the height at which account was added, queues removal of account's address information from the cache, therefore queuing complete removal of the account from the cache.
void catapult::cache::BasicAccountStateCacheDelta::queueRemove | ( | const Key & | publicKey, |
Height | height | ||
) |
If height matches the height at which account was added, queues removal of account's publicKey information from the cache.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |