Changes for send returning hash

This commit is contained in:
Gav Wood
2022-01-20 15:14:10 +01:00
parent 2c0ac0a4a3
commit fc381c9fc8
3 changed files with 6 additions and 4 deletions
+3 -2
View File
@@ -33,7 +33,7 @@ use xcm::{latest::prelude::*, WrapVersion};
/// for the `SendXcm` implementation.
pub struct ParentAsUmp<T, W>(PhantomData<(T, W)>);
impl<T: UpwardMessageSender, W: WrapVersion> SendXcm for ParentAsUmp<T, W> {
fn send_xcm(dest: impl Into<MultiLocation>, msg: Xcm<()>) -> Result<(), SendError> {
fn send_xcm(dest: impl Into<MultiLocation>, msg: Xcm<()>) -> SendResult {
let dest = dest.into();
if dest.contains_parents_only(1) {
@@ -41,10 +41,11 @@ impl<T: UpwardMessageSender, W: WrapVersion> SendXcm for ParentAsUmp<T, W> {
let versioned_xcm =
W::wrap_version(&dest, msg).map_err(|()| SendError::DestinationUnsupported)?;
let data = versioned_xcm.encode();
let hash = data.using_encoded(sp_io::hashing::blake2_256);
T::send_upward_message(data).map_err(|e| SendError::Transport(e.into()))?;
Ok(())
Ok(hash)
} else {
// Anything else is unhandled. This includes a message this is meant for us.
Err(SendError::CannotReachDestination(dest, msg))