Package: xds.type.v3


Source File: github.com/solo-io/gloo/projects/gloo/api/external/xds/type/v3/typed_struct.proto


A TypedStruct contains an arbitrary JSON serialized protocol buffer message with a URL that describes the type of the serialized message. This is very similar to google.protobuf.Any, instead of having protocol buffer binary, this employs google.protobuf.Struct as value.

This message is intended to be embedded inside Any, so it shouldn’t be directly referred from other UDPA messages.

When packing an opaque extension config, packing the expected type into Any is preferred wherever possible for its efficiency. TypedStruct should be used only if a proto descriptor is not available, for example if:

When a DPLB receives a TypedStruct in Any, it should:

TODO(lizan): Figure out how TypeStruct should be used with DPLB extensions that doesn’t link protobuf descriptor with DPLB itself, (e.g. gRPC LB Plugin, Envoy WASM extensions).

"typeUrl": string
"value": .google.protobuf.Struct

Field Type Description
typeUrl string A URL that uniquely identifies the type of the serialize protocol buffer message. This has same semantics and format described in google.protobuf.Any: https://github.com/protocolbuffers/protobuf/blob/master/src/google/protobuf/any.proto.
value .google.protobuf.Struct A JSON representation of the above specified type.