diff --git a/BUILD b/BUILD
index c6438a08032..b3c97ca5e2a 100644
--- a/BUILD
+++ b/BUILD
@@ -1456,7 +1456,6 @@ grpc_cc_library(
deps = [
"grpc_base",
"grpc_client_channel",
- "grpc_resolver_xds_header",
"grpc_xds_api_header",
],
)
@@ -1745,14 +1744,6 @@ grpc_cc_library(
],
)
-grpc_cc_library(
- name = "grpc_resolver_xds_header",
- hdrs = [
- "src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h",
- ],
- language = "c++",
-)
-
grpc_cc_library(
name = "grpc_resolver_xds",
srcs = [
diff --git a/BUILD.gn b/BUILD.gn
index 8defd9122d4..035d6bddde6 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -281,7 +281,6 @@ config("grpc_config") {
"src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h",
"src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc",
"src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc",
- "src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h",
"src/core/ext/filters/client_channel/resolver_factory.h",
"src/core/ext/filters/client_channel/resolver_registry.cc",
"src/core/ext/filters/client_channel/resolver_registry.h",
diff --git a/build_autogenerated.yaml b/build_autogenerated.yaml
index 7d96fb61766..0a8df78a8ca 100644
--- a/build_autogenerated.yaml
+++ b/build_autogenerated.yaml
@@ -405,7 +405,6 @@ libs:
- src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h
- src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.h
- src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h
- - src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h
- src/core/ext/filters/client_channel/resolver_factory.h
- src/core/ext/filters/client_channel/resolver_registry.h
- src/core/ext/filters/client_channel/resolver_result_parsing.h
@@ -1334,7 +1333,6 @@ libs:
- src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h
- src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.h
- src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h
- - src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h
- src/core/ext/filters/client_channel/resolver_factory.h
- src/core/ext/filters/client_channel/resolver_registry.h
- src/core/ext/filters/client_channel/resolver_result_parsing.h
diff --git a/gRPC-C++.podspec b/gRPC-C++.podspec
index 2f06645b1eb..a0844acf9a9 100644
--- a/gRPC-C++.podspec
+++ b/gRPC-C++.podspec
@@ -248,7 +248,6 @@ Pod::Spec.new do |s|
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h',
'src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.h',
'src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h',
- 'src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h',
'src/core/ext/filters/client_channel/resolver_factory.h',
'src/core/ext/filters/client_channel/resolver_registry.h',
'src/core/ext/filters/client_channel/resolver_result_parsing.h',
@@ -736,7 +735,6 @@ Pod::Spec.new do |s|
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h',
'src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.h',
'src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h',
- 'src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h',
'src/core/ext/filters/client_channel/resolver_factory.h',
'src/core/ext/filters/client_channel/resolver_registry.h',
'src/core/ext/filters/client_channel/resolver_result_parsing.h',
diff --git a/gRPC-Core.podspec b/gRPC-Core.podspec
index 515fa312684..ac05dfec3e2 100644
--- a/gRPC-Core.podspec
+++ b/gRPC-Core.podspec
@@ -265,7 +265,6 @@ Pod::Spec.new do |s|
'src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h',
'src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc',
'src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc',
- 'src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h',
'src/core/ext/filters/client_channel/resolver_factory.h',
'src/core/ext/filters/client_channel/resolver_registry.cc',
'src/core/ext/filters/client_channel/resolver_registry.h',
@@ -1132,7 +1131,6 @@ Pod::Spec.new do |s|
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h',
'src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.h',
'src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h',
- 'src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h',
'src/core/ext/filters/client_channel/resolver_factory.h',
'src/core/ext/filters/client_channel/resolver_registry.h',
'src/core/ext/filters/client_channel/resolver_result_parsing.h',
diff --git a/grpc.gemspec b/grpc.gemspec
index 81ea3643abd..5b84d4ecf26 100644
--- a/grpc.gemspec
+++ b/grpc.gemspec
@@ -187,7 +187,6 @@ Gem::Specification.new do |s|
s.files += %w( src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h )
s.files += %w( src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc )
s.files += %w( src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc )
- s.files += %w( src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h )
s.files += %w( src/core/ext/filters/client_channel/resolver_factory.h )
s.files += %w( src/core/ext/filters/client_channel/resolver_registry.cc )
s.files += %w( src/core/ext/filters/client_channel/resolver_registry.h )
diff --git a/package.xml b/package.xml
index bd886a4f58e..36399edc3e1 100644
--- a/package.xml
+++ b/package.xml
@@ -167,7 +167,6 @@
-
diff --git a/src/core/ext/filters/client_channel/lb_policy/xds/xds_routing.cc b/src/core/ext/filters/client_channel/lb_policy/xds/xds_routing.cc
index 8df6befc033..2adc7cd9551 100644
--- a/src/core/ext/filters/client_channel/lb_policy/xds/xds_routing.cc
+++ b/src/core/ext/filters/client_channel/lb_policy/xds/xds_routing.cc
@@ -35,7 +35,6 @@
#include "src/core/ext/filters/client_channel/lb_policy/child_policy_handler.h"
#include "src/core/ext/filters/client_channel/lb_policy_factory.h"
#include "src/core/ext/filters/client_channel/lb_policy_registry.h"
-#include "src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h"
#include "src/core/ext/filters/client_channel/xds/xds_api.h"
#include "src/core/lib/channel/channel_args.h"
#include "src/core/lib/gpr/string.h"
@@ -119,8 +118,8 @@ class XdsRoutingLb : public LoadBalancingPolicy {
// Maintains an ordered xds route table as provided by RDS response.
using RouteTable = std::vector;
- explicit RoutePicker(RouteTable route_table,
- RefCountedPtr config)
+ RoutePicker(RouteTable route_table,
+ RefCountedPtr config)
: route_table_(std::move(route_table)), config_(std::move(config)) {}
PickResult Pick(PickArgs args) override;
@@ -314,11 +313,11 @@ bool HeaderMatchHelper(
}
bool HeadersMatch(
- LoadBalancingPolicy::PickArgs args,
const std::vector&
- header_matchers) {
+ header_matchers,
+ LoadBalancingPolicy::MetadataInterface* initial_metadata) {
for (const auto& header_matcher : header_matchers) {
- bool match = HeaderMatchHelper(header_matcher, args.initial_metadata);
+ bool match = HeaderMatchHelper(header_matcher, initial_metadata);
if (header_matcher.invert_match) match = !match;
if (!match) return false;
}
@@ -336,11 +335,14 @@ XdsRoutingLb::PickResult XdsRoutingLb::RoutePicker::Pick(PickArgs args) {
// Path matching.
if (!PathMatch(args.path, route.matchers->path_matcher)) continue;
// Header Matching.
- if (!HeadersMatch(args, route.matchers->header_matchers)) continue;
+ if (!HeadersMatch(route.matchers->header_matchers, args.initial_metadata)) {
+ continue;
+ }
// Match fraction check
if (route.matchers->fraction_per_million.has_value() &&
- !UnderFraction(route.matchers->fraction_per_million.value()))
+ !UnderFraction(route.matchers->fraction_per_million.value())) {
continue;
+ }
// Found a match
return route.picker->Pick(args);
}
diff --git a/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc b/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc
index f702bf1f541..3c7685579df 100644
--- a/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc
+++ b/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc
@@ -28,8 +28,6 @@ namespace grpc_core {
TraceFlag grpc_xds_resolver_trace(false, "xds_resolver");
-const char* kCallAttributeDeadline = "deadline";
-
namespace {
//
@@ -86,15 +84,7 @@ class XdsResolver : public Resolver {
class XdsConfigSelector : public ConfigSelector {
public:
CallConfig GetCallConfig(GetCallConfigArgs args) override {
- char* deadline_str = static_cast(
- args.arena->Alloc(GRPC_HTTP2_TIMEOUT_ENCODE_MIN_BUFSIZE));
- grpc_http2_encode_timeout(
- args.initial_metadata->deadline - grpc_core::ExecCtx::Get()->Now(),
- deadline_str);
- CallConfig call_config;
- call_config.call_attributes[kCallAttributeDeadline] =
- absl::string_view(deadline_str);
- return call_config;
+ return CallConfig();
}
};
diff --git a/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h b/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h
deleted file mode 100644
index 932acd02282..00000000000
--- a/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h
+++ /dev/null
@@ -1,28 +0,0 @@
-//
-// 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_RESOLVER_XDS_XDS_RESOLVER_H
-#define GRPC_CORE_EXT_FILTERS_CLIENT_CHANNEL_RESOLVER_XDS_XDS_RESOLVER_H
-
-#include
-
-namespace grpc_core {
-
-extern const char* kCallAttributeDeadline;
-
-} // namespace grpc_core
-
-#endif /* GRPC_CORE_EXT_FILTERS_CLIENT_CHANNEL_RESOLVER_XDS_XDS_RESOLVER_H */
diff --git a/tools/doxygen/Doxyfile.c++.internal b/tools/doxygen/Doxyfile.c++.internal
index b7997f9c8ea..42ad53a6b6a 100644
--- a/tools/doxygen/Doxyfile.c++.internal
+++ b/tools/doxygen/Doxyfile.c++.internal
@@ -1144,7 +1144,6 @@ src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc \
src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h \
src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc \
src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc \
-src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h \
src/core/ext/filters/client_channel/resolver_factory.h \
src/core/ext/filters/client_channel/resolver_registry.cc \
src/core/ext/filters/client_channel/resolver_registry.h \
diff --git a/tools/doxygen/Doxyfile.core.internal b/tools/doxygen/Doxyfile.core.internal
index 1edb9e7b663..d33ceb61599 100644
--- a/tools/doxygen/Doxyfile.core.internal
+++ b/tools/doxygen/Doxyfile.core.internal
@@ -951,7 +951,6 @@ src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h \
src/core/ext/filters/client_channel/resolver/sockaddr/README.md \
src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc \
src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc \
-src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h \
src/core/ext/filters/client_channel/resolver_factory.h \
src/core/ext/filters/client_channel/resolver_registry.cc \
src/core/ext/filters/client_channel/resolver_registry.h \