pub struct PubSubFrontend { /* private fields */ }Expand description
A PubSubFrontend is Transport composed of a channel to a running
PubSub service.
Implementations§
Source§impl PubSubFrontend
impl PubSubFrontend
Sourcepub fn new(tx: UnboundedSender<PubSubInstruction>) -> Self
pub fn new(tx: UnboundedSender<PubSubInstruction>) -> Self
Create a new frontend.
Sourcepub fn get_subscription(
&self,
id: B256,
) -> impl Future<Output = TransportResult<RawSubscription>> + Send + 'static
pub fn get_subscription( &self, id: B256, ) -> impl Future<Output = TransportResult<RawSubscription>> + Send + 'static
Get the subscription ID for a local ID.
Sourcepub fn unsubscribe(&self, id: B256) -> TransportResult<()>
pub fn unsubscribe(&self, id: B256) -> TransportResult<()>
Unsubscribe from a subscription.
Sourcepub fn send(
&self,
req: SerializedRequest,
) -> impl Future<Output = TransportResult<Response>> + Send + 'static
pub fn send( &self, req: SerializedRequest, ) -> impl Future<Output = TransportResult<Response>> + Send + 'static
Send a request.
Sourcepub fn send_packet(&self, req: RequestPacket) -> TransportFut<'static>
pub fn send_packet(&self, req: RequestPacket) -> TransportFut<'static>
Send a packet of requests, by breaking it up into individual requests.
Once all responses are received, we return a single response packet.
Sourcepub fn channel_size(&self) -> usize
pub fn channel_size(&self) -> usize
Get the currently configured channel size. This is the number of items
to buffer in new subscription channels. Defaults to 16. See
tokio::sync::broadcast for a description of relevant
behavior.
Sourcepub fn set_channel_size(&self, channel_size: usize)
pub fn set_channel_size(&self, channel_size: usize)
Set the channel size. This is the number of items to buffer in new
subscription channels. Defaults to 16. See
tokio::sync::broadcast for a description of relevant
behavior.
Trait Implementations§
Source§impl Clone for PubSubFrontend
impl Clone for PubSubFrontend
Source§fn clone(&self) -> PubSubFrontend
fn clone(&self) -> PubSubFrontend
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for PubSubFrontend
impl Debug for PubSubFrontend
Source§impl Service<RequestPacket> for PubSubFrontend
impl Service<RequestPacket> for PubSubFrontend
Source§type Response = ResponsePacket
type Response = ResponsePacket
Source§type Error = RpcError<TransportErrorKind>
type Error = RpcError<TransportErrorKind>
Source§type Future = Pin<Box<dyn Future<Output = Result<ResponsePacket, RpcError<TransportErrorKind>>> + Send>>
type Future = Pin<Box<dyn Future<Output = Result<ResponsePacket, RpcError<TransportErrorKind>>> + Send>>
Auto Trait Implementations§
impl Freeze for PubSubFrontend
impl RefUnwindSafe for PubSubFrontend
impl Send for PubSubFrontend
impl Sync for PubSubFrontend
impl Unpin for PubSubFrontend
impl UnsafeUnpin for PubSubFrontend
impl UnwindSafe for PubSubFrontend
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoBoxTransport for T
impl<T> IntoBoxTransport for T
Source§fn into_box_transport(self) -> BoxTransport
fn into_box_transport(self) -> BoxTransport
Source§impl<T, Request> ServiceExt<Request> for T
impl<T, Request> ServiceExt<Request> for T
Source§fn ready(&mut self) -> Ready<'_, Self, Request>where
Self: Sized,
fn ready(&mut self) -> Ready<'_, Self, Request>where
Self: Sized,
Source§fn ready_oneshot(self) -> ReadyOneshot<Self, Request>where
Self: Sized,
fn ready_oneshot(self) -> ReadyOneshot<Self, Request>where
Self: Sized,
Source§fn oneshot(self, req: Request) -> Oneshot<Self, Request>where
Self: Sized,
fn oneshot(self, req: Request) -> Oneshot<Self, Request>where
Self: Sized,
Service, calling it with the provided request once it is ready.Source§fn and_then<F>(self, f: F) -> AndThen<Self, F>
fn and_then<F>(self, f: F) -> AndThen<Self, F>
poll_ready method. Read moreSource§fn map_response<F, Response>(self, f: F) -> MapResponse<Self, F>
fn map_response<F, Response>(self, f: F) -> MapResponse<Self, F>
poll_ready method. Read moreSource§fn map_err<F, Error>(self, f: F) -> MapErr<Self, F>
fn map_err<F, Error>(self, f: F) -> MapErr<Self, F>
poll_ready method. Read moreSource§fn map_result<F, Response, Error>(self, f: F) -> MapResult<Self, F>
fn map_result<F, Response, Error>(self, f: F) -> MapResult<Self, F>
Result<Self::Response, Self::Error>)
to a different value, regardless of whether the future succeeds or
fails. Read moreSource§fn map_request<F, NewRequest>(self, f: F) -> MapRequest<Self, F>
fn map_request<F, NewRequest>(self, f: F) -> MapRequest<Self, F>
Source§fn then<F, Response, Error, Fut>(self, f: F) -> Then<Self, F>
fn then<F, Response, Error, Fut>(self, f: F) -> Then<Self, F>
Source§fn map_future<F, Fut, Response, Error>(self, f: F) -> MapFuture<Self, F>
fn map_future<F, Fut, Response, Error>(self, f: F) -> MapFuture<Self, F>
Source§impl<T> Transport for Twhere
T: Service<RequestPacket, Response = ResponsePacket, Error = RpcError<TransportErrorKind>, Future = Pin<Box<dyn Future<Output = Result<ResponsePacket, RpcError<TransportErrorKind>>> + Send>>> + Send + Sync + 'static,
impl<T> Transport for Twhere
T: Service<RequestPacket, Response = ResponsePacket, Error = RpcError<TransportErrorKind>, Future = Pin<Box<dyn Future<Output = Result<ResponsePacket, RpcError<TransportErrorKind>>> + Send>>> + Send + Sync + 'static,
Source§fn boxed(self) -> BoxTransportwhere
Self: IntoBoxTransport,
fn boxed(self) -> BoxTransportwhere
Self: IntoBoxTransport,
Source§fn as_boxed(&self) -> BoxTransportwhere
Self: IntoBoxTransport,
fn as_boxed(&self) -> BoxTransportwhere
Self: IntoBoxTransport,
Source§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
Source§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
Source§fn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 16 bytes