From 2a76b29e0532d8715acab550c71e90b59c067103 Mon Sep 17 00:00:00 2001 From: Daniel Shiposha Date: Mon, 08 Aug 2022 16:04:58 +0000 Subject: [PATCH] fix: use errors in unsupported runtime APIs --- --- a/pallets/common/src/lib.rs +++ b/pallets/common/src/lib.rs @@ -569,6 +569,9 @@ /// Tried to access an internal collection with an external API CollectionIsInternal, + + /// A method of an unsupported API was called + UnsupportedRuntimeApi, } /// Storage of the count of created collections. Essentially contains the last collection ID. --- a/runtime/common/mod.rs +++ b/runtime/common/mod.rs @@ -43,6 +43,8 @@ }; use common_types::{AccountId, BlockNumber}; +pub type CommonError = pallet_common::Error; + /// The address format for describing accounts. pub type Address = sp_runtime::MultiAddress; /// Block header type as expected by this runtime. --- a/runtime/common/runtime_apis.rs +++ b/runtime/common/runtime_apis.rs @@ -189,7 +189,6 @@ } } - #[allow(unused_variables)] impl rmrk_rpc::RmrkApi< Block, AccountId, @@ -206,41 +205,46 @@ return pallet_proxy_rmrk_core::rpc::last_collection_idx::(); #[cfg(not(feature = "rmrk"))] - return Ok(Default::default()); + return Err(CommonError::UnsupportedRuntimeApi.into()); } + #[allow(unused_variables)] fn collection_by_id(collection_id: RmrkCollectionId) -> Result>, DispatchError> { #[cfg(feature = "rmrk")] return pallet_proxy_rmrk_core::rpc::collection_by_id::(collection_id); #[cfg(not(feature = "rmrk"))] - return Ok(Default::default()) + return Err(CommonError::UnsupportedRuntimeApi.into()); } + #[allow(unused_variables)] fn nft_by_id(collection_id: RmrkCollectionId, nft_by_id: RmrkNftId) -> Result>, DispatchError> { #[cfg(feature = "rmrk")] return pallet_proxy_rmrk_core::rpc::nft_by_id::(collection_id, nft_by_id); #[cfg(not(feature = "rmrk"))] - return Ok(Default::default()) + return Err(CommonError::UnsupportedRuntimeApi.into()); } + #[allow(unused_variables)] fn account_tokens(account_id: AccountId, collection_id: RmrkCollectionId) -> Result, DispatchError> { #[cfg(feature = "rmrk")] return pallet_proxy_rmrk_core::rpc::account_tokens::(account_id, collection_id); #[cfg(not(feature = "rmrk"))] - return Ok(Default::default()) + return Err(CommonError::UnsupportedRuntimeApi.into()); } + #[allow(unused_variables)] fn nft_children(collection_id: RmrkCollectionId, nft_id: RmrkNftId) -> Result, DispatchError> { #[cfg(feature = "rmrk")] return pallet_proxy_rmrk_core::rpc::nft_children::(collection_id, nft_id); #[cfg(not(feature = "rmrk"))] - return Ok(Default::default()) + return Err(CommonError::UnsupportedRuntimeApi.into()); } + #[allow(unused_variables)] fn collection_properties( collection_id: RmrkCollectionId, filter_keys: Option> @@ -249,9 +253,10 @@ return pallet_proxy_rmrk_core::rpc::collection_properties::(collection_id, filter_keys); #[cfg(not(feature = "rmrk"))] - return Ok(Default::default()) + return Err(CommonError::UnsupportedRuntimeApi.into()); } + #[allow(unused_variables)] fn nft_properties( collection_id: RmrkCollectionId, nft_id: RmrkNftId, @@ -261,17 +266,19 @@ return pallet_proxy_rmrk_core::rpc::nft_properties::(collection_id, nft_id, filter_keys); #[cfg(not(feature = "rmrk"))] - return Ok(Default::default()) + return Err(CommonError::UnsupportedRuntimeApi.into()); } + #[allow(unused_variables)] fn nft_resources(collection_id: RmrkCollectionId,nft_id: RmrkNftId) -> Result, DispatchError> { #[cfg(feature = "rmrk")] return pallet_proxy_rmrk_core::rpc::nft_resources::(collection_id, nft_id); #[cfg(not(feature = "rmrk"))] - return Ok(Default::default()) + return Err(CommonError::UnsupportedRuntimeApi.into()); } + #[allow(unused_variables)] fn nft_resource_priority( collection_id: RmrkCollectionId, nft_id: RmrkNftId, @@ -281,33 +288,37 @@ return pallet_proxy_rmrk_core::rpc::nft_resource_priority::(collection_id, nft_id, resource_id); #[cfg(not(feature = "rmrk"))] - return Ok(Default::default()) + return Err(CommonError::UnsupportedRuntimeApi.into()); } + #[allow(unused_variables)] fn base(base_id: RmrkBaseId) -> Result>, DispatchError> { #[cfg(feature = "rmrk")] return pallet_proxy_rmrk_equip::rpc::base::(base_id); #[cfg(not(feature = "rmrk"))] - return Ok(Default::default()) + return Err(CommonError::UnsupportedRuntimeApi.into()); } + #[allow(unused_variables)] fn base_parts(base_id: RmrkBaseId) -> Result, DispatchError> { #[cfg(feature = "rmrk")] return pallet_proxy_rmrk_equip::rpc::base_parts::(base_id); #[cfg(not(feature = "rmrk"))] - return Ok(Default::default()) + return Err(CommonError::UnsupportedRuntimeApi.into()); } + #[allow(unused_variables)] fn theme_names(base_id: RmrkBaseId) -> Result, DispatchError> { #[cfg(feature = "rmrk")] return pallet_proxy_rmrk_equip::rpc::theme_names::(base_id); #[cfg(not(feature = "rmrk"))] - Ok(Default::default()) + return Err(CommonError::UnsupportedRuntimeApi.into()); } + #[allow(unused_variables)] fn theme( base_id: RmrkBaseId, theme_name: RmrkThemeName, @@ -317,7 +328,7 @@ return pallet_proxy_rmrk_equip::rpc::theme::(base_id, theme_name, filter_keys); #[cfg(not(feature = "rmrk"))] - return Ok(Default::default()) + return Err(CommonError::UnsupportedRuntimeApi.into()); } } -- gitstuff