aboutsummaryrefslogtreecommitdiffstats
path: root/packages/website/ts/subproviders/redundant_rpc_subprovider.ts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/website/ts/subproviders/redundant_rpc_subprovider.ts')
-rw-r--r--packages/website/ts/subproviders/redundant_rpc_subprovider.ts32
1 files changed, 17 insertions, 15 deletions
diff --git a/packages/website/ts/subproviders/redundant_rpc_subprovider.ts b/packages/website/ts/subproviders/redundant_rpc_subprovider.ts
index a6c53ebd1..74675d910 100644
--- a/packages/website/ts/subproviders/redundant_rpc_subprovider.ts
+++ b/packages/website/ts/subproviders/redundant_rpc_subprovider.ts
@@ -1,11 +1,26 @@
+import promisify = require('es6-promisify');
import * as _ from 'lodash';
import {JSONRPCPayload} from 'ts/types';
-import promisify = require('es6-promisify');
-import Subprovider = require('web3-provider-engine/subproviders/subprovider');
import RpcSubprovider = require('web3-provider-engine/subproviders/rpc');
+import Subprovider = require('web3-provider-engine/subproviders/subprovider');
export class RedundantRPCSubprovider extends Subprovider {
private rpcs: RpcSubprovider[];
+ private static async firstSuccessAsync(
+ rpcs: RpcSubprovider[], payload: JSONRPCPayload, next: () => void,
+ ): Promise<any> {
+ let lastErr;
+ for (const rpc of rpcs) {
+ try {
+ const data = await promisify(rpc.handleRequest.bind(rpc))(payload, next);
+ return data;
+ } catch (err) {
+ lastErr = err;
+ continue;
+ }
+ }
+ throw Error(lastErr);
+ }
constructor(endpoints: string[]) {
super();
this.rpcs = _.map(endpoints, endpoint => {
@@ -25,17 +40,4 @@ export class RedundantRPCSubprovider extends Subprovider {
}
}
- private async firstSuccessAsync(rpcs: RpcSubprovider[], payload: JSONRPCPayload, next: () => void): Promise<any> {
- let lastErr;
- for (const rpc of rpcs) {
- try {
- const data = await promisify(rpc.handleRequest.bind(rpc))(payload, next);
- return data;
- } catch (err) {
- lastErr = err;
- continue;
- }
- }
- throw Error(lastErr);
- }
}