pub struct VersionControl<Chain: CwEnv>(_);
Implementations§
source§impl<Chain: CwEnv> VersionControl<Chain>where
TxResponse<Chain>: IndexResponse,
impl<Chain: CwEnv> VersionControl<Chain>where TxResponse<Chain>: IndexResponse,
pub fn new(name: &str, chain: Chain) -> Self
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>, version: &str ) -> Result<(), AbstractInterfaceError>
sourcepub fn register_account_mods(
&self,
apps: Vec<&Contract<Chain>>,
version: &Version
) -> Result<(), AbstractInterfaceError>
pub fn register_account_mods( &self, apps: Vec<&Contract<Chain>>, version: &Version ) -> Result<(), AbstractInterfaceError>
Register account modules
sourcepub fn register_natives(
&self,
natives: Vec<&Contract<Chain>>,
version: &Version
) -> Result<(), AbstractInterfaceError>
pub fn register_natives( &self, natives: Vec<&Contract<Chain>>, version: &Version ) -> Result<(), AbstractInterfaceError>
Register native modules
pub fn register_apps( &self, apps: Vec<&Contract<Chain>>, version: &Version ) -> Result<(), AbstractInterfaceError>
pub fn register_adapters( &self, adapters: Vec<&Contract<Chain>>, version: &Version ) -> Result<(), AbstractInterfaceError>
pub fn register_standalones( &self, standalones: Vec<&Contract<Chain>>, version: &Version ) -> Result<(), AbstractInterfaceError>
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.
Trait Implementations§
source§impl<Chain: Clone + CwEnv> Clone for VersionControl<Chain>
impl<Chain: Clone + CwEnv> 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: CwEnv> ContractInstance<Chain> for VersionControl<Chain>
impl<Chain: CwEnv> 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 address(&self) -> Result<Addr, CwOrchError>
fn address(&self) -> Result<Addr, CwOrchError>
Returns the contract address for this 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_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 get_chain_mut(&mut self) -> &mut Chain
fn get_chain_mut(&mut self) -> &mut Chain
Returns the chain that this contract is deployed on.
source§impl<Chain: CwEnv> ExecutableContract for VersionControl<Chain>
impl<Chain: CwEnv> ExecutableContract for VersionControl<Chain>
type ExecuteMsg = ExecuteMsg
source§impl<Chain: CwEnv> InstantiableContract for VersionControl<Chain>
impl<Chain: CwEnv> InstantiableContract for VersionControl<Chain>
type InstantiateMsg = InstantiateMsg
source§impl<Chain: CwEnv> MigratableContract for VersionControl<Chain>
impl<Chain: CwEnv> MigratableContract for VersionControl<Chain>
type MigrateMsg = MigrateMsg
source§impl<Chain: CwEnv> QueryableContract for VersionControl<Chain>
impl<Chain: CwEnv> QueryableContract for VersionControl<Chain>
source§impl<Chain: CwEnv> Uploadable for VersionControl<Chain>
impl<Chain: CwEnv> Uploadable for VersionControl<Chain>
Auto Trait Implementations§
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> CallAs<Daemon> for Twhere
T: CwOrcExecute<Daemon> + ContractInstance<Daemon> + Clone,
impl<T> CallAs<Daemon> for Twhere T: CwOrcExecute<Daemon> + ContractInstance<Daemon> + Clone,
source§impl<T> CallAs<Mock<MockState, Empty, Empty>> for Twhere
T: CwOrcExecute<Mock<MockState, Empty, Empty>> + ContractInstance<Mock<MockState, Empty, Empty>> + Clone,
impl<T> CallAs<Mock<MockState, Empty, Empty>> for Twhere T: CwOrcExecute<Mock<MockState, Empty, Empty>> + ContractInstance<Mock<MockState, Empty, Empty>> + Clone,
source§impl<T> ConditionalMigrate for Twhere
T: CwOrcMigrate<Daemon> + CwOrcUpload<Daemon>,
impl<T> ConditionalMigrate for Twhere T: CwOrcMigrate<Daemon> + CwOrcUpload<Daemon>,
source§fn migrate_if_needed(
&self,
migrate_msg: &Self::MigrateMsg
) -> Result<Option<<Daemon as TxHandler>::Response>, CwOrchError>
fn migrate_if_needed( &self, migrate_msg: &Self::MigrateMsg ) -> Result<Option<<Daemon as TxHandler>::Response>, CwOrchError>
Only migrate the contract if it is not on the latest code-id yet
source§impl<T> ConditionalUpload for Twhere
T: CwOrcUpload<Daemon>,
impl<T> ConditionalUpload for Twhere T: CwOrcUpload<Daemon>,
source§fn upload_if_needed(
&self
) -> Result<Option<<Daemon as TxHandler>::Response>, CwOrchError>
fn upload_if_needed( &self ) -> Result<Option<<Daemon as TxHandler>::Response>, CwOrchError>
Only upload the contract if it is not uploaded yet (checksum does not match)
source§fn latest_is_uploaded(&self) -> Result<bool, CwOrchError>
fn latest_is_uploaded(&self) -> Result<bool, CwOrchError>
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, CwOrchError>
fn is_running_latest(&self) -> Result<bool, CwOrchError>
Returns whether the contract is running the latest uploaded code for it
source§impl<T, Chain> CwOrcExecute<Chain> for Twhere
T: ExecutableContract + ContractInstance<Chain>,
Chain: CwEnv,
impl<T, Chain> CwOrcExecute<Chain> for Twhere T: ExecutableContract + ContractInstance<Chain>, Chain: CwEnv,
source§fn execute(
&self,
execute_msg: &Self::ExecuteMsg,
coins: Option<&[Coin]>
) -> Result<<Chain as TxHandler>::Response, CwOrchError>
fn execute( &self, execute_msg: &Self::ExecuteMsg, coins: Option<&[Coin]> ) -> Result<<Chain as TxHandler>::Response, CwOrchError>
Send a ExecuteMsg to the contract.
source§impl<T, Chain> CwOrcInstantiate<Chain> for Twhere
T: InstantiableContract + ContractInstance<Chain>,
Chain: CwEnv,
impl<T, Chain> CwOrcInstantiate<Chain> for Twhere T: InstantiableContract + ContractInstance<Chain>, Chain: CwEnv,
source§fn instantiate(
&self,
instantiate_msg: &Self::InstantiateMsg,
admin: Option<&Addr>,
coins: Option<&[Coin]>
) -> Result<<Chain as TxHandler>::Response, CwOrchError>
fn instantiate( &self, instantiate_msg: &Self::InstantiateMsg, admin: Option<&Addr>, coins: Option<&[Coin]> ) -> Result<<Chain as TxHandler>::Response, CwOrchError>
Instantiates the contract.
source§impl<T, Chain> CwOrcMigrate<Chain> for Twhere
T: MigratableContract + ContractInstance<Chain>,
Chain: CwEnv,
impl<T, Chain> CwOrcMigrate<Chain> for Twhere T: MigratableContract + ContractInstance<Chain>, Chain: CwEnv,
source§fn migrate(
&self,
migrate_msg: &Self::MigrateMsg,
new_code_id: u64
) -> Result<<Chain as TxHandler>::Response, CwOrchError>
fn migrate( &self, migrate_msg: &Self::MigrateMsg, new_code_id: u64 ) -> Result<<Chain as TxHandler>::Response, CwOrchError>
Migrate the contract.
source§impl<T, Chain> CwOrcQuery<Chain> for Twhere
T: QueryableContract + ContractInstance<Chain>,
Chain: CwEnv,
impl<T, Chain> CwOrcQuery<Chain> for Twhere T: QueryableContract + ContractInstance<Chain>, Chain: CwEnv,
source§fn query<G>(&self, query_msg: &Self::QueryMsg) -> Result<G, CwOrchError>where
G: Serialize + DeserializeOwned + Debug,
fn query<G>(&self, query_msg: &Self::QueryMsg) -> Result<G, CwOrchError>where G: Serialize + DeserializeOwned + Debug,
Query the contract.
source§impl<T, Chain> CwOrcUpload<Chain> for Twhere
T: ContractInstance<Chain> + Uploadable,
Chain: CwEnv + ChainUpload,
impl<T, Chain> CwOrcUpload<Chain> for Twhere T: ContractInstance<Chain> + Uploadable, Chain: CwEnv + ChainUpload,
source§impl<SupportedContract, Chain> ExecuteMsgFns<Chain> for SupportedContractwhere
Chain: CwEnv,
SupportedContract: CwOrcExecute<Chain, ExecuteMsg = ExecuteMsg>,
impl<SupportedContract, Chain> ExecuteMsgFns<Chain> for SupportedContractwhere Chain: CwEnv, SupportedContract: CwOrcExecute<Chain, ExecuteMsg = ExecuteMsg>,
fn remove_module( &self, module: ModuleInfo ) -> Result<<Chain as TxHandler>::Response, CwOrchError>
fn yank_module( &self, module: ModuleInfo ) -> Result<<Chain as TxHandler>::Response, CwOrchError>
fn propose_modules( &self, modules: Vec<(ModuleInfo, ModuleReference), Global> ) -> Result<<Chain as TxHandler>::Response, CwOrchError>
fn approve_or_reject_modules( &self, approves: Vec<ModuleInfo, Global>, rejects: Vec<ModuleInfo, Global> ) -> Result<<Chain as TxHandler>::Response, CwOrchError>
fn claim_namespaces( &self, account_id: u32, namespaces: Vec<String, Global> ) -> Result<<Chain as TxHandler>::Response, CwOrchError>
fn remove_namespaces( &self, namespaces: Vec<String, Global> ) -> Result<<Chain as TxHandler>::Response, CwOrchError>
fn add_account( &self, account_base: AccountBase, account_id: u32 ) -> Result<<Chain as TxHandler>::Response, CwOrchError>
fn update_namespace_limit( &self, new_limit: u32 ) -> Result<<Chain as TxHandler>::Response, CwOrchError>
fn set_factory( &self, new_factory: String ) -> Result<<Chain as TxHandler>::Response, CwOrchError>
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T
in a tonic::Request