Add API for accessing per-call backend metric data in LB policies.

pull/19036/head
Mark D. Roth 5 years ago
parent 76ac4595e3
commit 21c5424477
  1. 3
      .gitmodules
  2. 30
      BUILD
  3. 8
      BUILD.gn
  4. 105
      CMakeLists.txt
  5. 118
      Makefile
  6. 15
      build.yaml
  7. 29
      config.m4
  8. 32
      config.w32
  9. 84
      gRPC-Core.podspec
  10. 56
      grpc.gemspec
  11. 84
      grpc.gyp
  12. 56
      package.xml
  13. 78
      src/core/ext/filters/client_channel/backend_metric.cc
  14. 36
      src/core/ext/filters/client_channel/backend_metric.h
  15. 19
      src/core/ext/filters/client_channel/client_channel.cc
  16. 26
      src/core/ext/filters/client_channel/lb_policy.h
  17. 37
      src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c
  18. 83
      src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.h
  19. 67
      src/core/ext/upb-generated/envoy/api/v2/cds.upb.c
  20. 81
      src/core/ext/upb-generated/envoy/api/v2/cds.upb.h
  21. 34
      src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.c
  22. 69
      src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.h
  23. 32
      src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c
  24. 87
      src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.h
  25. 32
      src/core/ext/upb-generated/envoy/api/v2/core/base.upb.c
  26. 98
      src/core/ext/upb-generated/envoy/api/v2/core/base.upb.h
  27. 15
      src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c
  28. 32
      src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.h
  29. 35
      src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.c
  30. 80
      src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.h
  31. 12
      src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c
  32. 69
      src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.h
  33. 58
      src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c
  34. 144
      src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.h
  35. 11
      src/core/lib/gprpp/map.h
  36. 734
      src/core/lib/transport/static_metadata.cc
  37. 176
      src/core/lib/transport/static_metadata.h
  38. 7
      src/proto/grpc/lb/v2/BUILD
  39. 8
      src/proto/grpc/lb/v2/eds_for_test.proto
  40. 9
      src/proto/grpc/lb/v2/lrs_for_test.proto
  41. 58
      src/proto/grpc/lb/v2/orca_load_report_for_test.proto
  42. 28
      src/python/grpcio/grpc_core_dependencies.py
  43. 1
      test/core/end2end/fuzzers/hpack.dictionary
  44. 2
      test/core/util/test_lb_policies.cc
  45. 5
      test/core/util/test_lb_policies.h
  46. 1
      test/cpp/end2end/BUILD
  47. 97
      test/cpp/end2end/client_lb_end2end_test.cc
  48. 2
      third_party/envoy-api
  49. 1
      third_party/udpa
  50. 2
      tools/codegen/core/gen_static_metadata.py
  51. 6
      tools/codegen/core/gen_upb_api.sh
  52. 8
      tools/doxygen/Doxyfile.core.internal
  53. 3
      tools/run_tests/sanity/check_submodules.sh

3
.gitmodules vendored

@ -54,3 +54,6 @@
[submodule "third_party/upb"] [submodule "third_party/upb"]
path = third_party/upb path = third_party/upb
url = https://github.com/protocolbuffers/upb.git url = https://github.com/protocolbuffers/upb.git
[submodule "third_party/udpa"]
path = third_party/udpa
url = https://github.com/cncf/udpa.git

30
BUILD

@ -1009,6 +1009,7 @@ grpc_cc_library(
name = "grpc_client_channel", name = "grpc_client_channel",
srcs = [ srcs = [
"src/core/ext/filters/client_channel/backup_poller.cc", "src/core/ext/filters/client_channel/backup_poller.cc",
"src/core/ext/filters/client_channel/backend_metric.cc",
"src/core/ext/filters/client_channel/channel_connectivity.cc", "src/core/ext/filters/client_channel/channel_connectivity.cc",
"src/core/ext/filters/client_channel/client_channel.cc", "src/core/ext/filters/client_channel/client_channel.cc",
"src/core/ext/filters/client_channel/client_channel_channelz.cc", "src/core/ext/filters/client_channel/client_channel_channelz.cc",
@ -1037,6 +1038,7 @@ grpc_cc_library(
], ],
hdrs = [ hdrs = [
"src/core/ext/filters/client_channel/backup_poller.h", "src/core/ext/filters/client_channel/backup_poller.h",
"src/core/ext/filters/client_channel/backend_metric.h",
"src/core/ext/filters/client_channel/client_channel.h", "src/core/ext/filters/client_channel/client_channel.h",
"src/core/ext/filters/client_channel/client_channel_channelz.h", "src/core/ext/filters/client_channel/client_channel_channelz.h",
"src/core/ext/filters/client_channel/client_channel_factory.h", "src/core/ext/filters/client_channel/client_channel_factory.h",
@ -1066,6 +1068,7 @@ grpc_cc_library(
], ],
language = "c++", language = "c++",
deps = [ deps = [
"envoy_orca_upb",
"gpr_base", "gpr_base",
"grpc_base", "grpc_base",
"grpc_client_authority_filter", "grpc_client_authority_filter",
@ -2278,6 +2281,7 @@ grpc_cc_library(
"src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c", "src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c",
"src/core/ext/upb-generated/envoy/api/v2/cds.upb.c", "src/core/ext/upb-generated/envoy/api/v2/cds.upb.c",
"src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c", "src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c",
"src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.c",
"src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c", "src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c",
"src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c", "src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c",
"src/core/ext/upb-generated/envoy/api/v2/eds.upb.c", "src/core/ext/upb-generated/envoy/api/v2/eds.upb.c",
@ -2290,6 +2294,7 @@ grpc_cc_library(
"src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.h", "src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.h",
"src/core/ext/upb-generated/envoy/api/v2/cds.upb.h", "src/core/ext/upb-generated/envoy/api/v2/cds.upb.h",
"src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.h", "src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.h",
"src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.h",
"src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.h", "src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.h",
"src/core/ext/upb-generated/envoy/api/v2/discovery.upb.h", "src/core/ext/upb-generated/envoy/api/v2/discovery.upb.h",
"src/core/ext/upb-generated/envoy/api/v2/eds.upb.h", "src/core/ext/upb-generated/envoy/api/v2/eds.upb.h",
@ -2318,6 +2323,7 @@ grpc_cc_library(
"src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c", "src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c",
"src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c", "src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c",
"src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c", "src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c",
"src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.c",
"src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c", "src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c",
], ],
hdrs = [ hdrs = [
@ -2326,6 +2332,7 @@ grpc_cc_library(
"src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.h", "src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.h",
"src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.h", "src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.h",
"src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.h", "src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.h",
"src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.h",
"src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.h", "src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.h",
], ],
external_deps = [ external_deps = [
@ -2378,6 +2385,29 @@ grpc_cc_library(
], ],
) )
# Once upb code-gen issue is resolved, replace envoy_orca_upb with this.
# grpc_upb_proto_library(
# name = "envoy_orca_upb",
# deps = ["@envoy_api//udpa/data/orca/v1:orca_load_report"]
# )
grpc_cc_library(
name = "envoy_orca_upb",
srcs = [
"src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c",
],
hdrs = [
"src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.h",
],
external_deps = [
"upb_lib",
],
language = "c++",
deps = [
":proto_gen_validate_upb",
],
)
# Once upb code-gen issue is resolved, replace grpc_health_upb with this. # Once upb code-gen issue is resolved, replace grpc_health_upb with this.
# grpc_upb_proto_library( # grpc_upb_proto_library(
# name = "grpc_health_upb", # name = "grpc_health_upb",

@ -208,6 +208,8 @@ config("grpc_config") {
"include/grpc/status.h", "include/grpc/status.h",
"include/grpc/support/workaround_list.h", "include/grpc/support/workaround_list.h",
"src/core/ext/filters/census/grpc_context.cc", "src/core/ext/filters/census/grpc_context.cc",
"src/core/ext/filters/client_channel/backend_metric.cc",
"src/core/ext/filters/client_channel/backend_metric.h",
"src/core/ext/filters/client_channel/backup_poller.cc", "src/core/ext/filters/client_channel/backup_poller.cc",
"src/core/ext/filters/client_channel/backup_poller.h", "src/core/ext/filters/client_channel/backup_poller.h",
"src/core/ext/filters/client_channel/channel_connectivity.cc", "src/core/ext/filters/client_channel/channel_connectivity.cc",
@ -388,6 +390,8 @@ config("grpc_config") {
"src/core/ext/upb-generated/envoy/api/v2/cds.upb.h", "src/core/ext/upb-generated/envoy/api/v2/cds.upb.h",
"src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c", "src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c",
"src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.h", "src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.h",
"src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.c",
"src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.h",
"src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c", "src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c",
"src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.h", "src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.h",
"src/core/ext/upb-generated/envoy/api/v2/core/address.upb.c", "src/core/ext/upb-generated/envoy/api/v2/core/address.upb.c",
@ -400,6 +404,8 @@ config("grpc_config") {
"src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.h", "src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.h",
"src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c", "src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c",
"src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.h", "src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.h",
"src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.c",
"src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.h",
"src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c", "src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c",
"src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.h", "src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.h",
"src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c", "src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c",
@ -450,6 +456,8 @@ config("grpc_config") {
"src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h", "src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h",
"src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c", "src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c",
"src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h", "src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h",
"src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c",
"src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.h",
"src/core/ext/upb-generated/validate/validate.upb.c", "src/core/ext/upb-generated/validate/validate.upb.c",
"src/core/ext/upb-generated/validate/validate.upb.h", "src/core/ext/upb-generated/validate/validate.upb.h",
"src/core/lib/avl/avl.cc", "src/core/lib/avl/avl.cc",

@ -1266,6 +1266,7 @@ add_library(grpc
src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc
src/core/ext/transport/chttp2/client/authority.cc src/core/ext/transport/chttp2/client/authority.cc
src/core/ext/transport/chttp2/client/chttp2_connector.cc src/core/ext/transport/chttp2/client/chttp2_connector.cc
src/core/ext/filters/client_channel/backend_metric.cc
src/core/ext/filters/client_channel/backup_poller.cc src/core/ext/filters/client_channel/backup_poller.cc
src/core/ext/filters/client_channel/channel_connectivity.cc src/core/ext/filters/client_channel/channel_connectivity.cc
src/core/ext/filters/client_channel/client_channel.cc src/core/ext/filters/client_channel/client_channel.cc
@ -1294,6 +1295,19 @@ add_library(grpc
src/core/ext/filters/client_channel/subchannel_pool_interface.cc src/core/ext/filters/client_channel/subchannel_pool_interface.cc
src/core/ext/filters/deadline/deadline_filter.cc src/core/ext/filters/deadline/deadline_filter.cc
src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c
src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c
src/core/ext/upb-generated/gogoproto/gogo.upb.c
src/core/ext/upb-generated/validate/validate.upb.c
src/core/ext/upb-generated/google/api/annotations.upb.c
src/core/ext/upb-generated/google/api/http.upb.c
src/core/ext/upb-generated/google/protobuf/any.upb.c
src/core/ext/upb-generated/google/protobuf/descriptor.upb.c
src/core/ext/upb-generated/google/protobuf/duration.upb.c
src/core/ext/upb-generated/google/protobuf/empty.upb.c
src/core/ext/upb-generated/google/protobuf/struct.upb.c
src/core/ext/upb-generated/google/protobuf/timestamp.upb.c
src/core/ext/upb-generated/google/protobuf/wrappers.upb.c
src/core/ext/upb-generated/google/rpc/status.upb.c
src/core/tsi/fake_transport_security.cc src/core/tsi/fake_transport_security.cc
src/core/tsi/local_transport_security.cc src/core/tsi/local_transport_security.cc
src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc
@ -1313,16 +1327,6 @@ add_library(grpc
src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc
src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc
src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c
src/core/ext/upb-generated/google/api/annotations.upb.c
src/core/ext/upb-generated/google/api/http.upb.c
src/core/ext/upb-generated/google/protobuf/any.upb.c
src/core/ext/upb-generated/google/protobuf/descriptor.upb.c
src/core/ext/upb-generated/google/protobuf/duration.upb.c
src/core/ext/upb-generated/google/protobuf/empty.upb.c
src/core/ext/upb-generated/google/protobuf/struct.upb.c
src/core/ext/upb-generated/google/protobuf/timestamp.upb.c
src/core/ext/upb-generated/google/protobuf/wrappers.upb.c
src/core/ext/upb-generated/google/rpc/status.upb.c
src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc
src/core/ext/filters/client_channel/lb_policy/xds/xds.cc src/core/ext/filters/client_channel/lb_policy/xds/xds.cc
src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_secure.cc src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_secure.cc
@ -1331,6 +1335,7 @@ add_library(grpc
src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c
src/core/ext/upb-generated/envoy/api/v2/cds.upb.c src/core/ext/upb-generated/envoy/api/v2/cds.upb.c
src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c
src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.c
src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c
src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c
src/core/ext/upb-generated/envoy/api/v2/eds.upb.c src/core/ext/upb-generated/envoy/api/v2/eds.upb.c
@ -1343,11 +1348,10 @@ add_library(grpc
src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c
src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c
src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c
src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.c
src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c
src/core/ext/upb-generated/envoy/type/percent.upb.c src/core/ext/upb-generated/envoy/type/percent.upb.c
src/core/ext/upb-generated/envoy/type/range.upb.c src/core/ext/upb-generated/envoy/type/range.upb.c
src/core/ext/upb-generated/gogoproto/gogo.upb.c
src/core/ext/upb-generated/validate/validate.upb.c
src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc
src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc
src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc
@ -1667,6 +1671,7 @@ add_library(grpc_cronet
src/core/ext/filters/http/http_filters_plugin.cc src/core/ext/filters/http/http_filters_plugin.cc
src/core/ext/filters/http/message_compress/message_compress_filter.cc src/core/ext/filters/http/message_compress/message_compress_filter.cc
src/core/ext/filters/http/server/http_server_filter.cc src/core/ext/filters/http/server/http_server_filter.cc
src/core/ext/filters/client_channel/backend_metric.cc
src/core/ext/filters/client_channel/backup_poller.cc src/core/ext/filters/client_channel/backup_poller.cc
src/core/ext/filters/client_channel/channel_connectivity.cc src/core/ext/filters/client_channel/channel_connectivity.cc
src/core/ext/filters/client_channel/client_channel.cc src/core/ext/filters/client_channel/client_channel.cc
@ -1701,6 +1706,19 @@ add_library(grpc_cronet
third_party/upb/upb/port.c third_party/upb/upb/port.c
third_party/upb/upb/table.c third_party/upb/upb/table.c
third_party/upb/upb/upb.c third_party/upb/upb/upb.c
src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c
src/core/ext/upb-generated/gogoproto/gogo.upb.c
src/core/ext/upb-generated/validate/validate.upb.c
src/core/ext/upb-generated/google/api/annotations.upb.c
src/core/ext/upb-generated/google/api/http.upb.c
src/core/ext/upb-generated/google/protobuf/any.upb.c
src/core/ext/upb-generated/google/protobuf/descriptor.upb.c
src/core/ext/upb-generated/google/protobuf/duration.upb.c
src/core/ext/upb-generated/google/protobuf/empty.upb.c
src/core/ext/upb-generated/google/protobuf/struct.upb.c
src/core/ext/upb-generated/google/protobuf/timestamp.upb.c
src/core/ext/upb-generated/google/protobuf/wrappers.upb.c
src/core/ext/upb-generated/google/rpc/status.upb.c
src/core/lib/http/httpcli_security_connector.cc src/core/lib/http/httpcli_security_connector.cc
src/core/lib/security/context/security_context.cc src/core/lib/security/context/security_context.cc
src/core/lib/security/credentials/alts/alts_credentials.cc src/core/lib/security/credentials/alts/alts_credentials.cc
@ -2059,6 +2077,7 @@ add_library(grpc_test_util
src/core/lib/transport/transport_op_string.cc src/core/lib/transport/transport_op_string.cc
src/core/lib/uri/uri_parser.cc src/core/lib/uri/uri_parser.cc
src/core/lib/debug/trace.cc src/core/lib/debug/trace.cc
src/core/ext/filters/client_channel/backend_metric.cc
src/core/ext/filters/client_channel/backup_poller.cc src/core/ext/filters/client_channel/backup_poller.cc
src/core/ext/filters/client_channel/channel_connectivity.cc src/core/ext/filters/client_channel/channel_connectivity.cc
src/core/ext/filters/client_channel/client_channel.cc src/core/ext/filters/client_channel/client_channel.cc
@ -2093,6 +2112,19 @@ add_library(grpc_test_util
third_party/upb/upb/port.c third_party/upb/upb/port.c
third_party/upb/upb/table.c third_party/upb/upb/table.c
third_party/upb/upb/upb.c third_party/upb/upb/upb.c
src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c
src/core/ext/upb-generated/gogoproto/gogo.upb.c
src/core/ext/upb-generated/validate/validate.upb.c
src/core/ext/upb-generated/google/api/annotations.upb.c
src/core/ext/upb-generated/google/api/http.upb.c
src/core/ext/upb-generated/google/protobuf/any.upb.c
src/core/ext/upb-generated/google/protobuf/descriptor.upb.c
src/core/ext/upb-generated/google/protobuf/duration.upb.c
src/core/ext/upb-generated/google/protobuf/empty.upb.c
src/core/ext/upb-generated/google/protobuf/struct.upb.c
src/core/ext/upb-generated/google/protobuf/timestamp.upb.c
src/core/ext/upb-generated/google/protobuf/wrappers.upb.c
src/core/ext/upb-generated/google/rpc/status.upb.c
src/core/ext/transport/chttp2/transport/bin_decoder.cc src/core/ext/transport/chttp2/transport/bin_decoder.cc
src/core/ext/transport/chttp2/transport/bin_encoder.cc src/core/ext/transport/chttp2/transport/bin_encoder.cc
src/core/ext/transport/chttp2/transport/chttp2_plugin.cc src/core/ext/transport/chttp2/transport/chttp2_plugin.cc
@ -2399,6 +2431,7 @@ add_library(grpc_test_util_unsecure
src/core/lib/transport/transport_op_string.cc src/core/lib/transport/transport_op_string.cc
src/core/lib/uri/uri_parser.cc src/core/lib/uri/uri_parser.cc
src/core/lib/debug/trace.cc src/core/lib/debug/trace.cc
src/core/ext/filters/client_channel/backend_metric.cc
src/core/ext/filters/client_channel/backup_poller.cc src/core/ext/filters/client_channel/backup_poller.cc
src/core/ext/filters/client_channel/channel_connectivity.cc src/core/ext/filters/client_channel/channel_connectivity.cc
src/core/ext/filters/client_channel/client_channel.cc src/core/ext/filters/client_channel/client_channel.cc
@ -2433,6 +2466,19 @@ add_library(grpc_test_util_unsecure
third_party/upb/upb/port.c third_party/upb/upb/port.c
third_party/upb/upb/table.c third_party/upb/upb/table.c
third_party/upb/upb/upb.c third_party/upb/upb/upb.c
src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c
src/core/ext/upb-generated/gogoproto/gogo.upb.c
src/core/ext/upb-generated/validate/validate.upb.c
src/core/ext/upb-generated/google/api/annotations.upb.c
src/core/ext/upb-generated/google/api/http.upb.c
src/core/ext/upb-generated/google/protobuf/any.upb.c
src/core/ext/upb-generated/google/protobuf/descriptor.upb.c
src/core/ext/upb-generated/google/protobuf/duration.upb.c
src/core/ext/upb-generated/google/protobuf/empty.upb.c
src/core/ext/upb-generated/google/protobuf/struct.upb.c
src/core/ext/upb-generated/google/protobuf/timestamp.upb.c
src/core/ext/upb-generated/google/protobuf/wrappers.upb.c
src/core/ext/upb-generated/google/rpc/status.upb.c
src/core/ext/transport/chttp2/transport/bin_decoder.cc src/core/ext/transport/chttp2/transport/bin_decoder.cc
src/core/ext/transport/chttp2/transport/bin_encoder.cc src/core/ext/transport/chttp2/transport/bin_encoder.cc
src/core/ext/transport/chttp2/transport/chttp2_plugin.cc src/core/ext/transport/chttp2/transport/chttp2_plugin.cc
@ -2750,6 +2796,7 @@ add_library(grpc_unsecure
src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc
src/core/ext/transport/chttp2/client/authority.cc src/core/ext/transport/chttp2/client/authority.cc
src/core/ext/transport/chttp2/client/chttp2_connector.cc src/core/ext/transport/chttp2/client/chttp2_connector.cc
src/core/ext/filters/client_channel/backend_metric.cc
src/core/ext/filters/client_channel/backup_poller.cc src/core/ext/filters/client_channel/backup_poller.cc
src/core/ext/filters/client_channel/channel_connectivity.cc src/core/ext/filters/client_channel/channel_connectivity.cc
src/core/ext/filters/client_channel/client_channel.cc src/core/ext/filters/client_channel/client_channel.cc
@ -2784,6 +2831,19 @@ add_library(grpc_unsecure
third_party/upb/upb/port.c third_party/upb/upb/port.c
third_party/upb/upb/table.c third_party/upb/upb/table.c
third_party/upb/upb/upb.c third_party/upb/upb/upb.c
src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c
src/core/ext/upb-generated/gogoproto/gogo.upb.c
src/core/ext/upb-generated/validate/validate.upb.c
src/core/ext/upb-generated/google/api/annotations.upb.c
src/core/ext/upb-generated/google/api/http.upb.c
src/core/ext/upb-generated/google/protobuf/any.upb.c
src/core/ext/upb-generated/google/protobuf/descriptor.upb.c
src/core/ext/upb-generated/google/protobuf/duration.upb.c
src/core/ext/upb-generated/google/protobuf/empty.upb.c
src/core/ext/upb-generated/google/protobuf/struct.upb.c
src/core/ext/upb-generated/google/protobuf/timestamp.upb.c
src/core/ext/upb-generated/google/protobuf/wrappers.upb.c
src/core/ext/upb-generated/google/rpc/status.upb.c
src/core/ext/transport/inproc/inproc_plugin.cc src/core/ext/transport/inproc/inproc_plugin.cc
src/core/ext/transport/inproc/inproc_transport.cc src/core/ext/transport/inproc/inproc_transport.cc
src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc
@ -2807,16 +2867,6 @@ add_library(grpc_unsecure
src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc
src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc
src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c
src/core/ext/upb-generated/google/api/annotations.upb.c
src/core/ext/upb-generated/google/api/http.upb.c
src/core/ext/upb-generated/google/protobuf/any.upb.c
src/core/ext/upb-generated/google/protobuf/descriptor.upb.c
src/core/ext/upb-generated/google/protobuf/duration.upb.c
src/core/ext/upb-generated/google/protobuf/empty.upb.c
src/core/ext/upb-generated/google/protobuf/struct.upb.c
src/core/ext/upb-generated/google/protobuf/timestamp.upb.c
src/core/ext/upb-generated/google/protobuf/wrappers.upb.c
src/core/ext/upb-generated/google/rpc/status.upb.c
src/core/ext/filters/client_channel/lb_policy/xds/xds.cc src/core/ext/filters/client_channel/lb_policy/xds/xds.cc
src/core/ext/filters/client_channel/lb_policy/xds/xds_channel.cc src/core/ext/filters/client_channel/lb_policy/xds/xds_channel.cc
src/core/ext/filters/client_channel/lb_policy/xds/xds_client_stats.cc src/core/ext/filters/client_channel/lb_policy/xds/xds_client_stats.cc
@ -2824,6 +2874,7 @@ add_library(grpc_unsecure
src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c
src/core/ext/upb-generated/envoy/api/v2/cds.upb.c src/core/ext/upb-generated/envoy/api/v2/cds.upb.c
src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c
src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.c
src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c
src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c
src/core/ext/upb-generated/envoy/api/v2/eds.upb.c src/core/ext/upb-generated/envoy/api/v2/eds.upb.c
@ -2836,11 +2887,10 @@ add_library(grpc_unsecure
src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c
src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c
src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c
src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.c
src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c
src/core/ext/upb-generated/envoy/type/percent.upb.c src/core/ext/upb-generated/envoy/type/percent.upb.c
src/core/ext/upb-generated/envoy/type/range.upb.c src/core/ext/upb-generated/envoy/type/range.upb.c
src/core/ext/upb-generated/gogoproto/gogo.upb.c
src/core/ext/upb-generated/validate/validate.upb.c
src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc
src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc
src/core/ext/filters/census/grpc_context.cc src/core/ext/filters/census/grpc_context.cc
@ -13128,11 +13178,18 @@ endif (gRPC_BUILD_TESTS)
if (gRPC_BUILD_TESTS) if (gRPC_BUILD_TESTS)
add_executable(client_lb_end2end_test add_executable(client_lb_end2end_test
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v2/orca_load_report_for_test.pb.cc
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v2/orca_load_report_for_test.grpc.pb.cc
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v2/orca_load_report_for_test.pb.h
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lb/v2/orca_load_report_for_test.grpc.pb.h
test/cpp/end2end/client_lb_end2end_test.cc test/cpp/end2end/client_lb_end2end_test.cc
third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googletest/src/gtest-all.cc
third_party/googletest/googlemock/src/gmock-all.cc third_party/googletest/googlemock/src/gmock-all.cc
) )
protobuf_generate_grpc_cpp(
src/proto/grpc/lb/v2/orca_load_report_for_test.proto
)
target_include_directories(client_lb_end2end_test target_include_directories(client_lb_end2end_test
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}

@ -2745,6 +2745,22 @@ $(GENDIR)/src/proto/grpc/lb/v2/lrs_for_test.grpc.pb.cc: src/proto/grpc/lb/v2/lrs
$(Q) $(PROTOC) -Ithird_party/protobuf/src -I. --grpc_out=$(GENDIR) --plugin=protoc-gen-grpc=$(PROTOC_PLUGINS_DIR)/grpc_cpp_plugin$(EXECUTABLE_SUFFIX) $< $(Q) $(PROTOC) -Ithird_party/protobuf/src -I. --grpc_out=$(GENDIR) --plugin=protoc-gen-grpc=$(PROTOC_PLUGINS_DIR)/grpc_cpp_plugin$(EXECUTABLE_SUFFIX) $<
endif endif
ifeq ($(NO_PROTOC),true)
$(GENDIR)/src/proto/grpc/lb/v2/orca_load_report_for_test.pb.cc: protoc_dep_error
$(GENDIR)/src/proto/grpc/lb/v2/orca_load_report_for_test.grpc.pb.cc: protoc_dep_error
else
$(GENDIR)/src/proto/grpc/lb/v2/orca_load_report_for_test.pb.cc: src/proto/grpc/lb/v2/orca_load_report_for_test.proto $(PROTOBUF_DEP) $(PROTOC_PLUGINS)
$(E) "[PROTOC] Generating protobuf CC file from $<"
$(Q) mkdir -p `dirname $@`
$(Q) $(PROTOC) -Ithird_party/protobuf/src -I. --cpp_out=$(GENDIR) $<
$(GENDIR)/src/proto/grpc/lb/v2/orca_load_report_for_test.grpc.pb.cc: src/proto/grpc/lb/v2/orca_load_report_for_test.proto $(GENDIR)/src/proto/grpc/lb/v2/orca_load_report_for_test.pb.cc $(PROTOBUF_DEP) $(PROTOC_PLUGINS)
$(E) "[GRPC] Generating gRPC's protobuf service CC file from $<"
$(Q) mkdir -p `dirname $@`
$(Q) $(PROTOC) -Ithird_party/protobuf/src -I. --grpc_out=$(GENDIR) --plugin=protoc-gen-grpc=$(PROTOC_PLUGINS_DIR)/grpc_cpp_plugin$(EXECUTABLE_SUFFIX) $<
endif
ifeq ($(NO_PROTOC),true) ifeq ($(NO_PROTOC),true)
$(GENDIR)/src/proto/grpc/reflection/v1alpha/reflection.pb.cc: protoc_dep_error $(GENDIR)/src/proto/grpc/reflection/v1alpha/reflection.pb.cc: protoc_dep_error
$(GENDIR)/src/proto/grpc/reflection/v1alpha/reflection.grpc.pb.cc: protoc_dep_error $(GENDIR)/src/proto/grpc/reflection/v1alpha/reflection.grpc.pb.cc: protoc_dep_error
@ -3803,6 +3819,7 @@ LIBGRPC_SRC = \
src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc \ src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc \
src/core/ext/transport/chttp2/client/authority.cc \ src/core/ext/transport/chttp2/client/authority.cc \
src/core/ext/transport/chttp2/client/chttp2_connector.cc \ src/core/ext/transport/chttp2/client/chttp2_connector.cc \
src/core/ext/filters/client_channel/backend_metric.cc \
src/core/ext/filters/client_channel/backup_poller.cc \ src/core/ext/filters/client_channel/backup_poller.cc \
src/core/ext/filters/client_channel/channel_connectivity.cc \ src/core/ext/filters/client_channel/channel_connectivity.cc \
src/core/ext/filters/client_channel/client_channel.cc \ src/core/ext/filters/client_channel/client_channel.cc \
@ -3831,6 +3848,19 @@ LIBGRPC_SRC = \
src/core/ext/filters/client_channel/subchannel_pool_interface.cc \ src/core/ext/filters/client_channel/subchannel_pool_interface.cc \
src/core/ext/filters/deadline/deadline_filter.cc \ src/core/ext/filters/deadline/deadline_filter.cc \
src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c \ src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c \
src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c \
src/core/ext/upb-generated/gogoproto/gogo.upb.c \
src/core/ext/upb-generated/validate/validate.upb.c \
src/core/ext/upb-generated/google/api/annotations.upb.c \
src/core/ext/upb-generated/google/api/http.upb.c \
src/core/ext/upb-generated/google/protobuf/any.upb.c \
src/core/ext/upb-generated/google/protobuf/descriptor.upb.c \
src/core/ext/upb-generated/google/protobuf/duration.upb.c \
src/core/ext/upb-generated/google/protobuf/empty.upb.c \
src/core/ext/upb-generated/google/protobuf/struct.upb.c \
src/core/ext/upb-generated/google/protobuf/timestamp.upb.c \
src/core/ext/upb-generated/google/protobuf/wrappers.upb.c \
src/core/ext/upb-generated/google/rpc/status.upb.c \
src/core/tsi/fake_transport_security.cc \ src/core/tsi/fake_transport_security.cc \
src/core/tsi/local_transport_security.cc \ src/core/tsi/local_transport_security.cc \
src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc \ src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc \
@ -3850,16 +3880,6 @@ LIBGRPC_SRC = \
src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc \ src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc \
src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc \ src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc \
src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c \ src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c \
src/core/ext/upb-generated/google/api/annotations.upb.c \
src/core/ext/upb-generated/google/api/http.upb.c \
src/core/ext/upb-generated/google/protobuf/any.upb.c \
src/core/ext/upb-generated/google/protobuf/descriptor.upb.c \
src/core/ext/upb-generated/google/protobuf/duration.upb.c \
src/core/ext/upb-generated/google/protobuf/empty.upb.c \
src/core/ext/upb-generated/google/protobuf/struct.upb.c \
src/core/ext/upb-generated/google/protobuf/timestamp.upb.c \
src/core/ext/upb-generated/google/protobuf/wrappers.upb.c \
src/core/ext/upb-generated/google/rpc/status.upb.c \
src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc \ src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc \
src/core/ext/filters/client_channel/lb_policy/xds/xds.cc \ src/core/ext/filters/client_channel/lb_policy/xds/xds.cc \
src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_secure.cc \ src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_secure.cc \
@ -3868,6 +3888,7 @@ LIBGRPC_SRC = \
src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c \ src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c \
src/core/ext/upb-generated/envoy/api/v2/cds.upb.c \ src/core/ext/upb-generated/envoy/api/v2/cds.upb.c \
src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c \ src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c \
src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.c \
src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c \ src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c \
src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c \ src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c \
src/core/ext/upb-generated/envoy/api/v2/eds.upb.c \ src/core/ext/upb-generated/envoy/api/v2/eds.upb.c \
@ -3880,11 +3901,10 @@ LIBGRPC_SRC = \
src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c \ src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c \
src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c \ src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c \
src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c \ src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c \
src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.c \
src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c \ src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c \
src/core/ext/upb-generated/envoy/type/percent.upb.c \ src/core/ext/upb-generated/envoy/type/percent.upb.c \
src/core/ext/upb-generated/envoy/type/range.upb.c \ src/core/ext/upb-generated/envoy/type/range.upb.c \
src/core/ext/upb-generated/gogoproto/gogo.upb.c \
src/core/ext/upb-generated/validate/validate.upb.c \
src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc \ src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc \
src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc \ src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc \
src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc \
@ -4193,6 +4213,7 @@ LIBGRPC_CRONET_SRC = \
src/core/ext/filters/http/http_filters_plugin.cc \ src/core/ext/filters/http/http_filters_plugin.cc \
src/core/ext/filters/http/message_compress/message_compress_filter.cc \ src/core/ext/filters/http/message_compress/message_compress_filter.cc \
src/core/ext/filters/http/server/http_server_filter.cc \ src/core/ext/filters/http/server/http_server_filter.cc \
src/core/ext/filters/client_channel/backend_metric.cc \
src/core/ext/filters/client_channel/backup_poller.cc \ src/core/ext/filters/client_channel/backup_poller.cc \
src/core/ext/filters/client_channel/channel_connectivity.cc \ src/core/ext/filters/client_channel/channel_connectivity.cc \
src/core/ext/filters/client_channel/client_channel.cc \ src/core/ext/filters/client_channel/client_channel.cc \
@ -4227,6 +4248,19 @@ LIBGRPC_CRONET_SRC = \
third_party/upb/upb/port.c \ third_party/upb/upb/port.c \
third_party/upb/upb/table.c \ third_party/upb/upb/table.c \
third_party/upb/upb/upb.c \ third_party/upb/upb/upb.c \
src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c \
src/core/ext/upb-generated/gogoproto/gogo.upb.c \
src/core/ext/upb-generated/validate/validate.upb.c \
src/core/ext/upb-generated/google/api/annotations.upb.c \
src/core/ext/upb-generated/google/api/http.upb.c \
src/core/ext/upb-generated/google/protobuf/any.upb.c \
src/core/ext/upb-generated/google/protobuf/descriptor.upb.c \
src/core/ext/upb-generated/google/protobuf/duration.upb.c \
src/core/ext/upb-generated/google/protobuf/empty.upb.c \
src/core/ext/upb-generated/google/protobuf/struct.upb.c \
src/core/ext/upb-generated/google/protobuf/timestamp.upb.c \
src/core/ext/upb-generated/google/protobuf/wrappers.upb.c \
src/core/ext/upb-generated/google/rpc/status.upb.c \
src/core/lib/http/httpcli_security_connector.cc \ src/core/lib/http/httpcli_security_connector.cc \
src/core/lib/security/context/security_context.cc \ src/core/lib/security/context/security_context.cc \
src/core/lib/security/credentials/alts/alts_credentials.cc \ src/core/lib/security/credentials/alts/alts_credentials.cc \
@ -4573,6 +4607,7 @@ LIBGRPC_TEST_UTIL_SRC = \
src/core/lib/transport/transport_op_string.cc \ src/core/lib/transport/transport_op_string.cc \
src/core/lib/uri/uri_parser.cc \ src/core/lib/uri/uri_parser.cc \
src/core/lib/debug/trace.cc \ src/core/lib/debug/trace.cc \
src/core/ext/filters/client_channel/backend_metric.cc \
src/core/ext/filters/client_channel/backup_poller.cc \ src/core/ext/filters/client_channel/backup_poller.cc \
src/core/ext/filters/client_channel/channel_connectivity.cc \ src/core/ext/filters/client_channel/channel_connectivity.cc \
src/core/ext/filters/client_channel/client_channel.cc \ src/core/ext/filters/client_channel/client_channel.cc \
@ -4607,6 +4642,19 @@ LIBGRPC_TEST_UTIL_SRC = \
third_party/upb/upb/port.c \ third_party/upb/upb/port.c \
third_party/upb/upb/table.c \ third_party/upb/upb/table.c \
third_party/upb/upb/upb.c \ third_party/upb/upb/upb.c \
src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c \
src/core/ext/upb-generated/gogoproto/gogo.upb.c \
src/core/ext/upb-generated/validate/validate.upb.c \
src/core/ext/upb-generated/google/api/annotations.upb.c \
src/core/ext/upb-generated/google/api/http.upb.c \
src/core/ext/upb-generated/google/protobuf/any.upb.c \
src/core/ext/upb-generated/google/protobuf/descriptor.upb.c \
src/core/ext/upb-generated/google/protobuf/duration.upb.c \
src/core/ext/upb-generated/google/protobuf/empty.upb.c \
src/core/ext/upb-generated/google/protobuf/struct.upb.c \
src/core/ext/upb-generated/google/protobuf/timestamp.upb.c \
src/core/ext/upb-generated/google/protobuf/wrappers.upb.c \
src/core/ext/upb-generated/google/rpc/status.upb.c \
src/core/ext/transport/chttp2/transport/bin_decoder.cc \ src/core/ext/transport/chttp2/transport/bin_decoder.cc \
src/core/ext/transport/chttp2/transport/bin_encoder.cc \ src/core/ext/transport/chttp2/transport/bin_encoder.cc \
src/core/ext/transport/chttp2/transport/chttp2_plugin.cc \ src/core/ext/transport/chttp2/transport/chttp2_plugin.cc \
@ -4895,6 +4943,7 @@ LIBGRPC_TEST_UTIL_UNSECURE_SRC = \
src/core/lib/transport/transport_op_string.cc \ src/core/lib/transport/transport_op_string.cc \
src/core/lib/uri/uri_parser.cc \ src/core/lib/uri/uri_parser.cc \
src/core/lib/debug/trace.cc \ src/core/lib/debug/trace.cc \
src/core/ext/filters/client_channel/backend_metric.cc \
src/core/ext/filters/client_channel/backup_poller.cc \ src/core/ext/filters/client_channel/backup_poller.cc \
src/core/ext/filters/client_channel/channel_connectivity.cc \ src/core/ext/filters/client_channel/channel_connectivity.cc \
src/core/ext/filters/client_channel/client_channel.cc \ src/core/ext/filters/client_channel/client_channel.cc \
@ -4929,6 +4978,19 @@ LIBGRPC_TEST_UTIL_UNSECURE_SRC = \
third_party/upb/upb/port.c \ third_party/upb/upb/port.c \
third_party/upb/upb/table.c \ third_party/upb/upb/table.c \
third_party/upb/upb/upb.c \ third_party/upb/upb/upb.c \
src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c \
src/core/ext/upb-generated/gogoproto/gogo.upb.c \
src/core/ext/upb-generated/validate/validate.upb.c \
src/core/ext/upb-generated/google/api/annotations.upb.c \
src/core/ext/upb-generated/google/api/http.upb.c \
src/core/ext/upb-generated/google/protobuf/any.upb.c \
src/core/ext/upb-generated/google/protobuf/descriptor.upb.c \
src/core/ext/upb-generated/google/protobuf/duration.upb.c \
src/core/ext/upb-generated/google/protobuf/empty.upb.c \
src/core/ext/upb-generated/google/protobuf/struct.upb.c \
src/core/ext/upb-generated/google/protobuf/timestamp.upb.c \
src/core/ext/upb-generated/google/protobuf/wrappers.upb.c \
src/core/ext/upb-generated/google/rpc/status.upb.c \
src/core/ext/transport/chttp2/transport/bin_decoder.cc \ src/core/ext/transport/chttp2/transport/bin_decoder.cc \
src/core/ext/transport/chttp2/transport/bin_encoder.cc \ src/core/ext/transport/chttp2/transport/bin_encoder.cc \
src/core/ext/transport/chttp2/transport/chttp2_plugin.cc \ src/core/ext/transport/chttp2/transport/chttp2_plugin.cc \
@ -5215,6 +5277,7 @@ LIBGRPC_UNSECURE_SRC = \
src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc \ src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc \
src/core/ext/transport/chttp2/client/authority.cc \ src/core/ext/transport/chttp2/client/authority.cc \
src/core/ext/transport/chttp2/client/chttp2_connector.cc \ src/core/ext/transport/chttp2/client/chttp2_connector.cc \
src/core/ext/filters/client_channel/backend_metric.cc \
src/core/ext/filters/client_channel/backup_poller.cc \ src/core/ext/filters/client_channel/backup_poller.cc \
src/core/ext/filters/client_channel/channel_connectivity.cc \ src/core/ext/filters/client_channel/channel_connectivity.cc \
src/core/ext/filters/client_channel/client_channel.cc \ src/core/ext/filters/client_channel/client_channel.cc \
@ -5249,6 +5312,19 @@ LIBGRPC_UNSECURE_SRC = \
third_party/upb/upb/port.c \ third_party/upb/upb/port.c \
third_party/upb/upb/table.c \ third_party/upb/upb/table.c \
third_party/upb/upb/upb.c \ third_party/upb/upb/upb.c \
src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c \
src/core/ext/upb-generated/gogoproto/gogo.upb.c \
src/core/ext/upb-generated/validate/validate.upb.c \
src/core/ext/upb-generated/google/api/annotations.upb.c \
src/core/ext/upb-generated/google/api/http.upb.c \
src/core/ext/upb-generated/google/protobuf/any.upb.c \
src/core/ext/upb-generated/google/protobuf/descriptor.upb.c \
src/core/ext/upb-generated/google/protobuf/duration.upb.c \
src/core/ext/upb-generated/google/protobuf/empty.upb.c \
src/core/ext/upb-generated/google/protobuf/struct.upb.c \
src/core/ext/upb-generated/google/protobuf/timestamp.upb.c \
src/core/ext/upb-generated/google/protobuf/wrappers.upb.c \
src/core/ext/upb-generated/google/rpc/status.upb.c \
src/core/ext/transport/inproc/inproc_plugin.cc \ src/core/ext/transport/inproc/inproc_plugin.cc \
src/core/ext/transport/inproc/inproc_transport.cc \ src/core/ext/transport/inproc/inproc_transport.cc \
src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc \
@ -5272,16 +5348,6 @@ LIBGRPC_UNSECURE_SRC = \
src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc \ src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc \
src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc \ src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc \
src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c \ src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c \
src/core/ext/upb-generated/google/api/annotations.upb.c \
src/core/ext/upb-generated/google/api/http.upb.c \
src/core/ext/upb-generated/google/protobuf/any.upb.c \
src/core/ext/upb-generated/google/protobuf/descriptor.upb.c \
src/core/ext/upb-generated/google/protobuf/duration.upb.c \
src/core/ext/upb-generated/google/protobuf/empty.upb.c \
src/core/ext/upb-generated/google/protobuf/struct.upb.c \
src/core/ext/upb-generated/google/protobuf/timestamp.upb.c \
src/core/ext/upb-generated/google/protobuf/wrappers.upb.c \
src/core/ext/upb-generated/google/rpc/status.upb.c \
src/core/ext/filters/client_channel/lb_policy/xds/xds.cc \ src/core/ext/filters/client_channel/lb_policy/xds/xds.cc \
src/core/ext/filters/client_channel/lb_policy/xds/xds_channel.cc \ src/core/ext/filters/client_channel/lb_policy/xds/xds_channel.cc \
src/core/ext/filters/client_channel/lb_policy/xds/xds_client_stats.cc \ src/core/ext/filters/client_channel/lb_policy/xds/xds_client_stats.cc \
@ -5289,6 +5355,7 @@ LIBGRPC_UNSECURE_SRC = \
src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c \ src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c \
src/core/ext/upb-generated/envoy/api/v2/cds.upb.c \ src/core/ext/upb-generated/envoy/api/v2/cds.upb.c \
src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c \ src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c \
src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.c \
src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c \ src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c \
src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c \ src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c \
src/core/ext/upb-generated/envoy/api/v2/eds.upb.c \ src/core/ext/upb-generated/envoy/api/v2/eds.upb.c \
@ -5301,11 +5368,10 @@ LIBGRPC_UNSECURE_SRC = \
src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c \ src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c \
src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c \ src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c \
src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c \ src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c \
src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.c \
src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c \ src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c \
src/core/ext/upb-generated/envoy/type/percent.upb.c \ src/core/ext/upb-generated/envoy/type/percent.upb.c \
src/core/ext/upb-generated/envoy/type/range.upb.c \ src/core/ext/upb-generated/envoy/type/range.upb.c \
src/core/ext/upb-generated/gogoproto/gogo.upb.c \
src/core/ext/upb-generated/validate/validate.upb.c \
src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc \ src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc \
src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc \ src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc \
src/core/ext/filters/census/grpc_context.cc \ src/core/ext/filters/census/grpc_context.cc \
@ -15696,6 +15762,7 @@ endif
CLIENT_LB_END2END_TEST_SRC = \ CLIENT_LB_END2END_TEST_SRC = \
$(GENDIR)/src/proto/grpc/lb/v2/orca_load_report_for_test.pb.cc $(GENDIR)/src/proto/grpc/lb/v2/orca_load_report_for_test.grpc.pb.cc \
test/cpp/end2end/client_lb_end2end_test.cc \ test/cpp/end2end/client_lb_end2end_test.cc \
CLIENT_LB_END2END_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CLIENT_LB_END2END_TEST_SRC)))) CLIENT_LB_END2END_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CLIENT_LB_END2END_TEST_SRC))))
@ -15727,6 +15794,8 @@ endif
endif endif
$(OBJDIR)/$(CONFIG)/src/proto/grpc/lb/v2/orca_load_report_for_test.o: $(LIBDIR)/$(CONFIG)/libgrpc++_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc++.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr.a
$(OBJDIR)/$(CONFIG)/test/cpp/end2end/client_lb_end2end_test.o: $(LIBDIR)/$(CONFIG)/libgrpc++_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc++.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr.a $(OBJDIR)/$(CONFIG)/test/cpp/end2end/client_lb_end2end_test.o: $(LIBDIR)/$(CONFIG)/libgrpc++_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc++.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr.a
deps_client_lb_end2end_test: $(CLIENT_LB_END2END_TEST_OBJS:.o=.dep) deps_client_lb_end2end_test: $(CLIENT_LB_END2END_TEST_OBJS:.o=.dep)
@ -15736,6 +15805,7 @@ ifneq ($(NO_DEPS),true)
-include $(CLIENT_LB_END2END_TEST_OBJS:.o=.dep) -include $(CLIENT_LB_END2END_TEST_OBJS:.o=.dep)
endif endif
endif endif
$(OBJDIR)/$(CONFIG)/test/cpp/end2end/client_lb_end2end_test.o: $(GENDIR)/src/proto/grpc/lb/v2/orca_load_report_for_test.pb.cc $(GENDIR)/src/proto/grpc/lb/v2/orca_load_report_for_test.grpc.pb.cc
CODEGEN_TEST_FULL_SRC = \ CODEGEN_TEST_FULL_SRC = \

@ -113,6 +113,7 @@ filegroups:
- src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.h - src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.h
- src/core/ext/upb-generated/envoy/api/v2/cds.upb.h - src/core/ext/upb-generated/envoy/api/v2/cds.upb.h
- src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.h - src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.h
- src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.h
- src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.h - src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.h
- src/core/ext/upb-generated/envoy/api/v2/discovery.upb.h - src/core/ext/upb-generated/envoy/api/v2/discovery.upb.h
- src/core/ext/upb-generated/envoy/api/v2/eds.upb.h - src/core/ext/upb-generated/envoy/api/v2/eds.upb.h
@ -124,6 +125,7 @@ filegroups:
- src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c - src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c
- src/core/ext/upb-generated/envoy/api/v2/cds.upb.c - src/core/ext/upb-generated/envoy/api/v2/cds.upb.c
- src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c - src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c
- src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.c
- src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c - src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c
- src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c - src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c
- src/core/ext/upb-generated/envoy/api/v2/eds.upb.c - src/core/ext/upb-generated/envoy/api/v2/eds.upb.c
@ -143,6 +145,7 @@ filegroups:
- src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.h - src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.h
- src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.h - src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.h
- src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.h - src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.h
- src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.h
- src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.h - src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.h
src: src:
- src/core/ext/upb-generated/envoy/api/v2/core/address.upb.c - src/core/ext/upb-generated/envoy/api/v2/core/address.upb.c
@ -150,11 +153,19 @@ filegroups:
- src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c - src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c
- src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c - src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c
- src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c - src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c
- src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.c
- src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c - src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c
uses: uses:
- envoy_type_upb - envoy_type_upb
- google_api_upb - google_api_upb
- proto_gen_validate_upb - proto_gen_validate_upb
- name: envoy_orca_upb
headers:
- src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.h
src:
- src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c
uses:
- proto_gen_validate_upb
- name: envoy_type_upb - name: envoy_type_upb
headers: headers:
- src/core/ext/upb-generated/envoy/type/percent.upb.h - src/core/ext/upb-generated/envoy/type/percent.upb.h
@ -945,6 +956,7 @@ filegroups:
- grpc_base - grpc_base
- name: grpc_client_channel - name: grpc_client_channel
headers: headers:
- src/core/ext/filters/client_channel/backend_metric.h
- src/core/ext/filters/client_channel/backup_poller.h - src/core/ext/filters/client_channel/backup_poller.h
- src/core/ext/filters/client_channel/client_channel.h - src/core/ext/filters/client_channel/client_channel.h
- src/core/ext/filters/client_channel/client_channel_channelz.h - src/core/ext/filters/client_channel/client_channel_channelz.h
@ -973,6 +985,7 @@ filegroups:
- src/core/ext/filters/client_channel/subchannel_interface.h - src/core/ext/filters/client_channel/subchannel_interface.h
- src/core/ext/filters/client_channel/subchannel_pool_interface.h - src/core/ext/filters/client_channel/subchannel_pool_interface.h
src: src:
- src/core/ext/filters/client_channel/backend_metric.cc
- src/core/ext/filters/client_channel/backup_poller.cc - src/core/ext/filters/client_channel/backup_poller.cc
- src/core/ext/filters/client_channel/channel_connectivity.cc - src/core/ext/filters/client_channel/channel_connectivity.cc
- src/core/ext/filters/client_channel/client_channel.cc - src/core/ext/filters/client_channel/client_channel.cc
@ -1004,6 +1017,7 @@ filegroups:
- grpc_base - grpc_base
- grpc_deadline_filter - grpc_deadline_filter
- grpc_health_upb - grpc_health_upb
- envoy_orca_upb
- name: grpc_client_idle_filter - name: grpc_client_idle_filter
src: src:
- src/core/ext/filters/client_idle/client_idle_filter.cc - src/core/ext/filters/client_idle/client_idle_filter.cc
@ -4741,6 +4755,7 @@ targets:
build: test build: test
language: c++ language: c++
src: src:
- src/proto/grpc/lb/v2/orca_load_report_for_test.proto
- test/cpp/end2end/client_lb_end2end_test.cc - test/cpp/end2end/client_lb_end2end_test.cc
deps: deps:
- grpc++_test_util - grpc++_test_util

@ -349,6 +349,7 @@ if test "$PHP_GRPC" != "no"; then
src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc \ src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc \
src/core/ext/transport/chttp2/client/authority.cc \ src/core/ext/transport/chttp2/client/authority.cc \
src/core/ext/transport/chttp2/client/chttp2_connector.cc \ src/core/ext/transport/chttp2/client/chttp2_connector.cc \
src/core/ext/filters/client_channel/backend_metric.cc \
src/core/ext/filters/client_channel/backup_poller.cc \ src/core/ext/filters/client_channel/backup_poller.cc \
src/core/ext/filters/client_channel/channel_connectivity.cc \ src/core/ext/filters/client_channel/channel_connectivity.cc \
src/core/ext/filters/client_channel/client_channel.cc \ src/core/ext/filters/client_channel/client_channel.cc \
@ -377,6 +378,19 @@ if test "$PHP_GRPC" != "no"; then
src/core/ext/filters/client_channel/subchannel_pool_interface.cc \ src/core/ext/filters/client_channel/subchannel_pool_interface.cc \
src/core/ext/filters/deadline/deadline_filter.cc \ src/core/ext/filters/deadline/deadline_filter.cc \
src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c \ src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c \
src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c \
src/core/ext/upb-generated/gogoproto/gogo.upb.c \
src/core/ext/upb-generated/validate/validate.upb.c \
src/core/ext/upb-generated/google/api/annotations.upb.c \
src/core/ext/upb-generated/google/api/http.upb.c \
src/core/ext/upb-generated/google/protobuf/any.upb.c \
src/core/ext/upb-generated/google/protobuf/descriptor.upb.c \
src/core/ext/upb-generated/google/protobuf/duration.upb.c \
src/core/ext/upb-generated/google/protobuf/empty.upb.c \
src/core/ext/upb-generated/google/protobuf/struct.upb.c \
src/core/ext/upb-generated/google/protobuf/timestamp.upb.c \
src/core/ext/upb-generated/google/protobuf/wrappers.upb.c \
src/core/ext/upb-generated/google/rpc/status.upb.c \
src/core/tsi/fake_transport_security.cc \ src/core/tsi/fake_transport_security.cc \
src/core/tsi/local_transport_security.cc \ src/core/tsi/local_transport_security.cc \
src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc \ src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc \
@ -396,16 +410,6 @@ if test "$PHP_GRPC" != "no"; then
src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc \ src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc \
src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc \ src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc \
src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c \ src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c \
src/core/ext/upb-generated/google/api/annotations.upb.c \
src/core/ext/upb-generated/google/api/http.upb.c \
src/core/ext/upb-generated/google/protobuf/any.upb.c \
src/core/ext/upb-generated/google/protobuf/descriptor.upb.c \
src/core/ext/upb-generated/google/protobuf/duration.upb.c \
src/core/ext/upb-generated/google/protobuf/empty.upb.c \
src/core/ext/upb-generated/google/protobuf/struct.upb.c \
src/core/ext/upb-generated/google/protobuf/timestamp.upb.c \
src/core/ext/upb-generated/google/protobuf/wrappers.upb.c \
src/core/ext/upb-generated/google/rpc/status.upb.c \
src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc \ src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc \
src/core/ext/filters/client_channel/lb_policy/xds/xds.cc \ src/core/ext/filters/client_channel/lb_policy/xds/xds.cc \
src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_secure.cc \ src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_secure.cc \
@ -414,6 +418,7 @@ if test "$PHP_GRPC" != "no"; then
src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c \ src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c \
src/core/ext/upb-generated/envoy/api/v2/cds.upb.c \ src/core/ext/upb-generated/envoy/api/v2/cds.upb.c \
src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c \ src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c \
src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.c \
src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c \ src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c \
src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c \ src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c \
src/core/ext/upb-generated/envoy/api/v2/eds.upb.c \ src/core/ext/upb-generated/envoy/api/v2/eds.upb.c \
@ -426,11 +431,10 @@ if test "$PHP_GRPC" != "no"; then
src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c \ src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c \
src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c \ src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c \
src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c \ src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c \
src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.c \
src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c \ src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c \
src/core/ext/upb-generated/envoy/type/percent.upb.c \ src/core/ext/upb-generated/envoy/type/percent.upb.c \
src/core/ext/upb-generated/envoy/type/range.upb.c \ src/core/ext/upb-generated/envoy/type/range.upb.c \
src/core/ext/upb-generated/gogoproto/gogo.upb.c \
src/core/ext/upb-generated/validate/validate.upb.c \
src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc \ src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc \
src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc \ src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc \
src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc \
@ -766,6 +770,7 @@ if test "$PHP_GRPC" != "no"; then
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/src/proto/grpc/gcp) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/src/proto/grpc/gcp)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/src/proto/grpc/health/v1) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/src/proto/grpc/health/v1)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/src/proto/grpc/lb/v1) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/src/proto/grpc/lb/v1)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/udpa/data/orca/v1)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/validate) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/upb-generated/validate)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/avl) PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/avl)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/backoff) PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/backoff)

@ -323,6 +323,7 @@ if (PHP_GRPC != "no") {
"src\\core\\ext\\transport\\chttp2\\client\\insecure\\channel_create_posix.cc " + "src\\core\\ext\\transport\\chttp2\\client\\insecure\\channel_create_posix.cc " +
"src\\core\\ext\\transport\\chttp2\\client\\authority.cc " + "src\\core\\ext\\transport\\chttp2\\client\\authority.cc " +
"src\\core\\ext\\transport\\chttp2\\client\\chttp2_connector.cc " + "src\\core\\ext\\transport\\chttp2\\client\\chttp2_connector.cc " +
"src\\core\\ext\\filters\\client_channel\\backend_metric.cc " +
"src\\core\\ext\\filters\\client_channel\\backup_poller.cc " + "src\\core\\ext\\filters\\client_channel\\backup_poller.cc " +
"src\\core\\ext\\filters\\client_channel\\channel_connectivity.cc " + "src\\core\\ext\\filters\\client_channel\\channel_connectivity.cc " +
"src\\core\\ext\\filters\\client_channel\\client_channel.cc " + "src\\core\\ext\\filters\\client_channel\\client_channel.cc " +
@ -351,6 +352,19 @@ if (PHP_GRPC != "no") {
"src\\core\\ext\\filters\\client_channel\\subchannel_pool_interface.cc " + "src\\core\\ext\\filters\\client_channel\\subchannel_pool_interface.cc " +
"src\\core\\ext\\filters\\deadline\\deadline_filter.cc " + "src\\core\\ext\\filters\\deadline\\deadline_filter.cc " +
"src\\core\\ext\\upb-generated\\src\\proto\\grpc\\health\\v1\\health.upb.c " + "src\\core\\ext\\upb-generated\\src\\proto\\grpc\\health\\v1\\health.upb.c " +
"src\\core\\ext\\upb-generated\\udpa\\data\\orca\\v1\\orca_load_report.upb.c " +
"src\\core\\ext\\upb-generated\\gogoproto\\gogo.upb.c " +
"src\\core\\ext\\upb-generated\\validate\\validate.upb.c " +
"src\\core\\ext\\upb-generated\\google\\api\\annotations.upb.c " +
"src\\core\\ext\\upb-generated\\google\\api\\http.upb.c " +
"src\\core\\ext\\upb-generated\\google\\protobuf\\any.upb.c " +
"src\\core\\ext\\upb-generated\\google\\protobuf\\descriptor.upb.c " +
"src\\core\\ext\\upb-generated\\google\\protobuf\\duration.upb.c " +
"src\\core\\ext\\upb-generated\\google\\protobuf\\empty.upb.c " +
"src\\core\\ext\\upb-generated\\google\\protobuf\\struct.upb.c " +
"src\\core\\ext\\upb-generated\\google\\protobuf\\timestamp.upb.c " +
"src\\core\\ext\\upb-generated\\google\\protobuf\\wrappers.upb.c " +
"src\\core\\ext\\upb-generated\\google\\rpc\\status.upb.c " +
"src\\core\\tsi\\fake_transport_security.cc " + "src\\core\\tsi\\fake_transport_security.cc " +
"src\\core\\tsi\\local_transport_security.cc " + "src\\core\\tsi\\local_transport_security.cc " +
"src\\core\\tsi\\ssl\\session_cache\\ssl_session_boringssl.cc " + "src\\core\\tsi\\ssl\\session_cache\\ssl_session_boringssl.cc " +
@ -370,16 +384,6 @@ if (PHP_GRPC != "no") {
"src\\core\\ext\\filters\\client_channel\\lb_policy\\grpclb\\grpclb_client_stats.cc " + "src\\core\\ext\\filters\\client_channel\\lb_policy\\grpclb\\grpclb_client_stats.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\grpclb\\load_balancer_api.cc " + "src\\core\\ext\\filters\\client_channel\\lb_policy\\grpclb\\load_balancer_api.cc " +
"src\\core\\ext\\upb-generated\\src\\proto\\grpc\\lb\\v1\\load_balancer.upb.c " + "src\\core\\ext\\upb-generated\\src\\proto\\grpc\\lb\\v1\\load_balancer.upb.c " +
"src\\core\\ext\\upb-generated\\google\\api\\annotations.upb.c " +
"src\\core\\ext\\upb-generated\\google\\api\\http.upb.c " +
"src\\core\\ext\\upb-generated\\google\\protobuf\\any.upb.c " +
"src\\core\\ext\\upb-generated\\google\\protobuf\\descriptor.upb.c " +
"src\\core\\ext\\upb-generated\\google\\protobuf\\duration.upb.c " +
"src\\core\\ext\\upb-generated\\google\\protobuf\\empty.upb.c " +
"src\\core\\ext\\upb-generated\\google\\protobuf\\struct.upb.c " +
"src\\core\\ext\\upb-generated\\google\\protobuf\\timestamp.upb.c " +
"src\\core\\ext\\upb-generated\\google\\protobuf\\wrappers.upb.c " +
"src\\core\\ext\\upb-generated\\google\\rpc\\status.upb.c " +
"src\\core\\ext\\filters\\client_channel\\resolver\\fake\\fake_resolver.cc " + "src\\core\\ext\\filters\\client_channel\\resolver\\fake\\fake_resolver.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\xds\\xds.cc " + "src\\core\\ext\\filters\\client_channel\\lb_policy\\xds\\xds.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\xds\\xds_channel_secure.cc " + "src\\core\\ext\\filters\\client_channel\\lb_policy\\xds\\xds_channel_secure.cc " +
@ -388,6 +392,7 @@ if (PHP_GRPC != "no") {
"src\\core\\ext\\upb-generated\\envoy\\api\\v2\\auth\\cert.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\api\\v2\\auth\\cert.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\api\\v2\\cds.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\api\\v2\\cds.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\api\\v2\\cluster\\circuit_breaker.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\api\\v2\\cluster\\circuit_breaker.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\api\\v2\\cluster\\filter.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\api\\v2\\cluster\\outlier_detection.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\api\\v2\\cluster\\outlier_detection.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\api\\v2\\discovery.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\api\\v2\\discovery.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\api\\v2\\eds.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\api\\v2\\eds.upb.c " +
@ -400,11 +405,10 @@ if (PHP_GRPC != "no") {
"src\\core\\ext\\upb-generated\\envoy\\api\\v2\\core\\config_source.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\api\\v2\\core\\config_source.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\api\\v2\\core\\grpc_service.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\api\\v2\\core\\grpc_service.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\api\\v2\\core\\health_check.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\api\\v2\\core\\health_check.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\api\\v2\\core\\http_uri.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\api\\v2\\core\\protocol.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\api\\v2\\core\\protocol.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\type\\percent.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\type\\percent.upb.c " +
"src\\core\\ext\\upb-generated\\envoy\\type\\range.upb.c " + "src\\core\\ext\\upb-generated\\envoy\\type\\range.upb.c " +
"src\\core\\ext\\upb-generated\\gogoproto\\gogo.upb.c " +
"src\\core\\ext\\upb-generated\\validate\\validate.upb.c " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\pick_first\\pick_first.cc " + "src\\core\\ext\\filters\\client_channel\\lb_policy\\pick_first\\pick_first.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\round_robin\\round_robin.cc " + "src\\core\\ext\\filters\\client_channel\\lb_policy\\round_robin\\round_robin.cc " +
"src\\core\\ext\\filters\\client_channel\\resolver\\dns\\c_ares\\dns_resolver_ares.cc " + "src\\core\\ext\\filters\\client_channel\\resolver\\dns\\c_ares\\dns_resolver_ares.cc " +
@ -785,6 +789,10 @@ if (PHP_GRPC != "no") {
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\src\\proto\\grpc\\health\\v1"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\src\\proto\\grpc\\health\\v1");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\src\\proto\\grpc\\lb"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\src\\proto\\grpc\\lb");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\src\\proto\\grpc\\lb\\v1"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\src\\proto\\grpc\\lb\\v1");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\udpa");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\udpa\\data");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\udpa\\data\\orca");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\udpa\\data\\orca\\v1");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\validate"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\upb-generated\\validate");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\avl"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\avl");

@ -352,6 +352,7 @@ Pod::Spec.new do |s|
'src/core/tsi/transport_security_interface.h', 'src/core/tsi/transport_security_interface.h',
'src/core/ext/transport/chttp2/client/authority.h', 'src/core/ext/transport/chttp2/client/authority.h',
'src/core/ext/transport/chttp2/client/chttp2_connector.h', 'src/core/ext/transport/chttp2/client/chttp2_connector.h',
'src/core/ext/filters/client_channel/backend_metric.h',
'src/core/ext/filters/client_channel/backup_poller.h', 'src/core/ext/filters/client_channel/backup_poller.h',
'src/core/ext/filters/client_channel/client_channel.h', 'src/core/ext/filters/client_channel/client_channel.h',
'src/core/ext/filters/client_channel/client_channel_channelz.h', 'src/core/ext/filters/client_channel/client_channel_channelz.h',
@ -381,6 +382,19 @@ Pod::Spec.new do |s|
'src/core/ext/filters/client_channel/subchannel_pool_interface.h', 'src/core/ext/filters/client_channel/subchannel_pool_interface.h',
'src/core/ext/filters/deadline/deadline_filter.h', 'src/core/ext/filters/deadline/deadline_filter.h',
'src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h', 'src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h',
'src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.h',
'src/core/ext/upb-generated/gogoproto/gogo.upb.h',
'src/core/ext/upb-generated/validate/validate.upb.h',
'src/core/ext/upb-generated/google/api/annotations.upb.h',
'src/core/ext/upb-generated/google/api/http.upb.h',
'src/core/ext/upb-generated/google/protobuf/any.upb.h',
'src/core/ext/upb-generated/google/protobuf/descriptor.upb.h',
'src/core/ext/upb-generated/google/protobuf/duration.upb.h',
'src/core/ext/upb-generated/google/protobuf/empty.upb.h',
'src/core/ext/upb-generated/google/protobuf/struct.upb.h',
'src/core/ext/upb-generated/google/protobuf/timestamp.upb.h',
'src/core/ext/upb-generated/google/protobuf/wrappers.upb.h',
'src/core/ext/upb-generated/google/rpc/status.upb.h',
'src/core/tsi/fake_transport_security.h', 'src/core/tsi/fake_transport_security.h',
'src/core/tsi/local_transport_security.h', 'src/core/tsi/local_transport_security.h',
'src/core/tsi/ssl/session_cache/ssl_session.h', 'src/core/tsi/ssl/session_cache/ssl_session.h',
@ -540,16 +554,6 @@ Pod::Spec.new do |s|
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h', 'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h',
'src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h', 'src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h',
'src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h', 'src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h',
'src/core/ext/upb-generated/google/api/annotations.upb.h',
'src/core/ext/upb-generated/google/api/http.upb.h',
'src/core/ext/upb-generated/google/protobuf/any.upb.h',
'src/core/ext/upb-generated/google/protobuf/descriptor.upb.h',
'src/core/ext/upb-generated/google/protobuf/duration.upb.h',
'src/core/ext/upb-generated/google/protobuf/empty.upb.h',
'src/core/ext/upb-generated/google/protobuf/struct.upb.h',
'src/core/ext/upb-generated/google/protobuf/timestamp.upb.h',
'src/core/ext/upb-generated/google/protobuf/wrappers.upb.h',
'src/core/ext/upb-generated/google/rpc/status.upb.h',
'src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h', 'src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h',
'src/core/ext/filters/client_channel/lb_policy/xds/xds_channel.h', 'src/core/ext/filters/client_channel/lb_policy/xds/xds_channel.h',
'src/core/ext/filters/client_channel/lb_policy/xds/xds_client_stats.h', 'src/core/ext/filters/client_channel/lb_policy/xds/xds_client_stats.h',
@ -557,6 +561,7 @@ Pod::Spec.new do |s|
'src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.h', 'src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.h',
'src/core/ext/upb-generated/envoy/api/v2/cds.upb.h', 'src/core/ext/upb-generated/envoy/api/v2/cds.upb.h',
'src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.h', 'src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.h',
'src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.h',
'src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.h', 'src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.h',
'src/core/ext/upb-generated/envoy/api/v2/discovery.upb.h', 'src/core/ext/upb-generated/envoy/api/v2/discovery.upb.h',
'src/core/ext/upb-generated/envoy/api/v2/eds.upb.h', 'src/core/ext/upb-generated/envoy/api/v2/eds.upb.h',
@ -569,11 +574,10 @@ Pod::Spec.new do |s|
'src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.h', 'src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.h',
'src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.h', 'src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.h',
'src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.h', 'src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.h',
'src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.h',
'src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.h', 'src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.h',
'src/core/ext/upb-generated/envoy/type/percent.upb.h', 'src/core/ext/upb-generated/envoy/type/percent.upb.h',
'src/core/ext/upb-generated/envoy/type/range.upb.h', 'src/core/ext/upb-generated/envoy/type/range.upb.h',
'src/core/ext/upb-generated/gogoproto/gogo.upb.h',
'src/core/ext/upb-generated/validate/validate.upb.h',
'src/core/ext/filters/client_channel/lb_policy/subchannel_list.h', 'src/core/ext/filters/client_channel/lb_policy/subchannel_list.h',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h', 'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h', 'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h',
@ -847,6 +851,7 @@ Pod::Spec.new do |s|
'src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc', 'src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc',
'src/core/ext/transport/chttp2/client/authority.cc', 'src/core/ext/transport/chttp2/client/authority.cc',
'src/core/ext/transport/chttp2/client/chttp2_connector.cc', 'src/core/ext/transport/chttp2/client/chttp2_connector.cc',
'src/core/ext/filters/client_channel/backend_metric.cc',
'src/core/ext/filters/client_channel/backup_poller.cc', 'src/core/ext/filters/client_channel/backup_poller.cc',
'src/core/ext/filters/client_channel/channel_connectivity.cc', 'src/core/ext/filters/client_channel/channel_connectivity.cc',
'src/core/ext/filters/client_channel/client_channel.cc', 'src/core/ext/filters/client_channel/client_channel.cc',
@ -875,6 +880,19 @@ Pod::Spec.new do |s|
'src/core/ext/filters/client_channel/subchannel_pool_interface.cc', 'src/core/ext/filters/client_channel/subchannel_pool_interface.cc',
'src/core/ext/filters/deadline/deadline_filter.cc', 'src/core/ext/filters/deadline/deadline_filter.cc',
'src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c', 'src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c',
'src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c',
'src/core/ext/upb-generated/gogoproto/gogo.upb.c',
'src/core/ext/upb-generated/validate/validate.upb.c',
'src/core/ext/upb-generated/google/api/annotations.upb.c',
'src/core/ext/upb-generated/google/api/http.upb.c',
'src/core/ext/upb-generated/google/protobuf/any.upb.c',
'src/core/ext/upb-generated/google/protobuf/descriptor.upb.c',
'src/core/ext/upb-generated/google/protobuf/duration.upb.c',
'src/core/ext/upb-generated/google/protobuf/empty.upb.c',
'src/core/ext/upb-generated/google/protobuf/struct.upb.c',
'src/core/ext/upb-generated/google/protobuf/timestamp.upb.c',
'src/core/ext/upb-generated/google/protobuf/wrappers.upb.c',
'src/core/ext/upb-generated/google/rpc/status.upb.c',
'src/core/tsi/fake_transport_security.cc', 'src/core/tsi/fake_transport_security.cc',
'src/core/tsi/local_transport_security.cc', 'src/core/tsi/local_transport_security.cc',
'src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc', 'src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc',
@ -894,16 +912,6 @@ Pod::Spec.new do |s|
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc', 'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc',
'src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc', 'src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc',
'src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c', 'src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c',
'src/core/ext/upb-generated/google/api/annotations.upb.c',
'src/core/ext/upb-generated/google/api/http.upb.c',
'src/core/ext/upb-generated/google/protobuf/any.upb.c',
'src/core/ext/upb-generated/google/protobuf/descriptor.upb.c',
'src/core/ext/upb-generated/google/protobuf/duration.upb.c',
'src/core/ext/upb-generated/google/protobuf/empty.upb.c',
'src/core/ext/upb-generated/google/protobuf/struct.upb.c',
'src/core/ext/upb-generated/google/protobuf/timestamp.upb.c',
'src/core/ext/upb-generated/google/protobuf/wrappers.upb.c',
'src/core/ext/upb-generated/google/rpc/status.upb.c',
'src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc', 'src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc',
'src/core/ext/filters/client_channel/lb_policy/xds/xds.cc', 'src/core/ext/filters/client_channel/lb_policy/xds/xds.cc',
'src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_secure.cc', 'src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_secure.cc',
@ -912,6 +920,7 @@ Pod::Spec.new do |s|
'src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/cds.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/cds.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/eds.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/eds.upb.c',
@ -924,11 +933,10 @@ Pod::Spec.new do |s|
'src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c',
'src/core/ext/upb-generated/envoy/type/percent.upb.c', 'src/core/ext/upb-generated/envoy/type/percent.upb.c',
'src/core/ext/upb-generated/envoy/type/range.upb.c', 'src/core/ext/upb-generated/envoy/type/range.upb.c',
'src/core/ext/upb-generated/gogoproto/gogo.upb.c',
'src/core/ext/upb-generated/validate/validate.upb.c',
'src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc', 'src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc',
'src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc', 'src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc', 'src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc',
@ -1078,6 +1086,7 @@ Pod::Spec.new do |s|
'src/core/tsi/transport_security_interface.h', 'src/core/tsi/transport_security_interface.h',
'src/core/ext/transport/chttp2/client/authority.h', 'src/core/ext/transport/chttp2/client/authority.h',
'src/core/ext/transport/chttp2/client/chttp2_connector.h', 'src/core/ext/transport/chttp2/client/chttp2_connector.h',
'src/core/ext/filters/client_channel/backend_metric.h',
'src/core/ext/filters/client_channel/backup_poller.h', 'src/core/ext/filters/client_channel/backup_poller.h',
'src/core/ext/filters/client_channel/client_channel.h', 'src/core/ext/filters/client_channel/client_channel.h',
'src/core/ext/filters/client_channel/client_channel_channelz.h', 'src/core/ext/filters/client_channel/client_channel_channelz.h',
@ -1107,6 +1116,19 @@ Pod::Spec.new do |s|
'src/core/ext/filters/client_channel/subchannel_pool_interface.h', 'src/core/ext/filters/client_channel/subchannel_pool_interface.h',
'src/core/ext/filters/deadline/deadline_filter.h', 'src/core/ext/filters/deadline/deadline_filter.h',
'src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h', 'src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h',
'src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.h',
'src/core/ext/upb-generated/gogoproto/gogo.upb.h',
'src/core/ext/upb-generated/validate/validate.upb.h',
'src/core/ext/upb-generated/google/api/annotations.upb.h',
'src/core/ext/upb-generated/google/api/http.upb.h',
'src/core/ext/upb-generated/google/protobuf/any.upb.h',
'src/core/ext/upb-generated/google/protobuf/descriptor.upb.h',
'src/core/ext/upb-generated/google/protobuf/duration.upb.h',
'src/core/ext/upb-generated/google/protobuf/empty.upb.h',
'src/core/ext/upb-generated/google/protobuf/struct.upb.h',
'src/core/ext/upb-generated/google/protobuf/timestamp.upb.h',
'src/core/ext/upb-generated/google/protobuf/wrappers.upb.h',
'src/core/ext/upb-generated/google/rpc/status.upb.h',
'src/core/tsi/fake_transport_security.h', 'src/core/tsi/fake_transport_security.h',
'src/core/tsi/local_transport_security.h', 'src/core/tsi/local_transport_security.h',
'src/core/tsi/ssl/session_cache/ssl_session.h', 'src/core/tsi/ssl/session_cache/ssl_session.h',
@ -1266,16 +1288,6 @@ Pod::Spec.new do |s|
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h', 'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h',
'src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h', 'src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h',
'src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h', 'src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h',
'src/core/ext/upb-generated/google/api/annotations.upb.h',
'src/core/ext/upb-generated/google/api/http.upb.h',
'src/core/ext/upb-generated/google/protobuf/any.upb.h',
'src/core/ext/upb-generated/google/protobuf/descriptor.upb.h',
'src/core/ext/upb-generated/google/protobuf/duration.upb.h',
'src/core/ext/upb-generated/google/protobuf/empty.upb.h',
'src/core/ext/upb-generated/google/protobuf/struct.upb.h',
'src/core/ext/upb-generated/google/protobuf/timestamp.upb.h',
'src/core/ext/upb-generated/google/protobuf/wrappers.upb.h',
'src/core/ext/upb-generated/google/rpc/status.upb.h',
'src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h', 'src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h',
'src/core/ext/filters/client_channel/lb_policy/xds/xds_channel.h', 'src/core/ext/filters/client_channel/lb_policy/xds/xds_channel.h',
'src/core/ext/filters/client_channel/lb_policy/xds/xds_client_stats.h', 'src/core/ext/filters/client_channel/lb_policy/xds/xds_client_stats.h',
@ -1283,6 +1295,7 @@ Pod::Spec.new do |s|
'src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.h', 'src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.h',
'src/core/ext/upb-generated/envoy/api/v2/cds.upb.h', 'src/core/ext/upb-generated/envoy/api/v2/cds.upb.h',
'src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.h', 'src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.h',
'src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.h',
'src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.h', 'src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.h',
'src/core/ext/upb-generated/envoy/api/v2/discovery.upb.h', 'src/core/ext/upb-generated/envoy/api/v2/discovery.upb.h',
'src/core/ext/upb-generated/envoy/api/v2/eds.upb.h', 'src/core/ext/upb-generated/envoy/api/v2/eds.upb.h',
@ -1295,11 +1308,10 @@ Pod::Spec.new do |s|
'src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.h', 'src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.h',
'src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.h', 'src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.h',
'src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.h', 'src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.h',
'src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.h',
'src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.h', 'src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.h',
'src/core/ext/upb-generated/envoy/type/percent.upb.h', 'src/core/ext/upb-generated/envoy/type/percent.upb.h',
'src/core/ext/upb-generated/envoy/type/range.upb.h', 'src/core/ext/upb-generated/envoy/type/range.upb.h',
'src/core/ext/upb-generated/gogoproto/gogo.upb.h',
'src/core/ext/upb-generated/validate/validate.upb.h',
'src/core/ext/filters/client_channel/lb_policy/subchannel_list.h', 'src/core/ext/filters/client_channel/lb_policy/subchannel_list.h',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h', 'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h', 'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h',

@ -282,6 +282,7 @@ Gem::Specification.new do |s|
s.files += %w( src/core/tsi/transport_security_interface.h ) s.files += %w( src/core/tsi/transport_security_interface.h )
s.files += %w( src/core/ext/transport/chttp2/client/authority.h ) s.files += %w( src/core/ext/transport/chttp2/client/authority.h )
s.files += %w( src/core/ext/transport/chttp2/client/chttp2_connector.h ) s.files += %w( src/core/ext/transport/chttp2/client/chttp2_connector.h )
s.files += %w( src/core/ext/filters/client_channel/backend_metric.h )
s.files += %w( src/core/ext/filters/client_channel/backup_poller.h ) s.files += %w( src/core/ext/filters/client_channel/backup_poller.h )
s.files += %w( src/core/ext/filters/client_channel/client_channel.h ) s.files += %w( src/core/ext/filters/client_channel/client_channel.h )
s.files += %w( src/core/ext/filters/client_channel/client_channel_channelz.h ) s.files += %w( src/core/ext/filters/client_channel/client_channel_channelz.h )
@ -311,6 +312,19 @@ Gem::Specification.new do |s|
s.files += %w( src/core/ext/filters/client_channel/subchannel_pool_interface.h ) s.files += %w( src/core/ext/filters/client_channel/subchannel_pool_interface.h )
s.files += %w( src/core/ext/filters/deadline/deadline_filter.h ) s.files += %w( src/core/ext/filters/deadline/deadline_filter.h )
s.files += %w( src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h ) s.files += %w( src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h )
s.files += %w( src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.h )
s.files += %w( src/core/ext/upb-generated/gogoproto/gogo.upb.h )
s.files += %w( src/core/ext/upb-generated/validate/validate.upb.h )
s.files += %w( src/core/ext/upb-generated/google/api/annotations.upb.h )
s.files += %w( src/core/ext/upb-generated/google/api/http.upb.h )
s.files += %w( src/core/ext/upb-generated/google/protobuf/any.upb.h )
s.files += %w( src/core/ext/upb-generated/google/protobuf/descriptor.upb.h )
s.files += %w( src/core/ext/upb-generated/google/protobuf/duration.upb.h )
s.files += %w( src/core/ext/upb-generated/google/protobuf/empty.upb.h )
s.files += %w( src/core/ext/upb-generated/google/protobuf/struct.upb.h )
s.files += %w( src/core/ext/upb-generated/google/protobuf/timestamp.upb.h )
s.files += %w( src/core/ext/upb-generated/google/protobuf/wrappers.upb.h )
s.files += %w( src/core/ext/upb-generated/google/rpc/status.upb.h )
s.files += %w( src/core/tsi/fake_transport_security.h ) s.files += %w( src/core/tsi/fake_transport_security.h )
s.files += %w( src/core/tsi/local_transport_security.h ) s.files += %w( src/core/tsi/local_transport_security.h )
s.files += %w( src/core/tsi/ssl/session_cache/ssl_session.h ) s.files += %w( src/core/tsi/ssl/session_cache/ssl_session.h )
@ -470,16 +484,6 @@ Gem::Specification.new do |s|
s.files += %w( src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h ) s.files += %w( src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h ) s.files += %w( src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h )
s.files += %w( src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h ) s.files += %w( src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h )
s.files += %w( src/core/ext/upb-generated/google/api/annotations.upb.h )
s.files += %w( src/core/ext/upb-generated/google/api/http.upb.h )
s.files += %w( src/core/ext/upb-generated/google/protobuf/any.upb.h )
s.files += %w( src/core/ext/upb-generated/google/protobuf/descriptor.upb.h )
s.files += %w( src/core/ext/upb-generated/google/protobuf/duration.upb.h )
s.files += %w( src/core/ext/upb-generated/google/protobuf/empty.upb.h )
s.files += %w( src/core/ext/upb-generated/google/protobuf/struct.upb.h )
s.files += %w( src/core/ext/upb-generated/google/protobuf/timestamp.upb.h )
s.files += %w( src/core/ext/upb-generated/google/protobuf/wrappers.upb.h )
s.files += %w( src/core/ext/upb-generated/google/rpc/status.upb.h )
s.files += %w( src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h ) s.files += %w( src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/xds/xds_channel.h ) s.files += %w( src/core/ext/filters/client_channel/lb_policy/xds/xds_channel.h )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/xds/xds_client_stats.h ) s.files += %w( src/core/ext/filters/client_channel/lb_policy/xds/xds_client_stats.h )
@ -487,6 +491,7 @@ Gem::Specification.new do |s|
s.files += %w( src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/api/v2/cds.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/api/v2/cds.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/api/v2/discovery.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/api/v2/discovery.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/api/v2/eds.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/api/v2/eds.upb.h )
@ -499,11 +504,10 @@ Gem::Specification.new do |s|
s.files += %w( src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/type/percent.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/type/percent.upb.h )
s.files += %w( src/core/ext/upb-generated/envoy/type/range.upb.h ) s.files += %w( src/core/ext/upb-generated/envoy/type/range.upb.h )
s.files += %w( src/core/ext/upb-generated/gogoproto/gogo.upb.h )
s.files += %w( src/core/ext/upb-generated/validate/validate.upb.h )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/subchannel_list.h ) s.files += %w( src/core/ext/filters/client_channel/lb_policy/subchannel_list.h )
s.files += %w( src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h ) s.files += %w( src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h )
s.files += %w( src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h ) s.files += %w( src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h )
@ -777,6 +781,7 @@ Gem::Specification.new do |s|
s.files += %w( src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc ) s.files += %w( src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc )
s.files += %w( src/core/ext/transport/chttp2/client/authority.cc ) s.files += %w( src/core/ext/transport/chttp2/client/authority.cc )
s.files += %w( src/core/ext/transport/chttp2/client/chttp2_connector.cc ) s.files += %w( src/core/ext/transport/chttp2/client/chttp2_connector.cc )
s.files += %w( src/core/ext/filters/client_channel/backend_metric.cc )
s.files += %w( src/core/ext/filters/client_channel/backup_poller.cc ) s.files += %w( src/core/ext/filters/client_channel/backup_poller.cc )
s.files += %w( src/core/ext/filters/client_channel/channel_connectivity.cc ) s.files += %w( src/core/ext/filters/client_channel/channel_connectivity.cc )
s.files += %w( src/core/ext/filters/client_channel/client_channel.cc ) s.files += %w( src/core/ext/filters/client_channel/client_channel.cc )
@ -805,6 +810,19 @@ Gem::Specification.new do |s|
s.files += %w( src/core/ext/filters/client_channel/subchannel_pool_interface.cc ) s.files += %w( src/core/ext/filters/client_channel/subchannel_pool_interface.cc )
s.files += %w( src/core/ext/filters/deadline/deadline_filter.cc ) s.files += %w( src/core/ext/filters/deadline/deadline_filter.cc )
s.files += %w( src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c ) s.files += %w( src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c )
s.files += %w( src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c )
s.files += %w( src/core/ext/upb-generated/gogoproto/gogo.upb.c )
s.files += %w( src/core/ext/upb-generated/validate/validate.upb.c )
s.files += %w( src/core/ext/upb-generated/google/api/annotations.upb.c )
s.files += %w( src/core/ext/upb-generated/google/api/http.upb.c )
s.files += %w( src/core/ext/upb-generated/google/protobuf/any.upb.c )
s.files += %w( src/core/ext/upb-generated/google/protobuf/descriptor.upb.c )
s.files += %w( src/core/ext/upb-generated/google/protobuf/duration.upb.c )
s.files += %w( src/core/ext/upb-generated/google/protobuf/empty.upb.c )
s.files += %w( src/core/ext/upb-generated/google/protobuf/struct.upb.c )
s.files += %w( src/core/ext/upb-generated/google/protobuf/timestamp.upb.c )
s.files += %w( src/core/ext/upb-generated/google/protobuf/wrappers.upb.c )
s.files += %w( src/core/ext/upb-generated/google/rpc/status.upb.c )
s.files += %w( src/core/tsi/fake_transport_security.cc ) s.files += %w( src/core/tsi/fake_transport_security.cc )
s.files += %w( src/core/tsi/local_transport_security.cc ) s.files += %w( src/core/tsi/local_transport_security.cc )
s.files += %w( src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc ) s.files += %w( src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc )
@ -824,16 +842,6 @@ Gem::Specification.new do |s|
s.files += %w( src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc ) s.files += %w( src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc ) s.files += %w( src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc )
s.files += %w( src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c ) s.files += %w( src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c )
s.files += %w( src/core/ext/upb-generated/google/api/annotations.upb.c )
s.files += %w( src/core/ext/upb-generated/google/api/http.upb.c )
s.files += %w( src/core/ext/upb-generated/google/protobuf/any.upb.c )
s.files += %w( src/core/ext/upb-generated/google/protobuf/descriptor.upb.c )
s.files += %w( src/core/ext/upb-generated/google/protobuf/duration.upb.c )
s.files += %w( src/core/ext/upb-generated/google/protobuf/empty.upb.c )
s.files += %w( src/core/ext/upb-generated/google/protobuf/struct.upb.c )
s.files += %w( src/core/ext/upb-generated/google/protobuf/timestamp.upb.c )
s.files += %w( src/core/ext/upb-generated/google/protobuf/wrappers.upb.c )
s.files += %w( src/core/ext/upb-generated/google/rpc/status.upb.c )
s.files += %w( src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc ) s.files += %w( src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/xds/xds.cc ) s.files += %w( src/core/ext/filters/client_channel/lb_policy/xds/xds.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_secure.cc ) s.files += %w( src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_secure.cc )
@ -842,6 +850,7 @@ Gem::Specification.new do |s|
s.files += %w( src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/api/v2/cds.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/api/v2/cds.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/api/v2/eds.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/api/v2/eds.upb.c )
@ -854,11 +863,10 @@ Gem::Specification.new do |s|
s.files += %w( src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/type/percent.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/type/percent.upb.c )
s.files += %w( src/core/ext/upb-generated/envoy/type/range.upb.c ) s.files += %w( src/core/ext/upb-generated/envoy/type/range.upb.c )
s.files += %w( src/core/ext/upb-generated/gogoproto/gogo.upb.c )
s.files += %w( src/core/ext/upb-generated/validate/validate.upb.c )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc ) s.files += %w( src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc ) s.files += %w( src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc )
s.files += %w( src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc ) s.files += %w( src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc )

@ -553,6 +553,7 @@
'src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc', 'src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc',
'src/core/ext/transport/chttp2/client/authority.cc', 'src/core/ext/transport/chttp2/client/authority.cc',
'src/core/ext/transport/chttp2/client/chttp2_connector.cc', 'src/core/ext/transport/chttp2/client/chttp2_connector.cc',
'src/core/ext/filters/client_channel/backend_metric.cc',
'src/core/ext/filters/client_channel/backup_poller.cc', 'src/core/ext/filters/client_channel/backup_poller.cc',
'src/core/ext/filters/client_channel/channel_connectivity.cc', 'src/core/ext/filters/client_channel/channel_connectivity.cc',
'src/core/ext/filters/client_channel/client_channel.cc', 'src/core/ext/filters/client_channel/client_channel.cc',
@ -581,6 +582,19 @@
'src/core/ext/filters/client_channel/subchannel_pool_interface.cc', 'src/core/ext/filters/client_channel/subchannel_pool_interface.cc',
'src/core/ext/filters/deadline/deadline_filter.cc', 'src/core/ext/filters/deadline/deadline_filter.cc',
'src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c', 'src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c',
'src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c',
'src/core/ext/upb-generated/gogoproto/gogo.upb.c',
'src/core/ext/upb-generated/validate/validate.upb.c',
'src/core/ext/upb-generated/google/api/annotations.upb.c',
'src/core/ext/upb-generated/google/api/http.upb.c',
'src/core/ext/upb-generated/google/protobuf/any.upb.c',
'src/core/ext/upb-generated/google/protobuf/descriptor.upb.c',
'src/core/ext/upb-generated/google/protobuf/duration.upb.c',
'src/core/ext/upb-generated/google/protobuf/empty.upb.c',
'src/core/ext/upb-generated/google/protobuf/struct.upb.c',
'src/core/ext/upb-generated/google/protobuf/timestamp.upb.c',
'src/core/ext/upb-generated/google/protobuf/wrappers.upb.c',
'src/core/ext/upb-generated/google/rpc/status.upb.c',
'src/core/tsi/fake_transport_security.cc', 'src/core/tsi/fake_transport_security.cc',
'src/core/tsi/local_transport_security.cc', 'src/core/tsi/local_transport_security.cc',
'src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc', 'src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc',
@ -600,16 +614,6 @@
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc', 'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc',
'src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc', 'src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc',
'src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c', 'src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c',
'src/core/ext/upb-generated/google/api/annotations.upb.c',
'src/core/ext/upb-generated/google/api/http.upb.c',
'src/core/ext/upb-generated/google/protobuf/any.upb.c',
'src/core/ext/upb-generated/google/protobuf/descriptor.upb.c',
'src/core/ext/upb-generated/google/protobuf/duration.upb.c',
'src/core/ext/upb-generated/google/protobuf/empty.upb.c',
'src/core/ext/upb-generated/google/protobuf/struct.upb.c',
'src/core/ext/upb-generated/google/protobuf/timestamp.upb.c',
'src/core/ext/upb-generated/google/protobuf/wrappers.upb.c',
'src/core/ext/upb-generated/google/rpc/status.upb.c',
'src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc', 'src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc',
'src/core/ext/filters/client_channel/lb_policy/xds/xds.cc', 'src/core/ext/filters/client_channel/lb_policy/xds/xds.cc',
'src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_secure.cc', 'src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_secure.cc',
@ -618,6 +622,7 @@
'src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/cds.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/cds.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/eds.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/eds.upb.c',
@ -630,11 +635,10 @@
'src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c',
'src/core/ext/upb-generated/envoy/type/percent.upb.c', 'src/core/ext/upb-generated/envoy/type/percent.upb.c',
'src/core/ext/upb-generated/envoy/type/range.upb.c', 'src/core/ext/upb-generated/envoy/type/range.upb.c',
'src/core/ext/upb-generated/gogoproto/gogo.upb.c',
'src/core/ext/upb-generated/validate/validate.upb.c',
'src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc', 'src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc',
'src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc', 'src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc', 'src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc',
@ -857,6 +861,7 @@
'src/core/lib/transport/transport_op_string.cc', 'src/core/lib/transport/transport_op_string.cc',
'src/core/lib/uri/uri_parser.cc', 'src/core/lib/uri/uri_parser.cc',
'src/core/lib/debug/trace.cc', 'src/core/lib/debug/trace.cc',
'src/core/ext/filters/client_channel/backend_metric.cc',
'src/core/ext/filters/client_channel/backup_poller.cc', 'src/core/ext/filters/client_channel/backup_poller.cc',
'src/core/ext/filters/client_channel/channel_connectivity.cc', 'src/core/ext/filters/client_channel/channel_connectivity.cc',
'src/core/ext/filters/client_channel/client_channel.cc', 'src/core/ext/filters/client_channel/client_channel.cc',
@ -891,6 +896,19 @@
'third_party/upb/upb/port.c', 'third_party/upb/upb/port.c',
'third_party/upb/upb/table.c', 'third_party/upb/upb/table.c',
'third_party/upb/upb/upb.c', 'third_party/upb/upb/upb.c',
'src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c',
'src/core/ext/upb-generated/gogoproto/gogo.upb.c',
'src/core/ext/upb-generated/validate/validate.upb.c',
'src/core/ext/upb-generated/google/api/annotations.upb.c',
'src/core/ext/upb-generated/google/api/http.upb.c',
'src/core/ext/upb-generated/google/protobuf/any.upb.c',
'src/core/ext/upb-generated/google/protobuf/descriptor.upb.c',
'src/core/ext/upb-generated/google/protobuf/duration.upb.c',
'src/core/ext/upb-generated/google/protobuf/empty.upb.c',
'src/core/ext/upb-generated/google/protobuf/struct.upb.c',
'src/core/ext/upb-generated/google/protobuf/timestamp.upb.c',
'src/core/ext/upb-generated/google/protobuf/wrappers.upb.c',
'src/core/ext/upb-generated/google/rpc/status.upb.c',
'src/core/ext/transport/chttp2/transport/bin_decoder.cc', 'src/core/ext/transport/chttp2/transport/bin_decoder.cc',
'src/core/ext/transport/chttp2/transport/bin_encoder.cc', 'src/core/ext/transport/chttp2/transport/bin_encoder.cc',
'src/core/ext/transport/chttp2/transport/chttp2_plugin.cc', 'src/core/ext/transport/chttp2/transport/chttp2_plugin.cc',
@ -1112,6 +1130,7 @@
'src/core/lib/transport/transport_op_string.cc', 'src/core/lib/transport/transport_op_string.cc',
'src/core/lib/uri/uri_parser.cc', 'src/core/lib/uri/uri_parser.cc',
'src/core/lib/debug/trace.cc', 'src/core/lib/debug/trace.cc',
'src/core/ext/filters/client_channel/backend_metric.cc',
'src/core/ext/filters/client_channel/backup_poller.cc', 'src/core/ext/filters/client_channel/backup_poller.cc',
'src/core/ext/filters/client_channel/channel_connectivity.cc', 'src/core/ext/filters/client_channel/channel_connectivity.cc',
'src/core/ext/filters/client_channel/client_channel.cc', 'src/core/ext/filters/client_channel/client_channel.cc',
@ -1146,6 +1165,19 @@
'third_party/upb/upb/port.c', 'third_party/upb/upb/port.c',
'third_party/upb/upb/table.c', 'third_party/upb/upb/table.c',
'third_party/upb/upb/upb.c', 'third_party/upb/upb/upb.c',
'src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c',
'src/core/ext/upb-generated/gogoproto/gogo.upb.c',
'src/core/ext/upb-generated/validate/validate.upb.c',
'src/core/ext/upb-generated/google/api/annotations.upb.c',
'src/core/ext/upb-generated/google/api/http.upb.c',
'src/core/ext/upb-generated/google/protobuf/any.upb.c',
'src/core/ext/upb-generated/google/protobuf/descriptor.upb.c',
'src/core/ext/upb-generated/google/protobuf/duration.upb.c',
'src/core/ext/upb-generated/google/protobuf/empty.upb.c',
'src/core/ext/upb-generated/google/protobuf/struct.upb.c',
'src/core/ext/upb-generated/google/protobuf/timestamp.upb.c',
'src/core/ext/upb-generated/google/protobuf/wrappers.upb.c',
'src/core/ext/upb-generated/google/rpc/status.upb.c',
'src/core/ext/transport/chttp2/transport/bin_decoder.cc', 'src/core/ext/transport/chttp2/transport/bin_decoder.cc',
'src/core/ext/transport/chttp2/transport/bin_encoder.cc', 'src/core/ext/transport/chttp2/transport/bin_encoder.cc',
'src/core/ext/transport/chttp2/transport/chttp2_plugin.cc', 'src/core/ext/transport/chttp2/transport/chttp2_plugin.cc',
@ -1378,6 +1410,7 @@
'src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc', 'src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc',
'src/core/ext/transport/chttp2/client/authority.cc', 'src/core/ext/transport/chttp2/client/authority.cc',
'src/core/ext/transport/chttp2/client/chttp2_connector.cc', 'src/core/ext/transport/chttp2/client/chttp2_connector.cc',
'src/core/ext/filters/client_channel/backend_metric.cc',
'src/core/ext/filters/client_channel/backup_poller.cc', 'src/core/ext/filters/client_channel/backup_poller.cc',
'src/core/ext/filters/client_channel/channel_connectivity.cc', 'src/core/ext/filters/client_channel/channel_connectivity.cc',
'src/core/ext/filters/client_channel/client_channel.cc', 'src/core/ext/filters/client_channel/client_channel.cc',
@ -1412,6 +1445,19 @@
'third_party/upb/upb/port.c', 'third_party/upb/upb/port.c',
'third_party/upb/upb/table.c', 'third_party/upb/upb/table.c',
'third_party/upb/upb/upb.c', 'third_party/upb/upb/upb.c',
'src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c',
'src/core/ext/upb-generated/gogoproto/gogo.upb.c',
'src/core/ext/upb-generated/validate/validate.upb.c',
'src/core/ext/upb-generated/google/api/annotations.upb.c',
'src/core/ext/upb-generated/google/api/http.upb.c',
'src/core/ext/upb-generated/google/protobuf/any.upb.c',
'src/core/ext/upb-generated/google/protobuf/descriptor.upb.c',
'src/core/ext/upb-generated/google/protobuf/duration.upb.c',
'src/core/ext/upb-generated/google/protobuf/empty.upb.c',
'src/core/ext/upb-generated/google/protobuf/struct.upb.c',
'src/core/ext/upb-generated/google/protobuf/timestamp.upb.c',
'src/core/ext/upb-generated/google/protobuf/wrappers.upb.c',
'src/core/ext/upb-generated/google/rpc/status.upb.c',
'src/core/ext/transport/inproc/inproc_plugin.cc', 'src/core/ext/transport/inproc/inproc_plugin.cc',
'src/core/ext/transport/inproc/inproc_transport.cc', 'src/core/ext/transport/inproc/inproc_transport.cc',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc', 'src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc',
@ -1435,16 +1481,6 @@
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc', 'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc',
'src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc', 'src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc',
'src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c', 'src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c',
'src/core/ext/upb-generated/google/api/annotations.upb.c',
'src/core/ext/upb-generated/google/api/http.upb.c',
'src/core/ext/upb-generated/google/protobuf/any.upb.c',
'src/core/ext/upb-generated/google/protobuf/descriptor.upb.c',
'src/core/ext/upb-generated/google/protobuf/duration.upb.c',
'src/core/ext/upb-generated/google/protobuf/empty.upb.c',
'src/core/ext/upb-generated/google/protobuf/struct.upb.c',
'src/core/ext/upb-generated/google/protobuf/timestamp.upb.c',
'src/core/ext/upb-generated/google/protobuf/wrappers.upb.c',
'src/core/ext/upb-generated/google/rpc/status.upb.c',
'src/core/ext/filters/client_channel/lb_policy/xds/xds.cc', 'src/core/ext/filters/client_channel/lb_policy/xds/xds.cc',
'src/core/ext/filters/client_channel/lb_policy/xds/xds_channel.cc', 'src/core/ext/filters/client_channel/lb_policy/xds/xds_channel.cc',
'src/core/ext/filters/client_channel/lb_policy/xds/xds_client_stats.cc', 'src/core/ext/filters/client_channel/lb_policy/xds/xds_client_stats.cc',
@ -1452,6 +1488,7 @@
'src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/cds.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/cds.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/eds.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/eds.upb.c',
@ -1464,11 +1501,10 @@
'src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c',
'src/core/ext/upb-generated/envoy/type/percent.upb.c', 'src/core/ext/upb-generated/envoy/type/percent.upb.c',
'src/core/ext/upb-generated/envoy/type/range.upb.c', 'src/core/ext/upb-generated/envoy/type/range.upb.c',
'src/core/ext/upb-generated/gogoproto/gogo.upb.c',
'src/core/ext/upb-generated/validate/validate.upb.c',
'src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc', 'src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc',
'src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc', 'src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc',
'src/core/ext/filters/census/grpc_context.cc', 'src/core/ext/filters/census/grpc_context.cc',

@ -287,6 +287,7 @@
<file baseinstalldir="/" name="src/core/tsi/transport_security_interface.h" role="src" /> <file baseinstalldir="/" name="src/core/tsi/transport_security_interface.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/transport/chttp2/client/authority.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/transport/chttp2/client/authority.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/transport/chttp2/client/chttp2_connector.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/transport/chttp2/client/chttp2_connector.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/backend_metric.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/backup_poller.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/client_channel/backup_poller.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/client_channel.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/client_channel/client_channel.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/client_channel_channelz.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/client_channel/client_channel_channelz.h" role="src" />
@ -316,6 +317,19 @@
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/subchannel_pool_interface.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/client_channel/subchannel_pool_interface.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/deadline/deadline_filter.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/deadline/deadline_filter.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/gogoproto/gogo.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/validate/validate.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/api/annotations.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/api/http.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/any.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/descriptor.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/duration.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/empty.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/struct.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/timestamp.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/wrappers.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/rpc/status.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/tsi/fake_transport_security.h" role="src" /> <file baseinstalldir="/" name="src/core/tsi/fake_transport_security.h" role="src" />
<file baseinstalldir="/" name="src/core/tsi/local_transport_security.h" role="src" /> <file baseinstalldir="/" name="src/core/tsi/local_transport_security.h" role="src" />
<file baseinstalldir="/" name="src/core/tsi/ssl/session_cache/ssl_session.h" role="src" /> <file baseinstalldir="/" name="src/core/tsi/ssl/session_cache/ssl_session.h" role="src" />
@ -475,16 +489,6 @@
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/api/annotations.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/api/http.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/any.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/descriptor.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/duration.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/empty.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/struct.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/timestamp.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/wrappers.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/rpc/status.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/xds/xds_channel.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/xds/xds_channel.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/xds/xds_client_stats.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/xds/xds_client_stats.h" role="src" />
@ -492,6 +496,7 @@
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/cds.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/cds.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/discovery.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/discovery.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/eds.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/eds.upb.h" role="src" />
@ -504,11 +509,10 @@
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/percent.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/percent.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/range.upb.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/range.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/gogoproto/gogo.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/validate/validate.upb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/subchannel_list.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/subchannel_list.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h" role="src" />
@ -782,6 +786,7 @@
<file baseinstalldir="/" name="src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc" role="src" /> <file baseinstalldir="/" name="src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/transport/chttp2/client/authority.cc" role="src" /> <file baseinstalldir="/" name="src/core/ext/transport/chttp2/client/authority.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/transport/chttp2/client/chttp2_connector.cc" role="src" /> <file baseinstalldir="/" name="src/core/ext/transport/chttp2/client/chttp2_connector.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/backend_metric.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/backup_poller.cc" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/client_channel/backup_poller.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/channel_connectivity.cc" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/client_channel/channel_connectivity.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/client_channel.cc" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/client_channel/client_channel.cc" role="src" />
@ -810,6 +815,19 @@
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/subchannel_pool_interface.cc" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/client_channel/subchannel_pool_interface.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/deadline/deadline_filter.cc" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/deadline/deadline_filter.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/gogoproto/gogo.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/validate/validate.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/api/annotations.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/api/http.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/any.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/descriptor.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/duration.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/empty.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/struct.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/timestamp.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/wrappers.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/rpc/status.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/tsi/fake_transport_security.cc" role="src" /> <file baseinstalldir="/" name="src/core/tsi/fake_transport_security.cc" role="src" />
<file baseinstalldir="/" name="src/core/tsi/local_transport_security.cc" role="src" /> <file baseinstalldir="/" name="src/core/tsi/local_transport_security.cc" role="src" />
<file baseinstalldir="/" name="src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc" role="src" /> <file baseinstalldir="/" name="src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc" role="src" />
@ -829,16 +847,6 @@
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/api/annotations.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/api/http.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/any.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/descriptor.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/duration.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/empty.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/struct.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/timestamp.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/protobuf/wrappers.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/google/rpc/status.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/xds/xds.cc" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/xds/xds.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_secure.cc" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_secure.cc" role="src" />
@ -847,6 +855,7 @@
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/cds.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/cds.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/eds.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/eds.upb.c" role="src" />
@ -859,11 +868,10 @@
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/percent.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/percent.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/range.upb.c" role="src" /> <file baseinstalldir="/" name="src/core/ext/upb-generated/envoy/type/range.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/gogoproto/gogo.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/upb-generated/validate/validate.upb.c" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc" role="src" /> <file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc" role="src" />

@ -0,0 +1,78 @@
//
// Copyright 2019 gRPC authors.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
#include <grpc/support/port_platform.h>
#include "src/core/ext/filters/client_channel/backend_metric.h"
#include "src/core/lib/gprpp/string_view.h"
#include "udpa/data/orca/v1/orca_load_report.upb.h"
namespace grpc_core {
namespace {
template <typename EntryType>
Map<StringView, double, StringLess> ParseMap(
udpa_data_orca_v1_OrcaLoadReport* msg,
EntryType** (*entry_func)(udpa_data_orca_v1_OrcaLoadReport*, size_t*),
upb_strview (*key_func)(const EntryType*),
double (*value_func)(const EntryType*), Arena* arena) {
Map<StringView, double, StringLess> result;
size_t size;
const auto* const* entries = entry_func(msg, &size);
for (size_t i = 0; i < size; ++i) {
upb_strview key_view = key_func(entries[i]);
char* key = static_cast<char*>(arena->Alloc(key_view.size + 1));
memcpy(key, key_view.data, key_view.size);
result[StringView(key, key_view.size)] = value_func(entries[i]);
}
return result;
}
} // namespace
const LoadBalancingPolicy::BackendMetricData* ParseBackendMetricData(
const grpc_slice& serialized_load_report, Arena* arena) {
upb::Arena upb_arena;
udpa_data_orca_v1_OrcaLoadReport* msg =
udpa_data_orca_v1_OrcaLoadReport_parse(
reinterpret_cast<const char*>(
GRPC_SLICE_START_PTR(serialized_load_report)),
GRPC_SLICE_LENGTH(serialized_load_report), upb_arena.ptr());
if (msg == nullptr) return nullptr;
LoadBalancingPolicy::BackendMetricData* backend_metric_data =
arena->New<LoadBalancingPolicy::BackendMetricData>();
backend_metric_data->cpu_utilization =
udpa_data_orca_v1_OrcaLoadReport_cpu_utilization(msg);
backend_metric_data->mem_utilization =
udpa_data_orca_v1_OrcaLoadReport_mem_utilization(msg);
backend_metric_data->requests_per_second =
udpa_data_orca_v1_OrcaLoadReport_rps(msg);
backend_metric_data->request_cost =
ParseMap<udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry>(
msg, udpa_data_orca_v1_OrcaLoadReport_mutable_request_cost,
udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry_key,
udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry_value, arena);
backend_metric_data->utilization =
ParseMap<udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry>(
msg, udpa_data_orca_v1_OrcaLoadReport_mutable_utilization,
udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry_key,
udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry_value, arena);
return backend_metric_data;
}
} // namespace grpc_core

@ -0,0 +1,36 @@
//
// Copyright 2019 gRPC authors.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
#ifndef GRPC_CORE_EXT_FILTERS_CLIENT_CHANNEL_BACKEND_METRIC_H
#define GRPC_CORE_EXT_FILTERS_CLIENT_CHANNEL_BACKEND_METRIC_H
#include <grpc/support/port_platform.h>
#include <grpc/slice.h>
#include "src/core/ext/filters/client_channel/lb_policy.h"
#include "src/core/lib/gprpp/arena.h"
namespace grpc_core {
// Parses the serialized load report and allocates a BackendMetricData
// object on the arena.
const LoadBalancingPolicy::BackendMetricData* ParseBackendMetricData(
const grpc_slice& serialized_load_report, Arena* arena);
} // namespace grpc_core
#endif /* GRPC_CORE_EXT_FILTERS_CLIENT_CHANNEL_BACKEND_METRIC_H */

@ -31,6 +31,7 @@
#include <grpc/support/string_util.h> #include <grpc/support/string_util.h>
#include <grpc/support/sync.h> #include <grpc/support/sync.h>
#include "src/core/ext/filters/client_channel/backend_metric.h"
#include "src/core/ext/filters/client_channel/backup_poller.h" #include "src/core/ext/filters/client_channel/backup_poller.h"
#include "src/core/ext/filters/client_channel/global_subchannel_pool.h" #include "src/core/ext/filters/client_channel/global_subchannel_pool.h"
#include "src/core/ext/filters/client_channel/http_connect_handshaker.h" #include "src/core/ext/filters/client_channel/http_connect_handshaker.h"
@ -374,6 +375,19 @@ class CallData {
void* Alloc(size_t size) override { return calld_->arena_->Alloc(size); } void* Alloc(size_t size) override { return calld_->arena_->Alloc(size); }
const LoadBalancingPolicy::BackendMetricData* GetBackendMetricData()
override {
if (calld_->backend_metric_data_ == nullptr) {
grpc_linked_mdelem* md = calld_->recv_trailing_metadata_->idx.named
.x_endpoint_load_metrics_bin;
if (md != nullptr) {
calld_->backend_metric_data_ =
ParseBackendMetricData(GRPC_MDVALUE(md->md), calld_->arena_);
}
}
return calld_->backend_metric_data_;
}
private: private:
CallData* calld_; CallData* calld_;
}; };
@ -706,6 +720,7 @@ class CallData {
bool service_config_applied_ = false; bool service_config_applied_ = false;
QueuedPickCanceller* pick_canceller_ = nullptr; QueuedPickCanceller* pick_canceller_ = nullptr;
LbCallState lb_call_state_; LbCallState lb_call_state_;
const LoadBalancingPolicy::BackendMetricData* backend_metric_data_ = nullptr;
RefCountedPtr<ConnectedSubchannel> connected_subchannel_; RefCountedPtr<ConnectedSubchannel> connected_subchannel_;
void (*lb_recv_trailing_metadata_ready_)( void (*lb_recv_trailing_metadata_ready_)(
void* user_data, grpc_error* error, void* user_data, grpc_error* error,
@ -1927,6 +1942,10 @@ CallData::CallData(grpc_call_element* elem, const ChannelData& chand,
CallData::~CallData() { CallData::~CallData() {
grpc_slice_unref_internal(path_); grpc_slice_unref_internal(path_);
GRPC_ERROR_UNREF(cancel_error_); GRPC_ERROR_UNREF(cancel_error_);
if (backend_metric_data_ != nullptr) {
backend_metric_data_
->LoadBalancingPolicy::BackendMetricData::~BackendMetricData();
}
// Make sure there are no remaining pending batches. // Make sure there are no remaining pending batches.
for (size_t i = 0; i < GPR_ARRAY_SIZE(pending_batches_); ++i) { for (size_t i = 0; i < GPR_ARRAY_SIZE(pending_batches_); ++i) {
GPR_ASSERT(pending_batches_[i].batch == nullptr); GPR_ASSERT(pending_batches_[i].batch == nullptr);

@ -25,6 +25,7 @@
#include "src/core/ext/filters/client_channel/service_config.h" #include "src/core/ext/filters/client_channel/service_config.h"
#include "src/core/ext/filters/client_channel/subchannel_interface.h" #include "src/core/ext/filters/client_channel/subchannel_interface.h"
#include "src/core/lib/gprpp/abstract.h" #include "src/core/lib/gprpp/abstract.h"
#include "src/core/lib/gprpp/map.h"
#include "src/core/lib/gprpp/orphanable.h" #include "src/core/lib/gprpp/orphanable.h"
#include "src/core/lib/gprpp/ref_counted_ptr.h" #include "src/core/lib/gprpp/ref_counted_ptr.h"
#include "src/core/lib/gprpp/string_view.h" #include "src/core/lib/gprpp/string_view.h"
@ -77,6 +78,26 @@ extern DebugOnlyTraceFlag grpc_trace_lb_policy_refcount;
// interested_parties() hooks from the API. // interested_parties() hooks from the API.
class LoadBalancingPolicy : public InternallyRefCounted<LoadBalancingPolicy> { class LoadBalancingPolicy : public InternallyRefCounted<LoadBalancingPolicy> {
public: public:
// Represents backend metrics reported by the backend to the client.
struct BackendMetricData {
/// CPU utilization expressed as a fraction of available CPU resources.
double cpu_utilization;
/// Memory utilization expressed as a fraction of available memory
/// resources.
double mem_utilization;
/// Total requests per second being served by the backend. This
/// should include all services that a backend is responsible for.
uint64_t requests_per_second;
/// Application-specific requests cost metrics. Metric names are
/// determined by the application. Each value is an absolute cost
/// (e.g. 3487 bytes of storage) associated with the request.
Map<StringView, double, StringLess> request_cost;
/// Application-specific resource utilization metrics. Metric names
/// are determined by the application. Each value is expressed as a
/// fraction of total resources available.
Map<StringView, double, StringLess> utilization;
};
/// Interface for accessing per-call state. /// Interface for accessing per-call state.
/// Implemented by the client channel and used by the SubchannelPicker. /// Implemented by the client channel and used by the SubchannelPicker.
class CallState { class CallState {
@ -90,6 +111,10 @@ class LoadBalancingPolicy : public InternallyRefCounted<LoadBalancingPolicy> {
/// for allocations that need to be made on a per-call basis. /// for allocations that need to be made on a per-call basis.
virtual void* Alloc(size_t size) GRPC_ABSTRACT; virtual void* Alloc(size_t size) GRPC_ABSTRACT;
/// Returns the backend metric data returned by the server for the call,
/// or null if no backend metric data was returned.
virtual const BackendMetricData* GetBackendMetricData() GRPC_ABSTRACT;
GRPC_ABSTRACT_BASE_CLASS GRPC_ABSTRACT_BASE_CLASS
}; };
@ -175,6 +200,7 @@ class LoadBalancingPolicy : public InternallyRefCounted<LoadBalancingPolicy> {
/// modified by the callback. The callback does not take ownership, /// modified by the callback. The callback does not take ownership,
/// however, so any data that needs to be used after returning must /// however, so any data that needs to be used after returning must
/// be copied. /// be copied.
/// call_state can be used to obtain backend metric data.
// TODO(roth): Replace grpc_error with something better before we allow // TODO(roth): Replace grpc_error with something better before we allow
// people outside of gRPC team to use this API. // people outside of gRPC team to use this API.
void (*recv_trailing_metadata_ready)( void (*recv_trailing_metadata_ready)(

@ -11,6 +11,8 @@
#include "envoy/api/v2/auth/cert.upb.h" #include "envoy/api/v2/auth/cert.upb.h"
#include "envoy/api/v2/core/base.upb.h" #include "envoy/api/v2/core/base.upb.h"
#include "envoy/api/v2/core/config_source.upb.h" #include "envoy/api/v2/core/config_source.upb.h"
#include "google/protobuf/any.upb.h"
#include "google/protobuf/struct.upb.h"
#include "google/protobuf/wrappers.upb.h" #include "google/protobuf/wrappers.upb.h"
#include "validate/validate.upb.h" #include "validate/validate.upb.h"
#include "gogoproto/gogo.upb.h" #include "gogoproto/gogo.upb.h"
@ -30,22 +32,41 @@ const upb_msglayout envoy_api_v2_auth_TlsParameters_msginit = {
UPB_SIZE(24, 32), 4, false, UPB_SIZE(24, 32), 4, false,
}; };
static const upb_msglayout *const envoy_api_v2_auth_TlsCertificate_submsgs[5] = { static const upb_msglayout *const envoy_api_v2_auth_PrivateKeyProvider_submsgs[2] = {
&google_protobuf_Any_msginit,
&google_protobuf_Struct_msginit,
};
static const upb_msglayout_field envoy_api_v2_auth_PrivateKeyProvider__fields[3] = {
{1, UPB_SIZE(0, 0), 0, 0, 9, 1},
{2, UPB_SIZE(8, 16), UPB_SIZE(-13, -25), 1, 11, 1},
{3, UPB_SIZE(8, 16), UPB_SIZE(-13, -25), 0, 11, 1},
};
const upb_msglayout envoy_api_v2_auth_PrivateKeyProvider_msginit = {
&envoy_api_v2_auth_PrivateKeyProvider_submsgs[0],
&envoy_api_v2_auth_PrivateKeyProvider__fields[0],
UPB_SIZE(16, 32), 3, false,
};
static const upb_msglayout *const envoy_api_v2_auth_TlsCertificate_submsgs[6] = {
&envoy_api_v2_auth_PrivateKeyProvider_msginit,
&envoy_api_v2_core_DataSource_msginit, &envoy_api_v2_core_DataSource_msginit,
}; };
static const upb_msglayout_field envoy_api_v2_auth_TlsCertificate__fields[5] = { static const upb_msglayout_field envoy_api_v2_auth_TlsCertificate__fields[6] = {
{1, UPB_SIZE(0, 0), 0, 0, 11, 1}, {1, UPB_SIZE(0, 0), 0, 1, 11, 1},
{2, UPB_SIZE(4, 8), 0, 0, 11, 1}, {2, UPB_SIZE(4, 8), 0, 1, 11, 1},
{3, UPB_SIZE(8, 16), 0, 0, 11, 1}, {3, UPB_SIZE(8, 16), 0, 1, 11, 1},
{4, UPB_SIZE(12, 24), 0, 0, 11, 1}, {4, UPB_SIZE(12, 24), 0, 1, 11, 1},
{5, UPB_SIZE(16, 32), 0, 0, 11, 3}, {5, UPB_SIZE(20, 40), 0, 1, 11, 3},
{6, UPB_SIZE(16, 32), 0, 0, 11, 1},
}; };
const upb_msglayout envoy_api_v2_auth_TlsCertificate_msginit = { const upb_msglayout envoy_api_v2_auth_TlsCertificate_msginit = {
&envoy_api_v2_auth_TlsCertificate_submsgs[0], &envoy_api_v2_auth_TlsCertificate_submsgs[0],
&envoy_api_v2_auth_TlsCertificate__fields[0], &envoy_api_v2_auth_TlsCertificate__fields[0],
UPB_SIZE(20, 40), 5, false, UPB_SIZE(24, 48), 6, false,
}; };
static const upb_msglayout *const envoy_api_v2_auth_TlsSessionTicketKeys_submsgs[1] = { static const upb_msglayout *const envoy_api_v2_auth_TlsSessionTicketKeys_submsgs[1] = {

@ -21,6 +21,7 @@ extern "C" {
#endif #endif
struct envoy_api_v2_auth_TlsParameters; struct envoy_api_v2_auth_TlsParameters;
struct envoy_api_v2_auth_PrivateKeyProvider;
struct envoy_api_v2_auth_TlsCertificate; struct envoy_api_v2_auth_TlsCertificate;
struct envoy_api_v2_auth_TlsSessionTicketKeys; struct envoy_api_v2_auth_TlsSessionTicketKeys;
struct envoy_api_v2_auth_CertificateValidationContext; struct envoy_api_v2_auth_CertificateValidationContext;
@ -31,6 +32,7 @@ struct envoy_api_v2_auth_DownstreamTlsContext;
struct envoy_api_v2_auth_SdsSecretConfig; struct envoy_api_v2_auth_SdsSecretConfig;
struct envoy_api_v2_auth_Secret; struct envoy_api_v2_auth_Secret;
typedef struct envoy_api_v2_auth_TlsParameters envoy_api_v2_auth_TlsParameters; typedef struct envoy_api_v2_auth_TlsParameters envoy_api_v2_auth_TlsParameters;
typedef struct envoy_api_v2_auth_PrivateKeyProvider envoy_api_v2_auth_PrivateKeyProvider;
typedef struct envoy_api_v2_auth_TlsCertificate envoy_api_v2_auth_TlsCertificate; typedef struct envoy_api_v2_auth_TlsCertificate envoy_api_v2_auth_TlsCertificate;
typedef struct envoy_api_v2_auth_TlsSessionTicketKeys envoy_api_v2_auth_TlsSessionTicketKeys; typedef struct envoy_api_v2_auth_TlsSessionTicketKeys envoy_api_v2_auth_TlsSessionTicketKeys;
typedef struct envoy_api_v2_auth_CertificateValidationContext envoy_api_v2_auth_CertificateValidationContext; typedef struct envoy_api_v2_auth_CertificateValidationContext envoy_api_v2_auth_CertificateValidationContext;
@ -41,6 +43,7 @@ typedef struct envoy_api_v2_auth_DownstreamTlsContext envoy_api_v2_auth_Downstre
typedef struct envoy_api_v2_auth_SdsSecretConfig envoy_api_v2_auth_SdsSecretConfig; typedef struct envoy_api_v2_auth_SdsSecretConfig envoy_api_v2_auth_SdsSecretConfig;
typedef struct envoy_api_v2_auth_Secret envoy_api_v2_auth_Secret; typedef struct envoy_api_v2_auth_Secret envoy_api_v2_auth_Secret;
extern const upb_msglayout envoy_api_v2_auth_TlsParameters_msginit; extern const upb_msglayout envoy_api_v2_auth_TlsParameters_msginit;
extern const upb_msglayout envoy_api_v2_auth_PrivateKeyProvider_msginit;
extern const upb_msglayout envoy_api_v2_auth_TlsCertificate_msginit; extern const upb_msglayout envoy_api_v2_auth_TlsCertificate_msginit;
extern const upb_msglayout envoy_api_v2_auth_TlsSessionTicketKeys_msginit; extern const upb_msglayout envoy_api_v2_auth_TlsSessionTicketKeys_msginit;
extern const upb_msglayout envoy_api_v2_auth_CertificateValidationContext_msginit; extern const upb_msglayout envoy_api_v2_auth_CertificateValidationContext_msginit;
@ -52,11 +55,15 @@ extern const upb_msglayout envoy_api_v2_auth_SdsSecretConfig_msginit;
extern const upb_msglayout envoy_api_v2_auth_Secret_msginit; extern const upb_msglayout envoy_api_v2_auth_Secret_msginit;
struct envoy_api_v2_core_ConfigSource; struct envoy_api_v2_core_ConfigSource;
struct envoy_api_v2_core_DataSource; struct envoy_api_v2_core_DataSource;
struct google_protobuf_Any;
struct google_protobuf_BoolValue; struct google_protobuf_BoolValue;
struct google_protobuf_Struct;
struct google_protobuf_UInt32Value; struct google_protobuf_UInt32Value;
extern const upb_msglayout envoy_api_v2_core_ConfigSource_msginit; extern const upb_msglayout envoy_api_v2_core_ConfigSource_msginit;
extern const upb_msglayout envoy_api_v2_core_DataSource_msginit; extern const upb_msglayout envoy_api_v2_core_DataSource_msginit;
extern const upb_msglayout google_protobuf_Any_msginit;
extern const upb_msglayout google_protobuf_BoolValue_msginit; extern const upb_msglayout google_protobuf_BoolValue_msginit;
extern const upb_msglayout google_protobuf_Struct_msginit;
extern const upb_msglayout google_protobuf_UInt32Value_msginit; extern const upb_msglayout google_protobuf_UInt32Value_msginit;
typedef enum { typedef enum {
@ -114,6 +121,61 @@ UPB_INLINE bool envoy_api_v2_auth_TlsParameters_add_ecdh_curves(envoy_api_v2_aut
msg, UPB_SIZE(20, 24), UPB_SIZE(8, 16), UPB_TYPE_STRING, &val, arena); msg, UPB_SIZE(20, 24), UPB_SIZE(8, 16), UPB_TYPE_STRING, &val, arena);
} }
/* envoy.api.v2.auth.PrivateKeyProvider */
UPB_INLINE envoy_api_v2_auth_PrivateKeyProvider *envoy_api_v2_auth_PrivateKeyProvider_new(upb_arena *arena) {
return (envoy_api_v2_auth_PrivateKeyProvider *)upb_msg_new(&envoy_api_v2_auth_PrivateKeyProvider_msginit, arena);
}
UPB_INLINE envoy_api_v2_auth_PrivateKeyProvider *envoy_api_v2_auth_PrivateKeyProvider_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_api_v2_auth_PrivateKeyProvider *ret = envoy_api_v2_auth_PrivateKeyProvider_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_api_v2_auth_PrivateKeyProvider_msginit, arena)) ? ret : NULL;
}
UPB_INLINE char *envoy_api_v2_auth_PrivateKeyProvider_serialize(const envoy_api_v2_auth_PrivateKeyProvider *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_api_v2_auth_PrivateKeyProvider_msginit, arena, len);
}
typedef enum {
envoy_api_v2_auth_PrivateKeyProvider_config_type_config = 2,
envoy_api_v2_auth_PrivateKeyProvider_config_type_typed_config = 3,
envoy_api_v2_auth_PrivateKeyProvider_config_type_NOT_SET = 0
} envoy_api_v2_auth_PrivateKeyProvider_config_type_oneofcases;
UPB_INLINE envoy_api_v2_auth_PrivateKeyProvider_config_type_oneofcases envoy_api_v2_auth_PrivateKeyProvider_config_type_case(const envoy_api_v2_auth_PrivateKeyProvider* msg) { return (envoy_api_v2_auth_PrivateKeyProvider_config_type_oneofcases)UPB_FIELD_AT(msg, int32_t, UPB_SIZE(12, 24)); }
UPB_INLINE upb_strview envoy_api_v2_auth_PrivateKeyProvider_provider_name(const envoy_api_v2_auth_PrivateKeyProvider *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(0, 0)); }
UPB_INLINE bool envoy_api_v2_auth_PrivateKeyProvider_has_config(const envoy_api_v2_auth_PrivateKeyProvider *msg) { return _upb_has_oneof_field(msg, UPB_SIZE(12, 24), 2); }
UPB_INLINE const struct google_protobuf_Struct* envoy_api_v2_auth_PrivateKeyProvider_config(const envoy_api_v2_auth_PrivateKeyProvider *msg) { return UPB_READ_ONEOF(msg, const struct google_protobuf_Struct*, UPB_SIZE(8, 16), UPB_SIZE(12, 24), 2, NULL); }
UPB_INLINE bool envoy_api_v2_auth_PrivateKeyProvider_has_typed_config(const envoy_api_v2_auth_PrivateKeyProvider *msg) { return _upb_has_oneof_field(msg, UPB_SIZE(12, 24), 3); }
UPB_INLINE const struct google_protobuf_Any* envoy_api_v2_auth_PrivateKeyProvider_typed_config(const envoy_api_v2_auth_PrivateKeyProvider *msg) { return UPB_READ_ONEOF(msg, const struct google_protobuf_Any*, UPB_SIZE(8, 16), UPB_SIZE(12, 24), 3, NULL); }
UPB_INLINE void envoy_api_v2_auth_PrivateKeyProvider_set_provider_name(envoy_api_v2_auth_PrivateKeyProvider *msg, upb_strview value) {
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(0, 0)) = value;
}
UPB_INLINE void envoy_api_v2_auth_PrivateKeyProvider_set_config(envoy_api_v2_auth_PrivateKeyProvider *msg, struct google_protobuf_Struct* value) {
UPB_WRITE_ONEOF(msg, struct google_protobuf_Struct*, UPB_SIZE(8, 16), value, UPB_SIZE(12, 24), 2);
}
UPB_INLINE struct google_protobuf_Struct* envoy_api_v2_auth_PrivateKeyProvider_mutable_config(envoy_api_v2_auth_PrivateKeyProvider *msg, upb_arena *arena) {
struct google_protobuf_Struct* sub = (struct google_protobuf_Struct*)envoy_api_v2_auth_PrivateKeyProvider_config(msg);
if (sub == NULL) {
sub = (struct google_protobuf_Struct*)upb_msg_new(&google_protobuf_Struct_msginit, arena);
if (!sub) return NULL;
envoy_api_v2_auth_PrivateKeyProvider_set_config(msg, sub);
}
return sub;
}
UPB_INLINE void envoy_api_v2_auth_PrivateKeyProvider_set_typed_config(envoy_api_v2_auth_PrivateKeyProvider *msg, struct google_protobuf_Any* value) {
UPB_WRITE_ONEOF(msg, struct google_protobuf_Any*, UPB_SIZE(8, 16), value, UPB_SIZE(12, 24), 3);
}
UPB_INLINE struct google_protobuf_Any* envoy_api_v2_auth_PrivateKeyProvider_mutable_typed_config(envoy_api_v2_auth_PrivateKeyProvider *msg, upb_arena *arena) {
struct google_protobuf_Any* sub = (struct google_protobuf_Any*)envoy_api_v2_auth_PrivateKeyProvider_typed_config(msg);
if (sub == NULL) {
sub = (struct google_protobuf_Any*)upb_msg_new(&google_protobuf_Any_msginit, arena);
if (!sub) return NULL;
envoy_api_v2_auth_PrivateKeyProvider_set_typed_config(msg, sub);
}
return sub;
}
/* envoy.api.v2.auth.TlsCertificate */ /* envoy.api.v2.auth.TlsCertificate */
UPB_INLINE envoy_api_v2_auth_TlsCertificate *envoy_api_v2_auth_TlsCertificate_new(upb_arena *arena) { UPB_INLINE envoy_api_v2_auth_TlsCertificate *envoy_api_v2_auth_TlsCertificate_new(upb_arena *arena) {
@ -132,7 +194,8 @@ UPB_INLINE const struct envoy_api_v2_core_DataSource* envoy_api_v2_auth_TlsCerti
UPB_INLINE const struct envoy_api_v2_core_DataSource* envoy_api_v2_auth_TlsCertificate_private_key(const envoy_api_v2_auth_TlsCertificate *msg) { return UPB_FIELD_AT(msg, const struct envoy_api_v2_core_DataSource*, UPB_SIZE(4, 8)); } UPB_INLINE const struct envoy_api_v2_core_DataSource* envoy_api_v2_auth_TlsCertificate_private_key(const envoy_api_v2_auth_TlsCertificate *msg) { return UPB_FIELD_AT(msg, const struct envoy_api_v2_core_DataSource*, UPB_SIZE(4, 8)); }
UPB_INLINE const struct envoy_api_v2_core_DataSource* envoy_api_v2_auth_TlsCertificate_password(const envoy_api_v2_auth_TlsCertificate *msg) { return UPB_FIELD_AT(msg, const struct envoy_api_v2_core_DataSource*, UPB_SIZE(8, 16)); } UPB_INLINE const struct envoy_api_v2_core_DataSource* envoy_api_v2_auth_TlsCertificate_password(const envoy_api_v2_auth_TlsCertificate *msg) { return UPB_FIELD_AT(msg, const struct envoy_api_v2_core_DataSource*, UPB_SIZE(8, 16)); }
UPB_INLINE const struct envoy_api_v2_core_DataSource* envoy_api_v2_auth_TlsCertificate_ocsp_staple(const envoy_api_v2_auth_TlsCertificate *msg) { return UPB_FIELD_AT(msg, const struct envoy_api_v2_core_DataSource*, UPB_SIZE(12, 24)); } UPB_INLINE const struct envoy_api_v2_core_DataSource* envoy_api_v2_auth_TlsCertificate_ocsp_staple(const envoy_api_v2_auth_TlsCertificate *msg) { return UPB_FIELD_AT(msg, const struct envoy_api_v2_core_DataSource*, UPB_SIZE(12, 24)); }
UPB_INLINE const struct envoy_api_v2_core_DataSource* const* envoy_api_v2_auth_TlsCertificate_signed_certificate_timestamp(const envoy_api_v2_auth_TlsCertificate *msg, size_t *len) { return (const struct envoy_api_v2_core_DataSource* const*)_upb_array_accessor(msg, UPB_SIZE(16, 32), len); } UPB_INLINE const struct envoy_api_v2_core_DataSource* const* envoy_api_v2_auth_TlsCertificate_signed_certificate_timestamp(const envoy_api_v2_auth_TlsCertificate *msg, size_t *len) { return (const struct envoy_api_v2_core_DataSource* const*)_upb_array_accessor(msg, UPB_SIZE(20, 40), len); }
UPB_INLINE const envoy_api_v2_auth_PrivateKeyProvider* envoy_api_v2_auth_TlsCertificate_private_key_provider(const envoy_api_v2_auth_TlsCertificate *msg) { return UPB_FIELD_AT(msg, const envoy_api_v2_auth_PrivateKeyProvider*, UPB_SIZE(16, 32)); }
UPB_INLINE void envoy_api_v2_auth_TlsCertificate_set_certificate_chain(envoy_api_v2_auth_TlsCertificate *msg, struct envoy_api_v2_core_DataSource* value) { UPB_INLINE void envoy_api_v2_auth_TlsCertificate_set_certificate_chain(envoy_api_v2_auth_TlsCertificate *msg, struct envoy_api_v2_core_DataSource* value) {
UPB_FIELD_AT(msg, struct envoy_api_v2_core_DataSource*, UPB_SIZE(0, 0)) = value; UPB_FIELD_AT(msg, struct envoy_api_v2_core_DataSource*, UPB_SIZE(0, 0)) = value;
@ -183,18 +246,30 @@ UPB_INLINE struct envoy_api_v2_core_DataSource* envoy_api_v2_auth_TlsCertificate
return sub; return sub;
} }
UPB_INLINE struct envoy_api_v2_core_DataSource** envoy_api_v2_auth_TlsCertificate_mutable_signed_certificate_timestamp(envoy_api_v2_auth_TlsCertificate *msg, size_t *len) { UPB_INLINE struct envoy_api_v2_core_DataSource** envoy_api_v2_auth_TlsCertificate_mutable_signed_certificate_timestamp(envoy_api_v2_auth_TlsCertificate *msg, size_t *len) {
return (struct envoy_api_v2_core_DataSource**)_upb_array_mutable_accessor(msg, UPB_SIZE(16, 32), len); return (struct envoy_api_v2_core_DataSource**)_upb_array_mutable_accessor(msg, UPB_SIZE(20, 40), len);
} }
UPB_INLINE struct envoy_api_v2_core_DataSource** envoy_api_v2_auth_TlsCertificate_resize_signed_certificate_timestamp(envoy_api_v2_auth_TlsCertificate *msg, size_t len, upb_arena *arena) { UPB_INLINE struct envoy_api_v2_core_DataSource** envoy_api_v2_auth_TlsCertificate_resize_signed_certificate_timestamp(envoy_api_v2_auth_TlsCertificate *msg, size_t len, upb_arena *arena) {
return (struct envoy_api_v2_core_DataSource**)_upb_array_resize_accessor(msg, UPB_SIZE(16, 32), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena); return (struct envoy_api_v2_core_DataSource**)_upb_array_resize_accessor(msg, UPB_SIZE(20, 40), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
} }
UPB_INLINE struct envoy_api_v2_core_DataSource* envoy_api_v2_auth_TlsCertificate_add_signed_certificate_timestamp(envoy_api_v2_auth_TlsCertificate *msg, upb_arena *arena) { UPB_INLINE struct envoy_api_v2_core_DataSource* envoy_api_v2_auth_TlsCertificate_add_signed_certificate_timestamp(envoy_api_v2_auth_TlsCertificate *msg, upb_arena *arena) {
struct envoy_api_v2_core_DataSource* sub = (struct envoy_api_v2_core_DataSource*)upb_msg_new(&envoy_api_v2_core_DataSource_msginit, arena); struct envoy_api_v2_core_DataSource* sub = (struct envoy_api_v2_core_DataSource*)upb_msg_new(&envoy_api_v2_core_DataSource_msginit, arena);
bool ok = _upb_array_append_accessor( bool ok = _upb_array_append_accessor(
msg, UPB_SIZE(16, 32), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena); msg, UPB_SIZE(20, 40), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
if (!ok) return NULL; if (!ok) return NULL;
return sub; return sub;
} }
UPB_INLINE void envoy_api_v2_auth_TlsCertificate_set_private_key_provider(envoy_api_v2_auth_TlsCertificate *msg, envoy_api_v2_auth_PrivateKeyProvider* value) {
UPB_FIELD_AT(msg, envoy_api_v2_auth_PrivateKeyProvider*, UPB_SIZE(16, 32)) = value;
}
UPB_INLINE struct envoy_api_v2_auth_PrivateKeyProvider* envoy_api_v2_auth_TlsCertificate_mutable_private_key_provider(envoy_api_v2_auth_TlsCertificate *msg, upb_arena *arena) {
struct envoy_api_v2_auth_PrivateKeyProvider* sub = (struct envoy_api_v2_auth_PrivateKeyProvider*)envoy_api_v2_auth_TlsCertificate_private_key_provider(msg);
if (sub == NULL) {
sub = (struct envoy_api_v2_auth_PrivateKeyProvider*)upb_msg_new(&envoy_api_v2_auth_PrivateKeyProvider_msginit, arena);
if (!sub) return NULL;
envoy_api_v2_auth_TlsCertificate_set_private_key_provider(msg, sub);
}
return sub;
}
/* envoy.api.v2.auth.TlsSessionTicketKeys */ /* envoy.api.v2.auth.TlsSessionTicketKeys */

@ -17,6 +17,7 @@
#include "envoy/api/v2/core/health_check.upb.h" #include "envoy/api/v2/core/health_check.upb.h"
#include "envoy/api/v2/core/protocol.upb.h" #include "envoy/api/v2/core/protocol.upb.h"
#include "envoy/api/v2/cluster/circuit_breaker.upb.h" #include "envoy/api/v2/cluster/circuit_breaker.upb.h"
#include "envoy/api/v2/cluster/filter.upb.h"
#include "envoy/api/v2/cluster/outlier_detection.upb.h" #include "envoy/api/v2/cluster/outlier_detection.upb.h"
#include "envoy/api/v2/eds.upb.h" #include "envoy/api/v2/eds.upb.h"
#include "envoy/type/percent.upb.h" #include "envoy/type/percent.upb.h"
@ -30,7 +31,7 @@
#include "upb/port_def.inc" #include "upb/port_def.inc"
static const upb_msglayout *const envoy_api_v2_Cluster_submsgs[28] = { static const upb_msglayout *const envoy_api_v2_Cluster_submsgs[29] = {
&envoy_api_v2_Cluster_CommonLbConfig_msginit, &envoy_api_v2_Cluster_CommonLbConfig_msginit,
&envoy_api_v2_Cluster_CustomClusterType_msginit, &envoy_api_v2_Cluster_CustomClusterType_msginit,
&envoy_api_v2_Cluster_EdsClusterConfig_msginit, &envoy_api_v2_Cluster_EdsClusterConfig_msginit,
@ -44,6 +45,7 @@ static const upb_msglayout *const envoy_api_v2_Cluster_submsgs[28] = {
&envoy_api_v2_UpstreamConnectionOptions_msginit, &envoy_api_v2_UpstreamConnectionOptions_msginit,
&envoy_api_v2_auth_UpstreamTlsContext_msginit, &envoy_api_v2_auth_UpstreamTlsContext_msginit,
&envoy_api_v2_cluster_CircuitBreakers_msginit, &envoy_api_v2_cluster_CircuitBreakers_msginit,
&envoy_api_v2_cluster_Filter_msginit,
&envoy_api_v2_cluster_OutlierDetection_msginit, &envoy_api_v2_cluster_OutlierDetection_msginit,
&envoy_api_v2_core_Address_msginit, &envoy_api_v2_core_Address_msginit,
&envoy_api_v2_core_BindConfig_msginit, &envoy_api_v2_core_BindConfig_msginit,
@ -57,49 +59,51 @@ static const upb_msglayout *const envoy_api_v2_Cluster_submsgs[28] = {
&google_protobuf_UInt32Value_msginit, &google_protobuf_UInt32Value_msginit,
}; };
static const upb_msglayout_field envoy_api_v2_Cluster__fields[36] = { static const upb_msglayout_field envoy_api_v2_Cluster__fields[38] = {
{1, UPB_SIZE(28, 32), 0, 0, 9, 1}, {1, UPB_SIZE(28, 32), 0, 0, 9, 1},
{2, UPB_SIZE(144, 256), UPB_SIZE(-153, -265), 0, 14, 1}, {2, UPB_SIZE(144, 264), UPB_SIZE(-153, -273), 0, 14, 1},
{3, UPB_SIZE(44, 64), 0, 2, 11, 1}, {3, UPB_SIZE(44, 64), 0, 2, 11, 1},
{4, UPB_SIZE(48, 72), 0, 22, 11, 1}, {4, UPB_SIZE(48, 72), 0, 23, 11, 1},
{5, UPB_SIZE(52, 80), 0, 23, 11, 1}, {5, UPB_SIZE(52, 80), 0, 24, 11, 1},
{6, UPB_SIZE(0, 0), 0, 0, 14, 1}, {6, UPB_SIZE(0, 0), 0, 0, 14, 1},
{7, UPB_SIZE(120, 216), 0, 14, 11, 3}, {7, UPB_SIZE(120, 216), 0, 15, 11, 3},
{8, UPB_SIZE(124, 224), 0, 16, 11, 3}, {8, UPB_SIZE(124, 224), 0, 17, 11, 3},
{9, UPB_SIZE(56, 88), 0, 23, 11, 1}, {9, UPB_SIZE(56, 88), 0, 24, 11, 1},
{10, UPB_SIZE(60, 96), 0, 12, 11, 1}, {10, UPB_SIZE(60, 96), 0, 12, 11, 1},
{11, UPB_SIZE(64, 104), 0, 11, 11, 1}, {11, UPB_SIZE(64, 104), 0, 11, 11, 1},
{13, UPB_SIZE(68, 112), 0, 17, 11, 1}, {13, UPB_SIZE(68, 112), 0, 18, 11, 1},
{14, UPB_SIZE(72, 120), 0, 18, 11, 1}, {14, UPB_SIZE(72, 120), 0, 19, 11, 1},
{16, UPB_SIZE(76, 128), 0, 22, 11, 1}, {16, UPB_SIZE(76, 128), 0, 23, 11, 1},
{17, UPB_SIZE(8, 8), 0, 0, 14, 1}, {17, UPB_SIZE(8, 8), 0, 0, 14, 1},
{18, UPB_SIZE(128, 232), 0, 14, 11, 3}, {18, UPB_SIZE(128, 232), 0, 15, 11, 3},
{19, UPB_SIZE(80, 136), 0, 13, 11, 1}, {19, UPB_SIZE(80, 136), 0, 14, 11, 1},
{20, UPB_SIZE(84, 144), 0, 22, 11, 1}, {20, UPB_SIZE(84, 144), 0, 23, 11, 1},
{21, UPB_SIZE(88, 152), 0, 15, 11, 1}, {21, UPB_SIZE(88, 152), 0, 16, 11, 1},
{22, UPB_SIZE(92, 160), 0, 4, 11, 1}, {22, UPB_SIZE(92, 160), 0, 4, 11, 1},
{23, UPB_SIZE(156, 272), UPB_SIZE(-161, -281), 7, 11, 1}, {23, UPB_SIZE(156, 280), UPB_SIZE(-161, -289), 7, 11, 1},
{24, UPB_SIZE(96, 168), 0, 21, 11, 1}, {24, UPB_SIZE(96, 168), 0, 22, 11, 1},
{25, UPB_SIZE(100, 176), 0, 20, 11, 1}, {25, UPB_SIZE(100, 176), 0, 21, 11, 1},
{26, UPB_SIZE(16, 16), 0, 0, 14, 1}, {26, UPB_SIZE(16, 16), 0, 0, 14, 1},
{27, UPB_SIZE(104, 184), 0, 0, 11, 1}, {27, UPB_SIZE(104, 184), 0, 0, 11, 1},
{28, UPB_SIZE(36, 48), 0, 0, 9, 1}, {28, UPB_SIZE(36, 48), 0, 0, 9, 1},
{29, UPB_SIZE(108, 192), 0, 19, 11, 1}, {29, UPB_SIZE(108, 192), 0, 20, 11, 1},
{30, UPB_SIZE(112, 200), 0, 10, 11, 1}, {30, UPB_SIZE(112, 200), 0, 10, 11, 1},
{31, UPB_SIZE(24, 24), 0, 0, 8, 1}, {31, UPB_SIZE(24, 24), 0, 0, 8, 1},
{32, UPB_SIZE(25, 25), 0, 0, 8, 1}, {32, UPB_SIZE(25, 25), 0, 0, 8, 1},
{33, UPB_SIZE(116, 208), 0, 9, 11, 1}, {33, UPB_SIZE(116, 208), 0, 9, 11, 1},
{34, UPB_SIZE(156, 272), UPB_SIZE(-161, -281), 6, 11, 1}, {34, UPB_SIZE(156, 280), UPB_SIZE(-161, -289), 6, 11, 1},
{35, UPB_SIZE(132, 240), 0, 3, 11, 3}, {35, UPB_SIZE(132, 240), 0, 3, 11, 3},
{36, UPB_SIZE(136, 248), 0, 8, 11, 3}, {36, UPB_SIZE(136, 248), 0, 8, 11, 3},
{37, UPB_SIZE(156, 272), UPB_SIZE(-161, -281), 5, 11, 1}, {37, UPB_SIZE(156, 280), UPB_SIZE(-161, -289), 5, 11, 1},
{38, UPB_SIZE(144, 256), UPB_SIZE(-153, -265), 1, 11, 1}, {38, UPB_SIZE(144, 264), UPB_SIZE(-153, -273), 1, 11, 1},
{39, UPB_SIZE(26, 26), 0, 0, 8, 1},
{40, UPB_SIZE(140, 256), 0, 13, 11, 3},
}; };
const upb_msglayout envoy_api_v2_Cluster_msginit = { const upb_msglayout envoy_api_v2_Cluster_msginit = {
&envoy_api_v2_Cluster_submsgs[0], &envoy_api_v2_Cluster_submsgs[0],
&envoy_api_v2_Cluster__fields[0], &envoy_api_v2_Cluster__fields[0],
UPB_SIZE(168, 288), 36, false, UPB_SIZE(168, 304), 38, false,
}; };
static const upb_msglayout *const envoy_api_v2_Cluster_CustomClusterType_submsgs[1] = { static const upb_msglayout *const envoy_api_v2_Cluster_CustomClusterType_submsgs[1] = {
@ -167,29 +171,31 @@ static const upb_msglayout *const envoy_api_v2_Cluster_LbSubsetConfig_submsgs[2]
&google_protobuf_Struct_msginit, &google_protobuf_Struct_msginit,
}; };
static const upb_msglayout_field envoy_api_v2_Cluster_LbSubsetConfig__fields[6] = { static const upb_msglayout_field envoy_api_v2_Cluster_LbSubsetConfig__fields[7] = {
{1, UPB_SIZE(0, 0), 0, 0, 14, 1}, {1, UPB_SIZE(0, 0), 0, 0, 14, 1},
{2, UPB_SIZE(12, 16), 0, 1, 11, 1}, {2, UPB_SIZE(12, 16), 0, 1, 11, 1},
{3, UPB_SIZE(16, 24), 0, 0, 11, 3}, {3, UPB_SIZE(16, 24), 0, 0, 11, 3},
{4, UPB_SIZE(8, 8), 0, 0, 8, 1}, {4, UPB_SIZE(8, 8), 0, 0, 8, 1},
{5, UPB_SIZE(9, 9), 0, 0, 8, 1}, {5, UPB_SIZE(9, 9), 0, 0, 8, 1},
{6, UPB_SIZE(10, 10), 0, 0, 8, 1}, {6, UPB_SIZE(10, 10), 0, 0, 8, 1},
{7, UPB_SIZE(11, 11), 0, 0, 8, 1},
}; };
const upb_msglayout envoy_api_v2_Cluster_LbSubsetConfig_msginit = { const upb_msglayout envoy_api_v2_Cluster_LbSubsetConfig_msginit = {
&envoy_api_v2_Cluster_LbSubsetConfig_submsgs[0], &envoy_api_v2_Cluster_LbSubsetConfig_submsgs[0],
&envoy_api_v2_Cluster_LbSubsetConfig__fields[0], &envoy_api_v2_Cluster_LbSubsetConfig__fields[0],
UPB_SIZE(24, 32), 6, false, UPB_SIZE(24, 32), 7, false,
}; };
static const upb_msglayout_field envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector__fields[1] = { static const upb_msglayout_field envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector__fields[2] = {
{1, UPB_SIZE(0, 0), 0, 0, 9, 3}, {1, UPB_SIZE(8, 8), 0, 0, 9, 3},
{2, UPB_SIZE(0, 0), 0, 0, 14, 1},
}; };
const upb_msglayout envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector_msginit = { const upb_msglayout envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector_msginit = {
NULL, NULL,
&envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector__fields[0], &envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector__fields[0],
UPB_SIZE(4, 8), 1, false, UPB_SIZE(16, 16), 2, false,
}; };
static const upb_msglayout *const envoy_api_v2_Cluster_LeastRequestLbConfig_submsgs[1] = { static const upb_msglayout *const envoy_api_v2_Cluster_LeastRequestLbConfig_submsgs[1] = {
@ -239,18 +245,19 @@ static const upb_msglayout *const envoy_api_v2_Cluster_CommonLbConfig_submsgs[4]
&google_protobuf_Duration_msginit, &google_protobuf_Duration_msginit,
}; };
static const upb_msglayout_field envoy_api_v2_Cluster_CommonLbConfig__fields[5] = { static const upb_msglayout_field envoy_api_v2_Cluster_CommonLbConfig__fields[6] = {
{1, UPB_SIZE(4, 8), 0, 2, 11, 1}, {1, UPB_SIZE(4, 8), 0, 2, 11, 1},
{2, UPB_SIZE(12, 24), UPB_SIZE(-17, -33), 1, 11, 1}, {2, UPB_SIZE(12, 24), UPB_SIZE(-17, -33), 1, 11, 1},
{3, UPB_SIZE(12, 24), UPB_SIZE(-17, -33), 0, 11, 1}, {3, UPB_SIZE(12, 24), UPB_SIZE(-17, -33), 0, 11, 1},
{4, UPB_SIZE(8, 16), 0, 3, 11, 1}, {4, UPB_SIZE(8, 16), 0, 3, 11, 1},
{5, UPB_SIZE(0, 0), 0, 0, 8, 1}, {5, UPB_SIZE(0, 0), 0, 0, 8, 1},
{6, UPB_SIZE(1, 1), 0, 0, 8, 1},
}; };
const upb_msglayout envoy_api_v2_Cluster_CommonLbConfig_msginit = { const upb_msglayout envoy_api_v2_Cluster_CommonLbConfig_msginit = {
&envoy_api_v2_Cluster_CommonLbConfig_submsgs[0], &envoy_api_v2_Cluster_CommonLbConfig_submsgs[0],
&envoy_api_v2_Cluster_CommonLbConfig__fields[0], &envoy_api_v2_Cluster_CommonLbConfig__fields[0],
UPB_SIZE(20, 40), 5, false, UPB_SIZE(20, 40), 6, false,
}; };
static const upb_msglayout *const envoy_api_v2_Cluster_CommonLbConfig_ZoneAwareLbConfig_submsgs[2] = { static const upb_msglayout *const envoy_api_v2_Cluster_CommonLbConfig_ZoneAwareLbConfig_submsgs[2] = {

@ -68,6 +68,7 @@ extern const upb_msglayout envoy_api_v2_UpstreamConnectionOptions_msginit;
struct envoy_api_v2_ClusterLoadAssignment; struct envoy_api_v2_ClusterLoadAssignment;
struct envoy_api_v2_auth_UpstreamTlsContext; struct envoy_api_v2_auth_UpstreamTlsContext;
struct envoy_api_v2_cluster_CircuitBreakers; struct envoy_api_v2_cluster_CircuitBreakers;
struct envoy_api_v2_cluster_Filter;
struct envoy_api_v2_cluster_OutlierDetection; struct envoy_api_v2_cluster_OutlierDetection;
struct envoy_api_v2_core_Address; struct envoy_api_v2_core_Address;
struct envoy_api_v2_core_BindConfig; struct envoy_api_v2_core_BindConfig;
@ -88,6 +89,7 @@ struct google_protobuf_UInt64Value;
extern const upb_msglayout envoy_api_v2_ClusterLoadAssignment_msginit; extern const upb_msglayout envoy_api_v2_ClusterLoadAssignment_msginit;
extern const upb_msglayout envoy_api_v2_auth_UpstreamTlsContext_msginit; extern const upb_msglayout envoy_api_v2_auth_UpstreamTlsContext_msginit;
extern const upb_msglayout envoy_api_v2_cluster_CircuitBreakers_msginit; extern const upb_msglayout envoy_api_v2_cluster_CircuitBreakers_msginit;
extern const upb_msglayout envoy_api_v2_cluster_Filter_msginit;
extern const upb_msglayout envoy_api_v2_cluster_OutlierDetection_msginit; extern const upb_msglayout envoy_api_v2_cluster_OutlierDetection_msginit;
extern const upb_msglayout envoy_api_v2_core_Address_msginit; extern const upb_msglayout envoy_api_v2_core_Address_msginit;
extern const upb_msglayout envoy_api_v2_core_BindConfig_msginit; extern const upb_msglayout envoy_api_v2_core_BindConfig_msginit;
@ -141,6 +143,13 @@ typedef enum {
envoy_api_v2_Cluster_LbSubsetConfig_DEFAULT_SUBSET = 2 envoy_api_v2_Cluster_LbSubsetConfig_DEFAULT_SUBSET = 2
} envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetFallbackPolicy; } envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetFallbackPolicy;
typedef enum {
envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector_NOT_DEFINED = 0,
envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector_NO_FALLBACK = 1,
envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector_ANY_ENDPOINT = 2,
envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector_DEFAULT_SUBSET = 3
} envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector_LbSubsetSelectorFallbackPolicy;
typedef enum { typedef enum {
envoy_api_v2_Cluster_RingHashLbConfig_XX_HASH = 0, envoy_api_v2_Cluster_RingHashLbConfig_XX_HASH = 0,
envoy_api_v2_Cluster_RingHashLbConfig_MURMUR_HASH_2 = 1 envoy_api_v2_Cluster_RingHashLbConfig_MURMUR_HASH_2 = 1
@ -166,7 +175,7 @@ typedef enum {
envoy_api_v2_Cluster_cluster_discovery_type_cluster_type = 38, envoy_api_v2_Cluster_cluster_discovery_type_cluster_type = 38,
envoy_api_v2_Cluster_cluster_discovery_type_NOT_SET = 0 envoy_api_v2_Cluster_cluster_discovery_type_NOT_SET = 0
} envoy_api_v2_Cluster_cluster_discovery_type_oneofcases; } envoy_api_v2_Cluster_cluster_discovery_type_oneofcases;
UPB_INLINE envoy_api_v2_Cluster_cluster_discovery_type_oneofcases envoy_api_v2_Cluster_cluster_discovery_type_case(const envoy_api_v2_Cluster* msg) { return (envoy_api_v2_Cluster_cluster_discovery_type_oneofcases)UPB_FIELD_AT(msg, int32_t, UPB_SIZE(152, 264)); } UPB_INLINE envoy_api_v2_Cluster_cluster_discovery_type_oneofcases envoy_api_v2_Cluster_cluster_discovery_type_case(const envoy_api_v2_Cluster* msg) { return (envoy_api_v2_Cluster_cluster_discovery_type_oneofcases)UPB_FIELD_AT(msg, int32_t, UPB_SIZE(152, 272)); }
typedef enum { typedef enum {
envoy_api_v2_Cluster_lb_config_ring_hash_lb_config = 23, envoy_api_v2_Cluster_lb_config_ring_hash_lb_config = 23,
@ -174,11 +183,11 @@ typedef enum {
envoy_api_v2_Cluster_lb_config_least_request_lb_config = 37, envoy_api_v2_Cluster_lb_config_least_request_lb_config = 37,
envoy_api_v2_Cluster_lb_config_NOT_SET = 0 envoy_api_v2_Cluster_lb_config_NOT_SET = 0
} envoy_api_v2_Cluster_lb_config_oneofcases; } envoy_api_v2_Cluster_lb_config_oneofcases;
UPB_INLINE envoy_api_v2_Cluster_lb_config_oneofcases envoy_api_v2_Cluster_lb_config_case(const envoy_api_v2_Cluster* msg) { return (envoy_api_v2_Cluster_lb_config_oneofcases)UPB_FIELD_AT(msg, int32_t, UPB_SIZE(160, 280)); } UPB_INLINE envoy_api_v2_Cluster_lb_config_oneofcases envoy_api_v2_Cluster_lb_config_case(const envoy_api_v2_Cluster* msg) { return (envoy_api_v2_Cluster_lb_config_oneofcases)UPB_FIELD_AT(msg, int32_t, UPB_SIZE(160, 288)); }
UPB_INLINE upb_strview envoy_api_v2_Cluster_name(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(28, 32)); } UPB_INLINE upb_strview envoy_api_v2_Cluster_name(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(28, 32)); }
UPB_INLINE bool envoy_api_v2_Cluster_has_type(const envoy_api_v2_Cluster *msg) { return _upb_has_oneof_field(msg, UPB_SIZE(152, 264), 2); } UPB_INLINE bool envoy_api_v2_Cluster_has_type(const envoy_api_v2_Cluster *msg) { return _upb_has_oneof_field(msg, UPB_SIZE(152, 272), 2); }
UPB_INLINE int32_t envoy_api_v2_Cluster_type(const envoy_api_v2_Cluster *msg) { return UPB_READ_ONEOF(msg, int32_t, UPB_SIZE(144, 256), UPB_SIZE(152, 264), 2, envoy_api_v2_Cluster_STATIC); } UPB_INLINE int32_t envoy_api_v2_Cluster_type(const envoy_api_v2_Cluster *msg) { return UPB_READ_ONEOF(msg, int32_t, UPB_SIZE(144, 264), UPB_SIZE(152, 272), 2, envoy_api_v2_Cluster_STATIC); }
UPB_INLINE const envoy_api_v2_Cluster_EdsClusterConfig* envoy_api_v2_Cluster_eds_cluster_config(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, const envoy_api_v2_Cluster_EdsClusterConfig*, UPB_SIZE(44, 64)); } UPB_INLINE const envoy_api_v2_Cluster_EdsClusterConfig* envoy_api_v2_Cluster_eds_cluster_config(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, const envoy_api_v2_Cluster_EdsClusterConfig*, UPB_SIZE(44, 64)); }
UPB_INLINE const struct google_protobuf_Duration* envoy_api_v2_Cluster_connect_timeout(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_Duration*, UPB_SIZE(48, 72)); } UPB_INLINE const struct google_protobuf_Duration* envoy_api_v2_Cluster_connect_timeout(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_Duration*, UPB_SIZE(48, 72)); }
UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_Cluster_per_connection_buffer_limit_bytes(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(52, 80)); } UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_Cluster_per_connection_buffer_limit_bytes(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(52, 80)); }
@ -197,8 +206,8 @@ UPB_INLINE const struct envoy_api_v2_cluster_OutlierDetection* envoy_api_v2_Clus
UPB_INLINE const struct google_protobuf_Duration* envoy_api_v2_Cluster_cleanup_interval(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_Duration*, UPB_SIZE(84, 144)); } UPB_INLINE const struct google_protobuf_Duration* envoy_api_v2_Cluster_cleanup_interval(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_Duration*, UPB_SIZE(84, 144)); }
UPB_INLINE const struct envoy_api_v2_core_BindConfig* envoy_api_v2_Cluster_upstream_bind_config(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, const struct envoy_api_v2_core_BindConfig*, UPB_SIZE(88, 152)); } UPB_INLINE const struct envoy_api_v2_core_BindConfig* envoy_api_v2_Cluster_upstream_bind_config(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, const struct envoy_api_v2_core_BindConfig*, UPB_SIZE(88, 152)); }
UPB_INLINE const envoy_api_v2_Cluster_LbSubsetConfig* envoy_api_v2_Cluster_lb_subset_config(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, const envoy_api_v2_Cluster_LbSubsetConfig*, UPB_SIZE(92, 160)); } UPB_INLINE const envoy_api_v2_Cluster_LbSubsetConfig* envoy_api_v2_Cluster_lb_subset_config(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, const envoy_api_v2_Cluster_LbSubsetConfig*, UPB_SIZE(92, 160)); }
UPB_INLINE bool envoy_api_v2_Cluster_has_ring_hash_lb_config(const envoy_api_v2_Cluster *msg) { return _upb_has_oneof_field(msg, UPB_SIZE(160, 280), 23); } UPB_INLINE bool envoy_api_v2_Cluster_has_ring_hash_lb_config(const envoy_api_v2_Cluster *msg) { return _upb_has_oneof_field(msg, UPB_SIZE(160, 288), 23); }
UPB_INLINE const envoy_api_v2_Cluster_RingHashLbConfig* envoy_api_v2_Cluster_ring_hash_lb_config(const envoy_api_v2_Cluster *msg) { return UPB_READ_ONEOF(msg, const envoy_api_v2_Cluster_RingHashLbConfig*, UPB_SIZE(156, 272), UPB_SIZE(160, 280), 23, NULL); } UPB_INLINE const envoy_api_v2_Cluster_RingHashLbConfig* envoy_api_v2_Cluster_ring_hash_lb_config(const envoy_api_v2_Cluster *msg) { return UPB_READ_ONEOF(msg, const envoy_api_v2_Cluster_RingHashLbConfig*, UPB_SIZE(156, 280), UPB_SIZE(160, 288), 23, NULL); }
UPB_INLINE const struct envoy_api_v2_core_TransportSocket* envoy_api_v2_Cluster_transport_socket(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, const struct envoy_api_v2_core_TransportSocket*, UPB_SIZE(96, 168)); } UPB_INLINE const struct envoy_api_v2_core_TransportSocket* envoy_api_v2_Cluster_transport_socket(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, const struct envoy_api_v2_core_TransportSocket*, UPB_SIZE(96, 168)); }
UPB_INLINE const struct envoy_api_v2_core_Metadata* envoy_api_v2_Cluster_metadata(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, const struct envoy_api_v2_core_Metadata*, UPB_SIZE(100, 176)); } UPB_INLINE const struct envoy_api_v2_core_Metadata* envoy_api_v2_Cluster_metadata(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, const struct envoy_api_v2_core_Metadata*, UPB_SIZE(100, 176)); }
UPB_INLINE int32_t envoy_api_v2_Cluster_protocol_selection(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, int32_t, UPB_SIZE(16, 16)); } UPB_INLINE int32_t envoy_api_v2_Cluster_protocol_selection(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, int32_t, UPB_SIZE(16, 16)); }
@ -209,20 +218,22 @@ UPB_INLINE const envoy_api_v2_UpstreamConnectionOptions* envoy_api_v2_Cluster_up
UPB_INLINE bool envoy_api_v2_Cluster_close_connections_on_host_health_failure(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(24, 24)); } UPB_INLINE bool envoy_api_v2_Cluster_close_connections_on_host_health_failure(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(24, 24)); }
UPB_INLINE bool envoy_api_v2_Cluster_drain_connections_on_host_removal(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(25, 25)); } UPB_INLINE bool envoy_api_v2_Cluster_drain_connections_on_host_removal(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(25, 25)); }
UPB_INLINE const struct envoy_api_v2_ClusterLoadAssignment* envoy_api_v2_Cluster_load_assignment(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, const struct envoy_api_v2_ClusterLoadAssignment*, UPB_SIZE(116, 208)); } UPB_INLINE const struct envoy_api_v2_ClusterLoadAssignment* envoy_api_v2_Cluster_load_assignment(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, const struct envoy_api_v2_ClusterLoadAssignment*, UPB_SIZE(116, 208)); }
UPB_INLINE bool envoy_api_v2_Cluster_has_original_dst_lb_config(const envoy_api_v2_Cluster *msg) { return _upb_has_oneof_field(msg, UPB_SIZE(160, 280), 34); } UPB_INLINE bool envoy_api_v2_Cluster_has_original_dst_lb_config(const envoy_api_v2_Cluster *msg) { return _upb_has_oneof_field(msg, UPB_SIZE(160, 288), 34); }
UPB_INLINE const envoy_api_v2_Cluster_OriginalDstLbConfig* envoy_api_v2_Cluster_original_dst_lb_config(const envoy_api_v2_Cluster *msg) { return UPB_READ_ONEOF(msg, const envoy_api_v2_Cluster_OriginalDstLbConfig*, UPB_SIZE(156, 272), UPB_SIZE(160, 280), 34, NULL); } UPB_INLINE const envoy_api_v2_Cluster_OriginalDstLbConfig* envoy_api_v2_Cluster_original_dst_lb_config(const envoy_api_v2_Cluster *msg) { return UPB_READ_ONEOF(msg, const envoy_api_v2_Cluster_OriginalDstLbConfig*, UPB_SIZE(156, 280), UPB_SIZE(160, 288), 34, NULL); }
UPB_INLINE const envoy_api_v2_Cluster_ExtensionProtocolOptionsEntry* const* envoy_api_v2_Cluster_extension_protocol_options(const envoy_api_v2_Cluster *msg, size_t *len) { return (const envoy_api_v2_Cluster_ExtensionProtocolOptionsEntry* const*)_upb_array_accessor(msg, UPB_SIZE(132, 240), len); } UPB_INLINE const envoy_api_v2_Cluster_ExtensionProtocolOptionsEntry* const* envoy_api_v2_Cluster_extension_protocol_options(const envoy_api_v2_Cluster *msg, size_t *len) { return (const envoy_api_v2_Cluster_ExtensionProtocolOptionsEntry* const*)_upb_array_accessor(msg, UPB_SIZE(132, 240), len); }
UPB_INLINE const envoy_api_v2_Cluster_TypedExtensionProtocolOptionsEntry* const* envoy_api_v2_Cluster_typed_extension_protocol_options(const envoy_api_v2_Cluster *msg, size_t *len) { return (const envoy_api_v2_Cluster_TypedExtensionProtocolOptionsEntry* const*)_upb_array_accessor(msg, UPB_SIZE(136, 248), len); } UPB_INLINE const envoy_api_v2_Cluster_TypedExtensionProtocolOptionsEntry* const* envoy_api_v2_Cluster_typed_extension_protocol_options(const envoy_api_v2_Cluster *msg, size_t *len) { return (const envoy_api_v2_Cluster_TypedExtensionProtocolOptionsEntry* const*)_upb_array_accessor(msg, UPB_SIZE(136, 248), len); }
UPB_INLINE bool envoy_api_v2_Cluster_has_least_request_lb_config(const envoy_api_v2_Cluster *msg) { return _upb_has_oneof_field(msg, UPB_SIZE(160, 280), 37); } UPB_INLINE bool envoy_api_v2_Cluster_has_least_request_lb_config(const envoy_api_v2_Cluster *msg) { return _upb_has_oneof_field(msg, UPB_SIZE(160, 288), 37); }
UPB_INLINE const envoy_api_v2_Cluster_LeastRequestLbConfig* envoy_api_v2_Cluster_least_request_lb_config(const envoy_api_v2_Cluster *msg) { return UPB_READ_ONEOF(msg, const envoy_api_v2_Cluster_LeastRequestLbConfig*, UPB_SIZE(156, 272), UPB_SIZE(160, 280), 37, NULL); } UPB_INLINE const envoy_api_v2_Cluster_LeastRequestLbConfig* envoy_api_v2_Cluster_least_request_lb_config(const envoy_api_v2_Cluster *msg) { return UPB_READ_ONEOF(msg, const envoy_api_v2_Cluster_LeastRequestLbConfig*, UPB_SIZE(156, 280), UPB_SIZE(160, 288), 37, NULL); }
UPB_INLINE bool envoy_api_v2_Cluster_has_cluster_type(const envoy_api_v2_Cluster *msg) { return _upb_has_oneof_field(msg, UPB_SIZE(152, 264), 38); } UPB_INLINE bool envoy_api_v2_Cluster_has_cluster_type(const envoy_api_v2_Cluster *msg) { return _upb_has_oneof_field(msg, UPB_SIZE(152, 272), 38); }
UPB_INLINE const envoy_api_v2_Cluster_CustomClusterType* envoy_api_v2_Cluster_cluster_type(const envoy_api_v2_Cluster *msg) { return UPB_READ_ONEOF(msg, const envoy_api_v2_Cluster_CustomClusterType*, UPB_SIZE(144, 256), UPB_SIZE(152, 264), 38, NULL); } UPB_INLINE const envoy_api_v2_Cluster_CustomClusterType* envoy_api_v2_Cluster_cluster_type(const envoy_api_v2_Cluster *msg) { return UPB_READ_ONEOF(msg, const envoy_api_v2_Cluster_CustomClusterType*, UPB_SIZE(144, 264), UPB_SIZE(152, 272), 38, NULL); }
UPB_INLINE bool envoy_api_v2_Cluster_respect_dns_ttl(const envoy_api_v2_Cluster *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(26, 26)); }
UPB_INLINE const struct envoy_api_v2_cluster_Filter* const* envoy_api_v2_Cluster_filters(const envoy_api_v2_Cluster *msg, size_t *len) { return (const struct envoy_api_v2_cluster_Filter* const*)_upb_array_accessor(msg, UPB_SIZE(140, 256), len); }
UPB_INLINE void envoy_api_v2_Cluster_set_name(envoy_api_v2_Cluster *msg, upb_strview value) { UPB_INLINE void envoy_api_v2_Cluster_set_name(envoy_api_v2_Cluster *msg, upb_strview value) {
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(28, 32)) = value; UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(28, 32)) = value;
} }
UPB_INLINE void envoy_api_v2_Cluster_set_type(envoy_api_v2_Cluster *msg, int32_t value) { UPB_INLINE void envoy_api_v2_Cluster_set_type(envoy_api_v2_Cluster *msg, int32_t value) {
UPB_WRITE_ONEOF(msg, int32_t, UPB_SIZE(144, 256), value, UPB_SIZE(152, 264), 2); UPB_WRITE_ONEOF(msg, int32_t, UPB_SIZE(144, 264), value, UPB_SIZE(152, 272), 2);
} }
UPB_INLINE void envoy_api_v2_Cluster_set_eds_cluster_config(envoy_api_v2_Cluster *msg, envoy_api_v2_Cluster_EdsClusterConfig* value) { UPB_INLINE void envoy_api_v2_Cluster_set_eds_cluster_config(envoy_api_v2_Cluster *msg, envoy_api_v2_Cluster_EdsClusterConfig* value) {
UPB_FIELD_AT(msg, envoy_api_v2_Cluster_EdsClusterConfig*, UPB_SIZE(44, 64)) = value; UPB_FIELD_AT(msg, envoy_api_v2_Cluster_EdsClusterConfig*, UPB_SIZE(44, 64)) = value;
@ -426,7 +437,7 @@ UPB_INLINE struct envoy_api_v2_Cluster_LbSubsetConfig* envoy_api_v2_Cluster_muta
return sub; return sub;
} }
UPB_INLINE void envoy_api_v2_Cluster_set_ring_hash_lb_config(envoy_api_v2_Cluster *msg, envoy_api_v2_Cluster_RingHashLbConfig* value) { UPB_INLINE void envoy_api_v2_Cluster_set_ring_hash_lb_config(envoy_api_v2_Cluster *msg, envoy_api_v2_Cluster_RingHashLbConfig* value) {
UPB_WRITE_ONEOF(msg, envoy_api_v2_Cluster_RingHashLbConfig*, UPB_SIZE(156, 272), value, UPB_SIZE(160, 280), 23); UPB_WRITE_ONEOF(msg, envoy_api_v2_Cluster_RingHashLbConfig*, UPB_SIZE(156, 280), value, UPB_SIZE(160, 288), 23);
} }
UPB_INLINE struct envoy_api_v2_Cluster_RingHashLbConfig* envoy_api_v2_Cluster_mutable_ring_hash_lb_config(envoy_api_v2_Cluster *msg, upb_arena *arena) { UPB_INLINE struct envoy_api_v2_Cluster_RingHashLbConfig* envoy_api_v2_Cluster_mutable_ring_hash_lb_config(envoy_api_v2_Cluster *msg, upb_arena *arena) {
struct envoy_api_v2_Cluster_RingHashLbConfig* sub = (struct envoy_api_v2_Cluster_RingHashLbConfig*)envoy_api_v2_Cluster_ring_hash_lb_config(msg); struct envoy_api_v2_Cluster_RingHashLbConfig* sub = (struct envoy_api_v2_Cluster_RingHashLbConfig*)envoy_api_v2_Cluster_ring_hash_lb_config(msg);
@ -522,7 +533,7 @@ UPB_INLINE struct envoy_api_v2_ClusterLoadAssignment* envoy_api_v2_Cluster_mutab
return sub; return sub;
} }
UPB_INLINE void envoy_api_v2_Cluster_set_original_dst_lb_config(envoy_api_v2_Cluster *msg, envoy_api_v2_Cluster_OriginalDstLbConfig* value) { UPB_INLINE void envoy_api_v2_Cluster_set_original_dst_lb_config(envoy_api_v2_Cluster *msg, envoy_api_v2_Cluster_OriginalDstLbConfig* value) {
UPB_WRITE_ONEOF(msg, envoy_api_v2_Cluster_OriginalDstLbConfig*, UPB_SIZE(156, 272), value, UPB_SIZE(160, 280), 34); UPB_WRITE_ONEOF(msg, envoy_api_v2_Cluster_OriginalDstLbConfig*, UPB_SIZE(156, 280), value, UPB_SIZE(160, 288), 34);
} }
UPB_INLINE struct envoy_api_v2_Cluster_OriginalDstLbConfig* envoy_api_v2_Cluster_mutable_original_dst_lb_config(envoy_api_v2_Cluster *msg, upb_arena *arena) { UPB_INLINE struct envoy_api_v2_Cluster_OriginalDstLbConfig* envoy_api_v2_Cluster_mutable_original_dst_lb_config(envoy_api_v2_Cluster *msg, upb_arena *arena) {
struct envoy_api_v2_Cluster_OriginalDstLbConfig* sub = (struct envoy_api_v2_Cluster_OriginalDstLbConfig*)envoy_api_v2_Cluster_original_dst_lb_config(msg); struct envoy_api_v2_Cluster_OriginalDstLbConfig* sub = (struct envoy_api_v2_Cluster_OriginalDstLbConfig*)envoy_api_v2_Cluster_original_dst_lb_config(msg);
@ -560,7 +571,7 @@ UPB_INLINE struct envoy_api_v2_Cluster_TypedExtensionProtocolOptionsEntry* envoy
return sub; return sub;
} }
UPB_INLINE void envoy_api_v2_Cluster_set_least_request_lb_config(envoy_api_v2_Cluster *msg, envoy_api_v2_Cluster_LeastRequestLbConfig* value) { UPB_INLINE void envoy_api_v2_Cluster_set_least_request_lb_config(envoy_api_v2_Cluster *msg, envoy_api_v2_Cluster_LeastRequestLbConfig* value) {
UPB_WRITE_ONEOF(msg, envoy_api_v2_Cluster_LeastRequestLbConfig*, UPB_SIZE(156, 272), value, UPB_SIZE(160, 280), 37); UPB_WRITE_ONEOF(msg, envoy_api_v2_Cluster_LeastRequestLbConfig*, UPB_SIZE(156, 280), value, UPB_SIZE(160, 288), 37);
} }
UPB_INLINE struct envoy_api_v2_Cluster_LeastRequestLbConfig* envoy_api_v2_Cluster_mutable_least_request_lb_config(envoy_api_v2_Cluster *msg, upb_arena *arena) { UPB_INLINE struct envoy_api_v2_Cluster_LeastRequestLbConfig* envoy_api_v2_Cluster_mutable_least_request_lb_config(envoy_api_v2_Cluster *msg, upb_arena *arena) {
struct envoy_api_v2_Cluster_LeastRequestLbConfig* sub = (struct envoy_api_v2_Cluster_LeastRequestLbConfig*)envoy_api_v2_Cluster_least_request_lb_config(msg); struct envoy_api_v2_Cluster_LeastRequestLbConfig* sub = (struct envoy_api_v2_Cluster_LeastRequestLbConfig*)envoy_api_v2_Cluster_least_request_lb_config(msg);
@ -572,7 +583,7 @@ UPB_INLINE struct envoy_api_v2_Cluster_LeastRequestLbConfig* envoy_api_v2_Cluste
return sub; return sub;
} }
UPB_INLINE void envoy_api_v2_Cluster_set_cluster_type(envoy_api_v2_Cluster *msg, envoy_api_v2_Cluster_CustomClusterType* value) { UPB_INLINE void envoy_api_v2_Cluster_set_cluster_type(envoy_api_v2_Cluster *msg, envoy_api_v2_Cluster_CustomClusterType* value) {
UPB_WRITE_ONEOF(msg, envoy_api_v2_Cluster_CustomClusterType*, UPB_SIZE(144, 256), value, UPB_SIZE(152, 264), 38); UPB_WRITE_ONEOF(msg, envoy_api_v2_Cluster_CustomClusterType*, UPB_SIZE(144, 264), value, UPB_SIZE(152, 272), 38);
} }
UPB_INLINE struct envoy_api_v2_Cluster_CustomClusterType* envoy_api_v2_Cluster_mutable_cluster_type(envoy_api_v2_Cluster *msg, upb_arena *arena) { UPB_INLINE struct envoy_api_v2_Cluster_CustomClusterType* envoy_api_v2_Cluster_mutable_cluster_type(envoy_api_v2_Cluster *msg, upb_arena *arena) {
struct envoy_api_v2_Cluster_CustomClusterType* sub = (struct envoy_api_v2_Cluster_CustomClusterType*)envoy_api_v2_Cluster_cluster_type(msg); struct envoy_api_v2_Cluster_CustomClusterType* sub = (struct envoy_api_v2_Cluster_CustomClusterType*)envoy_api_v2_Cluster_cluster_type(msg);
@ -583,6 +594,22 @@ UPB_INLINE struct envoy_api_v2_Cluster_CustomClusterType* envoy_api_v2_Cluster_m
} }
return sub; return sub;
} }
UPB_INLINE void envoy_api_v2_Cluster_set_respect_dns_ttl(envoy_api_v2_Cluster *msg, bool value) {
UPB_FIELD_AT(msg, bool, UPB_SIZE(26, 26)) = value;
}
UPB_INLINE struct envoy_api_v2_cluster_Filter** envoy_api_v2_Cluster_mutable_filters(envoy_api_v2_Cluster *msg, size_t *len) {
return (struct envoy_api_v2_cluster_Filter**)_upb_array_mutable_accessor(msg, UPB_SIZE(140, 256), len);
}
UPB_INLINE struct envoy_api_v2_cluster_Filter** envoy_api_v2_Cluster_resize_filters(envoy_api_v2_Cluster *msg, size_t len, upb_arena *arena) {
return (struct envoy_api_v2_cluster_Filter**)_upb_array_resize_accessor(msg, UPB_SIZE(140, 256), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
}
UPB_INLINE struct envoy_api_v2_cluster_Filter* envoy_api_v2_Cluster_add_filters(envoy_api_v2_Cluster *msg, upb_arena *arena) {
struct envoy_api_v2_cluster_Filter* sub = (struct envoy_api_v2_cluster_Filter*)upb_msg_new(&envoy_api_v2_cluster_Filter_msginit, arena);
bool ok = _upb_array_append_accessor(
msg, UPB_SIZE(140, 256), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
if (!ok) return NULL;
return sub;
}
/* envoy.api.v2.Cluster.CustomClusterType */ /* envoy.api.v2.Cluster.CustomClusterType */
@ -736,6 +763,7 @@ UPB_INLINE const envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector* const* en
UPB_INLINE bool envoy_api_v2_Cluster_LbSubsetConfig_locality_weight_aware(const envoy_api_v2_Cluster_LbSubsetConfig *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(8, 8)); } UPB_INLINE bool envoy_api_v2_Cluster_LbSubsetConfig_locality_weight_aware(const envoy_api_v2_Cluster_LbSubsetConfig *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(8, 8)); }
UPB_INLINE bool envoy_api_v2_Cluster_LbSubsetConfig_scale_locality_weight(const envoy_api_v2_Cluster_LbSubsetConfig *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(9, 9)); } UPB_INLINE bool envoy_api_v2_Cluster_LbSubsetConfig_scale_locality_weight(const envoy_api_v2_Cluster_LbSubsetConfig *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(9, 9)); }
UPB_INLINE bool envoy_api_v2_Cluster_LbSubsetConfig_panic_mode_any(const envoy_api_v2_Cluster_LbSubsetConfig *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(10, 10)); } UPB_INLINE bool envoy_api_v2_Cluster_LbSubsetConfig_panic_mode_any(const envoy_api_v2_Cluster_LbSubsetConfig *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(10, 10)); }
UPB_INLINE bool envoy_api_v2_Cluster_LbSubsetConfig_list_as_any(const envoy_api_v2_Cluster_LbSubsetConfig *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(11, 11)); }
UPB_INLINE void envoy_api_v2_Cluster_LbSubsetConfig_set_fallback_policy(envoy_api_v2_Cluster_LbSubsetConfig *msg, int32_t value) { UPB_INLINE void envoy_api_v2_Cluster_LbSubsetConfig_set_fallback_policy(envoy_api_v2_Cluster_LbSubsetConfig *msg, int32_t value) {
UPB_FIELD_AT(msg, int32_t, UPB_SIZE(0, 0)) = value; UPB_FIELD_AT(msg, int32_t, UPB_SIZE(0, 0)) = value;
@ -774,6 +802,9 @@ UPB_INLINE void envoy_api_v2_Cluster_LbSubsetConfig_set_scale_locality_weight(en
UPB_INLINE void envoy_api_v2_Cluster_LbSubsetConfig_set_panic_mode_any(envoy_api_v2_Cluster_LbSubsetConfig *msg, bool value) { UPB_INLINE void envoy_api_v2_Cluster_LbSubsetConfig_set_panic_mode_any(envoy_api_v2_Cluster_LbSubsetConfig *msg, bool value) {
UPB_FIELD_AT(msg, bool, UPB_SIZE(10, 10)) = value; UPB_FIELD_AT(msg, bool, UPB_SIZE(10, 10)) = value;
} }
UPB_INLINE void envoy_api_v2_Cluster_LbSubsetConfig_set_list_as_any(envoy_api_v2_Cluster_LbSubsetConfig *msg, bool value) {
UPB_FIELD_AT(msg, bool, UPB_SIZE(11, 11)) = value;
}
/* envoy.api.v2.Cluster.LbSubsetConfig.LbSubsetSelector */ /* envoy.api.v2.Cluster.LbSubsetConfig.LbSubsetSelector */
@ -789,17 +820,21 @@ UPB_INLINE char *envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector_serialize(
return upb_encode(msg, &envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector_msginit, arena, len); return upb_encode(msg, &envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector_msginit, arena, len);
} }
UPB_INLINE upb_strview const* envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector_keys(const envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector *msg, size_t *len) { return (upb_strview const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len); } UPB_INLINE upb_strview const* envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector_keys(const envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector *msg, size_t *len) { return (upb_strview const*)_upb_array_accessor(msg, UPB_SIZE(8, 8), len); }
UPB_INLINE int32_t envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector_fallback_policy(const envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector *msg) { return UPB_FIELD_AT(msg, int32_t, UPB_SIZE(0, 0)); }
UPB_INLINE upb_strview* envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector_mutable_keys(envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector *msg, size_t *len) { UPB_INLINE upb_strview* envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector_mutable_keys(envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector *msg, size_t *len) {
return (upb_strview*)_upb_array_mutable_accessor(msg, UPB_SIZE(0, 0), len); return (upb_strview*)_upb_array_mutable_accessor(msg, UPB_SIZE(8, 8), len);
} }
UPB_INLINE upb_strview* envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector_resize_keys(envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector *msg, size_t len, upb_arena *arena) { UPB_INLINE upb_strview* envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector_resize_keys(envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector *msg, size_t len, upb_arena *arena) {
return (upb_strview*)_upb_array_resize_accessor(msg, UPB_SIZE(0, 0), len, UPB_SIZE(8, 16), UPB_TYPE_STRING, arena); return (upb_strview*)_upb_array_resize_accessor(msg, UPB_SIZE(8, 8), len, UPB_SIZE(8, 16), UPB_TYPE_STRING, arena);
} }
UPB_INLINE bool envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector_add_keys(envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector *msg, upb_strview val, upb_arena *arena) { UPB_INLINE bool envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector_add_keys(envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector *msg, upb_strview val, upb_arena *arena) {
return _upb_array_append_accessor( return _upb_array_append_accessor(
msg, UPB_SIZE(0, 0), UPB_SIZE(8, 16), UPB_TYPE_STRING, &val, arena); msg, UPB_SIZE(8, 8), UPB_SIZE(8, 16), UPB_TYPE_STRING, &val, arena);
}
UPB_INLINE void envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector_set_fallback_policy(envoy_api_v2_Cluster_LbSubsetConfig_LbSubsetSelector *msg, int32_t value) {
UPB_FIELD_AT(msg, int32_t, UPB_SIZE(0, 0)) = value;
} }
/* envoy.api.v2.Cluster.LeastRequestLbConfig */ /* envoy.api.v2.Cluster.LeastRequestLbConfig */
@ -925,6 +960,7 @@ UPB_INLINE bool envoy_api_v2_Cluster_CommonLbConfig_has_locality_weighted_lb_con
UPB_INLINE const envoy_api_v2_Cluster_CommonLbConfig_LocalityWeightedLbConfig* envoy_api_v2_Cluster_CommonLbConfig_locality_weighted_lb_config(const envoy_api_v2_Cluster_CommonLbConfig *msg) { return UPB_READ_ONEOF(msg, const envoy_api_v2_Cluster_CommonLbConfig_LocalityWeightedLbConfig*, UPB_SIZE(12, 24), UPB_SIZE(16, 32), 3, NULL); } UPB_INLINE const envoy_api_v2_Cluster_CommonLbConfig_LocalityWeightedLbConfig* envoy_api_v2_Cluster_CommonLbConfig_locality_weighted_lb_config(const envoy_api_v2_Cluster_CommonLbConfig *msg) { return UPB_READ_ONEOF(msg, const envoy_api_v2_Cluster_CommonLbConfig_LocalityWeightedLbConfig*, UPB_SIZE(12, 24), UPB_SIZE(16, 32), 3, NULL); }
UPB_INLINE const struct google_protobuf_Duration* envoy_api_v2_Cluster_CommonLbConfig_update_merge_window(const envoy_api_v2_Cluster_CommonLbConfig *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_Duration*, UPB_SIZE(8, 16)); } UPB_INLINE const struct google_protobuf_Duration* envoy_api_v2_Cluster_CommonLbConfig_update_merge_window(const envoy_api_v2_Cluster_CommonLbConfig *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_Duration*, UPB_SIZE(8, 16)); }
UPB_INLINE bool envoy_api_v2_Cluster_CommonLbConfig_ignore_new_hosts_until_first_hc(const envoy_api_v2_Cluster_CommonLbConfig *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(0, 0)); } UPB_INLINE bool envoy_api_v2_Cluster_CommonLbConfig_ignore_new_hosts_until_first_hc(const envoy_api_v2_Cluster_CommonLbConfig *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(0, 0)); }
UPB_INLINE bool envoy_api_v2_Cluster_CommonLbConfig_close_connections_on_host_set_change(const envoy_api_v2_Cluster_CommonLbConfig *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(1, 1)); }
UPB_INLINE void envoy_api_v2_Cluster_CommonLbConfig_set_healthy_panic_threshold(envoy_api_v2_Cluster_CommonLbConfig *msg, struct envoy_type_Percent* value) { UPB_INLINE void envoy_api_v2_Cluster_CommonLbConfig_set_healthy_panic_threshold(envoy_api_v2_Cluster_CommonLbConfig *msg, struct envoy_type_Percent* value) {
UPB_FIELD_AT(msg, struct envoy_type_Percent*, UPB_SIZE(4, 8)) = value; UPB_FIELD_AT(msg, struct envoy_type_Percent*, UPB_SIZE(4, 8)) = value;
@ -977,6 +1013,9 @@ UPB_INLINE struct google_protobuf_Duration* envoy_api_v2_Cluster_CommonLbConfig_
UPB_INLINE void envoy_api_v2_Cluster_CommonLbConfig_set_ignore_new_hosts_until_first_hc(envoy_api_v2_Cluster_CommonLbConfig *msg, bool value) { UPB_INLINE void envoy_api_v2_Cluster_CommonLbConfig_set_ignore_new_hosts_until_first_hc(envoy_api_v2_Cluster_CommonLbConfig *msg, bool value) {
UPB_FIELD_AT(msg, bool, UPB_SIZE(0, 0)) = value; UPB_FIELD_AT(msg, bool, UPB_SIZE(0, 0)) = value;
} }
UPB_INLINE void envoy_api_v2_Cluster_CommonLbConfig_set_close_connections_on_host_set_change(envoy_api_v2_Cluster_CommonLbConfig *msg, bool value) {
UPB_FIELD_AT(msg, bool, UPB_SIZE(1, 1)) = value;
}
/* envoy.api.v2.Cluster.CommonLbConfig.ZoneAwareLbConfig */ /* envoy.api.v2.Cluster.CommonLbConfig.ZoneAwareLbConfig */

@ -0,0 +1,34 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/api/v2/cluster/filter.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#include <stddef.h>
#include "upb/msg.h"
#include "envoy/api/v2/cluster/filter.upb.h"
#include "google/protobuf/any.upb.h"
#include "validate/validate.upb.h"
#include "gogoproto/gogo.upb.h"
#include "upb/port_def.inc"
static const upb_msglayout *const envoy_api_v2_cluster_Filter_submsgs[1] = {
&google_protobuf_Any_msginit,
};
static const upb_msglayout_field envoy_api_v2_cluster_Filter__fields[2] = {
{1, UPB_SIZE(0, 0), 0, 0, 9, 1},
{2, UPB_SIZE(8, 16), 0, 0, 11, 1},
};
const upb_msglayout envoy_api_v2_cluster_Filter_msginit = {
&envoy_api_v2_cluster_Filter_submsgs[0],
&envoy_api_v2_cluster_Filter__fields[0],
UPB_SIZE(16, 32), 2, false,
};
#include "upb/port_undef.inc"

@ -0,0 +1,69 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/api/v2/cluster/filter.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#ifndef ENVOY_API_V2_CLUSTER_FILTER_PROTO_UPB_H_
#define ENVOY_API_V2_CLUSTER_FILTER_PROTO_UPB_H_
#include "upb/generated_util.h"
#include "upb/msg.h"
#include "upb/decode.h"
#include "upb/encode.h"
#include "upb/port_def.inc"
#ifdef __cplusplus
extern "C" {
#endif
struct envoy_api_v2_cluster_Filter;
typedef struct envoy_api_v2_cluster_Filter envoy_api_v2_cluster_Filter;
extern const upb_msglayout envoy_api_v2_cluster_Filter_msginit;
struct google_protobuf_Any;
extern const upb_msglayout google_protobuf_Any_msginit;
/* envoy.api.v2.cluster.Filter */
UPB_INLINE envoy_api_v2_cluster_Filter *envoy_api_v2_cluster_Filter_new(upb_arena *arena) {
return (envoy_api_v2_cluster_Filter *)upb_msg_new(&envoy_api_v2_cluster_Filter_msginit, arena);
}
UPB_INLINE envoy_api_v2_cluster_Filter *envoy_api_v2_cluster_Filter_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_api_v2_cluster_Filter *ret = envoy_api_v2_cluster_Filter_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_api_v2_cluster_Filter_msginit, arena)) ? ret : NULL;
}
UPB_INLINE char *envoy_api_v2_cluster_Filter_serialize(const envoy_api_v2_cluster_Filter *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_api_v2_cluster_Filter_msginit, arena, len);
}
UPB_INLINE upb_strview envoy_api_v2_cluster_Filter_name(const envoy_api_v2_cluster_Filter *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(0, 0)); }
UPB_INLINE const struct google_protobuf_Any* envoy_api_v2_cluster_Filter_typed_config(const envoy_api_v2_cluster_Filter *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_Any*, UPB_SIZE(8, 16)); }
UPB_INLINE void envoy_api_v2_cluster_Filter_set_name(envoy_api_v2_cluster_Filter *msg, upb_strview value) {
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(0, 0)) = value;
}
UPB_INLINE void envoy_api_v2_cluster_Filter_set_typed_config(envoy_api_v2_cluster_Filter *msg, struct google_protobuf_Any* value) {
UPB_FIELD_AT(msg, struct google_protobuf_Any*, UPB_SIZE(8, 16)) = value;
}
UPB_INLINE struct google_protobuf_Any* envoy_api_v2_cluster_Filter_mutable_typed_config(envoy_api_v2_cluster_Filter *msg, upb_arena *arena) {
struct google_protobuf_Any* sub = (struct google_protobuf_Any*)envoy_api_v2_cluster_Filter_typed_config(msg);
if (sub == NULL) {
sub = (struct google_protobuf_Any*)upb_msg_new(&google_protobuf_Any_msginit, arena);
if (!sub) return NULL;
envoy_api_v2_cluster_Filter_set_typed_config(msg, sub);
}
return sub;
}
#ifdef __cplusplus
} /* extern "C" */
#endif
#include "upb/port_undef.inc"
#endif /* ENVOY_API_V2_CLUSTER_FILTER_PROTO_UPB_H_ */

@ -16,29 +16,33 @@
#include "upb/port_def.inc" #include "upb/port_def.inc"
static const upb_msglayout *const envoy_api_v2_cluster_OutlierDetection_submsgs[11] = { static const upb_msglayout *const envoy_api_v2_cluster_OutlierDetection_submsgs[14] = {
&google_protobuf_Duration_msginit, &google_protobuf_Duration_msginit,
&google_protobuf_UInt32Value_msginit, &google_protobuf_UInt32Value_msginit,
}; };
static const upb_msglayout_field envoy_api_v2_cluster_OutlierDetection__fields[11] = { static const upb_msglayout_field envoy_api_v2_cluster_OutlierDetection__fields[15] = {
{1, UPB_SIZE(0, 0), 0, 1, 11, 1}, {1, UPB_SIZE(4, 8), 0, 1, 11, 1},
{2, UPB_SIZE(4, 8), 0, 0, 11, 1}, {2, UPB_SIZE(8, 16), 0, 0, 11, 1},
{3, UPB_SIZE(8, 16), 0, 0, 11, 1}, {3, UPB_SIZE(12, 24), 0, 0, 11, 1},
{4, UPB_SIZE(12, 24), 0, 1, 11, 1}, {4, UPB_SIZE(16, 32), 0, 1, 11, 1},
{5, UPB_SIZE(16, 32), 0, 1, 11, 1}, {5, UPB_SIZE(20, 40), 0, 1, 11, 1},
{6, UPB_SIZE(20, 40), 0, 1, 11, 1}, {6, UPB_SIZE(24, 48), 0, 1, 11, 1},
{7, UPB_SIZE(24, 48), 0, 1, 11, 1}, {7, UPB_SIZE(28, 56), 0, 1, 11, 1},
{8, UPB_SIZE(28, 56), 0, 1, 11, 1}, {8, UPB_SIZE(32, 64), 0, 1, 11, 1},
{9, UPB_SIZE(32, 64), 0, 1, 11, 1}, {9, UPB_SIZE(36, 72), 0, 1, 11, 1},
{10, UPB_SIZE(36, 72), 0, 1, 11, 1}, {10, UPB_SIZE(40, 80), 0, 1, 11, 1},
{11, UPB_SIZE(40, 80), 0, 1, 11, 1}, {11, UPB_SIZE(44, 88), 0, 1, 11, 1},
{12, UPB_SIZE(0, 0), 0, 0, 8, 1},
{13, UPB_SIZE(48, 96), 0, 1, 11, 1},
{14, UPB_SIZE(52, 104), 0, 1, 11, 1},
{15, UPB_SIZE(56, 112), 0, 1, 11, 1},
}; };
const upb_msglayout envoy_api_v2_cluster_OutlierDetection_msginit = { const upb_msglayout envoy_api_v2_cluster_OutlierDetection_msginit = {
&envoy_api_v2_cluster_OutlierDetection_submsgs[0], &envoy_api_v2_cluster_OutlierDetection_submsgs[0],
&envoy_api_v2_cluster_OutlierDetection__fields[0], &envoy_api_v2_cluster_OutlierDetection__fields[0],
UPB_SIZE(44, 88), 11, false, UPB_SIZE(60, 120), 15, false,
}; };
#include "upb/port_undef.inc" #include "upb/port_undef.inc"

@ -43,20 +43,24 @@ UPB_INLINE char *envoy_api_v2_cluster_OutlierDetection_serialize(const envoy_api
return upb_encode(msg, &envoy_api_v2_cluster_OutlierDetection_msginit, arena, len); return upb_encode(msg, &envoy_api_v2_cluster_OutlierDetection_msginit, arena, len);
} }
UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_consecutive_5xx(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(0, 0)); } UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_consecutive_5xx(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(4, 8)); }
UPB_INLINE const struct google_protobuf_Duration* envoy_api_v2_cluster_OutlierDetection_interval(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_Duration*, UPB_SIZE(4, 8)); } UPB_INLINE const struct google_protobuf_Duration* envoy_api_v2_cluster_OutlierDetection_interval(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_Duration*, UPB_SIZE(8, 16)); }
UPB_INLINE const struct google_protobuf_Duration* envoy_api_v2_cluster_OutlierDetection_base_ejection_time(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_Duration*, UPB_SIZE(8, 16)); } UPB_INLINE const struct google_protobuf_Duration* envoy_api_v2_cluster_OutlierDetection_base_ejection_time(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_Duration*, UPB_SIZE(12, 24)); }
UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_max_ejection_percent(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(12, 24)); } UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_max_ejection_percent(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(16, 32)); }
UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_enforcing_consecutive_5xx(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(16, 32)); } UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_enforcing_consecutive_5xx(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(20, 40)); }
UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_enforcing_success_rate(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(20, 40)); } UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_enforcing_success_rate(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(24, 48)); }
UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_success_rate_minimum_hosts(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(24, 48)); } UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_success_rate_minimum_hosts(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(28, 56)); }
UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_success_rate_request_volume(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(28, 56)); } UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_success_rate_request_volume(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(32, 64)); }
UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_success_rate_stdev_factor(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(32, 64)); } UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_success_rate_stdev_factor(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(36, 72)); }
UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_consecutive_gateway_failure(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(36, 72)); } UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_consecutive_gateway_failure(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(40, 80)); }
UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_enforcing_consecutive_gateway_failure(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(40, 80)); } UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_enforcing_consecutive_gateway_failure(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(44, 88)); }
UPB_INLINE bool envoy_api_v2_cluster_OutlierDetection_split_external_local_origin_errors(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(0, 0)); }
UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_consecutive_local_origin_failure(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(48, 96)); }
UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_enforcing_consecutive_local_origin_failure(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(52, 104)); }
UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_enforcing_local_origin_success_rate(const envoy_api_v2_cluster_OutlierDetection *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(56, 112)); }
UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_consecutive_5xx(envoy_api_v2_cluster_OutlierDetection *msg, struct google_protobuf_UInt32Value* value) { UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_consecutive_5xx(envoy_api_v2_cluster_OutlierDetection *msg, struct google_protobuf_UInt32Value* value) {
UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(0, 0)) = value; UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(4, 8)) = value;
} }
UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_mutable_consecutive_5xx(envoy_api_v2_cluster_OutlierDetection *msg, upb_arena *arena) { UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_mutable_consecutive_5xx(envoy_api_v2_cluster_OutlierDetection *msg, upb_arena *arena) {
struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_cluster_OutlierDetection_consecutive_5xx(msg); struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_cluster_OutlierDetection_consecutive_5xx(msg);
@ -68,7 +72,7 @@ UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetec
return sub; return sub;
} }
UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_interval(envoy_api_v2_cluster_OutlierDetection *msg, struct google_protobuf_Duration* value) { UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_interval(envoy_api_v2_cluster_OutlierDetection *msg, struct google_protobuf_Duration* value) {
UPB_FIELD_AT(msg, struct google_protobuf_Duration*, UPB_SIZE(4, 8)) = value; UPB_FIELD_AT(msg, struct google_protobuf_Duration*, UPB_SIZE(8, 16)) = value;
} }
UPB_INLINE struct google_protobuf_Duration* envoy_api_v2_cluster_OutlierDetection_mutable_interval(envoy_api_v2_cluster_OutlierDetection *msg, upb_arena *arena) { UPB_INLINE struct google_protobuf_Duration* envoy_api_v2_cluster_OutlierDetection_mutable_interval(envoy_api_v2_cluster_OutlierDetection *msg, upb_arena *arena) {
struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_api_v2_cluster_OutlierDetection_interval(msg); struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_api_v2_cluster_OutlierDetection_interval(msg);
@ -80,7 +84,7 @@ UPB_INLINE struct google_protobuf_Duration* envoy_api_v2_cluster_OutlierDetectio
return sub; return sub;
} }
UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_base_ejection_time(envoy_api_v2_cluster_OutlierDetection *msg, struct google_protobuf_Duration* value) { UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_base_ejection_time(envoy_api_v2_cluster_OutlierDetection *msg, struct google_protobuf_Duration* value) {
UPB_FIELD_AT(msg, struct google_protobuf_Duration*, UPB_SIZE(8, 16)) = value; UPB_FIELD_AT(msg, struct google_protobuf_Duration*, UPB_SIZE(12, 24)) = value;
} }
UPB_INLINE struct google_protobuf_Duration* envoy_api_v2_cluster_OutlierDetection_mutable_base_ejection_time(envoy_api_v2_cluster_OutlierDetection *msg, upb_arena *arena) { UPB_INLINE struct google_protobuf_Duration* envoy_api_v2_cluster_OutlierDetection_mutable_base_ejection_time(envoy_api_v2_cluster_OutlierDetection *msg, upb_arena *arena) {
struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_api_v2_cluster_OutlierDetection_base_ejection_time(msg); struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_api_v2_cluster_OutlierDetection_base_ejection_time(msg);
@ -92,7 +96,7 @@ UPB_INLINE struct google_protobuf_Duration* envoy_api_v2_cluster_OutlierDetectio
return sub; return sub;
} }
UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_max_ejection_percent(envoy_api_v2_cluster_OutlierDetection *msg, struct google_protobuf_UInt32Value* value) { UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_max_ejection_percent(envoy_api_v2_cluster_OutlierDetection *msg, struct google_protobuf_UInt32Value* value) {
UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(12, 24)) = value; UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(16, 32)) = value;
} }
UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_mutable_max_ejection_percent(envoy_api_v2_cluster_OutlierDetection *msg, upb_arena *arena) { UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_mutable_max_ejection_percent(envoy_api_v2_cluster_OutlierDetection *msg, upb_arena *arena) {
struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_cluster_OutlierDetection_max_ejection_percent(msg); struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_cluster_OutlierDetection_max_ejection_percent(msg);
@ -104,7 +108,7 @@ UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetec
return sub; return sub;
} }
UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_enforcing_consecutive_5xx(envoy_api_v2_cluster_OutlierDetection *msg, struct google_protobuf_UInt32Value* value) { UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_enforcing_consecutive_5xx(envoy_api_v2_cluster_OutlierDetection *msg, struct google_protobuf_UInt32Value* value) {
UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(16, 32)) = value; UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(20, 40)) = value;
} }
UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_mutable_enforcing_consecutive_5xx(envoy_api_v2_cluster_OutlierDetection *msg, upb_arena *arena) { UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_mutable_enforcing_consecutive_5xx(envoy_api_v2_cluster_OutlierDetection *msg, upb_arena *arena) {
struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_cluster_OutlierDetection_enforcing_consecutive_5xx(msg); struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_cluster_OutlierDetection_enforcing_consecutive_5xx(msg);
@ -116,7 +120,7 @@ UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetec
return sub; return sub;
} }
UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_enforcing_success_rate(envoy_api_v2_cluster_OutlierDetection *msg, struct google_protobuf_UInt32Value* value) { UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_enforcing_success_rate(envoy_api_v2_cluster_OutlierDetection *msg, struct google_protobuf_UInt32Value* value) {
UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(20, 40)) = value; UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(24, 48)) = value;
} }
UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_mutable_enforcing_success_rate(envoy_api_v2_cluster_OutlierDetection *msg, upb_arena *arena) { UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_mutable_enforcing_success_rate(envoy_api_v2_cluster_OutlierDetection *msg, upb_arena *arena) {
struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_cluster_OutlierDetection_enforcing_success_rate(msg); struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_cluster_OutlierDetection_enforcing_success_rate(msg);
@ -128,7 +132,7 @@ UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetec
return sub; return sub;
} }
UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_success_rate_minimum_hosts(envoy_api_v2_cluster_OutlierDetection *msg, struct google_protobuf_UInt32Value* value) { UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_success_rate_minimum_hosts(envoy_api_v2_cluster_OutlierDetection *msg, struct google_protobuf_UInt32Value* value) {
UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(24, 48)) = value; UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(28, 56)) = value;
} }
UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_mutable_success_rate_minimum_hosts(envoy_api_v2_cluster_OutlierDetection *msg, upb_arena *arena) { UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_mutable_success_rate_minimum_hosts(envoy_api_v2_cluster_OutlierDetection *msg, upb_arena *arena) {
struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_cluster_OutlierDetection_success_rate_minimum_hosts(msg); struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_cluster_OutlierDetection_success_rate_minimum_hosts(msg);
@ -140,7 +144,7 @@ UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetec
return sub; return sub;
} }
UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_success_rate_request_volume(envoy_api_v2_cluster_OutlierDetection *msg, struct google_protobuf_UInt32Value* value) { UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_success_rate_request_volume(envoy_api_v2_cluster_OutlierDetection *msg, struct google_protobuf_UInt32Value* value) {
UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(28, 56)) = value; UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(32, 64)) = value;
} }
UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_mutable_success_rate_request_volume(envoy_api_v2_cluster_OutlierDetection *msg, upb_arena *arena) { UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_mutable_success_rate_request_volume(envoy_api_v2_cluster_OutlierDetection *msg, upb_arena *arena) {
struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_cluster_OutlierDetection_success_rate_request_volume(msg); struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_cluster_OutlierDetection_success_rate_request_volume(msg);
@ -152,7 +156,7 @@ UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetec
return sub; return sub;
} }
UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_success_rate_stdev_factor(envoy_api_v2_cluster_OutlierDetection *msg, struct google_protobuf_UInt32Value* value) { UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_success_rate_stdev_factor(envoy_api_v2_cluster_OutlierDetection *msg, struct google_protobuf_UInt32Value* value) {
UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(32, 64)) = value; UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(36, 72)) = value;
} }
UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_mutable_success_rate_stdev_factor(envoy_api_v2_cluster_OutlierDetection *msg, upb_arena *arena) { UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_mutable_success_rate_stdev_factor(envoy_api_v2_cluster_OutlierDetection *msg, upb_arena *arena) {
struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_cluster_OutlierDetection_success_rate_stdev_factor(msg); struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_cluster_OutlierDetection_success_rate_stdev_factor(msg);
@ -164,7 +168,7 @@ UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetec
return sub; return sub;
} }
UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_consecutive_gateway_failure(envoy_api_v2_cluster_OutlierDetection *msg, struct google_protobuf_UInt32Value* value) { UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_consecutive_gateway_failure(envoy_api_v2_cluster_OutlierDetection *msg, struct google_protobuf_UInt32Value* value) {
UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(36, 72)) = value; UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(40, 80)) = value;
} }
UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_mutable_consecutive_gateway_failure(envoy_api_v2_cluster_OutlierDetection *msg, upb_arena *arena) { UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_mutable_consecutive_gateway_failure(envoy_api_v2_cluster_OutlierDetection *msg, upb_arena *arena) {
struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_cluster_OutlierDetection_consecutive_gateway_failure(msg); struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_cluster_OutlierDetection_consecutive_gateway_failure(msg);
@ -176,7 +180,7 @@ UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetec
return sub; return sub;
} }
UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_enforcing_consecutive_gateway_failure(envoy_api_v2_cluster_OutlierDetection *msg, struct google_protobuf_UInt32Value* value) { UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_enforcing_consecutive_gateway_failure(envoy_api_v2_cluster_OutlierDetection *msg, struct google_protobuf_UInt32Value* value) {
UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(40, 80)) = value; UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(44, 88)) = value;
} }
UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_mutable_enforcing_consecutive_gateway_failure(envoy_api_v2_cluster_OutlierDetection *msg, upb_arena *arena) { UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_mutable_enforcing_consecutive_gateway_failure(envoy_api_v2_cluster_OutlierDetection *msg, upb_arena *arena) {
struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_cluster_OutlierDetection_enforcing_consecutive_gateway_failure(msg); struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_cluster_OutlierDetection_enforcing_consecutive_gateway_failure(msg);
@ -187,6 +191,45 @@ UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetec
} }
return sub; return sub;
} }
UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_split_external_local_origin_errors(envoy_api_v2_cluster_OutlierDetection *msg, bool value) {
UPB_FIELD_AT(msg, bool, UPB_SIZE(0, 0)) = value;
}
UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_consecutive_local_origin_failure(envoy_api_v2_cluster_OutlierDetection *msg, struct google_protobuf_UInt32Value* value) {
UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(48, 96)) = value;
}
UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_mutable_consecutive_local_origin_failure(envoy_api_v2_cluster_OutlierDetection *msg, upb_arena *arena) {
struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_cluster_OutlierDetection_consecutive_local_origin_failure(msg);
if (sub == NULL) {
sub = (struct google_protobuf_UInt32Value*)upb_msg_new(&google_protobuf_UInt32Value_msginit, arena);
if (!sub) return NULL;
envoy_api_v2_cluster_OutlierDetection_set_consecutive_local_origin_failure(msg, sub);
}
return sub;
}
UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_enforcing_consecutive_local_origin_failure(envoy_api_v2_cluster_OutlierDetection *msg, struct google_protobuf_UInt32Value* value) {
UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(52, 104)) = value;
}
UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_mutable_enforcing_consecutive_local_origin_failure(envoy_api_v2_cluster_OutlierDetection *msg, upb_arena *arena) {
struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_cluster_OutlierDetection_enforcing_consecutive_local_origin_failure(msg);
if (sub == NULL) {
sub = (struct google_protobuf_UInt32Value*)upb_msg_new(&google_protobuf_UInt32Value_msginit, arena);
if (!sub) return NULL;
envoy_api_v2_cluster_OutlierDetection_set_enforcing_consecutive_local_origin_failure(msg, sub);
}
return sub;
}
UPB_INLINE void envoy_api_v2_cluster_OutlierDetection_set_enforcing_local_origin_success_rate(envoy_api_v2_cluster_OutlierDetection *msg, struct google_protobuf_UInt32Value* value) {
UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(56, 112)) = value;
}
UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_cluster_OutlierDetection_mutable_enforcing_local_origin_success_rate(envoy_api_v2_cluster_OutlierDetection *msg, upb_arena *arena) {
struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_cluster_OutlierDetection_enforcing_local_origin_success_rate(msg);
if (sub == NULL) {
sub = (struct google_protobuf_UInt32Value*)upb_msg_new(&google_protobuf_UInt32Value_msginit, arena);
if (!sub) return NULL;
envoy_api_v2_cluster_OutlierDetection_set_enforcing_local_origin_success_rate(msg, sub);
}
return sub;
}
#ifdef __cplusplus #ifdef __cplusplus
} /* extern "C" */ } /* extern "C" */

@ -9,6 +9,7 @@
#include <stddef.h> #include <stddef.h>
#include "upb/msg.h" #include "upb/msg.h"
#include "envoy/api/v2/core/base.upb.h" #include "envoy/api/v2/core/base.upb.h"
#include "envoy/api/v2/core/http_uri.upb.h"
#include "google/protobuf/any.upb.h" #include "google/protobuf/any.upb.h"
#include "google/protobuf/struct.upb.h" #include "google/protobuf/struct.upb.h"
#include "google/protobuf/wrappers.upb.h" #include "google/protobuf/wrappers.upb.h"
@ -142,6 +143,37 @@ const upb_msglayout envoy_api_v2_core_DataSource_msginit = {
UPB_SIZE(16, 32), 3, false, UPB_SIZE(16, 32), 3, false,
}; };
static const upb_msglayout *const envoy_api_v2_core_RemoteDataSource_submsgs[1] = {
&envoy_api_v2_core_HttpUri_msginit,
};
static const upb_msglayout_field envoy_api_v2_core_RemoteDataSource__fields[2] = {
{1, UPB_SIZE(8, 16), 0, 0, 11, 1},
{2, UPB_SIZE(0, 0), 0, 0, 9, 1},
};
const upb_msglayout envoy_api_v2_core_RemoteDataSource_msginit = {
&envoy_api_v2_core_RemoteDataSource_submsgs[0],
&envoy_api_v2_core_RemoteDataSource__fields[0],
UPB_SIZE(16, 32), 2, false,
};
static const upb_msglayout *const envoy_api_v2_core_AsyncDataSource_submsgs[2] = {
&envoy_api_v2_core_DataSource_msginit,
&envoy_api_v2_core_RemoteDataSource_msginit,
};
static const upb_msglayout_field envoy_api_v2_core_AsyncDataSource__fields[2] = {
{1, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 0, 11, 1},
{2, UPB_SIZE(0, 0), UPB_SIZE(-5, -9), 1, 11, 1},
};
const upb_msglayout envoy_api_v2_core_AsyncDataSource_msginit = {
&envoy_api_v2_core_AsyncDataSource_submsgs[0],
&envoy_api_v2_core_AsyncDataSource__fields[0],
UPB_SIZE(8, 16), 2, false,
};
static const upb_msglayout *const envoy_api_v2_core_TransportSocket_submsgs[2] = { static const upb_msglayout *const envoy_api_v2_core_TransportSocket_submsgs[2] = {
&google_protobuf_Any_msginit, &google_protobuf_Any_msginit,
&google_protobuf_Struct_msginit, &google_protobuf_Struct_msginit,

@ -29,6 +29,8 @@ struct envoy_api_v2_core_HeaderValue;
struct envoy_api_v2_core_HeaderValueOption; struct envoy_api_v2_core_HeaderValueOption;
struct envoy_api_v2_core_HeaderMap; struct envoy_api_v2_core_HeaderMap;
struct envoy_api_v2_core_DataSource; struct envoy_api_v2_core_DataSource;
struct envoy_api_v2_core_RemoteDataSource;
struct envoy_api_v2_core_AsyncDataSource;
struct envoy_api_v2_core_TransportSocket; struct envoy_api_v2_core_TransportSocket;
struct envoy_api_v2_core_SocketOption; struct envoy_api_v2_core_SocketOption;
struct envoy_api_v2_core_RuntimeFractionalPercent; struct envoy_api_v2_core_RuntimeFractionalPercent;
@ -42,6 +44,8 @@ typedef struct envoy_api_v2_core_HeaderValue envoy_api_v2_core_HeaderValue;
typedef struct envoy_api_v2_core_HeaderValueOption envoy_api_v2_core_HeaderValueOption; typedef struct envoy_api_v2_core_HeaderValueOption envoy_api_v2_core_HeaderValueOption;
typedef struct envoy_api_v2_core_HeaderMap envoy_api_v2_core_HeaderMap; typedef struct envoy_api_v2_core_HeaderMap envoy_api_v2_core_HeaderMap;
typedef struct envoy_api_v2_core_DataSource envoy_api_v2_core_DataSource; typedef struct envoy_api_v2_core_DataSource envoy_api_v2_core_DataSource;
typedef struct envoy_api_v2_core_RemoteDataSource envoy_api_v2_core_RemoteDataSource;
typedef struct envoy_api_v2_core_AsyncDataSource envoy_api_v2_core_AsyncDataSource;
typedef struct envoy_api_v2_core_TransportSocket envoy_api_v2_core_TransportSocket; typedef struct envoy_api_v2_core_TransportSocket envoy_api_v2_core_TransportSocket;
typedef struct envoy_api_v2_core_SocketOption envoy_api_v2_core_SocketOption; typedef struct envoy_api_v2_core_SocketOption envoy_api_v2_core_SocketOption;
typedef struct envoy_api_v2_core_RuntimeFractionalPercent envoy_api_v2_core_RuntimeFractionalPercent; typedef struct envoy_api_v2_core_RuntimeFractionalPercent envoy_api_v2_core_RuntimeFractionalPercent;
@ -55,14 +59,18 @@ extern const upb_msglayout envoy_api_v2_core_HeaderValue_msginit;
extern const upb_msglayout envoy_api_v2_core_HeaderValueOption_msginit; extern const upb_msglayout envoy_api_v2_core_HeaderValueOption_msginit;
extern const upb_msglayout envoy_api_v2_core_HeaderMap_msginit; extern const upb_msglayout envoy_api_v2_core_HeaderMap_msginit;
extern const upb_msglayout envoy_api_v2_core_DataSource_msginit; extern const upb_msglayout envoy_api_v2_core_DataSource_msginit;
extern const upb_msglayout envoy_api_v2_core_RemoteDataSource_msginit;
extern const upb_msglayout envoy_api_v2_core_AsyncDataSource_msginit;
extern const upb_msglayout envoy_api_v2_core_TransportSocket_msginit; extern const upb_msglayout envoy_api_v2_core_TransportSocket_msginit;
extern const upb_msglayout envoy_api_v2_core_SocketOption_msginit; extern const upb_msglayout envoy_api_v2_core_SocketOption_msginit;
extern const upb_msglayout envoy_api_v2_core_RuntimeFractionalPercent_msginit; extern const upb_msglayout envoy_api_v2_core_RuntimeFractionalPercent_msginit;
extern const upb_msglayout envoy_api_v2_core_ControlPlane_msginit; extern const upb_msglayout envoy_api_v2_core_ControlPlane_msginit;
struct envoy_api_v2_core_HttpUri;
struct envoy_type_FractionalPercent; struct envoy_type_FractionalPercent;
struct google_protobuf_Any; struct google_protobuf_Any;
struct google_protobuf_BoolValue; struct google_protobuf_BoolValue;
struct google_protobuf_Struct; struct google_protobuf_Struct;
extern const upb_msglayout envoy_api_v2_core_HttpUri_msginit;
extern const upb_msglayout envoy_type_FractionalPercent_msginit; extern const upb_msglayout envoy_type_FractionalPercent_msginit;
extern const upb_msglayout google_protobuf_Any_msginit; extern const upb_msglayout google_protobuf_Any_msginit;
extern const upb_msglayout google_protobuf_BoolValue_msginit; extern const upb_msglayout google_protobuf_BoolValue_msginit;
@ -92,6 +100,12 @@ typedef enum {
envoy_api_v2_core_SocketOption_STATE_LISTENING = 2 envoy_api_v2_core_SocketOption_STATE_LISTENING = 2
} envoy_api_v2_core_SocketOption_SocketState; } envoy_api_v2_core_SocketOption_SocketState;
typedef enum {
envoy_api_v2_core_UNSPECIFIED = 0,
envoy_api_v2_core_INBOUND = 1,
envoy_api_v2_core_OUTBOUND = 2
} envoy_api_v2_core_TrafficDirection;
/* envoy.api.v2.core.Locality */ /* envoy.api.v2.core.Locality */
@ -397,6 +411,90 @@ UPB_INLINE void envoy_api_v2_core_DataSource_set_inline_string(envoy_api_v2_core
UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 3); UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 3);
} }
/* envoy.api.v2.core.RemoteDataSource */
UPB_INLINE envoy_api_v2_core_RemoteDataSource *envoy_api_v2_core_RemoteDataSource_new(upb_arena *arena) {
return (envoy_api_v2_core_RemoteDataSource *)upb_msg_new(&envoy_api_v2_core_RemoteDataSource_msginit, arena);
}
UPB_INLINE envoy_api_v2_core_RemoteDataSource *envoy_api_v2_core_RemoteDataSource_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_api_v2_core_RemoteDataSource *ret = envoy_api_v2_core_RemoteDataSource_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_api_v2_core_RemoteDataSource_msginit, arena)) ? ret : NULL;
}
UPB_INLINE char *envoy_api_v2_core_RemoteDataSource_serialize(const envoy_api_v2_core_RemoteDataSource *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_api_v2_core_RemoteDataSource_msginit, arena, len);
}
UPB_INLINE const struct envoy_api_v2_core_HttpUri* envoy_api_v2_core_RemoteDataSource_http_uri(const envoy_api_v2_core_RemoteDataSource *msg) { return UPB_FIELD_AT(msg, const struct envoy_api_v2_core_HttpUri*, UPB_SIZE(8, 16)); }
UPB_INLINE upb_strview envoy_api_v2_core_RemoteDataSource_sha256(const envoy_api_v2_core_RemoteDataSource *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(0, 0)); }
UPB_INLINE void envoy_api_v2_core_RemoteDataSource_set_http_uri(envoy_api_v2_core_RemoteDataSource *msg, struct envoy_api_v2_core_HttpUri* value) {
UPB_FIELD_AT(msg, struct envoy_api_v2_core_HttpUri*, UPB_SIZE(8, 16)) = value;
}
UPB_INLINE struct envoy_api_v2_core_HttpUri* envoy_api_v2_core_RemoteDataSource_mutable_http_uri(envoy_api_v2_core_RemoteDataSource *msg, upb_arena *arena) {
struct envoy_api_v2_core_HttpUri* sub = (struct envoy_api_v2_core_HttpUri*)envoy_api_v2_core_RemoteDataSource_http_uri(msg);
if (sub == NULL) {
sub = (struct envoy_api_v2_core_HttpUri*)upb_msg_new(&envoy_api_v2_core_HttpUri_msginit, arena);
if (!sub) return NULL;
envoy_api_v2_core_RemoteDataSource_set_http_uri(msg, sub);
}
return sub;
}
UPB_INLINE void envoy_api_v2_core_RemoteDataSource_set_sha256(envoy_api_v2_core_RemoteDataSource *msg, upb_strview value) {
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(0, 0)) = value;
}
/* envoy.api.v2.core.AsyncDataSource */
UPB_INLINE envoy_api_v2_core_AsyncDataSource *envoy_api_v2_core_AsyncDataSource_new(upb_arena *arena) {
return (envoy_api_v2_core_AsyncDataSource *)upb_msg_new(&envoy_api_v2_core_AsyncDataSource_msginit, arena);
}
UPB_INLINE envoy_api_v2_core_AsyncDataSource *envoy_api_v2_core_AsyncDataSource_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_api_v2_core_AsyncDataSource *ret = envoy_api_v2_core_AsyncDataSource_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_api_v2_core_AsyncDataSource_msginit, arena)) ? ret : NULL;
}
UPB_INLINE char *envoy_api_v2_core_AsyncDataSource_serialize(const envoy_api_v2_core_AsyncDataSource *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_api_v2_core_AsyncDataSource_msginit, arena, len);
}
typedef enum {
envoy_api_v2_core_AsyncDataSource_specifier_local = 1,
envoy_api_v2_core_AsyncDataSource_specifier_remote = 2,
envoy_api_v2_core_AsyncDataSource_specifier_NOT_SET = 0
} envoy_api_v2_core_AsyncDataSource_specifier_oneofcases;
UPB_INLINE envoy_api_v2_core_AsyncDataSource_specifier_oneofcases envoy_api_v2_core_AsyncDataSource_specifier_case(const envoy_api_v2_core_AsyncDataSource* msg) { return (envoy_api_v2_core_AsyncDataSource_specifier_oneofcases)UPB_FIELD_AT(msg, int32_t, UPB_SIZE(4, 8)); }
UPB_INLINE bool envoy_api_v2_core_AsyncDataSource_has_local(const envoy_api_v2_core_AsyncDataSource *msg) { return _upb_has_oneof_field(msg, UPB_SIZE(4, 8), 1); }
UPB_INLINE const envoy_api_v2_core_DataSource* envoy_api_v2_core_AsyncDataSource_local(const envoy_api_v2_core_AsyncDataSource *msg) { return UPB_READ_ONEOF(msg, const envoy_api_v2_core_DataSource*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 1, NULL); }
UPB_INLINE bool envoy_api_v2_core_AsyncDataSource_has_remote(const envoy_api_v2_core_AsyncDataSource *msg) { return _upb_has_oneof_field(msg, UPB_SIZE(4, 8), 2); }
UPB_INLINE const envoy_api_v2_core_RemoteDataSource* envoy_api_v2_core_AsyncDataSource_remote(const envoy_api_v2_core_AsyncDataSource *msg) { return UPB_READ_ONEOF(msg, const envoy_api_v2_core_RemoteDataSource*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 2, NULL); }
UPB_INLINE void envoy_api_v2_core_AsyncDataSource_set_local(envoy_api_v2_core_AsyncDataSource *msg, envoy_api_v2_core_DataSource* value) {
UPB_WRITE_ONEOF(msg, envoy_api_v2_core_DataSource*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 1);
}
UPB_INLINE struct envoy_api_v2_core_DataSource* envoy_api_v2_core_AsyncDataSource_mutable_local(envoy_api_v2_core_AsyncDataSource *msg, upb_arena *arena) {
struct envoy_api_v2_core_DataSource* sub = (struct envoy_api_v2_core_DataSource*)envoy_api_v2_core_AsyncDataSource_local(msg);
if (sub == NULL) {
sub = (struct envoy_api_v2_core_DataSource*)upb_msg_new(&envoy_api_v2_core_DataSource_msginit, arena);
if (!sub) return NULL;
envoy_api_v2_core_AsyncDataSource_set_local(msg, sub);
}
return sub;
}
UPB_INLINE void envoy_api_v2_core_AsyncDataSource_set_remote(envoy_api_v2_core_AsyncDataSource *msg, envoy_api_v2_core_RemoteDataSource* value) {
UPB_WRITE_ONEOF(msg, envoy_api_v2_core_RemoteDataSource*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 2);
}
UPB_INLINE struct envoy_api_v2_core_RemoteDataSource* envoy_api_v2_core_AsyncDataSource_mutable_remote(envoy_api_v2_core_AsyncDataSource *msg, upb_arena *arena) {
struct envoy_api_v2_core_RemoteDataSource* sub = (struct envoy_api_v2_core_RemoteDataSource*)envoy_api_v2_core_AsyncDataSource_remote(msg);
if (sub == NULL) {
sub = (struct envoy_api_v2_core_RemoteDataSource*)upb_msg_new(&envoy_api_v2_core_RemoteDataSource_msginit, arena);
if (!sub) return NULL;
envoy_api_v2_core_AsyncDataSource_set_remote(msg, sub);
}
return sub;
}
/* envoy.api.v2.core.TransportSocket */ /* envoy.api.v2.core.TransportSocket */
UPB_INLINE envoy_api_v2_core_TransportSocket *envoy_api_v2_core_TransportSocket_new(upb_arena *arena) { UPB_INLINE envoy_api_v2_core_TransportSocket *envoy_api_v2_core_TransportSocket_new(upb_arena *arena) {

@ -23,19 +23,20 @@ static const upb_msglayout *const envoy_api_v2_core_ApiConfigSource_submsgs[4] =
&google_protobuf_Duration_msginit, &google_protobuf_Duration_msginit,
}; };
static const upb_msglayout_field envoy_api_v2_core_ApiConfigSource__fields[6] = { static const upb_msglayout_field envoy_api_v2_core_ApiConfigSource__fields[7] = {
{1, UPB_SIZE(0, 0), 0, 0, 14, 1}, {1, UPB_SIZE(0, 0), 0, 0, 14, 1},
{2, UPB_SIZE(20, 32), 0, 0, 9, 3}, {2, UPB_SIZE(24, 40), 0, 0, 9, 3},
{3, UPB_SIZE(8, 8), 0, 2, 11, 1}, {3, UPB_SIZE(12, 16), 0, 2, 11, 1},
{4, UPB_SIZE(24, 40), 0, 0, 11, 3}, {4, UPB_SIZE(28, 48), 0, 0, 11, 3},
{5, UPB_SIZE(12, 16), 0, 2, 11, 1}, {5, UPB_SIZE(16, 24), 0, 2, 11, 1},
{6, UPB_SIZE(16, 24), 0, 1, 11, 1}, {6, UPB_SIZE(20, 32), 0, 1, 11, 1},
{7, UPB_SIZE(8, 8), 0, 0, 8, 1},
}; };
const upb_msglayout envoy_api_v2_core_ApiConfigSource_msginit = { const upb_msglayout envoy_api_v2_core_ApiConfigSource_msginit = {
&envoy_api_v2_core_ApiConfigSource_submsgs[0], &envoy_api_v2_core_ApiConfigSource_submsgs[0],
&envoy_api_v2_core_ApiConfigSource__fields[0], &envoy_api_v2_core_ApiConfigSource__fields[0],
UPB_SIZE(32, 48), 6, false, UPB_SIZE(32, 56), 7, false,
}; };
const upb_msglayout envoy_api_v2_core_AggregatedConfigSource_msginit = { const upb_msglayout envoy_api_v2_core_AggregatedConfigSource_msginit = {

@ -64,27 +64,28 @@ UPB_INLINE char *envoy_api_v2_core_ApiConfigSource_serialize(const envoy_api_v2_
} }
UPB_INLINE int32_t envoy_api_v2_core_ApiConfigSource_api_type(const envoy_api_v2_core_ApiConfigSource *msg) { return UPB_FIELD_AT(msg, int32_t, UPB_SIZE(0, 0)); } UPB_INLINE int32_t envoy_api_v2_core_ApiConfigSource_api_type(const envoy_api_v2_core_ApiConfigSource *msg) { return UPB_FIELD_AT(msg, int32_t, UPB_SIZE(0, 0)); }
UPB_INLINE upb_strview const* envoy_api_v2_core_ApiConfigSource_cluster_names(const envoy_api_v2_core_ApiConfigSource *msg, size_t *len) { return (upb_strview const*)_upb_array_accessor(msg, UPB_SIZE(20, 32), len); } UPB_INLINE upb_strview const* envoy_api_v2_core_ApiConfigSource_cluster_names(const envoy_api_v2_core_ApiConfigSource *msg, size_t *len) { return (upb_strview const*)_upb_array_accessor(msg, UPB_SIZE(24, 40), len); }
UPB_INLINE const struct google_protobuf_Duration* envoy_api_v2_core_ApiConfigSource_refresh_delay(const envoy_api_v2_core_ApiConfigSource *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_Duration*, UPB_SIZE(8, 8)); } UPB_INLINE const struct google_protobuf_Duration* envoy_api_v2_core_ApiConfigSource_refresh_delay(const envoy_api_v2_core_ApiConfigSource *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_Duration*, UPB_SIZE(12, 16)); }
UPB_INLINE const struct envoy_api_v2_core_GrpcService* const* envoy_api_v2_core_ApiConfigSource_grpc_services(const envoy_api_v2_core_ApiConfigSource *msg, size_t *len) { return (const struct envoy_api_v2_core_GrpcService* const*)_upb_array_accessor(msg, UPB_SIZE(24, 40), len); } UPB_INLINE const struct envoy_api_v2_core_GrpcService* const* envoy_api_v2_core_ApiConfigSource_grpc_services(const envoy_api_v2_core_ApiConfigSource *msg, size_t *len) { return (const struct envoy_api_v2_core_GrpcService* const*)_upb_array_accessor(msg, UPB_SIZE(28, 48), len); }
UPB_INLINE const struct google_protobuf_Duration* envoy_api_v2_core_ApiConfigSource_request_timeout(const envoy_api_v2_core_ApiConfigSource *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_Duration*, UPB_SIZE(12, 16)); } UPB_INLINE const struct google_protobuf_Duration* envoy_api_v2_core_ApiConfigSource_request_timeout(const envoy_api_v2_core_ApiConfigSource *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_Duration*, UPB_SIZE(16, 24)); }
UPB_INLINE const envoy_api_v2_core_RateLimitSettings* envoy_api_v2_core_ApiConfigSource_rate_limit_settings(const envoy_api_v2_core_ApiConfigSource *msg) { return UPB_FIELD_AT(msg, const envoy_api_v2_core_RateLimitSettings*, UPB_SIZE(16, 24)); } UPB_INLINE const envoy_api_v2_core_RateLimitSettings* envoy_api_v2_core_ApiConfigSource_rate_limit_settings(const envoy_api_v2_core_ApiConfigSource *msg) { return UPB_FIELD_AT(msg, const envoy_api_v2_core_RateLimitSettings*, UPB_SIZE(20, 32)); }
UPB_INLINE bool envoy_api_v2_core_ApiConfigSource_set_node_on_first_message_only(const envoy_api_v2_core_ApiConfigSource *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(8, 8)); }
UPB_INLINE void envoy_api_v2_core_ApiConfigSource_set_api_type(envoy_api_v2_core_ApiConfigSource *msg, int32_t value) { UPB_INLINE void envoy_api_v2_core_ApiConfigSource_set_api_type(envoy_api_v2_core_ApiConfigSource *msg, int32_t value) {
UPB_FIELD_AT(msg, int32_t, UPB_SIZE(0, 0)) = value; UPB_FIELD_AT(msg, int32_t, UPB_SIZE(0, 0)) = value;
} }
UPB_INLINE upb_strview* envoy_api_v2_core_ApiConfigSource_mutable_cluster_names(envoy_api_v2_core_ApiConfigSource *msg, size_t *len) { UPB_INLINE upb_strview* envoy_api_v2_core_ApiConfigSource_mutable_cluster_names(envoy_api_v2_core_ApiConfigSource *msg, size_t *len) {
return (upb_strview*)_upb_array_mutable_accessor(msg, UPB_SIZE(20, 32), len); return (upb_strview*)_upb_array_mutable_accessor(msg, UPB_SIZE(24, 40), len);
} }
UPB_INLINE upb_strview* envoy_api_v2_core_ApiConfigSource_resize_cluster_names(envoy_api_v2_core_ApiConfigSource *msg, size_t len, upb_arena *arena) { UPB_INLINE upb_strview* envoy_api_v2_core_ApiConfigSource_resize_cluster_names(envoy_api_v2_core_ApiConfigSource *msg, size_t len, upb_arena *arena) {
return (upb_strview*)_upb_array_resize_accessor(msg, UPB_SIZE(20, 32), len, UPB_SIZE(8, 16), UPB_TYPE_STRING, arena); return (upb_strview*)_upb_array_resize_accessor(msg, UPB_SIZE(24, 40), len, UPB_SIZE(8, 16), UPB_TYPE_STRING, arena);
} }
UPB_INLINE bool envoy_api_v2_core_ApiConfigSource_add_cluster_names(envoy_api_v2_core_ApiConfigSource *msg, upb_strview val, upb_arena *arena) { UPB_INLINE bool envoy_api_v2_core_ApiConfigSource_add_cluster_names(envoy_api_v2_core_ApiConfigSource *msg, upb_strview val, upb_arena *arena) {
return _upb_array_append_accessor( return _upb_array_append_accessor(
msg, UPB_SIZE(20, 32), UPB_SIZE(8, 16), UPB_TYPE_STRING, &val, arena); msg, UPB_SIZE(24, 40), UPB_SIZE(8, 16), UPB_TYPE_STRING, &val, arena);
} }
UPB_INLINE void envoy_api_v2_core_ApiConfigSource_set_refresh_delay(envoy_api_v2_core_ApiConfigSource *msg, struct google_protobuf_Duration* value) { UPB_INLINE void envoy_api_v2_core_ApiConfigSource_set_refresh_delay(envoy_api_v2_core_ApiConfigSource *msg, struct google_protobuf_Duration* value) {
UPB_FIELD_AT(msg, struct google_protobuf_Duration*, UPB_SIZE(8, 8)) = value; UPB_FIELD_AT(msg, struct google_protobuf_Duration*, UPB_SIZE(12, 16)) = value;
} }
UPB_INLINE struct google_protobuf_Duration* envoy_api_v2_core_ApiConfigSource_mutable_refresh_delay(envoy_api_v2_core_ApiConfigSource *msg, upb_arena *arena) { UPB_INLINE struct google_protobuf_Duration* envoy_api_v2_core_ApiConfigSource_mutable_refresh_delay(envoy_api_v2_core_ApiConfigSource *msg, upb_arena *arena) {
struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_api_v2_core_ApiConfigSource_refresh_delay(msg); struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_api_v2_core_ApiConfigSource_refresh_delay(msg);
@ -96,20 +97,20 @@ UPB_INLINE struct google_protobuf_Duration* envoy_api_v2_core_ApiConfigSource_mu
return sub; return sub;
} }
UPB_INLINE struct envoy_api_v2_core_GrpcService** envoy_api_v2_core_ApiConfigSource_mutable_grpc_services(envoy_api_v2_core_ApiConfigSource *msg, size_t *len) { UPB_INLINE struct envoy_api_v2_core_GrpcService** envoy_api_v2_core_ApiConfigSource_mutable_grpc_services(envoy_api_v2_core_ApiConfigSource *msg, size_t *len) {
return (struct envoy_api_v2_core_GrpcService**)_upb_array_mutable_accessor(msg, UPB_SIZE(24, 40), len); return (struct envoy_api_v2_core_GrpcService**)_upb_array_mutable_accessor(msg, UPB_SIZE(28, 48), len);
} }
UPB_INLINE struct envoy_api_v2_core_GrpcService** envoy_api_v2_core_ApiConfigSource_resize_grpc_services(envoy_api_v2_core_ApiConfigSource *msg, size_t len, upb_arena *arena) { UPB_INLINE struct envoy_api_v2_core_GrpcService** envoy_api_v2_core_ApiConfigSource_resize_grpc_services(envoy_api_v2_core_ApiConfigSource *msg, size_t len, upb_arena *arena) {
return (struct envoy_api_v2_core_GrpcService**)_upb_array_resize_accessor(msg, UPB_SIZE(24, 40), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena); return (struct envoy_api_v2_core_GrpcService**)_upb_array_resize_accessor(msg, UPB_SIZE(28, 48), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
} }
UPB_INLINE struct envoy_api_v2_core_GrpcService* envoy_api_v2_core_ApiConfigSource_add_grpc_services(envoy_api_v2_core_ApiConfigSource *msg, upb_arena *arena) { UPB_INLINE struct envoy_api_v2_core_GrpcService* envoy_api_v2_core_ApiConfigSource_add_grpc_services(envoy_api_v2_core_ApiConfigSource *msg, upb_arena *arena) {
struct envoy_api_v2_core_GrpcService* sub = (struct envoy_api_v2_core_GrpcService*)upb_msg_new(&envoy_api_v2_core_GrpcService_msginit, arena); struct envoy_api_v2_core_GrpcService* sub = (struct envoy_api_v2_core_GrpcService*)upb_msg_new(&envoy_api_v2_core_GrpcService_msginit, arena);
bool ok = _upb_array_append_accessor( bool ok = _upb_array_append_accessor(
msg, UPB_SIZE(24, 40), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena); msg, UPB_SIZE(28, 48), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
if (!ok) return NULL; if (!ok) return NULL;
return sub; return sub;
} }
UPB_INLINE void envoy_api_v2_core_ApiConfigSource_set_request_timeout(envoy_api_v2_core_ApiConfigSource *msg, struct google_protobuf_Duration* value) { UPB_INLINE void envoy_api_v2_core_ApiConfigSource_set_request_timeout(envoy_api_v2_core_ApiConfigSource *msg, struct google_protobuf_Duration* value) {
UPB_FIELD_AT(msg, struct google_protobuf_Duration*, UPB_SIZE(12, 16)) = value; UPB_FIELD_AT(msg, struct google_protobuf_Duration*, UPB_SIZE(16, 24)) = value;
} }
UPB_INLINE struct google_protobuf_Duration* envoy_api_v2_core_ApiConfigSource_mutable_request_timeout(envoy_api_v2_core_ApiConfigSource *msg, upb_arena *arena) { UPB_INLINE struct google_protobuf_Duration* envoy_api_v2_core_ApiConfigSource_mutable_request_timeout(envoy_api_v2_core_ApiConfigSource *msg, upb_arena *arena) {
struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_api_v2_core_ApiConfigSource_request_timeout(msg); struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_api_v2_core_ApiConfigSource_request_timeout(msg);
@ -121,7 +122,7 @@ UPB_INLINE struct google_protobuf_Duration* envoy_api_v2_core_ApiConfigSource_mu
return sub; return sub;
} }
UPB_INLINE void envoy_api_v2_core_ApiConfigSource_set_rate_limit_settings(envoy_api_v2_core_ApiConfigSource *msg, envoy_api_v2_core_RateLimitSettings* value) { UPB_INLINE void envoy_api_v2_core_ApiConfigSource_set_rate_limit_settings(envoy_api_v2_core_ApiConfigSource *msg, envoy_api_v2_core_RateLimitSettings* value) {
UPB_FIELD_AT(msg, envoy_api_v2_core_RateLimitSettings*, UPB_SIZE(16, 24)) = value; UPB_FIELD_AT(msg, envoy_api_v2_core_RateLimitSettings*, UPB_SIZE(20, 32)) = value;
} }
UPB_INLINE struct envoy_api_v2_core_RateLimitSettings* envoy_api_v2_core_ApiConfigSource_mutable_rate_limit_settings(envoy_api_v2_core_ApiConfigSource *msg, upb_arena *arena) { UPB_INLINE struct envoy_api_v2_core_RateLimitSettings* envoy_api_v2_core_ApiConfigSource_mutable_rate_limit_settings(envoy_api_v2_core_ApiConfigSource *msg, upb_arena *arena) {
struct envoy_api_v2_core_RateLimitSettings* sub = (struct envoy_api_v2_core_RateLimitSettings*)envoy_api_v2_core_ApiConfigSource_rate_limit_settings(msg); struct envoy_api_v2_core_RateLimitSettings* sub = (struct envoy_api_v2_core_RateLimitSettings*)envoy_api_v2_core_ApiConfigSource_rate_limit_settings(msg);
@ -132,6 +133,9 @@ UPB_INLINE struct envoy_api_v2_core_RateLimitSettings* envoy_api_v2_core_ApiConf
} }
return sub; return sub;
} }
UPB_INLINE void envoy_api_v2_core_ApiConfigSource_set_set_node_on_first_message_only(envoy_api_v2_core_ApiConfigSource *msg, bool value) {
UPB_FIELD_AT(msg, bool, UPB_SIZE(8, 8)) = value;
}
/* envoy.api.v2.core.AggregatedConfigSource */ /* envoy.api.v2.core.AggregatedConfigSource */

@ -0,0 +1,35 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/api/v2/core/http_uri.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#include <stddef.h>
#include "upb/msg.h"
#include "envoy/api/v2/core/http_uri.upb.h"
#include "google/protobuf/duration.upb.h"
#include "gogoproto/gogo.upb.h"
#include "validate/validate.upb.h"
#include "upb/port_def.inc"
static const upb_msglayout *const envoy_api_v2_core_HttpUri_submsgs[1] = {
&google_protobuf_Duration_msginit,
};
static const upb_msglayout_field envoy_api_v2_core_HttpUri__fields[3] = {
{1, UPB_SIZE(0, 0), 0, 0, 9, 1},
{2, UPB_SIZE(12, 24), UPB_SIZE(-21, -41), 0, 9, 1},
{3, UPB_SIZE(8, 16), 0, 0, 11, 1},
};
const upb_msglayout envoy_api_v2_core_HttpUri_msginit = {
&envoy_api_v2_core_HttpUri_submsgs[0],
&envoy_api_v2_core_HttpUri__fields[0],
UPB_SIZE(24, 48), 3, false,
};
#include "upb/port_undef.inc"

@ -0,0 +1,80 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* envoy/api/v2/core/http_uri.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#ifndef ENVOY_API_V2_CORE_HTTP_URI_PROTO_UPB_H_
#define ENVOY_API_V2_CORE_HTTP_URI_PROTO_UPB_H_
#include "upb/generated_util.h"
#include "upb/msg.h"
#include "upb/decode.h"
#include "upb/encode.h"
#include "upb/port_def.inc"
#ifdef __cplusplus
extern "C" {
#endif
struct envoy_api_v2_core_HttpUri;
typedef struct envoy_api_v2_core_HttpUri envoy_api_v2_core_HttpUri;
extern const upb_msglayout envoy_api_v2_core_HttpUri_msginit;
struct google_protobuf_Duration;
extern const upb_msglayout google_protobuf_Duration_msginit;
/* envoy.api.v2.core.HttpUri */
UPB_INLINE envoy_api_v2_core_HttpUri *envoy_api_v2_core_HttpUri_new(upb_arena *arena) {
return (envoy_api_v2_core_HttpUri *)upb_msg_new(&envoy_api_v2_core_HttpUri_msginit, arena);
}
UPB_INLINE envoy_api_v2_core_HttpUri *envoy_api_v2_core_HttpUri_parse(const char *buf, size_t size,
upb_arena *arena) {
envoy_api_v2_core_HttpUri *ret = envoy_api_v2_core_HttpUri_new(arena);
return (ret && upb_decode(buf, size, ret, &envoy_api_v2_core_HttpUri_msginit, arena)) ? ret : NULL;
}
UPB_INLINE char *envoy_api_v2_core_HttpUri_serialize(const envoy_api_v2_core_HttpUri *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &envoy_api_v2_core_HttpUri_msginit, arena, len);
}
typedef enum {
envoy_api_v2_core_HttpUri_http_upstream_type_cluster = 2,
envoy_api_v2_core_HttpUri_http_upstream_type_NOT_SET = 0
} envoy_api_v2_core_HttpUri_http_upstream_type_oneofcases;
UPB_INLINE envoy_api_v2_core_HttpUri_http_upstream_type_oneofcases envoy_api_v2_core_HttpUri_http_upstream_type_case(const envoy_api_v2_core_HttpUri* msg) { return (envoy_api_v2_core_HttpUri_http_upstream_type_oneofcases)UPB_FIELD_AT(msg, int32_t, UPB_SIZE(20, 40)); }
UPB_INLINE upb_strview envoy_api_v2_core_HttpUri_uri(const envoy_api_v2_core_HttpUri *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(0, 0)); }
UPB_INLINE bool envoy_api_v2_core_HttpUri_has_cluster(const envoy_api_v2_core_HttpUri *msg) { return _upb_has_oneof_field(msg, UPB_SIZE(20, 40), 2); }
UPB_INLINE upb_strview envoy_api_v2_core_HttpUri_cluster(const envoy_api_v2_core_HttpUri *msg) { return UPB_READ_ONEOF(msg, upb_strview, UPB_SIZE(12, 24), UPB_SIZE(20, 40), 2, upb_strview_make("", strlen(""))); }
UPB_INLINE const struct google_protobuf_Duration* envoy_api_v2_core_HttpUri_timeout(const envoy_api_v2_core_HttpUri *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_Duration*, UPB_SIZE(8, 16)); }
UPB_INLINE void envoy_api_v2_core_HttpUri_set_uri(envoy_api_v2_core_HttpUri *msg, upb_strview value) {
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(0, 0)) = value;
}
UPB_INLINE void envoy_api_v2_core_HttpUri_set_cluster(envoy_api_v2_core_HttpUri *msg, upb_strview value) {
UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(12, 24), value, UPB_SIZE(20, 40), 2);
}
UPB_INLINE void envoy_api_v2_core_HttpUri_set_timeout(envoy_api_v2_core_HttpUri *msg, struct google_protobuf_Duration* value) {
UPB_FIELD_AT(msg, struct google_protobuf_Duration*, UPB_SIZE(8, 16)) = value;
}
UPB_INLINE struct google_protobuf_Duration* envoy_api_v2_core_HttpUri_mutable_timeout(envoy_api_v2_core_HttpUri *msg, upb_arena *arena) {
struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_api_v2_core_HttpUri_timeout(msg);
if (sub == NULL) {
sub = (struct google_protobuf_Duration*)upb_msg_new(&google_protobuf_Duration_msginit, arena);
if (!sub) return NULL;
envoy_api_v2_core_HttpUri_set_timeout(msg, sub);
}
return sub;
}
#ifdef __cplusplus
} /* extern "C" */
#endif
#include "upb/port_undef.inc"
#endif /* ENVOY_API_V2_CORE_HTTP_URI_PROTO_UPB_H_ */

@ -52,23 +52,29 @@ const upb_msglayout envoy_api_v2_core_Http1ProtocolOptions_msginit = {
UPB_SIZE(16, 32), 3, false, UPB_SIZE(16, 32), 3, false,
}; };
static const upb_msglayout *const envoy_api_v2_core_Http2ProtocolOptions_submsgs[4] = { static const upb_msglayout *const envoy_api_v2_core_Http2ProtocolOptions_submsgs[9] = {
&google_protobuf_UInt32Value_msginit, &google_protobuf_UInt32Value_msginit,
}; };
static const upb_msglayout_field envoy_api_v2_core_Http2ProtocolOptions__fields[6] = { static const upb_msglayout_field envoy_api_v2_core_Http2ProtocolOptions__fields[12] = {
{1, UPB_SIZE(4, 8), 0, 0, 11, 1}, {1, UPB_SIZE(4, 8), 0, 0, 11, 1},
{2, UPB_SIZE(8, 16), 0, 0, 11, 1}, {2, UPB_SIZE(8, 16), 0, 0, 11, 1},
{3, UPB_SIZE(12, 24), 0, 0, 11, 1}, {3, UPB_SIZE(12, 24), 0, 0, 11, 1},
{4, UPB_SIZE(16, 32), 0, 0, 11, 1}, {4, UPB_SIZE(16, 32), 0, 0, 11, 1},
{5, UPB_SIZE(0, 0), 0, 0, 8, 1}, {5, UPB_SIZE(0, 0), 0, 0, 8, 1},
{6, UPB_SIZE(1, 1), 0, 0, 8, 1}, {6, UPB_SIZE(1, 1), 0, 0, 8, 1},
{7, UPB_SIZE(20, 40), 0, 0, 11, 1},
{8, UPB_SIZE(24, 48), 0, 0, 11, 1},
{9, UPB_SIZE(28, 56), 0, 0, 11, 1},
{10, UPB_SIZE(32, 64), 0, 0, 11, 1},
{11, UPB_SIZE(36, 72), 0, 0, 11, 1},
{12, UPB_SIZE(2, 2), 0, 0, 8, 1},
}; };
const upb_msglayout envoy_api_v2_core_Http2ProtocolOptions_msginit = { const upb_msglayout envoy_api_v2_core_Http2ProtocolOptions_msginit = {
&envoy_api_v2_core_Http2ProtocolOptions_submsgs[0], &envoy_api_v2_core_Http2ProtocolOptions_submsgs[0],
&envoy_api_v2_core_Http2ProtocolOptions__fields[0], &envoy_api_v2_core_Http2ProtocolOptions__fields[0],
UPB_SIZE(20, 40), 6, false, UPB_SIZE(40, 80), 12, false,
}; };
static const upb_msglayout *const envoy_api_v2_core_GrpcProtocolOptions_submsgs[1] = { static const upb_msglayout *const envoy_api_v2_core_GrpcProtocolOptions_submsgs[1] = {

@ -145,6 +145,12 @@ UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_core_Http2Prot
UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_core_Http2ProtocolOptions_initial_connection_window_size(const envoy_api_v2_core_Http2ProtocolOptions *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(16, 32)); } UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_core_Http2ProtocolOptions_initial_connection_window_size(const envoy_api_v2_core_Http2ProtocolOptions *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(16, 32)); }
UPB_INLINE bool envoy_api_v2_core_Http2ProtocolOptions_allow_connect(const envoy_api_v2_core_Http2ProtocolOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(0, 0)); } UPB_INLINE bool envoy_api_v2_core_Http2ProtocolOptions_allow_connect(const envoy_api_v2_core_Http2ProtocolOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(0, 0)); }
UPB_INLINE bool envoy_api_v2_core_Http2ProtocolOptions_allow_metadata(const envoy_api_v2_core_Http2ProtocolOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(1, 1)); } UPB_INLINE bool envoy_api_v2_core_Http2ProtocolOptions_allow_metadata(const envoy_api_v2_core_Http2ProtocolOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(1, 1)); }
UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_core_Http2ProtocolOptions_max_outbound_frames(const envoy_api_v2_core_Http2ProtocolOptions *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(20, 40)); }
UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_core_Http2ProtocolOptions_max_outbound_control_frames(const envoy_api_v2_core_Http2ProtocolOptions *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(24, 48)); }
UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_core_Http2ProtocolOptions_max_consecutive_inbound_frames_with_empty_payload(const envoy_api_v2_core_Http2ProtocolOptions *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(28, 56)); }
UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_core_Http2ProtocolOptions_max_inbound_priority_frames_per_stream(const envoy_api_v2_core_Http2ProtocolOptions *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(32, 64)); }
UPB_INLINE const struct google_protobuf_UInt32Value* envoy_api_v2_core_Http2ProtocolOptions_max_inbound_window_update_frames_per_data_frame_sent(const envoy_api_v2_core_Http2ProtocolOptions *msg) { return UPB_FIELD_AT(msg, const struct google_protobuf_UInt32Value*, UPB_SIZE(36, 72)); }
UPB_INLINE bool envoy_api_v2_core_Http2ProtocolOptions_stream_error_on_invalid_http_messaging(const envoy_api_v2_core_Http2ProtocolOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(2, 2)); }
UPB_INLINE void envoy_api_v2_core_Http2ProtocolOptions_set_hpack_table_size(envoy_api_v2_core_Http2ProtocolOptions *msg, struct google_protobuf_UInt32Value* value) { UPB_INLINE void envoy_api_v2_core_Http2ProtocolOptions_set_hpack_table_size(envoy_api_v2_core_Http2ProtocolOptions *msg, struct google_protobuf_UInt32Value* value) {
UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(4, 8)) = value; UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(4, 8)) = value;
@ -200,6 +206,69 @@ UPB_INLINE void envoy_api_v2_core_Http2ProtocolOptions_set_allow_connect(envoy_a
UPB_INLINE void envoy_api_v2_core_Http2ProtocolOptions_set_allow_metadata(envoy_api_v2_core_Http2ProtocolOptions *msg, bool value) { UPB_INLINE void envoy_api_v2_core_Http2ProtocolOptions_set_allow_metadata(envoy_api_v2_core_Http2ProtocolOptions *msg, bool value) {
UPB_FIELD_AT(msg, bool, UPB_SIZE(1, 1)) = value; UPB_FIELD_AT(msg, bool, UPB_SIZE(1, 1)) = value;
} }
UPB_INLINE void envoy_api_v2_core_Http2ProtocolOptions_set_max_outbound_frames(envoy_api_v2_core_Http2ProtocolOptions *msg, struct google_protobuf_UInt32Value* value) {
UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(20, 40)) = value;
}
UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_core_Http2ProtocolOptions_mutable_max_outbound_frames(envoy_api_v2_core_Http2ProtocolOptions *msg, upb_arena *arena) {
struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_core_Http2ProtocolOptions_max_outbound_frames(msg);
if (sub == NULL) {
sub = (struct google_protobuf_UInt32Value*)upb_msg_new(&google_protobuf_UInt32Value_msginit, arena);
if (!sub) return NULL;
envoy_api_v2_core_Http2ProtocolOptions_set_max_outbound_frames(msg, sub);
}
return sub;
}
UPB_INLINE void envoy_api_v2_core_Http2ProtocolOptions_set_max_outbound_control_frames(envoy_api_v2_core_Http2ProtocolOptions *msg, struct google_protobuf_UInt32Value* value) {
UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(24, 48)) = value;
}
UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_core_Http2ProtocolOptions_mutable_max_outbound_control_frames(envoy_api_v2_core_Http2ProtocolOptions *msg, upb_arena *arena) {
struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_core_Http2ProtocolOptions_max_outbound_control_frames(msg);
if (sub == NULL) {
sub = (struct google_protobuf_UInt32Value*)upb_msg_new(&google_protobuf_UInt32Value_msginit, arena);
if (!sub) return NULL;
envoy_api_v2_core_Http2ProtocolOptions_set_max_outbound_control_frames(msg, sub);
}
return sub;
}
UPB_INLINE void envoy_api_v2_core_Http2ProtocolOptions_set_max_consecutive_inbound_frames_with_empty_payload(envoy_api_v2_core_Http2ProtocolOptions *msg, struct google_protobuf_UInt32Value* value) {
UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(28, 56)) = value;
}
UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_core_Http2ProtocolOptions_mutable_max_consecutive_inbound_frames_with_empty_payload(envoy_api_v2_core_Http2ProtocolOptions *msg, upb_arena *arena) {
struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_core_Http2ProtocolOptions_max_consecutive_inbound_frames_with_empty_payload(msg);
if (sub == NULL) {
sub = (struct google_protobuf_UInt32Value*)upb_msg_new(&google_protobuf_UInt32Value_msginit, arena);
if (!sub) return NULL;
envoy_api_v2_core_Http2ProtocolOptions_set_max_consecutive_inbound_frames_with_empty_payload(msg, sub);
}
return sub;
}
UPB_INLINE void envoy_api_v2_core_Http2ProtocolOptions_set_max_inbound_priority_frames_per_stream(envoy_api_v2_core_Http2ProtocolOptions *msg, struct google_protobuf_UInt32Value* value) {
UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(32, 64)) = value;
}
UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_core_Http2ProtocolOptions_mutable_max_inbound_priority_frames_per_stream(envoy_api_v2_core_Http2ProtocolOptions *msg, upb_arena *arena) {
struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_core_Http2ProtocolOptions_max_inbound_priority_frames_per_stream(msg);
if (sub == NULL) {
sub = (struct google_protobuf_UInt32Value*)upb_msg_new(&google_protobuf_UInt32Value_msginit, arena);
if (!sub) return NULL;
envoy_api_v2_core_Http2ProtocolOptions_set_max_inbound_priority_frames_per_stream(msg, sub);
}
return sub;
}
UPB_INLINE void envoy_api_v2_core_Http2ProtocolOptions_set_max_inbound_window_update_frames_per_data_frame_sent(envoy_api_v2_core_Http2ProtocolOptions *msg, struct google_protobuf_UInt32Value* value) {
UPB_FIELD_AT(msg, struct google_protobuf_UInt32Value*, UPB_SIZE(36, 72)) = value;
}
UPB_INLINE struct google_protobuf_UInt32Value* envoy_api_v2_core_Http2ProtocolOptions_mutable_max_inbound_window_update_frames_per_data_frame_sent(envoy_api_v2_core_Http2ProtocolOptions *msg, upb_arena *arena) {
struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_api_v2_core_Http2ProtocolOptions_max_inbound_window_update_frames_per_data_frame_sent(msg);
if (sub == NULL) {
sub = (struct google_protobuf_UInt32Value*)upb_msg_new(&google_protobuf_UInt32Value_msginit, arena);
if (!sub) return NULL;
envoy_api_v2_core_Http2ProtocolOptions_set_max_inbound_window_update_frames_per_data_frame_sent(msg, sub);
}
return sub;
}
UPB_INLINE void envoy_api_v2_core_Http2ProtocolOptions_set_stream_error_on_invalid_http_messaging(envoy_api_v2_core_Http2ProtocolOptions *msg, bool value) {
UPB_FIELD_AT(msg, bool, UPB_SIZE(2, 2)) = value;
}
/* envoy.api.v2.core.GrpcProtocolOptions */ /* envoy.api.v2.core.GrpcProtocolOptions */

@ -0,0 +1,58 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* udpa/data/orca/v1/orca_load_report.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#include <stddef.h>
#include "upb/msg.h"
#include "udpa/data/orca/v1/orca_load_report.upb.h"
#include "validate/validate.upb.h"
#include "upb/port_def.inc"
static const upb_msglayout *const udpa_data_orca_v1_OrcaLoadReport_submsgs[2] = {
&udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry_msginit,
&udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry_msginit,
};
static const upb_msglayout_field udpa_data_orca_v1_OrcaLoadReport__fields[5] = {
{1, UPB_SIZE(0, 0), 0, 0, 1, 1},
{2, UPB_SIZE(8, 8), 0, 0, 1, 1},
{3, UPB_SIZE(16, 16), 0, 0, 4, 1},
{4, UPB_SIZE(24, 24), 0, 0, 11, 3},
{5, UPB_SIZE(28, 32), 0, 1, 11, 3},
};
const upb_msglayout udpa_data_orca_v1_OrcaLoadReport_msginit = {
&udpa_data_orca_v1_OrcaLoadReport_submsgs[0],
&udpa_data_orca_v1_OrcaLoadReport__fields[0],
UPB_SIZE(32, 40), 5, false,
};
static const upb_msglayout_field udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry__fields[2] = {
{1, UPB_SIZE(8, 8), 0, 0, 9, 1},
{2, UPB_SIZE(0, 0), 0, 0, 1, 1},
};
const upb_msglayout udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry_msginit = {
NULL,
&udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry__fields[0],
UPB_SIZE(16, 32), 2, false,
};
static const upb_msglayout_field udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry__fields[2] = {
{1, UPB_SIZE(8, 8), 0, 0, 9, 1},
{2, UPB_SIZE(0, 0), 0, 0, 1, 1},
};
const upb_msglayout udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry_msginit = {
NULL,
&udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry__fields[0],
UPB_SIZE(16, 32), 2, false,
};
#include "upb/port_undef.inc"

@ -0,0 +1,144 @@
/* This file was generated by upbc (the upb compiler) from the input
* file:
*
* udpa/data/orca/v1/orca_load_report.proto
*
* Do not edit -- your changes will be discarded when the file is
* regenerated. */
#ifndef UDPA_DATA_ORCA_V1_ORCA_LOAD_REPORT_PROTO_UPB_H_
#define UDPA_DATA_ORCA_V1_ORCA_LOAD_REPORT_PROTO_UPB_H_
#include "upb/generated_util.h"
#include "upb/msg.h"
#include "upb/decode.h"
#include "upb/encode.h"
#include "upb/port_def.inc"
#ifdef __cplusplus
extern "C" {
#endif
struct udpa_data_orca_v1_OrcaLoadReport;
struct udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry;
struct udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry;
typedef struct udpa_data_orca_v1_OrcaLoadReport udpa_data_orca_v1_OrcaLoadReport;
typedef struct udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry;
typedef struct udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry;
extern const upb_msglayout udpa_data_orca_v1_OrcaLoadReport_msginit;
extern const upb_msglayout udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry_msginit;
extern const upb_msglayout udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry_msginit;
/* udpa.data.orca.v1.OrcaLoadReport */
UPB_INLINE udpa_data_orca_v1_OrcaLoadReport *udpa_data_orca_v1_OrcaLoadReport_new(upb_arena *arena) {
return (udpa_data_orca_v1_OrcaLoadReport *)upb_msg_new(&udpa_data_orca_v1_OrcaLoadReport_msginit, arena);
}
UPB_INLINE udpa_data_orca_v1_OrcaLoadReport *udpa_data_orca_v1_OrcaLoadReport_parse(const char *buf, size_t size,
upb_arena *arena) {
udpa_data_orca_v1_OrcaLoadReport *ret = udpa_data_orca_v1_OrcaLoadReport_new(arena);
return (ret && upb_decode(buf, size, ret, &udpa_data_orca_v1_OrcaLoadReport_msginit, arena)) ? ret : NULL;
}
UPB_INLINE char *udpa_data_orca_v1_OrcaLoadReport_serialize(const udpa_data_orca_v1_OrcaLoadReport *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &udpa_data_orca_v1_OrcaLoadReport_msginit, arena, len);
}
UPB_INLINE double udpa_data_orca_v1_OrcaLoadReport_cpu_utilization(const udpa_data_orca_v1_OrcaLoadReport *msg) { return UPB_FIELD_AT(msg, double, UPB_SIZE(0, 0)); }
UPB_INLINE double udpa_data_orca_v1_OrcaLoadReport_mem_utilization(const udpa_data_orca_v1_OrcaLoadReport *msg) { return UPB_FIELD_AT(msg, double, UPB_SIZE(8, 8)); }
UPB_INLINE uint64_t udpa_data_orca_v1_OrcaLoadReport_rps(const udpa_data_orca_v1_OrcaLoadReport *msg) { return UPB_FIELD_AT(msg, uint64_t, UPB_SIZE(16, 16)); }
UPB_INLINE const udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry* const* udpa_data_orca_v1_OrcaLoadReport_request_cost(const udpa_data_orca_v1_OrcaLoadReport *msg, size_t *len) { return (const udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry* const*)_upb_array_accessor(msg, UPB_SIZE(24, 24), len); }
UPB_INLINE const udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry* const* udpa_data_orca_v1_OrcaLoadReport_utilization(const udpa_data_orca_v1_OrcaLoadReport *msg, size_t *len) { return (const udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry* const*)_upb_array_accessor(msg, UPB_SIZE(28, 32), len); }
UPB_INLINE void udpa_data_orca_v1_OrcaLoadReport_set_cpu_utilization(udpa_data_orca_v1_OrcaLoadReport *msg, double value) {
UPB_FIELD_AT(msg, double, UPB_SIZE(0, 0)) = value;
}
UPB_INLINE void udpa_data_orca_v1_OrcaLoadReport_set_mem_utilization(udpa_data_orca_v1_OrcaLoadReport *msg, double value) {
UPB_FIELD_AT(msg, double, UPB_SIZE(8, 8)) = value;
}
UPB_INLINE void udpa_data_orca_v1_OrcaLoadReport_set_rps(udpa_data_orca_v1_OrcaLoadReport *msg, uint64_t value) {
UPB_FIELD_AT(msg, uint64_t, UPB_SIZE(16, 16)) = value;
}
UPB_INLINE udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry** udpa_data_orca_v1_OrcaLoadReport_mutable_request_cost(udpa_data_orca_v1_OrcaLoadReport *msg, size_t *len) {
return (udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry**)_upb_array_mutable_accessor(msg, UPB_SIZE(24, 24), len);
}
UPB_INLINE udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry** udpa_data_orca_v1_OrcaLoadReport_resize_request_cost(udpa_data_orca_v1_OrcaLoadReport *msg, size_t len, upb_arena *arena) {
return (udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry**)_upb_array_resize_accessor(msg, UPB_SIZE(24, 24), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
}
UPB_INLINE struct udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry* udpa_data_orca_v1_OrcaLoadReport_add_request_cost(udpa_data_orca_v1_OrcaLoadReport *msg, upb_arena *arena) {
struct udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry* sub = (struct udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry*)upb_msg_new(&udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry_msginit, arena);
bool ok = _upb_array_append_accessor(
msg, UPB_SIZE(24, 24), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
if (!ok) return NULL;
return sub;
}
UPB_INLINE udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry** udpa_data_orca_v1_OrcaLoadReport_mutable_utilization(udpa_data_orca_v1_OrcaLoadReport *msg, size_t *len) {
return (udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry**)_upb_array_mutable_accessor(msg, UPB_SIZE(28, 32), len);
}
UPB_INLINE udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry** udpa_data_orca_v1_OrcaLoadReport_resize_utilization(udpa_data_orca_v1_OrcaLoadReport *msg, size_t len, upb_arena *arena) {
return (udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry**)_upb_array_resize_accessor(msg, UPB_SIZE(28, 32), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
}
UPB_INLINE struct udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry* udpa_data_orca_v1_OrcaLoadReport_add_utilization(udpa_data_orca_v1_OrcaLoadReport *msg, upb_arena *arena) {
struct udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry* sub = (struct udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry*)upb_msg_new(&udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry_msginit, arena);
bool ok = _upb_array_append_accessor(
msg, UPB_SIZE(28, 32), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
if (!ok) return NULL;
return sub;
}
/* udpa.data.orca.v1.OrcaLoadReport.RequestCostEntry */
UPB_INLINE udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry *udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry_new(upb_arena *arena) {
return (udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry *)upb_msg_new(&udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry_msginit, arena);
}
UPB_INLINE udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry *udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry_parse(const char *buf, size_t size,
upb_arena *arena) {
udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry *ret = udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry_new(arena);
return (ret && upb_decode(buf, size, ret, &udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry_msginit, arena)) ? ret : NULL;
}
UPB_INLINE char *udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry_serialize(const udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry_msginit, arena, len);
}
UPB_INLINE upb_strview udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry_key(const udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(8, 8)); }
UPB_INLINE double udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry_value(const udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry *msg) { return UPB_FIELD_AT(msg, double, UPB_SIZE(0, 0)); }
UPB_INLINE void udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry_set_key(udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry *msg, upb_strview value) {
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(8, 8)) = value;
}
UPB_INLINE void udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry_set_value(udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry *msg, double value) {
UPB_FIELD_AT(msg, double, UPB_SIZE(0, 0)) = value;
}
/* udpa.data.orca.v1.OrcaLoadReport.UtilizationEntry */
UPB_INLINE udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry *udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry_new(upb_arena *arena) {
return (udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry *)upb_msg_new(&udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry_msginit, arena);
}
UPB_INLINE udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry *udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry_parse(const char *buf, size_t size,
upb_arena *arena) {
udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry *ret = udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry_new(arena);
return (ret && upb_decode(buf, size, ret, &udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry_msginit, arena)) ? ret : NULL;
}
UPB_INLINE char *udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry_serialize(const udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry *msg, upb_arena *arena, size_t *len) {
return upb_encode(msg, &udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry_msginit, arena, len);
}
UPB_INLINE upb_strview udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry_key(const udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(8, 8)); }
UPB_INLINE double udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry_value(const udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry *msg) { return UPB_FIELD_AT(msg, double, UPB_SIZE(0, 0)); }
UPB_INLINE void udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry_set_key(udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry *msg, upb_strview value) {
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(8, 8)) = value;
}
UPB_INLINE void udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry_set_value(udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry *msg, double value) {
UPB_FIELD_AT(msg, double, UPB_SIZE(0, 0)) = value;
}
#ifdef __cplusplus
} /* extern "C" */
#endif
#include "upb/port_undef.inc"
#endif /* UDPA_DATA_ORCA_V1_ORCA_LOAD_REPORT_PROTO_UPB_H_ */

@ -35,6 +35,7 @@
#include "src/core/lib/gprpp/memory.h" #include "src/core/lib/gprpp/memory.h"
#include "src/core/lib/gprpp/pair.h" #include "src/core/lib/gprpp/pair.h"
#include "src/core/lib/gprpp/ref_counted_ptr.h" #include "src/core/lib/gprpp/ref_counted_ptr.h"
#include "src/core/lib/gprpp/string_view.h"
namespace grpc_core { namespace grpc_core {
@ -42,8 +43,14 @@ struct StringLess {
bool operator()(const char* a, const char* b) const { bool operator()(const char* a, const char* b) const {
return strcmp(a, b) < 0; return strcmp(a, b) < 0;
} }
bool operator()(const UniquePtr<char>& k1, const UniquePtr<char>& k2) const { bool operator()(const UniquePtr<char>& a, const UniquePtr<char>& b) const {
return strcmp(k1.get(), k2.get()) < 0; return strcmp(a.get(), b.get()) < 0;
}
bool operator()(const StringView& a, const StringView& b) const {
const size_t min_size = std::min(a.size(), b.size());
int c = strncmp(a.data(), b.data(), min_size);
if (c != 0) return c < 0;
return a.size() < b.size();
} }
}; };

@ -53,76 +53,77 @@ static constexpr uint8_t g_bytes[] = {
99, 45, 112, 114, 101, 118, 105, 111, 117, 115, 45, 114, 112, 99, 45, 99, 45, 112, 114, 101, 118, 105, 111, 117, 115, 45, 114, 112, 99, 45,
97, 116, 116, 101, 109, 112, 116, 115, 103, 114, 112, 99, 45, 114, 101, 97, 116, 116, 101, 109, 112, 116, 115, 103, 114, 112, 99, 45, 114, 101,
116, 114, 121, 45, 112, 117, 115, 104, 98, 97, 99, 107, 45, 109, 115, 116, 114, 121, 45, 112, 117, 115, 104, 98, 97, 99, 107, 45, 109, 115,
103, 114, 112, 99, 45, 116, 105, 109, 101, 111, 117, 116, 49, 50, 51, 120, 45, 101, 110, 100, 112, 111, 105, 110, 116, 45, 108, 111, 97, 100,
52, 103, 114, 112, 99, 46, 119, 97, 105, 116, 95, 102, 111, 114, 95, 45, 109, 101, 116, 114, 105, 99, 115, 45, 98, 105, 110, 103, 114, 112,
114, 101, 97, 100, 121, 103, 114, 112, 99, 46, 116, 105, 109, 101, 111, 99, 45, 116, 105, 109, 101, 111, 117, 116, 49, 50, 51, 52, 103, 114,
117, 116, 103, 114, 112, 99, 46, 109, 97, 120, 95, 114, 101, 113, 117, 112, 99, 46, 119, 97, 105, 116, 95, 102, 111, 114, 95, 114, 101, 97,
101, 115, 116, 95, 109, 101, 115, 115, 97, 103, 101, 95, 98, 121, 116, 100, 121, 103, 114, 112, 99, 46, 116, 105, 109, 101, 111, 117, 116, 103,
101, 115, 103, 114, 112, 99, 46, 109, 97, 120, 95, 114, 101, 115, 112, 114, 112, 99, 46, 109, 97, 120, 95, 114, 101, 113, 117, 101, 115, 116,
111, 110, 115, 101, 95, 109, 101, 115, 115, 97, 103, 101, 95, 98, 121, 95, 109, 101, 115, 115, 97, 103, 101, 95, 98, 121, 116, 101, 115, 103,
116, 101, 115, 47, 103, 114, 112, 99, 46, 108, 98, 46, 118, 49, 46, 114, 112, 99, 46, 109, 97, 120, 95, 114, 101, 115, 112, 111, 110, 115,
76, 111, 97, 100, 66, 97, 108, 97, 110, 99, 101, 114, 47, 66, 97, 101, 95, 109, 101, 115, 115, 97, 103, 101, 95, 98, 121, 116, 101, 115,
108, 97, 110, 99, 101, 76, 111, 97, 100, 47, 101, 110, 118, 111, 121, 47, 103, 114, 112, 99, 46, 108, 98, 46, 118, 49, 46, 76, 111, 97,
46, 115, 101, 114, 118, 105, 99, 101, 46, 108, 111, 97, 100, 95, 115, 100, 66, 97, 108, 97, 110, 99, 101, 114, 47, 66, 97, 108, 97, 110,
116, 97, 116, 115, 46, 118, 50, 46, 76, 111, 97, 100, 82, 101, 112, 99, 101, 76, 111, 97, 100, 47, 101, 110, 118, 111, 121, 46, 115, 101,
111, 114, 116, 105, 110, 103, 83, 101, 114, 118, 105, 99, 101, 47, 83, 114, 118, 105, 99, 101, 46, 108, 111, 97, 100, 95, 115, 116, 97, 116,
116, 114, 101, 97, 109, 76, 111, 97, 100, 83, 116, 97, 116, 115, 47, 115, 46, 118, 50, 46, 76, 111, 97, 100, 82, 101, 112, 111, 114, 116,
101, 110, 118, 111, 121, 46, 97, 112, 105, 46, 118, 50, 46, 69, 110, 105, 110, 103, 83, 101, 114, 118, 105, 99, 101, 47, 83, 116, 114, 101,
100, 112, 111, 105, 110, 116, 68, 105, 115, 99, 111, 118, 101, 114, 121, 97, 109, 76, 111, 97, 100, 83, 116, 97, 116, 115, 47, 101, 110, 118,
83, 101, 114, 118, 105, 99, 101, 47, 83, 116, 114, 101, 97, 109, 69, 111, 121, 46, 97, 112, 105, 46, 118, 50, 46, 69, 110, 100, 112, 111,
110, 100, 112, 111, 105, 110, 116, 115, 47, 103, 114, 112, 99, 46, 104, 105, 110, 116, 68, 105, 115, 99, 111, 118, 101, 114, 121, 83, 101, 114,
101, 97, 108, 116, 104, 46, 118, 49, 46, 72, 101, 97, 108, 116, 104, 118, 105, 99, 101, 47, 83, 116, 114, 101, 97, 109, 69, 110, 100, 112,
47, 87, 97, 116, 99, 104, 47, 101, 110, 118, 111, 121, 46, 115, 101, 111, 105, 110, 116, 115, 47, 103, 114, 112, 99, 46, 104, 101, 97, 108,
114, 118, 105, 99, 101, 46, 100, 105, 115, 99, 111, 118, 101, 114, 121, 116, 104, 46, 118, 49, 46, 72, 101, 97, 108, 116, 104, 47, 87, 97,
46, 118, 50, 46, 65, 103, 103, 114, 101, 103, 97, 116, 101, 100, 68, 116, 99, 104, 47, 101, 110, 118, 111, 121, 46, 115, 101, 114, 118, 105,
105, 115, 99, 111, 118, 101, 114, 121, 83, 101, 114, 118, 105, 99, 101, 99, 101, 46, 100, 105, 115, 99, 111, 118, 101, 114, 121, 46, 118, 50,
47, 83, 116, 114, 101, 97, 109, 65, 103, 103, 114, 101, 103, 97, 116, 46, 65, 103, 103, 114, 101, 103, 97, 116, 101, 100, 68, 105, 115, 99,
101, 100, 82, 101, 115, 111, 117, 114, 99, 101, 115, 100, 101, 102, 108, 111, 118, 101, 114, 121, 83, 101, 114, 118, 105, 99, 101, 47, 83, 116,
97, 116, 101, 103, 122, 105, 112, 115, 116, 114, 101, 97, 109, 47, 103, 114, 101, 97, 109, 65, 103, 103, 114, 101, 103, 97, 116, 101, 100, 82,
122, 105, 112, 71, 69, 84, 80, 79, 83, 84, 47, 47, 105, 110, 100, 101, 115, 111, 117, 114, 99, 101, 115, 100, 101, 102, 108, 97, 116, 101,
101, 120, 46, 104, 116, 109, 108, 104, 116, 116, 112, 104, 116, 116, 112, 103, 122, 105, 112, 115, 116, 114, 101, 97, 109, 47, 103, 122, 105, 112,
115, 50, 48, 48, 50, 48, 52, 50, 48, 54, 51, 48, 52, 52, 48, 71, 69, 84, 80, 79, 83, 84, 47, 47, 105, 110, 100, 101, 120, 46,
48, 52, 48, 52, 53, 48, 48, 97, 99, 99, 101, 112, 116, 45, 99, 104, 116, 109, 108, 104, 116, 116, 112, 104, 116, 116, 112, 115, 50, 48,
104, 97, 114, 115, 101, 116, 103, 122, 105, 112, 44, 32, 100, 101, 102, 48, 50, 48, 52, 50, 48, 54, 51, 48, 52, 52, 48, 48, 52, 48,
108, 97, 116, 101, 97, 99, 99, 101, 112, 116, 45, 108, 97, 110, 103, 52, 53, 48, 48, 97, 99, 99, 101, 112, 116, 45, 99, 104, 97, 114,
117, 97, 103, 101, 97, 99, 99, 101, 112, 116, 45, 114, 97, 110, 103, 115, 101, 116, 103, 122, 105, 112, 44, 32, 100, 101, 102, 108, 97, 116,
101, 115, 97, 99, 99, 101, 112, 116, 97, 99, 99, 101, 115, 115, 45, 101, 97, 99, 99, 101, 112, 116, 45, 108, 97, 110, 103, 117, 97, 103,
99, 111, 110, 116, 114, 111, 108, 45, 97, 108, 108, 111, 119, 45, 111, 101, 97, 99, 99, 101, 112, 116, 45, 114, 97, 110, 103, 101, 115, 97,
114, 105, 103, 105, 110, 97, 103, 101, 97, 108, 108, 111, 119, 97, 117, 99, 99, 101, 112, 116, 97, 99, 99, 101, 115, 115, 45, 99, 111, 110,
116, 104, 111, 114, 105, 122, 97, 116, 105, 111, 110, 99, 97, 99, 104, 116, 114, 111, 108, 45, 97, 108, 108, 111, 119, 45, 111, 114, 105, 103,
101, 45, 99, 111, 110, 116, 114, 111, 108, 99, 111, 110, 116, 101, 110, 105, 110, 97, 103, 101, 97, 108, 108, 111, 119, 97, 117, 116, 104, 111,
116, 45, 100, 105, 115, 112, 111, 115, 105, 116, 105, 111, 110, 99, 111, 114, 105, 122, 97, 116, 105, 111, 110, 99, 97, 99, 104, 101, 45, 99,
110, 116, 101, 110, 116, 45, 108, 97, 110, 103, 117, 97, 103, 101, 99, 111, 110, 116, 114, 111, 108, 99, 111, 110, 116, 101, 110, 116, 45, 100,
111, 110, 116, 101, 110, 116, 45, 108, 101, 110, 103, 116, 104, 99, 111, 105, 115, 112, 111, 115, 105, 116, 105, 111, 110, 99, 111, 110, 116, 101,
110, 116, 101, 110, 116, 45, 108, 111, 99, 97, 116, 105, 111, 110, 99, 110, 116, 45, 108, 97, 110, 103, 117, 97, 103, 101, 99, 111, 110, 116,
111, 110, 116, 101, 110, 116, 45, 114, 97, 110, 103, 101, 99, 111, 111, 101, 110, 116, 45, 108, 101, 110, 103, 116, 104, 99, 111, 110, 116, 101,
107, 105, 101, 100, 97, 116, 101, 101, 116, 97, 103, 101, 120, 112, 101, 110, 116, 45, 108, 111, 99, 97, 116, 105, 111, 110, 99, 111, 110, 116,
99, 116, 101, 120, 112, 105, 114, 101, 115, 102, 114, 111, 109, 105, 102, 101, 110, 116, 45, 114, 97, 110, 103, 101, 99, 111, 111, 107, 105, 101,
45, 109, 97, 116, 99, 104, 105, 102, 45, 109, 111, 100, 105, 102, 105, 100, 97, 116, 101, 101, 116, 97, 103, 101, 120, 112, 101, 99, 116, 101,
101, 100, 45, 115, 105, 110, 99, 101, 105, 102, 45, 110, 111, 110, 101, 120, 112, 105, 114, 101, 115, 102, 114, 111, 109, 105, 102, 45, 109, 97,
45, 109, 97, 116, 99, 104, 105, 102, 45, 114, 97, 110, 103, 101, 105, 116, 99, 104, 105, 102, 45, 109, 111, 100, 105, 102, 105, 101, 100, 45,
102, 45, 117, 110, 109, 111, 100, 105, 102, 105, 101, 100, 45, 115, 105, 115, 105, 110, 99, 101, 105, 102, 45, 110, 111, 110, 101, 45, 109, 97,
110, 99, 101, 108, 97, 115, 116, 45, 109, 111, 100, 105, 102, 105, 101, 116, 99, 104, 105, 102, 45, 114, 97, 110, 103, 101, 105, 102, 45, 117,
100, 108, 105, 110, 107, 108, 111, 99, 97, 116, 105, 111, 110, 109, 97, 110, 109, 111, 100, 105, 102, 105, 101, 100, 45, 115, 105, 110, 99, 101,
120, 45, 102, 111, 114, 119, 97, 114, 100, 115, 112, 114, 111, 120, 121, 108, 97, 115, 116, 45, 109, 111, 100, 105, 102, 105, 101, 100, 108, 105,
45, 97, 117, 116, 104, 101, 110, 116, 105, 99, 97, 116, 101, 112, 114, 110, 107, 108, 111, 99, 97, 116, 105, 111, 110, 109, 97, 120, 45, 102,
111, 120, 121, 45, 97, 117, 116, 104, 111, 114, 105, 122, 97, 116, 105, 111, 114, 119, 97, 114, 100, 115, 112, 114, 111, 120, 121, 45, 97, 117,
111, 110, 114, 97, 110, 103, 101, 114, 101, 102, 101, 114, 101, 114, 114, 116, 104, 101, 110, 116, 105, 99, 97, 116, 101, 112, 114, 111, 120, 121,
101, 102, 114, 101, 115, 104, 114, 101, 116, 114, 121, 45, 97, 102, 116, 45, 97, 117, 116, 104, 111, 114, 105, 122, 97, 116, 105, 111, 110, 114,
101, 114, 115, 101, 114, 118, 101, 114, 115, 101, 116, 45, 99, 111, 111, 97, 110, 103, 101, 114, 101, 102, 101, 114, 101, 114, 114, 101, 102, 114,
107, 105, 101, 115, 116, 114, 105, 99, 116, 45, 116, 114, 97, 110, 115, 101, 115, 104, 114, 101, 116, 114, 121, 45, 97, 102, 116, 101, 114, 115,
112, 111, 114, 116, 45, 115, 101, 99, 117, 114, 105, 116, 121, 116, 114, 101, 114, 118, 101, 114, 115, 101, 116, 45, 99, 111, 111, 107, 105, 101,
97, 110, 115, 102, 101, 114, 45, 101, 110, 99, 111, 100, 105, 110, 103, 115, 116, 114, 105, 99, 116, 45, 116, 114, 97, 110, 115, 112, 111, 114,
118, 97, 114, 121, 118, 105, 97, 119, 119, 119, 45, 97, 117, 116, 104, 116, 45, 115, 101, 99, 117, 114, 105, 116, 121, 116, 114, 97, 110, 115,
101, 110, 116, 105, 99, 97, 116, 101, 48, 105, 100, 101, 110, 116, 105, 102, 101, 114, 45, 101, 110, 99, 111, 100, 105, 110, 103, 118, 97, 114,
116, 121, 116, 114, 97, 105, 108, 101, 114, 115, 97, 112, 112, 108, 105, 121, 118, 105, 97, 119, 119, 119, 45, 97, 117, 116, 104, 101, 110, 116,
99, 97, 116, 105, 111, 110, 47, 103, 114, 112, 99, 103, 114, 112, 99, 105, 99, 97, 116, 101, 48, 105, 100, 101, 110, 116, 105, 116, 121, 116,
80, 85, 84, 108, 98, 45, 99, 111, 115, 116, 45, 98, 105, 110, 105, 114, 97, 105, 108, 101, 114, 115, 97, 112, 112, 108, 105, 99, 97, 116,
100, 101, 110, 116, 105, 116, 121, 44, 100, 101, 102, 108, 97, 116, 101, 105, 111, 110, 47, 103, 114, 112, 99, 103, 114, 112, 99, 80, 85, 84,
105, 100, 101, 110, 116, 105, 116, 121, 44, 103, 122, 105, 112, 100, 101, 108, 98, 45, 99, 111, 115, 116, 45, 98, 105, 110, 105, 100, 101, 110,
102, 108, 97, 116, 101, 44, 103, 122, 105, 112, 105, 100, 101, 110, 116, 116, 105, 116, 121, 44, 100, 101, 102, 108, 97, 116, 101, 105, 100, 101,
105, 116, 121, 44, 100, 101, 102, 108, 97, 116, 101, 44, 103, 122, 105, 110, 116, 105, 116, 121, 44, 103, 122, 105, 112, 100, 101, 102, 108, 97,
112}; 116, 101, 44, 103, 122, 105, 112, 105, 100, 101, 110, 116, 105, 116, 121,
44, 100, 101, 102, 108, 97, 116, 101, 44, 103, 122, 105, 112};
grpc_slice_refcount grpc_core::StaticSliceRefcount::kStaticSubRefcount; grpc_slice_refcount grpc_core::StaticSliceRefcount::kStaticSubRefcount;
@ -187,6 +188,7 @@ struct StaticMetadataCtx {
StaticSliceRefcount(102), StaticSliceRefcount(103), StaticSliceRefcount(102), StaticSliceRefcount(103),
StaticSliceRefcount(104), StaticSliceRefcount(105), StaticSliceRefcount(104), StaticSliceRefcount(105),
StaticSliceRefcount(106), StaticSliceRefcount(107), StaticSliceRefcount(106), StaticSliceRefcount(107),
StaticSliceRefcount(108),
}; };
const StaticMetadataSlice slices[GRPC_STATIC_MDSTR_COUNT] = { const StaticMetadataSlice slices[GRPC_STATIC_MDSTR_COUNT] = {
@ -214,488 +216,494 @@ struct StaticMetadataCtx {
grpc_core::StaticMetadataSlice(&refcounts[20].base, 4, g_bytes + 278), grpc_core::StaticMetadataSlice(&refcounts[20].base, 4, g_bytes + 278),
grpc_core::StaticMetadataSlice(&refcounts[21].base, 26, g_bytes + 282), grpc_core::StaticMetadataSlice(&refcounts[21].base, 26, g_bytes + 282),
grpc_core::StaticMetadataSlice(&refcounts[22].base, 22, g_bytes + 308), grpc_core::StaticMetadataSlice(&refcounts[22].base, 22, g_bytes + 308),
grpc_core::StaticMetadataSlice(&refcounts[23].base, 12, g_bytes + 330), grpc_core::StaticMetadataSlice(&refcounts[23].base, 27, g_bytes + 330),
grpc_core::StaticMetadataSlice(&refcounts[24].base, 1, g_bytes + 342), grpc_core::StaticMetadataSlice(&refcounts[24].base, 12, g_bytes + 357),
grpc_core::StaticMetadataSlice(&refcounts[25].base, 1, g_bytes + 343), grpc_core::StaticMetadataSlice(&refcounts[25].base, 1, g_bytes + 369),
grpc_core::StaticMetadataSlice(&refcounts[26].base, 1, g_bytes + 344), grpc_core::StaticMetadataSlice(&refcounts[26].base, 1, g_bytes + 370),
grpc_core::StaticMetadataSlice(&refcounts[27].base, 1, g_bytes + 345), grpc_core::StaticMetadataSlice(&refcounts[27].base, 1, g_bytes + 371),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[28].base, 1, g_bytes + 372),
grpc_core::StaticMetadataSlice(&refcounts[29].base, 19, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
grpc_core::StaticMetadataSlice(&refcounts[30].base, 12, g_bytes + 365), grpc_core::StaticMetadataSlice(&refcounts[30].base, 19, g_bytes + 373),
grpc_core::StaticMetadataSlice(&refcounts[31].base, 30, g_bytes + 377), grpc_core::StaticMetadataSlice(&refcounts[31].base, 12, g_bytes + 392),
grpc_core::StaticMetadataSlice(&refcounts[32].base, 31, g_bytes + 407), grpc_core::StaticMetadataSlice(&refcounts[32].base, 30, g_bytes + 404),
grpc_core::StaticMetadataSlice(&refcounts[33].base, 36, g_bytes + 438), grpc_core::StaticMetadataSlice(&refcounts[33].base, 31, g_bytes + 434),
grpc_core::StaticMetadataSlice(&refcounts[34].base, 65, g_bytes + 474), grpc_core::StaticMetadataSlice(&refcounts[34].base, 36, g_bytes + 465),
grpc_core::StaticMetadataSlice(&refcounts[35].base, 54, g_bytes + 539), grpc_core::StaticMetadataSlice(&refcounts[35].base, 65, g_bytes + 501),
grpc_core::StaticMetadataSlice(&refcounts[36].base, 28, g_bytes + 593), grpc_core::StaticMetadataSlice(&refcounts[36].base, 54, g_bytes + 566),
grpc_core::StaticMetadataSlice(&refcounts[37].base, 80, g_bytes + 621), grpc_core::StaticMetadataSlice(&refcounts[37].base, 28, g_bytes + 620),
grpc_core::StaticMetadataSlice(&refcounts[38].base, 7, g_bytes + 701), grpc_core::StaticMetadataSlice(&refcounts[38].base, 80, g_bytes + 648),
grpc_core::StaticMetadataSlice(&refcounts[39].base, 4, g_bytes + 708), grpc_core::StaticMetadataSlice(&refcounts[39].base, 7, g_bytes + 728),
grpc_core::StaticMetadataSlice(&refcounts[40].base, 11, g_bytes + 712), grpc_core::StaticMetadataSlice(&refcounts[40].base, 4, g_bytes + 735),
grpc_core::StaticMetadataSlice(&refcounts[41].base, 3, g_bytes + 723), grpc_core::StaticMetadataSlice(&refcounts[41].base, 11, g_bytes + 739),
grpc_core::StaticMetadataSlice(&refcounts[42].base, 4, g_bytes + 726), grpc_core::StaticMetadataSlice(&refcounts[42].base, 3, g_bytes + 750),
grpc_core::StaticMetadataSlice(&refcounts[43].base, 1, g_bytes + 730), grpc_core::StaticMetadataSlice(&refcounts[43].base, 4, g_bytes + 753),
grpc_core::StaticMetadataSlice(&refcounts[44].base, 11, g_bytes + 731), grpc_core::StaticMetadataSlice(&refcounts[44].base, 1, g_bytes + 757),
grpc_core::StaticMetadataSlice(&refcounts[45].base, 4, g_bytes + 742), grpc_core::StaticMetadataSlice(&refcounts[45].base, 11, g_bytes + 758),
grpc_core::StaticMetadataSlice(&refcounts[46].base, 5, g_bytes + 746), grpc_core::StaticMetadataSlice(&refcounts[46].base, 4, g_bytes + 769),
grpc_core::StaticMetadataSlice(&refcounts[47].base, 3, g_bytes + 751), grpc_core::StaticMetadataSlice(&refcounts[47].base, 5, g_bytes + 773),
grpc_core::StaticMetadataSlice(&refcounts[48].base, 3, g_bytes + 754), grpc_core::StaticMetadataSlice(&refcounts[48].base, 3, g_bytes + 778),
grpc_core::StaticMetadataSlice(&refcounts[49].base, 3, g_bytes + 757), grpc_core::StaticMetadataSlice(&refcounts[49].base, 3, g_bytes + 781),
grpc_core::StaticMetadataSlice(&refcounts[50].base, 3, g_bytes + 760), grpc_core::StaticMetadataSlice(&refcounts[50].base, 3, g_bytes + 784),
grpc_core::StaticMetadataSlice(&refcounts[51].base, 3, g_bytes + 763), grpc_core::StaticMetadataSlice(&refcounts[51].base, 3, g_bytes + 787),
grpc_core::StaticMetadataSlice(&refcounts[52].base, 3, g_bytes + 766), grpc_core::StaticMetadataSlice(&refcounts[52].base, 3, g_bytes + 790),
grpc_core::StaticMetadataSlice(&refcounts[53].base, 3, g_bytes + 769), grpc_core::StaticMetadataSlice(&refcounts[53].base, 3, g_bytes + 793),
grpc_core::StaticMetadataSlice(&refcounts[54].base, 14, g_bytes + 772), grpc_core::StaticMetadataSlice(&refcounts[54].base, 3, g_bytes + 796),
grpc_core::StaticMetadataSlice(&refcounts[55].base, 13, g_bytes + 786), grpc_core::StaticMetadataSlice(&refcounts[55].base, 14, g_bytes + 799),
grpc_core::StaticMetadataSlice(&refcounts[56].base, 15, g_bytes + 799), grpc_core::StaticMetadataSlice(&refcounts[56].base, 13, g_bytes + 813),
grpc_core::StaticMetadataSlice(&refcounts[57].base, 13, g_bytes + 814), grpc_core::StaticMetadataSlice(&refcounts[57].base, 15, g_bytes + 826),
grpc_core::StaticMetadataSlice(&refcounts[58].base, 6, g_bytes + 827), grpc_core::StaticMetadataSlice(&refcounts[58].base, 13, g_bytes + 841),
grpc_core::StaticMetadataSlice(&refcounts[59].base, 27, g_bytes + 833), grpc_core::StaticMetadataSlice(&refcounts[59].base, 6, g_bytes + 854),
grpc_core::StaticMetadataSlice(&refcounts[60].base, 3, g_bytes + 860), grpc_core::StaticMetadataSlice(&refcounts[60].base, 27, g_bytes + 860),
grpc_core::StaticMetadataSlice(&refcounts[61].base, 5, g_bytes + 863), grpc_core::StaticMetadataSlice(&refcounts[61].base, 3, g_bytes + 887),
grpc_core::StaticMetadataSlice(&refcounts[62].base, 13, g_bytes + 868), grpc_core::StaticMetadataSlice(&refcounts[62].base, 5, g_bytes + 890),
grpc_core::StaticMetadataSlice(&refcounts[63].base, 13, g_bytes + 881), grpc_core::StaticMetadataSlice(&refcounts[63].base, 13, g_bytes + 895),
grpc_core::StaticMetadataSlice(&refcounts[64].base, 19, g_bytes + 894), grpc_core::StaticMetadataSlice(&refcounts[64].base, 13, g_bytes + 908),
grpc_core::StaticMetadataSlice(&refcounts[65].base, 16, g_bytes + 913), grpc_core::StaticMetadataSlice(&refcounts[65].base, 19, g_bytes + 921),
grpc_core::StaticMetadataSlice(&refcounts[66].base, 14, g_bytes + 929), grpc_core::StaticMetadataSlice(&refcounts[66].base, 16, g_bytes + 940),
grpc_core::StaticMetadataSlice(&refcounts[67].base, 16, g_bytes + 943), grpc_core::StaticMetadataSlice(&refcounts[67].base, 14, g_bytes + 956),
grpc_core::StaticMetadataSlice(&refcounts[68].base, 13, g_bytes + 959), grpc_core::StaticMetadataSlice(&refcounts[68].base, 16, g_bytes + 970),
grpc_core::StaticMetadataSlice(&refcounts[69].base, 6, g_bytes + 972), grpc_core::StaticMetadataSlice(&refcounts[69].base, 13, g_bytes + 986),
grpc_core::StaticMetadataSlice(&refcounts[70].base, 4, g_bytes + 978), grpc_core::StaticMetadataSlice(&refcounts[70].base, 6, g_bytes + 999),
grpc_core::StaticMetadataSlice(&refcounts[71].base, 4, g_bytes + 982), grpc_core::StaticMetadataSlice(&refcounts[71].base, 4, g_bytes + 1005),
grpc_core::StaticMetadataSlice(&refcounts[72].base, 6, g_bytes + 986), grpc_core::StaticMetadataSlice(&refcounts[72].base, 4, g_bytes + 1009),
grpc_core::StaticMetadataSlice(&refcounts[73].base, 7, g_bytes + 992), grpc_core::StaticMetadataSlice(&refcounts[73].base, 6, g_bytes + 1013),
grpc_core::StaticMetadataSlice(&refcounts[74].base, 4, g_bytes + 999), grpc_core::StaticMetadataSlice(&refcounts[74].base, 7, g_bytes + 1019),
grpc_core::StaticMetadataSlice(&refcounts[75].base, 8, g_bytes + 1003), grpc_core::StaticMetadataSlice(&refcounts[75].base, 4, g_bytes + 1026),
grpc_core::StaticMetadataSlice(&refcounts[76].base, 17, g_bytes + 1011), grpc_core::StaticMetadataSlice(&refcounts[76].base, 8, g_bytes + 1030),
grpc_core::StaticMetadataSlice(&refcounts[77].base, 13, g_bytes + 1028), grpc_core::StaticMetadataSlice(&refcounts[77].base, 17, g_bytes + 1038),
grpc_core::StaticMetadataSlice(&refcounts[78].base, 8, g_bytes + 1041), grpc_core::StaticMetadataSlice(&refcounts[78].base, 13, g_bytes + 1055),
grpc_core::StaticMetadataSlice(&refcounts[79].base, 19, g_bytes + 1049), grpc_core::StaticMetadataSlice(&refcounts[79].base, 8, g_bytes + 1068),
grpc_core::StaticMetadataSlice(&refcounts[80].base, 13, g_bytes + 1068), grpc_core::StaticMetadataSlice(&refcounts[80].base, 19, g_bytes + 1076),
grpc_core::StaticMetadataSlice(&refcounts[81].base, 4, g_bytes + 1081), grpc_core::StaticMetadataSlice(&refcounts[81].base, 13, g_bytes + 1095),
grpc_core::StaticMetadataSlice(&refcounts[82].base, 8, g_bytes + 1085), grpc_core::StaticMetadataSlice(&refcounts[82].base, 4, g_bytes + 1108),
grpc_core::StaticMetadataSlice(&refcounts[83].base, 12, g_bytes + 1093), grpc_core::StaticMetadataSlice(&refcounts[83].base, 8, g_bytes + 1112),
grpc_core::StaticMetadataSlice(&refcounts[84].base, 18, g_bytes + 1105), grpc_core::StaticMetadataSlice(&refcounts[84].base, 12, g_bytes + 1120),
grpc_core::StaticMetadataSlice(&refcounts[85].base, 19, g_bytes + 1123), grpc_core::StaticMetadataSlice(&refcounts[85].base, 18, g_bytes + 1132),
grpc_core::StaticMetadataSlice(&refcounts[86].base, 5, g_bytes + 1142), grpc_core::StaticMetadataSlice(&refcounts[86].base, 19, g_bytes + 1150),
grpc_core::StaticMetadataSlice(&refcounts[87].base, 7, g_bytes + 1147), grpc_core::StaticMetadataSlice(&refcounts[87].base, 5, g_bytes + 1169),
grpc_core::StaticMetadataSlice(&refcounts[88].base, 7, g_bytes + 1154), grpc_core::StaticMetadataSlice(&refcounts[88].base, 7, g_bytes + 1174),
grpc_core::StaticMetadataSlice(&refcounts[89].base, 11, g_bytes + 1161), grpc_core::StaticMetadataSlice(&refcounts[89].base, 7, g_bytes + 1181),
grpc_core::StaticMetadataSlice(&refcounts[90].base, 6, g_bytes + 1172), grpc_core::StaticMetadataSlice(&refcounts[90].base, 11, g_bytes + 1188),
grpc_core::StaticMetadataSlice(&refcounts[91].base, 10, g_bytes + 1178), grpc_core::StaticMetadataSlice(&refcounts[91].base, 6, g_bytes + 1199),
grpc_core::StaticMetadataSlice(&refcounts[92].base, 25, g_bytes + 1188), grpc_core::StaticMetadataSlice(&refcounts[92].base, 10, g_bytes + 1205),
grpc_core::StaticMetadataSlice(&refcounts[93].base, 17, g_bytes + 1213), grpc_core::StaticMetadataSlice(&refcounts[93].base, 25, g_bytes + 1215),
grpc_core::StaticMetadataSlice(&refcounts[94].base, 4, g_bytes + 1230), grpc_core::StaticMetadataSlice(&refcounts[94].base, 17, g_bytes + 1240),
grpc_core::StaticMetadataSlice(&refcounts[95].base, 3, g_bytes + 1234), grpc_core::StaticMetadataSlice(&refcounts[95].base, 4, g_bytes + 1257),
grpc_core::StaticMetadataSlice(&refcounts[96].base, 16, g_bytes + 1237), grpc_core::StaticMetadataSlice(&refcounts[96].base, 3, g_bytes + 1261),
grpc_core::StaticMetadataSlice(&refcounts[97].base, 1, g_bytes + 1253), grpc_core::StaticMetadataSlice(&refcounts[97].base, 16, g_bytes + 1264),
grpc_core::StaticMetadataSlice(&refcounts[98].base, 8, g_bytes + 1254), grpc_core::StaticMetadataSlice(&refcounts[98].base, 1, g_bytes + 1280),
grpc_core::StaticMetadataSlice(&refcounts[99].base, 8, g_bytes + 1262), grpc_core::StaticMetadataSlice(&refcounts[99].base, 8, g_bytes + 1281),
grpc_core::StaticMetadataSlice(&refcounts[100].base, 16, g_bytes + 1270), grpc_core::StaticMetadataSlice(&refcounts[100].base, 8, g_bytes + 1289),
grpc_core::StaticMetadataSlice(&refcounts[101].base, 4, g_bytes + 1286), grpc_core::StaticMetadataSlice(&refcounts[101].base, 16, g_bytes + 1297),
grpc_core::StaticMetadataSlice(&refcounts[102].base, 3, g_bytes + 1290), grpc_core::StaticMetadataSlice(&refcounts[102].base, 4, g_bytes + 1313),
grpc_core::StaticMetadataSlice(&refcounts[103].base, 11, g_bytes + 1293), grpc_core::StaticMetadataSlice(&refcounts[103].base, 3, g_bytes + 1317),
grpc_core::StaticMetadataSlice(&refcounts[104].base, 16, g_bytes + 1304), grpc_core::StaticMetadataSlice(&refcounts[104].base, 11, g_bytes + 1320),
grpc_core::StaticMetadataSlice(&refcounts[105].base, 13, g_bytes + 1320), grpc_core::StaticMetadataSlice(&refcounts[105].base, 16, g_bytes + 1331),
grpc_core::StaticMetadataSlice(&refcounts[106].base, 12, g_bytes + 1333), grpc_core::StaticMetadataSlice(&refcounts[106].base, 13, g_bytes + 1347),
grpc_core::StaticMetadataSlice(&refcounts[107].base, 21, g_bytes + 1345), grpc_core::StaticMetadataSlice(&refcounts[107].base, 12, g_bytes + 1360),
grpc_core::StaticMetadataSlice(&refcounts[108].base, 21, g_bytes + 1372),
}; };
StaticMetadata static_mdelem_table[GRPC_STATIC_MDELEM_COUNT] = { StaticMetadata static_mdelem_table[GRPC_STATIC_MDELEM_COUNT] = {
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[3].base, 10, g_bytes + 19), grpc_core::StaticMetadataSlice(&refcounts[3].base, 10, g_bytes + 19),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
0), 0),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[1].base, 7, g_bytes + 5), grpc_core::StaticMetadataSlice(&refcounts[1].base, 7, g_bytes + 5),
grpc_core::StaticMetadataSlice(&refcounts[41].base, 3, g_bytes + 723), grpc_core::StaticMetadataSlice(&refcounts[42].base, 3, g_bytes + 750),
1), 1),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[1].base, 7, g_bytes + 5), grpc_core::StaticMetadataSlice(&refcounts[1].base, 7, g_bytes + 5),
grpc_core::StaticMetadataSlice(&refcounts[42].base, 4, g_bytes + 726), grpc_core::StaticMetadataSlice(&refcounts[43].base, 4, g_bytes + 753),
2), 2),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[0].base, 5, g_bytes + 0), grpc_core::StaticMetadataSlice(&refcounts[0].base, 5, g_bytes + 0),
grpc_core::StaticMetadataSlice(&refcounts[43].base, 1, g_bytes + 730), grpc_core::StaticMetadataSlice(&refcounts[44].base, 1, g_bytes + 757),
3), 3),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[0].base, 5, g_bytes + 0), grpc_core::StaticMetadataSlice(&refcounts[0].base, 5, g_bytes + 0),
grpc_core::StaticMetadataSlice(&refcounts[44].base, 11, grpc_core::StaticMetadataSlice(&refcounts[45].base, 11,
g_bytes + 731), g_bytes + 758),
4), 4),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[4].base, 7, g_bytes + 29), grpc_core::StaticMetadataSlice(&refcounts[4].base, 7, g_bytes + 29),
grpc_core::StaticMetadataSlice(&refcounts[45].base, 4, g_bytes + 742), grpc_core::StaticMetadataSlice(&refcounts[46].base, 4, g_bytes + 769),
5), 5),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[4].base, 7, g_bytes + 29), grpc_core::StaticMetadataSlice(&refcounts[4].base, 7, g_bytes + 29),
grpc_core::StaticMetadataSlice(&refcounts[46].base, 5, g_bytes + 746), grpc_core::StaticMetadataSlice(&refcounts[47].base, 5, g_bytes + 773),
6), 6),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[2].base, 7, g_bytes + 12), grpc_core::StaticMetadataSlice(&refcounts[2].base, 7, g_bytes + 12),
grpc_core::StaticMetadataSlice(&refcounts[47].base, 3, g_bytes + 751), grpc_core::StaticMetadataSlice(&refcounts[48].base, 3, g_bytes + 778),
7), 7),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[2].base, 7, g_bytes + 12), grpc_core::StaticMetadataSlice(&refcounts[2].base, 7, g_bytes + 12),
grpc_core::StaticMetadataSlice(&refcounts[48].base, 3, g_bytes + 754), grpc_core::StaticMetadataSlice(&refcounts[49].base, 3, g_bytes + 781),
8), 8),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[2].base, 7, g_bytes + 12), grpc_core::StaticMetadataSlice(&refcounts[2].base, 7, g_bytes + 12),
grpc_core::StaticMetadataSlice(&refcounts[49].base, 3, g_bytes + 757), grpc_core::StaticMetadataSlice(&refcounts[50].base, 3, g_bytes + 784),
9), 9),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[2].base, 7, g_bytes + 12), grpc_core::StaticMetadataSlice(&refcounts[2].base, 7, g_bytes + 12),
grpc_core::StaticMetadataSlice(&refcounts[50].base, 3, g_bytes + 760), grpc_core::StaticMetadataSlice(&refcounts[51].base, 3, g_bytes + 787),
10), 10),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[2].base, 7, g_bytes + 12), grpc_core::StaticMetadataSlice(&refcounts[2].base, 7, g_bytes + 12),
grpc_core::StaticMetadataSlice(&refcounts[51].base, 3, g_bytes + 763), grpc_core::StaticMetadataSlice(&refcounts[52].base, 3, g_bytes + 790),
11), 11),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[2].base, 7, g_bytes + 12), grpc_core::StaticMetadataSlice(&refcounts[2].base, 7, g_bytes + 12),
grpc_core::StaticMetadataSlice(&refcounts[52].base, 3, g_bytes + 766), grpc_core::StaticMetadataSlice(&refcounts[53].base, 3, g_bytes + 793),
12), 12),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[2].base, 7, g_bytes + 12), grpc_core::StaticMetadataSlice(&refcounts[2].base, 7, g_bytes + 12),
grpc_core::StaticMetadataSlice(&refcounts[53].base, 3, g_bytes + 769), grpc_core::StaticMetadataSlice(&refcounts[54].base, 3, g_bytes + 796),
13), 13),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[54].base, 14, grpc_core::StaticMetadataSlice(&refcounts[55].base, 14,
g_bytes + 772), g_bytes + 799),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
14), 14),
StaticMetadata(grpc_core::StaticMetadataSlice(&refcounts[16].base, 15, StaticMetadata(grpc_core::StaticMetadataSlice(&refcounts[16].base, 15,
g_bytes + 186), g_bytes + 186),
grpc_core::StaticMetadataSlice(&refcounts[55].base, 13, grpc_core::StaticMetadataSlice(&refcounts[56].base, 13,
g_bytes + 786), g_bytes + 813),
15), 15),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[56].base, 15, grpc_core::StaticMetadataSlice(&refcounts[57].base, 15,
g_bytes + 799), g_bytes + 826),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
16), 16),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[57].base, 13, grpc_core::StaticMetadataSlice(&refcounts[58].base, 13,
g_bytes + 814), g_bytes + 841),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
17), 17),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[58].base, 6, g_bytes + 827), grpc_core::StaticMetadataSlice(&refcounts[59].base, 6, g_bytes + 854),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
18), 18),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[59].base, 27, grpc_core::StaticMetadataSlice(&refcounts[60].base, 27,
g_bytes + 833), g_bytes + 860),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
19), 19),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[60].base, 3, g_bytes + 860), grpc_core::StaticMetadataSlice(&refcounts[61].base, 3, g_bytes + 887),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
20), 20),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[61].base, 5, g_bytes + 863), grpc_core::StaticMetadataSlice(&refcounts[62].base, 5, g_bytes + 890),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
21), 21),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[62].base, 13, grpc_core::StaticMetadataSlice(&refcounts[63].base, 13,
g_bytes + 868), g_bytes + 895),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
22), 22),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[63].base, 13, grpc_core::StaticMetadataSlice(&refcounts[64].base, 13,
g_bytes + 881), g_bytes + 908),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
23), 23),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[64].base, 19, grpc_core::StaticMetadataSlice(&refcounts[65].base, 19,
g_bytes + 894), g_bytes + 921),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
24), 24),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[15].base, 16, grpc_core::StaticMetadataSlice(&refcounts[15].base, 16,
g_bytes + 170), g_bytes + 170),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
25), 25),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[65].base, 16, grpc_core::StaticMetadataSlice(&refcounts[66].base, 16,
g_bytes + 913), g_bytes + 940),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
26), 26),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[66].base, 14, grpc_core::StaticMetadataSlice(&refcounts[67].base, 14,
g_bytes + 929), g_bytes + 956),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
27), 27),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[67].base, 16, grpc_core::StaticMetadataSlice(&refcounts[68].base, 16,
g_bytes + 943), g_bytes + 970),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
28), 28),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[68].base, 13, grpc_core::StaticMetadataSlice(&refcounts[69].base, 13,
g_bytes + 959), g_bytes + 986),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
29), 29),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[14].base, 12, grpc_core::StaticMetadataSlice(&refcounts[14].base, 12,
g_bytes + 158), g_bytes + 158),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
30), 30),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[69].base, 6, g_bytes + 972), grpc_core::StaticMetadataSlice(&refcounts[70].base, 6, g_bytes + 999),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
31), 31),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[70].base, 4, g_bytes + 978), grpc_core::StaticMetadataSlice(&refcounts[71].base, 4,
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), g_bytes + 1005),
grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
32), 32),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[71].base, 4, g_bytes + 982), grpc_core::StaticMetadataSlice(&refcounts[72].base, 4,
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), g_bytes + 1009),
grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
33), 33),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[72].base, 6, g_bytes + 986), grpc_core::StaticMetadataSlice(&refcounts[73].base, 6,
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), g_bytes + 1013),
grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
34), 34),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[73].base, 7, g_bytes + 992), grpc_core::StaticMetadataSlice(&refcounts[74].base, 7,
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), g_bytes + 1019),
grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
35), 35),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[74].base, 4, g_bytes + 999), grpc_core::StaticMetadataSlice(&refcounts[75].base, 4,
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), g_bytes + 1026),
grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
36), 36),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[20].base, 4, g_bytes + 278), grpc_core::StaticMetadataSlice(&refcounts[20].base, 4, g_bytes + 278),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
37), 37),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[75].base, 8, grpc_core::StaticMetadataSlice(&refcounts[76].base, 8,
g_bytes + 1003), g_bytes + 1030),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
38), 38),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[76].base, 17, grpc_core::StaticMetadataSlice(&refcounts[77].base, 17,
g_bytes + 1011), g_bytes + 1038),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
39), 39),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[77].base, 13, grpc_core::StaticMetadataSlice(&refcounts[78].base, 13,
g_bytes + 1028), g_bytes + 1055),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
40), 40),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[78].base, 8, grpc_core::StaticMetadataSlice(&refcounts[79].base, 8,
g_bytes + 1041), g_bytes + 1068),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
41), 41),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[79].base, 19, grpc_core::StaticMetadataSlice(&refcounts[80].base, 19,
g_bytes + 1049), g_bytes + 1076),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
42), 42),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[80].base, 13, grpc_core::StaticMetadataSlice(&refcounts[81].base, 13,
g_bytes + 1068), g_bytes + 1095),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
43), 43),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[81].base, 4, grpc_core::StaticMetadataSlice(&refcounts[82].base, 4,
g_bytes + 1081), g_bytes + 1108),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
44), 44),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[82].base, 8, grpc_core::StaticMetadataSlice(&refcounts[83].base, 8,
g_bytes + 1085), g_bytes + 1112),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
45), 45),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[83].base, 12, grpc_core::StaticMetadataSlice(&refcounts[84].base, 12,
g_bytes + 1093), g_bytes + 1120),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
46), 46),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[84].base, 18, grpc_core::StaticMetadataSlice(&refcounts[85].base, 18,
g_bytes + 1105), g_bytes + 1132),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
47), 47),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[85].base, 19, grpc_core::StaticMetadataSlice(&refcounts[86].base, 19,
g_bytes + 1123), g_bytes + 1150),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
48), 48),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[86].base, 5, grpc_core::StaticMetadataSlice(&refcounts[87].base, 5,
g_bytes + 1142), g_bytes + 1169),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
49), 49),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[87].base, 7, grpc_core::StaticMetadataSlice(&refcounts[88].base, 7,
g_bytes + 1147), g_bytes + 1174),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
50), 50),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[88].base, 7, grpc_core::StaticMetadataSlice(&refcounts[89].base, 7,
g_bytes + 1154), g_bytes + 1181),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
51), 51),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[89].base, 11, grpc_core::StaticMetadataSlice(&refcounts[90].base, 11,
g_bytes + 1161), g_bytes + 1188),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
52), 52),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[90].base, 6, grpc_core::StaticMetadataSlice(&refcounts[91].base, 6,
g_bytes + 1172), g_bytes + 1199),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
53), 53),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[91].base, 10, grpc_core::StaticMetadataSlice(&refcounts[92].base, 10,
g_bytes + 1178), g_bytes + 1205),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
54), 54),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[92].base, 25, grpc_core::StaticMetadataSlice(&refcounts[93].base, 25,
g_bytes + 1188), g_bytes + 1215),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
55), 55),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[93].base, 17, grpc_core::StaticMetadataSlice(&refcounts[94].base, 17,
g_bytes + 1213), g_bytes + 1240),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
56), 56),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[19].base, 10, grpc_core::StaticMetadataSlice(&refcounts[19].base, 10,
g_bytes + 268), g_bytes + 268),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
57), 57),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[94].base, 4, grpc_core::StaticMetadataSlice(&refcounts[95].base, 4,
g_bytes + 1230), g_bytes + 1257),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
58), 58),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[95].base, 3, grpc_core::StaticMetadataSlice(&refcounts[96].base, 3,
g_bytes + 1234), g_bytes + 1261),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
59), 59),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[96].base, 16, grpc_core::StaticMetadataSlice(&refcounts[97].base, 16,
g_bytes + 1237), g_bytes + 1264),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
60), 60),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[7].base, 11, g_bytes + 50), grpc_core::StaticMetadataSlice(&refcounts[7].base, 11, g_bytes + 50),
grpc_core::StaticMetadataSlice(&refcounts[97].base, 1, grpc_core::StaticMetadataSlice(&refcounts[98].base, 1,
g_bytes + 1253), g_bytes + 1280),
61), 61),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[7].base, 11, g_bytes + 50), grpc_core::StaticMetadataSlice(&refcounts[7].base, 11, g_bytes + 50),
grpc_core::StaticMetadataSlice(&refcounts[24].base, 1, g_bytes + 342), grpc_core::StaticMetadataSlice(&refcounts[25].base, 1, g_bytes + 369),
62), 62),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[7].base, 11, g_bytes + 50), grpc_core::StaticMetadataSlice(&refcounts[7].base, 11, g_bytes + 50),
grpc_core::StaticMetadataSlice(&refcounts[25].base, 1, g_bytes + 343), grpc_core::StaticMetadataSlice(&refcounts[26].base, 1, g_bytes + 370),
63), 63),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[9].base, 13, g_bytes + 77), grpc_core::StaticMetadataSlice(&refcounts[9].base, 13, g_bytes + 77),
grpc_core::StaticMetadataSlice(&refcounts[98].base, 8, grpc_core::StaticMetadataSlice(&refcounts[99].base, 8,
g_bytes + 1254), g_bytes + 1281),
64), 64),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[9].base, 13, g_bytes + 77), grpc_core::StaticMetadataSlice(&refcounts[9].base, 13, g_bytes + 77),
grpc_core::StaticMetadataSlice(&refcounts[39].base, 4, g_bytes + 708), grpc_core::StaticMetadataSlice(&refcounts[40].base, 4, g_bytes + 735),
65), 65),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[9].base, 13, g_bytes + 77), grpc_core::StaticMetadataSlice(&refcounts[9].base, 13, g_bytes + 77),
grpc_core::StaticMetadataSlice(&refcounts[38].base, 7, g_bytes + 701), grpc_core::StaticMetadataSlice(&refcounts[39].base, 7, g_bytes + 728),
66), 66),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[5].base, 2, g_bytes + 36), grpc_core::StaticMetadataSlice(&refcounts[5].base, 2, g_bytes + 36),
grpc_core::StaticMetadataSlice(&refcounts[99].base, 8, grpc_core::StaticMetadataSlice(&refcounts[100].base, 8,
g_bytes + 1262), g_bytes + 1289),
67), 67),
StaticMetadata(grpc_core::StaticMetadataSlice(&refcounts[14].base, 12, StaticMetadata(grpc_core::StaticMetadataSlice(&refcounts[14].base, 12,
g_bytes + 158), g_bytes + 158),
grpc_core::StaticMetadataSlice(&refcounts[100].base, 16, grpc_core::StaticMetadataSlice(&refcounts[101].base, 16,
g_bytes + 1270), g_bytes + 1297),
68), 68),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[4].base, 7, g_bytes + 29), grpc_core::StaticMetadataSlice(&refcounts[4].base, 7, g_bytes + 29),
grpc_core::StaticMetadataSlice(&refcounts[101].base, 4, grpc_core::StaticMetadataSlice(&refcounts[102].base, 4,
g_bytes + 1286), g_bytes + 1313),
69), 69),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[1].base, 7, g_bytes + 5), grpc_core::StaticMetadataSlice(&refcounts[1].base, 7, g_bytes + 5),
grpc_core::StaticMetadataSlice(&refcounts[102].base, 3, grpc_core::StaticMetadataSlice(&refcounts[103].base, 3,
g_bytes + 1290), g_bytes + 1317),
70), 70),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[16].base, 15, grpc_core::StaticMetadataSlice(&refcounts[16].base, 15,
g_bytes + 186), g_bytes + 186),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
71), 71),
StaticMetadata(grpc_core::StaticMetadataSlice(&refcounts[15].base, 16, StaticMetadata(grpc_core::StaticMetadataSlice(&refcounts[15].base, 16,
g_bytes + 170), g_bytes + 170),
grpc_core::StaticMetadataSlice(&refcounts[98].base, 8, grpc_core::StaticMetadataSlice(&refcounts[99].base, 8,
g_bytes + 1254), g_bytes + 1281),
72), 72),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[15].base, 16, grpc_core::StaticMetadataSlice(&refcounts[15].base, 16,
g_bytes + 170), g_bytes + 170),
grpc_core::StaticMetadataSlice(&refcounts[39].base, 4, g_bytes + 708), grpc_core::StaticMetadataSlice(&refcounts[40].base, 4, g_bytes + 735),
73), 73),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[103].base, 11, grpc_core::StaticMetadataSlice(&refcounts[104].base, 11,
g_bytes + 1293), g_bytes + 1320),
grpc_core::StaticMetadataSlice(&refcounts[28].base, 0, g_bytes + 346), grpc_core::StaticMetadataSlice(&refcounts[29].base, 0, g_bytes + 373),
74), 74),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[10].base, 20, g_bytes + 90), grpc_core::StaticMetadataSlice(&refcounts[10].base, 20, g_bytes + 90),
grpc_core::StaticMetadataSlice(&refcounts[98].base, 8, grpc_core::StaticMetadataSlice(&refcounts[99].base, 8,
g_bytes + 1254), g_bytes + 1281),
75), 75),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[10].base, 20, g_bytes + 90), grpc_core::StaticMetadataSlice(&refcounts[10].base, 20, g_bytes + 90),
grpc_core::StaticMetadataSlice(&refcounts[38].base, 7, g_bytes + 701), grpc_core::StaticMetadataSlice(&refcounts[39].base, 7, g_bytes + 728),
76), 76),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[10].base, 20, g_bytes + 90), grpc_core::StaticMetadataSlice(&refcounts[10].base, 20, g_bytes + 90),
grpc_core::StaticMetadataSlice(&refcounts[104].base, 16, grpc_core::StaticMetadataSlice(&refcounts[105].base, 16,
g_bytes + 1304), g_bytes + 1331),
77), 77),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[10].base, 20, g_bytes + 90), grpc_core::StaticMetadataSlice(&refcounts[10].base, 20, g_bytes + 90),
grpc_core::StaticMetadataSlice(&refcounts[39].base, 4, g_bytes + 708), grpc_core::StaticMetadataSlice(&refcounts[40].base, 4, g_bytes + 735),
78), 78),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[10].base, 20, g_bytes + 90), grpc_core::StaticMetadataSlice(&refcounts[10].base, 20, g_bytes + 90),
grpc_core::StaticMetadataSlice(&refcounts[105].base, 13, grpc_core::StaticMetadataSlice(&refcounts[106].base, 13,
g_bytes + 1320), g_bytes + 1347),
79), 79),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[10].base, 20, g_bytes + 90), grpc_core::StaticMetadataSlice(&refcounts[10].base, 20, g_bytes + 90),
grpc_core::StaticMetadataSlice(&refcounts[106].base, 12, grpc_core::StaticMetadataSlice(&refcounts[107].base, 12,
g_bytes + 1333), g_bytes + 1360),
80), 80),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[10].base, 20, g_bytes + 90), grpc_core::StaticMetadataSlice(&refcounts[10].base, 20, g_bytes + 90),
grpc_core::StaticMetadataSlice(&refcounts[107].base, 21, grpc_core::StaticMetadataSlice(&refcounts[108].base, 21,
g_bytes + 1345), g_bytes + 1372),
81), 81),
StaticMetadata(grpc_core::StaticMetadataSlice(&refcounts[16].base, 15, StaticMetadata(grpc_core::StaticMetadataSlice(&refcounts[16].base, 15,
g_bytes + 186), g_bytes + 186),
grpc_core::StaticMetadataSlice(&refcounts[98].base, 8, grpc_core::StaticMetadataSlice(&refcounts[99].base, 8,
g_bytes + 1254), g_bytes + 1281),
82), 82),
StaticMetadata( StaticMetadata(
grpc_core::StaticMetadataSlice(&refcounts[16].base, 15, grpc_core::StaticMetadataSlice(&refcounts[16].base, 15,
g_bytes + 186), g_bytes + 186),
grpc_core::StaticMetadataSlice(&refcounts[39].base, 4, g_bytes + 708), grpc_core::StaticMetadataSlice(&refcounts[40].base, 4, g_bytes + 735),
83), 83),
StaticMetadata(grpc_core::StaticMetadataSlice(&refcounts[16].base, 15, StaticMetadata(grpc_core::StaticMetadataSlice(&refcounts[16].base, 15,
g_bytes + 186), g_bytes + 186),
grpc_core::StaticMetadataSlice(&refcounts[105].base, 13, grpc_core::StaticMetadataSlice(&refcounts[106].base, 13,
g_bytes + 1320), g_bytes + 1347),
84), 84),
}; };
@ -1181,17 +1189,17 @@ uintptr_t grpc_static_mdelem_user_data[GRPC_STATIC_MDELEM_COUNT] = {
0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 4, 4, 6, 6, 8, 8, 2, 4, 4}; 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 4, 4, 6, 6, 8, 8, 2, 4, 4};
static const int8_t elems_r[] = { static const int8_t elems_r[] = {
15, 10, -8, 0, 2, -43, -80, -44, 0, 4, -8, 0, 0, 0, 6, -1, 15, 10, -8, 0, 2, -43, -81, -44, 0, 4, -8, 0, 0, 0, 6, -1,
-8, 0, 0, 3, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -8, 0, 0, 3, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, -65, 0, -68, -69, -50, -72, -73, 0, 32, 31, 0, 0, 0, 0, 0, 0, 0, -67, 0, -38, -50, -56, -76, 0, 46, 28,
30, 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 19, 18, 17, 17, 27, 26, 25, 24, 23, 23, 22, 21, 20, 19, 24, 16, 15, 14, 13, 15,
16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 4, 3, 14, 14, 13, 12, 11, 10, 9, 8, 7, 6, 6, 5, 4, 3, 2, 3,
3, 7, 0, 0, 0, 0, 0, 0, -5, 0}; 2, 2, 6, 0, 0, 0, 0, 0, 0, -6, 0};
static uint32_t elems_phash(uint32_t i) { static uint32_t elems_phash(uint32_t i) {
i -= 43; i -= 44;
uint32_t x = i % 106; uint32_t x = i % 107;
uint32_t y = i / 106; uint32_t y = i / 107;
uint32_t h = x; uint32_t h = x;
if (y < GPR_ARRAY_SIZE(elems_r)) { if (y < GPR_ARRAY_SIZE(elems_r)) {
uint32_t delta = (uint32_t)elems_r[y]; uint32_t delta = (uint32_t)elems_r[y];
@ -1201,29 +1209,31 @@ static uint32_t elems_phash(uint32_t i) {
} }
static const uint16_t elem_keys[] = { static const uint16_t elem_keys[] = {
263, 264, 265, 266, 267, 268, 269, 1118, 1119, 1756, 149, 150, 266, 267, 268, 269, 270, 271, 272, 1129, 1130, 1773, 151,
477, 478, 1648, 43, 44, 1010, 1011, 1540, 1767, 780, 781, 639, 152, 482, 483, 1664, 44, 45, 1020, 1021, 1555, 1784, 788,
853, 1659, 2080, 2188, 5860, 6076, 6184, 6400, 6508, 6616, 6724, 6832, 789, 645, 861, 1675, 2100, 2209, 6024, 6569, 6787, 6896, 7005,
1783, 6940, 7048, 7156, 7264, 7372, 7480, 7588, 7696, 7804, 7912, 8020, 7114, 7223, 7332, 1800, 7441, 7550, 7659, 7768, 7877, 8095, 8204,
8128, 8236, 8344, 6292, 8452, 8560, 8668, 8776, 8884, 8992, 9100, 9208, 8313, 8422, 6678, 6460, 7986, 8531, 8640, 6351, 8749, 8858, 8967,
9316, 9424, 9532, 9640, 9748, 9856, 9964, 1178, 533, 10072, 10180, 210, 9076, 9185, 9294, 9403, 9512, 9621, 6242, 9730, 9839, 9948, 10057,
10288, 1184, 1185, 1186, 1187, 1070, 10396, 1826, 11152, 0, 0, 0, 10166, 1189, 538, 10275, 10384, 212, 10493, 1195, 1196, 1197, 1198,
1718, 0, 1833, 0, 0, 352, 0, 1612, 0, 0, 0, 0, 1080, 10602, 1843, 11365, 0, 0, 0, 1734, 0, 1850, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 356, 1627, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0}; 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0};
static const uint8_t elem_idxs[] = { static const uint8_t elem_idxs[] = {
7, 8, 9, 10, 11, 12, 13, 76, 78, 71, 1, 2, 5, 6, 25, 3, 7, 8, 9, 10, 11, 12, 13, 76, 78, 71, 1, 2, 5, 6, 25, 3,
4, 66, 65, 30, 83, 62, 63, 67, 61, 73, 57, 37, 14, 16, 17, 19, 4, 66, 65, 30, 83, 62, 63, 67, 61, 73, 57, 37, 14, 19, 21, 22,
20, 21, 22, 23, 15, 24, 26, 27, 28, 29, 31, 32, 33, 34, 35, 36, 23, 24, 26, 27, 15, 28, 29, 31, 32, 33, 35, 36, 38, 39, 20, 18,
38, 39, 40, 18, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 34, 40, 41, 17, 42, 43, 44, 45, 46, 47, 48, 49, 50, 16, 51, 52,
53, 54, 55, 75, 69, 56, 58, 70, 59, 77, 79, 80, 81, 64, 60, 82, 53, 54, 55, 75, 69, 56, 58, 70, 59, 77, 79, 80, 81, 64, 60, 82,
74, 255, 255, 255, 72, 255, 84, 255, 255, 0, 255, 68}; 74, 255, 255, 255, 72, 255, 84, 255, 255, 255, 0, 68};
grpc_mdelem grpc_static_mdelem_for_static_strings(intptr_t a, intptr_t b) { grpc_mdelem grpc_static_mdelem_for_static_strings(intptr_t a, intptr_t b) {
if (a == -1 || b == -1) return GRPC_MDNULL; if (a == -1 || b == -1) return GRPC_MDNULL;
uint32_t k = static_cast<uint32_t>(a * 108 + b); uint32_t k = static_cast<uint32_t>(a * 109 + b);
uint32_t h = elems_phash(k); uint32_t h = elems_phash(k);
return h < GPR_ARRAY_SIZE(elem_keys) && elem_keys[h] == k && return h < GPR_ARRAY_SIZE(elem_keys) && elem_keys[h] == k &&
elem_idxs[h] != 255 elem_idxs[h] != 255

@ -36,7 +36,7 @@
static_assert( static_assert(
std::is_trivially_destructible<grpc_core::StaticMetadataSlice>::value, std::is_trivially_destructible<grpc_core::StaticMetadataSlice>::value,
"grpc_core::StaticMetadataSlice must be trivially destructible."); "grpc_core::StaticMetadataSlice must be trivially destructible.");
#define GRPC_STATIC_MDSTR_COUNT 108 #define GRPC_STATIC_MDSTR_COUNT 109
void grpc_init_static_metadata_ctx(void); void grpc_init_static_metadata_ctx(void);
void grpc_destroy_static_metadata_ctx(void); void grpc_destroy_static_metadata_ctx(void);
@ -102,185 +102,187 @@ inline const grpc_core::StaticMetadataSlice* grpc_static_slice_table() {
#define GRPC_MDSTR_GRPC_PREVIOUS_RPC_ATTEMPTS (grpc_static_slice_table()[21]) #define GRPC_MDSTR_GRPC_PREVIOUS_RPC_ATTEMPTS (grpc_static_slice_table()[21])
/* "grpc-retry-pushback-ms" */ /* "grpc-retry-pushback-ms" */
#define GRPC_MDSTR_GRPC_RETRY_PUSHBACK_MS (grpc_static_slice_table()[22]) #define GRPC_MDSTR_GRPC_RETRY_PUSHBACK_MS (grpc_static_slice_table()[22])
/* "x-endpoint-load-metrics-bin" */
#define GRPC_MDSTR_X_ENDPOINT_LOAD_METRICS_BIN (grpc_static_slice_table()[23])
/* "grpc-timeout" */ /* "grpc-timeout" */
#define GRPC_MDSTR_GRPC_TIMEOUT (grpc_static_slice_table()[23]) #define GRPC_MDSTR_GRPC_TIMEOUT (grpc_static_slice_table()[24])
/* "1" */ /* "1" */
#define GRPC_MDSTR_1 (grpc_static_slice_table()[24]) #define GRPC_MDSTR_1 (grpc_static_slice_table()[25])
/* "2" */ /* "2" */
#define GRPC_MDSTR_2 (grpc_static_slice_table()[25]) #define GRPC_MDSTR_2 (grpc_static_slice_table()[26])
/* "3" */ /* "3" */
#define GRPC_MDSTR_3 (grpc_static_slice_table()[26]) #define GRPC_MDSTR_3 (grpc_static_slice_table()[27])
/* "4" */ /* "4" */
#define GRPC_MDSTR_4 (grpc_static_slice_table()[27]) #define GRPC_MDSTR_4 (grpc_static_slice_table()[28])
/* "" */ /* "" */
#define GRPC_MDSTR_EMPTY (grpc_static_slice_table()[28]) #define GRPC_MDSTR_EMPTY (grpc_static_slice_table()[29])
/* "grpc.wait_for_ready" */ /* "grpc.wait_for_ready" */
#define GRPC_MDSTR_GRPC_DOT_WAIT_FOR_READY (grpc_static_slice_table()[29]) #define GRPC_MDSTR_GRPC_DOT_WAIT_FOR_READY (grpc_static_slice_table()[30])
/* "grpc.timeout" */ /* "grpc.timeout" */
#define GRPC_MDSTR_GRPC_DOT_TIMEOUT (grpc_static_slice_table()[30]) #define GRPC_MDSTR_GRPC_DOT_TIMEOUT (grpc_static_slice_table()[31])
/* "grpc.max_request_message_bytes" */ /* "grpc.max_request_message_bytes" */
#define GRPC_MDSTR_GRPC_DOT_MAX_REQUEST_MESSAGE_BYTES \ #define GRPC_MDSTR_GRPC_DOT_MAX_REQUEST_MESSAGE_BYTES \
(grpc_static_slice_table()[31]) (grpc_static_slice_table()[32])
/* "grpc.max_response_message_bytes" */ /* "grpc.max_response_message_bytes" */
#define GRPC_MDSTR_GRPC_DOT_MAX_RESPONSE_MESSAGE_BYTES \ #define GRPC_MDSTR_GRPC_DOT_MAX_RESPONSE_MESSAGE_BYTES \
(grpc_static_slice_table()[32]) (grpc_static_slice_table()[33])
/* "/grpc.lb.v1.LoadBalancer/BalanceLoad" */ /* "/grpc.lb.v1.LoadBalancer/BalanceLoad" */
#define GRPC_MDSTR_SLASH_GRPC_DOT_LB_DOT_V1_DOT_LOADBALANCER_SLASH_BALANCELOAD \ #define GRPC_MDSTR_SLASH_GRPC_DOT_LB_DOT_V1_DOT_LOADBALANCER_SLASH_BALANCELOAD \
(grpc_static_slice_table()[33]) (grpc_static_slice_table()[34])
/* "/envoy.service.load_stats.v2.LoadReportingService/StreamLoadStats" */ /* "/envoy.service.load_stats.v2.LoadReportingService/StreamLoadStats" */
#define GRPC_MDSTR_SLASH_ENVOY_DOT_SERVICE_DOT_LOAD_STATS_DOT_V2_DOT_LOADREPORTINGSERVICE_SLASH_STREAMLOADSTATS \ #define GRPC_MDSTR_SLASH_ENVOY_DOT_SERVICE_DOT_LOAD_STATS_DOT_V2_DOT_LOADREPORTINGSERVICE_SLASH_STREAMLOADSTATS \
(grpc_static_slice_table()[34]) (grpc_static_slice_table()[35])
/* "/envoy.api.v2.EndpointDiscoveryService/StreamEndpoints" */ /* "/envoy.api.v2.EndpointDiscoveryService/StreamEndpoints" */
#define GRPC_MDSTR_SLASH_ENVOY_DOT_API_DOT_V2_DOT_ENDPOINTDISCOVERYSERVICE_SLASH_STREAMENDPOINTS \ #define GRPC_MDSTR_SLASH_ENVOY_DOT_API_DOT_V2_DOT_ENDPOINTDISCOVERYSERVICE_SLASH_STREAMENDPOINTS \
(grpc_static_slice_table()[35]) (grpc_static_slice_table()[36])
/* "/grpc.health.v1.Health/Watch" */ /* "/grpc.health.v1.Health/Watch" */
#define GRPC_MDSTR_SLASH_GRPC_DOT_HEALTH_DOT_V1_DOT_HEALTH_SLASH_WATCH \ #define GRPC_MDSTR_SLASH_GRPC_DOT_HEALTH_DOT_V1_DOT_HEALTH_SLASH_WATCH \
(grpc_static_slice_table()[36]) (grpc_static_slice_table()[37])
/* "/envoy.service.discovery.v2.AggregatedDiscoveryService/StreamAggregatedResources" /* "/envoy.service.discovery.v2.AggregatedDiscoveryService/StreamAggregatedResources"
*/ */
#define GRPC_MDSTR_SLASH_ENVOY_DOT_SERVICE_DOT_DISCOVERY_DOT_V2_DOT_AGGREGATEDDISCOVERYSERVICE_SLASH_STREAMAGGREGATEDRESOURCES \ #define GRPC_MDSTR_SLASH_ENVOY_DOT_SERVICE_DOT_DISCOVERY_DOT_V2_DOT_AGGREGATEDDISCOVERYSERVICE_SLASH_STREAMAGGREGATEDRESOURCES \
(grpc_static_slice_table()[37]) (grpc_static_slice_table()[38])
/* "deflate" */ /* "deflate" */
#define GRPC_MDSTR_DEFLATE (grpc_static_slice_table()[38]) #define GRPC_MDSTR_DEFLATE (grpc_static_slice_table()[39])
/* "gzip" */ /* "gzip" */
#define GRPC_MDSTR_GZIP (grpc_static_slice_table()[39]) #define GRPC_MDSTR_GZIP (grpc_static_slice_table()[40])
/* "stream/gzip" */ /* "stream/gzip" */
#define GRPC_MDSTR_STREAM_SLASH_GZIP (grpc_static_slice_table()[40]) #define GRPC_MDSTR_STREAM_SLASH_GZIP (grpc_static_slice_table()[41])
/* "GET" */ /* "GET" */
#define GRPC_MDSTR_GET (grpc_static_slice_table()[41]) #define GRPC_MDSTR_GET (grpc_static_slice_table()[42])
/* "POST" */ /* "POST" */
#define GRPC_MDSTR_POST (grpc_static_slice_table()[42]) #define GRPC_MDSTR_POST (grpc_static_slice_table()[43])
/* "/" */ /* "/" */
#define GRPC_MDSTR_SLASH (grpc_static_slice_table()[43]) #define GRPC_MDSTR_SLASH (grpc_static_slice_table()[44])
/* "/index.html" */ /* "/index.html" */
#define GRPC_MDSTR_SLASH_INDEX_DOT_HTML (grpc_static_slice_table()[44]) #define GRPC_MDSTR_SLASH_INDEX_DOT_HTML (grpc_static_slice_table()[45])
/* "http" */ /* "http" */
#define GRPC_MDSTR_HTTP (grpc_static_slice_table()[45]) #define GRPC_MDSTR_HTTP (grpc_static_slice_table()[46])
/* "https" */ /* "https" */
#define GRPC_MDSTR_HTTPS (grpc_static_slice_table()[46]) #define GRPC_MDSTR_HTTPS (grpc_static_slice_table()[47])
/* "200" */ /* "200" */
#define GRPC_MDSTR_200 (grpc_static_slice_table()[47]) #define GRPC_MDSTR_200 (grpc_static_slice_table()[48])
/* "204" */ /* "204" */
#define GRPC_MDSTR_204 (grpc_static_slice_table()[48]) #define GRPC_MDSTR_204 (grpc_static_slice_table()[49])
/* "206" */ /* "206" */
#define GRPC_MDSTR_206 (grpc_static_slice_table()[49]) #define GRPC_MDSTR_206 (grpc_static_slice_table()[50])
/* "304" */ /* "304" */
#define GRPC_MDSTR_304 (grpc_static_slice_table()[50]) #define GRPC_MDSTR_304 (grpc_static_slice_table()[51])
/* "400" */ /* "400" */
#define GRPC_MDSTR_400 (grpc_static_slice_table()[51]) #define GRPC_MDSTR_400 (grpc_static_slice_table()[52])
/* "404" */ /* "404" */
#define GRPC_MDSTR_404 (grpc_static_slice_table()[52]) #define GRPC_MDSTR_404 (grpc_static_slice_table()[53])
/* "500" */ /* "500" */
#define GRPC_MDSTR_500 (grpc_static_slice_table()[53]) #define GRPC_MDSTR_500 (grpc_static_slice_table()[54])
/* "accept-charset" */ /* "accept-charset" */
#define GRPC_MDSTR_ACCEPT_CHARSET (grpc_static_slice_table()[54]) #define GRPC_MDSTR_ACCEPT_CHARSET (grpc_static_slice_table()[55])
/* "gzip, deflate" */ /* "gzip, deflate" */
#define GRPC_MDSTR_GZIP_COMMA_DEFLATE (grpc_static_slice_table()[55]) #define GRPC_MDSTR_GZIP_COMMA_DEFLATE (grpc_static_slice_table()[56])
/* "accept-language" */ /* "accept-language" */
#define GRPC_MDSTR_ACCEPT_LANGUAGE (grpc_static_slice_table()[56]) #define GRPC_MDSTR_ACCEPT_LANGUAGE (grpc_static_slice_table()[57])
/* "accept-ranges" */ /* "accept-ranges" */
#define GRPC_MDSTR_ACCEPT_RANGES (grpc_static_slice_table()[57]) #define GRPC_MDSTR_ACCEPT_RANGES (grpc_static_slice_table()[58])
/* "accept" */ /* "accept" */
#define GRPC_MDSTR_ACCEPT (grpc_static_slice_table()[58]) #define GRPC_MDSTR_ACCEPT (grpc_static_slice_table()[59])
/* "access-control-allow-origin" */ /* "access-control-allow-origin" */
#define GRPC_MDSTR_ACCESS_CONTROL_ALLOW_ORIGIN (grpc_static_slice_table()[59]) #define GRPC_MDSTR_ACCESS_CONTROL_ALLOW_ORIGIN (grpc_static_slice_table()[60])
/* "age" */ /* "age" */
#define GRPC_MDSTR_AGE (grpc_static_slice_table()[60]) #define GRPC_MDSTR_AGE (grpc_static_slice_table()[61])
/* "allow" */ /* "allow" */
#define GRPC_MDSTR_ALLOW (grpc_static_slice_table()[61]) #define GRPC_MDSTR_ALLOW (grpc_static_slice_table()[62])
/* "authorization" */ /* "authorization" */
#define GRPC_MDSTR_AUTHORIZATION (grpc_static_slice_table()[62]) #define GRPC_MDSTR_AUTHORIZATION (grpc_static_slice_table()[63])
/* "cache-control" */ /* "cache-control" */
#define GRPC_MDSTR_CACHE_CONTROL (grpc_static_slice_table()[63]) #define GRPC_MDSTR_CACHE_CONTROL (grpc_static_slice_table()[64])
/* "content-disposition" */ /* "content-disposition" */
#define GRPC_MDSTR_CONTENT_DISPOSITION (grpc_static_slice_table()[64]) #define GRPC_MDSTR_CONTENT_DISPOSITION (grpc_static_slice_table()[65])
/* "content-language" */ /* "content-language" */
#define GRPC_MDSTR_CONTENT_LANGUAGE (grpc_static_slice_table()[65]) #define GRPC_MDSTR_CONTENT_LANGUAGE (grpc_static_slice_table()[66])
/* "content-length" */ /* "content-length" */
#define GRPC_MDSTR_CONTENT_LENGTH (grpc_static_slice_table()[66]) #define GRPC_MDSTR_CONTENT_LENGTH (grpc_static_slice_table()[67])
/* "content-location" */ /* "content-location" */
#define GRPC_MDSTR_CONTENT_LOCATION (grpc_static_slice_table()[67]) #define GRPC_MDSTR_CONTENT_LOCATION (grpc_static_slice_table()[68])
/* "content-range" */ /* "content-range" */
#define GRPC_MDSTR_CONTENT_RANGE (grpc_static_slice_table()[68]) #define GRPC_MDSTR_CONTENT_RANGE (grpc_static_slice_table()[69])
/* "cookie" */ /* "cookie" */
#define GRPC_MDSTR_COOKIE (grpc_static_slice_table()[69]) #define GRPC_MDSTR_COOKIE (grpc_static_slice_table()[70])
/* "date" */ /* "date" */
#define GRPC_MDSTR_DATE (grpc_static_slice_table()[70]) #define GRPC_MDSTR_DATE (grpc_static_slice_table()[71])
/* "etag" */ /* "etag" */
#define GRPC_MDSTR_ETAG (grpc_static_slice_table()[71]) #define GRPC_MDSTR_ETAG (grpc_static_slice_table()[72])
/* "expect" */ /* "expect" */
#define GRPC_MDSTR_EXPECT (grpc_static_slice_table()[72]) #define GRPC_MDSTR_EXPECT (grpc_static_slice_table()[73])
/* "expires" */ /* "expires" */
#define GRPC_MDSTR_EXPIRES (grpc_static_slice_table()[73]) #define GRPC_MDSTR_EXPIRES (grpc_static_slice_table()[74])
/* "from" */ /* "from" */
#define GRPC_MDSTR_FROM (grpc_static_slice_table()[74]) #define GRPC_MDSTR_FROM (grpc_static_slice_table()[75])
/* "if-match" */ /* "if-match" */
#define GRPC_MDSTR_IF_MATCH (grpc_static_slice_table()[75]) #define GRPC_MDSTR_IF_MATCH (grpc_static_slice_table()[76])
/* "if-modified-since" */ /* "if-modified-since" */
#define GRPC_MDSTR_IF_MODIFIED_SINCE (grpc_static_slice_table()[76]) #define GRPC_MDSTR_IF_MODIFIED_SINCE (grpc_static_slice_table()[77])
/* "if-none-match" */ /* "if-none-match" */
#define GRPC_MDSTR_IF_NONE_MATCH (grpc_static_slice_table()[77]) #define GRPC_MDSTR_IF_NONE_MATCH (grpc_static_slice_table()[78])
/* "if-range" */ /* "if-range" */
#define GRPC_MDSTR_IF_RANGE (grpc_static_slice_table()[78]) #define GRPC_MDSTR_IF_RANGE (grpc_static_slice_table()[79])
/* "if-unmodified-since" */ /* "if-unmodified-since" */
#define GRPC_MDSTR_IF_UNMODIFIED_SINCE (grpc_static_slice_table()[79]) #define GRPC_MDSTR_IF_UNMODIFIED_SINCE (grpc_static_slice_table()[80])
/* "last-modified" */ /* "last-modified" */
#define GRPC_MDSTR_LAST_MODIFIED (grpc_static_slice_table()[80]) #define GRPC_MDSTR_LAST_MODIFIED (grpc_static_slice_table()[81])
/* "link" */ /* "link" */
#define GRPC_MDSTR_LINK (grpc_static_slice_table()[81]) #define GRPC_MDSTR_LINK (grpc_static_slice_table()[82])
/* "location" */ /* "location" */
#define GRPC_MDSTR_LOCATION (grpc_static_slice_table()[82]) #define GRPC_MDSTR_LOCATION (grpc_static_slice_table()[83])
/* "max-forwards" */ /* "max-forwards" */
#define GRPC_MDSTR_MAX_FORWARDS (grpc_static_slice_table()[83]) #define GRPC_MDSTR_MAX_FORWARDS (grpc_static_slice_table()[84])
/* "proxy-authenticate" */ /* "proxy-authenticate" */
#define GRPC_MDSTR_PROXY_AUTHENTICATE (grpc_static_slice_table()[84]) #define GRPC_MDSTR_PROXY_AUTHENTICATE (grpc_static_slice_table()[85])
/* "proxy-authorization" */ /* "proxy-authorization" */
#define GRPC_MDSTR_PROXY_AUTHORIZATION (grpc_static_slice_table()[85]) #define GRPC_MDSTR_PROXY_AUTHORIZATION (grpc_static_slice_table()[86])
/* "range" */ /* "range" */
#define GRPC_MDSTR_RANGE (grpc_static_slice_table()[86]) #define GRPC_MDSTR_RANGE (grpc_static_slice_table()[87])
/* "referer" */ /* "referer" */
#define GRPC_MDSTR_REFERER (grpc_static_slice_table()[87]) #define GRPC_MDSTR_REFERER (grpc_static_slice_table()[88])
/* "refresh" */ /* "refresh" */
#define GRPC_MDSTR_REFRESH (grpc_static_slice_table()[88]) #define GRPC_MDSTR_REFRESH (grpc_static_slice_table()[89])
/* "retry-after" */ /* "retry-after" */
#define GRPC_MDSTR_RETRY_AFTER (grpc_static_slice_table()[89]) #define GRPC_MDSTR_RETRY_AFTER (grpc_static_slice_table()[90])
/* "server" */ /* "server" */
#define GRPC_MDSTR_SERVER (grpc_static_slice_table()[90]) #define GRPC_MDSTR_SERVER (grpc_static_slice_table()[91])
/* "set-cookie" */ /* "set-cookie" */
#define GRPC_MDSTR_SET_COOKIE (grpc_static_slice_table()[91]) #define GRPC_MDSTR_SET_COOKIE (grpc_static_slice_table()[92])
/* "strict-transport-security" */ /* "strict-transport-security" */
#define GRPC_MDSTR_STRICT_TRANSPORT_SECURITY (grpc_static_slice_table()[92]) #define GRPC_MDSTR_STRICT_TRANSPORT_SECURITY (grpc_static_slice_table()[93])
/* "transfer-encoding" */ /* "transfer-encoding" */
#define GRPC_MDSTR_TRANSFER_ENCODING (grpc_static_slice_table()[93]) #define GRPC_MDSTR_TRANSFER_ENCODING (grpc_static_slice_table()[94])
/* "vary" */ /* "vary" */
#define GRPC_MDSTR_VARY (grpc_static_slice_table()[94]) #define GRPC_MDSTR_VARY (grpc_static_slice_table()[95])
/* "via" */ /* "via" */
#define GRPC_MDSTR_VIA (grpc_static_slice_table()[95]) #define GRPC_MDSTR_VIA (grpc_static_slice_table()[96])
/* "www-authenticate" */ /* "www-authenticate" */
#define GRPC_MDSTR_WWW_AUTHENTICATE (grpc_static_slice_table()[96]) #define GRPC_MDSTR_WWW_AUTHENTICATE (grpc_static_slice_table()[97])
/* "0" */ /* "0" */
#define GRPC_MDSTR_0 (grpc_static_slice_table()[97]) #define GRPC_MDSTR_0 (grpc_static_slice_table()[98])
/* "identity" */ /* "identity" */
#define GRPC_MDSTR_IDENTITY (grpc_static_slice_table()[98]) #define GRPC_MDSTR_IDENTITY (grpc_static_slice_table()[99])
/* "trailers" */ /* "trailers" */
#define GRPC_MDSTR_TRAILERS (grpc_static_slice_table()[99]) #define GRPC_MDSTR_TRAILERS (grpc_static_slice_table()[100])
/* "application/grpc" */ /* "application/grpc" */
#define GRPC_MDSTR_APPLICATION_SLASH_GRPC (grpc_static_slice_table()[100]) #define GRPC_MDSTR_APPLICATION_SLASH_GRPC (grpc_static_slice_table()[101])
/* "grpc" */ /* "grpc" */
#define GRPC_MDSTR_GRPC (grpc_static_slice_table()[101]) #define GRPC_MDSTR_GRPC (grpc_static_slice_table()[102])
/* "PUT" */ /* "PUT" */
#define GRPC_MDSTR_PUT (grpc_static_slice_table()[102]) #define GRPC_MDSTR_PUT (grpc_static_slice_table()[103])
/* "lb-cost-bin" */ /* "lb-cost-bin" */
#define GRPC_MDSTR_LB_COST_BIN (grpc_static_slice_table()[103]) #define GRPC_MDSTR_LB_COST_BIN (grpc_static_slice_table()[104])
/* "identity,deflate" */ /* "identity,deflate" */
#define GRPC_MDSTR_IDENTITY_COMMA_DEFLATE (grpc_static_slice_table()[104]) #define GRPC_MDSTR_IDENTITY_COMMA_DEFLATE (grpc_static_slice_table()[105])
/* "identity,gzip" */ /* "identity,gzip" */
#define GRPC_MDSTR_IDENTITY_COMMA_GZIP (grpc_static_slice_table()[105]) #define GRPC_MDSTR_IDENTITY_COMMA_GZIP (grpc_static_slice_table()[106])
/* "deflate,gzip" */ /* "deflate,gzip" */
#define GRPC_MDSTR_DEFLATE_COMMA_GZIP (grpc_static_slice_table()[106]) #define GRPC_MDSTR_DEFLATE_COMMA_GZIP (grpc_static_slice_table()[107])
/* "identity,deflate,gzip" */ /* "identity,deflate,gzip" */
#define GRPC_MDSTR_IDENTITY_COMMA_DEFLATE_COMMA_GZIP \ #define GRPC_MDSTR_IDENTITY_COMMA_DEFLATE_COMMA_GZIP \
(grpc_static_slice_table()[107]) (grpc_static_slice_table()[108])
namespace grpc_core { namespace grpc_core {
struct StaticSliceRefcount; struct StaticSliceRefcount;
@ -538,6 +540,7 @@ typedef enum {
GRPC_BATCH_HOST, GRPC_BATCH_HOST,
GRPC_BATCH_GRPC_PREVIOUS_RPC_ATTEMPTS, GRPC_BATCH_GRPC_PREVIOUS_RPC_ATTEMPTS,
GRPC_BATCH_GRPC_RETRY_PUSHBACK_MS, GRPC_BATCH_GRPC_RETRY_PUSHBACK_MS,
GRPC_BATCH_X_ENDPOINT_LOAD_METRICS_BIN,
GRPC_BATCH_CALLOUTS_COUNT GRPC_BATCH_CALLOUTS_COUNT
} grpc_metadata_batch_callouts_index; } grpc_metadata_batch_callouts_index;
@ -567,6 +570,7 @@ typedef union {
struct grpc_linked_mdelem* host; struct grpc_linked_mdelem* host;
struct grpc_linked_mdelem* grpc_previous_rpc_attempts; struct grpc_linked_mdelem* grpc_previous_rpc_attempts;
struct grpc_linked_mdelem* grpc_retry_pushback_ms; struct grpc_linked_mdelem* grpc_retry_pushback_ms;
struct grpc_linked_mdelem* x_endpoint_load_metrics_bin;
} named; } named;
} grpc_metadata_batch_callouts; } grpc_metadata_batch_callouts;

@ -39,3 +39,10 @@ grpc_proto_library(
well_known_protos = True, well_known_protos = True,
deps = ["eds_for_test_proto"], deps = ["eds_for_test_proto"],
) )
grpc_proto_library(
name = "orca_load_report_for_test_proto",
srcs = [
"orca_load_report_for_test.proto",
],
)

@ -16,8 +16,12 @@
// the gRPC library; otherwise there can be duplicate definition problems if // the gRPC library; otherwise there can be duplicate definition problems if
// users depend on both gRPC and Envoy. It can only be used by gRPC tests. // users depend on both gRPC and Envoy. It can only be used by gRPC tests.
// //
// TODO(juanlishen): It's a workaround and should be removed once we have a // TODO(juanlishen): This file is a hack to avoid a problem we're
// clean solution to use protobuf and external proto files. // currently having where we can't depend on a proto file in an external
// repo due to bazel limitations. Once that's fixed, this should be
// removed. Until this, it should be used in the gRPC tests only, or else it
// will cause a conflict due to the same proto messages being defined in
// multiple files in the same binary.
syntax = "proto3"; syntax = "proto3";

@ -14,9 +14,12 @@
// This file contains the eds protocol and its dependency. // This file contains the eds protocol and its dependency.
// //
// TODO(juanlishen): It's a workaround and should be removed once we have a // TODO(juanlishen): This file is a hack to avoid a problem we're
// clean solution to the circular dependency between the envoy data plane APIs // currently having where we can't depend on a proto file in an external
// and gRPC. We can't check in this file due to conflict with internal code. // repo due to bazel limitations. Once that's fixed, this should be
// removed. Until this, it should be used in the gRPC tests only, or else it
// will cause a conflict due to the same proto messages being defined in
// multiple files in the same binary.
syntax = "proto3"; syntax = "proto3";

@ -0,0 +1,58 @@
// Copyright 2019 The gRPC Authors
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// This file contains a copy of the ORCA load reporting protos, with the
// validation options stripped out to avoid the extra dependency on
// protoc-gen-validate.
//
// TODO(juanlishen): This file is a hack to avoid a problem we're
// currently having where we can't depend on a proto file in an external
// repo due to bazel limitations. Once that's fixed, this should be
// removed. Until this, it should be used in the gRPC tests only, or else it
// will cause a conflict due to the same proto messages being defined in
// multiple files in the same binary.
syntax = "proto3";
package udpa.data.orca.v1;
option java_outer_classname = "OrcaLoadReportProto";
option java_multiple_files = true;
option java_package = "io.envoyproxy.udpa.data.orca.v1";
option go_package = "v1";
// See section `ORCA load report format` of the design document in
// :ref:`https://github.com/envoyproxy/envoy/issues/6614`.
message OrcaLoadReport {
// CPU utilization expressed as a fraction of available CPU resources. This
// should be derived from the latest sample or measurement.
double cpu_utilization = 1;
// Memory utilization expressed as a fraction of available memory
// resources. This should be derived from the latest sample or measurement.
double mem_utilization = 2;
// Total RPS being served by an endpoint. This should cover all services that an endpoint is
// responsible for.
uint64 rps = 3;
// Application specific requests costs. Each value is an absolute cost (e.g. 3487 bytes of
// storage) associated with the request.
map<string, double> request_cost = 4;
// Resource utilization values. Each value is expressed as a fraction of total resources
// available, derived from the latest sample or measurement.
map<string, double> utilization = 5;
}

@ -322,6 +322,7 @@ CORE_SOURCE_FILES = [
'src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc', 'src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc',
'src/core/ext/transport/chttp2/client/authority.cc', 'src/core/ext/transport/chttp2/client/authority.cc',
'src/core/ext/transport/chttp2/client/chttp2_connector.cc', 'src/core/ext/transport/chttp2/client/chttp2_connector.cc',
'src/core/ext/filters/client_channel/backend_metric.cc',
'src/core/ext/filters/client_channel/backup_poller.cc', 'src/core/ext/filters/client_channel/backup_poller.cc',
'src/core/ext/filters/client_channel/channel_connectivity.cc', 'src/core/ext/filters/client_channel/channel_connectivity.cc',
'src/core/ext/filters/client_channel/client_channel.cc', 'src/core/ext/filters/client_channel/client_channel.cc',
@ -350,6 +351,19 @@ CORE_SOURCE_FILES = [
'src/core/ext/filters/client_channel/subchannel_pool_interface.cc', 'src/core/ext/filters/client_channel/subchannel_pool_interface.cc',
'src/core/ext/filters/deadline/deadline_filter.cc', 'src/core/ext/filters/deadline/deadline_filter.cc',
'src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c', 'src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c',
'src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c',
'src/core/ext/upb-generated/gogoproto/gogo.upb.c',
'src/core/ext/upb-generated/validate/validate.upb.c',
'src/core/ext/upb-generated/google/api/annotations.upb.c',
'src/core/ext/upb-generated/google/api/http.upb.c',
'src/core/ext/upb-generated/google/protobuf/any.upb.c',
'src/core/ext/upb-generated/google/protobuf/descriptor.upb.c',
'src/core/ext/upb-generated/google/protobuf/duration.upb.c',
'src/core/ext/upb-generated/google/protobuf/empty.upb.c',
'src/core/ext/upb-generated/google/protobuf/struct.upb.c',
'src/core/ext/upb-generated/google/protobuf/timestamp.upb.c',
'src/core/ext/upb-generated/google/protobuf/wrappers.upb.c',
'src/core/ext/upb-generated/google/rpc/status.upb.c',
'src/core/tsi/fake_transport_security.cc', 'src/core/tsi/fake_transport_security.cc',
'src/core/tsi/local_transport_security.cc', 'src/core/tsi/local_transport_security.cc',
'src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc', 'src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc',
@ -369,16 +383,6 @@ CORE_SOURCE_FILES = [
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc', 'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc',
'src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc', 'src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc',
'src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c', 'src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c',
'src/core/ext/upb-generated/google/api/annotations.upb.c',
'src/core/ext/upb-generated/google/api/http.upb.c',
'src/core/ext/upb-generated/google/protobuf/any.upb.c',
'src/core/ext/upb-generated/google/protobuf/descriptor.upb.c',
'src/core/ext/upb-generated/google/protobuf/duration.upb.c',
'src/core/ext/upb-generated/google/protobuf/empty.upb.c',
'src/core/ext/upb-generated/google/protobuf/struct.upb.c',
'src/core/ext/upb-generated/google/protobuf/timestamp.upb.c',
'src/core/ext/upb-generated/google/protobuf/wrappers.upb.c',
'src/core/ext/upb-generated/google/rpc/status.upb.c',
'src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc', 'src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc',
'src/core/ext/filters/client_channel/lb_policy/xds/xds.cc', 'src/core/ext/filters/client_channel/lb_policy/xds/xds.cc',
'src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_secure.cc', 'src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_secure.cc',
@ -387,6 +391,7 @@ CORE_SOURCE_FILES = [
'src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/cds.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/cds.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/eds.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/eds.upb.c',
@ -399,11 +404,10 @@ CORE_SOURCE_FILES = [
'src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.c',
'src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c', 'src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c',
'src/core/ext/upb-generated/envoy/type/percent.upb.c', 'src/core/ext/upb-generated/envoy/type/percent.upb.c',
'src/core/ext/upb-generated/envoy/type/range.upb.c', 'src/core/ext/upb-generated/envoy/type/range.upb.c',
'src/core/ext/upb-generated/gogoproto/gogo.upb.c',
'src/core/ext/upb-generated/validate/validate.upb.c',
'src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc', 'src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc',
'src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc', 'src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc', 'src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc',

@ -22,6 +22,7 @@
"\x04host" "\x04host"
"\x1Agrpc-previous-rpc-attempts" "\x1Agrpc-previous-rpc-attempts"
"\x16grpc-retry-pushback-ms" "\x16grpc-retry-pushback-ms"
"\x1Bx-endpoint-load-metrics-bin"
"\x0Cgrpc-timeout" "\x0Cgrpc-timeout"
"\x011" "\x011"
"\x012" "\x012"

@ -191,7 +191,7 @@ class InterceptRecvTrailingMetadataLoadBalancingPolicy
gpr_log(GPR_INFO, "trailing metadata:"); gpr_log(GPR_INFO, "trailing metadata:");
InterceptRecvTrailingMetadataLoadBalancingPolicy::LogMetadata( InterceptRecvTrailingMetadataLoadBalancingPolicy::LogMetadata(
recv_trailing_metadata); recv_trailing_metadata);
self->cb_(self->user_data_); self->cb_(self->user_data_, call_state->GetBackendMetricData());
self->~TrailingMetadataHandler(); self->~TrailingMetadataHandler();
} }

@ -19,9 +19,12 @@
#ifndef GRPC_TEST_CORE_UTIL_TEST_LB_POLICIES_H #ifndef GRPC_TEST_CORE_UTIL_TEST_LB_POLICIES_H
#define GRPC_TEST_CORE_UTIL_TEST_LB_POLICIES_H #define GRPC_TEST_CORE_UTIL_TEST_LB_POLICIES_H
#include "src/core/ext/filters/client_channel/lb_policy.h"
namespace grpc_core { namespace grpc_core {
typedef void (*InterceptRecvTrailingMetadataCallback)(void*); typedef void (*InterceptRecvTrailingMetadataCallback)(
void*, const LoadBalancingPolicy::BackendMetricData*);
// Registers an LB policy called "intercept_trailing_metadata_lb" that // Registers an LB policy called "intercept_trailing_metadata_lb" that
// invokes cb with argument user_data when trailing metadata is received // invokes cb with argument user_data when trailing metadata is received

@ -433,6 +433,7 @@ grpc_cc_test(
"//:gpr", "//:gpr",
"//:grpc", "//:grpc",
"//:grpc++", "//:grpc++",
"//src/proto/grpc/lb/v2:orca_load_report_for_test_proto",
"//src/proto/grpc/testing:echo_messages_proto", "//src/proto/grpc/testing:echo_messages_proto",
"//src/proto/grpc/testing:echo_proto", "//src/proto/grpc/testing:echo_proto",
"//src/proto/grpc/testing/duplicate:echo_duplicate_proto", "//src/proto/grpc/testing/duplicate:echo_duplicate_proto",

@ -51,6 +51,7 @@
#include "src/cpp/client/secure_credentials.h" #include "src/cpp/client/secure_credentials.h"
#include "src/cpp/server/secure_server_credentials.h" #include "src/cpp/server/secure_server_credentials.h"
#include "src/proto/grpc/lb/v2/orca_load_report_for_test.pb.h"
#include "src/proto/grpc/testing/echo.grpc.pb.h" #include "src/proto/grpc/testing/echo.grpc.pb.h"
#include "test/core/util/port.h" #include "test/core/util/port.h"
#include "test/core/util/test_config.h" #include "test/core/util/test_config.h"
@ -94,15 +95,21 @@ grpc_tcp_client_vtable delayed_connect = {tcp_client_connect_with_delay};
// every call to the Echo RPC. // every call to the Echo RPC.
class MyTestServiceImpl : public TestServiceImpl { class MyTestServiceImpl : public TestServiceImpl {
public: public:
MyTestServiceImpl() : request_count_(0) {}
Status Echo(ServerContext* context, const EchoRequest* request, Status Echo(ServerContext* context, const EchoRequest* request,
EchoResponse* response) override { EchoResponse* response) override {
const udpa::data::orca::v1::OrcaLoadReport* load_report = nullptr;
{ {
grpc::internal::MutexLock lock(&mu_); grpc::internal::MutexLock lock(&mu_);
++request_count_; ++request_count_;
load_report = load_report_;
} }
AddClient(context->peer()); AddClient(context->peer());
if (load_report != nullptr) {
// TODO(roth): Once we provide a more standard server-side API for
// populating this data, use that API here.
context->AddTrailingMetadata("x-endpoint-load-metrics-bin",
load_report->SerializeAsString());
}
return TestServiceImpl::Echo(context, request, response); return TestServiceImpl::Echo(context, request, response);
} }
@ -121,6 +128,11 @@ class MyTestServiceImpl : public TestServiceImpl {
return clients_; return clients_;
} }
void set_load_report(udpa::data::orca::v1::OrcaLoadReport* load_report) {
grpc::internal::MutexLock lock(&mu_);
load_report_ = load_report;
}
private: private:
void AddClient(const grpc::string& client) { void AddClient(const grpc::string& client) {
grpc::internal::MutexLock lock(&clients_mu_); grpc::internal::MutexLock lock(&clients_mu_);
@ -128,7 +140,8 @@ class MyTestServiceImpl : public TestServiceImpl {
} }
grpc::internal::Mutex mu_; grpc::internal::Mutex mu_;
int request_count_; int request_count_ = 0;
const udpa::data::orca::v1::OrcaLoadReport* load_report_ = nullptr;
grpc::internal::Mutex clients_mu_; grpc::internal::Mutex clients_mu_;
std::set<grpc::string> clients_; std::set<grpc::string> clients_;
}; };
@ -1506,16 +1519,40 @@ class ClientLbInterceptTrailingMetadataTest : public ClientLbEnd2endTest {
return trailers_intercepted_; return trailers_intercepted_;
} }
const udpa::data::orca::v1::OrcaLoadReport* backend_load_report() {
grpc::internal::MutexLock lock(&mu_);
return load_report_.get();
}
private: private:
static void ReportTrailerIntercepted(void* arg) { static void ReportTrailerIntercepted(
void* arg, const grpc_core::LoadBalancingPolicy::BackendMetricData*
backend_metric_data) {
ClientLbInterceptTrailingMetadataTest* self = ClientLbInterceptTrailingMetadataTest* self =
static_cast<ClientLbInterceptTrailingMetadataTest*>(arg); static_cast<ClientLbInterceptTrailingMetadataTest*>(arg);
grpc::internal::MutexLock lock(&self->mu_); grpc::internal::MutexLock lock(&self->mu_);
self->trailers_intercepted_++; self->trailers_intercepted_++;
if (backend_metric_data != nullptr) {
self->load_report_.reset(new udpa::data::orca::v1::OrcaLoadReport);
self->load_report_->set_cpu_utilization(
backend_metric_data->cpu_utilization);
self->load_report_->set_mem_utilization(
backend_metric_data->mem_utilization);
self->load_report_->set_rps(backend_metric_data->requests_per_second);
for (const auto& p : backend_metric_data->request_cost) {
grpc_core::UniquePtr<char> name = p.first.dup();
(*self->load_report_->mutable_request_cost())[name.get()] = p.second;
}
for (const auto& p : backend_metric_data->utilization) {
grpc_core::UniquePtr<char> name = p.first.dup();
(*self->load_report_->mutable_utilization())[name.get()] = p.second;
}
}
} }
grpc::internal::Mutex mu_; grpc::internal::Mutex mu_;
int trailers_intercepted_ = 0; int trailers_intercepted_ = 0;
std::unique_ptr<udpa::data::orca::v1::OrcaLoadReport> load_report_;
}; };
TEST_F(ClientLbInterceptTrailingMetadataTest, InterceptsRetriesDisabled) { TEST_F(ClientLbInterceptTrailingMetadataTest, InterceptsRetriesDisabled) {
@ -1534,6 +1571,7 @@ TEST_F(ClientLbInterceptTrailingMetadataTest, InterceptsRetriesDisabled) {
EXPECT_EQ("intercept_trailing_metadata_lb", EXPECT_EQ("intercept_trailing_metadata_lb",
channel->GetLoadBalancingPolicyName()); channel->GetLoadBalancingPolicyName());
EXPECT_EQ(kNumRpcs, trailers_intercepted()); EXPECT_EQ(kNumRpcs, trailers_intercepted());
EXPECT_EQ(nullptr, backend_load_report());
} }
TEST_F(ClientLbInterceptTrailingMetadataTest, InterceptsRetriesEnabled) { TEST_F(ClientLbInterceptTrailingMetadataTest, InterceptsRetriesEnabled) {
@ -1568,6 +1606,57 @@ TEST_F(ClientLbInterceptTrailingMetadataTest, InterceptsRetriesEnabled) {
EXPECT_EQ("intercept_trailing_metadata_lb", EXPECT_EQ("intercept_trailing_metadata_lb",
channel->GetLoadBalancingPolicyName()); channel->GetLoadBalancingPolicyName());
EXPECT_EQ(kNumRpcs, trailers_intercepted()); EXPECT_EQ(kNumRpcs, trailers_intercepted());
EXPECT_EQ(nullptr, backend_load_report());
}
TEST_F(ClientLbInterceptTrailingMetadataTest, BackendMetricData) {
const int kNumServers = 1;
const int kNumRpcs = 10;
StartServers(kNumServers);
udpa::data::orca::v1::OrcaLoadReport load_report;
load_report.set_cpu_utilization(0.5);
load_report.set_mem_utilization(0.75);
load_report.set_rps(25);
auto* request_cost = load_report.mutable_request_cost();
(*request_cost)["foo"] = 0.8;
(*request_cost)["bar"] = 1.4;
auto* utilization = load_report.mutable_utilization();
(*utilization)["baz"] = 1.1;
(*utilization)["quux"] = 0.9;
for (const auto& server : servers_) {
server->service_.set_load_report(&load_report);
}
auto response_generator = BuildResolverResponseGenerator();
auto channel =
BuildChannel("intercept_trailing_metadata_lb", response_generator);
auto stub = BuildStub(channel);
response_generator.SetNextResolution(GetServersPorts());
for (size_t i = 0; i < kNumRpcs; ++i) {
CheckRpcSendOk(stub, DEBUG_LOCATION);
auto* actual = backend_load_report();
ASSERT_NE(actual, nullptr);
// TODO(roth): Change this to use EqualsProto() once that becomes
// available in OSS.
EXPECT_EQ(actual->cpu_utilization(), load_report.cpu_utilization());
EXPECT_EQ(actual->mem_utilization(), load_report.mem_utilization());
EXPECT_EQ(actual->rps(), load_report.rps());
EXPECT_EQ(actual->request_cost().size(), load_report.request_cost().size());
for (const auto& p : actual->request_cost()) {
auto it = load_report.request_cost().find(p.first);
ASSERT_NE(it, load_report.request_cost().end());
EXPECT_EQ(it->second, p.second);
}
EXPECT_EQ(actual->utilization().size(), load_report.utilization().size());
for (const auto& p : actual->utilization()) {
auto it = load_report.utilization().find(p.first);
ASSERT_NE(it, load_report.utilization().end());
EXPECT_EQ(it->second, p.second);
}
}
// Check LB policy name for the channel.
EXPECT_EQ("intercept_trailing_metadata_lb",
channel->GetLoadBalancingPolicyName());
EXPECT_EQ(kNumRpcs, trailers_intercepted());
} }
} // namespace } // namespace

@ -1 +1 @@
Subproject commit a83394157ad97f4dadbc8ed81f56ad5b3a72e542 Subproject commit c181f78882e54c0e5c63f332562ef6954ee7932f

1
third_party/udpa vendored

@ -0,0 +1 @@
Subproject commit 94324803a497c8f76dbc78df393ef629d3a9f3c3

@ -56,6 +56,7 @@ CONFIG = [
'3', '3',
'4', '4',
'', '',
'x-endpoint-load-metrics-bin',
# channel arg keys # channel arg keys
'grpc.wait_for_ready', 'grpc.wait_for_ready',
'grpc.timeout', 'grpc.timeout',
@ -177,6 +178,7 @@ METADATA_BATCH_CALLOUTS = [
'host', 'host',
'grpc-previous-rpc-attempts', 'grpc-previous-rpc-attempts',
'grpc-retry-pushback-ms', 'grpc-retry-pushback-ms',
'x-endpoint-load-metrics-bin',
] ]
COMPRESSION_ALGORITHMS = [ COMPRESSION_ALGORITHMS = [

@ -41,12 +41,14 @@ proto_files=( \
"envoy/api/v2/auth/cert.proto" \ "envoy/api/v2/auth/cert.proto" \
"envoy/api/v2/cds.proto" \ "envoy/api/v2/cds.proto" \
"envoy/api/v2/cluster/circuit_breaker.proto" \ "envoy/api/v2/cluster/circuit_breaker.proto" \
"envoy/api/v2/cluster/filter.proto" \
"envoy/api/v2/cluster/outlier_detection.proto" \ "envoy/api/v2/cluster/outlier_detection.proto" \
"envoy/api/v2/core/address.proto" \ "envoy/api/v2/core/address.proto" \
"envoy/api/v2/core/base.proto" \ "envoy/api/v2/core/base.proto" \
"envoy/api/v2/core/config_source.proto" \ "envoy/api/v2/core/config_source.proto" \
"envoy/api/v2/core/grpc_service.proto" \ "envoy/api/v2/core/grpc_service.proto" \
"envoy/api/v2/core/health_check.proto" \ "envoy/api/v2/core/health_check.proto" \
"envoy/api/v2/core/http_uri.proto" \
"envoy/api/v2/core/protocol.proto" \ "envoy/api/v2/core/protocol.proto" \
"envoy/api/v2/discovery.proto" \ "envoy/api/v2/discovery.proto" \
"envoy/api/v2/eds.proto" \ "envoy/api/v2/eds.proto" \
@ -71,13 +73,15 @@ proto_files=( \
"src/proto/grpc/gcp/handshaker.proto" \ "src/proto/grpc/gcp/handshaker.proto" \
"src/proto/grpc/gcp/transport_security_common.proto" \ "src/proto/grpc/gcp/transport_security_common.proto" \
"src/proto/grpc/health/v1/health.proto" \ "src/proto/grpc/health/v1/health.proto" \
"src/proto/grpc/health/v1/health.proto" \
"src/proto/grpc/lb/v1/load_balancer.proto" \ "src/proto/grpc/lb/v1/load_balancer.proto" \
"udpa/data/orca/v1/orca_load_report.proto" \
"validate/validate.proto") "validate/validate.proto")
for i in "${proto_files[@]}" for i in "${proto_files[@]}"
do do
echo "Compiling: ${i}"
$PROTOC \ $PROTOC \
-I=$PWD/third_party/udpa \
-I=$PWD/third_party/envoy-api \ -I=$PWD/third_party/envoy-api \
-I=$PWD/third_party/googleapis \ -I=$PWD/third_party/googleapis \
-I=$PWD/third_party/protobuf/src \ -I=$PWD/third_party/protobuf/src \

@ -875,6 +875,8 @@ src/core/README.md \
src/core/ext/README.md \ src/core/ext/README.md \
src/core/ext/filters/census/grpc_context.cc \ src/core/ext/filters/census/grpc_context.cc \
src/core/ext/filters/client_channel/README.md \ src/core/ext/filters/client_channel/README.md \
src/core/ext/filters/client_channel/backend_metric.cc \
src/core/ext/filters/client_channel/backend_metric.h \
src/core/ext/filters/client_channel/backup_poller.cc \ src/core/ext/filters/client_channel/backup_poller.cc \
src/core/ext/filters/client_channel/backup_poller.h \ src/core/ext/filters/client_channel/backup_poller.h \
src/core/ext/filters/client_channel/channel_connectivity.cc \ src/core/ext/filters/client_channel/channel_connectivity.cc \
@ -1065,6 +1067,8 @@ src/core/ext/upb-generated/envoy/api/v2/cds.upb.c \
src/core/ext/upb-generated/envoy/api/v2/cds.upb.h \ src/core/ext/upb-generated/envoy/api/v2/cds.upb.h \
src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c \ src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c \
src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.h \ src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.h \
src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.c \
src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.h \
src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c \ src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c \
src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.h \ src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.h \
src/core/ext/upb-generated/envoy/api/v2/core/address.upb.c \ src/core/ext/upb-generated/envoy/api/v2/core/address.upb.c \
@ -1077,6 +1081,8 @@ src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c \
src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.h \ src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.h \
src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c \ src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c \
src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.h \ src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.h \
src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.c \
src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.h \
src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c \ src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c \
src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.h \ src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.h \
src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c \ src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c \
@ -1127,6 +1133,8 @@ src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c \
src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h \ src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h \
src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c \ src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c \
src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h \ src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h \
src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c \
src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.h \
src/core/ext/upb-generated/validate/validate.upb.c \ src/core/ext/upb-generated/validate/validate.upb.c \
src/core/ext/upb-generated/validate/validate.upb.h \ src/core/ext/upb-generated/validate/validate.upb.h \
src/core/lib/README.md \ src/core/lib/README.md \

@ -32,7 +32,7 @@ cat << EOF | awk '{ print $1 }' | sort > "$want_submodules"
b29b21a81b32ec273f118f589f46d56ad3332420 third_party/boringssl (remotes/origin/chromium-stable) b29b21a81b32ec273f118f589f46d56ad3332420 third_party/boringssl (remotes/origin/chromium-stable)
afc30d43eef92979b05776ec0963c9cede5fb80f third_party/boringssl-with-bazel (fips-20180716-116-gafc30d43e) afc30d43eef92979b05776ec0963c9cede5fb80f third_party/boringssl-with-bazel (fips-20180716-116-gafc30d43e)
e982924acee7f7313b4baa4ee5ec000c5e373c30 third_party/cares/cares (cares-1_15_0) e982924acee7f7313b4baa4ee5ec000c5e373c30 third_party/cares/cares (cares-1_15_0)
a83394157ad97f4dadbc8ed81f56ad5b3a72e542 third_party/envoy-api (heads/master) c181f78882e54c0e5c63f332562ef6954ee7932f third_party/envoy-api (heads/master)
28f50e0fed19872e0fd50dd23ce2ee8cd759338e third_party/gflags (v2.2.0-5-g30dbc81) 28f50e0fed19872e0fd50dd23ce2ee8cd759338e third_party/gflags (v2.2.0-5-g30dbc81)
80ed4d0bbf65d57cc267dfc63bd2584557f11f9b third_party/googleapis (common-protos-1_3_1-915-g80ed4d0bb) 80ed4d0bbf65d57cc267dfc63bd2584557f11f9b third_party/googleapis (common-protos-1_3_1-915-g80ed4d0bb)
c9ccac7cb7345901884aabf5d1a786cfa6e2f397 third_party/googletest (6e2f397) c9ccac7cb7345901884aabf5d1a786cfa6e2f397 third_party/googletest (6e2f397)
@ -40,6 +40,7 @@ cat << EOF | awk '{ print $1 }' | sort > "$want_submodules"
9245d481eb3e890f708ff2d7dadf2a10c04748ba third_party/libcxxabi (heads/release_60) 9245d481eb3e890f708ff2d7dadf2a10c04748ba third_party/libcxxabi (heads/release_60)
09745575a923640154bcf307fba8aedff47f240a third_party/protobuf (v3.7.0-rc.2-247-g09745575) 09745575a923640154bcf307fba8aedff47f240a third_party/protobuf (v3.7.0-rc.2-247-g09745575)
e143189bf6f37b3957fb31743df6a1bcf4a8c685 third_party/protoc-gen-validate (v0.0.10) e143189bf6f37b3957fb31743df6a1bcf4a8c685 third_party/protoc-gen-validate (v0.0.10)
94324803a497c8f76dbc78df393ef629d3a9f3c3 third_party/udpa (heads/master)
931bbecbd3230ae7f22efa5d203639facc47f719 third_party/upb (heads/master) 931bbecbd3230ae7f22efa5d203639facc47f719 third_party/upb (heads/master)
cacf7f1d4e3d44d871b605da3b647f07d718623f third_party/zlib (v1.2.11) cacf7f1d4e3d44d871b605da3b647f07d718623f third_party/zlib (v1.2.11)
EOF EOF

Loading…
Cancel
Save