Filter dependency specification

extensions.filters.common.dependency.v3.Dependency

[extensions.filters.common.dependency.v3.Dependency proto]

Dependency specification and string identifier.

  1. {
  2. "type": "...",
  3. "name": "..."
  4. }

type

(extensions.filters.common.dependency.v3.Dependency.DependencyType) The kind of dependency.

name

(string, REQUIRED) The string identifier for the dependency.

Enum extensions.filters.common.dependency.v3.Dependency.DependencyType

[extensions.filters.common.dependency.v3.Dependency.DependencyType proto]

HEADER

(DEFAULT)

FILTER_STATE_KEY

DYNAMIC_METADATA

extensions.filters.common.dependency.v3.FilterDependencies

[extensions.filters.common.dependency.v3.FilterDependencies proto]

Dependency specification for a filter. For a filter chain to be valid, any dependency that is required must be provided by an earlier filter.

  1. {
  2. "decode_required": [],
  3. "decode_provided": [],
  4. "encode_required": [],
  5. "encode_provided": []
  6. }

decode_required

(repeated extensions.filters.common.dependency.v3.Dependency) A list of dependencies required on the decode path.

decode_provided

(repeated extensions.filters.common.dependency.v3.Dependency) A list of dependencies provided on the encode path.

encode_required

(repeated extensions.filters.common.dependency.v3.Dependency) A list of dependencies required on the decode path.

encode_provided

(repeated extensions.filters.common.dependency.v3.Dependency) A list of dependencies provided on the encode path.

extensions.filters.common.dependency.v3.MatchingRequirements

[extensions.filters.common.dependency.v3.MatchingRequirements proto]

Matching requirements for a filter. For a match tree to be used with a filter, the match requirements must be satisfied.

This protobuf is provided by the filter implementation as a way to communicate the matching requirements to the filter factories, allowing for config rejection if the requirements are not satisfied.

  1. {
  2. "data_input_allow_list": "{...}"
  3. }

data_input_allow_list

(extensions.filters.common.dependency.v3.MatchingRequirements.DataInputAllowList)

extensions.filters.common.dependency.v3.MatchingRequirements.DataInputAllowList

[extensions.filters.common.dependency.v3.MatchingRequirements.DataInputAllowList proto]

  1. {
  2. "type_url": []
  3. }

type_url

(repeated string) An explicit list of data inputs that are allowed to be used with this filter.