pub trait NodeService:
Send
+ Sync
+ 'static {
type BlockSubscriptionStream: Stream<Item = Result<BlockSubscriptionResponse, Status>> + Send + 'static;
type ProofSubscriptionStream: Stream<Item = Result<ProofSubscriptionResponse, Status>> + Send + 'static;
Show 21 methods
// Required methods
fn status<'life0, 'async_trait>(
&'life0 self,
request: Request<StatusRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<StatusResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_limits<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLimitsRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetLimitsResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_account<'life0, 'async_trait>(
&'life0 self,
request: Request<GetAccountRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetAccountResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn register_account<'life0, 'async_trait>(
&'life0 self,
request: Request<RegisterAccountRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<RegisterAccountResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn is_account_allowed<'life0, 'async_trait>(
&'life0 self,
request: Request<IsAccountAllowedRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<IsAccountAllowedResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_block_by_number<'life0, 'async_trait>(
&'life0 self,
request: Request<GetBlockByNumberRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetBlockByNumberResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_block_header_by_number<'life0, 'async_trait>(
&'life0 self,
request: Request<GetBlockHeaderByNumberRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetBlockHeaderByNumberResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_notes_by_id<'life0, 'async_trait>(
&'life0 self,
request: Request<GetNotesByIdRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetNotesByIdResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_note_script_by_root<'life0, 'async_trait>(
&'life0 self,
request: Request<GetNoteScriptByRootRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetNoteScriptByRootResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_transaction_encryption_key<'life0, 'async_trait>(
&'life0 self,
request: Request<GetTransactionEncryptionKeyRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetTransactionEncryptionKeyResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn submit_proven_tx<'life0, 'async_trait>(
&'life0 self,
request: Request<SubmitProvenTxRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<SubmitProvenTxResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn submit_proven_tx_batch<'life0, 'async_trait>(
&'life0 self,
request: Request<SubmitProvenTxBatchRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<SubmitProvenTxBatchResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn sync_transactions<'life0, 'async_trait>(
&'life0 self,
request: Request<SyncTransactionsRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<SyncTransactionsResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn sync_notes<'life0, 'async_trait>(
&'life0 self,
request: Request<SyncNotesRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<SyncNotesResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn sync_nullifiers<'life0, 'async_trait>(
&'life0 self,
request: Request<SyncNullifiersRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<SyncNullifiersResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn sync_account_vault<'life0, 'async_trait>(
&'life0 self,
request: Request<SyncAccountVaultRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<SyncAccountVaultResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn sync_account_storage_maps<'life0, 'async_trait>(
&'life0 self,
request: Request<SyncAccountStorageMapsRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<SyncAccountStorageMapsResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn sync_chain_mmr<'life0, 'async_trait>(
&'life0 self,
request: Request<SyncChainMmrRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<SyncChainMmrResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn block_subscription<'life0, 'async_trait>(
&'life0 self,
request: Request<BlockSubscriptionRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Self::BlockSubscriptionStream>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn proof_subscription<'life0, 'async_trait>(
&'life0 self,
request: Request<ProofSubscriptionRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Self::ProofSubscriptionStream>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_network_note_status<'life0, 'async_trait>(
&'life0 self,
request: Request<GetNetworkNoteStatusRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetNetworkNoteStatusResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
}Expand description
Generated trait containing gRPC methods that should be implemented for use with NodeServiceServer.
Required Associated Types§
Sourcetype BlockSubscriptionStream: Stream<Item = Result<BlockSubscriptionResponse, Status>> + Send + 'static
type BlockSubscriptionStream: Stream<Item = Result<BlockSubscriptionResponse, Status>> + Send + 'static
Server streaming response type for the BlockSubscription method.
Sourcetype ProofSubscriptionStream: Stream<Item = Result<ProofSubscriptionResponse, Status>> + Send + 'static
type ProofSubscriptionStream: Stream<Item = Result<ProofSubscriptionResponse, Status>> + Send + 'static
Server streaming response type for the ProofSubscription method.
Required Methods§
fn status<'life0, 'async_trait>(
&'life0 self,
request: Request<StatusRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<StatusResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_limits<'life0, 'async_trait>(
&'life0 self,
request: Request<GetLimitsRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetLimitsResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_account<'life0, 'async_trait>(
&'life0 self,
request: Request<GetAccountRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetAccountResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn register_account<'life0, 'async_trait>(
&'life0 self,
request: Request<RegisterAccountRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<RegisterAccountResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn is_account_allowed<'life0, 'async_trait>(
&'life0 self,
request: Request<IsAccountAllowedRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<IsAccountAllowedResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_block_by_number<'life0, 'async_trait>(
&'life0 self,
request: Request<GetBlockByNumberRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetBlockByNumberResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_block_header_by_number<'life0, 'async_trait>(
&'life0 self,
request: Request<GetBlockHeaderByNumberRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetBlockHeaderByNumberResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_notes_by_id<'life0, 'async_trait>(
&'life0 self,
request: Request<GetNotesByIdRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetNotesByIdResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_note_script_by_root<'life0, 'async_trait>(
&'life0 self,
request: Request<GetNoteScriptByRootRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetNoteScriptByRootResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_transaction_encryption_key<'life0, 'async_trait>(
&'life0 self,
request: Request<GetTransactionEncryptionKeyRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetTransactionEncryptionKeyResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn submit_proven_tx<'life0, 'async_trait>(
&'life0 self,
request: Request<SubmitProvenTxRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<SubmitProvenTxResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn submit_proven_tx_batch<'life0, 'async_trait>(
&'life0 self,
request: Request<SubmitProvenTxBatchRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<SubmitProvenTxBatchResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn sync_transactions<'life0, 'async_trait>(
&'life0 self,
request: Request<SyncTransactionsRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<SyncTransactionsResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn sync_notes<'life0, 'async_trait>(
&'life0 self,
request: Request<SyncNotesRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<SyncNotesResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn sync_nullifiers<'life0, 'async_trait>(
&'life0 self,
request: Request<SyncNullifiersRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<SyncNullifiersResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn sync_account_vault<'life0, 'async_trait>(
&'life0 self,
request: Request<SyncAccountVaultRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<SyncAccountVaultResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn sync_account_storage_maps<'life0, 'async_trait>(
&'life0 self,
request: Request<SyncAccountStorageMapsRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<SyncAccountStorageMapsResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn sync_chain_mmr<'life0, 'async_trait>(
&'life0 self,
request: Request<SyncChainMmrRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<SyncChainMmrResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn block_subscription<'life0, 'async_trait>(
&'life0 self,
request: Request<BlockSubscriptionRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Self::BlockSubscriptionStream>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn proof_subscription<'life0, 'async_trait>(
&'life0 self,
request: Request<ProofSubscriptionRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Self::ProofSubscriptionStream>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_network_note_status<'life0, 'async_trait>(
&'life0 self,
request: Request<GetNetworkNoteStatusRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetNetworkNoteStatusResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".