extension_matcher.proto 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. syntax = "proto3";
  2. package envoy.extensions.common.matching.v3;
  3. import "envoy/config/common/matcher/v3/matcher.proto";
  4. import "envoy/config/core/v3/extension.proto";
  5. import "xds/annotations/v3/status.proto";
  6. import "xds/type/matcher/v3/matcher.proto";
  7. import "envoy/annotations/deprecation.proto";
  8. import "udpa/annotations/status.proto";
  9. import "validate/validate.proto";
  10. option java_package = "io.envoyproxy.envoy.extensions.common.matching.v3";
  11. option java_outer_classname = "ExtensionMatcherProto";
  12. option java_multiple_files = true;
  13. option go_package = "github.com/envoyproxy/go-control-plane/envoy/extensions/common/matching/v3;matchingv3";
  14. option (udpa.annotations.file_status).package_version_status = ACTIVE;
  15. // [#protodoc-title: Extension Matcher]
  16. // Wrapper around an existing extension that provides an associated matcher. This allows
  17. // decorating an existing extension with a matcher, which can be used to match against
  18. // relevant protocol data.
  19. message ExtensionWithMatcher {
  20. option (xds.annotations.v3.message_status).work_in_progress = true;
  21. // The associated matcher. This is deprecated in favor of xds_matcher.
  22. config.common.matcher.v3.Matcher matcher = 1
  23. [deprecated = true, (envoy.annotations.deprecated_at_minor_version) = "3.0"];
  24. // The associated matcher.
  25. xds.type.matcher.v3.Matcher xds_matcher = 3;
  26. // The underlying extension config.
  27. config.core.v3.TypedExtensionConfig extension_config = 2
  28. [(validate.rules).message = {required: true}];
  29. }