14class WsServer :
public std::enable_shared_from_this<WsServer>,
public jsonrpc::AbstractServerConnector {
16 WsServer(boost::asio::io_context& ioc, tcp::endpoint endpoint, std::shared_ptr<metrics::JsonRpcMetrics> metrics);
29 void newDagBlock(
const std::shared_ptr<DagBlock>& blk);
36 virtual std::shared_ptr<WsSession>
createSession(tcp::socket&& socket) = 0;
43 void on_accept(beast::error_code ec, tcp::socket socket);
44 boost::asio::io_context&
ioc_;
52 std::shared_ptr<metrics::JsonRpcMetrics>
metrics_;
Definition ws_server.hpp:14
void on_accept(beast::error_code ec, tcp::socket socket)
Definition ws_server.cpp:248
virtual ~WsServer()
Definition ws_server.cpp:232
WsServer & operator=(WsServer &&)=delete
logger::Logger logger_
Definition ws_server.hpp:49
void newEthBlock(const ::taraxa::final_chain::BlockHeader &payload, const TransactionHashes &trx_hashes)
Definition ws_server.cpp:274
void newDagBlockFinalized(const blk_hash_t &blk, uint64_t period)
Definition ws_server.cpp:310
virtual bool StopListening()
Definition ws_server.hpp:39
void newLogs(const ::taraxa::final_chain::BlockHeader &payload, TransactionHashes trx_hashes, const TransactionReceipts &receipts)
Definition ws_server.cpp:288
boost::shared_mutex sessions_mtx_
Definition ws_server.hpp:48
virtual bool StartListening()
Definition ws_server.hpp:38
void newDagBlock(const std::shared_ptr< DagBlock > &blk)
Definition ws_server.cpp:300
WsServer & operator=(const WsServer &)=delete
uint32_t numberOfSessions()
Definition ws_server.cpp:356
WsServer(const WsServer &)=delete
void newPbftBlockExecuted(const PbftBlock &blk, const std::vector< blk_hash_t > &finalized_dag_blk_hashes)
Definition ws_server.cpp:323
std::shared_ptr< metrics::JsonRpcMetrics > metrics_
Definition ws_server.hpp:52
void newPillarBlockData(const pillar_chain::PillarBlockData &pillar_block_data)
Definition ws_server.cpp:345
void do_accept()
Definition ws_server.cpp:243
void newPendingTransaction(const trx_hash_t &trx_hash)
Definition ws_server.cpp:334
friend WsSession
Definition ws_server.hpp:53
tcp::acceptor acceptor_
Definition ws_server.hpp:45
boost::asio::io_context & ioc_
Definition ws_server.hpp:44
std::atomic< bool > stopped_
Definition ws_server.hpp:47
std::list< std::shared_ptr< WsSession > > sessions_
Definition ws_server.hpp:46
void run()
Definition ws_server.cpp:230
virtual std::shared_ptr< WsSession > createSession(tcp::socket &&socket)=0
WsServer(WsServer &&)=delete
The PbftBlock class is a PBFT block class that includes PBFT block hash, previous PBFT block hash,...
Definition pbft_block.hpp:22
Definition pillar_block.hpp:143
std::shared_ptr< spdlog::logger > Logger
Definition logging.hpp:12
Definition http_processor.hpp:11
std::vector< TransactionReceipt > TransactionReceipts
Definition receipt.hpp:35
std::vector< trx_hash_t > TransactionHashes
Definition transaction.hpp:87