1 | import { ChannelControlHelper, LoadBalancer, LoadBalancingConfig } from './load-balancer';
|
2 | import { ServiceConfig } from './service-config';
|
3 | import { ConfigSelector } from './resolver';
|
4 | import { StatusObject } from './call-interface';
|
5 | import { SubchannelAddress } from './subchannel-address';
|
6 | import { GrpcUri } from './uri-parser';
|
7 | import { ChannelOptions } from './channel-options';
|
8 | export interface ResolutionCallback {
|
9 | (serviceConfig: ServiceConfig, configSelector: ConfigSelector): void;
|
10 | }
|
11 | export interface ResolutionFailureCallback {
|
12 | (status: StatusObject): void;
|
13 | }
|
14 | export declare class ResolvingLoadBalancer implements LoadBalancer {
|
15 | private readonly target;
|
16 | private readonly channelControlHelper;
|
17 | private readonly onSuccessfulResolution;
|
18 | private readonly onFailedResolution;
|
19 | |
20 |
|
21 |
|
22 | private readonly innerResolver;
|
23 | private readonly childLoadBalancer;
|
24 | private latestChildState;
|
25 | private latestChildPicker;
|
26 | |
27 |
|
28 |
|
29 | private currentState;
|
30 | private readonly defaultServiceConfig;
|
31 | |
32 |
|
33 |
|
34 |
|
35 |
|
36 | private previousServiceConfig;
|
37 | |
38 |
|
39 |
|
40 | private readonly backoffTimeout;
|
41 | |
42 |
|
43 |
|
44 |
|
45 | private continueResolving;
|
46 | |
47 |
|
48 |
|
49 |
|
50 |
|
51 |
|
52 |
|
53 |
|
54 |
|
55 |
|
56 |
|
57 |
|
58 | constructor(target: GrpcUri, channelControlHelper: ChannelControlHelper, channelOptions: ChannelOptions, onSuccessfulResolution: ResolutionCallback, onFailedResolution: ResolutionFailureCallback);
|
59 | private updateResolution;
|
60 | private updateState;
|
61 | private handleResolutionFailure;
|
62 | exitIdle(): void;
|
63 | updateAddressList(addressList: SubchannelAddress[], lbConfig: LoadBalancingConfig | null): never;
|
64 | resetBackoff(): void;
|
65 | destroy(): void;
|
66 | getTypeName(): string;
|
67 | }
|