filters: Add dependencies.proto (#14750)
Introduces the FilterDependency proto. This isn't quite an extension, but it's a common proto to be used by all filter extensions. Risk Level: Low (proto addition only) #14470 Signed-off-by: Auni Ahsan <auni@google.com> Mirrored from https://github.com/envoyproxy/envoy @ 2da224f88afe5ec84ba802bd932f73ed13308a92pull/624/head
parent
1678b2b8e9
commit
5f07341dc5
4 changed files with 56 additions and 0 deletions
@ -0,0 +1,9 @@ |
|||||||
|
# DO NOT EDIT. This file is generated by tools/proto_format/proto_sync.py. |
||||||
|
|
||||||
|
load("@envoy_api//bazel:api_build_system.bzl", "api_proto_package") |
||||||
|
|
||||||
|
licenses(["notice"]) # Apache 2 |
||||||
|
|
||||||
|
api_proto_package( |
||||||
|
deps = ["@com_github_cncf_udpa//udpa/annotations:pkg"], |
||||||
|
) |
@ -0,0 +1,45 @@ |
|||||||
|
syntax = "proto3"; |
||||||
|
|
||||||
|
package envoy.extensions.filters.common.dependency.v3; |
||||||
|
|
||||||
|
import "udpa/annotations/migrate.proto"; |
||||||
|
import "udpa/annotations/status.proto"; |
||||||
|
import "validate/validate.proto"; |
||||||
|
|
||||||
|
option java_package = "io.envoyproxy.envoy.extensions.filters.common.dependency.v3"; |
||||||
|
option java_outer_classname = "DependencyProto"; |
||||||
|
option java_multiple_files = true; |
||||||
|
option (udpa.annotations.file_status).package_version_status = ACTIVE; |
||||||
|
|
||||||
|
// [#protodoc-title: Filter dependency specification] |
||||||
|
|
||||||
|
// Dependency specification and string identifier. |
||||||
|
message Dependency { |
||||||
|
enum DependencyType { |
||||||
|
HEADER = 0; |
||||||
|
FILTER_STATE_KEY = 1; |
||||||
|
DYNAMIC_METADATA = 2; |
||||||
|
} |
||||||
|
|
||||||
|
// The kind of dependency. |
||||||
|
DependencyType type = 1; |
||||||
|
|
||||||
|
// The string identifier for the dependency. |
||||||
|
string name = 2 [(validate.rules).string = {min_len: 1}]; |
||||||
|
} |
||||||
|
|
||||||
|
// Dependency specification for a filter. For a filter chain to be valid, any |
||||||
|
// dependency that is required must be provided by an earlier filter. |
||||||
|
message FilterDependencies { |
||||||
|
// A list of dependencies required on the decode path. |
||||||
|
repeated Dependency decode_required = 1; |
||||||
|
|
||||||
|
// A list of dependencies provided on the encode path. |
||||||
|
repeated Dependency decode_provided = 2; |
||||||
|
|
||||||
|
// A list of dependencies required on the decode path. |
||||||
|
repeated Dependency encode_required = 3; |
||||||
|
|
||||||
|
// A list of dependencies provided on the encode path. |
||||||
|
repeated Dependency encode_provided = 4; |
||||||
|
} |
Loading…
Reference in new issue