pub struct GrpcWebBridge(/* private fields */);Expand description
gRPC-web bridge module, this will convert HTTP/1.1 gRPC-web requests to H2 gRPC requests
Methods from Deref<Target = GrpcWebCtx>§
pub fn init(&mut self)
Sourcepub fn request_header_filter(&mut self, req: &mut RequestHeader)
pub fn request_header_filter(&mut self, req: &mut RequestHeader)
gRPC-web request is fed into this filter, if the module is initialized we attempt to convert it to a gRPC request
Sourcepub fn response_header_filter(&mut self, resp: &mut ResponseHeader)
pub fn response_header_filter(&mut self, resp: &mut ResponseHeader)
gRPC response is fed into this filter, if the module is in the bridge state attempt to convert the response it to a gRPC-web response
Trait Implementations§
Source§impl Default for GrpcWebBridge
impl Default for GrpcWebBridge
Source§fn default() -> GrpcWebBridge
fn default() -> GrpcWebBridge
Returns the “default value” for a type. Read more
Source§impl Deref for GrpcWebBridge
impl Deref for GrpcWebBridge
Source§type Target = GrpcWebCtx
type Target = GrpcWebCtx
The resulting type after dereferencing.
Source§impl DerefMut for GrpcWebBridge
impl DerefMut for GrpcWebBridge
Source§impl HttpModule for GrpcWebBridge
impl HttpModule for GrpcWebBridge
fn as_any(&self) -> &(dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn request_header_filter<'life0, 'life1, 'async_trait>(
&'life0 mut self,
req: &'life1 mut RequestHeader,
) -> Pin<Box<dyn Future<Output = Result<(), Box<Error>>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
GrpcWebBridge: 'async_trait,
fn response_header_filter<'life0, 'life1, 'async_trait>(
&'life0 mut self,
resp: &'life1 mut ResponseHeader,
_end_of_stream: bool,
) -> Pin<Box<dyn Future<Output = Result<(), Box<Error>>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
GrpcWebBridge: 'async_trait,
fn response_trailer_filter( &mut self, trailers: &mut Option<Box<HeaderMap>>, ) -> Result<Option<Bytes>, Box<Error>>
fn request_body_filter<'life0, 'life1, 'async_trait>(
&'life0 mut self,
_body: &'life1 mut Option<Bytes>,
_end_of_stream: bool,
) -> Pin<Box<dyn Future<Output = Result<(), Box<Error>>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: Send + 'async_trait,
fn response_body_filter( &mut self, _body: &mut Option<Bytes>, _end_of_stream: bool, ) -> Result<(), Box<Error>>
fn response_done_filter(&mut self) -> Result<Option<Bytes>, Box<Error>>
Auto Trait Implementations§
impl Freeze for GrpcWebBridge
impl RefUnwindSafe for GrpcWebBridge
impl Send for GrpcWebBridge
impl Sync for GrpcWebBridge
impl Unpin for GrpcWebBridge
impl UnsafeUnpin for GrpcWebBridge
impl UnwindSafe for GrpcWebBridge
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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
Mutably borrows from an owned value. Read more
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> Upcastable for T
impl<T> Upcastable for T
Source§fn upcast_any_ref(&self) -> &(dyn Any + 'static)
fn upcast_any_ref(&self) -> &(dyn Any + 'static)
upcast ref
Source§fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)
upcast mut ref