pub trait SearcherService:
Send
+ Sync
+ 'static {
type SubscribeBundleResultsStream: Stream<Item = Result<BundleResult, Status>> + Send + 'static;
// Required methods
fn subscribe_bundle_results<'life0, 'async_trait>(
&'life0 self,
request: Request<SubscribeBundleResultsRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Self::SubscribeBundleResultsStream>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn send_bundle<'life0, 'async_trait>(
&'life0 self,
request: Request<SendBundleRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<SendBundleResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_next_scheduled_leader<'life0, 'async_trait>(
&'life0 self,
request: Request<NextScheduledLeaderRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<NextScheduledLeaderResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_connected_leaders<'life0, 'async_trait>(
&'life0 self,
request: Request<ConnectedLeadersRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<ConnectedLeadersResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_connected_leaders_regioned<'life0, 'async_trait>(
&'life0 self,
request: Request<ConnectedLeadersRegionedRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<ConnectedLeadersRegionedResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_tip_accounts<'life0, 'async_trait>(
&'life0 self,
request: Request<GetTipAccountsRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetTipAccountsResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_regions<'life0, 'async_trait>(
&'life0 self,
request: Request<GetRegionsRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetRegionsResponse>, 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 SearcherServiceServer.
Required Associated Types§
Sourcetype SubscribeBundleResultsStream: Stream<Item = Result<BundleResult, Status>> + Send + 'static
type SubscribeBundleResultsStream: Stream<Item = Result<BundleResult, Status>> + Send + 'static
Server streaming response type for the SubscribeBundleResults method.
Required Methods§
Sourcefn subscribe_bundle_results<'life0, 'async_trait>(
&'life0 self,
request: Request<SubscribeBundleResultsRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Self::SubscribeBundleResultsStream>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn subscribe_bundle_results<'life0, 'async_trait>(
&'life0 self,
request: Request<SubscribeBundleResultsRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Self::SubscribeBundleResultsStream>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Searchers can invoke this endpoint to subscribe to their respective bundle results. A success result would indicate the bundle won its state auction and was submitted to the validator.
fn send_bundle<'life0, 'async_trait>(
&'life0 self,
request: Request<SendBundleRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<SendBundleResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Sourcefn get_next_scheduled_leader<'life0, 'async_trait>(
&'life0 self,
request: Request<NextScheduledLeaderRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<NextScheduledLeaderResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_next_scheduled_leader<'life0, 'async_trait>(
&'life0 self,
request: Request<NextScheduledLeaderRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<NextScheduledLeaderResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns the next scheduled leader connected to the block engine.
Sourcefn get_connected_leaders<'life0, 'async_trait>(
&'life0 self,
request: Request<ConnectedLeadersRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<ConnectedLeadersResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_connected_leaders<'life0, 'async_trait>(
&'life0 self,
request: Request<ConnectedLeadersRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<ConnectedLeadersResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns leader slots for connected jito validators during the current epoch. Only returns data for this region.
Sourcefn get_connected_leaders_regioned<'life0, 'async_trait>(
&'life0 self,
request: Request<ConnectedLeadersRegionedRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<ConnectedLeadersRegionedResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_connected_leaders_regioned<'life0, 'async_trait>(
&'life0 self,
request: Request<ConnectedLeadersRegionedRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<ConnectedLeadersRegionedResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns leader slots for connected jito validators during the current epoch.
Sourcefn get_tip_accounts<'life0, 'async_trait>(
&'life0 self,
request: Request<GetTipAccountsRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetTipAccountsResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_tip_accounts<'life0, 'async_trait>(
&'life0 self,
request: Request<GetTipAccountsRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetTipAccountsResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns the tip accounts searchers shall transfer funds to for the leader to claim.
Sourcefn get_regions<'life0, 'async_trait>(
&'life0 self,
request: Request<GetRegionsRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetRegionsResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_regions<'life0, 'async_trait>(
&'life0 self,
request: Request<GetRegionsRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetRegionsResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns region the client is directly connected to, along with all available regions