TARAXA
dag_sync_packet_handler.hpp
Go to the documentation of this file.
1 #pragma once
2 
4 
5 namespace taraxa {
6 class TransactionManager;
7 } // namespace taraxa
8 
9 namespace taraxa::network::tarcap {
10 
12  public:
13  DagSyncPacketHandler(const FullNodeConfig& conf, std::shared_ptr<PeersState> peers_state,
14  std::shared_ptr<TimePeriodPacketsStats> packets_stats,
15  std::shared_ptr<PbftSyncingState> pbft_syncing_state, std::shared_ptr<PbftChain> pbft_chain,
16  std::shared_ptr<PbftManager> pbft_mgr, std::shared_ptr<DagManager> dag_mgr,
17  std::shared_ptr<TransactionManager> trx_mgr, std::shared_ptr<DbStorage> db,
18  const addr_t& node_addr, const std::string& logs_prefix = "");
19 
20  // Packet type that is processed by this handler
22 
23  private:
24  virtual void validatePacketRlpFormat(const threadpool::PacketData& packet_data) const override;
25  virtual void process(const threadpool::PacketData& packet_data, const std::shared_ptr<TaraxaPeer>& peer) override;
26 
27  protected:
28  std::shared_ptr<TransactionManager> trx_mgr_{nullptr};
29 };
30 
31 } // namespace taraxa::network::tarcap
Definition: FixedHash.h:35
Definition: dag_sync_packet_handler.hpp:11
std::shared_ptr< TransactionManager > trx_mgr_
Definition: dag_sync_packet_handler.hpp:28
virtual void validatePacketRlpFormat(const threadpool::PacketData &packet_data) const override
Validates packet rlp format - items count.
Definition: dag_sync_packet_handler.cpp:23
static constexpr SubprotocolPacketType kPacketType_
Definition: dag_sync_packet_handler.hpp:21
virtual void process(const threadpool::PacketData &packet_data, const std::shared_ptr< TaraxaPeer > &peer) override
Main packet processing function.
Definition: dag_sync_packet_handler.cpp:29
DagSyncPacketHandler(const FullNodeConfig &conf, std::shared_ptr< PeersState > peers_state, std::shared_ptr< TimePeriodPacketsStats > packets_stats, std::shared_ptr< PbftSyncingState > pbft_syncing_state, std::shared_ptr< PbftChain > pbft_chain, std::shared_ptr< PbftManager > pbft_mgr, std::shared_ptr< DagManager > dag_mgr, std::shared_ptr< TransactionManager > trx_mgr, std::shared_ptr< DbStorage > db, const addr_t &node_addr, const std::string &logs_prefix="")
Definition: dag_sync_packet_handler.cpp:11
ExtSyncingPacketHandler is extended abstract PacketHandler with added functions that are used in pack...
Definition: ext_syncing_packet_handler.hpp:21
Definition: packet_data.hpp:12
Definition: vote_manager.hpp:23
SubprotocolPacketType
SubprotocolPacketType is used in networking layer to differentiate packet types.
Definition: packet_types.hpp:12
@ DagSyncPacket
Definition: packet_types.hpp:23
Definition: config.hpp:8
Definition: config.hpp:24