compositev3

package
v1.36.11-2026011520535... Latest Latest
Warning

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

Go to latest
Published: unknown License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var File_envoy_extensions_filters_http_composite_v3_composite_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type Composite

type Composite struct {

	// Named filter chain definitions that can be referenced from
	// :ref:`ExecuteFilterAction.filter_chain_name
	// <envoy_v3_api_field_extensions.filters.http.composite.v3.ExecuteFilterAction.filter_chain_name>`.
	// The filter chains are compiled at configuration time and can be referenced by name.
	// This is useful when the same filter chain needs to be applied across many routes,
	// as it avoids duplicating the filter chain configuration.
	NamedFilterChains map[string]*FilterChainConfiguration `` /* 188-byte string literal not displayed */
	// contains filtered or unexported fields
}

:ref:`Composite filter <config_http_filters_composite>` config. The composite filter config allows delegating filter handling to another filter as determined by matching on the request headers. This makes it possible to use different filters or filter configurations based on the incoming request.

This is intended to be used with :ref:`ExtensionWithMatcher <envoy_v3_api_msg_extensions.common.matching.v3.ExtensionWithMatcher>` where a match tree is specified that indicates (via :ref:`ExecuteFilterAction <envoy_v3_api_msg_extensions.filters.http.composite.v3.ExecuteFilterAction>`) which filter configuration to create and delegate to.

func (*Composite) GetNamedFilterChains

func (x *Composite) GetNamedFilterChains() map[string]*FilterChainConfiguration

func (*Composite) ProtoMessage

func (*Composite) ProtoMessage()

func (*Composite) ProtoReflect

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

func (*Composite) Reset

func (x *Composite) Reset()

func (*Composite) SetNamedFilterChains

func (x *Composite) SetNamedFilterChains(v map[string]*FilterChainConfiguration)

func (*Composite) String

func (x *Composite) String() string

type Composite_builder

type Composite_builder struct {

	// Named filter chain definitions that can be referenced from
	// :ref:`ExecuteFilterAction.filter_chain_name
	// <envoy_v3_api_field_extensions.filters.http.composite.v3.ExecuteFilterAction.filter_chain_name>`.
	// The filter chains are compiled at configuration time and can be referenced by name.
	// This is useful when the same filter chain needs to be applied across many routes,
	// as it avoids duplicating the filter chain configuration.
	NamedFilterChains map[string]*FilterChainConfiguration
	// contains filtered or unexported fields
}

func (Composite_builder) Build

func (b0 Composite_builder) Build() *Composite

type DynamicConfig

type DynamicConfig struct {

	// The name of the extension configuration. It also serves as a resource name in ExtensionConfigDS.
	// The resource type in the “DiscoveryRequest“ will be :ref:`TypedExtensionConfig
	// <envoy_v3_api_msg_config.core.v3.TypedExtensionConfig>`.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Configuration source specifier for an extension configuration discovery
	// service. In case of a failure and without the default configuration,
	// 500(Internal Server Error) will be returned.
	ConfigDiscovery *v3.ExtensionConfigSource `protobuf:"bytes,2,opt,name=config_discovery,json=configDiscovery,proto3" json:"config_discovery,omitempty"`
	// contains filtered or unexported fields
}

Configuration for an extension configuration discovery service with name.

func (*DynamicConfig) ClearConfigDiscovery

func (x *DynamicConfig) ClearConfigDiscovery()

func (*DynamicConfig) GetConfigDiscovery

func (x *DynamicConfig) GetConfigDiscovery() *v3.ExtensionConfigSource

func (*DynamicConfig) GetName

func (x *DynamicConfig) GetName() string

func (*DynamicConfig) HasConfigDiscovery

func (x *DynamicConfig) HasConfigDiscovery() bool

func (*DynamicConfig) ProtoMessage

func (*DynamicConfig) ProtoMessage()

func (*DynamicConfig) ProtoReflect

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

func (*DynamicConfig) Reset

func (x *DynamicConfig) Reset()

func (*DynamicConfig) SetConfigDiscovery

func (x *DynamicConfig) SetConfigDiscovery(v *v3.ExtensionConfigSource)

func (*DynamicConfig) SetName

func (x *DynamicConfig) SetName(v string)

func (*DynamicConfig) String

func (x *DynamicConfig) String() string

type DynamicConfig_builder

type DynamicConfig_builder struct {

	// The name of the extension configuration. It also serves as a resource name in ExtensionConfigDS.
	// The resource type in the “DiscoveryRequest“ will be :ref:`TypedExtensionConfig
	// <envoy_v3_api_msg_config.core.v3.TypedExtensionConfig>`.
	Name string
	// Configuration source specifier for an extension configuration discovery
	// service. In case of a failure and without the default configuration,
	// 500(Internal Server Error) will be returned.
	ConfigDiscovery *v3.ExtensionConfigSource
	// contains filtered or unexported fields
}

