pub trait HistoryNetworkApiClient: ClientT {
Show 16 methods fn routing_table_info<'life0, 'async_trait>(
        &'life0 self
    ) -> Pin<Box<dyn Future<Output = RpcResult<RoutingTableInfo>> + Send + 'async_trait>>
    where
        Self: Sync + 'async_trait,
        'life0: 'async_trait
, { ... } fn add_enr<'life0, 'async_trait>(
        &'life0 self,
        enr: Enr
    ) -> Pin<Box<dyn Future<Output = RpcResult<bool>> + Send + 'async_trait>>
    where
        Self: Sync + 'async_trait,
        'life0: 'async_trait
, { ... } fn get_enr<'life0, 'async_trait>(
        &'life0 self,
        node_id: NodeId
    ) -> Pin<Box<dyn Future<Output = RpcResult<Enr>> + Send + 'async_trait>>
    where
        Self: Sync + 'async_trait,
        'life0: 'async_trait
, { ... } fn delete_enr<'life0, 'async_trait>(
        &'life0 self,
        node_id: NodeId
    ) -> Pin<Box<dyn Future<Output = RpcResult<bool>> + Send + 'async_trait>>
    where
        Self: Sync + 'async_trait,
        'life0: 'async_trait
, { ... } fn lookup_enr<'life0, 'async_trait>(
        &'life0 self,
        node_id: NodeId,
        enr_seq: Option<u32>
    ) -> Pin<Box<dyn Future<Output = RpcResult<Enr>> + Send + 'async_trait>>
    where
        Self: Sync + 'async_trait,
        'life0: 'async_trait
, { ... } fn ping<'life0, 'async_trait>(
        &'life0 self,
        enr: Enr,
        data_radius: Option<DataRadius>
    ) -> Pin<Box<dyn Future<Output = RpcResult<PongInfo>> + Send + 'async_trait>>
    where
        Self: Sync + 'async_trait,
        'life0: 'async_trait
, { ... } fn find_nodes<'life0, 'async_trait>(
        &'life0 self,
        enr: Enr,
        distances: Vec<u16>
    ) -> Pin<Box<dyn Future<Output = RpcResult<Vec<Enr>>> + Send + 'async_trait>>
    where
        Self: Sync + 'async_trait,
        'life0: 'async_trait
, { ... } fn recursive_find_nodes<'life0, 'async_trait>(
        &'life0 self,
        node_id: NodeId
    ) -> Pin<Box<dyn Future<Output = RpcResult<Vec<Enr>>> + Send + 'async_trait>>
    where
        Self: Sync + 'async_trait,
        'life0: 'async_trait
, { ... } fn find_content<'life0, 'async_trait>(
        &'life0 self,
        enr: Enr,
        content_key: HistoryContentKey
    ) -> Pin<Box<dyn Future<Output = RpcResult<ContentInfo>> + Send + 'async_trait>>
    where
        Self: Sync + 'async_trait,
        'life0: 'async_trait
, { ... } fn recursive_find_content<'life0, 'async_trait>(
        &'life0 self,
        content_key: HistoryContentKey
    ) -> Pin<Box<dyn Future<Output = RpcResult<HistoryContentItem>> + Send + 'async_trait>>
    where
        Self: Sync + 'async_trait,
        'life0: 'async_trait
, { ... } fn trace_recursive_find_content<'life0, 'async_trait>(
        &'life0 self,
        content_key: HistoryContentKey
    ) -> Pin<Box<dyn Future<Output = RpcResult<TraceContentInfo>> + Send + 'async_trait>>
    where
        Self: Sync + 'async_trait,
        'life0: 'async_trait
, { ... } fn paginate_local_content_keys<'life0, 'async_trait>(
        &'life0 self,
        offset: u64,
        limit: u64
    ) -> Pin<Box<dyn Future<Output = RpcResult<PaginateLocalContentInfo>> + Send + 'async_trait>>
    where
        Self: Sync + 'async_trait,
        'life0: 'async_trait
, { ... } fn offer<'life0, 'async_trait>(
        &'life0 self,
        content_key: HistoryContentKey,
        content_value: HistoryContentItem
    ) -> Pin<Box<dyn Future<Output = RpcResult<u32>> + Send + 'async_trait>>
    where
        Self: Sync + 'async_trait,
        'life0: 'async_trait
, { ... } fn send_offer<'life0, 'async_trait>(
        &'life0 self,
        enr: Enr,
        content_keys: Vec<HistoryContentKey>
    ) -> Pin<Box<dyn Future<Output = RpcResult<AcceptInfo>> + Send + 'async_trait>>
    where
        Self: Sync + 'async_trait,
        'life0: 'async_trait
, { ... } fn store<'life0, 'async_trait>(
        &'life0 self,
        content_key: HistoryContentKey,
        content_value: HistoryContentItem
    ) -> Pin<Box<dyn Future<Output = RpcResult<bool>> + Send + 'async_trait>>
    where
        Self: Sync + 'async_trait,
        'life0: 'async_trait
, { ... } fn local_content<'life0, 'async_trait>(
        &'life0 self,
        content_key: HistoryContentKey
    ) -> Pin<Box<dyn Future<Output = RpcResult<HistoryContentItem>> + Send + 'async_trait>>
    where
        Self: Sync + 'async_trait,
        'life0: 'async_trait
, { ... }
}
Expand description

Client implementation for the HistoryNetworkApi RPC API.

Provided Methods§

Returns meta information about overlay routing table.

Write an Ethereum Node Record to the overlay routing table.

Fetch the latest ENR associated with the given node ID.

Delete Node ID from the overlay routing table.

Fetch the ENR representation associated with the given Node ID and optional sequence number.

Send a PING message to the designated node and wait for a PONG response

Send a FINDNODES request for nodes that fall within the given set of distances, to the designated peer and wait for a response

Lookup a target node within in the network

Send FINDCONTENT message to get the content with a content key.

Lookup a target content key in the network

Lookup a target content key in the network. Return tracing info.

Pagination of local content keys

Send the provided content item to interested peers. Clients may choose to send to some or all peers. Return the number of peers that the content was gossiped to.

Send OFFER with a set og content keys that this node has content available for. Return the ACCEPT response.

Store content key with a content data to the local database.

Get a content from the local database

Implementors§