Skip to content

eth::EthWatchServiceConfig

Production eth-watch orchestration config.

#include <eth_watch_service.hpp>

Public Attributes

Name
EthWatchConnectionConfig connection
EthPeerQueueConfig peer_queue
std::vector< discv4::ChainPeerConfig > chains
std::vector< EthWatchEventSpec > watches
EthWatchDiscoveryMode discovery_mode
bool enable_discv4_fallback
bool enable_enr_tree_discovery
bool attach_peer_dialer
discv4::discv4Config discovery
discv5::discv5Config discv5_discovery
std::function< discv4::DialFn(const discv4::ChainPeerConfig &)> dial_fn_factory
Optional test seam for replacing live RLPx dialing.
std::function< std::shared_ptr< discv4::discv4_client >(boost::asio::io_context &, const discv4::discv4Config &)> discovery_client_factory
Optional test seam for replacing live discv4 client construction/startup.
std::function< std::shared_ptr< discv5::discv5_client >(boost::asio::io_context &, const discv5::discv5Config &)> discv5_client_factory
Optional test seam for replacing live discv5 client construction/startup.
std::function< std::vector< std::string >(const discv4::ChainPeerConfig &, const std::vector< std::string > &)> enr_tree_resolver
Optional test seam for resolving configured ENR trees to ENR URI seeds.
std::function< bool(boost::asio::io_context &, const discv4::ChainPeerConfig &, std::shared_ptr< EthPeerQueue >)> discv4_fallback_starter
Optional test seam for replacing live discv4 fallback startup.
std::function< bool(boost::asio::io_context &, const discv4::ChainPeerConfig &, std::shared_ptr< EthPeerQueue >, const std::vector< std::string > &)> discv5_enr_tree_starter
Optional test seam for replacing live discv5 ENR-tree startup.

Public Attributes Documentation

variable connection

EthWatchConnectionConfig connection {};

variable peer_queue

EthPeerQueueConfig peer_queue {};

variable chains

std::vector< discv4::ChainPeerConfig > chains;

variable watches

std::vector< EthWatchEventSpec > watches;

variable discovery_mode

EthWatchDiscoveryMode discovery_mode = EthWatchDiscoveryMode::kDiscoverIfNeeded;

variable enable_discv4_fallback

bool enable_discv4_fallback = true;

variable enable_enr_tree_discovery

bool enable_enr_tree_discovery = true;

variable attach_peer_dialer

bool attach_peer_dialer = true;

variable discovery

discv4::discv4Config discovery {};

variable discv5_discovery

discv5::discv5Config discv5_discovery {};

variable dial_fn_factory

std::function< discv4::DialFn(const discv4::ChainPeerConfig &)> dial_fn_factory {};

Optional test seam for replacing live RLPx dialing.

variable discovery_client_factory

std::function< std::shared_ptr< discv4::discv4_client >(boost::asio::io_context &, const discv4::discv4Config &)> discovery_client_factory {};

Optional test seam for replacing live discv4 client construction/startup.

variable discv5_client_factory

std::function< std::shared_ptr< discv5::discv5_client >(boost::asio::io_context &, const discv5::discv5Config &)> discv5_client_factory {};

Optional test seam for replacing live discv5 client construction/startup.

variable enr_tree_resolver

std::function< std::vector< std::string >(const discv4::ChainPeerConfig &, const std::vector< std::string > &)> enr_tree_resolver {};

Optional test seam for resolving configured ENR trees to ENR URI seeds.

variable discv4_fallback_starter

std::function< bool(boost::asio::io_context &, const discv4::ChainPeerConfig &, std::shared_ptr< EthPeerQueue >)> discv4_fallback_starter {};

Optional test seam for replacing live discv4 fallback startup.

variable discv5_enr_tree_starter

std::function< bool(boost::asio::io_context &, const discv4::ChainPeerConfig &, std::shared_ptr< EthPeerQueue >, const std::vector< std::string > &)> discv5_enr_tree_starter {};

Optional test seam for replacing live discv5 ENR-tree startup.


Updated on 2026-06-05 at 17:22:18 -0700