CatapultServer
v0.5.0.1 (Elephant)
|
Go to the documentation of this file.
24 namespace catapult {
namespace mongo {
namespace plugins {
size_t FindDescendants(const MultisigCacheTypes::CacheReadOnlyType &cache, const Key &key, utils::KeySet &descendantKeys)
Definition: MultisigCacheUtils.cpp:60
static constexpr auto Id_Property_Name
Definition: MongoAccountRestrictionCacheStorage.cpp:33
DEFINE_STATEFUL_VALIDATOR(EligibleHarvester, [](const auto ¬ification, const auto &context) { cache::ImportanceView view(context.Cache.template sub< cache::AccountStateCache >());return view.canHarvest(notification.Signer, context.Height) ? ValidationResult::Success :Failure_Core_Block_Harvester_Ineligible;})
const Key & m_multisigAccountKey
Definition: ModifyMultisigCosignersObserver.cpp:74
typename BasicMultisigCache ::CacheReadOnlyType CacheReadOnlyType
Definition: SynchronizedCache.h:207
cache::MultisigCacheDelta::iterator m_multisigIter
Definition: ModifyMultisigCosignersObserver.cpp:75
size_t FindAncestors(const MultisigCacheTypes::CacheReadOnlyType &cache, const Key &key, utils::KeySet &ancestorKeys)
Definition: MultisigCacheUtils.cpp:56
const cache::ReadOnlyCatapultCache & Cache
Catapult cache.
Definition: ValidatorContext.h:62
uint8_t m_maxMultisigDepth
Definition: ModifyMultisigLoopAndLevelValidator.cpp:59
PLUGIN_API void RegisterMongoSubsystem(catapult::mongo::MongoPluginManager &manager)
Entry point for registering a dynamic module with manager.
Definition: MongoAccountLinkPlugin.cpp:25
ValidationResult
Enumeration of all possible validation results.
Definition: ValidationResult.h:51
model::AccountAddressNotification Notification
Definition: AddressValidator.cpp:27
PLUGIN_API std::unique_ptr< MongoTransactionPlugin > CreateAccountLinkTransactionMongoPlugin()
Creates a mongo accoult link transaction plugin.
DEFINE_OBSERVER(AccountAddress, model::AccountAddressNotification, [](const auto ¬ification, const auto &context) { DefaultAccountVisitor visitor(context);visitor.visit(notification.Address);})
const TCache::CacheReadOnlyType & sub() const
Gets a specific sub cache read-only view.
Definition: ReadOnlyCatapultCache.h:35
state::MultisigEntry & m_multisigEntry
Definition: ModifyMultisigCosignersObserver.cpp:76
static constexpr auto Collection_Name
Definition: MongoAccountRestrictionCacheStorage.cpp:32
#define MAKE_STATEFUL_VALIDATOR(NAME, HANDLER)
Definition: ValidatorTypes.h:123
Synchronized cache composed of multisig information.
Definition: MultisigCache.h:33
void addTransactionSupport(std::unique_ptr< MongoTransactionPlugin > &&pTransactionPlugin)
Adds support for a transaction described by pTransactionPlugin.
Definition: MongoPluginManager.h:53
DECLARE_STATEFUL_VALIDATOR(Address, Notification)(model
Definition: AddressValidator.cpp:29
model::TransactionNotification Notification
Definition: CompletedAggregateObserver.cpp:29
Contextual information passed to stateful validators.
Definition: ValidatorContext.h:32
CosignatoryModificationType
Cosignatory modification type.
Definition: ModifyMultisigAccountTransaction.h:30
#define PLUGIN_API
Definition: plugins.h:30
A manager for registering mongo plugins.
Definition: MongoPluginManager.h:32
cache::MultisigCacheDelta & m_multisigCache
Definition: ModifyMultisigCosignersObserver.cpp:73
ArraySet< Key > KeySet
A key set.
Definition: ArraySet.h:64
#define DEFINE_MONGO_FLAT_CACHE_STORAGE(NAME, TRAITS_NAME)
Defines a mongo flat cache storage with NAME using TRAITS_NAME.
Definition: extensions/mongo/src/CacheStorageInclude.h:41
NetworkIdentifier
Possible network identifiers.
Definition: NetworkInfo.h:45
bsoncxx::document::value ToDbModel(const state::HashLockInfo &hashLockInfo, const Address &accountAddress)
Maps a hashLockInfo and accountAddress to the corresponding db model value.
Definition: HashLockInfoMapper.cpp:40
ArrayPointerSet< Key > KeyPointerSet
A key pointer set.
Definition: ArraySet.h:73
Definition: AddressExtractionExtension.cpp:28
Notification of use of an account address.
Definition: Notifications.h:57
bsoncxx::types::b_binary ToBinary(const uint8_t *pData, size_t size)
Converts raw array (pData) of size elements into bson binary type.
Definition: MapperUtils.cpp:30
const cache::MultisigCache::CacheReadOnlyType & m_multisigCache
Definition: ModifyMultisigLoopAndLevelValidator.cpp:58
DEFINE_STATELESS_VALIDATOR(TransactionFee, [](const auto ¬ification) { if(notification.Fee > notification.MaxFee) return Failure_Core_Invalid_Transaction_Fee;constexpr auto Max_Raw_Block_Fee_Multiplier=static_cast< uint64_t >(std::numeric_limits< BlockFeeMultiplier::ValueType >::max());return notification.MaxFee.unwrap() > Max_Raw_Block_Fee_Multiplier *notification.TransactionSize ? Failure_Core_Invalid_Transaction_Fee :ValidationResult::Success;})
detail::CacheFindIterator< TCacheDescriptor, TValueAdapter, SetIteratorType, ValueType > iterator
Find (mutable) iterator.
Definition: CacheMixins.h:230
utils::ByteArray< Key_Size, Key_tag > Key
Definition: src/catapult/types.h:41
DECLARE_MONGO_CACHE_STORAGE(HashLockInfo)
Creates a mongo hash lock info cache storage around database, bulkWriter and networkIdentifier.