CatapultServer  v0.5.0.1 (Elephant)
catapult::model::TransactionPluginFactory< Options >::BasicTransactionPluginT< TTransaction, TDerivedTransaction, TPlugin > Class Template Reference
Inheritance diagram for catapult::model::TransactionPluginFactory< Options >::BasicTransactionPluginT< TTransaction, TDerivedTransaction, TPlugin >:
Collaboration diagram for catapult::model::TransactionPluginFactory< Options >::BasicTransactionPluginT< TTransaction, TDerivedTransaction, TPlugin >:

Public Member Functions

 BasicTransactionPluginT (const PublishFunc &publishFunc)
 
EntityType type () const override
 
TransactionAttributes attributes () const override
 
uint64_t calculateRealSize (const TTransaction &transaction) const override
 

Protected Member Functions

void publishImpl (const TTransaction &transaction, NotificationSubscriber &sub) const
 

Private Types

using PublishFunc = consumer< const TDerivedTransaction &, NotificationSubscriber & >
 

Private Attributes

PublishFunc m_publishFunc
 

Member Typedef Documentation

◆ PublishFunc

template<TransactionPluginFactoryOptions Options>
template<typename TTransaction, typename TDerivedTransaction, typename TPlugin>
using catapult::model::TransactionPluginFactory< Options >::BasicTransactionPluginT< TTransaction, TDerivedTransaction, TPlugin >::PublishFunc = consumer<const TDerivedTransaction&, NotificationSubscriber&>
private

Constructor & Destructor Documentation

◆ BasicTransactionPluginT()

template<TransactionPluginFactoryOptions Options>
template<typename TTransaction, typename TDerivedTransaction, typename TPlugin>
catapult::model::TransactionPluginFactory< Options >::BasicTransactionPluginT< TTransaction, TDerivedTransaction, TPlugin >::BasicTransactionPluginT ( const PublishFunc publishFunc)
inlineexplicit

Member Function Documentation

◆ attributes()

template<TransactionPluginFactoryOptions Options>
template<typename TTransaction, typename TDerivedTransaction, typename TPlugin>
TransactionAttributes catapult::model::TransactionPluginFactory< Options >::BasicTransactionPluginT< TTransaction, TDerivedTransaction, TPlugin >::attributes ( ) const
inlineoverride

◆ calculateRealSize()

template<TransactionPluginFactoryOptions Options>
template<typename TTransaction, typename TDerivedTransaction, typename TPlugin>
uint64_t catapult::model::TransactionPluginFactory< Options >::BasicTransactionPluginT< TTransaction, TDerivedTransaction, TPlugin >::calculateRealSize ( const TTransaction &  transaction) const
inlineoverride

◆ publishImpl()

template<TransactionPluginFactoryOptions Options>
template<typename TTransaction, typename TDerivedTransaction, typename TPlugin>
void catapult::model::TransactionPluginFactory< Options >::BasicTransactionPluginT< TTransaction, TDerivedTransaction, TPlugin >::publishImpl ( const TTransaction &  transaction,
NotificationSubscriber sub 
) const
inlineprotected

◆ type()

template<TransactionPluginFactoryOptions Options>
template<typename TTransaction, typename TDerivedTransaction, typename TPlugin>
EntityType catapult::model::TransactionPluginFactory< Options >::BasicTransactionPluginT< TTransaction, TDerivedTransaction, TPlugin >::type ( ) const
inlineoverride

Member Data Documentation

◆ m_publishFunc

template<TransactionPluginFactoryOptions Options>
template<typename TTransaction, typename TDerivedTransaction, typename TPlugin>
PublishFunc catapult::model::TransactionPluginFactory< Options >::BasicTransactionPluginT< TTransaction, TDerivedTransaction, TPlugin >::m_publishFunc
private

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