#include "subscription_fwd.hpp"


Public Types | |
| using | Dispatcher = subscription::IDispatcher |
Public Member Functions | |
| SubscriptionManager (DispatcherPtr dispatcher) | |
| void | dispose () |
| template<typename EventKey , typename... Args> | |
| auto | getEngine () |
| template<typename EventKey , typename... Args> | |
| void | notify (const EventKey &key, Args const &... args) |
| template<typename EventKey , typename... Args> | |
| void | notifyDelayed (std::chrono::microseconds timeout, const EventKey &key, Args const &... args) |
| DispatcherPtr | dispatcher () const |
Class-aggregator that keeps all event engines inside. On notification it selects the appropriate engine and calls notification in it.
| kHandlersCount | number of supported thread handlers |
| kPoolSize | number of threads in thread pool |
| using iroha::subscription::SubscriptionManager< kHandlersCount, kPoolSize >::Dispatcher = subscription::IDispatcher |
|
inline |
|
inline |
Getter to retrieve a dispatcher.
|
inline |
Detaches the dispatcher from all engines and stops thread handlers execution.

|
inline |
Method returns the engine corresponding to current arguments set transmission.
| EventKey | typeof event enum |
| Args | arguments list of transmitted event data types |
To be sure IDisposable is the first base class, because of later cast

|
inline |
Make event notification to subscribers that are listening to this event
| EventKey | typeof event enum |
| Args | arguments list of transmitted event data types |
| key | event key |
| args | transmitted data |

|
inline |
Make event notification to subscribers that are listening this event after a delay
| EventKey | typeof event enum |
| Args | arguments list of transmitted event data types |
| timeout | delay before subscribers will be notified |
| key | event key |
| args | transmitted data |