func (DynamicConfig_builder) Build

type ExecuteFilterAction

type ExecuteFilterAction struct {

	// Filter specific configuration which depends on the filter being
	// instantiated. See the supported filters for further documentation.
	// Only one of “typed_config“, “dynamic_config“, “filter_chain“, or “filter_chain_name“
	// can be set.
	// [#extension-category: envoy.filters.http]
	TypedConfig *v3.TypedExtensionConfig `protobuf:"bytes,1,opt,name=typed_config,json=typedConfig,proto3" json:"typed_config,omitempty"`
	// Dynamic configuration of filter obtained via extension configuration discovery service.
	// Only one of “typed_config“, “dynamic_config“, “filter_chain“, or “filter_chain_name“
	// can be set.
	DynamicConfig *DynamicConfig `protobuf:"bytes,2,opt,name=dynamic_config,json=dynamicConfig,proto3" json:"dynamic_config,omitempty"`
	// An inlined list of filter configurations. The specified filters will be executed in order.
	// Only one of “typed_config“, “dynamic_config“, “filter_chain“, or “filter_chain_name“
	// can be set.
	FilterChain *FilterChainConfiguration `protobuf:"bytes,4,opt,name=filter_chain,json=filterChain,proto3" json:"filter_chain,omitempty"`
	// The name of a filter chain defined in
	// :ref:`Composite.named_filter_chains
	// <envoy_v3_api_field_extensions.filters.http.composite.v3.Composite.named_filter_chains>`.
	// At runtime, if the named filter chain is not found in the Composite filter's configuration,
	// no filter will be applied for this match (the action is silently skipped).
	// Only one of “typed_config“, “dynamic_config“, “filter_chain“, or “filter_chain_name“
	// can be set.
	FilterChainName string `protobuf:"bytes,5,opt,name=filter_chain_name,json=filterChainName,proto3" json:"filter_chain_name,omitempty"`
	// Probability of the action execution. If not specified, this is 100%.
	// This allows sampling behavior for the configured actions.
	// For example, if
	// :ref:`default_value <envoy_v3_api_field_config.core.v3.RuntimeFractionalPercent.default_value>`
	// under the “sample_percent“ is configured with 30%, a dice roll with that
	// probability is done. The underline action will only be executed if the
	// dice roll returns positive. Otherwise, the action is skipped.
	SamplePercent *v3.RuntimeFractionalPercent `protobuf:"bytes,3,opt,name=sample_percent,json=samplePercent,proto3" json:"sample_percent,omitempty"`
	// contains filtered or unexported fields
}

