refactor: rename EthConsensus (#572)

Closes #566
This commit is contained in:
Bjerg
2022-12-22 12:05:49 +01:00
committed by GitHub
parent 8f40c8bb93
commit 6f6c4f61e0
3 changed files with 11 additions and 9 deletions

View File

@ -10,7 +10,7 @@ use clap::{crate_version, Parser};
use eyre::WrapErr;
use metrics_exporter_prometheus::PrometheusBuilder;
use metrics_util::layers::{PrefixLayer, Stack};
use reth_consensus::EthConsensus;
use reth_consensus::BeaconConsensus;
use reth_db::{
cursor::DbCursorRO,
database::Database,
@ -105,7 +105,7 @@ impl Command {
}
let chain_id = self.chain.consensus.chain_id;
let consensus = Arc::new(EthConsensus::new(self.chain.consensus.clone()));
let consensus = Arc::new(BeaconConsensus::new(self.chain.consensus.clone()));
let genesis_hash = init_genesis(db.clone(), self.chain.genesis.clone())?;
info!("Connecting to p2p");

View File

@ -1,20 +1,22 @@
//! Consensus for ethereum network
use crate::{verification, Config};
use reth_interfaces::consensus::{Consensus, Error, ForkchoiceState};
use reth_primitives::{BlockLocked, BlockNumber, SealedHeader, H256};
use tokio::sync::{watch, watch::error::SendError};
/// Ethereum consensus
pub struct EthConsensus {
/// Ethereum beacon consensus
///
/// This consensus engine does basic checks as outlined in the execution specs,
/// but otherwise defers consensus on what the current chain is to a consensus client.
pub struct BeaconConsensus {
/// Watcher over the forkchoice state
channel: (watch::Sender<ForkchoiceState>, watch::Receiver<ForkchoiceState>),
/// Configuration
config: Config,
}
impl EthConsensus {
/// Create a new instance of [EthConsensus]
impl BeaconConsensus {
/// Create a new instance of [BeaconConsensus]
pub fn new(config: Config) -> Self {
Self {
channel: watch::channel(ForkchoiceState {
@ -35,7 +37,7 @@ impl EthConsensus {
}
}
impl Consensus for EthConsensus {
impl Consensus for BeaconConsensus {
fn fork_choice_state(&self) -> watch::Receiver<ForkchoiceState> {
self.channel.1.clone()
}

View File

@ -14,5 +14,5 @@ pub mod consensus;
pub mod verification;
pub use config::Config;
pub use consensus::EthConsensus;
pub use consensus::BeaconConsensus;
pub use reth_interfaces::consensus::Error;