Classes | Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
grpc::testing::LrsServiceImpl Class Reference

#include <xds_server.h>

Inheritance diagram for grpc::testing::LrsServiceImpl:
Inheritance graph
[legend]

Classes

class  ClientStats
 
class  RpcService
 

Public Member Functions

 LrsServiceImpl (int client_load_reporting_interval_seconds, std::set< std::string > cluster_names)
 
size_t request_count ()
 
size_t response_count ()
 
void set_cluster_names (const std::set< std::string > &cluster_names)
 
void set_send_all_clusters (bool send_all_clusters)
 
void Shutdown ()
 
void Start () ABSL_LOCKS_EXCLUDED(lrs_mu_
 
::envoy::service::load_stats::v2::LoadReportingService::Service * v2_rpc_service ()
 
::envoy::service::load_stats::v3::LoadReportingService::Service * v3_rpc_service ()
 
std::vector< ClientStatsWaitForLoadReport ()
 

Public Attributes

void load_report_mu_
 

Private Member Functions

grpc_core::CondVar *load_report_cond_ ABSL_GUARDED_BY (load_report_mu_)
 
std::deque< std::vector< ClientStats > > result_queue_ ABSL_GUARDED_BY (load_report_mu_)
 
bool lrs_done_ ABSL_GUARDED_BY (lrs_mu_)
 

Private Attributes

const int client_load_reporting_interval_seconds_
 
std::set< std::string > cluster_names_
 
grpc_core::Mutex load_report_mu_
 
grpc_core::CondVar lrs_cv_
 
grpc_core::Mutex lrs_mu_
 
bool send_all_clusters_ = false
 
RpcService<::envoy::service::load_stats::v2::LoadReportingService, ::envoy::service::load_stats::v2::LoadStatsRequest, ::envoy::service::load_stats::v2::LoadStatsResponse > v2_rpc_service_
 
RpcService<::envoy::service::load_stats::v3::LoadReportingService, ::envoy::service::load_stats::v3::LoadStatsRequest, ::envoy::service::load_stats::v3::LoadStatsResponse > v3_rpc_service_
 

Detailed Description

Definition at line 699 of file xds_server.h.

Constructor & Destructor Documentation

◆ LrsServiceImpl()

grpc::testing::LrsServiceImpl::LrsServiceImpl ( int  client_load_reporting_interval_seconds,
std::set< std::string >  cluster_names 
)
inline

Definition at line 781 of file xds_server.h.

Member Function Documentation

◆ ABSL_GUARDED_BY() [1/3]

grpc_core::CondVar* load_report_cond_ grpc::testing::LrsServiceImpl::ABSL_GUARDED_BY ( load_report_mu_  )
private

◆ ABSL_GUARDED_BY() [2/3]

std::deque<std::vector<ClientStats> > result_queue_ grpc::testing::LrsServiceImpl::ABSL_GUARDED_BY ( load_report_mu_  )
private

◆ ABSL_GUARDED_BY() [3/3]

bool lrs_done_ grpc::testing::LrsServiceImpl::ABSL_GUARDED_BY ( lrs_mu_  )
private

◆ request_count()

size_t grpc::testing::LrsServiceImpl::request_count ( )
inline

Definition at line 799 of file xds_server.h.

◆ response_count()

size_t grpc::testing::LrsServiceImpl::response_count ( )
inline

Definition at line 803 of file xds_server.h.

◆ set_cluster_names()

void grpc::testing::LrsServiceImpl::set_cluster_names ( const std::set< std::string > &  cluster_names)
inline

Definition at line 811 of file xds_server.h.

◆ set_send_all_clusters()

void grpc::testing::LrsServiceImpl::set_send_all_clusters ( bool  send_all_clusters)
inline

Definition at line 808 of file xds_server.h.

◆ Shutdown()

void grpc::testing::LrsServiceImpl::Shutdown ( )

Definition at line 230 of file xds_server.cc.

◆ Start()

void grpc::testing::LrsServiceImpl::Start ( )

Definition at line 219 of file xds_server.cc.

◆ v2_rpc_service()

::envoy::service::load_stats::v2::LoadReportingService::Service* grpc::testing::LrsServiceImpl::v2_rpc_service ( )
inline

Definition at line 790 of file xds_server.h.

◆ v3_rpc_service()

::envoy::service::load_stats::v3::LoadReportingService::Service* grpc::testing::LrsServiceImpl::v3_rpc_service ( )
inline

Definition at line 795 of file xds_server.h.

◆ WaitForLoadReport()

std::vector< LrsServiceImpl::ClientStats > grpc::testing::LrsServiceImpl::WaitForLoadReport ( )

Definition at line 241 of file xds_server.cc.

Member Data Documentation

◆ client_load_reporting_interval_seconds_

const int grpc::testing::LrsServiceImpl::client_load_reporting_interval_seconds_
private

Definition at line 897 of file xds_server.h.

◆ cluster_names_

std::set<std::string> grpc::testing::LrsServiceImpl::cluster_names_
private

Definition at line 899 of file xds_server.h.

◆ load_report_mu_ [1/2]

void grpc::testing::LrsServiceImpl::load_report_mu_

Definition at line 815 of file xds_server.h.

◆ load_report_mu_ [2/2]

grpc_core::Mutex grpc::testing::LrsServiceImpl::load_report_mu_
private

Definition at line 905 of file xds_server.h.

◆ lrs_cv_

grpc_core::CondVar grpc::testing::LrsServiceImpl::lrs_cv_
private

Definition at line 901 of file xds_server.h.

◆ lrs_mu_

grpc_core::Mutex grpc::testing::LrsServiceImpl::lrs_mu_
private

Definition at line 902 of file xds_server.h.

◆ send_all_clusters_

bool grpc::testing::LrsServiceImpl::send_all_clusters_ = false
private

Definition at line 898 of file xds_server.h.

◆ v2_rpc_service_

RpcService<::envoy::service::load_stats::v2::LoadReportingService, ::envoy::service::load_stats::v2::LoadStatsRequest, ::envoy::service::load_stats::v2::LoadStatsResponse> grpc::testing::LrsServiceImpl::v2_rpc_service_
private

Definition at line 891 of file xds_server.h.

◆ v3_rpc_service_

RpcService<::envoy::service::load_stats::v3::LoadReportingService, ::envoy::service::load_stats::v3::LoadStatsRequest, ::envoy::service::load_stats::v3::LoadStatsResponse> grpc::testing::LrsServiceImpl::v3_rpc_service_
private

Definition at line 895 of file xds_server.h.


The documentation for this class was generated from the following files:


grpc
Author(s):
autogenerated on Fri May 16 2025 03:03:34