grpc_json

package
v1.17.8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 16, 2024 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var File_github_com_solo_io_gloo_projects_gloo_api_v1_options_grpc_json_grpc_json_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type GrpcJsonTranscoder

type GrpcJsonTranscoder struct {

	// Types that are assignable to DescriptorSet:
	//
	//	*GrpcJsonTranscoder_ProtoDescriptor
	//	*GrpcJsonTranscoder_ProtoDescriptorBin
	//	*GrpcJsonTranscoder_ProtoDescriptorConfigMap
	DescriptorSet isGrpcJsonTranscoder_DescriptorSet `protobuf_oneof:"descriptor_set"`
	// 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.
	Services []string `protobuf:"bytes,2,rep,name=services,proto3" json:"services,omitempty"`
	// 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>`_.
	PrintOptions *GrpcJsonTranscoder_PrintOptions `protobuf:"bytes,3,opt,name=print_options,json=printOptions,proto3" json:"print_options,omitempty"`
	// Set this value to true to keep the incoming request route after the outgoing headers are transformed to match the upstream gRPC service.
	// Note that you cannot set this value to true with routes for gRPC services that are not transcoded.
	// When set to false, Envoy does not match against the incoming request path.
	// For more information, see the Envoy docs <https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_filters/grpc_json_transcoder_filter#route-configs-for-transcoded-requests>.
	MatchIncomingRequestRoute bool `` /* 141-byte string literal not displayed */
	// 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“.
	IgnoredQueryParameters []string `` /* 129-byte string literal not displayed */
	// 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“.
	AutoMapping bool `protobuf:"varint,7,opt,name=auto_mapping,json=autoMapping,proto3" json:"auto_mapping,omitempty"`
	// 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.
	IgnoreUnknownQueryParameters bool `` /* 150-byte string literal not displayed */
	// 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>`.
	ConvertGrpcStatus bool `protobuf:"varint,9,opt,name=convert_grpc_status,json=convertGrpcStatus,proto3" json:"convert_grpc_status,omitempty"`
	// contains filtered or unexported fields
}

[#next-free-field: 10]

func (*GrpcJsonTranscoder) Clone added in v1.8.24

func (m *GrpcJsonTranscoder) Clone() proto.Message

Clone function

func (*GrpcJsonTranscoder) Descriptor deprecated

func (*GrpcJsonTranscoder) Descriptor() ([]byte, []int)

Deprecated: Use GrpcJsonTranscoder.ProtoReflect.Descriptor instead.

func (*GrpcJsonTranscoder) Equal

func (m *GrpcJsonTranscoder) Equal(that interface{}) bool

Equal function

func (*GrpcJsonTranscoder) GetAutoMapping

func (x *GrpcJsonTranscoder) GetAutoMapping() bool

func (*GrpcJsonTranscoder) GetConvertGrpcStatus

func (x *GrpcJsonTranscoder) GetConvertGrpcStatus() bool

func (*GrpcJsonTranscoder) GetDescriptorSet

func (m *GrpcJsonTranscoder) GetDescriptorSet() isGrpcJsonTranscoder_DescriptorSet

func (*GrpcJsonTranscoder) GetIgnoreUnknownQueryParameters

func (x *GrpcJsonTranscoder) GetIgnoreUnknownQueryParameters() bool

func (*GrpcJsonTranscoder) GetIgnoredQueryParameters

func (x *GrpcJsonTranscoder) GetIgnoredQueryParameters() []string

func (*GrpcJsonTranscoder) GetMatchIncomingRequestRoute

func (x *GrpcJsonTranscoder) GetMatchIncomingRequestRoute() bool

func (*GrpcJsonTranscoder) GetPrintOptions

func (*GrpcJsonTranscoder) GetProtoDescriptor

func (x *GrpcJsonTranscoder) GetProtoDescriptor() string

func (*GrpcJsonTranscoder) GetProtoDescriptorBin

func (x *GrpcJsonTranscoder) GetProtoDescriptorBin() []byte

func (*GrpcJsonTranscoder) GetProtoDescriptorConfigMap added in v1.12.41

func (x *GrpcJsonTranscoder) GetProtoDescriptorConfigMap() *GrpcJsonTranscoder_DescriptorConfigMap

func (*GrpcJsonTranscoder) GetServices

func (x *GrpcJsonTranscoder) GetServices() []string

func (*GrpcJsonTranscoder) Hash

func (m *GrpcJsonTranscoder) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*GrpcJsonTranscoder) ProtoMessage

