extproc

package
v1.18.0-beta34 Latest Latest
Warning

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

Go to latest
Published: Nov 13, 2024 License: Apache-2.0 Imports: 29 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var File_github_com_solo_io_gloo_projects_gloo_api_v1_enterprise_options_extproc_extproc_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type GrpcService

type GrpcService struct {

	// A reference to the Upstream representing the external processor gRPC server.
	// See https://www.envoyproxy.io/docs/envoy/latest/api-v3/service/ext_proc/v3/external_processor.proto
	// for details.
	ExtProcServerRef *core.ResourceRef `protobuf:"bytes,1,opt,name=ext_proc_server_ref,json=extProcServerRef,proto3" json:"ext_proc_server_ref,omitempty"`
	// The `:authority` header in the grpc request. If this field is not set, the authority header value will be the
	// cluster name.
	// Note that this authority does not override the SNI. The SNI is provided by the transport socket of the cluster.
	Authority *wrapperspb.StringValue `protobuf:"bytes,2,opt,name=authority,proto3" json:"authority,omitempty"`
	// Indicates the retry policy for re-establishing the gRPC stream
	// This field is optional. If max interval is not provided, it will be set to ten times the provided base interval.
	// Currently only supported for xDS gRPC streams.
	// If not set, xDS gRPC streams default base interval:500ms, maximum interval:30s will be applied.
	RetryPolicy *v32.RetryPolicy `protobuf:"bytes,3,opt,name=retry_policy,json=retryPolicy,proto3" json:"retry_policy,omitempty"`
	// The timeout for the gRPC request. This is the timeout for a specific request.
	Timeout *durationpb.Duration `protobuf:"bytes,4,opt,name=timeout,proto3" json:"timeout,omitempty"`
	// Additional metadata to include in streams initiated to the GrpcService. This can be used for
	// scenarios in which additional ad hoc authorization headers (e.g. `x-foo-bar: baz-key`) are to
	// be injected. For more information, including details on header value syntax, see the
	// documentation on [custom request headers](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#config-http-conn-man-headers-custom-request-headers).
	InitialMetadata []*v32.HeaderValue `protobuf:"bytes,5,rep,name=initial_metadata,json=initialMetadata,proto3" json:"initial_metadata,omitempty"`
	// contains filtered or unexported fields
}

func (*GrpcService) Clone

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

Clone function

func (*GrpcService) Descriptor deprecated

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

Deprecated: Use GrpcService.ProtoReflect.Descriptor instead.

func (*GrpcService) Equal

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

Equal function

func (*GrpcService) GetAuthority

func (x *GrpcService) GetAuthority() *wrapperspb.StringValue

func (*GrpcService) GetExtProcServerRef

func (x *GrpcService) GetExtProcServerRef() *core.ResourceRef

func (*GrpcService) GetInitialMetadata

func (x *GrpcService) GetInitialMetadata() []*v32.HeaderValue

func (*GrpcService) GetRetryPolicy

func (x *GrpcService) GetRetryPolicy() *v32.RetryPolicy

func (*GrpcService) GetTimeout

func (x *GrpcService) GetTimeout() *durationpb.Duration

func (*GrpcService) Hash deprecated

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

Hash function

Deprecated: due to hashing implemention only using field values. The omission of the field name in the hash calculation can lead to hash collisions. Prefer the HashUnique function instead.

func (*GrpcService) HashUnique added in v1.18.0

func (m *GrpcService) HashUnique(hasher hash.Hash64) (uint64, error)

HashUnique function generates a hash of the object that is unique to the object by hashing field name and value pairs. Replaces Hash due to original hashing implemention only using field values. The omission of the field name in the hash calculation can lead to hash collisions.

func (*GrpcService) ProtoMessage

func (*GrpcService) ProtoMessage()

func (*GrpcService) ProtoReflect

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

func (*GrpcService) Reset

func (x *GrpcService) Reset()

func (*GrpcService) String

func (x *GrpcService) String() string

type HeaderForwardingRules

