Skip to main content

Request

Struct Request 

Source
pub struct Request<S: Session> { /* private fields */ }
Expand description

A paused server-side handshake.

Returned by Server::accept_request once the client’s advertised path is known but before the session is granted anything. Set the origins to serve, then call ok to complete the handshake, or close to reject it. Modeled on the WebTransport Request.

Implementations§

Source§

impl<S: Session> Request<S>

Source

pub fn path(&self) -> Option<&str>

The request path the client advertised in its SETUP, if any.

Populated for moq-lite-05; None on versions without an in-band request path. See the note on Server::accept_request.

Source

pub fn with_publish(self, publish: impl Into<Option<OriginConsumer>>) -> Self

Publish to the connected client. Overrides any value from the Server builder; typically set after inspecting path.

Source

pub fn with_consume(self, consume: impl Into<Option<OriginProducer>>) -> Self

Subscribe to the connected client. Overrides any value from the Server builder.

Source

pub fn with_stats(self, stats: StatsHandle) -> Self

Set the tier-scoped stats handle. Overrides any value from the Server builder.

Source

pub async fn ok(self) -> Result<Session, Error>

Accept the session, completing the handshake.

Source

pub fn close(self, err: Error)

Reject the session, closing the transport with err’s wire code.

Auto Trait Implementations§

§

impl<S> Freeze for Request<S>
where S: Freeze, <S as Session>::RecvStream: Freeze, <S as Session>::SendStream: Freeze,

§

impl<S> RefUnwindSafe for Request<S>

§

impl<S> Send for Request<S>

§

impl<S> Sync for Request<S>
where <S as Session>::RecvStream: Sync, <S as Session>::SendStream: Sync,

§

impl<S> Unpin for Request<S>
where S: Unpin, <S as Session>::RecvStream: Unpin, <S as Session>::SendStream: Unpin,

§

impl<S> UnsafeUnpin for Request<S>

§

impl<S> UnwindSafe for Request<S>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> MaybeSend for T
where T: Send,

Source§

impl<T> MaybeSend for T
where T: Send,

Source§

impl<T> MaybeSync for T
where T: Sync,

Source§

impl<T> MaybeSync for T
where T: Sync,

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more