Struct abstract_interface::VersionControl
source · pub struct VersionControl<Chain>(/* private fields */);
Implementations§
source§impl<Chain> VersionControl<Chain>
impl<Chain> VersionControl<Chain>
source§impl<Chain: CwEnv> VersionControl<Chain>
impl<Chain: CwEnv> VersionControl<Chain>
pub fn load(chain: Chain, address: &Addr) -> Self
sourcepub fn module(&self, info: ModuleInfo) -> Result<Module, AbstractInterfaceError>
pub fn module(&self, info: ModuleInfo) -> Result<Module, AbstractInterfaceError>
Query a single module
pub fn register_base( &self, account: &AbstractAccount<Chain> ) -> Result<(), AbstractInterfaceError>
sourcepub fn register_account_mods(
&self,
apps: Vec<(&Contract<Chain>, String)>
) -> Result<(), AbstractInterfaceError>
pub fn register_account_mods( &self, apps: Vec<(&Contract<Chain>, String)> ) -> Result<(), AbstractInterfaceError>
Register account modules
sourcepub fn register_natives(
&self,
natives: Vec<(&Contract<Chain>, String)>
) -> Result<(), AbstractInterfaceError>
pub fn register_natives( &self, natives: Vec<(&Contract<Chain>, String)> ) -> Result<(), AbstractInterfaceError>
Register native modules
pub fn register_apps( &self, apps: Vec<(&Contract<Chain>, String)> ) -> Result<(), AbstractInterfaceError>
pub fn register_adapters( &self, adapters: Vec<(&Contract<Chain>, String)> ) -> Result<(), AbstractInterfaceError>
pub fn register_standalones( &self, standalones: Vec<(&Contract<Chain>, String)> ) -> Result<(), AbstractInterfaceError>
sourcepub fn approve_any_abstract_modules(&self) -> Result<(), AbstractInterfaceError>
pub fn approve_any_abstract_modules(&self) -> Result<(), AbstractInterfaceError>
Approve any abstract-namespaced pending modules.
pub fn get_account( &self, account_id: AccountId ) -> Result<AccountBase, AbstractInterfaceError>
sourcepub fn get_adapter_addr(
&self,
id: &str,
version: ModuleVersion
) -> Result<Addr, AbstractInterfaceError>
pub fn get_adapter_addr( &self, id: &str, version: ModuleVersion ) -> Result<Addr, AbstractInterfaceError>
Retrieves an Adapter’s address from version control given the module id and version.
sourcepub fn get_app_code(
&self,
id: &str,
version: ModuleVersion
) -> Result<u64, AbstractInterfaceError>
pub fn get_app_code( &self, id: &str, version: ModuleVersion ) -> Result<u64, AbstractInterfaceError>
Retrieves an APP’s code id from version control given the module id and version.
sourcepub fn get_module_code_id(
&self,
id: &str,
version: ModuleVersion
) -> Result<u64, AbstractInterfaceError>
pub fn get_module_code_id( &self, id: &str, version: ModuleVersion ) -> Result<u64, AbstractInterfaceError>
Retrieves an APP or STANDALONE code id from version control given the module id and version.
source§impl VersionControl<Mock>
impl VersionControl<Mock>
sourcepub fn approve_any_modules(&self) -> Result<(), AbstractInterfaceError>
pub fn approve_any_modules(&self) -> Result<(), AbstractInterfaceError>
Approve any pending modules.
Trait Implementations§
source§impl<Chain: Clone> Clone for VersionControl<Chain>
impl<Chain: Clone> Clone for VersionControl<Chain>
source§fn clone(&self) -> VersionControl<Chain>
fn clone(&self) -> VersionControl<Chain>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl<Chain: ChainState> ContractInstance<Chain> for VersionControl<Chain>
impl<Chain: ChainState> ContractInstance<Chain> for VersionControl<Chain>
source§fn as_instance(&self) -> &Contract<Chain>
fn as_instance(&self) -> &Contract<Chain>
Return a reference to the underlying contract instance.
source§fn as_instance_mut(&mut self) -> &mut Contract<Chain>
fn as_instance_mut(&mut self) -> &mut Contract<Chain>
Return a mutable reference to the underlying contract instance.
source§fn set_address(&self, address: &Addr)
fn set_address(&self, address: &Addr)
Sets the address for the contract. Useful when the contract is already initialized
and not registered in the configured state file.
source§fn set_default_address(&mut self, address: &Addr)
fn set_default_address(&mut self, address: &Addr)
Sets a default address for the contract. If the contract already has an address registered in the state, this won’t be used.
This is mostly used to ship address with a cw-orch package.
source§fn set_code_id(&self, code_id: u64)
fn set_code_id(&self, code_id: u64)
Sets the code_id for the contract. Useful when the contract is already initialized
and not registered in the configured state file.
source§fn set_default_code_id(&mut self, code_id: u64)
fn set_default_code_id(&mut self, code_id: u64)
Sets a default address for the contract. If the contract already has an address registered in the state, this won’t be used.
This is mostly used to ship address with a cw-orch package.
source§impl<Chain> ExecutableContract for VersionControl<Chain>
impl<Chain> ExecutableContract for VersionControl<Chain>
§type ExecuteMsg = ExecuteMsg
type ExecuteMsg = ExecuteMsg
Execute message for the contract.
source§impl<Chain> InstantiableContract for VersionControl<Chain>
impl<Chain> InstantiableContract for VersionControl<Chain>
§type InstantiateMsg = InstantiateMsg
type InstantiateMsg = InstantiateMsg
Instantiate message for the contract.
source§impl<Chain> MigratableContract for VersionControl<Chain>
impl<Chain> MigratableContract for VersionControl<Chain>
§type MigrateMsg = MigrateMsg
type MigrateMsg = MigrateMsg
Migrate message for the contract.
source§impl<Chain> QueryableContract for VersionControl<Chain>
impl<Chain> QueryableContract for VersionControl<Chain>
source§impl<Chain: CwEnv> Uploadable for VersionControl<Chain>
impl<Chain: CwEnv> Uploadable for VersionControl<Chain>
Auto Trait Implementations§
impl<Chain> Freeze for VersionControl<Chain>where
Chain: Freeze,
impl<Chain> RefUnwindSafe for VersionControl<Chain>where
Chain: RefUnwindSafe,
impl<Chain> Send for VersionControl<Chain>where
Chain: Send,
impl<Chain> Sync for VersionControl<Chain>where
Chain: Sync,
impl<Chain> Unpin for VersionControl<Chain>where
Chain: Unpin,
impl<Chain> UnwindSafe for VersionControl<Chain>where
Chain: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T, Chain> ConditionalMigrate<Chain> for T
impl<T, Chain> ConditionalMigrate<Chain> for T
source§fn migrate_if_needed(
&self,
migrate_msg: &Self::MigrateMsg
) -> Result<Option<<Chain as TxHandler>::Response>, CwEnvError>
fn migrate_if_needed( &self, migrate_msg: &Self::MigrateMsg ) -> Result<Option<<Chain as TxHandler>::Response>, CwEnvError>
Only migrate the contract if it is not on the latest code-id yet
source§fn upload_and_migrate_if_needed(
&self,
migrate_msg: &Self::MigrateMsg
) -> Result<Option<Vec<<Chain as TxHandler>::Response>>, CwEnvError>
fn upload_and_migrate_if_needed( &self, migrate_msg: &Self::MigrateMsg ) -> Result<Option<Vec<<Chain as TxHandler>::Response>>, CwEnvError>
Uploads the contract if the local contract hash is different from the latest on-chain code hash.
Proceeds to migrates the contract if the contract is not running the latest code.
source§impl<T, Chain> ConditionalUpload<Chain> for Twhere
Chain: CwEnv,
T: CwOrchUpload<Chain>,
impl<T, Chain> ConditionalUpload<Chain> for Twhere
Chain: CwEnv,
T: CwOrchUpload<Chain>,
source§fn upload_if_needed(
&self
) -> Result<Option<<Chain as TxHandler>::Response>, CwEnvError>
fn upload_if_needed( &self ) -> Result<Option<<Chain as TxHandler>::Response>, CwEnvError>
Only upload the contract if it is not uploaded yet (checksum does not match)
source§fn latest_is_uploaded(&self) -> Result<bool, CwEnvError>
fn latest_is_uploaded(&self) -> Result<bool, CwEnvError>
Returns whether the checksum of the WASM file matches the checksum of the latest uploaded code for this contract.
source§fn is_running_latest(&self) -> Result<bool, CwEnvError>
fn is_running_latest(&self) -> Result<bool, CwEnvError>
Returns whether the contract is running the latest uploaded code for it
source§impl<T, Chain> CwOrchExecute<Chain> for T
impl<T, Chain> CwOrchExecute<Chain> for T
source§fn execute(
&self,
execute_msg: &Self::ExecuteMsg,
coins: Option<&[Coin]>
) -> Result<<Chain as TxHandler>::Response, CwEnvError>
fn execute( &self, execute_msg: &Self::ExecuteMsg, coins: Option<&[Coin]> ) -> Result<<Chain as TxHandler>::Response, CwEnvError>
Send a ExecuteMsg to the contract.
source§impl<T, Chain> CwOrchInstantiate<Chain> for T
impl<T, Chain> CwOrchInstantiate<Chain> for T
source§fn instantiate(
&self,
instantiate_msg: &Self::InstantiateMsg,
admin: Option<&Addr>,
coins: Option<&[Coin]>
) -> Result<<Chain as TxHandler>::Response, CwEnvError>
fn instantiate( &self, instantiate_msg: &Self::InstantiateMsg, admin: Option<&Addr>, coins: Option<&[Coin]> ) -> Result<<Chain as TxHandler>::Response, CwEnvError>
Instantiates the contract.
source§fn instantiate2(
&self,
instantiate_msg: &Self::InstantiateMsg,
admin: Option<&Addr>,
coins: Option<&[Coin]>,
salt: Binary
) -> Result<<Chain as TxHandler>::Response, CwEnvError>
fn instantiate2( &self, instantiate_msg: &Self::InstantiateMsg, admin: Option<&Addr>, coins: Option<&[Coin]>, salt: Binary ) -> Result<<Chain as TxHandler>::Response, CwEnvError>
Instantiates the contract using instantiate2
source§impl<T, Chain> CwOrchMigrate<Chain> for T
impl<T, Chain> CwOrchMigrate<Chain> for T
source§fn migrate(
&self,
migrate_msg: &Self::MigrateMsg,
new_code_id: u64
) -> Result<<Chain as TxHandler>::Response, CwEnvError>
fn migrate( &self, migrate_msg: &Self::MigrateMsg, new_code_id: u64 ) -> Result<<Chain as TxHandler>::Response, CwEnvError>
Migrate the contract.
source§impl<T, Chain> CwOrchQuery<Chain> for T
impl<T, Chain> CwOrchQuery<Chain> for T
source§impl<T, Chain> CwOrchUpload<Chain> for T
impl<T, Chain> CwOrchUpload<Chain> for T
source§impl<SupportedContract, Chain> ExecuteMsgFns<Chain> for SupportedContract
impl<SupportedContract, Chain> ExecuteMsgFns<Chain> for SupportedContract
source§fn remove_module(
&self,
module: ModuleInfo
) -> Result<<Chain as TxHandler>::Response, CwEnvError>
fn remove_module( &self, module: ModuleInfo ) -> Result<<Chain as TxHandler>::Response, CwEnvError>
Automatically generated wrapper around ExecuteMsg::RemoveModule variant
source§fn yank_module(
&self,
module: ModuleInfo
) -> Result<<Chain as TxHandler>::Response, CwEnvError>
fn yank_module( &self, module: ModuleInfo ) -> Result<<Chain as TxHandler>::Response, CwEnvError>
Automatically generated wrapper around ExecuteMsg::YankModule variant
source§fn propose_modules(
&self,
modules: Vec<(ModuleInfo, ModuleReference)>
) -> Result<<Chain as TxHandler>::Response, CwEnvError>
fn propose_modules( &self, modules: Vec<(ModuleInfo, ModuleReference)> ) -> Result<<Chain as TxHandler>::Response, CwEnvError>
Automatically generated wrapper around ExecuteMsg::ProposeModules variant
source§fn update_module_configuration(
&self,
module_name: String,
namespace: Namespace,
update_module: UpdateModule
) -> Result<<Chain as TxHandler>::Response, CwEnvError>
fn update_module_configuration( &self, module_name: String, namespace: Namespace, update_module: UpdateModule ) -> Result<<Chain as TxHandler>::Response, CwEnvError>
Automatically generated wrapper around ExecuteMsg::UpdateModuleConfiguration variant
source§fn approve_or_reject_modules(
&self,
approves: Vec<ModuleInfo>,
rejects: Vec<ModuleInfo>
) -> Result<<Chain as TxHandler>::Response, CwEnvError>
fn approve_or_reject_modules( &self, approves: Vec<ModuleInfo>, rejects: Vec<ModuleInfo> ) -> Result<<Chain as TxHandler>::Response, CwEnvError>
Automatically generated wrapper around ExecuteMsg::ApproveOrRejectModules variant
source§fn claim_namespace(
&self,
account_id: AccountId,
namespace: String
) -> Result<<Chain as TxHandler>::Response, CwEnvError>
fn claim_namespace( &self, account_id: AccountId, namespace: String ) -> Result<<Chain as TxHandler>::Response, CwEnvError>
Automatically generated wrapper around ExecuteMsg::ClaimNamespace variant
source§fn remove_namespaces(
&self,
namespaces: Vec<String>
) -> Result<<Chain as TxHandler>::Response, CwEnvError>
fn remove_namespaces( &self, namespaces: Vec<String> ) -> Result<<Chain as TxHandler>::Response, CwEnvError>
Automatically generated wrapper around ExecuteMsg::RemoveNamespaces variant
source§fn add_account(
&self,
account_base: AccountBase,
account_id: AccountId,
namespace: Option<String>
) -> Result<<Chain as TxHandler>::Response, CwEnvError>
fn add_account( &self, account_base: AccountBase, account_id: AccountId, namespace: Option<String> ) -> Result<<Chain as TxHandler>::Response, CwEnvError>
Automatically generated wrapper around ExecuteMsg::AddAccount variant
source§fn update_config(
&self,
account_factory_address: Option<String>,
namespace_registration_fee: Option<Clearable<Coin>>,
security_disabled: Option<bool>
) -> Result<<Chain as TxHandler>::Response, CwEnvError>
fn update_config( &self, account_factory_address: Option<String>, namespace_registration_fee: Option<Clearable<Coin>>, security_disabled: Option<bool> ) -> Result<<Chain as TxHandler>::Response, CwEnvError>
Automatically generated wrapper around ExecuteMsg::UpdateConfig variant
source§fn update_ownership(
&self,
arg0: Action
) -> Result<<Chain as TxHandler>::Response, CwEnvError>
fn update_ownership( &self, arg0: Action ) -> Result<<Chain as TxHandler>::Response, CwEnvError>
Automatically generated wrapper around ExecuteMsg::UpdateOwnership variant
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§impl<SupportedContract, Chain> QueryMsgFns<Chain> for SupportedContract
impl<SupportedContract, Chain> QueryMsgFns<Chain> for SupportedContract
source§fn account_base(
&self,
account_id: AccountId
) -> Result<AccountBaseResponse, CwEnvError>
fn account_base( &self, account_id: AccountId ) -> Result<AccountBaseResponse, CwEnvError>
Automatically generated wrapper around QueryMsg::AccountBase variant
source§fn modules(&self, infos: Vec<ModuleInfo>) -> Result<ModulesResponse, CwEnvError>
fn modules(&self, infos: Vec<ModuleInfo>) -> Result<ModulesResponse, CwEnvError>
Automatically generated wrapper around QueryMsg::Modules variant
source§fn namespaces(
&self,
accounts: Vec<AccountId>
) -> Result<NamespacesResponse, CwEnvError>
fn namespaces( &self, accounts: Vec<AccountId> ) -> Result<NamespacesResponse, CwEnvError>
Automatically generated wrapper around QueryMsg::Namespaces variant
source§fn namespace(
&self,
namespace: Namespace
) -> Result<NamespaceResponse, CwEnvError>
fn namespace( &self, namespace: Namespace ) -> Result<NamespaceResponse, CwEnvError>
Automatically generated wrapper around QueryMsg::Namespace variant
source§fn config(&self) -> Result<ConfigResponse, CwEnvError>
fn config(&self) -> Result<ConfigResponse, CwEnvError>
Automatically generated wrapper around QueryMsg::Config variant
source§fn module_list(
&self,
filter: Option<ModuleFilter>,
limit: Option<u8>,
start_after: Option<ModuleInfo>
) -> Result<ModulesListResponse, CwEnvError>
fn module_list( &self, filter: Option<ModuleFilter>, limit: Option<u8>, start_after: Option<ModuleInfo> ) -> Result<ModulesListResponse, CwEnvError>
Automatically generated wrapper around QueryMsg::ModuleList variant
source§fn namespace_list(
&self,
limit: Option<u8>,
start_after: Option<String>
) -> Result<NamespaceListResponse, CwEnvError>
fn namespace_list( &self, limit: Option<u8>, start_after: Option<String> ) -> Result<NamespaceListResponse, CwEnvError>
Automatically generated wrapper around QueryMsg::NamespaceList variant