func (*GrpcJsonTranscoder) ProtoMessage()

func (*GrpcJsonTranscoder) ProtoReflect added in v1.6.0

func (x *GrpcJsonTranscoder) ProtoReflect() protoreflect.Message

func (*GrpcJsonTranscoder) Reset

func (x *GrpcJsonTranscoder) Reset()

func (*GrpcJsonTranscoder) String

func (x *GrpcJsonTranscoder) String() string

type GrpcJsonTranscoder_DescriptorConfigMap added in v1.12.41

type GrpcJsonTranscoder_DescriptorConfigMap struct {

	// A reference to a ConfigMap containing the base64-encoded binary content of a proto descriptor set.
	// The ConfigMap must be in a namespace watched by Gloo Gateway.
	ConfigMapRef *core.ResourceRef `protobuf:"bytes,1,opt,name=config_map_ref,json=configMapRef,proto3" json:"config_map_ref,omitempty"`
	// The ConfigMap data key whose value contains the proto descriptor set.
	// If the ConfigMap contains multiple key-value pairs, this field is required.
	// If the ConfigMap contains exactly one key-value pair, this field is optional.
	Key string `protobuf:"bytes,2,opt,name=key,proto3" json:"key,omitempty"`
	// contains filtered or unexported fields
}

Allows the user to store the binary content of a [proto descriptor set](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_filters/grpc_json_transcoder_filter#config-grpc-json-generate-proto-descriptor-set) in a ConfigMap.

func (*GrpcJsonTranscoder_DescriptorConfigMap) Clone added in v1.12.41

Clone function

func (*GrpcJsonTranscoder_DescriptorConfigMap) Descriptor deprecated added in v1.12.41

func (*GrpcJsonTranscoder_DescriptorConfigMap) Descriptor() ([]byte, []int)

Deprecated: Use GrpcJsonTranscoder_DescriptorConfigMap.ProtoReflect.Descriptor instead.

func (*GrpcJsonTranscoder_DescriptorConfigMap) Equal added in v1.12.41

func (m *GrpcJsonTranscoder_DescriptorConfigMap) Equal(that interface{}) bool

Equal function

func (*GrpcJsonTranscoder_DescriptorConfigMap) GetConfigMapRef added in v1.12.41

func (*GrpcJsonTranscoder_DescriptorConfigMap) GetKey added in v1.12.41

func (*GrpcJsonTranscoder_DescriptorConfigMap) Hash added in v1.12.41

Hash function

func (*GrpcJsonTranscoder_DescriptorConfigMap) ProtoMessage added in v1.12.41

func (*GrpcJsonTranscoder_DescriptorConfigMap) ProtoReflect added in v1.12.41

func (*GrpcJsonTranscoder_DescriptorConfigMap) Reset added in v1.12.41

func (*GrpcJsonTranscoder_DescriptorConfigMap) String added in v1.12.41

type GrpcJsonTranscoder_PrintOptions

type GrpcJsonTranscoder_PrintOptions struct {

	// Whether to add spaces, line breaks and indentation to make the JSON
	// output easy to read. Defaults to false.
	AddWhitespace bool `protobuf:"varint,1,opt,name=add_whitespace,json=addWhitespace,proto3" json:"add_whitespace,omitempty"`
	// Whether to always print primitive fields. By default primitive
	// fields with default values will be omitted in JSON output. For
	// example, an int32 field set to 0 will be omitted. Setting this flag to
	// true will override the default behavior and print primitive fields
	// regardless of their values. Defaults to false.
	AlwaysPrintPrimitiveFields bool `` /* 144-byte string literal not displayed */
	// Whether to always print enums as ints. By default they are rendered
	// as strings. Defaults to false.
	AlwaysPrintEnumsAsInts bool `` /* 134-byte string literal not displayed */
	// Whether to preserve proto field names. By default protobuf will
	// generate JSON field names using the “json_name“ option, or lower camel case,
	// in that order. Setting this flag will preserve the original field names. Defaults to false.
	PreserveProtoFieldNames bool `` /* 135-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*GrpcJsonTranscoder_PrintOptions) Clone added in v1.8.24

Clone function

func (*GrpcJsonTranscoder_PrintOptions) Descriptor deprecated

func (*GrpcJsonTranscoder_PrintOptions) Descriptor() ([]byte, []int)

Deprecated: Use GrpcJsonTranscoder_PrintOptions.ProtoReflect.Descriptor instead.

func (*GrpcJsonTranscoder_PrintOptions) Equal

func (m *GrpcJsonTranscoder_PrintOptions) Equal(that interface{}) bool

Equal function

func (*GrpcJsonTranscoder_PrintOptions) GetAddWhitespace

func (x *GrpcJsonTranscoder_PrintOptions) GetAddWhitespace() bool

func (*GrpcJsonTranscoder_PrintOptions) GetAlwaysPrintEnumsAsInts

func (x *GrpcJsonTranscoder_PrintOptions) GetAlwaysPrintEnumsAsInts() bool

func (*GrpcJsonTranscoder_PrintOptions) GetAlwaysPrintPrimitiveFields

func (x *GrpcJsonTranscoder_PrintOptions) GetAlwaysPrintPrimitiveFields() bool

func (*GrpcJsonTranscoder_PrintOptions) GetPreserveProtoFieldNames

func (x *GrpcJsonTranscoder_PrintOptions) GetPreserveProtoFieldNames() bool

func (*GrpcJsonTranscoder_PrintOptions) Hash

Hash function

func (*GrpcJsonTranscoder_PrintOptions) ProtoMessage

func (*GrpcJsonTranscoder_PrintOptions) ProtoMessage()

func (*GrpcJsonTranscoder_PrintOptions) ProtoReflect added in v1.6.0

func (*GrpcJsonTranscoder_PrintOptions) Reset

func (*GrpcJsonTranscoder_PrintOptions) String

type GrpcJsonTranscoder_ProtoDescriptor

type GrpcJsonTranscoder_ProtoDescriptor struct {
	// Supplies the filename of the [proto descriptor set](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_filters/grpc_json_transcoder_filter#config-grpc-json-generate-proto-descriptor-set)
	// for the gRPC services.
	ProtoDescriptor string `protobuf:"bytes,1,opt,name=proto_descriptor,json=protoDescriptor,proto3,oneof"`
}

type GrpcJsonTranscoder_ProtoDescriptorBin

type GrpcJsonTranscoder_ProtoDescriptorBin struct {
	// Supplies the binary content of the [proto descriptor set](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_filters/grpc_json_transcoder_filter#config-grpc-json-generate-proto-descriptor-set)
	// for the gRPC services.
	// Note: in yaml, this must be provided as a base64 standard encoded string; yaml can't handle binary bytes.
	ProtoDescriptorBin []byte `protobuf:"bytes,4,opt,name=proto_descriptor_bin,json=protoDescriptorBin,proto3,oneof"`
}

type GrpcJsonTranscoder_ProtoDescriptorConfigMap added in v1.12.41

type GrpcJsonTranscoder_ProtoDescriptorConfigMap struct {
	// A reference to a ConfigMap containing the base64-encoded binary content of the [proto descriptor set](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_filters/grpc_json_transcoder_filter#config-grpc-json-generate-proto-descriptor-set)
	// for the gRPC services.
	ProtoDescriptorConfigMap *GrpcJsonTranscoder_DescriptorConfigMap `protobuf:"bytes,10,opt,name=proto_descriptor_config_map,json=protoDescriptorConfigMap,proto3,oneof"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL