pub struct BridgeCallApi<'api> { /* private fields */ }

Implementations§

source§

impl<'api> BridgeCallApi<'api>

source

pub fn change_controller( &self, controller: AccountId ) -> Result<WrappedCall<'api>>

Changes the controller account as admin.

Errors
  • BadAdmin if origin is not Self::admin() account.
source

pub fn change_admin(&self, admin: AccountId) -> Result<WrappedCall<'api>>

Changes the bridge admin key.

Errors
  • BadAdmin if origin is not Self::admin() account.
source

pub fn change_timelock(&self, timelock: u32) -> Result<WrappedCall<'api>>

Changes the timelock period.

Errors
  • BadAdmin if origin is not Self::admin() account.
source

pub fn freeze(&self) -> Result<WrappedCall<'api>>

Freezes transaction handling in the bridge module if it is not already frozen. When the bridge is frozen, attempted transactions get postponed instead of getting handled.

Errors
  • BadAdmin if origin is not Self::admin() account.
source

pub fn unfreeze(&self) -> Result<WrappedCall<'api>>

Unfreezes transaction handling in the bridge module if it is frozen.

Errors
  • BadAdmin if origin is not Self::admin() account.
source

pub fn change_bridge_limit( &self, amount: u128, duration: u32 ) -> Result<WrappedCall<'api>>

Changes the bridge limits.

Errors
  • BadAdmin if origin is not Self::admin() account.
  • DivisionByZero if duration is zero.
source

pub fn change_bridge_exempted( &self, exempted: Vec<(IdentityId, bool)> ) -> Result<WrappedCall<'api>>

Changes the bridge limit exempted list.

Errors
  • BadAdmin if origin is not Self::admin() account.
source

pub fn force_handle_bridge_tx( &self, bridge_tx: BridgeTx<AccountId> ) -> Result<WrappedCall<'api>>

Forces handling a transaction by bypassing the bridge limit and timelock.

Errors
  • BadAdmin if origin is not Self::admin() account.
  • NoValidCdd if bridge_tx.recipient does not have a valid CDD claim.
source

pub fn batch_propose_bridge_tx( &self, bridge_txs: Vec<BridgeTx<AccountId>> ) -> Result<WrappedCall<'api>>

Proposes a vector of bridge transactions. The vector is processed until the first proposal which causes an error, in which case the error is returned and the rest of proposals are not processed.

Errors
  • ControllerNotSet if Controllers was not set.
Weight

500_000_000 + 7_000_000 * bridge_txs.len()

source

pub fn propose_bridge_tx( &self, bridge_tx: BridgeTx<AccountId> ) -> Result<WrappedCall<'api>>

Proposes a bridge transaction, which amounts to making a multisig proposal for the bridge transaction if the transaction is new or approving an existing proposal if the transaction has already been proposed.

Errors
  • ControllerNotSet if Controllers was not set.
source

pub fn handle_bridge_tx( &self, bridge_tx: BridgeTx<AccountId> ) -> Result<WrappedCall<'api>>

Handles an approved bridge transaction proposal.

Errors
  • BadCaller if origin is not Self::controller or Self::admin.
  • TimelockedTx if the transaction status is Timelocked.
  • ProposalAlreadyHandled if the transaction status is Handled.
source

pub fn freeze_txs( &self, bridge_txs: Vec<BridgeTx<AccountId>> ) -> Result<WrappedCall<'api>>

Freezes given bridge transactions. If any bridge txn is already handled then this function will just ignore it and process next one.

Errors
  • BadAdmin if origin is not Self::admin() account.
Weight

400_000_000 + 2_000_000 * bridge_txs.len()

source

pub fn unfreeze_txs( &self, bridge_txs: Vec<BridgeTx<AccountId>> ) -> Result<WrappedCall<'api>>

Unfreezes given bridge transactions. If any bridge txn is already handled then this function will just ignore it and process next one.

Errors
  • BadAdmin if origin is not Self::admin() account.
Weight

400_000_000 + 7_000_000 * bridge_txs.len()

source

pub fn handle_scheduled_bridge_tx( &self, bridge_tx: BridgeTx<AccountId> ) -> Result<WrappedCall<'api>>

Root callable extrinsic, used as an internal call to handle a scheduled timelocked bridge transaction.

