117 std::function<void(std::string&&)>
send_;
Definition subscriptions.hpp:64
static constexpr SubscriptionType type
Definition subscriptions.hpp:67
SubscriptionType getType() const override
Definition subscriptions.hpp:68
std::string processPayload(Json::Value payload) const override
Definition subscriptions.cpp:85
DagBlockFinalizedSubscription(int id)
Definition subscriptions.hpp:66
Definition subscriptions.hpp:45
static constexpr SubscriptionType type
Definition subscriptions.hpp:48
DagBlocksSubscription(int id, bool hash_only=false)
Definition subscriptions.hpp:47
SubscriptionType getType() const override
Definition subscriptions.hpp:49
bool full_data_
Definition subscriptions.hpp:53
std::string processPayload(Json::Value payload) const override
Definition subscriptions.cpp:74
Definition subscriptions.hpp:36
static constexpr SubscriptionType type
Definition subscriptions.hpp:39
HeadsSubscription(int id)
Definition subscriptions.hpp:38
SubscriptionType getType() const override
Definition subscriptions.hpp:41
std::string processPayload(Json::Value payload) const override
Definition subscriptions.cpp:70
Definition subscriptions.hpp:95
rpc::eth::LogFilter getFilter() const
Definition subscriptions.hpp:101
SubscriptionType getType() const override
Definition subscriptions.hpp:99
rpc::eth::LogFilter filter_
Definition subscriptions.hpp:104
std::string processPayload(Json::Value payload) const override
Definition subscriptions.cpp:103
static constexpr SubscriptionType type
Definition subscriptions.hpp:98
LogsSubscription(int id, rpc::eth::LogFilter &&filter)
Definition subscriptions.hpp:97
Definition subscriptions.hpp:72
static constexpr SubscriptionType type
Definition subscriptions.hpp:75
SubscriptionType getType() const override
Definition subscriptions.hpp:76
std::string processPayload(Json::Value payload) const override
Definition subscriptions.cpp:89
PbftBlockExecutedSubscription(int id, bool full_block=false)
Definition subscriptions.hpp:74
bool full_block_
Definition subscriptions.hpp:80
Definition subscriptions.hpp:83
PillarBlockSubscription(int id, bool include_signatures=false)
Definition subscriptions.hpp:85
std::string processPayload(Json::Value payload) const override
Definition subscriptions.cpp:96
SubscriptionType getType() const override
Definition subscriptions.hpp:88
static constexpr SubscriptionType type
Definition subscriptions.hpp:87
bool include_signatures_
Definition subscriptions.hpp:92
Definition subscriptions.hpp:24
virtual SubscriptionType getType() const =0
virtual ~Subscription()=default
virtual std::string processPayload(Json::Value payload) const =0
Subscription(int id)
Definition subscriptions.hpp:26
int getId() const
Definition subscriptions.hpp:29
int id_
Definition subscriptions.hpp:33
Definition subscriptions.hpp:107
void process(SubscriptionType type, const Json::Value &payload)
Definition subscriptions.cpp:31
Subscriptions(std::function< void(std::string &&)> send)
Definition subscriptions.hpp:109
std::mutex subscriptions_mutex_
Definition subscriptions.hpp:120
std::map< uint64_t, std::shared_ptr< Subscription > > subscriptions_
Definition subscriptions.hpp:118
std::map< SubscriptionType, std::list< uint64_t > > subscriptions_by_type_
Definition subscriptions.hpp:119
bool removeSubscription(int id)
Definition subscriptions.cpp:18
int addSubscription(std::shared_ptr< Subscription > subscription)
Definition subscriptions.cpp:11
void processLogs(const final_chain::BlockHeader &header, TransactionHashes trx_hashes, const TransactionReceipts &receipts)
Definition subscriptions.cpp:36
std::function< void(std::string &&)> send_
Definition subscriptions.hpp:117
Definition subscriptions.hpp:56
static constexpr SubscriptionType type
Definition subscriptions.hpp:59
SubscriptionType getType() const override
Definition subscriptions.hpp:60
std::string processPayload(Json::Value payload) const override
Definition subscriptions.cpp:81
TransactionsSubscription(int id)
Definition subscriptions.hpp:58
Definition http_processor.hpp:11
std::vector< TransactionReceipt > TransactionReceipts
Definition receipt.hpp:35
std::vector< trx_hash_t > TransactionHashes
Definition transaction.hpp:87
Definition LogFilter.hpp:8
SubscriptionType
Definition subscriptions.hpp:12