Package io.grpc.rls
Class ChildLoadBalancerHelper
java.lang.Object
io.grpc.LoadBalancer.Helper
io.grpc.util.ForwardingLoadBalancerHelper
io.grpc.rls.ChildLoadBalancerHelper
A delegating
LoadBalancer.Helper
for the child load blanacer. The child load-balancer notifies the
higher level load-blancer with aggregated status instead of each individual child load-blanacer's
state.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static final class
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final LoadBalancer.SubchannelPicker
private final LoadBalancer.Helper
private final SubchannelStateManager
private final String
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprivate
ChildLoadBalancerHelper
(String target, LoadBalancer.Helper rlsHelper, SubchannelStateManager subchannelStateManager, LoadBalancer.SubchannelPicker picker) -
Method Summary
Modifier and TypeMethodDescriptionprotected LoadBalancer.Helper
delegate()
Returns the underlying helper.void
updateBalancingState
(ConnectivityState newState, LoadBalancer.SubchannelPicker unused) Updates balancing state from one or more subchannels tracked in theSubchannelStateManager
.Methods inherited from class io.grpc.util.ForwardingLoadBalancerHelper
createOobChannel, createOobChannel, createResolvingOobChannel, createResolvingOobChannelBuilder, createResolvingOobChannelBuilder, createSubchannel, getAuthority, getChannelCredentials, getChannelLogger, getChannelTarget, getMetricRecorder, getNameResolverArgs, getNameResolverRegistry, getScheduledExecutorService, getSynchronizationContext, getUnsafeChannelCredentials, ignoreRefreshNameResolutionCheck, refreshNameResolution, toString, updateOobChannelAddresses, updateOobChannelAddresses
-
Field Details
-
target
-
rlsHelper
-
subchannelStateManager
-
picker
-
-
Constructor Details
-
ChildLoadBalancerHelper
private ChildLoadBalancerHelper(String target, LoadBalancer.Helper rlsHelper, SubchannelStateManager subchannelStateManager, LoadBalancer.SubchannelPicker picker)
-
-
Method Details
-
delegate
Description copied from class:ForwardingLoadBalancerHelper
Returns the underlying helper.- Specified by:
delegate
in classForwardingLoadBalancerHelper
-
updateBalancingState
public void updateBalancingState(@Nonnull ConnectivityState newState, @Nonnull LoadBalancer.SubchannelPicker unused) Updates balancing state from one or more subchannels tracked in theSubchannelStateManager
. The passed picker will be ignored, instead the picker which governs many subchannels/pickers will be reported to the parent load-balancer.- Overrides:
updateBalancingState
in classForwardingLoadBalancerHelper
-