pub struct CloudEventsGrpcHandler { /* private fields */ }Expand description
gRPC CloudEvents projector service implementation.
Wraps a CloudEventsRouter to transform events into CloudEvents.
Uses the standard ProjectorService protocol but returns CloudEventsResponse
packed into Projection.projection.
Implementations§
Source§impl CloudEventsGrpcHandler
impl CloudEventsGrpcHandler
Sourcepub fn new(router: CloudEventsRouter) -> Self
pub fn new(router: CloudEventsRouter) -> Self
Create a new CloudEvents handler from a router.
Sourcepub fn router(&self) -> &CloudEventsRouter
pub fn router(&self) -> &CloudEventsRouter
Get the underlying router.
Trait Implementations§
Source§impl ProjectorService for CloudEventsGrpcHandler
impl ProjectorService for CloudEventsGrpcHandler
Source§fn handle<'life0, 'async_trait>(
&'life0 self,
request: Request<EventBook>,
) -> Pin<Box<dyn Future<Output = Result<Response<Projection>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn handle<'life0, 'async_trait>(
&'life0 self,
request: Request<EventBook>,
) -> Pin<Box<dyn Future<Output = Result<Response<Projection>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Async projection - projector should persist and return
Source§fn handle_speculative<'life0, 'async_trait>(
&'life0 self,
request: Request<EventBook>,
) -> Pin<Box<dyn Future<Output = Result<Response<Projection>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn handle_speculative<'life0, 'async_trait>(
&'life0 self,
request: Request<EventBook>,
) -> Pin<Box<dyn Future<Output = Result<Response<Projection>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Speculative processing - projector must avoid external side effects
Auto Trait Implementations§
impl Freeze for CloudEventsGrpcHandler
impl !RefUnwindSafe for CloudEventsGrpcHandler
impl Send for CloudEventsGrpcHandler
impl Sync for CloudEventsGrpcHandler
impl Unpin for CloudEventsGrpcHandler
impl UnsafeUnpin for CloudEventsGrpcHandler
impl !UnwindSafe for CloudEventsGrpcHandler
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
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request