From 6d9dfad883a1a63dc923321f4473de3c7ea0b8d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aleksandar=20Terenti=C4=87?= Date: Fri, 6 Sep 2024 11:08:29 +0200 Subject: [PATCH] Move Node struct from network to types mod --- core/src/data.rs | 5 +-- core/src/network/rpc.rs | 63 +++++----------------------------- core/src/network/rpc/client.rs | 4 +-- core/src/types.rs | 49 ++++++++++++++++++++++++++ 4 files changed, 61 insertions(+), 60 deletions(-) diff --git a/core/src/data.rs b/core/src/data.rs index d4daef4c5..3d0b64919 100644 --- a/core/src/data.rs +++ b/core/src/data.rs @@ -1,7 +1,4 @@ -use crate::{ - network::rpc::Node as RpcNode, - types::{BlockRange, Uuid}, -}; +use crate::types::{BlockRange, Node as RpcNode, Uuid}; use avail_rust::{sp_core::ed25519, AvailHeader}; use codec::{Decode, Encode}; use serde::{Deserialize, Serialize}; diff --git a/core/src/network/rpc.rs b/core/src/network/rpc.rs index f624c748e..74bfb8522 100644 --- a/core/src/network/rpc.rs +++ b/core/src/network/rpc.rs @@ -3,19 +3,24 @@ use avail_rust::{ sp_core::bytes::from_hex, AvailHeader, H256, }; -use codec::{Decode, Encode}; +use codec::Decode; use color_eyre::{eyre::eyre, Result}; use configuration::RPCConfig; use rand::{seq::SliceRandom, thread_rng, Rng}; -use serde::{de, Deserialize, Serialize}; -use std::{collections::HashSet, fmt::Display}; +use serde::{de, Deserialize}; +use std::collections::HashSet; use tokio::{ sync::broadcast, time::{self, timeout}, }; use tracing::{debug, info}; -use crate::{data::Database, network::rpc, shutdown::Controller, types::GrandpaJustification}; +use crate::{ + data::Database, + network::rpc, + shutdown::Controller, + types::{GrandpaJustification, Node}, +}; mod client; pub mod configuration; @@ -69,56 +74,6 @@ impl<'de> Deserialize<'de> for WrappedProof { } } -#[derive(Clone, Debug, Serialize, Deserialize, Decode, Encode)] -pub struct Node { - pub host: String, - pub system_version: String, - pub spec_version: u32, - pub genesis_hash: H256, -} - -impl Node { - pub fn new( - host: String, - system_version: String, - spec_version: u32, - genesis_hash: H256, - ) -> Self { - Self { - host, - system_version, - spec_version, - genesis_hash, - } - } - - pub fn network(&self) -> String { - format!( - "{host}/{system_version}/{spec_version}", - host = self.host, - system_version = self.system_version, - spec_version = self.spec_version, - ) - } -} - -impl Default for Node { - fn default() -> Self { - Self { - host: "{host}".to_string(), - system_version: "{system_version}".to_string(), - spec_version: 0, - genesis_hash: Default::default(), - } - } -} - -impl Display for Node { - fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { - write!(f, "v{}", self.system_version) - } -} - #[derive(Clone)] pub struct Nodes { list: Vec, diff --git a/core/src/network/rpc/client.rs b/core/src/network/rpc/client.rs index 1084002ae..3af494515 100644 --- a/core/src/network/rpc/client.rs +++ b/core/src/network/rpc/client.rs @@ -27,11 +27,11 @@ use tokio_retry::Retry; use tokio_stream::StreamExt; use tracing::{debug, error, info, trace, warn}; -use super::{configuration::RetryConfig, Node, Nodes, Subscription, WrappedProof}; +use super::{configuration::RetryConfig, Nodes, Subscription, WrappedProof}; use crate::{ data::{Database, RpcNodeKey, SignerNonceKey}, shutdown::Controller, - types::{Base64, DEV_FLAG_GENHASH}, + types::{Base64, Node, DEV_FLAG_GENHASH}, }; #[derive(Debug, thiserror::Error)] diff --git a/core/src/types.rs b/core/src/types.rs index 01eebe0ad..76d0acfbd 100644 --- a/core/src/types.rs +++ b/core/src/types.rs @@ -613,3 +613,52 @@ impl From for String { general_purpose::STANDARD.encode(value.0) } } +#[derive(Clone, Debug, Serialize, Deserialize, Decode, Encode)] +pub struct Node { + pub host: String, + pub system_version: String, + pub spec_version: u32, + pub genesis_hash: H256, +} + +impl Node { + pub fn new( + host: String, + system_version: String, + spec_version: u32, + genesis_hash: H256, + ) -> Self { + Self { + host, + system_version, + spec_version, + genesis_hash, + } + } + + pub fn network(&self) -> String { + format!( + "{host}/{system_version}/{spec_version}", + host = self.host, + system_version = self.system_version, + spec_version = self.spec_version, + ) + } +} + +impl Default for Node { + fn default() -> Self { + Self { + host: "{host}".to_string(), + system_version: "{system_version}".to_string(), + spec_version: 0, + genesis_hash: Default::default(), + } + } +} + +impl Display for Node { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + write!(f, "v{}", self.system_version) + } +}