type HeaderForwardingRules struct {

	// If set, specifically allow any header in this list to be forwarded to the external
	// processing server. This can be overridden by the below `disallowed_headers`.
	AllowedHeaders *v33.ListStringMatcher `protobuf:"bytes,1,opt,name=allowed_headers,json=allowedHeaders,proto3" json:"allowed_headers,omitempty"`
	// If set, specifically disallow any header in this list to be forwarded to the external
	// processing server. This overrides the above `allowed_headers` if a header matches both.
	// NOT CURRENTLY IMPLEMENTED.
	DisallowedHeaders *v33.ListStringMatcher `protobuf:"bytes,2,opt,name=disallowed_headers,json=disallowedHeaders,proto3" json:"disallowed_headers,omitempty"`
	// contains filtered or unexported fields
}

The HeaderForwardingRules structure specifies what headers are allowed to be forwarded to the external processing server. See https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/filters/http/ext_proc/v3/ext_proc.proto#extensions-filters-http-ext-proc-v3-headerforwardingrules for details.

func (*HeaderForwardingRules) Clone

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

Clone function

func (*HeaderForwardingRules) Descriptor deprecated

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

Deprecated: Use HeaderForwardingRules.ProtoReflect.Descriptor instead.

func (*HeaderForwardingRules) Equal

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

Equal function

func (*HeaderForwardingRules) GetAllowedHeaders

func (x *HeaderForwardingRules) GetAllowedHeaders() *v33.ListStringMatcher

func (*HeaderForwardingRules) GetDisallowedHeaders

func (x *HeaderForwardingRules) GetDisallowedHeaders() *v33.ListStringMatcher

func (*HeaderForwardingRules) Hash deprecated

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

Hash function

Deprecated: due to hashing implemention only using field values. The omission of the field name in the hash calculation can lead to hash collisions. Prefer the HashUnique function instead.

func (*HeaderForwardingRules) HashUnique added in v1.18.0

func (m *HeaderForwardingRules) HashUnique(hasher hash.Hash64) (uint64, error)

HashUnique function generates a hash of the object that is unique to the object by hashing field name and value pairs. Replaces Hash due to original hashing implemention only using field values. The omission of the field name in the hash calculation can lead to hash collisions.

func (*HeaderForwardingRules) ProtoMessage

func (*HeaderForwardingRules) ProtoMessage()

func (*HeaderForwardingRules) ProtoReflect

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

func (*HeaderForwardingRules) Reset

func (x *HeaderForwardingRules) Reset()

func (*HeaderForwardingRules) String

func (x *HeaderForwardingRules) String() string

type Overrides

