Classes | Public Types | Public Member Functions | Private Attributes | List of all members
grpc_core::XdsApi Class Reference

#include <xds_api.h>

Classes

class  AdsResponseParserInterface
 
struct  ClusterLoadReport
 
struct  ResourceMetadata
 

Public Types

using ClusterLoadReportMap = std::map< std::pair< std::string, std::string >, ClusterLoadReport >
 
using ResourceMetadataMap = std::map< std::string, const ResourceMetadata * >
 
using ResourceTypeMetadataMap = std::map< absl::string_view, ResourceMetadataMap >
 

Public Member Functions

std::string AssembleClientConfig (const ResourceTypeMetadataMap &resource_type_metadata_map)
 
grpc_slice CreateAdsRequest (const XdsBootstrap::XdsServer &server, absl::string_view type_url, absl::string_view version, absl::string_view nonce, const std::vector< std::string > &resource_names, grpc_error_handle error, bool populate_node)
 
grpc_slice CreateLrsInitialRequest (const XdsBootstrap::XdsServer &server)
 
grpc_slice CreateLrsRequest (ClusterLoadReportMap cluster_load_report_map)
 
absl::Status ParseAdsResponse (const XdsBootstrap::XdsServer &server, const grpc_slice &encoded_response, AdsResponseParserInterface *parser)
 
grpc_error_handle ParseLrsResponse (const grpc_slice &encoded_response, bool *send_all_clusters, std::set< std::string > *cluster_names, Duration *load_reporting_interval)
 
 XdsApi (XdsClient *client, TraceFlag *tracer, const XdsBootstrap::Node *node, const CertificateProviderStore::PluginDefinitionMap *map, upb::SymbolTable *symtab)
 

Private Attributes

const std::string build_version_
 
const CertificateProviderStore::PluginDefinitionMapcertificate_provider_definition_map_
 
XdsClientclient_
 
const XdsBootstrap::Nodenode_
 
upb::SymbolTablesymtab_
 
TraceFlagtracer_
 
const std::string user_agent_name_
 
const std::string user_agent_version_
 

Detailed Description

Definition at line 55 of file xds_api.h.

Member Typedef Documentation

◆ ClusterLoadReportMap

Definition at line 89 of file xds_api.h.

◆ ResourceMetadataMap

Definition at line 127 of file xds_api.h.

◆ ResourceTypeMetadataMap

Definition at line 129 of file xds_api.h.

Constructor & Destructor Documentation

◆ XdsApi()

grpc_core::XdsApi::XdsApi ( XdsClient client,
TraceFlag tracer,
const XdsBootstrap::Node node,
const CertificateProviderStore::PluginDefinitionMap map,
upb::SymbolTable symtab 
)

Definition at line 81 of file xds_api.cc.

Member Function Documentation

◆ AssembleClientConfig()

std::string grpc_core::XdsApi::AssembleClientConfig ( const ResourceTypeMetadataMap resource_type_metadata_map)

Definition at line 652 of file xds_api.cc.

◆ CreateAdsRequest()

grpc_slice grpc_core::XdsApi::CreateAdsRequest ( const XdsBootstrap::XdsServer server,
absl::string_view  type_url,
absl::string_view  version,
absl::string_view  nonce,
const std::vector< std::string > &  resource_names,
grpc_error_handle  error,
bool  populate_node 
)

Definition at line 272 of file xds_api.cc.

◆ CreateLrsInitialRequest()

grpc_slice grpc_core::XdsApi::CreateLrsInitialRequest ( const XdsBootstrap::XdsServer server)

Definition at line 452 of file xds_api.cc.

◆ CreateLrsRequest()

grpc_slice grpc_core::XdsApi::CreateLrsRequest ( ClusterLoadReportMap  cluster_load_report_map)

Definition at line 529 of file xds_api.cc.

◆ ParseAdsResponse()

absl::Status grpc_core::XdsApi::ParseAdsResponse ( const XdsBootstrap::XdsServer server,
const grpc_slice encoded_response,
AdsResponseParserInterface parser 
)

Definition at line 358 of file xds_api.cc.

◆ ParseLrsResponse()

grpc_error_handle grpc_core::XdsApi::ParseLrsResponse ( const grpc_slice encoded_response,
bool send_all_clusters,
std::set< std::string > *  cluster_names,
Duration load_reporting_interval 
)

Definition at line 600 of file xds_api.cc.

Member Data Documentation

◆ build_version_

const std::string grpc_core::XdsApi::build_version_
private

Definition at line 191 of file xds_api.h.

◆ certificate_provider_definition_map_

const CertificateProviderStore::PluginDefinitionMap* grpc_core::XdsApi::certificate_provider_definition_map_
private

Definition at line 189 of file xds_api.h.

◆ client_

XdsClient* grpc_core::XdsApi::client_
private

Definition at line 185 of file xds_api.h.

◆ node_

const XdsBootstrap::Node* grpc_core::XdsApi::node_
private

Definition at line 187 of file xds_api.h.

◆ symtab_

upb::SymbolTable* grpc_core::XdsApi::symtab_
private

Definition at line 190 of file xds_api.h.

◆ tracer_

TraceFlag* grpc_core::XdsApi::tracer_
private

Definition at line 186 of file xds_api.h.

◆ user_agent_name_

const std::string grpc_core::XdsApi::user_agent_name_
private

Definition at line 192 of file xds_api.h.

◆ user_agent_version_

const std::string grpc_core::XdsApi::user_agent_version_
private

Definition at line 193 of file xds_api.h.


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


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