Added Rococo BH <> Rococo Bulletin bridge (#2724)

* added Rococo BH <> Rococo Bulletin bridge

* init-bridge support

* allow customising finality-related runtime APIs

* revert me

* use Rococo/BridgeHubRococo pretending to be a Polkadot/BridgeHubPolkadot in Rococo <> RococoBulletin bridge

* Revert "revert me"

This reverts commit 90c598d9d50a25e7182c97eee7818bf8d4bc404c.

* Revert "allow customising finality-related runtime APIs"

This reverts commit b39c32c34acddfd0b919042122e0e667470bd0a4.

* fmt

* WITH_BRIDGE_ROCOCO_TO_BULLETIN_MESSAGES_PALLET_INDEX

* regenerate bulletin chain runtime (pallet indices have changed)

* fx WITH_BRIDGE_ROCOCO_TO_BULLETIN_MESSAGES_PALLET_INDEX constant because of latest changes

* also change indices in runtime

* fmt

* clippy
This commit is contained in:
Svyatoslav Nikolsky
2023-12-14 17:03:35 +03:00
committed by Bastian Köcher
parent e711c9a5d5
commit 59882a7343
24 changed files with 2037 additions and 455 deletions
+10 -2
View File
@@ -15,7 +15,7 @@
// along with Parity Bridges Common. If not, see <http://www.gnu.org/licenses/>.
use crate::HeaderIdProvider;
use codec::{Decode, Encode, MaxEncodedLen};
use codec::{Codec, Decode, Encode, MaxEncodedLen};
use frame_support::{weights::Weight, Parameter};
use num_traits::{AsPrimitive, Bounded, CheckedSub, Saturating, SaturatingAdd, Zero};
use sp_runtime::{
@@ -39,7 +39,7 @@ pub enum EncodedOrDecodedCall<ChainCall> {
Decoded(ChainCall),
}
impl<ChainCall: Clone + Decode> EncodedOrDecodedCall<ChainCall> {
impl<ChainCall: Clone + Codec> EncodedOrDecodedCall<ChainCall> {
/// Returns decoded call.
pub fn to_decoded(&self) -> Result<ChainCall, codec::Error> {
match self {
@@ -57,6 +57,14 @@ impl<ChainCall: Clone + Decode> EncodedOrDecodedCall<ChainCall> {
Self::Decoded(decoded_call) => Ok(decoded_call),
}
}
/// Converts self to encoded call.
pub fn into_encoded(self) -> Vec<u8> {
match self {
Self::Encoded(encoded_call) => encoded_call,
Self::Decoded(decoded_call) => decoded_call.encode(),
}
}
}
impl<ChainCall> From<ChainCall> for EncodedOrDecodedCall<ChainCall> {