Skip to content

Commit 1b006f0

Browse files
authored
pagination: omit aggregated client in paginators (#712)
* pagination: omit aggregated client in paginators * pagination: exclude aggregated client from pagination interface
1 parent 2805675 commit 1b006f0

File tree

1 file changed

+2
-26
lines changed

1 file changed

+2
-26
lines changed

smithy-typescript-codegen/src/main/java/software/amazon/smithy/typescript/codegen/PaginationGenerator.java

Lines changed: 2 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -95,9 +95,6 @@ public void run() {
9595
writer.addImport(outputSymbol.getName(),
9696
outputSymbol.getName(),
9797
outputSymbol.getNamespace());
98-
String aggregatedClientLocation = serviceSymbol.getNamespace()
99-
.replace(serviceSymbol.getName(), aggregatedClientName);
100-
writer.addImport(aggregatedClientName, aggregatedClientName, aggregatedClientLocation);
10198
writer.addImport(serviceSymbol.getName(), serviceSymbol.getName(), serviceSymbol.getNamespace());
10299

103100
// Import Pagination types
@@ -106,7 +103,6 @@ public void run() {
106103
Paths.get(".", PAGINATION_INTERFACE_FILE.replace(".ts", "")).toString());
107104

108105
writeCommandRequest();
109-
writeMethodRequest();
110106
writePager();
111107
}
112108

@@ -121,13 +117,11 @@ static void generateServicePaginationInterfaces(
121117
TypeScriptWriter writer
122118
) {
123119
writer.addImport("PaginationConfiguration", "PaginationConfiguration", "@aws-sdk/types");
124-
String aggregatedClientLocation = service.getNamespace().replace(service.getName(), aggregatedClientName);
125-
writer.addImport(aggregatedClientName, aggregatedClientName, aggregatedClientLocation);
126120
writer.addImport(service.getName(), service.getName(), service.getNamespace());
127121

128122
writer.openBlock("export interface $LPaginationConfiguration extends PaginationConfiguration {",
129123
"}", aggregatedClientName, () -> {
130-
writer.write("client: $L | $L;", aggregatedClientName, service.getName());
124+
writer.write("client: $L;", service.getName());
131125
});
132126
}
133127

@@ -190,10 +184,7 @@ private void writePager() {
190184
writer.write("input[$S] = config.pageSize;", pageSize);
191185
}
192186

193-
writer.openBlock("if (config.client instanceof $L) {", "}", aggregatedClientName, () -> {
194-
writer.write("page = await makePagedRequest(config.client, input, ...additionalArguments);");
195-
});
196-
writer.openBlock("else if (config.client instanceof $L) {", "}", serviceTypeName, () -> {
187+
writer.openBlock("if (config.client instanceof $L) {", "}", serviceTypeName, () -> {
197188
writer.write("page = await makePagedClientRequest(config.client, input, ...additionalArguments);");
198189
});
199190
writer.openBlock("else {", "}", () -> {
@@ -213,21 +204,6 @@ private void writePager() {
213204
}
214205

215206

216-
/**
217-
* Paginated command that calls client.method({...}) under the hood. This is meant for server side environments and
218-
* exposes the entire service.
219-
*/
220-
private void writeMethodRequest() {
221-
writer.writeDocs("@private");
222-
writer.openBlock(
223-
"const makePagedRequest = async (client: $L, input: $L, ...args: any): Promise<$L> => {",
224-
"}", aggregatedClientName, inputSymbol.getName(),
225-
outputSymbol.getName(), () -> {
226-
writer.write("// @ts-ignore");
227-
writer.write("return await client.$L(input, ...args);", methodName);
228-
});
229-
}
230-
231207
/**
232208
* Paginated command that calls CommandClient().send({...}) under the hood. This is meant for client side (browser)
233209
* environments and does not generally expose the entire service.

0 commit comments

Comments
 (0)