Given
service Greeter {
rpc sayHello(HelloRequest) returns (HelloResponse);
}
message HelloRequest {
string hello = 1;
}
message HelloResponse {
string name = 1;
}
The gRPC plugin generates
// Common to client and service
@VertxGen
public interface Greeter {
Future<HelloResponse> sayHello(HelloRequest request);
}
The service proxy processor generates
public class GreeterService implements Greeter {
...
}
public class GreeterClient implements Greeter {
...
}
Given
// Common to client and service
@VertxGen
public interface Greeter {
Future<HelloResponse> sayHello(HelloRequest request);
}
@DataObject
@ProtobufGen
public class HelloRequest {
}
@DataObject
@ProtobufGen
public class HelloResponse {
}
The annotation processor generates:
service Greeter {
rpc sayHello(HelloRequest) returns (HelloResponse);
}
message HelloRequest {
string hello = 1;
}
message HelloResponse {
string name = 1;
}
public class GreeterService implements Greeter {
...
}
public class GreeterClient implements Greeter {
...
}
and the protobuf converters for the data objects.