19 #ifndef GRPC_CORE_EXT_FILTERS_CLIENT_CHANNEL_RESOLVER_H
20 #define GRPC_CORE_EXT_FILTERS_CLIENT_CHANNEL_RESOLVER_H
140 std::unique_ptr<ResultHandler> result_handler_;
Definition: combiner.h:33
Definition: orphanable.h:77
void Unref()
Definition: orphanable.h:107
Definition: ref_counted_ptr.h:35
A proxy object used by the resolver to return results to the client channel.
Definition: resolver.h:70
virtual void ReturnResult(Result result)=0
Returns a result to the channel.
virtual void ReturnError(grpc_error *error)=0
Returns a transient error to the channel.
virtual ~ResultHandler()
Definition: resolver.h:72
Interface for name resolution.
Definition: resolver.h:49
Combiner * combiner() const
Definition: resolver.h:135
virtual void ResetBackoffLocked()
Resets the re-resolution backoff, if any.
Definition: resolver.h:116
void Orphan() override
Definition: resolver.h:119
ResultHandler * result_handler() const
Definition: resolver.h:137
virtual void StartLocked()=0
Starts resolving.
virtual ~Resolver()
Definition: resolver.cc:39
virtual void ShutdownLocked()=0
Shuts down the resolver.
virtual void RequestReresolutionLocked()
Asks the resolver to obtain an updated resolver result, if applicable.
Definition: resolver.h:108
Resolver(const Resolver &)=delete
Resolver & operator=(const Resolver &)=delete
#define GRPC_ERROR_NONE
The following "special" errors can be propagated without allocating memory.
Definition: error.h:125
Round Robin Policy.
Definition: backend_metric.cc:24
grpc_core::DebugOnlyTraceFlag grpc_trace_resolver_refcount
An array of arguments that can be passed around.
Definition: grpc_types.h:132
Results returned by the resolver.
Definition: resolver.h:52
~Result()
Definition: resolver.cc:45
Result & operator=(const Result &other)
Definition: resolver.cc:66
grpc_error * service_config_error
Definition: resolver.h:55
ServerAddressList addresses
Definition: resolver.h:53
const grpc_channel_args * args
Definition: resolver.h:56
RefCountedPtr< ServiceConfig > service_config
Definition: resolver.h:54
Definition: error_internal.h:39