Sentry client module. (#58)

Separate the module from downloader.
This commit is contained in:
battlmonstr
2021-11-09 12:45:32 +01:00
committed by GitHub
parent f8bec8d1be
commit a140e67827
21 changed files with 54 additions and 45 deletions

View File

@@ -1,4 +1,7 @@
use akula::downloader::{chain_config, opts::Opts, Downloader};
use akula::{
downloader::{opts::Opts, Downloader},
sentry::chain_config,
};
use akula::kv;
use std::sync::Arc;

View File

@@ -1,6 +1,5 @@
use crate::{
downloader::{
chain_config::{ChainConfig, ChainsConfig},
headers::{
fetch_receive_stage::FetchReceiveStage, fetch_request_stage::FetchRequestStage,
header_slices, header_slices::HeaderSlices,
@@ -9,13 +8,16 @@ use crate::{
HeaderSlicesView,
},
opts::Opts,
},
kv,
models::BlockNumber,
sentry::{
chain_config::{ChainConfig, ChainsConfig},
sentry_client,
sentry_client::SentryClient,
sentry_client_connector,
sentry_client_reactor::SentryClientReactor,
},
kv,
models::BlockNumber,
};
use futures_core::Stream;
use parking_lot::RwLock;

View File

@@ -1,6 +1,7 @@
use crate::{
downloader::{chain_config, opts::Opts, sentry_client_mock::SentryClientMock, Downloader},
downloader::{opts::Opts, Downloader},
kv, new_mem_database,
sentry::{chain_config, sentry_client_mock::SentryClientMock},
};
use std::sync::Arc;

View File

@@ -1,13 +1,13 @@
use crate::{
downloader::{
headers::{
header_slices,
header_slices::{HeaderSlice, HeaderSliceStatus, HeaderSlices},
},
downloader::headers::{
header_slices,
header_slices::{HeaderSlice, HeaderSliceStatus, HeaderSlices},
},
models::{BlockHeader as Header, BlockNumber},
sentry::{
messages::{BlockHeadersMessage, EthMessageId, Message},
sentry_client_reactor::SentryClientReactor,
},
models::{BlockHeader as Header, BlockNumber},
};
use futures_core::Stream;
use parking_lot::RwLock;

View File

@@ -1,16 +1,16 @@
use crate::{
downloader::{
downloader::headers::{
header_slice_status_watch::HeaderSliceStatusWatch,
header_slices,
header_slices::{HeaderSliceStatus, HeaderSlices},
},
models::BlockNumber,
sentry::{
block_id,
headers::{
header_slice_status_watch::HeaderSliceStatusWatch,
header_slices,
header_slices::{HeaderSliceStatus, HeaderSlices},
},
messages::{GetBlockHeadersMessage, GetBlockHeadersMessageParams, Message},
sentry_client::PeerFilter,
sentry_client_reactor::{SendMessageError, SentryClientReactor},
},
models::BlockNumber,
};
use parking_lot::{RwLock, RwLockUpgradableReadGuard};
use std::{

View File

@@ -1,20 +1,9 @@
pub mod block_id;
pub mod chain_config;
pub mod chain_id;
mod downloader_impl;
mod message_decoder;
pub mod messages;
mod headers;
pub mod opts;
pub mod sentry_address;
pub mod sentry_client;
mod sentry_client_connector;
pub mod sentry_client_impl;
mod sentry_client_mock;
#[cfg(test)]
mod downloader_tests;
mod headers;
mod sentry_client_reactor;
mod ui_system;
mod ui_view;

View File

@@ -1,4 +1,4 @@
use crate::downloader::sentry_address::SentryAddress;
use crate::sentry::sentry_address::SentryAddress;
use anyhow::anyhow;
use directories::ProjectDirs;
use std::str::FromStr;

View File

@@ -30,6 +30,7 @@ pub mod execution;
pub mod kv;
pub mod models;
pub mod res;
pub mod sentry;
pub mod stagedsync;
pub mod stages;
mod state;

View File

@@ -1,4 +1,4 @@
use crate::downloader::messages::*;
use super::messages::*;
pub fn decode_rlp_message(id: EthMessageId, message_bytes: &[u8]) -> anyhow::Result<Message> {
let message: Message = match id {
@@ -34,7 +34,7 @@ impl rlp::Encodable for Message {
#[cfg(test)]
mod tests {
use crate::downloader::{
use super::super::{
block_id::BlockId,
message_decoder::decode_rlp_message,
messages::{

View File

@@ -1,7 +1,5 @@
use crate::{
downloader::block_id::BlockId,
models::{Block as BlockType, BlockHeader as HeaderType},
};
use super::block_id::BlockId;
use crate::models::{Block as BlockType, BlockHeader as HeaderType};
use ethereum_types::H256;
use rlp_derive::*;

11
src/sentry/mod.rs Normal file
View File

@@ -0,0 +1,11 @@
pub mod block_id;
pub mod chain_config;
pub mod chain_id;
mod message_decoder;
pub mod messages;
pub mod sentry_address;
pub mod sentry_client;
pub mod sentry_client_connector;
pub mod sentry_client_impl;
pub mod sentry_client_mock;
pub mod sentry_client_reactor;

View File

@@ -1,4 +1,4 @@
use crate::downloader::{
use super::{
chain_config::ChainConfig,
messages::{EthMessageId, Message},
};

View File

@@ -1,4 +1,4 @@
use crate::downloader::{
use super::{
sentry_address::SentryAddress, sentry_client::SentryClient,
sentry_client_impl::SentryClientImpl,
};

View File

@@ -1,6 +1,4 @@
use crate::downloader::{
message_decoder, messages::*, sentry_address::SentryAddress, sentry_client::*,
};
use super::{message_decoder, messages::*, sentry_address::SentryAddress, sentry_client::*};
use async_trait::async_trait;
use ethereum_interfaces::{sentry as grpc_sentry, types as grpc_types};
use futures_core::Stream;

View File

@@ -1,4 +1,4 @@
use crate::downloader::{
use super::{
messages::{EthMessageId, Message},
sentry_client::{MessageFromPeer, MessageFromPeerStream, PeerFilter, SentryClient, Status},
};
@@ -64,3 +64,9 @@ impl SentryClient for SentryClientMock {
}
}
}
impl Default for SentryClientMock {
fn default() -> Self {
Self::new()
}
}

View File

@@ -1,4 +1,4 @@
use crate::downloader::{
use super::{
messages::{EthMessageId, Message},
sentry_client::*,
sentry_client_connector,
@@ -242,7 +242,7 @@ impl Drop for EventLoopReceiveMessagesSendersDropper {
}
mod stream_factory {
use crate::downloader::{sentry_client::MessageFromPeerStream, sentry_client_reactor::*};
use super::super::{sentry_client::MessageFromPeerStream, sentry_client_reactor::*};
use tokio::sync::Mutex;
fn make_receive_stream(