Package io.servicetalk.grpc.api
Interface GrpcRoutes.BlockingRoute<Req,Resp>
- Type Parameters:
Req
- Type of request.Resp
- Type of response.
- All Superinterfaces:
AutoCloseable
,GracefulAutoCloseable
- Enclosing class:
- GrpcRoutes<Service extends GrpcService>
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
@FunctionalInterface
protected static interface GrpcRoutes.BlockingRoute<Req,Resp>
extends GracefulAutoCloseable
A blocking gRPC route.
-
Method Summary
Modifier and TypeMethodDescriptiondefault void
close()
handle
(GrpcServiceContext ctx, Req request) Handles the passedGrpcRoutes.BlockingRoute
.static <Req,
Resp> GrpcRoutes.BlockingRoute<Req, Resp> wrap
(GrpcRoutes.BlockingRoute<Req, Resp> rawRoute, GracefulAutoCloseable closeable) Convenience method to wrap a rawGrpcRoutes.BlockingRoute
instance with a passed detached close implementation ofGracefulAutoCloseable
.Methods inherited from interface io.servicetalk.concurrent.GracefulAutoCloseable
closeGracefully
-
Method Details
-
handle
Handles the passedGrpcRoutes.BlockingRoute
.- Parameters:
ctx
-GrpcServiceContext
for this call.request
-GrpcRoutes.BlockingRoute
to handle.- Returns:
- The response.
- Throws:
Exception
- If an exception occurs during request processing.
-
close
- Specified by:
close
in interfaceAutoCloseable
- Throws:
Exception
-
wrap
static <Req,Resp> GrpcRoutes.BlockingRoute<Req,Resp> wrap(GrpcRoutes.BlockingRoute<Req, Resp> rawRoute, GracefulAutoCloseable closeable) Convenience method to wrap a rawGrpcRoutes.BlockingRoute
instance with a passed detached close implementation ofGracefulAutoCloseable
.- Type Parameters:
Req
- Type of request.Resp
- Type of response.- Parameters:
rawRoute
-GrpcRoutes.BlockingRoute
instance that has a detached close implementation.closeable
-GracefulAutoCloseable
implementation for the passedrawRoute
.- Returns:
- A new
GrpcRoutes.BlockingRoute
that attaches the passedcloseable
to the passedrawRoute
.
-