Struct ExternalAgentsCallApi

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

Implementations§

Source§

impl<'api> ExternalAgentsCallApi<'api>

Source

pub fn create_group( &self, asset_id: AssetId, perms: ExtrinsicPermissions, ) -> Result<WrappedCall>

Creates a custom agent group (AG) for the given asset_id.

The AG will have the permissions as given by perms. This new AG is then assigned id = AGIdSequence::get() + 1 as its AGId, which you can use as AgentGroup::Custom(id) when adding agents for asset_id.

§Arguments
  • assetID the [`AssetId] to add the custom group for.
  • perms that the new AG will have.
§Errors
  • UnauthorizedAgent if origin was not authorized as an agent to call this.
  • TooLong if perms had some string or list length that was too long.
  • CounterOverflow if AGIdSequence::get() + 1 would exceed u32::MAX.
§Permissions
  • Asset
  • Agent
Source

pub fn set_group_permissions( &self, asset_id: AssetId, id: AGId, perms: ExtrinsicPermissions, ) -> Result<WrappedCall>

Updates the permissions of the custom AG identified by id, for the given asset_id.

§Arguments
  • assetID the [`AssetId] the custom AG belongs to.
  • id for the custom AG within asset_id.
  • perms to update the custom AG to.
§Errors
  • UnauthorizedAgent if origin was not authorized as an agent to call this.
  • TooLong if perms had some string or list length that was too long.
  • NoSuchAG if id does not identify a custom AG.
§Permissions
  • Asset
  • Agent
Source

pub fn remove_agent( &self, asset_id: AssetId, agent: IdentityId, ) -> Result<WrappedCall>

Remove the given agent from asset_id.

§Arguments
  • assetID the [AssetId] that has the agent` to remove.
  • agent of asset_id to remove.
§Errors
  • UnauthorizedAgent if origin was not authorized as an agent to call this.
  • NotAnAgent if agent is not an agent of asset_id.
  • RemovingLastFullAgent if agent is the last full one.
§Permissions
  • Asset
  • Agent
Source

pub fn abdicate(&self, asset_id: AssetId) -> Result<WrappedCall>

Abdicate agentship for asset_id.

§Arguments
  • assetID the [`AssetId] of which the caller is an agent.
§Errors
  • NotAnAgent if the caller is not an agent of asset_id.
  • RemovingLastFullAgent if the caller is the last full agent.
§Permissions
  • Asset
Source

pub fn change_group( &self, asset_id: AssetId, agent: IdentityId, group: AgentGroup, ) -> Result<WrappedCall>

Change the agent group that agent belongs to in asset_id.

§Arguments
  • assetID the [AssetId] that has the agent`.
  • agent of asset_id to change the group for.
  • group that agent will belong to in asset_id.
§Errors
  • UnauthorizedAgent if origin was not authorized as an agent to call this.
  • NoSuchAG if id does not identify a custom AG.
  • NotAnAgent if agent is not an agent of asset_id.
  • RemovingLastFullAgent if agent was a Full one and is being demoted.
§Permissions
  • Asset
  • Agent
Source

pub fn accept_become_agent(&self, auth_id: u64) -> Result<WrappedCall>

Accept an authorization by an agent “Alice” who issued auth_id to also become an agent of the asset Alice specified.

§Arguments
  • auth_id identifying the authorization to accept.
§Errors
  • AuthorizationError::Invalid if auth_id does not exist for the given caller.
  • AuthorizationError::Expired if auth_id is for an auth that has expired.
  • AuthorizationError::BadType if auth_id was not for a BecomeAgent auth type.
  • UnauthorizedAgent if “Alice” is not permissioned to provide the auth.
  • NoSuchAG if the group referred to a custom that does not exist.
  • AlreadyAnAgent if the caller is already an agent of the asset.
§Permissions
  • Agent
Source

pub fn create_group_and_add_auth( &self, asset_id: AssetId, perms: ExtrinsicPermissions, target: IdentityId, expiry: Option<u64>, ) -> Result<WrappedCall>

Utility extrinsic to batch create_group and add_auth.

§Permissions
  • Asset
  • Agent
Source

pub fn create_and_change_custom_group( &self, asset_id: AssetId, perms: ExtrinsicPermissions, agent: IdentityId, ) -> Result<WrappedCall>

Utility extrinsic to batch create_group and change_group for custom groups only.

§Permissions
  • Asset
  • Agent

Trait Implementations§

Source§

impl<'api> Clone for ExternalAgentsCallApi<'api>

Source§

fn clone(&self) -> ExternalAgentsCallApi<'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 ExternalAgentsCallApi<'api>

Source§

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

Converts to this type from the input type.

Auto Trait Implementations§

§

impl<'api> Freeze for ExternalAgentsCallApi<'api>

§

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

§

impl<'api> Send for ExternalAgentsCallApi<'api>

§

impl<'api> Sync for ExternalAgentsCallApi<'api>

§

impl<'api> Unpin for ExternalAgentsCallApi<'api>

§

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

Blanket Implementations§

Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

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

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

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

Source§

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

Mutably borrows from an owned value. Read more
Source§

impl<T> CheckedConversion for T

Source§

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
Source§

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

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

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DynClone for T
where 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 T
where 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.

Source§

impl<T> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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 more
Source§

impl<Src, Dest> IntoTuple<Dest> for Src
where Dest: FromTuple<Src>,

Source§

fn into_tuple(self) -> Dest

Source§

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

Source§

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

Get a reference to the inner from the outer.

Source§

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

Get a mutable reference to the inner from the outer.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> SaturatedConversion for T

Source§

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

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

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

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

impl<T> ToOwned for T
where T: Clone,

Source§

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 T
where U: Into<T>,

Source§

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 T
where U: TryFrom<T>,

Source§

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.
Source§

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

Source§

fn unchecked_into(self) -> T

The counterpart to unchecked_from.
Source§

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

Source§

fn unique_saturated_into(self) -> T

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

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

Source§

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
Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> JsonSchemaMaybe for T

Source§

impl<T> MaybeSend for T
where T: Send,

Source§

impl<T> MaybeSendSync for T