Skip to content

Commit 3aad5b0

Browse files
author
awstools
committed
feat(client-s3-control): Updates internal logic for constructing API endpoints. We have added rule-based endpoints and internal model parameters.
1 parent 437f3e3 commit 3aad5b0

File tree

68 files changed

+9696
-611
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

68 files changed

+9696
-611
lines changed

clients/client-s3-control/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
"@aws-sdk/md5-js": "*",
3333
"@aws-sdk/middleware-apply-body-checksum": "*",
3434
"@aws-sdk/middleware-content-length": "*",
35+
"@aws-sdk/middleware-endpoint": "*",
3536
"@aws-sdk/middleware-host-header": "*",
3637
"@aws-sdk/middleware-logger": "*",
3738
"@aws-sdk/middleware-recursion-detection": "*",

clients/client-s3-control/src/S3ControlClient.ts

Lines changed: 25 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,7 @@
11
// smithy-typescript generated code
2-
import {
3-
EndpointsInputConfig,
4-
EndpointsResolvedConfig,
5-
RegionInputConfig,
6-
RegionResolvedConfig,
7-
resolveEndpointsConfig,
8-
resolveRegionConfig,
9-
} from "@aws-sdk/config-resolver";
2+
import { RegionInputConfig, RegionResolvedConfig, resolveRegionConfig } from "@aws-sdk/config-resolver";
103
import { getContentLengthPlugin } from "@aws-sdk/middleware-content-length";
4+
import { EndpointInputConfig, EndpointResolvedConfig, resolveEndpointConfig } from "@aws-sdk/middleware-endpoint";
115
import {
126
getHostHeaderPlugin,
137
HostHeaderInputConfig,
@@ -46,13 +40,13 @@ import {
4640
Credentials as __Credentials,
4741
Decoder as __Decoder,
4842
Encoder as __Encoder,
43+
EndpointV2 as __EndpointV2,
4944
Hash as __Hash,
5045
HashConstructor as __HashConstructor,
5146
HttpHandlerOptions as __HttpHandlerOptions,
5247
Logger as __Logger,
5348
Provider as __Provider,
5449
Provider,
55-
RegionInfoProvider,
5650
StreamCollector as __StreamCollector,
5751
StreamHasher as __StreamHasher,
5852
UrlParser as __UrlParser,
@@ -236,6 +230,12 @@ import {
236230
} from "./commands/PutStorageLensConfigurationTaggingCommand";
237231
import { UpdateJobPriorityCommandInput, UpdateJobPriorityCommandOutput } from "./commands/UpdateJobPriorityCommand";
238232
import { UpdateJobStatusCommandInput, UpdateJobStatusCommandOutput } from "./commands/UpdateJobStatusCommand";
233+
import {
234+
ClientInputEndpointParameters,
235+
ClientResolvedEndpointParameters,
236+
EndpointParameters,
237+
resolveClientEndpointParameters,
238+
} from "./endpoint/EndpointParameters";
239239
import { getRuntimeConfig as __getRuntimeConfig } from "./runtimeConfig";
240240

241241
export type ServiceInputTypes =
@@ -469,12 +469,6 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__
469469
*/
470470
credentialDefaultProvider?: (input: any) => __Provider<__Credentials>;
471471

472-
/**
473-
* Fetch related hostname, signing name or signing region with given region.
474-
* @internal
475-
*/
476-
regionInfoProvider?: RegionInfoProvider;
477-
478472
/**
479473
* The provider populating default tracking information to be sent with `user-agent`, `x-amz-user-agent` header
480474
* @internal
@@ -504,12 +498,13 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__
504498
type S3ControlClientConfigType = Partial<__SmithyConfiguration<__HttpHandlerOptions>> &
505499
ClientDefaults &
506500
RegionInputConfig &
507-
EndpointsInputConfig &
501+
EndpointInputConfig<EndpointParameters> &
508502
RetryInputConfig &
509503
HostHeaderInputConfig &
510504
AwsAuthInputConfig &
511505
S3ControlInputConfig &
512-
UserAgentInputConfig;
506+
UserAgentInputConfig &
507+
ClientInputEndpointParameters;
513508
/**
514509
* The configuration interface of S3ControlClient class constructor that set the region, credentials and other options.
515510
*/
@@ -518,12 +513,13 @@ export interface S3ControlClientConfig extends S3ControlClientConfigType {}
518513
type S3ControlClientResolvedConfigType = __SmithyResolvedConfiguration<__HttpHandlerOptions> &
519514
Required<ClientDefaults> &
520515
RegionResolvedConfig &
521-
EndpointsResolvedConfig &
516+
EndpointResolvedConfig<EndpointParameters> &
522517
RetryResolvedConfig &
523518
HostHeaderResolvedConfig &
524519
AwsAuthResolvedConfig &
525520
S3ControlResolvedConfig &
526-
UserAgentResolvedConfig;
521+
UserAgentResolvedConfig &
522+
ClientResolvedEndpointParameters;
527523
/**
528524
* The resolved configuration interface of S3ControlClient class. This is resolved and normalized from the {@link S3ControlClientConfig | constructor configuration interface}.
529525
*/
@@ -545,15 +541,16 @@ export class S3ControlClient extends __Client<
545541

546542
constructor(configuration: S3ControlClientConfig) {
547543
const _config_0 = __getRuntimeConfig(configuration);
548-
const _config_1 = resolveRegionConfig(_config_0);
549-
const _config_2 = resolveEndpointsConfig(_config_1);
550-
const _config_3 = resolveRetryConfig(_config_2);
551-
const _config_4 = resolveHostHeaderConfig(_config_3);
552-
const _config_5 = resolveAwsAuthConfig(_config_4);
553-
const _config_6 = resolveS3ControlConfig(_config_5);
554-
const _config_7 = resolveUserAgentConfig(_config_6);
555-
super(_config_7);
556-
this.config = _config_7;
544+
const _config_1 = resolveClientEndpointParameters(_config_0);
545+
const _config_2 = resolveRegionConfig(_config_1);
546+
const _config_3 = resolveEndpointConfig(_config_2);
547+
const _config_4 = resolveRetryConfig(_config_3);
548+
const _config_5 = resolveHostHeaderConfig(_config_4);
549+
const _config_6 = resolveAwsAuthConfig(_config_5);
550+
const _config_7 = resolveS3ControlConfig(_config_6);
551+
const _config_8 = resolveUserAgentConfig(_config_7);
552+
super(_config_8);
553+
this.config = _config_8;
557554
this.middlewareStack.use(getRetryPlugin(this.config));
558555
this.middlewareStack.use(getContentLengthPlugin(this.config));
559556
this.middlewareStack.use(getHostHeaderPlugin(this.config));

clients/client-s3-control/src/commands/CreateAccessPointCommand.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
// smithy-typescript generated code
2+
import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
23
import { getProcessArnablesPlugin } from "@aws-sdk/middleware-sdk-s3-control";
34
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
45
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
@@ -83,6 +84,18 @@ export class CreateAccessPointCommand extends $Command<
8384
// Start section: command_properties
8485
// End section: command_properties
8586

87+
public static getEndpointParameterInstructions(): EndpointParameterInstructions {
88+
return {
89+
AccountId: { type: "contextParams", name: "AccountId" },
90+
Bucket: { type: "contextParams", name: "Bucket" },
91+
UseArnRegion: { type: "clientContextParams", name: "useArnRegion" },
92+
UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
93+
Endpoint: { type: "builtInParams", name: "endpoint" },
94+
Region: { type: "builtInParams", name: "region" },
95+
UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
96+
};
97+
}
98+
8699
constructor(readonly input: CreateAccessPointCommandInput) {
87100
// Start section: command_constructor
88101
super();
@@ -98,6 +111,9 @@ export class CreateAccessPointCommand extends $Command<
98111
options?: __HttpHandlerOptions
99112
): Handler<CreateAccessPointCommandInput, CreateAccessPointCommandOutput> {
100113
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
114+
this.middlewareStack.use(
115+
getEndpointPlugin(configuration, CreateAccessPointCommand.getEndpointParameterInstructions())
116+
);
101117
this.middlewareStack.use(getProcessArnablesPlugin(configuration));
102118

103119
const stack = clientStack.concat(this.middlewareStack);

clients/client-s3-control/src/commands/CreateAccessPointForObjectLambdaCommand.ts

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
// smithy-typescript generated code
2+
import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
23
import { getProcessArnablesPlugin } from "@aws-sdk/middleware-sdk-s3-control";
34
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
45
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
@@ -75,6 +76,17 @@ export class CreateAccessPointForObjectLambdaCommand extends $Command<
7576
// Start section: command_properties
7677
// End section: command_properties
7778

79+
public static getEndpointParameterInstructions(): EndpointParameterInstructions {
80+
return {
81+
AccountId: { type: "contextParams", name: "AccountId" },
82+
UseArnRegion: { type: "clientContextParams", name: "useArnRegion" },
83+
UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
84+
Endpoint: { type: "builtInParams", name: "endpoint" },
85+
Region: { type: "builtInParams", name: "region" },
86+
UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
87+
};
88+
}
89+
7890
constructor(readonly input: CreateAccessPointForObjectLambdaCommandInput) {
7991
// Start section: command_constructor
8092
super();
@@ -90,6 +102,9 @@ export class CreateAccessPointForObjectLambdaCommand extends $Command<
90102
options?: __HttpHandlerOptions
91103
): Handler<CreateAccessPointForObjectLambdaCommandInput, CreateAccessPointForObjectLambdaCommandOutput> {
92104
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
105+
this.middlewareStack.use(
106+
getEndpointPlugin(configuration, CreateAccessPointForObjectLambdaCommand.getEndpointParameterInstructions())
107+
);
93108
this.middlewareStack.use(getProcessArnablesPlugin(configuration));
94109

95110
const stack = clientStack.concat(this.middlewareStack);

clients/client-s3-control/src/commands/CreateBucketCommand.ts

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
// smithy-typescript generated code
22
import { getApplyMd5BodyChecksumPlugin } from "@aws-sdk/middleware-apply-body-checksum";
3+
import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
34
import { getRedirectFromPostIdPlugin } from "@aws-sdk/middleware-sdk-s3-control";
45
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
56
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
@@ -108,6 +109,18 @@ export class CreateBucketCommand extends $Command<
108109
// Start section: command_properties
109110
// End section: command_properties
110111

112+
public static getEndpointParameterInstructions(): EndpointParameterInstructions {
113+
return {
114+
OutpostId: { type: "contextParams", name: "OutpostId" },
115+
Bucket: { type: "contextParams", name: "Bucket" },
116+
UseArnRegion: { type: "clientContextParams", name: "useArnRegion" },
117+
UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
118+
Endpoint: { type: "builtInParams", name: "endpoint" },
119+
Region: { type: "builtInParams", name: "region" },
120+
UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
121+
};
122+
}
123+
111124
constructor(readonly input: CreateBucketCommandInput) {
112125
// Start section: command_constructor
113126
super();
@@ -123,6 +136,7 @@ export class CreateBucketCommand extends $Command<
123136
options?: __HttpHandlerOptions
124137
): Handler<CreateBucketCommandInput, CreateBucketCommandOutput> {
125138
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
139+
this.middlewareStack.use(getEndpointPlugin(configuration, CreateBucketCommand.getEndpointParameterInstructions()));
126140
this.middlewareStack.use(getRedirectFromPostIdPlugin(configuration));
127141
this.middlewareStack.use(getApplyMd5BodyChecksumPlugin(configuration));
128142

clients/client-s3-control/src/commands/CreateJobCommand.ts

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
// smithy-typescript generated code
2+
import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
23
import { getProcessArnablesPlugin } from "@aws-sdk/middleware-sdk-s3-control";
34
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
45
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
@@ -82,6 +83,17 @@ export class CreateJobCommand extends $Command<
8283
// Start section: command_properties
8384
// End section: command_properties
8485

86+
public static getEndpointParameterInstructions(): EndpointParameterInstructions {
87+
return {
88+
AccountId: { type: "contextParams", name: "AccountId" },
89+
UseArnRegion: { type: "clientContextParams", name: "useArnRegion" },
90+
UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
91+
Endpoint: { type: "builtInParams", name: "endpoint" },
92+
Region: { type: "builtInParams", name: "region" },
93+
UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
94+
};
95+
}
96+
8597
constructor(readonly input: CreateJobCommandInput) {
8698
// Start section: command_constructor
8799
super();
@@ -97,6 +109,7 @@ export class CreateJobCommand extends $Command<
97109
options?: __HttpHandlerOptions
98110
): Handler<CreateJobCommandInput, CreateJobCommandOutput> {
99111
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
112+
this.middlewareStack.use(getEndpointPlugin(configuration, CreateJobCommand.getEndpointParameterInstructions()));
100113
this.middlewareStack.use(getProcessArnablesPlugin(configuration));
101114

102115
const stack = clientStack.concat(this.middlewareStack);

clients/client-s3-control/src/commands/CreateMultiRegionAccessPointCommand.ts

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
// smithy-typescript generated code
22
import { getApplyMd5BodyChecksumPlugin } from "@aws-sdk/middleware-apply-body-checksum";
3+
import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
34
import { getProcessArnablesPlugin } from "@aws-sdk/middleware-sdk-s3-control";
45
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
56
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
@@ -88,6 +89,17 @@ export class CreateMultiRegionAccessPointCommand extends $Command<
8889
// Start section: command_properties
8990
// End section: command_properties
9091

92+
public static getEndpointParameterInstructions(): EndpointParameterInstructions {
93+
return {
94+
AccountId: { type: "contextParams", name: "AccountId" },
95+
UseArnRegion: { type: "clientContextParams", name: "useArnRegion" },
96+
UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
97+
Endpoint: { type: "builtInParams", name: "endpoint" },
98+
Region: { type: "builtInParams", name: "region" },
99+
UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
100+
};
101+
}
102+
91103
constructor(readonly input: CreateMultiRegionAccessPointCommandInput) {
92104
// Start section: command_constructor
93105
super();
@@ -103,6 +115,9 @@ export class CreateMultiRegionAccessPointCommand extends $Command<
103115
options?: __HttpHandlerOptions
104116
): Handler<CreateMultiRegionAccessPointCommandInput, CreateMultiRegionAccessPointCommandOutput> {
105117
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
118+
this.middlewareStack.use(
119+
getEndpointPlugin(configuration, CreateMultiRegionAccessPointCommand.getEndpointParameterInstructions())
120+
);
106121
this.middlewareStack.use(getProcessArnablesPlugin(configuration));
107122
this.middlewareStack.use(getApplyMd5BodyChecksumPlugin(configuration));
108123

clients/client-s3-control/src/commands/DeleteAccessPointCommand.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
// smithy-typescript generated code
2+
import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
23
import { getProcessArnablesPlugin } from "@aws-sdk/middleware-sdk-s3-control";
34
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
45
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
@@ -68,6 +69,18 @@ export class DeleteAccessPointCommand extends $Command<
6869
// Start section: command_properties
6970
// End section: command_properties
7071

72+
public static getEndpointParameterInstructions(): EndpointParameterInstructions {
73+
return {
74+
AccessPointName: { type: "contextParams", name: "AccessPointName" },
75+
AccountId: { type: "contextParams", name: "AccountId" },
76+
UseArnRegion: { type: "clientContextParams", name: "useArnRegion" },
77+
UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
78+
Endpoint: { type: "builtInParams", name: "endpoint" },
79+
Region: { type: "builtInParams", name: "region" },
80+
UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
81+
};
82+
}
83+
7184
constructor(readonly input: DeleteAccessPointCommandInput) {
7285
// Start section: command_constructor
7386
super();
@@ -83,6 +96,9 @@ export class DeleteAccessPointCommand extends $Command<
8396
options?: __HttpHandlerOptions
8497
): Handler<DeleteAccessPointCommandInput, DeleteAccessPointCommandOutput> {
8598
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
99+
this.middlewareStack.use(
100+
getEndpointPlugin(configuration, DeleteAccessPointCommand.getEndpointParameterInstructions())
101+
);
86102
this.middlewareStack.use(getProcessArnablesPlugin(configuration));
87103

88104
const stack = clientStack.concat(this.middlewareStack);

clients/client-s3-control/src/commands/DeleteAccessPointForObjectLambdaCommand.ts

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
// smithy-typescript generated code
2+
import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
23
import { getProcessArnablesPlugin } from "@aws-sdk/middleware-sdk-s3-control";
34
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
45
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
@@ -70,6 +71,17 @@ export class DeleteAccessPointForObjectLambdaCommand extends $Command<
7071
// Start section: command_properties
7172
// End section: command_properties
7273

74+
public static getEndpointParameterInstructions(): EndpointParameterInstructions {
75+
return {
76+
AccountId: { type: "contextParams", name: "AccountId" },
77+
UseArnRegion: { type: "clientContextParams", name: "useArnRegion" },
78+
UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
79+
Endpoint: { type: "builtInParams", name: "endpoint" },
80+
Region: { type: "builtInParams", name: "region" },
81+
UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
82+
};
83+
}
84+
7385
constructor(readonly input: DeleteAccessPointForObjectLambdaCommandInput) {
7486
// Start section: command_constructor
7587
super();
@@ -85,6 +97,9 @@ export class DeleteAccessPointForObjectLambdaCommand extends $Command<
8597
options?: __HttpHandlerOptions
8698
): Handler<DeleteAccessPointForObjectLambdaCommandInput, DeleteAccessPointForObjectLambdaCommandOutput> {
8799
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
100+
this.middlewareStack.use(
101+
getEndpointPlugin(configuration, DeleteAccessPointForObjectLambdaCommand.getEndpointParameterInstructions())
102+
);
88103
this.middlewareStack.use(getProcessArnablesPlugin(configuration));
89104

90105
const stack = clientStack.concat(this.middlewareStack);

clients/client-s3-control/src/commands/DeleteAccessPointPolicyCommand.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
// smithy-typescript generated code
2+
import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
23
import { getProcessArnablesPlugin } from "@aws-sdk/middleware-sdk-s3-control";
34
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
45
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
@@ -63,6 +64,18 @@ export class DeleteAccessPointPolicyCommand extends $Command<
6364
// Start section: command_properties
6465
// End section: command_properties
6566

67+
public static getEndpointParameterInstructions(): EndpointParameterInstructions {
68+
return {
69+
AccessPointName: { type: "contextParams", name: "AccessPointName" },
70+
AccountId: { type: "contextParams", name: "AccountId" },
71+
UseArnRegion: { type: "clientContextParams", name: "useArnRegion" },
72+
UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
73+
Endpoint: { type: "builtInParams", name: "endpoint" },
74+
Region: { type: "builtInParams", name: "region" },
75+
UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
76+
};
77+
}
78+
6679
constructor(readonly input: DeleteAccessPointPolicyCommandInput) {
6780
// Start section: command_constructor
6881
super();
@@ -78,6 +91,9 @@ export class DeleteAccessPointPolicyCommand extends $Command<
7891
options?: __HttpHandlerOptions
7992
): Handler<DeleteAccessPointPolicyCommandInput, DeleteAccessPointPolicyCommandOutput> {
8093
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
94+
this.middlewareStack.use(
95+
getEndpointPlugin(configuration, DeleteAccessPointPolicyCommand.getEndpointParameterInstructions())
96+
);
8197
this.middlewareStack.use(getProcessArnablesPlugin(configuration));
8298

8399
const stack = clientStack.concat(this.middlewareStack);

0 commit comments

Comments
 (0)