Skip to content

Commit 11fdee1

Browse files
author
awstools
committed
feat(client-ec2): SearchTransitGatewayRoutes API response now includes a NextToken field, enabling pagination when retrieving large sets of transit gateway routes. Pass the returned NextToken value in subsequent requests to retrieve the next page of results.
1 parent a5e075c commit 11fdee1

9 files changed

Lines changed: 81 additions & 5 deletions

File tree

clients/client-ec2/src/EC2.ts

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3913,6 +3913,7 @@ import { paginateListImagesInRecycleBin } from "./pagination/ListImagesInRecycle
39133913
import { paginateListSnapshotsInRecycleBin } from "./pagination/ListSnapshotsInRecycleBinPaginator";
39143914
import { paginateSearchLocalGatewayRoutes } from "./pagination/SearchLocalGatewayRoutesPaginator";
39153915
import { paginateSearchTransitGatewayMulticastGroups } from "./pagination/SearchTransitGatewayMulticastGroupsPaginator";
3916+
import { paginateSearchTransitGatewayRoutes } from "./pagination/SearchTransitGatewayRoutesPaginator";
39163917
import { waitUntilBundleTaskComplete } from "./waiters/waitForBundleTaskComplete";
39173918
import { waitUntilConversionTaskCancelled } from "./waiters/waitForConversionTaskCancelled";
39183919
import { waitUntilConversionTaskCompleted } from "./waiters/waitForConversionTaskCompleted";
@@ -4870,6 +4871,7 @@ const paginators = {
48704871
paginateListSnapshotsInRecycleBin,
48714872
paginateSearchLocalGatewayRoutes,
48724873
paginateSearchTransitGatewayMulticastGroups,
4874+
paginateSearchTransitGatewayRoutes,
48734875
};
48744876
const waiters = {
48754877
waitUntilBundleTaskComplete,
@@ -19666,6 +19668,17 @@ export interface EC2 {
1966619668
paginationConfig?: Omit<PaginationConfiguration, "client">
1966719669
): Paginator<SearchTransitGatewayMulticastGroupsCommandOutput>;
1966819670

19671+
/**
19672+
* @see {@link SearchTransitGatewayRoutesCommand}
19673+
* @param args - command input.
19674+
* @param paginationConfig - optional pagination config.
19675+
* @returns AsyncIterable of {@link SearchTransitGatewayRoutesCommandOutput}.
19676+
*/
19677+
paginateSearchTransitGatewayRoutes(
19678+
args: SearchTransitGatewayRoutesCommandInput,
19679+
paginationConfig?: Omit<PaginationConfiguration, "client">
19680+
): Paginator<SearchTransitGatewayRoutesCommandOutput>;
19681+
1966919682
/**
1967019683
* @see {@link DescribeBundleTasksCommand}
1967119684
* @param args - command input.

clients/client-ec2/src/commands/SearchTransitGatewayRoutesCommand.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@ export interface SearchTransitGatewayRoutesCommandOutput extends SearchTransitGa
4848
* ],
4949
* MaxResults: Number("int"),
5050
* DryRun: true || false,
51+
* NextToken: "STRING_VALUE",
5152
* };
5253
* const command = new SearchTransitGatewayRoutesCommand(input);
5354
* const response = await client.send(command);
@@ -69,6 +70,7 @@ export interface SearchTransitGatewayRoutesCommandOutput extends SearchTransitGa
6970
* // },
7071
* // ],
7172
* // AdditionalRoutesAvailable: true || false,
73+
* // NextToken: "STRING_VALUE",
7274
* // };
7375
*
7476
* ```

clients/client-ec2/src/models/models_7.ts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6248,6 +6248,12 @@ export interface SearchTransitGatewayRoutesRequest {
62486248
* @public
62496249
*/
62506250
DryRun?: boolean | undefined;
6251+
6252+
/**
6253+
* <p>The token for the next page of results.</p>
6254+
* @public
6255+
*/
6256+
NextToken?: string | undefined;
62516257
}
62526258

62536259
/**
@@ -6265,6 +6271,12 @@ export interface SearchTransitGatewayRoutesResult {
62656271
* @public
62666272
*/
62676273
AdditionalRoutesAvailable?: boolean | undefined;
6274+
6275+
/**
6276+
* <p>The token to use to retrieve the next page of results. This value is <code>null</code> when there are no more results to return.</p>
6277+
* @public
6278+
*/
6279+
NextToken?: string | undefined;
62686280
}
62696281

62706282
/**
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
// smithy-typescript generated code
2+
import { createPaginator } from "@smithy/core";
3+
import type { Paginator } from "@smithy/types";
4+
5+
import {
6+
SearchTransitGatewayRoutesCommand,
7+
SearchTransitGatewayRoutesCommandInput,
8+
SearchTransitGatewayRoutesCommandOutput,
9+
} from "../commands/SearchTransitGatewayRoutesCommand";
10+
import { EC2Client } from "../EC2Client";
11+
import { EC2PaginationConfiguration } from "./Interfaces";
12+
13+
/**
14+
* @public
15+
*/
16+
export const paginateSearchTransitGatewayRoutes: (
17+
config: EC2PaginationConfiguration,
18+
input: SearchTransitGatewayRoutesCommandInput,
19+
...rest: any[]
20+
) => Paginator<SearchTransitGatewayRoutesCommandOutput> = createPaginator<
21+
EC2PaginationConfiguration,
22+
SearchTransitGatewayRoutesCommandInput,
23+
SearchTransitGatewayRoutesCommandOutput
24+
>(EC2Client, SearchTransitGatewayRoutesCommand, "NextToken", "NextToken", "MaxResults");

