diff options
-rw-r--r-- | src/core/client_config/subchannel.h | 2 | ||||
-rw-r--r-- | src/core/client_config/subchannel_factory.h | 9 | ||||
-rw-r--r-- | src/core/surface/channel.h | 5 |
3 files changed, 8 insertions, 8 deletions
diff --git a/src/core/client_config/subchannel.h b/src/core/client_config/subchannel.h index 56109a2570..8befc28d51 100644 --- a/src/core/client_config/subchannel.h +++ b/src/core/client_config/subchannel.h @@ -60,11 +60,13 @@ void grpc_subchannel_unref(grpc_subchannel *channel); /** poll the current connectivity state of a channel */ grpc_connectivity_state grpc_subchannel_check_connectivity( grpc_subchannel *channel); + /** call notify when the connectivity state of a channel changes from *state. Updates *state with the new state of the channel */ void grpc_subchannel_notify_on_state_change(grpc_subchannel *channel, grpc_connectivity_state *state, grpc_iomgr_closure *notify); + /** continue processing of transport operation \a op */ void grpc_subchannel_continue_op(grpc_subchannel *channel, grpc_transport_op *op); diff --git a/src/core/client_config/subchannel_factory.h b/src/core/client_config/subchannel_factory.h index aae47cc384..854d2e2945 100644 --- a/src/core/client_config/subchannel_factory.h +++ b/src/core/client_config/subchannel_factory.h @@ -44,12 +44,6 @@ struct grpc_subchannel_factory { }; struct grpc_subchannel_args { - /* TODO(ctiller): consider making (parent, metadata_context) more opaque - - these details are not needed at this level of API */ - /** Parent channel element - passed from the master channel */ - grpc_channel_element *parent; - /** Metadata context for this channel - passed from the master channel */ - grpc_mdctx *metadata_context; /** Channel filters for this channel - wrapped factories will likely want to mutate this */ const grpc_channel_filter **filters; @@ -70,10 +64,9 @@ struct grpc_subchannel_factory_vtable { void grpc_subchannel_factory_ref(grpc_subchannel_factory *factory); void grpc_subchannel_factory_unref(grpc_subchannel_factory *factory); + /** Create a new grpc_subchannel */ void grpc_subchannel_factory_create_subchannel(grpc_subchannel_factory *factory, grpc_subchannel_args *args); -grpc_subchannel_factory *grpc_default_subchannel_factory(); - #endif /* GRPC_INTERNAL_CORE_CLIENT_CONFIG_SUBCHANNEL_FACTORY_H */ diff --git a/src/core/surface/channel.h b/src/core/surface/channel.h index 3c04676b43..534eea33dc 100644 --- a/src/core/surface/channel.h +++ b/src/core/surface/channel.h @@ -43,6 +43,11 @@ grpc_channel *grpc_channel_create_from_filters( /** Get a (borrowed) pointer to this channels underlying channel stack */ grpc_channel_stack *grpc_channel_get_channel_stack(grpc_channel *channel); +/** Get a (borrowed) pointer to this channels subchannel factory (if it exists) + */ +grpc_subchannel_factory *grpc_channel_get_subchannel_factory( + grpc_channel *channel); + /** Get a (borrowed) pointer to the channel wide metadata context */ grpc_mdctx *grpc_channel_get_metadata_context(grpc_channel *channel); |