Add a callback that can intercept channel creation.
This can be used for advanced configuration like setting the netty event loop. The
callback will be invoked with a fully configured channel builder, which the callback can
augment or replace.
By setting a channelPrimer, the ChannelPool created by the provider will be refreshing
ChannelPool. channelPrimer will be invoked periodically when the channels are refreshed
This is public only for technical reasons, for advanced usage.
Sets the Executor for this TransportChannelProvider.
This is optional; if it is not provided, needsExecutor() will return true, meaning that an
Executor must be provided when getChannel is called on the constructed
TransportChannelProvider instance. Note: GrpcTransportProvider will automatically provide its
own Executor in this circumstance when it calls getChannel.
Sets the HeaderProvider for this TransportChannelProvider.
This is optional; if it is not provided, needsHeaders() will return true, meaning that
headers must be provided when getChannel is called on the constructed
TransportChannelProvider instance.
Sets the GrpcInterceptorProvider for this TransportChannelProvider.
The provider will be called once for each underlying gRPC ManagedChannel that is created.
It is recommended to return a new list of new interceptors on each call so that interceptors
are not shared among channels, but this is not required.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-15 UTC."],[[["\u003cp\u003eThe latest version of the \u003ccode\u003eInstantiatingGrpcChannelProvider.Builder\u003c/code\u003e is 2.63.1, with numerous previous versions available, ranging back to 2.7.1.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eInstantiatingGrpcChannelProvider.Builder\u003c/code\u003e class provides methods for configuring and building \u003ccode\u003eInstantiatingGrpcChannelProvider\u003c/code\u003e instances, such as setting the endpoint, credentials, and keep-alive settings.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003esetChannelPoolSettings\u003c/code\u003e method should be used in place of the deprecated \u003ccode\u003egetPoolSize\u003c/code\u003e, \u003ccode\u003esetPoolSize\u003c/code\u003e, \u003ccode\u003esetChannelsPerCpu\u003c/code\u003e methods when configuring channel pool settings.\u003c/p\u003e\n"],["\u003cp\u003eThe class supports direct path configuration, including the ability to set a service config and determine if non-default service accounts are allowed.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003ebuild()\u003c/code\u003e method is used to finalize the configuration and create an \u003ccode\u003eInstantiatingGrpcChannelProvider\u003c/code\u003e instance, returning an object of the type \u003ccode\u003eInstantiatingGrpcChannelProvider\u003c/code\u003e.\u003c/p\u003e\n"]]],[],null,[]]