55 lines
1.5 KiB
Rust
55 lines
1.5 KiB
Rust
use std::sync::Arc;
|
|
use futures::Future;
|
|
use parking_lot::{Mutex, RwLock};
|
|
use storage;
|
|
use local_node::LocalNode;
|
|
use miner::MemoryPool;
|
|
use super::SyncListener;
|
|
use synchronization_client::SynchronizationClient;
|
|
use synchronization_executor::LocalSynchronizationTaskExecutor;
|
|
use synchronization_peers::Peers;
|
|
use synchronization_server::ServerImpl;
|
|
use synchronization_verifier::AsyncVerifier;
|
|
use utils::SynchronizationState;
|
|
|
|
pub use utils::BlockHeight;
|
|
|
|
/// Network request id
|
|
pub type RequestId = u32;
|
|
|
|
/// Peer is indexed using this type
|
|
pub type PeerIndex = usize;
|
|
|
|
// No-error, no-result future
|
|
pub type EmptyBoxFuture = Box<Future<Item=(), Error=()> + Send>;
|
|
|
|
/// Reference to storage
|
|
pub type StorageRef = storage::SharedStore;
|
|
|
|
/// Reference to memory pool
|
|
pub type MemoryPoolRef = Arc<RwLock<MemoryPool>>;
|
|
|
|
/// Shared synchronization state reference
|
|
pub type SynchronizationStateRef = Arc<SynchronizationState>;
|
|
|
|
/// Reference to peers
|
|
pub type PeersRef = Arc<Peers>;
|
|
|
|
/// Reference to synchronization tasks executor
|
|
pub type ExecutorRef<T> = Arc<T>;
|
|
|
|
/// Reference to synchronization client
|
|
pub type ClientRef<T> = Arc<T>;
|
|
|
|
/// Reference to synchronization client core
|
|
pub type ClientCoreRef<T> = Arc<Mutex<T>>;
|
|
|
|
/// Reference to synchronization server
|
|
pub type ServerRef<T> = Arc<T>;
|
|
|
|
/// Reference to local node
|
|
pub type LocalNodeRef = Arc<LocalNode<ServerImpl, SynchronizationClient<LocalSynchronizationTaskExecutor, AsyncVerifier>>>;
|
|
|
|
/// Synchronization events listener reference
|
|
pub type SyncListenerRef = Box<SyncListener>;
|