Go to the documentation of this file.
19 #ifndef GRPC_CORE_LIB_TRANSPORT_CONNECTIVITY_STATE_H
20 #define GRPC_CORE_LIB_TRANSPORT_CONNECTIVITY_STATE_H
74 : combiner_(combiner) {}
93 : name_(name), state_(
state) {}
Definition: connectivity_state.h:89
~ConnectivityStateTracker()
Definition: connectivity_state.cc:99
void AddWatcher(grpc_connectivity_state initial_state, OrphanablePtr< ConnectivityStateWatcherInterface > watcher)
Definition: connectivity_state.cc:113
Definition: connectivity_state.h:60
Definition: combiner.h:33
Round Robin Policy.
Definition: backend_metric.cc:24
virtual void OnConnectivityStateChange(grpc_connectivity_state new_state)=0
TraceFlag grpc_connectivity_state_trace(false, "connectivity_state")
Definition: connectivity_state.h:35
void SetState(grpc_connectivity_state state, const char *reason)
Definition: connectivity_state.cc:146
ConnectivityStateTracker(const char *name, grpc_connectivity_state state=GRPC_CHANNEL_IDLE)
Definition: connectivity_state.h:91
grpc_connectivity_state
Connectivity state of a channel.
Definition: connectivity_state.h:27
virtual ~ConnectivityStateWatcherInterface()=default
void Orphan() override
Definition: connectivity_state.h:53
Definition: connectivity_state.h:46
Definition: connectivity_state.cc:58
grpc_connectivity_state state() const
Definition: connectivity_state.cc:170
@ GRPC_CHANNEL_IDLE
channel is idle
Definition: connectivity_state.h:29
virtual ~AsyncConnectivityStateWatcherInterface()=default
void Unref()
Definition: orphanable.h:107
Definition: orphanable.h:77
AsyncConnectivityStateWatcherInterface(Combiner *combiner=nullptr)
Definition: connectivity_state.h:73
void Notify(grpc_connectivity_state new_state) override final
Definition: connectivity_state.cc:90
virtual void Notify(grpc_connectivity_state new_state)=0
const char * ConnectivityStateName(grpc_connectivity_state state)
Definition: connectivity_state.cc:36
std::unique_ptr< T, Deleter > OrphanablePtr
Definition: orphanable.h:68
void RemoveWatcher(ConnectivityStateWatcherInterface *watcher)
Definition: connectivity_state.cc:137