From 6ff79e9959c8920be3c541beb3347a4450b40011 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Mon, 21 Jun 2021 22:48:35 +0300 Subject: [PATCH] Return dispatch_fee_payment from message details RPC (#1014) --- bridges/bin/millau/runtime/src/lib.rs | 2 +- bridges/bin/rialto/runtime/src/lib.rs | 2 +- bridges/modules/messages/src/benchmarking.rs | 2 +- bridges/primitives/message-dispatch/src/lib.rs | 2 +- bridges/primitives/messages/src/lib.rs | 5 ++++- bridges/relays/bin-substrate/src/messages_source.rs | 2 ++ 6 files changed, 10 insertions(+), 5 deletions(-) diff --git a/bridges/bin/millau/runtime/src/lib.rs b/bridges/bin/millau/runtime/src/lib.rs index 84d62c2e30..33c21027f8 100644 --- a/bridges/bin/millau/runtime/src/lib.rs +++ b/bridges/bin/millau/runtime/src/lib.rs @@ -619,7 +619,7 @@ impl_runtime_apis! { dispatch_weight: decoded_payload.weight, size: message_data.payload.len() as _, delivery_and_dispatch_fee: message_data.fee, - // TODO: include dispatch fee type (https://github.com/paritytech/parity-bridges-common/pull/911) + dispatch_fee_payment: decoded_payload.dispatch_fee_payment, }) }) .collect() diff --git a/bridges/bin/rialto/runtime/src/lib.rs b/bridges/bin/rialto/runtime/src/lib.rs index 46c01baf4f..40eb7326a3 100644 --- a/bridges/bin/rialto/runtime/src/lib.rs +++ b/bridges/bin/rialto/runtime/src/lib.rs @@ -770,7 +770,7 @@ impl_runtime_apis! { dispatch_weight: decoded_payload.weight, size: message_data.payload.len() as _, delivery_and_dispatch_fee: message_data.fee, - // TODO: include dispatch fee type (https://github.com/paritytech/parity-bridges-common/pull/911) + dispatch_fee_payment: decoded_payload.dispatch_fee_payment, }) }) .collect() diff --git a/bridges/modules/messages/src/benchmarking.rs b/bridges/modules/messages/src/benchmarking.rs index 6af28e8c5c..54cb7c26cd 100644 --- a/bridges/modules/messages/src/benchmarking.rs +++ b/bridges/modules/messages/src/benchmarking.rs @@ -76,7 +76,7 @@ pub struct MessageProofParams { pub outbound_lane_data: Option, /// Proof size requirements. pub size: ProofSize, - /// If true, dispatch fee is paid at the target chain (if supported by configuration). + /// Where the fee for dispatching message is paid? pub dispatch_fee_payment: DispatchFeePayment, } diff --git a/bridges/primitives/message-dispatch/src/lib.rs b/bridges/primitives/message-dispatch/src/lib.rs index 7a677dba42..dcbc9ae085 100644 --- a/bridges/primitives/message-dispatch/src/lib.rs +++ b/bridges/primitives/message-dispatch/src/lib.rs @@ -121,7 +121,7 @@ pub struct MessagePayload, - /// Where message dispatch fee is paid? + /// Where the fee for dispatching message is paid? pub dispatch_fee_payment: DispatchFeePayment, /// The call itself. pub call: Call, diff --git a/bridges/primitives/messages/src/lib.rs b/bridges/primitives/messages/src/lib.rs index e1e7522181..eb44fbea94 100644 --- a/bridges/primitives/messages/src/lib.rs +++ b/bridges/primitives/messages/src/lib.rs @@ -23,6 +23,7 @@ #![allow(clippy::unnecessary_mut_passed)] use bitvec::prelude::*; +use bp_runtime::messages::DispatchFeePayment; use codec::{Decode, Encode}; use frame_support::RuntimeDebug; use sp_std::{collections::vec_deque::VecDeque, prelude::*}; @@ -169,7 +170,7 @@ impl InboundLaneData { } /// Message details, returned by runtime APIs. -#[derive(Clone, Default, Encode, Decode, RuntimeDebug, PartialEq, Eq)] +#[derive(Clone, Encode, Decode, RuntimeDebug, PartialEq, Eq)] pub struct MessageDetails { /// Nonce assigned to the message. pub nonce: MessageNonce, @@ -179,6 +180,8 @@ pub struct MessageDetails { pub size: u32, /// Delivery+dispatch fee paid by the message submitter at the source chain. pub delivery_and_dispatch_fee: OutboundMessageFee, + /// Where the fee for dispatching message is paid? + pub dispatch_fee_payment: DispatchFeePayment, } /// Bit vector of message dispatch results. diff --git a/bridges/relays/bin-substrate/src/messages_source.rs b/bridges/relays/bin-substrate/src/messages_source.rs index ce82f8abe5..8b460ea099 100644 --- a/bridges/relays/bin-substrate/src/messages_source.rs +++ b/bridges/relays/bin-substrate/src/messages_source.rs @@ -363,6 +363,7 @@ fn make_message_details_map( #[cfg(test)] mod tests { use super::*; + use bp_runtime::messages::DispatchFeePayment; fn message_details_from_rpc( nonces: RangeInclusive, @@ -374,6 +375,7 @@ mod tests { dispatch_weight: 0, size: 0, delivery_and_dispatch_fee: 0, + dispatch_fee_payment: DispatchFeePayment::AtSourceChain, }) .collect() }