diff --git a/bridges/relays/bin-substrate/src/chains/millau_headers_to_rialto.rs b/bridges/relays/bin-substrate/src/chains/millau_headers_to_rialto.rs
index 2fefc2e74c..0aa49bdada 100644
--- a/bridges/relays/bin-substrate/src/chains/millau_headers_to_rialto.rs
+++ b/bridges/relays/bin-substrate/src/chains/millau_headers_to_rialto.rs
@@ -16,6 +16,7 @@
//! Millau-to-Rialto headers sync entrypoint.
+use crate::cli::bridge::{CliBridgeBase, MessagesCliBridge, RelayToRelayHeadersCliBridge};
use substrate_relay_helper::finality::{
engine::Grandpa as GrandpaFinalityEngine, DirectSubmitGrandpaFinalityProofCallBuilder,
SubstrateFinalitySyncPipeline,
@@ -37,3 +38,21 @@ impl SubstrateFinalitySyncPipeline for MillauFinalityToRialto {
>;
type TransactionSignScheme = relay_rialto_client::Rialto;
}
+
+//// `Millau` to `Rialto` bridge definition.
+pub struct MillauToRialtoCliBridge {}
+
+impl CliBridgeBase for MillauToRialtoCliBridge {
+ type Source = relay_millau_client::Millau;
+ type Target = relay_rialto_client::Rialto;
+}
+
+impl RelayToRelayHeadersCliBridge for MillauToRialtoCliBridge {
+ type Finality = MillauFinalityToRialto;
+}
+
+impl MessagesCliBridge for MillauToRialtoCliBridge {
+ const ESTIMATE_MESSAGE_FEE_METHOD: &'static str =
+ bp_rialto::TO_RIALTO_ESTIMATE_MESSAGE_FEE_METHOD;
+ type MessagesLane = crate::chains::millau_messages_to_rialto::MillauMessagesToRialto;
+}
diff --git a/bridges/relays/bin-substrate/src/chains/millau_headers_to_rialto_parachain.rs b/bridges/relays/bin-substrate/src/chains/millau_headers_to_rialto_parachain.rs
index d44369de01..4eaf3f6f75 100644
--- a/bridges/relays/bin-substrate/src/chains/millau_headers_to_rialto_parachain.rs
+++ b/bridges/relays/bin-substrate/src/chains/millau_headers_to_rialto_parachain.rs
@@ -34,6 +34,7 @@
//! Millau-to-RialtoParachain headers sync entrypoint.
+use crate::cli::bridge::{CliBridgeBase, MessagesCliBridge, RelayToRelayHeadersCliBridge};
use substrate_relay_helper::finality::{
engine::Grandpa as GrandpaFinalityEngine, DirectSubmitGrandpaFinalityProofCallBuilder,
SubstrateFinalitySyncPipeline,
@@ -55,3 +56,22 @@ impl SubstrateFinalitySyncPipeline for MillauFinalityToRialtoParachain {
>;
type TransactionSignScheme = relay_rialto_parachain_client::RialtoParachain;
}
+
+//// `Millau` to `RialtoParachain` bridge definition.
+pub struct MillauToRialtoParachainCliBridge {}
+
+impl CliBridgeBase for MillauToRialtoParachainCliBridge {
+ type Source = relay_millau_client::Millau;
+ type Target = relay_rialto_parachain_client::RialtoParachain;
+}
+
+impl RelayToRelayHeadersCliBridge for MillauToRialtoParachainCliBridge {
+ type Finality = MillauFinalityToRialtoParachain;
+}
+
+impl MessagesCliBridge for MillauToRialtoParachainCliBridge {
+ const ESTIMATE_MESSAGE_FEE_METHOD: &'static str =
+ bp_rialto_parachain::TO_RIALTO_PARACHAIN_ESTIMATE_MESSAGE_FEE_METHOD;
+ type MessagesLane =
+ crate::chains::millau_messages_to_rialto_parachain::MillauMessagesToRialtoParachain;
+}
diff --git a/bridges/relays/bin-substrate/src/chains/rialto_headers_to_millau.rs b/bridges/relays/bin-substrate/src/chains/rialto_headers_to_millau.rs
index a890405703..65c5cba1ae 100644
--- a/bridges/relays/bin-substrate/src/chains/rialto_headers_to_millau.rs
+++ b/bridges/relays/bin-substrate/src/chains/rialto_headers_to_millau.rs
@@ -16,6 +16,7 @@
//! Rialto-to-Millau headers sync entrypoint.
+use crate::cli::bridge::{CliBridgeBase, MessagesCliBridge, RelayToRelayHeadersCliBridge};
use substrate_relay_helper::finality::{
engine::Grandpa as GrandpaFinalityEngine, DirectSubmitGrandpaFinalityProofCallBuilder,
SubstrateFinalitySyncPipeline,
@@ -37,3 +38,21 @@ impl SubstrateFinalitySyncPipeline for RialtoFinalityToMillau {
>;
type TransactionSignScheme = relay_millau_client::Millau;
}
+
+//// `Rialto` to `Millau` bridge definition.
+pub struct RialtoToMillauCliBridge {}
+
+impl CliBridgeBase for RialtoToMillauCliBridge {
+ type Source = relay_rialto_client::Rialto;
+ type Target = relay_millau_client::Millau;
+}
+
+impl RelayToRelayHeadersCliBridge for RialtoToMillauCliBridge {
+ type Finality = RialtoFinalityToMillau;
+}
+
+impl MessagesCliBridge for RialtoToMillauCliBridge {
+ const ESTIMATE_MESSAGE_FEE_METHOD: &'static str =
+ bp_millau::TO_MILLAU_ESTIMATE_MESSAGE_FEE_METHOD;
+ type MessagesLane = crate::chains::rialto_messages_to_millau::RialtoMessagesToMillau;
+}
diff --git a/bridges/relays/bin-substrate/src/chains/rialto_parachains_to_millau.rs b/bridges/relays/bin-substrate/src/chains/rialto_parachains_to_millau.rs
index 986c335e1e..800d5a3e79 100644
--- a/bridges/relays/bin-substrate/src/chains/rialto_parachains_to_millau.rs
+++ b/bridges/relays/bin-substrate/src/chains/rialto_parachains_to_millau.rs
@@ -16,6 +16,7 @@
//! Rialto-to-Millau parachains sync entrypoint.
+use crate::cli::bridge::{CliBridgeBase, MessagesCliBridge, ParachainToRelayHeadersCliBridge};
use parachains_relay::ParachainsPipeline;
use relay_millau_client::Millau;
use relay_rialto_client::Rialto;
@@ -51,3 +52,24 @@ pub type RialtoParachainsToMillauSubmitParachainHeadsCallBuilder =
millau_runtime::Runtime,
millau_runtime::WithRialtoParachainsInstance,
>;
+
+//// `RialtoParachain` to `Millau` bridge definition.
+pub struct RialtoParachainToMillauCliBridge {}
+
+impl CliBridgeBase for RialtoParachainToMillauCliBridge {
+ type Source = RialtoParachain;
+ type Target = Millau;
+}
+
+impl ParachainToRelayHeadersCliBridge for RialtoParachainToMillauCliBridge {
+ type SourceRelay = Rialto;
+ type ParachainFinality = RialtoParachainsToMillau;
+ type RelayFinality = crate::chains::rialto_headers_to_millau::RialtoFinalityToMillau;
+}
+
+impl MessagesCliBridge for RialtoParachainToMillauCliBridge {
+ const ESTIMATE_MESSAGE_FEE_METHOD: &'static str =
+ bp_millau::TO_MILLAU_ESTIMATE_MESSAGE_FEE_METHOD;
+ type MessagesLane =
+ crate::chains::rialto_parachain_messages_to_millau::RialtoParachainMessagesToMillau;
+}
diff --git a/bridges/relays/bin-substrate/src/chains/westend_headers_to_millau.rs b/bridges/relays/bin-substrate/src/chains/westend_headers_to_millau.rs
index 3ed67dd260..8339464589 100644
--- a/bridges/relays/bin-substrate/src/chains/westend_headers_to_millau.rs
+++ b/bridges/relays/bin-substrate/src/chains/westend_headers_to_millau.rs
@@ -16,6 +16,7 @@
//! Westend-to-Millau headers sync entrypoint.
+use crate::cli::bridge::{CliBridgeBase, RelayToRelayHeadersCliBridge};
use substrate_relay_helper::finality::{
engine::Grandpa as GrandpaFinalityEngine, DirectSubmitGrandpaFinalityProofCallBuilder,
SubstrateFinalitySyncPipeline,
@@ -37,3 +38,15 @@ impl SubstrateFinalitySyncPipeline for WestendFinalityToMillau {
>;
type TransactionSignScheme = relay_millau_client::Millau;
}
+
+//// `Westend` to `Millau` bridge definition.
+pub struct WestendToMillauCliBridge {}
+
+impl CliBridgeBase for WestendToMillauCliBridge {
+ type Source = relay_westend_client::Westend;
+ type Target = relay_millau_client::Millau;
+}
+
+impl RelayToRelayHeadersCliBridge for WestendToMillauCliBridge {
+ type Finality = WestendFinalityToMillau;
+}
diff --git a/bridges/relays/bin-substrate/src/chains/westend_parachains_to_millau.rs b/bridges/relays/bin-substrate/src/chains/westend_parachains_to_millau.rs
index 3a508ae49b..586d391d24 100644
--- a/bridges/relays/bin-substrate/src/chains/westend_parachains_to_millau.rs
+++ b/bridges/relays/bin-substrate/src/chains/westend_parachains_to_millau.rs
@@ -16,6 +16,7 @@
//! Westend-to-Millau parachains sync entrypoint.
+use crate::cli::bridge::{CliBridgeBase, ParachainToRelayHeadersCliBridge};
use parachains_relay::ParachainsPipeline;
use relay_millau_client::Millau;
use relay_westend_client::{Westend, Westmint};
@@ -50,3 +51,17 @@ pub type WestendParachainsToMillauSubmitParachainHeadsCallBuilder =
millau_runtime::Runtime,
millau_runtime::WithWestendParachainsInstance,
>;
+
+//// `WestendParachain` to `Millau` bridge definition.
+pub struct WestmintToMillauCliBridge {}
+
+impl ParachainToRelayHeadersCliBridge for WestmintToMillauCliBridge {
+ type SourceRelay = Westend;
+ type ParachainFinality = WestendParachainsToMillau;
+ type RelayFinality = crate::chains::westend_headers_to_millau::WestendFinalityToMillau;
+}
+
+impl CliBridgeBase for WestmintToMillauCliBridge {
+ type Source = Westmint;
+ type Target = Millau;
+}
diff --git a/bridges/relays/bin-substrate/src/cli/bridge.rs b/bridges/relays/bin-substrate/src/cli/bridge.rs
index e0d65e3caf..503e523c02 100644
--- a/bridges/relays/bin-substrate/src/cli/bridge.rs
+++ b/bridges/relays/bin-substrate/src/cli/bridge.rs
@@ -111,106 +111,3 @@ pub trait MessagesCliBridge: CliBridgeBase {
RelayStrategy = MixStrategy,
>;
}
-
-//// `Millau` to `Rialto` bridge definition.
-pub struct MillauToRialtoCliBridge {}
-
-impl CliBridgeBase for MillauToRialtoCliBridge {
- type Source = relay_millau_client::Millau;
- type Target = relay_rialto_client::Rialto;
-}
-
-impl RelayToRelayHeadersCliBridge for MillauToRialtoCliBridge {
- type Finality = crate::chains::millau_headers_to_rialto::MillauFinalityToRialto;
-}
-
-impl MessagesCliBridge for MillauToRialtoCliBridge {
- const ESTIMATE_MESSAGE_FEE_METHOD: &'static str =
- bp_rialto::TO_RIALTO_ESTIMATE_MESSAGE_FEE_METHOD;
- type MessagesLane = crate::chains::millau_messages_to_rialto::MillauMessagesToRialto;
-}
-
-//// `Rialto` to `Millau` bridge definition.
-pub struct RialtoToMillauCliBridge {}
-
-impl CliBridgeBase for RialtoToMillauCliBridge {
- type Source = relay_rialto_client::Rialto;
- type Target = relay_millau_client::Millau;
-}
-
-impl RelayToRelayHeadersCliBridge for RialtoToMillauCliBridge {
- type Finality = crate::chains::rialto_headers_to_millau::RialtoFinalityToMillau;
-}
-
-impl MessagesCliBridge for RialtoToMillauCliBridge {
- const ESTIMATE_MESSAGE_FEE_METHOD: &'static str =
- bp_millau::TO_MILLAU_ESTIMATE_MESSAGE_FEE_METHOD;
- type MessagesLane = crate::chains::rialto_messages_to_millau::RialtoMessagesToMillau;
-}
-
-//// `Westend` to `Millau` bridge definition.
-pub struct WestendToMillauCliBridge {}
-
-impl CliBridgeBase for WestendToMillauCliBridge {
- type Source = relay_westend_client::Westend;
- type Target = relay_millau_client::Millau;
-}
-
-impl RelayToRelayHeadersCliBridge for WestendToMillauCliBridge {
- type Finality = crate::chains::westend_headers_to_millau::WestendFinalityToMillau;
-}
-
-//// `Millau` to `RialtoParachain` bridge definition.
-pub struct MillauToRialtoParachainCliBridge {}
-
-impl CliBridgeBase for MillauToRialtoParachainCliBridge {
- type Source = relay_millau_client::Millau;
- type Target = relay_rialto_parachain_client::RialtoParachain;
-}
-
-impl RelayToRelayHeadersCliBridge for MillauToRialtoParachainCliBridge {
- type Finality =
- crate::chains::millau_headers_to_rialto_parachain::MillauFinalityToRialtoParachain;
-}
-
-impl MessagesCliBridge for MillauToRialtoParachainCliBridge {
- const ESTIMATE_MESSAGE_FEE_METHOD: &'static str =
- bp_rialto_parachain::TO_RIALTO_PARACHAIN_ESTIMATE_MESSAGE_FEE_METHOD;
- type MessagesLane =
- crate::chains::millau_messages_to_rialto_parachain::MillauMessagesToRialtoParachain;
-}
-
-//// `RialtoParachain` to `Millau` bridge definition.
-pub struct RialtoParachainToMillauCliBridge {}
-
-impl CliBridgeBase for RialtoParachainToMillauCliBridge {
- type Source = relay_rialto_parachain_client::RialtoParachain;
- type Target = relay_millau_client::Millau;
-}
-
-impl ParachainToRelayHeadersCliBridge for RialtoParachainToMillauCliBridge {
- type SourceRelay = relay_rialto_client::Rialto;
- type ParachainFinality = crate::chains::rialto_parachains_to_millau::RialtoParachainsToMillau;
- type RelayFinality = crate::chains::rialto_headers_to_millau::RialtoFinalityToMillau;
-}
-
-impl MessagesCliBridge for RialtoParachainToMillauCliBridge {
- const ESTIMATE_MESSAGE_FEE_METHOD: &'static str =
- bp_millau::TO_MILLAU_ESTIMATE_MESSAGE_FEE_METHOD;
- type MessagesLane =
- crate::chains::rialto_parachain_messages_to_millau::RialtoParachainMessagesToMillau;
-}
-
-//// `WestendParachain` to `Millau` bridge definition.
-pub struct WestmintToMillauCliBridge {}
-
-impl ParachainToRelayHeadersCliBridge for WestmintToMillauCliBridge {
- type SourceRelay = relay_westend_client::Westend;
- type ParachainFinality = crate::chains::westend_parachains_to_millau::WestendParachainsToMillau;
- type RelayFinality = crate::chains::westend_headers_to_millau::WestendFinalityToMillau;
-}
-
-impl CliBridgeBase for WestmintToMillauCliBridge {
- type Source = relay_westend_client::Westmint;
- type Target = relay_millau_client::Millau;
-}
diff --git a/bridges/relays/bin-substrate/src/cli/estimate_fee.rs b/bridges/relays/bin-substrate/src/cli/estimate_fee.rs
index 0f4fd765f4..ed1e27bcf5 100644
--- a/bridges/relays/bin-substrate/src/cli/estimate_fee.rs
+++ b/bridges/relays/bin-substrate/src/cli/estimate_fee.rs
@@ -14,11 +14,19 @@
// You should have received a copy of the GNU General Public License
// along with Parity Bridges Common. If not, see .
-use crate::cli::{
- bridge::{FullBridge, MessagesCliBridge, *},
- chain_schema::*,
- relay_headers_and_messages::CONVERSION_RATE_ALLOWED_DIFFERENCE_RATIO,
- Balance, HexBytes, HexLaneId,
+use crate::{
+ chains::{
+ millau_headers_to_rialto::MillauToRialtoCliBridge,
+ millau_headers_to_rialto_parachain::MillauToRialtoParachainCliBridge,
+ rialto_headers_to_millau::RialtoToMillauCliBridge,
+ rialto_parachains_to_millau::RialtoParachainToMillauCliBridge,
+ },
+ cli::{
+ bridge::{FullBridge, MessagesCliBridge},
+ chain_schema::*,
+ relay_headers_and_messages::CONVERSION_RATE_ALLOWED_DIFFERENCE_RATIO,
+ Balance, HexBytes, HexLaneId,
+ },
};
use async_trait::async_trait;
use bp_runtime::BalanceOf;
diff --git a/bridges/relays/bin-substrate/src/cli/init_bridge.rs b/bridges/relays/bin-substrate/src/cli/init_bridge.rs
index 98f30b9f7b..971512f211 100644
--- a/bridges/relays/bin-substrate/src/cli/init_bridge.rs
+++ b/bridges/relays/bin-substrate/src/cli/init_bridge.rs
@@ -16,12 +16,14 @@
use async_trait::async_trait;
-use crate::cli::{
- bridge::{
- CliBridgeBase, MillauToRialtoCliBridge, MillauToRialtoParachainCliBridge,
- RialtoToMillauCliBridge, WestendToMillauCliBridge,
+use crate::{
+ chains::{
+ millau_headers_to_rialto::MillauToRialtoCliBridge,
+ millau_headers_to_rialto_parachain::MillauToRialtoParachainCliBridge,
+ rialto_headers_to_millau::RialtoToMillauCliBridge,
+ westend_headers_to_millau::WestendToMillauCliBridge,
},
- chain_schema::*,
+ cli::{bridge::CliBridgeBase, chain_schema::*},
};
use bp_runtime::Chain as ChainBase;
use codec::Encode;
diff --git a/bridges/relays/bin-substrate/src/cli/relay_headers.rs b/bridges/relays/bin-substrate/src/cli/relay_headers.rs
index 59325e452e..df6d96f722 100644
--- a/bridges/relays/bin-substrate/src/cli/relay_headers.rs
+++ b/bridges/relays/bin-substrate/src/cli/relay_headers.rs
@@ -20,6 +20,12 @@ use sp_core::Pair;
use structopt::StructOpt;
use strum::{EnumString, EnumVariantNames, VariantNames};
+use crate::chains::{
+ millau_headers_to_rialto::MillauToRialtoCliBridge,
+ millau_headers_to_rialto_parachain::MillauToRialtoParachainCliBridge,
+ rialto_headers_to_millau::RialtoToMillauCliBridge,
+ westend_headers_to_millau::WestendToMillauCliBridge,
+};
use relay_utils::metrics::{GlobalMetrics, StandaloneMetric};
use substrate_relay_helper::finality::SubstrateFinalitySyncPipeline;
diff --git a/bridges/relays/bin-substrate/src/cli/relay_headers_and_messages/mod.rs b/bridges/relays/bin-substrate/src/cli/relay_headers_and_messages/mod.rs
index 82f55a6d6c..d4840f4c7d 100644
--- a/bridges/relays/bin-substrate/src/cli/relay_headers_and_messages/mod.rs
+++ b/bridges/relays/bin-substrate/src/cli/relay_headers_and_messages/mod.rs
@@ -38,12 +38,16 @@ use relay_to_parachain::*;
use relay_to_relay::*;
use crate::{
+ chains::{
+ millau_headers_to_rialto::MillauToRialtoCliBridge,
+ millau_headers_to_rialto_parachain::MillauToRialtoParachainCliBridge,
+ rialto_headers_to_millau::RialtoToMillauCliBridge,
+ rialto_parachains_to_millau::RialtoParachainToMillauCliBridge,
+ },
cli::{
bridge::{
- CliBridgeBase, MessagesCliBridge, MillauToRialtoCliBridge,
- MillauToRialtoParachainCliBridge, ParachainToRelayHeadersCliBridge,
- RelayToRelayHeadersCliBridge, RialtoParachainToMillauCliBridge,
- RialtoToMillauCliBridge,
+ CliBridgeBase, MessagesCliBridge, ParachainToRelayHeadersCliBridge,
+ RelayToRelayHeadersCliBridge,
},
chain_schema::*,
relay_messages::RelayerMode,
diff --git a/bridges/relays/bin-substrate/src/cli/relay_messages.rs b/bridges/relays/bin-substrate/src/cli/relay_messages.rs
index df21abac99..a68ce03054 100644
--- a/bridges/relays/bin-substrate/src/cli/relay_messages.rs
+++ b/bridges/relays/bin-substrate/src/cli/relay_messages.rs
@@ -19,6 +19,12 @@ use sp_core::Pair;
use structopt::StructOpt;
use strum::{EnumString, EnumVariantNames, VariantNames};
+use crate::chains::{
+ millau_headers_to_rialto::MillauToRialtoCliBridge,
+ millau_headers_to_rialto_parachain::MillauToRialtoParachainCliBridge,
+ rialto_headers_to_millau::RialtoToMillauCliBridge,
+ rialto_parachains_to_millau::RialtoParachainToMillauCliBridge,
+};
use messages_relay::relay_strategy::MixStrategy;
use relay_substrate_client::{AccountIdOf, AccountKeyPairOf, BalanceOf, TransactionSignScheme};
use substrate_relay_helper::{messages_lane::MessagesRelayParams, TransactionParams};
diff --git a/bridges/relays/bin-substrate/src/cli/relay_parachains.rs b/bridges/relays/bin-substrate/src/cli/relay_parachains.rs
index f2d56b7d6e..2fa6dcaf9e 100644
--- a/bridges/relays/bin-substrate/src/cli/relay_parachains.rs
+++ b/bridges/relays/bin-substrate/src/cli/relay_parachains.rs
@@ -14,6 +14,10 @@
// You should have received a copy of the GNU General Public License
// along with Parity Bridges Common. If not, see .
+use crate::chains::{
+ rialto_parachains_to_millau::RialtoParachainToMillauCliBridge,
+ westend_parachains_to_millau::WestmintToMillauCliBridge,
+};
use async_trait::async_trait;
use bp_polkadot_core::parachains::ParaId;
use parachains_relay::parachains_loop::{ParachainSyncParams, SourceClient, TargetClient};
@@ -25,14 +29,7 @@ use substrate_relay_helper::{
TransactionParams,
};
-use crate::cli::{
- bridge::{
- ParachainToRelayHeadersCliBridge, RialtoParachainToMillauCliBridge,
- WestmintToMillauCliBridge,
- },
- chain_schema::*,
- PrometheusParams,
-};
+use crate::cli::{bridge::ParachainToRelayHeadersCliBridge, chain_schema::*, PrometheusParams};
/// Start parachain heads relayer process.
#[derive(StructOpt)]
diff --git a/bridges/relays/bin-substrate/src/cli/send_message.rs b/bridges/relays/bin-substrate/src/cli/send_message.rs
index da844172c9..2e4e3628b0 100644
--- a/bridges/relays/bin-substrate/src/cli/send_message.rs
+++ b/bridges/relays/bin-substrate/src/cli/send_message.rs
@@ -14,12 +14,20 @@
// You should have received a copy of the GNU General Public License
// along with Parity Bridges Common. If not, see .
-use crate::cli::{
- bridge::{FullBridge, MessagesCliBridge, *},
- chain_schema::*,
- encode_message::{self, CliEncodeMessage},
- estimate_fee::{estimate_message_delivery_and_dispatch_fee, ConversionRateOverride},
- Balance, CliChain, HexBytes, HexLaneId,
+use crate::{
+ chains::{
+ millau_headers_to_rialto::MillauToRialtoCliBridge,
+ millau_headers_to_rialto_parachain::MillauToRialtoParachainCliBridge,
+ rialto_headers_to_millau::RialtoToMillauCliBridge,
+ rialto_parachains_to_millau::RialtoParachainToMillauCliBridge,
+ },
+ cli::{
+ bridge::{FullBridge, MessagesCliBridge},
+ chain_schema::*,
+ encode_message::{self, CliEncodeMessage},
+ estimate_fee::{estimate_message_delivery_and_dispatch_fee, ConversionRateOverride},
+ Balance, CliChain, HexBytes, HexLaneId,
+ },
};
use async_trait::async_trait;
use codec::Encode;