xref: /tonic/tonic-web/src/layer.rs (revision 62f401c5)
1 use super::GrpcWebService;
2 
3 use tower_layer::Layer;
4 
5 /// Layer implementing the grpc-web protocol.
6 #[derive(Debug, Default, Clone)]
7 pub struct GrpcWebLayer {
8     _priv: (),
9 }
10 
11 impl GrpcWebLayer {
12     /// Create a new grpc-web layer.
new() -> GrpcWebLayer13     pub fn new() -> GrpcWebLayer {
14         Self::default()
15     }
16 }
17 
18 impl<S> Layer<S> for GrpcWebLayer {
19     type Service = GrpcWebService<S>;
20 
layer(&self, inner: S) -> Self::Service21     fn layer(&self, inner: S) -> Self::Service {
22         GrpcWebService::new(inner)
23     }
24 }
25