type Overrides struct {

	// Set a different processing mode for this virtual host or route than the default.
	ProcessingMode *v3.ProcessingMode `protobuf:"bytes,1,opt,name=processing_mode,json=processingMode,proto3" json:"processing_mode,omitempty"`
	// NOT CURRENTLY IMPLEMENTED.
	// Set a different asynchronous processing option than the default.
	AsyncMode *wrapperspb.BoolValue `protobuf:"bytes,2,opt,name=async_mode,json=asyncMode,proto3" json:"async_mode,omitempty"`
	// NOT FINALIZED UPSTREAM use at your own upgrade risk
	// Set different optional attributes than the default setting of the
	// `request_attributes` field.
	RequestAttributes []string `protobuf:"bytes,3,rep,name=request_attributes,json=requestAttributes,proto3" json:"request_attributes,omitempty"`
	// NOT FINALIZED UPSTREAM use at your own upgrade risk
	// Set different optional properties than the default setting of the
	// `response_attributes` field.
	ResponseAttributes []string `protobuf:"bytes,4,rep,name=response_attributes,json=responseAttributes,proto3" json:"response_attributes,omitempty"`
	// Set a different gRPC service for this virtual host or route than the default.
	GrpcService *GrpcService `protobuf:"bytes,5,opt,name=grpc_service,json=grpcService,proto3" json:"grpc_service,omitempty"`
	// Specifies a list of metadata namespaces whose values, if present, will be passed to the
	// ext_proc service as an opaque *protobuf::Struct*.
	MetadataContextNamespaces []string `` /* 138-byte string literal not displayed */
	// Specifies a list of metadata namespaces whose values, if present, will be passed to the
	// ext_proc service. typed_filter_metadata is passed as an `protobuf::Any`.
	//
	// It works in a way similar to `metadata_context_namespaces` but allows envoy and external processing server to share the protobuf message definition
	// in order to do a safe parsing.
	TypedMetadataContextNamespaces []string `` /* 155-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*Overrides) Clone

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

Clone function

func (*Overrides) Descriptor deprecated

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

Deprecated: Use Overrides.ProtoReflect.Descriptor instead.

func (*Overrides) Equal

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

Equal function

func (*Overrides) GetAsyncMode

func (x *Overrides) GetAsyncMode() *wrapperspb.BoolValue

func (*Overrides) GetGrpcService

func (x *Overrides) GetGrpcService() *GrpcService

func (*Overrides) GetMetadataContextNamespaces added in v1.15.5

func (x *Overrides) GetMetadataContextNamespaces() []string

func (*Overrides) GetProcessingMode

func (x *Overrides) GetProcessingMode() *v3.ProcessingMode

func (*Overrides) GetRequestAttributes

func (x *Overrides) GetRequestAttributes() []string

func (*Overrides) GetResponseAttributes

func (x *Overrides) GetResponseAttributes() []string

func (*Overrides) GetTypedMetadataContextNamespaces added in v1.15.5

func (x *Overrides) GetTypedMetadataContextNamespaces() []string

func (*Overrides) Hash deprecated

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

Hash function

Deprecated: due to hashing implemention only using field values. The omission of the field name in the hash calculation can lead to hash collisions. Prefer the HashUnique function instead.

func (*Overrides) HashUnique added in v1.18.0

func (m *Overrides) HashUnique(hasher hash.Hash64) (uint64, error)

HashUnique function generates a hash of the object that is unique to the object by hashing field name and value pairs. Replaces Hash due to original hashing implemention only using field values. The omission of the field name in the hash calculation can lead to hash collisions.

func (*Overrides) ProtoMessage

func (*Overrides) ProtoMessage()

func (*Overrides) ProtoReflect

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

func (*Overrides) Reset

func (x *Overrides) Reset()

func (*Overrides) String

func (x *Overrides) String() string

type RouteSettings

type RouteSettings struct {

	// Types that are assignable to Override:
	//
	//	*RouteSettings_Disabled
	//	*RouteSettings_Overrides
	Override isRouteSettings_Override `protobuf_oneof:"override"`
	// contains filtered or unexported fields
}

External processor settings that can be configured on a virtual host or route.

func (*RouteSettings) Clone

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

Clone function

func (*RouteSettings) Descriptor deprecated

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

Deprecated: Use RouteSettings.ProtoReflect.Descriptor instead.

func (*RouteSettings) Equal

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

Equal function

func (*RouteSettings) GetDisabled

func (x *RouteSettings) GetDisabled() *wrapperspb.BoolValue

func (*RouteSettings) GetOverride

func (m *RouteSettings) GetOverride() isRouteSettings_Override

func (*RouteSettings) GetOverrides

func (x *RouteSettings) GetOverrides() *Overrides

func (*RouteSettings) Hash deprecated

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

Hash function

Deprecated: due to hashing implemention only using field values. The omission of the field name in the hash calculation can lead to hash collisions. Prefer the HashUnique function instead.

func (*RouteSettings) HashUnique added in v1.18.0

func (m *RouteSettings) HashUnique(hasher hash.Hash64) (uint64, error)

HashUnique function generates a hash of the object that is unique to the object by hashing field name and value pairs. Replaces Hash due to original hashing implemention only using field values. The omission of the field name in the hash calculation can lead to hash collisions.

func (*RouteSettings) ProtoMessage

func (*RouteSettings) ProtoMessage()

func (*RouteSettings) ProtoReflect

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

func (*RouteSettings) Reset

func (x *RouteSettings) Reset()

func (*RouteSettings) String

func (x *RouteSettings) String() string

type RouteSettings_Disabled

type RouteSettings_Disabled struct {
	// Set to true to disable the External Processing filter for this virtual host or route.
	// Setting this value to false is not supported.
	Disabled *wrapperspb.BoolValue `protobuf:"bytes,1,opt,name=disabled,proto3,oneof"`
}

type RouteSettings_Overrides

type RouteSettings_Overrides struct {
	// Override specific configuration for this virtual host or route.
	// If a route specifies overrides, it will override the disabled flag of its parent virtual host.
	Overrides *Overrides `protobuf:"bytes,2,opt,name=overrides,proto3,oneof"`
}

type Settings

type Settings struct {

	// Required. Configuration for the gRPC service that the filter will communicate with.
	GrpcService *GrpcService `protobuf:"bytes,1,opt,name=grpc_service,json=grpcService,proto3" json:"grpc_service,omitempty"`
	// Required. Where in the HTTP filter chain to insert the filter.
	FilterStage *filters.FilterStage `protobuf:"bytes,2,opt,name=filter_stage,json=filterStage,proto3" json:"filter_stage,omitempty"`
	// By default, if the gRPC stream cannot be established, or if it is closed
	// prematurely with an error, the filter will fail. Specifically, if the
	// response headers have not yet been delivered, then it will return a 500
	// error downstream. If they have been delivered, then instead the HTTP stream to the
	// downstream client will be reset.
	// With this parameter set to true, however, then if the gRPC stream is prematurely closed
	// or could not be opened, processing continues without error.
	FailureModeAllow *wrapperspb.BoolValue `protobuf:"bytes,3,opt,name=failure_mode_allow,json=failureModeAllow,proto3" json:"failure_mode_allow,omitempty"`
	// Specifies default options for how HTTP headers, trailers, and bodies are
	// sent.
	ProcessingMode *v3.ProcessingMode `protobuf:"bytes,4,opt,name=processing_mode,json=processingMode,proto3" json:"processing_mode,omitempty"`
	// NOT CURRENTLY IMPLEMENTED.
	// If true, send each part of the HTTP request or response specified by ProcessingMode
	// asynchronously -- in other words, send the message on the gRPC stream and then continue
	// filter processing. If false, which is the default, suspend filter execution after
	// each message is sent to the remote service and wait up to "message_timeout"
	// for a reply.
	AsyncMode *wrapperspb.BoolValue `protobuf:"bytes,5,opt,name=async_mode,json=asyncMode,proto3" json:"async_mode,omitempty"`
	// NOT CURRENTLY IMPLEMENTED.
	// Envoy provides a number of [attributes](https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/advanced/attributes#arch-overview-attributes)
	// for expressive policies. Each attribute name provided in this field will be
	// matched against that list and populated in the request_headers message.
	// See the [request attribute documentation](https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/advanced/attributes#request-attributes)
	// for the list of supported attributes and their types.
	RequestAttributes []string `protobuf:"bytes,6,rep,name=request_attributes,json=requestAttributes,proto3" json:"request_attributes,omitempty"`
	// NOT CURRENTLY IMPLEMENTED.
	// Envoy provides a number of [attributes](https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/advanced/attributes#arch-overview-attributes)
	// for expressive policies. Each attribute name provided in this field will be
	// matched against that list and populated in the response_headers message.
	// See the [response attribute documentation](https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/advanced/attributes#response-attributes)
	// for the list of supported attributes and their types.
	ResponseAttributes []string `protobuf:"bytes,7,rep,name=response_attributes,json=responseAttributes,proto3" json:"response_attributes,omitempty"`
	// Specifies the timeout for each individual message sent on the stream
	// when the filter is running in synchronous mode. Whenever the proxy sends
	// a message on the stream that requires a response, it will reset this timer,
	// and will stop processing and return an error (subject to the processing mode)
	// if the timer expires before a matching response is received. There is no
	// timeout when the filter is running in asynchronous mode. Value must be at
	// least 0 seconds, and less than or equal to 3600 seconds. Zero is a valid
	// value which means the timer will be triggered immediately. If not
	// configured, default is 200 milliseconds.
	MessageTimeout *durationpb.Duration `protobuf:"bytes,8,opt,name=message_timeout,json=messageTimeout,proto3" json:"message_timeout,omitempty"`
	// Optional additional prefix to use when emitting statistics. This allows distinguishing
	// between statistics emitted by multiple *ext_proc* filters in an HTTP filter chain.
	StatPrefix *wrapperspb.StringValue `protobuf:"bytes,9,opt,name=stat_prefix,json=statPrefix,proto3" json:"stat_prefix,omitempty"`
	// Rules that determine what modifications an external processing server may
	// make to message headers. If not set, all headers may be modified except
	// for "host", ":authority", ":scheme", ":method", and headers that start
	// with the header prefix set via
	// [header_prefix](https://www.envoyproxy.io/docs/envoy/latest/api-v3/config/bootstrap/v3/bootstrap.proto#envoy-v3-api-field-config-bootstrap-v3-bootstrap-header-prefix)
	// (which is usually "x-envoy").
	// Note that changing headers such as "host" or ":authority" may not in itself
	// change Envoy's routing decision, as routes can be cached. To also force the
	// route to be recomputed, set the
	// [clear_route_cache](https://www.envoyproxy.io/docs/envoy/latest/api-v3/service/ext_proc/v3/external_processor.proto#envoy-v3-api-field-service-ext-proc-v3-commonresponse-clear-route-cache)
	// field to true in the same response.
	MutationRules *v31.HeaderMutationRules `protobuf:"bytes,10,opt,name=mutation_rules,json=mutationRules,proto3" json:"mutation_rules,omitempty"`
	// Specify the upper bound of
	// [override_message_timeout](https://www.envoyproxy.io/docs/envoy/latest/api-v3/service/ext_proc/v3/external_processor.proto#envoy-v3-api-field-service-ext-proc-v3-processingresponse-override-message-timeout).
	// If not specified, by default it is 0, which will effectively disable the `override_message_timeout` API.
	// Value must be greater than or equal to the `messageTimeout` and less than or equal to 3600 seconds.
	MaxMessageTimeout *durationpb.Duration `protobuf:"bytes,11,opt,name=max_message_timeout,json=maxMessageTimeout,proto3" json:"max_message_timeout,omitempty"`
	// Prevents clearing the route-cache when the
	// [clear_route_cache](https://www.envoyproxy.io/docs/envoy/latest/api-v3/service/ext_proc/v3/external_processor.proto#envoy-v3-api-field-service-ext-proc-v3-commonresponse-clear-route-cache)
	// field is set in an external processor response.
	DisableClearRouteCache *wrapperspb.BoolValue `` /* 132-byte string literal not displayed */
	// Allow headers matching the `forward_rules` to be forwarded to the external processing server.
	// If not set, all headers are forwarded to the external processing server.
	ForwardRules *HeaderForwardingRules `protobuf:"bytes,13,opt,name=forward_rules,json=forwardRules,proto3" json:"forward_rules,omitempty"`
	// Additional metadata to be added to the filter state for logging purposes. The metadata
	// will be added to StreamInfo's filter state under the namespace corresponding to the
	// ext_proc filter name.
	FilterMetadata *structpb.Struct `protobuf:"bytes,14,opt,name=filter_metadata,json=filterMetadata,proto3" json:"filter_metadata,omitempty"`
	// If `allow_mode_override` is set to true, the filter config [processing_mode](https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/filters/http/ext_proc/v3/ext_proc.proto#envoy-v3-api-field-extensions-filters-http-ext-proc-v3-externalprocessor-processing-mode)
	// can be overridden by the response message from the external processing server
	// [mode_override](https://www.envoyproxy.io/docs/envoy/latest/api-v3/service/ext_proc/v3/external_processor.proto#envoy-v3-api-field-service-ext-proc-v3-processingresponse-mode-override).
	// If not set, `mode_override` API in the response message will be ignored.
	AllowModeOverride *wrapperspb.BoolValue `protobuf:"bytes,15,opt,name=allow_mode_override,json=allowModeOverride,proto3" json:"allow_mode_override,omitempty"`
	// Specifies a list of metadata namespaces whose values, if present, will be passed to the
	// ext_proc service as an opaque *protobuf::Struct*.
	MetadataContextNamespaces []string `` /* 139-byte string literal not displayed */
	// Specifies a list of metadata namespaces whose values, if present, will be passed to the
	// ext_proc service. typed_filter_metadata is passed as an `protobuf::Any`.
	//
	// It works in a way similar to `metadata_context_namespaces` but allows envoy and external processing server to share the protobuf message definition
	// in order to do a safe parsing.
	TypedMetadataContextNamespaces []string `` /* 156-byte string literal not displayed */
	// contains filtered or unexported fields
}