Errors
  • BadOrigin if origin is not root.
  • ProposalAlreadyHandled if transaction status is Handled.
  • FrozenTx if transaction status is Frozen.
source

pub fn add_freeze_admin( &self, freeze_admin: AccountId ) -> Result<WrappedCall<'api>>

Add a freeze admin.

Errors
  • BadAdmin if origin is not Self::admin() account.
source

pub fn remove_freeze_admin( &self, freeze_admin: AccountId ) -> Result<WrappedCall<'api>>

Remove a freeze admin.

Errors
  • BadAdmin if origin is not Self::admin() account.
source

pub fn remove_txs( &self, bridge_txs: Vec<BridgeTx<AccountId>> ) -> Result<WrappedCall<'api>>

Remove given bridge transactions.

Errors
  • BadAdmin if origin is not Self::admin() account.
  • NotFrozen if a tx in bridge_txs is not frozen.

Trait Implementations§

source§

impl<'api> Clone for BridgeCallApi<'api>

source§

fn clone(&self) -> BridgeCallApi<'api>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<'api> From<&'api Api> for BridgeCallApi<'api>

source§

fn from(api: &'api Api) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl<'api> !RefUnwindSafe for BridgeCallApi<'api>

§

impl<'api> Send for BridgeCallApi<'api>

§

impl<'api> Sync for BridgeCallApi<'api>

§

impl<'api> Unpin for BridgeCallApi<'api>

§

impl<'api> !UnwindSafe for BridgeCallApi<'api>

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> CheckedConversion for T

§

fn checked_from<T>(t: T) -> Option<Self>where Self: TryFrom<T>,

Convert from a value of T into an equivalent instance of Option<Self>. Read more
§

fn checked_into<T>(self) -> Option<T>where Self: TryInto<T>,

Consume self to return Some equivalent value of Option<T>. Read more
§

impl<T> Downcast for Twhere T: Any,

§

fn into_any(self: Box<T, Global>) -> Box<dyn Any, Global>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
§

fn into_any_rc(self: Rc<T, Global>) -> Rc<dyn Any, Global>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
§

impl<T> DowncastSync for Twhere T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T, Global>) -> Arc<dyn Any + Sync + Send, Global>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
source§

impl<T> DynClone for Twhere T: Clone,

source§

fn __clone_box(&self, _: Private) -> *mut ()

source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T, Outer> IsWrappedBy<Outer> for Twhere Outer: AsRef<T> + AsMut<T> + From<T>, T: From<Outer>,

§

fn from_ref(outer: &Outer) -> &T

Get a reference to the inner from the outer.

§

fn from_mut(outer: &mut Outer) -> &mut T

Get a mutable reference to the inner from the outer.

source§

impl<T> Same<T> for T

§

type Output = T

Should always be Self
source§

impl<T> SaturatedConversion for T

source§

fn saturated_from<T>(t: T) -> Selfwhere Self: UniqueSaturatedFrom<T>,

Convert from a value of T into an equivalent instance of Self. Read more
source§

fn saturated_into<T>(self) -> Twhere Self: UniqueSaturatedInto<T>,

Consume self to return an equivalent value of T. Read more
source§

impl<T> SaturatedConversion for T

source§

fn saturated_from<T>(t: T) -> Selfwhere Self: UniqueSaturatedFrom<T>,

Convert from a value of T into an equivalent instance of Self. Read more
source§

fn saturated_into<T>(self) -> Twhere Self: UniqueSaturatedInto<T>,

Consume self to return an equivalent value of T. Read more
source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<S, T> UncheckedInto<T> for Swhere T: UncheckedFrom<S>,

§

fn unchecked_into(self) -> T

The counterpart to unchecked_from.
source§

impl<T, S> UniqueSaturatedInto<T> for Swhere T: Bounded, S: TryInto<T>,

source§

fn unique_saturated_into(self) -> T

Consume self to return an equivalent value of T.
source§

impl<T, S> UniqueSaturatedInto<T> for Swhere T: Bounded, S: TryInto<T>,

source§

fn unique_saturated_into(self) -> T

Consume self to return an equivalent value of T.
§

impl<V, T> VZip<V> for Twhere V: MultiLane<T>,

§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
§

impl<T> MaybeSend for Twhere T: Send,