19 #ifndef GRPC_CORE_EXT_FILTERS_CLIENT_CHANNEL_XDS_XDS_API_H 20 #define GRPC_CORE_EXT_FILTERS_CLIENT_CHANNEL_XDS_XDS_API_H 68 return !(*
this == other);
71 void Add(LocalityMap::Locality locality);
73 const LocalityMap*
Find(uint32_t priority)
const;
76 return priority < priorities_.size();
80 bool empty()
const {
return priorities_.empty(); }
81 size_t size()
const {
return priorities_.size(); }
85 return static_cast<uint32_t
>(priorities_.size()) - 1;
100 return strcmp(
name.get(), other.
name.get()) == 0 &&
111 uint32_t parts_per_million) {
120 return drop_category_list_;
124 return drop_category_list_ == other.drop_category_list_;
127 return !(*
this == other);
154 const char* build_version);
164 const char* build_version);
Definition: xds_client_stats.h:93
Definition: xds_api.h:134
int64_t grpc_millis
Definition: exec_ctx.h:35
bool empty() const
Definition: xds_api.h:80
bool operator==(const Locality &other) const
Definition: xds_api.h:38
Definition: xds_api.h:140
grpc_error * XdsEdsResponseDecodeAndParse(const grpc_slice &encoded_response, EdsUpdate *update)
Definition: xds_api.cc:347
bool operator!=(const XdsPriorityListUpdate &other) const
Definition: xds_api.h:67
const uint32_t parts_per_million
Definition: xds_api.h:105
A grpc_slice s, if initialized, represents the byte range s.bytes[0..s.length-1]. ...
Definition: slice.h:60
grpc_slice XdsEdsRequestCreateAndEncode(const char *server_name, const XdsBootstrap::Node *node, const char *build_version)
Definition: xds_api.cc:202
Definition: error_internal.h:39
ServerAddressList serverlist
Definition: xds_api.h:51
grpc_error * XdsLrsResponseDecodeAndParse(const grpc_slice &encoded_response, grpc_core::UniquePtr< char > *cluster_name, grpc_millis *load_reporting_interval)
Definition: xds_api.cc:545
bool drop_all
Definition: xds_api.h:137
uint32_t LowestPriority() const
Definition: xds_api.h:84
const LocalityMap * Find(uint32_t priority) const
Definition: xds_api.cc:76
bool operator==(const XdsPriorityListUpdate &other) const
Definition: xds_api.cc:56
grpc_core::UniquePtr< char > name
Definition: xds_api.h:104
grpc_core::UniquePtr< char > eds_service_name
Definition: xds_api.h:143
bool ShouldDrop(const grpc_core::UniquePtr< char > **category_name) const
Definition: xds_api.cc:91
bool operator()(const Locality &lhs, const Locality &rhs) const
Definition: xds_api.h:45
Round Robin Policy.
Definition: backend_metric.cc:24
void Add(LocalityMap::Locality locality)
Definition: xds_api.cc:67
grpc_core::UniquePtr< char > lrs_load_reporting_server_name
Definition: xds_api.h:148
grpc_slice XdsLrsRequestCreateAndEncode(const char *server_name, const XdsBootstrap::Node *node, const char *build_version)
Definition: xds_api.cc:428
Definition: ref_counted_ptr.h:35
RefCountedPtr< XdsDropConfig > drop_config
Definition: xds_api.h:136
void AddCategory(grpc_core::UniquePtr< char > name, uint32_t parts_per_million)
Definition: xds_api.h:110
bool Contains(uint32_t priority) const
Definition: xds_api.h:75
const DropCategoryList & drop_category_list() const
Definition: xds_api.h:119
std::unique_ptr< T, DefaultDeleteChar > UniquePtr
Definition: memory.h:45
Definition: xds_bootstrap.h:47
std::map< RefCountedPtr< XdsLocalityName >, Locality, XdsLocalityName::Less > localities
Definition: xds_api.h:63
Definition: ref_counted.h:248
XdsPriorityListUpdate priority_list_update
Definition: xds_api.h:135
size_t size() const
Definition: xds_api.h:81
InlinedVector< DropCategory, 2 > DropCategoryList
Definition: xds_api.h:108
bool operator!=(const XdsDropConfig &other) const
Definition: xds_api.h:126
bool Contains(const RefCountedPtr< XdsLocalityName > &name) const
Definition: xds_api.h:56
bool operator==(const XdsDropConfig &other) const
Definition: xds_api.h:123
uint32_t lb_weight
Definition: xds_api.h:52
RefCountedPtr< XdsLocalityName > name
Definition: xds_api.h:50
Definition: xds_client_stats.h:38
uint32_t priority
Definition: xds_api.h:53
void emplace_back(Args &&... args)
Definition: inlined_vector.h:145
size_t size() const
Definition: xds_api.h:60
bool operator==(const DropCategory &other) const
Definition: xds_api.h:99