Composite match action (see :ref:`matching docs <arch_overview_matching_api>` for more info on match actions). This specifies the filter configuration of the filter that the composite filter should delegate filter interactions to. [#next-free-field: 6]

func (*ExecuteFilterAction) ClearDynamicConfig

func (x *ExecuteFilterAction) ClearDynamicConfig()

func (*ExecuteFilterAction) ClearFilterChain

func (x *ExecuteFilterAction) ClearFilterChain()

func (*ExecuteFilterAction) ClearSamplePercent

func (x *ExecuteFilterAction) ClearSamplePercent()

func (*ExecuteFilterAction) ClearTypedConfig

func (x *ExecuteFilterAction) ClearTypedConfig()

func (*ExecuteFilterAction) GetDynamicConfig

func (x *ExecuteFilterAction) GetDynamicConfig() *DynamicConfig

func (*ExecuteFilterAction) GetFilterChain

func (x *ExecuteFilterAction) GetFilterChain() *FilterChainConfiguration

func (*ExecuteFilterAction) GetFilterChainName

func (x *ExecuteFilterAction) GetFilterChainName() string

func (*ExecuteFilterAction) GetSamplePercent

func (x *ExecuteFilterAction) GetSamplePercent() *v3.RuntimeFractionalPercent

func (*ExecuteFilterAction) GetTypedConfig

func (x *ExecuteFilterAction) GetTypedConfig() *v3.TypedExtensionConfig

func (*ExecuteFilterAction) HasDynamicConfig

func (x *ExecuteFilterAction) HasDynamicConfig() bool

func (*ExecuteFilterAction) HasFilterChain

func (x *ExecuteFilterAction) HasFilterChain() bool

func (*ExecuteFilterAction) HasSamplePercent

func (x *ExecuteFilterAction) HasSamplePercent() bool

func (*ExecuteFilterAction) HasTypedConfig

func (x *ExecuteFilterAction) HasTypedConfig() bool

func (*ExecuteFilterAction) ProtoMessage

func (*ExecuteFilterAction) ProtoMessage()

func (*ExecuteFilterAction) ProtoReflect

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

func (*ExecuteFilterAction) Reset

func (x *ExecuteFilterAction) Reset()

func (*ExecuteFilterAction) SetDynamicConfig

func (x *ExecuteFilterAction) SetDynamicConfig(v *DynamicConfig)

func (*ExecuteFilterAction) SetFilterChain

func (x *ExecuteFilterAction) SetFilterChain(v *FilterChainConfiguration)

func (*ExecuteFilterAction) SetFilterChainName

func (x *ExecuteFilterAction) SetFilterChainName(v string)

func (*ExecuteFilterAction) SetSamplePercent

func (x *ExecuteFilterAction) SetSamplePercent(v *v3.RuntimeFractionalPercent)

func (*ExecuteFilterAction) SetTypedConfig

func (x *ExecuteFilterAction) SetTypedConfig(v *v3.TypedExtensionConfig)

func (*ExecuteFilterAction) String

func (x *ExecuteFilterAction) String() string

type ExecuteFilterAction_builder

type ExecuteFilterAction_builder struct {

	// Filter specific configuration which depends on the filter being
	// instantiated. See the supported filters for further documentation.
	// Only one of “typed_config“, “dynamic_config“, “filter_chain“, or “filter_chain_name“
	// can be set.
	// [#extension-category: envoy.filters.http]
	TypedConfig *v3.TypedExtensionConfig
	// Dynamic configuration of filter obtained via extension configuration discovery service.
	// Only one of “typed_config“, “dynamic_config“, “filter_chain“, or “filter_chain_name“
	// can be set.
	DynamicConfig *DynamicConfig
	// An inlined list of filter configurations. The specified filters will be executed in order.
	// Only one of “typed_config“, “dynamic_config“, “filter_chain“, or “filter_chain_name“
	// can be set.
	FilterChain *FilterChainConfiguration
	// The name of a filter chain defined in
	// :ref:`Composite.named_filter_chains
	// <envoy_v3_api_field_extensions.filters.http.composite.v3.Composite.named_filter_chains>`.
	// At runtime, if the named filter chain is not found in the Composite filter's configuration,
	// no filter will be applied for this match (the action is silently skipped).
	// Only one of “typed_config“, “dynamic_config“, “filter_chain“, or “filter_chain_name“
	// can be set.
	FilterChainName string
	// Probability of the action execution. If not specified, this is 100%.
	// This allows sampling behavior for the configured actions.
	// For example, if
	// :ref:`default_value <envoy_v3_api_field_config.core.v3.RuntimeFractionalPercent.default_value>`
	// under the “sample_percent“ is configured with 30%, a dice roll with that
	// probability is done. The underline action will only be executed if the
	// dice roll returns positive. Otherwise, the action is skipped.
	SamplePercent *v3.RuntimeFractionalPercent
	// contains filtered or unexported fields
}

func (ExecuteFilterAction_builder) Build

type FilterChainConfiguration

type FilterChainConfiguration struct {
	TypedConfig []*v3.TypedExtensionConfig `protobuf:"bytes,1,rep,name=typed_config,json=typedConfig,proto3" json:"typed_config,omitempty"`
	// contains filtered or unexported fields
}

A list of filter configurations to be called in order. Note that this can be used as the type inside of an ECDS :ref:`TypedExtensionConfig <envoy_v3_api_msg_config.core.v3.TypedExtensionConfig>` extension, which allows a chain of filters to be configured dynamically. In that case, the types of all filters in the chain must be present in the :ref:`ExtensionConfigSource.type_urls <envoy_v3_api_field_config.core.v3.ExtensionConfigSource.type_urls>` field.

func (*FilterChainConfiguration) GetTypedConfig

func (x *FilterChainConfiguration) GetTypedConfig() []*v3.TypedExtensionConfig

func (*FilterChainConfiguration) ProtoMessage

func (*FilterChainConfiguration) ProtoMessage()

func (*FilterChainConfiguration) ProtoReflect

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

func (*FilterChainConfiguration) Reset

func (x *FilterChainConfiguration) Reset()

func (*FilterChainConfiguration) SetTypedConfig

func (x *FilterChainConfiguration) SetTypedConfig(v []*v3.TypedExtensionConfig)

func (*FilterChainConfiguration) String

func (x *FilterChainConfiguration) String() string

type FilterChainConfiguration_builder

type FilterChainConfiguration_builder struct {
	TypedConfig []*v3.TypedExtensionConfig
	// contains filtered or unexported fields
}

func (FilterChainConfiguration_builder) Build

Source Files

  • composite.pb.go

Jump to

Keyboard shortcuts

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