/
var
/
www
/
qr4y.com
/
server
/
delivery
/
node_modules
/
@grpc
/
grpc-js
/
src
/
/var/www/qr4y.com/server/delivery/node_modules/@grpc/grpc-js/src
mkdir
upload
Name
Size
Mode
Actions
generated/
-
0755
rm
admin.ts
1345
0644
edit
dl
rm
backoff-timeout.ts
4719
0644
edit
dl
rm
call-credentials-filter.ts
3003
0644
edit
dl
rm
call-credentials.ts
6412
0644
edit
dl
rm
call-stream.ts
29012
0644
edit
dl
rm
call.ts
5444
0644
edit
dl
rm
channel-credentials.ts
8753
0644
edit
dl
rm
channel-options.ts
3249
0644
edit
dl
rm
channel.ts
30310
0644
edit
dl
rm
channelz.ts
26226
0644
edit
dl
rm
client-interceptors.ts
18100
0644
edit
dl
rm
client.ts
24233
0644
edit
dl
rm
compression-algorithms.ts
682
0644
edit
dl
rm
compression-filter.ts
10186
0644
edit
dl
rm
connectivity-state.ts
699
0644
edit
dl
rm
constants.ts
1651
0644
edit
dl
rm
deadline-filter.ts
3358
0644
edit
dl
rm
duration.ts
1096
0644
edit
dl
rm
events.ts
1108
0755
edit
dl
rm
experimental.ts
1317
0644
edit
dl
rm
filter-stack.ts
2687
0644
edit
dl
rm
filter.ts
1801
0644
edit
dl
rm
http_proxy.ts
8827
0644
edit
dl
rm
index.ts
7850
0644
edit
dl
rm
load-balancer-child-handler.ts
4863
0644
edit
dl
rm
load-balancer-outlier-detection.ts
22695
0644
edit
dl
rm
load-balancer-pick-first.ts
15910
0644
edit
dl
rm
load-balancer-round-robin.ts
7581
0644
edit
dl
rm
load-balancer.ts
7483
0644
edit
dl
rm
logging.ts
3407
0644
edit
dl
rm
make-client.ts
7201
0644
edit
dl
rm
max-message-size-filter.ts
3155
0644
edit
dl
rm
metadata.ts
9035
0644
edit
dl
rm
object-stream.ts
2214
0644
edit
dl
rm
picker.ts
4685
0644
edit
dl
rm
resolver-dns.ts
12970
0644
edit
dl
rm
resolver-ip.ts
3556
0644
edit
dl
rm
resolver-uds.ts
1611
0644
edit
dl
rm
resolver.ts
5802
0644
edit
dl
rm
resolving-load-balancer.ts
11443
0644
edit
dl
rm
server-call.ts
25825
0644
edit
dl
rm
server-credentials.ts
2822
0644
edit
dl
rm
server.ts
32396
0644
edit
dl
rm
service-config.ts
10544
0644
edit
dl
rm
status-builder.ts
1780
0755
edit
dl
rm
stream-decoder.ts
3501
0755
edit
dl
rm
subchannel-address.ts
2198
0644
edit
dl
rm
subchannel-interface.ts
2643
0644
edit
dl
rm
subchannel-pool.ts
5380
0644
edit
dl
rm
subchannel.ts
35173
0644
edit
dl
rm
tls-helpers.ts
1088
0644
edit
dl
rm
uri-parser.ts
2814
0644
edit
dl
rm
Edit:
/var/www/qr4y.com/server/delivery/node_modules/@grpc/grpc-js/src/picker.ts
(4685B)
/* * Copyright 2019 gRPC authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * */ import { Subchannel } from './subchannel'; import { StatusObject } from './call-stream'; import { Metadata } from './metadata'; import { Status } from './constants'; import { LoadBalancer } from './load-balancer'; import { FilterFactory, Filter } from './filter'; import { SubchannelInterface } from './subchannel-interface'; export enum PickResultType { COMPLETE, QUEUE, TRANSIENT_FAILURE, DROP, } export interface PickResult { pickResultType: PickResultType; /** * The subchannel to use as the transport for the call. Only meaningful if * `pickResultType` is COMPLETE. If null, indicates that the call should be * dropped. */ subchannel: SubchannelInterface | null; /** * The status object to end the call with. Populated if and only if * `pickResultType` is TRANSIENT_FAILURE. */ status: StatusObject | null; /** * Extra FilterFactory (can be multiple encapsulated in a FilterStackFactory) * provided by the load balancer to be used with the call. For technical * reasons filters from this factory will not see sendMetadata events. */ extraFilterFactories: FilterFactory<Filter>[]; onCallStarted: (() => void) | null; } export interface CompletePickResult extends PickResult { pickResultType: PickResultType.COMPLETE; subchannel: SubchannelInterface | null; status: null; extraFilterFactories: FilterFactory<Filter>[]; onCallStarted: (() => void) | null; } export interface QueuePickResult extends PickResult { pickResultType: PickResultType.QUEUE; subchannel: null; status: null; extraFilterFactories: []; onCallStarted: null; } export interface TransientFailurePickResult extends PickResult { pickResultType: PickResultType.TRANSIENT_FAILURE; subchannel: null; status: StatusObject; extraFilterFactories: []; onCallStarted: null; } export interface DropCallPickResult extends PickResult { pickResultType: PickResultType.DROP; subchannel: null; status: StatusObject; extraFilterFactories: []; onCallStarted: null; } export interface PickArgs { metadata: Metadata; extraPickInfo: { [key: string]: string }; } /** * A proxy object representing the momentary state of a load balancer. Picks * subchannels or returns other information based on that state. Should be * replaced every time the load balancer changes state. */ export interface Picker { pick(pickArgs: PickArgs): PickResult; } /** * A standard picker representing a load balancer in the TRANSIENT_FAILURE * state. Always responds to every pick request with an UNAVAILABLE status. */ export class UnavailablePicker implements Picker { private status: StatusObject; constructor(status?: StatusObject) { if (status !== undefined) { this.status = status; } else { this.status = { code: Status.UNAVAILABLE, details: 'No connection established', metadata: new Metadata(), }; } } pick(pickArgs: PickArgs): TransientFailurePickResult { return { pickResultType: PickResultType.TRANSIENT_FAILURE, subchannel: null, status: this.status, extraFilterFactories: [], onCallStarted: null, }; } } /** * A standard picker representing a load balancer in the IDLE or CONNECTING * state. Always responds to every pick request with a QUEUE pick result * indicating that the pick should be tried again with the next `Picker`. Also * reports back to the load balancer that a connection should be established * once any pick is attempted. */ export class QueuePicker { private calledExitIdle = false; // Constructed with a load balancer. Calls exitIdle on it the first time pick is called constructor(private loadBalancer: LoadBalancer) {} pick(pickArgs: PickArgs): QueuePickResult { if (!this.calledExitIdle) { process.nextTick(() => { this.loadBalancer.exitIdle(); }); this.calledExitIdle = true; } return { pickResultType: PickResultType.QUEUE, subchannel: null, status: null, extraFilterFactories: [], onCallStarted: null, }; } }
Save
cmd:
run