Skip to content

Commit c800765

Browse files
Use operation symbol name consistently
This updates any usage of an operation name to go through the symbol provider. This avoids issues where the operation name's casing differs from that of the symbol.
1 parent adf914b commit c800765

File tree

3 files changed

+15
-15
lines changed

3 files changed

+15
-15
lines changed

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ private void writeOperationSerializer() {
165165

166166
writer.addImport("OperationSerializer", "__OperationSerializer", "@aws-smithy/server-common");
167167
writer.openBlock("export class $L implements __OperationSerializer<$T<any>, $S, $T> {", "}",
168-
serializerName, serverSymbol, operation.getId().getName(), errorsType, () -> {
168+
serializerName, serverSymbol, operationSymbol.getName(), errorsType, () -> {
169169
String serializerFunction = ProtocolGenerator.getGenericSerFunctionName(operationSymbol) + "Response";
170170
String deserializerFunction = ProtocolGenerator.getGenericDeserFunctionName(operationSymbol) + "Request";
171171
writer.addImport(serializerFunction, null,

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

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ static void generateOperationsType(SymbolProvider symbolProvider,
3636
Symbol serviceSymbol = symbolProvider.toSymbol(serviceShape);
3737
writer.writeInline("export type $L = ", serviceSymbol.expectProperty("operations", Symbol.class).getName());
3838
for (Iterator<OperationShape> iter = operations.iterator(); iter.hasNext();) {
39-
writer.writeInline("$S", iter.next().getId().getName());
39+
writer.writeInline("$S", symbolProvider.toSymbol(iter.next()).getName());
4040
if (iter.hasNext()) {
4141
writer.writeInline(" | ");
4242
}
@@ -109,14 +109,13 @@ static void generateServiceHandler(SymbolProvider symbolProvider,
109109
});
110110
writer.openBlock("switch (target.operation) {", "}", () -> {
111111
for (OperationShape operation : operations) {
112-
String opName = operation.getId().getName();
113112
Symbol operationSymbol = symbolProvider.toSymbol(operation);
114113
Symbol inputSymbol = operationSymbol.expectProperty("inputType", Symbol.class);
115-
writer.openBlock("case $S : {", "}", opName, () -> {
114+
writer.openBlock("case $S : {", "}", operationSymbol.getName(), () -> {
116115
writer.write("return handle(request, context, $1S, this.serializerFactory($1S), "
117-
+ "this.service.$2L, this.serializeFrameworkException, $3T.validate, "
116+
+ "this.service.$1L, this.serializeFrameworkException, $2T.validate, "
118117
+ "this.validationCustomizer);",
119-
opName, operationSymbol.getName(), inputSymbol);
118+
operationSymbol.getName(), inputSymbol);
120119
});
121120
}
122121
});
@@ -133,9 +132,9 @@ static void generateOperationHandler(SymbolProvider symbolProvider,
133132
writeSerdeContextBase(writer);
134133
writeHandleFunction(writer);
135134

136-
String operationName = operation.getId().getName();
137135
Symbol serviceSymbol = symbolProvider.toSymbol(serviceShape);
138136
Symbol operationSymbol = symbolProvider.toSymbol(operation);
137+
String operationName = operationSymbol.getName();
139138

140139
Symbol inputSymbol = operationSymbol.expectProperty("inputType", Symbol.class);
141140
Symbol outputSymbol = operationSymbol.expectProperty("outputType", Symbol.class);

smithy-typescript-codegen/src/main/java/software/amazon/smithy/typescript/codegen/integration/HttpBindingProtocolGenerator.java

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -273,7 +273,7 @@ private void generateOperationMux(GenerationContext context, OperationShape oper
273273

274274
writer.openBlock("const mux = new httpbinding.HttpBindingMux<$S, $S>([", "]);",
275275
context.getService().getId().getName(),
276-
operation.getId().getName(),
276+
context.getSymbolProvider().toSymbol(operation).getName(),
277277
() -> {
278278
HttpTrait httpTrait = operation.expectTrait(HttpTrait.class);
279279
generateUriSpec(context, operation, httpTrait);
@@ -287,10 +287,11 @@ private void generateUriSpec(GenerationContext context,
287287
TypeScriptWriter writer = context.getWriter();
288288

289289
String serviceName = context.getService().getId().getName();
290+
String operationName = context.getSymbolProvider().toSymbol(operation).getName();
290291

291292
writer.openBlock("new httpbinding.UriSpec<$S, $S>(", "),",
292293
serviceName,
293-
operation.getId().getName(),
294+
operationName,
294295
() -> {
295296
writer.write("'$L',", httpTrait.getMethod());
296297
writer.openBlock("[", "],", () -> {
@@ -323,8 +324,7 @@ private void generateUriSpec(GenerationContext context,
323324
}
324325
});
325326
});
326-
writer.writeInline("{ service: $S, operation: $S }",
327-
serviceName, operation.getId().getName());
327+
writer.writeInline("{ service: $S, operation: $S }", serviceName, operationName);
328328
});
329329
}
330330

@@ -404,7 +404,7 @@ public void generateOperationHandlerFactory(GenerationContext context, Operation
404404
writer.write("export const get$L = <Context>(operation: __Operation<$T, $T, Context>, "
405405
+ "customizer: __ValidationCustomizer<$S>): "
406406
+ "__ServiceHandler<Context, __HttpRequest, __HttpResponse> => {",
407-
operationHandlerSymbol.getName(), inputType, outputType, operation.getId().getName());
407+
operationHandlerSymbol.getName(), inputType, outputType, operationSymbol.getName());
408408
} else {
409409
writer.write("export const get$L = <Context>(operation: __Operation<$T, $T, Context>): "
410410
+ "__ServiceHandler<Context, __HttpRequest, __HttpResponse> => {",
@@ -418,7 +418,7 @@ public void generateOperationHandlerFactory(GenerationContext context, Operation
418418
writer.addImport("generateValidationSummary", "__generateValidationSummary", "@aws-smithy/server-common");
419419
writer.addImport("generateValidationMessage", "__generateValidationMessage", "@aws-smithy/server-common");
420420
writer.openBlock("const customizer: __ValidationCustomizer<$S> = (ctx, failures) => {", "};",
421-
operation.getId().getName(),
421+
operationSymbol.getName(),
422422
() -> {
423423
writeDefaultValidationCustomizer(writer);
424424
}
@@ -451,8 +451,9 @@ private Consumer<OperationShape> writeOperationCase(
451451
SymbolProvider symbolProvider
452452
) {
453453
return operation -> {
454-
Symbol symbol = symbolProvider.toSymbol(operation).expectProperty("serializerType", Symbol.class);
455-
writer.write("case $S: return new $T();", operation.getId().getName(), symbol);
454+
Symbol operationSymbol = symbolProvider.toSymbol(operation);
455+
Symbol symbol = operationSymbol.expectProperty("serializerType", Symbol.class);
456+
writer.write("case $S: return new $T();", operationSymbol.getName(), symbol);
456457
};
457458
}
458459

0 commit comments

Comments
 (0)