clients/client-ec2/src/pagination/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -163,3 +163,4 @@ export * from "./ListImagesInRecycleBinPaginator";
163163
export * from "./ListSnapshotsInRecycleBinPaginator";
164164
export * from "./SearchLocalGatewayRoutesPaginator";
165165
export * from "./SearchTransitGatewayMulticastGroupsPaginator";
166+
export * from "./SearchTransitGatewayRoutesPaginator";

clients/client-ec2/src/schemas/schemas_0.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22684,15 +22684,16 @@ export var SearchTransitGatewayMulticastGroupsResult$: StaticStructureSchema = [
2268422684
];
2268522685
export var SearchTransitGatewayRoutesRequest$: StaticStructureSchema = [3, n0, _STGRR,
2268622686
0,
22687-
[_TGRTI, _Fi, _MR, _DR],
22688-
[0, [() => FilterList, { [_xN]: _Fil }], 1, 2], 2
22687+
[_TGRTI, _Fi, _MR, _DR, _NTe],
22688+
[0, [() => FilterList, { [_xN]: _Fil }], 1, 2, 0], 2
2268922689
];
2269022690
export var SearchTransitGatewayRoutesResult$: StaticStructureSchema = [3, n0, _STGRRe,
2269122691
0,
22692-
[_Rou, _ARAd],
22692+
[_Rou, _ARAd, _NTe],
2269322693
[[() => TransitGatewayRouteList, { [_eQN]: `RouteSet`
2269422694
, [_xN]: _rSou }], [2, { [_eQN]: `AdditionalRoutesAvailable`
22695-
, [_xN]: _aRAd }]]
22695+
, [_xN]: _aRAd }], [0, { [_eQN]: `NextToken`
22696+
, [_xN]: _nTe }]]
2269622697
];
2269722698
export var SecurityGroup$: StaticStructureSchema = [3, n0, _SGe,
2269822699
0,

clients/client-ec2/test/index-objects.spec.mjs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3646,6 +3646,7 @@ import {
36463646
paginateListSnapshotsInRecycleBin,
36473647
paginateSearchLocalGatewayRoutes,
36483648
paginateSearchTransitGatewayMulticastGroups,
3649+
paginateSearchTransitGatewayRoutes,
36493650
PartitionLoadFrequency,
36503651
PathComponent$,
36513652
PathFilter$,
@@ -9000,4 +9001,5 @@ assert(typeof paginateListImagesInRecycleBin === "function");
90009001
assert(typeof paginateListSnapshotsInRecycleBin === "function");
90019002
assert(typeof paginateSearchLocalGatewayRoutes === "function");
90029003
assert(typeof paginateSearchTransitGatewayMulticastGroups === "function");
9004+
assert(typeof paginateSearchTransitGatewayRoutes === "function");
90039005
console.log(`EC2 index test passed.`);

clients/client-ec2/test/index-types.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5245,4 +5245,5 @@ export type {
52455245
paginateListSnapshotsInRecycleBin,
52465246
paginateSearchLocalGatewayRoutes,
52475247
paginateSearchTransitGatewayMulticastGroups,
5248+
paginateSearchTransitGatewayRoutes,
52485249
} from "../dist-types/index.d";

codegen/sdk-codegen/aws-models/ec2.json

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115506,7 +115506,13 @@
115506115506
"target": "com.amazonaws.ec2#SearchTransitGatewayRoutesResult"
115507115507
},
115508115508
"traits": {
115509-
"smithy.api#documentation": "<p>Searches for routes in the specified transit gateway route table.</p>"
115509+
"smithy.api#documentation": "<p>Searches for routes in the specified transit gateway route table.</p>",
115510+
"smithy.api#paginated": {
115511+
"inputToken": "NextToken",
115512+
"outputToken": "NextToken",
115513+
"items": "Routes",
115514+
"pageSize": "MaxResults"
115515+
}
115510115516
}
115511115517
},
115512115518
"com.amazonaws.ec2#SearchTransitGatewayRoutesRequest": {
@@ -115540,6 +115546,12 @@
115540115546
"traits": {
115541115547
"smithy.api#documentation": "<p>Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>. \n Otherwise, it is <code>UnauthorizedOperation</code>.</p>"
115542115548
}
115549+
},
115550+
"NextToken": {
115551+
"target": "com.amazonaws.ec2#String",
115552+
"traits": {
115553+
"smithy.api#documentation": "<p>The token for the next page of results.</p>"
115554+
}
115543115555
}
115544115556
},
115545115557
"traits": {
@@ -115564,6 +115576,14 @@
115564115576
"smithy.api#documentation": "<p>Indicates whether there are additional routes available.</p>",
115565115577
"smithy.api#xmlName": "additionalRoutesAvailable"
115566115578
}
115579+
},
115580+
"NextToken": {
115581+
"target": "com.amazonaws.ec2#String",
115582+
"traits": {
115583+
"aws.protocols#ec2QueryName": "NextToken",
115584+
"smithy.api#documentation": "<p>The token to use to retrieve the next page of results. This value is <code>null</code> when there are no more results to return.</p>",
115585+
"smithy.api#xmlName": "nextToken"
115586+
}
115567115587
}
115568115588
},
115569115589
"traits": {

0 commit comments

Comments
 (0)