Package io.vertx.reactivex.grpc.server
Class GrpcServer
- java.lang.Object
-
- io.vertx.reactivex.grpc.server.GrpcServer
-
- All Implemented Interfaces:
Handler<HttpServerRequest>
public class GrpcServer extends Object implements Handler<HttpServerRequest>
A gRPC server based on Vert.x HTTP server.The server can be used as a
HttpServerhandler or mounted as a Vert.x Web handler.Unlike traditional gRPC servers, this server does not rely on a generated RPC interface to interact with the service. Instead, you can interact with the service with a request/response interfaces and gRPC messages, very much like a traditional client. The server exposes 2 levels of handlers
- a Protobuf message
#callHandler(Handler) handler:GrpcServerRequest/GrpcServerResponsewith Protobuf message that handles any method call in a generic way - a gRPC message
#callHandler(MethodDescriptor, Handler) handler:GrpcServerRequest/GrpcServerRequestwith gRPC messages that handles specific service method calls
originalnon RX-ified interface using Vert.x codegen.
-
-
Field Summary
Fields Modifier and Type Field Description static TypeArg<GrpcServer>__TYPE_ARG
-
Constructor Summary
Constructors Constructor Description GrpcServer(GrpcServer delegate)GrpcServer(Object delegate)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description <Req,Resp>
GrpcServercallHandler(io.grpc.MethodDescriptor<Req,Resp> methodDesc, Handler<GrpcServerRequest<Req,Resp>> handler)Set a service method call handler that handles any call call made to the server for the service method.GrpcServercallHandler(Handler<GrpcServerRequest<Buffer,Buffer>> handler)Set a call handler that handles any call made to the server.booleanequals(Object o)GrpcServergetDelegate()voidhandle(HttpServerRequest event)Something has happened, so handle it.inthashCode()static GrpcServernewInstance(GrpcServer arg)static GrpcServerserver(Vertx vertx)Create a blank gRPC serverStringtoString()
-
-
-
Field Detail
-
__TYPE_ARG
public static final TypeArg<GrpcServer> __TYPE_ARG
-
-
Constructor Detail
-
GrpcServer
public GrpcServer(GrpcServer delegate)
-
GrpcServer
public GrpcServer(Object delegate)
-
-
Method Detail
-
getDelegate
public GrpcServer getDelegate()
-
handle
public void handle(HttpServerRequest event)
Something has happened, so handle it.- Specified by:
handlein interfaceHandler<HttpServerRequest>- Parameters:
event- the event to handle
-
server
public static GrpcServer server(Vertx vertx)
Create a blank gRPC server- Parameters:
vertx-- Returns:
- the created server
-
callHandler
public GrpcServer callHandler(Handler<GrpcServerRequest<Buffer,Buffer>> handler)
Set a call handler that handles any call made to the server.- Parameters:
handler- the service method call handler- Returns:
- a reference to this, so the API can be used fluently
-
callHandler
public <Req,Resp> GrpcServer callHandler(io.grpc.MethodDescriptor<Req,Resp> methodDesc, Handler<GrpcServerRequest<Req,Resp>> handler)
Set a service method call handler that handles any call call made to the server for the service method.- Parameters:
methodDesc-handler- the service method call handler- Returns:
- a reference to this, so the API can be used fluently
-
newInstance
public static GrpcServer newInstance(GrpcServer arg)
-
-