19 #ifndef GRPC_CORE_EXT_FILTERS_CLIENT_CHANNEL_RESOLVER_FACTORY_H
20 #define GRPC_CORE_EXT_FILTERS_CLIENT_CHANNEL_RESOLVER_FACTORY_H
24 #include "absl/strings/strip.h"
61 return std::string(absl::StripPrefix(uri.
path(),
"/"));
66 virtual const char*
scheme()
const = 0;
Definition: resolver_factory.h:49
virtual bool IsValidUri(const URI &uri) const =0
Returns a bool indicating whether the input uri is valid to create a resolver.
virtual ~ResolverFactory()
Definition: resolver_factory.h:68
virtual std::string GetDefaultAuthority(const URI &uri) const
Returns a string representing the default authority to use for this scheme.
Definition: resolver_factory.h:60
virtual OrphanablePtr< Resolver > CreateResolver(ResolverArgs args) const =0
Returns a new resolver instance.
virtual const char * scheme() const =0
Returns the URI scheme that this factory implements.
Definition: uri_parser.h:35
const std::string & path() const
Definition: uri_parser.h:61
Round Robin Policy.
Definition: backend_metric.cc:26
std::unique_ptr< T, Deleter > OrphanablePtr
Definition: orphanable.h:67
struct grpc_pollset_set grpc_pollset_set
Definition: pollset_set.h:31
An array of arguments that can be passed around.
Definition: grpc_types.h:132
Definition: resolver_factory.h:36
const grpc_channel_args * args
Channel args to be included in resolver results.
Definition: resolver_factory.h:40
std::shared_ptr< WorkSerializer > work_serializer
The work_serializer under which all resolver calls will be run.
Definition: resolver_factory.h:44
grpc_pollset_set * pollset_set
Used to drive I/O in the name resolution process.
Definition: resolver_factory.h:42
URI uri
The parsed URI to resolve.
Definition: resolver_factory.h:38
std::unique_ptr< Resolver::ResultHandler > result_handler
The result handler to be used by the resolver.
Definition: resolver_factory.h:46