@ -570,12 +570,15 @@ grpc_cc_library(
" //src/core:channel_args " ,
" //src/core:channel_init " ,
" //src/core:channel_stack_type " ,
" //src/core:client_channel_backup_poller " ,
" //src/core:default_event_engine " ,
" //src/core:experiments " ,
" //src/core:forkable " ,
" //src/core:grpc_authorization_base " ,
" //src/core:http_proxy_mapper " ,
" //src/core:init_internally " ,
" //src/core:posix_event_engine_timer_manager " ,
" //src/core:service_config_channel_arg_filter " ,
" //src/core:slice " ,
" //src/core:tcp_connect_handshaker " ,
] ,
@ -652,6 +655,7 @@ grpc_cc_library(
" //src/core:channel_args " ,
" //src/core:channel_init " ,
" //src/core:channel_stack_type " ,
" //src/core:client_channel_backup_poller " ,
" //src/core:default_event_engine " ,
" //src/core:experiments " ,
" //src/core:forkable " ,
@ -666,11 +670,13 @@ grpc_cc_library(
" //src/core:grpc_ssl_credentials " ,
" //src/core:grpc_tls_credentials " ,
" //src/core:grpc_transport_chttp2_alpn " ,
" //src/core:http_proxy_mapper " ,
" //src/core:httpcli_ssl_credentials " ,
" //src/core:init_internally " ,
" //src/core:json " ,
" //src/core:posix_event_engine_timer_manager " ,
" //src/core:ref_counted " ,
" //src/core:service_config_channel_arg_filter " ,
" //src/core:slice " ,
" //src/core:slice_refcount " ,
" //src/core:tcp_connect_handshaker " ,
@ -1120,6 +1126,7 @@ grpc_cc_library(
" //src/core:slice " ,
" //src/core:slice_refcount " ,
" //src/core:status_helper " ,
" //src/core:subchannel_connector " ,
" //src/core:transport_fwd " ,
] ,
)
@ -3227,58 +3234,108 @@ grpc_cc_library(
] ,
)
grpc_cc_library (
name = " oob_backend_metric " ,
srcs = [
" //src/core:load_balancing/oob_backend_metric.cc " ,
] ,
hdrs = [
" //src/core:load_balancing/oob_backend_metric.h " ,
" //src/core:load_balancing/oob_backend_metric_internal.h " ,
] ,
external_deps = [
" absl/base:core_headers " ,
" absl/status " ,
" absl/strings " ,
" upb_base_lib " ,
" upb_mem_lib " ,
] ,
language = " c++ " ,
deps = [
" channelz " ,
" debug_location " ,
" exec_ctx " ,
" gpr " ,
" grpc_client_channel " ,
" grpc_public_hdrs " ,
" grpc_trace " ,
" orphanable " ,
" protobuf_duration_upb " ,
" ref_counted_ptr " ,
" xds_orca_service_upb " ,
" xds_orca_upb " ,
" //src/core:backend_metric_parser " ,
" //src/core:client_channel_channelz " ,
" //src/core:closure " ,
" //src/core:error " ,
" //src/core:grpc_backend_metric_data " ,
" //src/core:iomgr_fwd " ,
" //src/core:pollset_set " ,
" //src/core:slice " ,
" //src/core:subchannel_interface " ,
" //src/core:time " ,
" //src/core:unique_type_name " ,
] ,
)
grpc_cc_library (
name = " lb_child_policy_handler " ,
srcs = [
" //src/core:load_balancing/child_policy_handler.cc " ,
] ,
hdrs = [
" //src/core:load_balancing/child_policy_handler.h " ,
] ,
external_deps = [
" absl/status " ,
" absl/strings " ,
] ,
language = " c++ " ,
deps = [
" config " ,
" debug_location " ,
" gpr_public_hdrs " ,
" grpc_public_hdrs " ,
" grpc_trace " ,
" orphanable " ,
" ref_counted_ptr " ,
" //src/core:channel_args " ,
" //src/core:connectivity_state " ,
" //src/core:delegating_helper " ,
" //src/core:lb_policy " ,
" //src/core:lb_policy_registry " ,
" //src/core:pollset_set " ,
" //src/core:resolved_address " ,
" //src/core:subchannel_interface " ,
] ,
)
grpc_cc_library (
name = " grpc_client_channel " ,
srcs = [
" //src/core:client_channel/backend_metric.cc " ,
" //src/core:client_channel/backup_poller.cc " ,
" //src/core:client_channel/channel_connectivity.cc " ,
" //src/core:client_channel/client_channel_channelz.cc " ,
" //src/core:client_channel/client_channel_factory.cc " ,
" //src/core:client_channel/client_channel_filter.cc " ,
" //src/core:client_channel/client_channel_plugin.cc " ,
" //src/core:client_channel/client_channel_service_config.cc " ,
" //src/core:client_channel/config_selector.cc " ,
" //src/core:client_channel/dynamic_filters.cc " ,
" //src/core:client_channel/global_subchannel_pool.cc " ,
" //src/core:client_channel/http_proxy_mapper.cc " ,
" //src/core:client_channel/local_subchannel_pool.cc " ,
" //src/core:client_channel/retry_filter.cc " ,
" //src/core:client_channel/retry_filter_legacy_call_data.cc " ,
" //src/core:client_channel/retry_service_config.cc " ,
" //src/core:client_channel/retry_throttle.cc " ,
" //src/core:client_channel/service_config_channel_arg_filter.cc " ,
" //src/core:client_channel/subchannel.cc " ,
" //src/core:client_channel/subchannel_pool_interface.cc " ,
" //src/core:client_channel/subchannel_stream_client.cc " ,
" //src/core:load_balancing/child_policy_handler.cc " ,
" //src/core:load_balancing/oob_backend_metric.cc " ,
] ,
hdrs = [
" //src/core:client_channel/backend_metric.h " ,
" //src/core:client_channel/backup_poller.h " ,
" //src/core:client_channel/client_channel_channelz.h " ,
" //src/core:client_channel/client_channel_factory.h " ,
" //src/core:client_channel/client_channel_filter.h " ,
" //src/core:client_channel/client_channel_internal.h " ,
" //src/core:client_channel/client_channel_service_config.h " ,
" //src/core:client_channel/config_selector.h " ,
" //src/core:client_channel/connector.h " ,
" //src/core:client_channel/dynamic_filters.h " ,
" //src/core:client_channel/global_subchannel_pool.h " ,
" //src/core:client_channel/http_proxy_mapper.h " ,
" //src/core:client_channel/local_subchannel_pool.h " ,
" //src/core:client_channel/retry_filter.h " ,
" //src/core:client_channel/retry_filter_legacy_call_data.h " ,
" //src/core:client_channel/retry_service_config.h " ,
" //src/core:client_channel/retry_throttle.h " ,
" //src/core:client_channel/subchannel.h " ,
" //src/core:client_channel/subchannel_interface_internal.h " ,
" //src/core:client_channel/subchannel_pool_interface.h " ,
" //src/core:client_channel/subchannel_stream_client.h " ,
" //src/core:load_balancing/child_policy_handler.h " ,
" //src/core:load_balancing/oob_backend_metric.h " ,
" //src/core:load_balancing/oob_backend_metric_internal.h " ,
] ,
external_deps = [
" absl/base:core_headers " ,
@ -3318,6 +3375,7 @@ grpc_cc_library(
" http_connect_handshaker " ,
" iomgr " ,
" iomgr_timer " ,
" lb_child_policy_handler " ,
" legacy_context " ,
" orphanable " ,
" parse_address " ,
@ -3333,12 +3391,18 @@ grpc_cc_library(
" //src/core:activity " ,
" //src/core:arena " ,
" //src/core:arena_promise " ,
" //src/core:backend_metric_parser " ,
" //src/core:cancel_callback " ,
" //src/core:channel_args " ,
" //src/core:channel_fwd " ,
" //src/core:channel_init " ,
" //src/core:channel_stack_type " ,
" //src/core:client_channel_backup_poller " ,
" //src/core:client_channel_channelz " ,
" //src/core:client_channel_internal_header " ,
" //src/core:client_channel_service_config " ,
" //src/core:closure " ,
" //src/core:config_selector " ,
" //src/core:connectivity_state " ,
" //src/core:construct_destruct " ,
" //src/core:context " ,
@ -3374,6 +3438,8 @@ grpc_cc_library(
" //src/core:ref_counted " ,
" //src/core:resolved_address " ,
" //src/core:resource_quota " ,
" //src/core:retry_service_config " ,
" //src/core:retry_throttle " ,
" //src/core:seq " ,
" //src/core:service_config_parser " ,
" //src/core:slice " ,
@ -3381,7 +3447,9 @@ grpc_cc_library(
" //src/core:slice_refcount " ,
" //src/core:stats_data " ,
" //src/core:status_helper " ,
" //src/core:subchannel_connector " ,
" //src/core:subchannel_interface " ,
" //src/core:subchannel_pool_interface " ,
" //src/core:time " ,
" //src/core:try_seq " ,
" //src/core:unique_type_name " ,