iota_json_rpc_api

Trait IndexerApiClient

Source
pub trait IndexerApiClient: SubscriptionClientT {
    // Provided methods
    fn get_owned_objects<'life0, 'async_trait>(
        &'life0 self,
        address: IotaAddress,
        query: Option<IotaObjectResponseQuery>,
        cursor: Option<ObjectID>,
        limit: Option<usize>,
    ) -> Pin<Box<dyn Future<Output = Result<ObjectsPage, Error>> + Send + 'async_trait>>
       where Self: Sync + 'async_trait,
             'life0: 'async_trait { ... }
    fn query_transaction_blocks<'life0, 'async_trait>(
        &'life0 self,
        query: IotaTransactionBlockResponseQuery,
        cursor: Option<TransactionDigest>,
        limit: Option<usize>,
        descending_order: Option<bool>,
    ) -> Pin<Box<dyn Future<Output = Result<TransactionBlocksPage, Error>> + Send + 'async_trait>>
       where Self: Sync + 'async_trait,
             'life0: 'async_trait { ... }
    fn query_events<'life0, 'async_trait>(
        &'life0 self,
        query: EventFilter,
        cursor: Option<EventID>,
        limit: Option<usize>,
        descending_order: Option<bool>,
    ) -> Pin<Box<dyn Future<Output = Result<EventPage, Error>> + Send + 'async_trait>>
       where Self: Sync + 'async_trait,
             'life0: 'async_trait { ... }
    fn get_dynamic_fields<'life0, 'async_trait>(
        &'life0 self,
        parent_object_id: ObjectID,
        cursor: Option<ObjectID>,
        limit: Option<usize>,
    ) -> Pin<Box<dyn Future<Output = Result<DynamicFieldPage, Error>> + Send + 'async_trait>>
       where Self: Sync + 'async_trait,
             'life0: 'async_trait { ... }
    fn get_dynamic_field_object<'life0, 'async_trait>(
        &'life0 self,
        parent_object_id: ObjectID,
        name: DynamicFieldName,
    ) -> Pin<Box<dyn Future<Output = Result<IotaObjectResponse, Error>> + Send + 'async_trait>>
       where Self: Sync + 'async_trait,
             'life0: 'async_trait { ... }
    fn subscribe_event<'life0, 'async_trait>(
        &'life0 self,
        filter: EventFilter,
    ) -> Pin<Box<dyn Future<Output = Result<Subscription<IotaEvent>, Error>> + Send + 'async_trait>>
       where Self: Sync + 'async_trait,
             'life0: 'async_trait { ... }
    fn subscribe_transaction<'life0, 'async_trait>(
        &'life0 self,
        filter: TransactionFilter,
    ) -> Pin<Box<dyn Future<Output = Result<Subscription<IotaTransactionBlockEffects>, Error>> + Send + 'async_trait>>
       where Self: Sync + 'async_trait,
             'life0: 'async_trait { ... }
}
Expand description

Client implementation for the IndexerApi RPC API.

Provided Methods§

Source

fn get_owned_objects<'life0, 'async_trait>( &'life0 self, address: IotaAddress, query: Option<IotaObjectResponseQuery>, cursor: Option<ObjectID>, limit: Option<usize>, ) -> Pin<Box<dyn Future<Output = Result<ObjectsPage, Error>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait,

Return the list of objects owned by an address. Note that if the address owns more than QUERY_MAX_RESULT_LIMIT objects, the pagination is not accurate, because previous page may have been updated when the next page is fetched. Please use iotax_queryObjects if this is a concern.

Source

fn query_transaction_blocks<'life0, 'async_trait>( &'life0 self, query: IotaTransactionBlockResponseQuery, cursor: Option<TransactionDigest>, limit: Option<usize>, descending_order: Option<bool>, ) -> Pin<Box<dyn Future<Output = Result<TransactionBlocksPage, Error>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait,

Return list of transactions for a specified query criteria.

Source

fn query_events<'life0, 'async_trait>( &'life0 self, query: EventFilter, cursor: Option<EventID>, limit: Option<usize>, descending_order: Option<bool>, ) -> Pin<Box<dyn Future<Output = Result<EventPage, Error>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait,

Return list of events for a specified query criteria.

Source

fn get_dynamic_fields<'life0, 'async_trait>( &'life0 self, parent_object_id: ObjectID, cursor: Option<ObjectID>, limit: Option<usize>, ) -> Pin<Box<dyn Future<Output = Result<DynamicFieldPage, Error>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait,

Return the list of dynamic field objects owned by an object.

Source

fn get_dynamic_field_object<'life0, 'async_trait>( &'life0 self, parent_object_id: ObjectID, name: DynamicFieldName, ) -> Pin<Box<dyn Future<Output = Result<IotaObjectResponse, Error>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait,

Return the dynamic field object information for a specified object

Source

fn subscribe_event<'life0, 'async_trait>( &'life0 self, filter: EventFilter, ) -> Pin<Box<dyn Future<Output = Result<Subscription<IotaEvent>, Error>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait,

Subscribe to a stream of IOTA event

Source

fn subscribe_transaction<'life0, 'async_trait>( &'life0 self, filter: TransactionFilter, ) -> Pin<Box<dyn Future<Output = Result<Subscription<IotaTransactionBlockEffects>, Error>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait,

Subscribe to a stream of IOTA transaction effects

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<TypeJsonRpseeInteral> IndexerApiClient for TypeJsonRpseeInteral
where TypeJsonRpseeInteral: SubscriptionClientT,