如何从Java读取proto3自定义选项
提供以下服务:如何从Java读取proto3自定义选项,java,protocol-buffers,grpc,protobuf-java,proto3,Java,Protocol Buffers,Grpc,Protobuf Java,Proto3,提供以下服务: message Message { string content = 1; } service EchoService { rpc echo (Message) returns (Message) { option (google.api.http) = { get: "/echo" }; } } 我想从Java中读取该选项。我的理解是以下代码应该可以工作: HttpRule rule = Message.getDescriptor() .getOpt
message Message {
string content = 1;
}
service EchoService {
rpc echo (Message) returns (Message) {
option (google.api.http) = { get: "/echo" };
}
}
我想从Java中读取该选项。我的理解是以下代码应该可以工作:
HttpRule rule = Message.getDescriptor()
.getOptions()
.getExtension(AnnotationsProto.http)
然而,这并没有编译,它抱怨无法解决方法的类型问题
我试着这样做:
所以问题是,如何从Java中读取选项?这很尴尬,它实际上是一种完全不同的类型
AnnotationsProto.http
使用MethodOptions
()
而Message.getDescriptor().getOptions().getExtensions()
需要一个泛型为MessageOptions
()
方法选项与消息选项-也许我需要深入到SpecSaver