Enterprise-only: Configuration for Envoy's [External Processing Filter](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_filters/ext_proc_filter). The External Processing filter allows for calling out to an external gRPC service at a specified point within a HTTP filter chain. The external service may access and modify various parts of the request or response, and may terminate processing. Envoy's External Processing Filter is considered a work in progress and has an unknown security posture. Users should take care to understand the risks of using this extension before proceeding.

func (*Settings) Clone

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

Clone function

func (*Settings) Descriptor deprecated

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

Deprecated: Use Settings.ProtoReflect.Descriptor instead.

func (*Settings) Equal

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

Equal function

func (*Settings) GetAllowModeOverride

func (x *Settings) GetAllowModeOverride() *wrapperspb.BoolValue

func (*Settings) GetAsyncMode

func (x *Settings) GetAsyncMode() *wrapperspb.BoolValue

func (*Settings) GetDisableClearRouteCache

func (x *Settings) GetDisableClearRouteCache() *wrapperspb.BoolValue

func (*Settings) GetFailureModeAllow

func (x *Settings) GetFailureModeAllow() *wrapperspb.BoolValue

func (*Settings) GetFilterMetadata

func (x *Settings) GetFilterMetadata() *structpb.Struct

func (*Settings) GetFilterStage

func (x *Settings) GetFilterStage() *filters.FilterStage

func (*Settings) GetForwardRules

func (x *Settings) GetForwardRules() *HeaderForwardingRules

func (*Settings) GetGrpcService

func (x *Settings) GetGrpcService() *GrpcService

func (*Settings) GetMaxMessageTimeout

func (x *Settings) GetMaxMessageTimeout() *durationpb.Duration

func (*Settings) GetMessageTimeout

func (x *Settings) GetMessageTimeout() *durationpb.Duration

func (*Settings) GetMetadataContextNamespaces added in v1.15.5

func (x *Settings) GetMetadataContextNamespaces() []string

func (*Settings) GetMutationRules

func (x *Settings) GetMutationRules() *v31.HeaderMutationRules

func (*Settings) GetProcessingMode

func (x *Settings) GetProcessingMode() *v3.ProcessingMode

func (*Settings) GetRequestAttributes

func (x *Settings) GetRequestAttributes() []string

func (*Settings) GetResponseAttributes

func (x *Settings) GetResponseAttributes() []string

func (*Settings) GetStatPrefix

func (x *Settings) GetStatPrefix() *wrapperspb.StringValue

func (*Settings) GetTypedMetadataContextNamespaces added in v1.15.5

func (x *Settings) GetTypedMetadataContextNamespaces() []string

func (*Settings) Hash deprecated

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

Hash function

Deprecated: due to hashing implemention only using field values. The omission of the field name in the hash calculation can lead to hash collisions. Prefer the HashUnique function instead.

func (*Settings) HashUnique added in v1.18.0

func (m *Settings) HashUnique(hasher hash.Hash64) (uint64, error)

HashUnique function generates a hash of the object that is unique to the object by hashing field name and value pairs. Replaces Hash due to original hashing implemention only using field values. The omission of the field name in the hash calculation can lead to hash collisions.

func (*Settings) ProtoMessage

func (*Settings) ProtoMessage()

func (*Settings) ProtoReflect

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

func (*Settings) Reset

func (x *Settings) Reset()

func (*Settings) String

func (x *Settings) String() string

Jump to

Keyboard shortcuts

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