CatapultServer  v0.5.0.1 (Elephant)
catapult::cache::BasicAggregateTransactionsCache< TCacheTraits, TAggregateCacheModifier > Class Template Reference

A basic aggregate transactions cache that delegates to a wrapped cache and raises notifications on a subscriber. More...

Inheritance diagram for catapult::cache::BasicAggregateTransactionsCache< TCacheTraits, TAggregateCacheModifier >:
Collaboration diagram for catapult::cache::BasicAggregateTransactionsCache< TCacheTraits, TAggregateCacheModifier >:

Public Member Functions

 BasicAggregateTransactionsCache (CacheType &cache, std::unique_ptr< ChangeSubscriberType > &&pChangeSubscriber)
 Creates an aggregate transactions cache that delegates to cache and publishes transaction changes to pChangeSubscriber. More...
 
CacheModifierProxyType modifier () override
 

Private Types

using CacheType = typename TCacheTraits::CacheType
 
using ChangeSubscriberType = typename TCacheTraits::ChangeSubscriberType
 
using CacheModifierProxyType = typename TCacheTraits::CacheModifierProxyType
 

Private Attributes

CacheTypem_cache
 
std::unique_ptr< ChangeSubscriberTypem_pChangeSubscriber
 

Detailed Description

template<typename TCacheTraits, typename TAggregateCacheModifier>
class catapult::cache::BasicAggregateTransactionsCache< TCacheTraits, TAggregateCacheModifier >

A basic aggregate transactions cache that delegates to a wrapped cache and raises notifications on a subscriber.

Member Typedef Documentation

◆ CacheModifierProxyType

template<typename TCacheTraits , typename TAggregateCacheModifier >
using catapult::cache::BasicAggregateTransactionsCache< TCacheTraits, TAggregateCacheModifier >::CacheModifierProxyType = typename TCacheTraits::CacheModifierProxyType
private

◆ CacheType

template<typename TCacheTraits , typename TAggregateCacheModifier >
using catapult::cache::BasicAggregateTransactionsCache< TCacheTraits, TAggregateCacheModifier >::CacheType = typename TCacheTraits::CacheType
private

◆ ChangeSubscriberType

template<typename TCacheTraits , typename TAggregateCacheModifier >
using catapult::cache::BasicAggregateTransactionsCache< TCacheTraits, TAggregateCacheModifier >::ChangeSubscriberType = typename TCacheTraits::ChangeSubscriberType
private

Constructor & Destructor Documentation

◆ BasicAggregateTransactionsCache()

template<typename TCacheTraits , typename TAggregateCacheModifier >
catapult::cache::BasicAggregateTransactionsCache< TCacheTraits, TAggregateCacheModifier >::BasicAggregateTransactionsCache ( CacheType cache,
std::unique_ptr< ChangeSubscriberType > &&  pChangeSubscriber 
)
inline

Creates an aggregate transactions cache that delegates to cache and publishes transaction changes to pChangeSubscriber.

Member Function Documentation

◆ modifier()

template<typename TCacheTraits , typename TAggregateCacheModifier >
CacheModifierProxyType catapult::cache::BasicAggregateTransactionsCache< TCacheTraits, TAggregateCacheModifier >::modifier ( )
inlineoverride

Member Data Documentation

◆ m_cache

template<typename TCacheTraits , typename TAggregateCacheModifier >
CacheType& catapult::cache::BasicAggregateTransactionsCache< TCacheTraits, TAggregateCacheModifier >::m_cache
private

◆ m_pChangeSubscriber

template<typename TCacheTraits , typename TAggregateCacheModifier >
std::unique_ptr<ChangeSubscriberType> catapult::cache::BasicAggregateTransactionsCache< TCacheTraits, TAggregateCacheModifier >::m_pChangeSubscriber
private

The documentation for this class was generated from the following file: