Struct abstract_ibc_host::state::Host
source · pub struct Host<Error: From<StdError> + From<HostError> + From<AbstractSdkError> + 'static, CustomInitMsg: 'static = Empty, CustomExecMsg: 'static = Empty, CustomQueryMsg: 'static = Empty, CustomMigrateMsg: 'static = Empty, Receive: 'static = Empty> {
pub admin: Admin<'static>,
pub proxy_address: Option<Addr>,
/* private fields */
}Expand description
The state variables for our host contract.
Fields§
§admin: Admin<'static>§proxy_address: Option<Addr>Implementations§
source§impl<Error: From<StdError> + From<HostError> + From<AbstractSdkError>, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg> Host<Error, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg>
impl<Error: From<StdError> + From<HostError> + From<AbstractSdkError>, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg> Host<Error, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg>
pub fn receive_balances( &self, deps: DepsMut<'_> ) -> Result<IbcReceiveResponse, HostError>
pub fn receive_dispatch( &self, deps: DepsMut<'_>, msgs: Vec<CosmosMsg> ) -> Result<IbcReceiveResponse, HostError>
sourcepub fn receive_send_all_back(
&self,
deps: DepsMut<'_>,
env: Env,
client_proxy_address: String,
client_chain: String
) -> Result<IbcReceiveResponse, HostError>
pub fn receive_send_all_back( &self, deps: DepsMut<'_>, env: Env, client_proxy_address: String, client_chain: String ) -> Result<IbcReceiveResponse, HostError>
processes PacketMsg::SendAllBack variant
source§impl<Error: From<StdError> + From<HostError> + From<AbstractSdkError>, CustomExecMsg: DeserializeOwned, CustomInitMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg> Host<Error, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg>
impl<Error: From<StdError> + From<HostError> + From<AbstractSdkError>, CustomExecMsg: DeserializeOwned, CustomInitMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg> Host<Error, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg>
The host contract base implementation.
sourcepub fn handle_packet<RequestError: From<StdError> + From<HostError> + From<AbstractSdkError>>(
self,
deps: DepsMut<'_>,
env: Env,
packet: IbcPacketReceiveMsg,
packet_handler: impl FnOnce(DepsMut<'_>, Env, Self, CustomExecMsg) -> Result<IbcReceiveResponse, RequestError>
) -> Result<IbcReceiveResponse, RequestError>
pub fn handle_packet<RequestError: From<StdError> + From<HostError> + From<AbstractSdkError>>( self, deps: DepsMut<'_>, env: Env, packet: IbcPacketReceiveMsg, packet_handler: impl FnOnce(DepsMut<'_>, Env, Self, CustomExecMsg) -> Result<IbcReceiveResponse, RequestError> ) -> Result<IbcReceiveResponse, RequestError>
Takes ibc request, matches and executes This fn is the only way to get an Host instance.
pub fn base_execute( self, deps: DepsMut<'_>, _env: Env, info: MessageInfo, message: BaseExecuteMsg ) -> Result<Response, HostError>
source§impl<Error: From<StdError> + From<HostError> + From<AbstractSdkError>, CustomExecMsg: Serialize + JsonSchema, CustomInitMsg: Serialize + JsonSchema, CustomQueryMsg: Serialize + JsonSchema, CustomMigrateMsg: Serialize + JsonSchema, ReceiveMsg: Serialize + JsonSchema> Host<Error, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg>
impl<Error: From<StdError> + From<HostError> + From<AbstractSdkError>, CustomExecMsg: Serialize + JsonSchema, CustomInitMsg: Serialize + JsonSchema, CustomQueryMsg: Serialize + JsonSchema, CustomMigrateMsg: Serialize + JsonSchema, ReceiveMsg: Serialize + JsonSchema> Host<Error, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg>
pub fn export_schema(out_dir: &Path)
source§impl<Error: From<StdError> + From<HostError> + From<AbstractSdkError>, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg> Host<Error, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg>
impl<Error: From<StdError> + From<HostError> + From<AbstractSdkError>, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg> Host<Error, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg>
pub const fn new( name: &'static str, version: &'static str, chain: &'static str, metadata: Option<&'static str> ) -> Self
sourcepub const fn with_replies(
self,
reply_handlers: &'static [(u64, ReplyHandlerFn<Self, Error>)]
) -> Self
pub const fn with_replies( self, reply_handlers: &'static [(u64, ReplyHandlerFn<Self, Error>)] ) -> Self
add reply handler to contract
pub fn state(&self, store: &dyn Storage) -> StdResult<HostState>
pub fn target(&self) -> Result<&Addr, HostError>
pub const fn with_instantiate( self, instantiate_handler: InstantiateHandlerFn<Self, CustomInitMsg, Error> ) -> Self
pub const fn with_receive( self, receive_handler: ReceiveHandlerFn<Self, ReceiveMsg, Error> ) -> Self
pub const fn with_execute( self, execute_handler: ExecuteHandlerFn<Self, CustomExecMsg, Error> ) -> Self
pub const fn with_query( self, query_handler: QueryHandlerFn<Self, CustomQueryMsg, Error> ) -> Self
Trait Implementations§
source§impl<Error: From<StdError> + From<HostError> + From<AbstractSdkError>, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg> AbstractNameService for Host<Error, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg>
impl<Error: From<StdError> + From<HostError> + From<AbstractSdkError>, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg> AbstractNameService for Host<Error, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg>
source§impl<Error: From<StdError> + From<HostError> + From<AbstractSdkError>, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg> AccountIdentification for Host<Error, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg>
impl<Error: From<StdError> + From<HostError> + From<AbstractSdkError>, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg> AccountIdentification for Host<Error, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg>
fn proxy_address(&self, _deps: Deps<'_>) -> AbstractSdkResult<Addr>
fn manager_address(&self, _deps: Deps<'_>) -> AbstractSdkResult<Addr>
fn account_base(&self, _deps: Deps<'_>) -> AbstractSdkResult<AccountBase>
source§fn account_id(&self, _deps: Deps<'_>) -> AbstractSdkResult<AccountId>
fn account_id(&self, _deps: Deps<'_>) -> AbstractSdkResult<AccountId>
Get the Account id for the current context.
source§impl<Error: From<StdError> + From<HostError> + From<AbstractSdkError>, CustomInitMsg, CustomExecMsg: Serialize + DeserializeOwned + JsonSchema, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg: Serialize + JsonSchema> ExecuteEndpoint for Host<Error, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg>
impl<Error: From<StdError> + From<HostError> + From<AbstractSdkError>, CustomInitMsg, CustomExecMsg: Serialize + DeserializeOwned + JsonSchema, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg: Serialize + JsonSchema> ExecuteEndpoint for Host<Error, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg>
The host contract base implementation.
type ExecuteMsg = ExecuteMsg<BaseExecuteMsg, CustomExecMsg, ReceiveMsg>
source§fn execute(
self,
deps: DepsMut<'_>,
env: Env,
info: MessageInfo,
msg: Self::ExecuteMsg
) -> Result<Response, Self::Error>
fn execute( self, deps: DepsMut<'_>, env: Env, info: MessageInfo, msg: Self::ExecuteMsg ) -> Result<Response, Self::Error>
Handler for the Execute endpoint.
source§impl<Error: From<StdError> + From<HostError> + From<AbstractSdkError>, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg> Handler for Host<Error, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg>
impl<Error: From<StdError> + From<HostError> + From<AbstractSdkError>, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg> Handler for Host<Error, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg>
type Error = Error
type CustomExecMsg = CustomExecMsg
type CustomInitMsg = CustomInitMsg
type CustomQueryMsg = CustomQueryMsg
type CustomMigrateMsg = CustomMigrateMsg
type ReceiveMsg = ReceiveMsg
fn contract( &self ) -> &AbstractContract<Self, Self::Error, Self::CustomInitMsg, Self::CustomExecMsg, Self::CustomQueryMsg, Self::CustomMigrateMsg, Self::ReceiveMsg>
fn stored_version( &self, store: &dyn Storage ) -> Result<ContractVersion, AbstractSdkError>
fn info(&self) -> (&'static str, &'static str, Option<&'static str>)
fn dependencies(&self) -> &'static [StaticDependency]
fn maybe_execute_handler( &self ) -> Option<fn(_: DepsMut<'_, Empty>, _: Env, _: MessageInfo, _: Self, _: Self::CustomExecMsg) -> Result<Response<Empty>, Self::Error>>
fn execute_handler( &self ) -> Result<fn(_: DepsMut<'_, Empty>, _: Env, _: MessageInfo, _: Self, _: Self::CustomExecMsg) -> Result<Response<Empty>, Self::Error>, AbstractSdkError>
fn maybe_instantiate_handler( &self ) -> Option<fn(_: DepsMut<'_, Empty>, _: Env, _: MessageInfo, _: Self, _: Self::CustomInitMsg) -> Result<Response<Empty>, Self::Error>>
fn instantiate_handler( &self ) -> Result<fn(_: DepsMut<'_, Empty>, _: Env, _: MessageInfo, _: Self, _: Self::CustomInitMsg) -> Result<Response<Empty>, Self::Error>, AbstractSdkError>
fn maybe_query_handler( &self ) -> Option<fn(_: Deps<'_, Empty>, _: Env, _: &Self, _: Self::CustomQueryMsg) -> Result<Binary, Self::Error>>
fn query_handler( &self ) -> Result<fn(_: Deps<'_, Empty>, _: Env, _: &Self, _: Self::CustomQueryMsg) -> Result<Binary, Self::Error>, AbstractSdkError>
fn maybe_migrate_handler( &self ) -> Option<fn(_: DepsMut<'_, Empty>, _: Env, _: Self, _: Self::CustomMigrateMsg) -> Result<Response<Empty>, Self::Error>>
fn migrate_handler( &self ) -> Result<fn(_: DepsMut<'_, Empty>, _: Env, _: Self, _: Self::CustomMigrateMsg) -> Result<Response<Empty>, Self::Error>, AbstractSdkError>
fn maybe_receive_handler( &self ) -> Option<fn(_: DepsMut<'_, Empty>, _: Env, _: MessageInfo, _: Self, _: Self::ReceiveMsg) -> Result<Response<Empty>, Self::Error>>
fn receive_handler( &self ) -> Result<fn(_: DepsMut<'_, Empty>, _: Env, _: MessageInfo, _: Self, _: Self::ReceiveMsg) -> Result<Response<Empty>, Self::Error>, AbstractSdkError>
fn maybe_ibc_callback_handler( &self, id: &str ) -> Option<fn(_: DepsMut<'_, Empty>, _: Env, _: MessageInfo, _: Self, _: String, _: StdAck) -> Result<Response<Empty>, Self::Error>>
fn maybe_reply_handler( &self, id: u64 ) -> Option<fn(_: DepsMut<'_, Empty>, _: Env, _: Self, _: Reply) -> Result<Response<Empty>, Self::Error>>
fn reply_handler( &self, id: u64 ) -> Result<fn(_: DepsMut<'_, Empty>, _: Env, _: Self, _: Reply) -> Result<Response<Empty>, Self::Error>, AbstractSdkError>
source§impl<Error: From<StdError> + From<HostError> + From<AbstractSdkError>, CustomInitMsg: Serialize + JsonSchema, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg> InstantiateEndpoint for Host<Error, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg>
impl<Error: From<StdError> + From<HostError> + From<AbstractSdkError>, CustomInitMsg: Serialize + JsonSchema, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg> InstantiateEndpoint for Host<Error, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg>
§type InstantiateMsg = InstantiateMsg<BaseInstantiateMsg, <Host<Error, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg> as Handler>::CustomInitMsg>
type InstantiateMsg = InstantiateMsg<BaseInstantiateMsg, <Host<Error, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg> as Handler>::CustomInitMsg>
Instantiate the api
source§fn instantiate(
self,
deps: DepsMut<'_>,
env: Env,
info: MessageInfo,
msg: Self::InstantiateMsg
) -> Result<Response, Error>
fn instantiate( self, deps: DepsMut<'_>, env: Env, info: MessageInfo, msg: Self::InstantiateMsg ) -> Result<Response, Error>
Handler for the Instantiate endpoint.
source§impl<Error: From<StdError> + From<HostError> + From<AbstractSdkError>, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg: Serialize + JsonSchema, ReceiveMsg> MigrateEndpoint for Host<Error, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg>
impl<Error: From<StdError> + From<HostError> + From<AbstractSdkError>, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg: Serialize + JsonSchema, ReceiveMsg> MigrateEndpoint for Host<Error, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg>
type MigrateMsg = MigrateMsg<BaseMigrateMsg, CustomMigrateMsg>
source§impl<Error: From<StdError> + From<HostError> + From<AbstractSdkError>, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg> QueryEndpoint for Host<Error, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg>
impl<Error: From<StdError> + From<HostError> + From<AbstractSdkError>, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg> QueryEndpoint for Host<Error, CustomInitMsg, CustomExecMsg, CustomQueryMsg, CustomMigrateMsg, ReceiveMsg>
Where we dispatch the queries for the Host
These ApiQueryMsg declarations can be found in abstract_sdk::core::common_module::app_msg