Get desktop application:
View/edit binary Protocol Buffers messages
The reflection service is structured as a bidirectional stream, ensuring all related requests go to a single server.
The message sent by the server to answer ServerReflectionInfo method.
The server set one of the following fields accroding to the message_request in the request.
This message is used to answer file_by_filename, file_containing_symbol, file_containing_extension requests with transitive dependencies. As the repeated label is not allowed in oneof fields, we use a FileDescriptorResponse message to encapsulate the repeated fields. The reflection service is allowed to avoid sending FileDescriptorProtos that were previously sent in response to earlier requests in the stream.
This message is used to answer all_extension_numbers_of_type requst.
This message is used to answer list_services request.
This message is used when an error occurs.
The error code and error message sent by the server when an error occurs.
Used in:
This field uses the error codes defined in grpc::StatusCode.
A list of extension numbers sent by the server answering all_extension_numbers_of_type request.
Used in:
Full name of the base type, including the package name. The format is <package>.<type>
The type name and extension number sent by the client when requesting file_containing_extension.
Used in:
Fully-qualified type name. The format should be <package>.<type>
Serialized FileDescriptorProto messages sent by the server answering a file_by_filename, file_containing_symbol, or file_containing_extension request.
Used in:
Serialized FileDescriptorProto messages. We avoid taking a dependency on descriptor.proto, which uses proto2 only features, by making them opaque bytes instead.
A list of ServiceResponse sent by the server answering list_services request.
Used in:
The information of each service may be expanded in the future, so we use ServiceResponse message to encapsulate it.
The message sent by the client when calling ServerReflectionInfo method.
Used as request type in: ServerReflection.ServerReflectionInfo
Used as field type in:
To use reflection service, the client should set one of the following fields in message_request. The server distinguishes requests by their defined field and then handles them using corresponding methods.
Find a proto file by the file name.
Find the proto file that declares the given fully-qualified symbol name. This field should be a fully-qualified symbol name (e.g. <package>.<service>[.<method>] or <package>.<type>).
Find the proto file which defines an extension extending the given message type with the given field number.
Finds the tag numbers used by all known extensions of the given message type, and appends them to ExtensionNumberResponse in an undefined order. Its corresponding method is best-effort: it's not guaranteed that the reflection service will implement this method, and it's not guaranteed that this method will provide all extensions. Returns StatusCode::UNIMPLEMENTED if it's not implemented. This field should be a fully-qualified type name. The format is <package>.<type>
List the full names of registered services. The content will not be checked.
The information of a single service used by ListServiceResponse to answer list_services request.
Used in:
Full name of a registered service, including its package name. The format is <package>.<service>