Class GrpcJsonTranscoder

java.lang.Object
com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessage
com.google.protobuf.GeneratedMessageV3
io.envoyproxy.envoy.config.filter.http.transcoder.v2.GrpcJsonTranscoder
All Implemented Interfaces:
com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, GrpcJsonTranscoderOrBuilder, Serializable

public final class GrpcJsonTranscoder extends com.google.protobuf.GeneratedMessageV3 implements GrpcJsonTranscoderOrBuilder
 [#next-free-field: 10]
 
Protobuf type envoy.config.filter.http.transcoder.v2.GrpcJsonTranscoder
See Also:
  • Field Details

    • PROTO_DESCRIPTOR_FIELD_NUMBER

      public static final int PROTO_DESCRIPTOR_FIELD_NUMBER
      See Also:
    • PROTO_DESCRIPTOR_BIN_FIELD_NUMBER

      public static final int PROTO_DESCRIPTOR_BIN_FIELD_NUMBER
      See Also:
    • SERVICES_FIELD_NUMBER

      public static final int SERVICES_FIELD_NUMBER
      See Also:
    • MATCH_INCOMING_REQUEST_ROUTE_FIELD_NUMBER

      public static final int MATCH_INCOMING_REQUEST_ROUTE_FIELD_NUMBER
      See Also:
    • IGNORED_QUERY_PARAMETERS_FIELD_NUMBER

      public static final int IGNORED_QUERY_PARAMETERS_FIELD_NUMBER
      See Also:
    • AUTO_MAPPING_FIELD_NUMBER

      public static final int AUTO_MAPPING_FIELD_NUMBER
      See Also:
    • IGNORE_UNKNOWN_QUERY_PARAMETERS_FIELD_NUMBER

      public static final int IGNORE_UNKNOWN_QUERY_PARAMETERS_FIELD_NUMBER
      See Also:
    • CONVERT_GRPC_STATUS_FIELD_NUMBER

      public static final int CONVERT_GRPC_STATUS_FIELD_NUMBER
      See Also:
  • Method Details

    • newInstance

      protected Object newInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
      Overrides:
      newInstance in class com.google.protobuf.GeneratedMessageV3
    • getDescriptor

      public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
    • internalGetFieldAccessorTable

      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3
    • getDescriptorSetCase

      public GrpcJsonTranscoder.DescriptorSetCase getDescriptorSetCase()
      Specified by:
      getDescriptorSetCase in interface GrpcJsonTranscoderOrBuilder
    • hasProtoDescriptor

      public boolean hasProtoDescriptor()
       Supplies the filename of
       :ref:`the proto descriptor set <config_grpc_json_generate_proto_descriptor_set>` for the gRPC
       services.
       
      string proto_descriptor = 1;
      Specified by:
      hasProtoDescriptor in interface GrpcJsonTranscoderOrBuilder
      Returns:
      Whether the protoDescriptor field is set.
    • getProtoDescriptor

      public String getProtoDescriptor()
       Supplies the filename of
       :ref:`the proto descriptor set <config_grpc_json_generate_proto_descriptor_set>` for the gRPC
       services.
       
      string proto_descriptor = 1;
      Specified by:
      getProtoDescriptor in interface GrpcJsonTranscoderOrBuilder
      Returns:
      The protoDescriptor.
    • getProtoDescriptorBytes

      public com.google.protobuf.ByteString getProtoDescriptorBytes()
       Supplies the filename of
       :ref:`the proto descriptor set <config_grpc_json_generate_proto_descriptor_set>` for the gRPC
       services.
       
      string proto_descriptor = 1;
      Specified by:
      getProtoDescriptorBytes in interface GrpcJsonTranscoderOrBuilder
      Returns:
      The bytes for protoDescriptor.
    • hasProtoDescriptorBin

      public boolean hasProtoDescriptorBin()
       Supplies the binary content of
       :ref:`the proto descriptor set <config_grpc_json_generate_proto_descriptor_set>` for the gRPC
       services.
       
      bytes proto_descriptor_bin = 4;
      Specified by:
      hasProtoDescriptorBin in interface GrpcJsonTranscoderOrBuilder
      Returns:
      Whether the protoDescriptorBin field is set.
    • getProtoDescriptorBin

      public com.google.protobuf.ByteString getProtoDescriptorBin()
       Supplies the binary content of
       :ref:`the proto descriptor set <config_grpc_json_generate_proto_descriptor_set>` for the gRPC
       services.
       
      bytes proto_descriptor_bin = 4;
      Specified by:
      getProtoDescriptorBin in interface GrpcJsonTranscoderOrBuilder
      Returns:
      The protoDescriptorBin.
    • getServicesList

      public com.google.protobuf.ProtocolStringList getServicesList()
       A list of strings that
       supplies the fully qualified service names (i.e. "package_name.service_name") that
       the transcoder will translate. If the service name doesn't exist in ``proto_descriptor``,
       Envoy will fail at startup. The ``proto_descriptor`` may contain more services than
       the service names specified here, but they won't be translated.
       
      repeated string services = 2 [(.validate.rules) = { ... }
      Specified by:
      getServicesList in interface GrpcJsonTranscoderOrBuilder
      Returns:
      A list containing the services.
    • getServicesCount

      public int getServicesCount()
       A list of strings that
       supplies the fully qualified service names (i.e. "package_name.service_name") that
       the transcoder will translate. If the service name doesn't exist in ``proto_descriptor``,
       Envoy will fail at startup. The ``proto_descriptor`` may contain more services than
       the service names specified here, but they won't be translated.
       
      repeated string services = 2 [(.validate.rules) = { ... }
      Specified by:
      getServicesCount in interface GrpcJsonTranscoderOrBuilder
      Returns:
      The count of services.
    • getServices

      public String getServices(int index)
       A list of strings that
       supplies the fully qualified service names (i.e. "package_name.service_name") that
       the transcoder will translate. If the service name doesn't exist in ``proto_descriptor``,
       Envoy will fail at startup. The ``proto_descriptor`` may contain more services than
       the service names specified here, but they won't be translated.
       
      repeated string services = 2 [(.validate.rules) = { ... }
      Specified by:
      getServices in interface GrpcJsonTranscoderOrBuilder
      Parameters:
      index - The index of the element to return.
      Returns:
      The services at the given index.
    • getServicesBytes

      public com.google.protobuf.ByteString getServicesBytes(int index)
       A list of strings that
       supplies the fully qualified service names (i.e. "package_name.service_name") that
       the transcoder will translate. If the service name doesn't exist in ``proto_descriptor``,
       Envoy will fail at startup. The ``proto_descriptor`` may contain more services than
       the service names specified here, but they won't be translated.
       
      repeated string services = 2 [(.validate.rules) = { ... }
      Specified by:
      getServicesBytes in interface GrpcJsonTranscoderOrBuilder
      Parameters:
      index - The index of the value to return.
      Returns:
      The bytes of the services at the given index.
    • hasPrintOptions

      public boolean hasPrintOptions()
       Control options for response JSON. These options are passed directly to
       `JsonPrintOptions <https://developers.google.com/protocol-buffers/docs/reference/cpp/
       google.protobuf.util.json_util#JsonPrintOptions>`_.
       
      .envoy.config.filter.http.transcoder.v2.GrpcJsonTranscoder.PrintOptions print_options = 3;
      Specified by:
      hasPrintOptions in interface GrpcJsonTranscoderOrBuilder
      Returns:
      Whether the printOptions field is set.
    • getPrintOptions

      public GrpcJsonTranscoder.PrintOptions getPrintOptions()
       Control options for response JSON. These options are passed directly to
       `JsonPrintOptions <https://developers.google.com/protocol-buffers/docs/reference/cpp/
       google.protobuf.util.json_util#JsonPrintOptions>`_.
       
      .envoy.config.filter.http.transcoder.v2.GrpcJsonTranscoder.PrintOptions print_options = 3;
      Specified by:
      getPrintOptions in interface GrpcJsonTranscoderOrBuilder
      Returns:
      The printOptions.
    • getPrintOptionsOrBuilder

      public GrpcJsonTranscoder.PrintOptionsOrBuilder getPrintOptionsOrBuilder()
       Control options for response JSON. These options are passed directly to
       `JsonPrintOptions <https://developers.google.com/protocol-buffers/docs/reference/cpp/
       google.protobuf.util.json_util#JsonPrintOptions>`_.
       
      .envoy.config.filter.http.transcoder.v2.GrpcJsonTranscoder.PrintOptions print_options = 3;
      Specified by:
      getPrintOptionsOrBuilder in interface GrpcJsonTranscoderOrBuilder
    • getMatchIncomingRequestRoute

      public boolean getMatchIncomingRequestRoute()
       Whether to keep the incoming request route after the outgoing headers have been transformed to
       the match the upstream gRPC service. Note: This means that routes for gRPC services that are
       not transcoded cannot be used in combination with *match_incoming_request_route*.
       
      bool match_incoming_request_route = 5;
      Specified by:
      getMatchIncomingRequestRoute in interface GrpcJsonTranscoderOrBuilder
      Returns:
      The matchIncomingRequestRoute.
    • getIgnoredQueryParametersList

      public com.google.protobuf.ProtocolStringList getIgnoredQueryParametersList()
       A list of query parameters to be ignored for transcoding method mapping.
       By default, the transcoder filter will not transcode a request if there are any
       unknown/invalid query parameters.
      
       Example :
      
       .. code-block:: proto
      
           service Bookstore {
             rpc GetShelf(GetShelfRequest) returns (Shelf) {
               option (google.api.http) = {
                 get: "/shelves/{shelf}"
               };
             }
           }
      
           message GetShelfRequest {
             int64 shelf = 1;
           }
      
           message Shelf {}
      
       The request ``/shelves/100?foo=bar`` will not be mapped to ``GetShelf``` because variable
       binding for ``foo`` is not defined. Adding ``foo`` to ``ignored_query_parameters`` will allow
       the same request to be mapped to ``GetShelf``.
       
      repeated string ignored_query_parameters = 6;
      Specified by:
      getIgnoredQueryParametersList in interface GrpcJsonTranscoderOrBuilder
      Returns:
      A list containing the ignoredQueryParameters.
    • getIgnoredQueryParametersCount

      public int getIgnoredQueryParametersCount()
       A list of query parameters to be ignored for transcoding method mapping.
       By default, the transcoder filter will not transcode a request if there are any
       unknown/invalid query parameters.
      
       Example :
      
       .. code-block:: proto
      
           service Bookstore {
             rpc GetShelf(GetShelfRequest) returns (Shelf) {
               option (google.api.http) = {
                 get: "/shelves/{shelf}"
               };
             }
           }
      
           message GetShelfRequest {
             int64 shelf = 1;
           }
      
           message Shelf {}
      
       The request ``/shelves/100?foo=bar`` will not be mapped to ``GetShelf``` because variable
       binding for ``foo`` is not defined. Adding ``foo`` to ``ignored_query_parameters`` will allow
       the same request to be mapped to ``GetShelf``.
       
      repeated string ignored_query_parameters = 6;
      Specified by:
      getIgnoredQueryParametersCount in interface GrpcJsonTranscoderOrBuilder
      Returns:
      The count of ignoredQueryParameters.
    • getIgnoredQueryParameters

      public String getIgnoredQueryParameters(int index)
       A list of query parameters to be ignored for transcoding method mapping.
       By default, the transcoder filter will not transcode a request if there are any
       unknown/invalid query parameters.
      
       Example :
      
       .. code-block:: proto
      
           service Bookstore {
             rpc GetShelf(GetShelfRequest) returns (Shelf) {
               option (google.api.http) = {
                 get: "/shelves/{shelf}"
               };
             }
           }
      
           message GetShelfRequest {
             int64 shelf = 1;
           }
      
           message Shelf {}
      
       The request ``/shelves/100?foo=bar`` will not be mapped to ``GetShelf``` because variable
       binding for ``foo`` is not defined. Adding ``foo`` to ``ignored_query_parameters`` will allow
       the same request to be mapped to ``GetShelf``.
       
      repeated string ignored_query_parameters = 6;
      Specified by:
      getIgnoredQueryParameters in interface GrpcJsonTranscoderOrBuilder
      Parameters:
      index - The index of the element to return.
      Returns:
      The ignoredQueryParameters at the given index.
    • getIgnoredQueryParametersBytes

      public com.google.protobuf.ByteString getIgnoredQueryParametersBytes(int index)
       A list of query parameters to be ignored for transcoding method mapping.
       By default, the transcoder filter will not transcode a request if there are any
       unknown/invalid query parameters.
      
       Example :
      
       .. code-block:: proto
      
           service Bookstore {
             rpc GetShelf(GetShelfRequest) returns (Shelf) {
               option (google.api.http) = {
                 get: "/shelves/{shelf}"
               };
             }
           }
      
           message GetShelfRequest {
             int64 shelf = 1;
           }
      
           message Shelf {}
      
       The request ``/shelves/100?foo=bar`` will not be mapped to ``GetShelf``` because variable
       binding for ``foo`` is not defined. Adding ``foo`` to ``ignored_query_parameters`` will allow
       the same request to be mapped to ``GetShelf``.
       
      repeated string ignored_query_parameters = 6;
      Specified by:
      getIgnoredQueryParametersBytes in interface GrpcJsonTranscoderOrBuilder
      Parameters:
      index - The index of the value to return.
      Returns:
      The bytes of the ignoredQueryParameters at the given index.
    • getAutoMapping

      public boolean getAutoMapping()
       Whether to route methods without the ``google.api.http`` option.
      
       Example :
      
       .. code-block:: proto
      
           package bookstore;
      
           service Bookstore {
             rpc GetShelf(GetShelfRequest) returns (Shelf) {}
           }
      
           message GetShelfRequest {
             int64 shelf = 1;
           }
      
           message Shelf {}
      
       The client could ``post`` a json body ``{"shelf": 1234}`` with the path of
       ``/bookstore.Bookstore/GetShelfRequest`` to call ``GetShelfRequest``.
       
      bool auto_mapping = 7;
      Specified by:
      getAutoMapping in interface GrpcJsonTranscoderOrBuilder
      Returns:
      The autoMapping.
    • getIgnoreUnknownQueryParameters

      public boolean getIgnoreUnknownQueryParameters()
       Whether to ignore query parameters that cannot be mapped to a corresponding
       protobuf field. Use this if you cannot control the query parameters and do
       not know them beforehand. Otherwise use ``ignored_query_parameters``.
       Defaults to false.
       
      bool ignore_unknown_query_parameters = 8;
      Specified by:
      getIgnoreUnknownQueryParameters in interface GrpcJsonTranscoderOrBuilder
      Returns:
      The ignoreUnknownQueryParameters.
    • getConvertGrpcStatus

      public boolean getConvertGrpcStatus()
       Whether to convert gRPC status headers to JSON.
       When trailer indicates a gRPC error and there was no HTTP body, take ``google.rpc.Status``
       from the ``grpc-status-details-bin`` header and use it as JSON body.
       If there was no such header, make ``google.rpc.Status`` out of the ``grpc-status`` and
       ``grpc-message`` headers.
       The error details types must be present in the ``proto_descriptor``.
      
       For example, if an upstream server replies with headers:
      
       .. code-block:: none
      
           grpc-status: 5
           grpc-status-details-bin:
               CAUaMwoqdHlwZS5nb29nbGVhcGlzLmNvbS9nb29nbGUucnBjLlJlcXVlc3RJbmZvEgUKA3ItMQ
      
       The ``grpc-status-details-bin`` header contains a base64-encoded protobuf message
       ``google.rpc.Status``. It will be transcoded into:
      
       .. code-block:: none
      
           HTTP/1.1 404 Not Found
           content-type: application/json
      
           {"code":5,"details":[{"@type":"type.googleapis.com/google.rpc.RequestInfo","requestId":"r-1"}]}
      
       In order to transcode the message, the ``google.rpc.RequestInfo`` type from
       the ``google/rpc/error_details.proto`` should be included in the configured
       :ref:`proto descriptor set <config_grpc_json_generate_proto_descriptor_set>`.
       
      bool convert_grpc_status = 9;
      Specified by:
      getConvertGrpcStatus in interface GrpcJsonTranscoderOrBuilder
      Returns:
      The convertGrpcStatus.
    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessageV3
    • writeTo

      public void writeTo(com.google.protobuf.CodedOutputStream output) throws IOException
      Specified by:
      writeTo in interface com.google.protobuf.MessageLite
      Overrides:
      writeTo in class com.google.protobuf.GeneratedMessageV3
      Throws:
      IOException
    • getSerializedSize

      public int getSerializedSize()
      Specified by:
      getSerializedSize in interface com.google.protobuf.MessageLite
      Overrides:
      getSerializedSize in class com.google.protobuf.GeneratedMessageV3
    • equals

      public boolean equals(Object obj)
      Specified by:
      equals in interface com.google.protobuf.Message
      Overrides:
      equals in class com.google.protobuf.AbstractMessage
    • hashCode

      public int hashCode()
      Specified by:
      hashCode in interface com.google.protobuf.Message
      Overrides:
      hashCode in class com.google.protobuf.AbstractMessage
    • parseFrom

      public static GrpcJsonTranscoder parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static GrpcJsonTranscoder parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static GrpcJsonTranscoder parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static GrpcJsonTranscoder parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static GrpcJsonTranscoder parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static GrpcJsonTranscoder parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static GrpcJsonTranscoder parseFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static GrpcJsonTranscoder parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static GrpcJsonTranscoder parseDelimitedFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static GrpcJsonTranscoder parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseFrom

      public static GrpcJsonTranscoder parseFrom(com.google.protobuf.CodedInputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static GrpcJsonTranscoder parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • newBuilderForType

      public GrpcJsonTranscoder.Builder newBuilderForType()
      Specified by:
      newBuilderForType in interface com.google.protobuf.Message
      Specified by:
      newBuilderForType in interface com.google.protobuf.MessageLite
    • newBuilder

      public static GrpcJsonTranscoder.Builder newBuilder()
    • newBuilder

      public static GrpcJsonTranscoder.Builder newBuilder(GrpcJsonTranscoder prototype)
    • toBuilder

      public GrpcJsonTranscoder.Builder toBuilder()
      Specified by:
      toBuilder in interface com.google.protobuf.Message
      Specified by:
      toBuilder in interface com.google.protobuf.MessageLite
    • newBuilderForType

      protected GrpcJsonTranscoder.Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
      Specified by:
      newBuilderForType in class com.google.protobuf.GeneratedMessageV3
    • getDefaultInstance

      public static GrpcJsonTranscoder getDefaultInstance()
    • parser

      public static com.google.protobuf.Parser<GrpcJsonTranscoder> parser()
    • getParserForType

      public com.google.protobuf.Parser<GrpcJsonTranscoder> getParserForType()
      Specified by:
      getParserForType in interface com.google.protobuf.Message
      Specified by:
      getParserForType in interface com.google.protobuf.MessageLite
      Overrides:
      getParserForType in class com.google.protobuf.GeneratedMessageV3
    • getDefaultInstanceForType

      public GrpcJsonTranscoder getDefaultInstanceForType()
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder