aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/lib/channel/channelz.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/lib/channel/channelz.h')
-rw-r--r--src/core/lib/channel/channelz.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/core/lib/channel/channelz.h b/src/core/lib/channel/channelz.h
index 5edd90c813..9ae2e56ec8 100644
--- a/src/core/lib/channel/channelz.h
+++ b/src/core/lib/channel/channelz.h
@@ -74,6 +74,12 @@ class BaseNode : public RefCounted<BaseNode> {
// All children must implement this function.
virtual grpc_json* RenderJson() GRPC_ABSTRACT;
+ // Fat interface for functionality that will only ever be called on Servers.
+ // All other channelz entities will assert false.
+ virtual char* RenderServerSockets(intptr_t start_socket_id) {
+ GPR_ASSERT(false);
+ }
+
// Renders the json and returns allocated string that must be freed by the
// caller.
char* RenderJsonString();
@@ -184,6 +190,10 @@ class ServerNode : public BaseNode {
grpc_json* RenderJson() override;
+ // Server overrides this functionality to populate the JSON with
+ // the sockets it owns.
+ char* RenderServerSockets(intptr_t start_socket_id) override;
+
// proxy methods to composed classes.
void AddTraceEvent(ChannelTrace::Severity severity, grpc_slice data) {
trace_.AddTraceEvent(severity, data);