diff --git a/smithy-typescript-codegen/src/main/java/software/amazon/smithy/typescript/codegen/CodegenUtils.java b/smithy-typescript-codegen/src/main/java/software/amazon/smithy/typescript/codegen/CodegenUtils.java index 4c231047e1a..e1799e9ee1e 100644 --- a/smithy-typescript-codegen/src/main/java/software/amazon/smithy/typescript/codegen/CodegenUtils.java +++ b/smithy-typescript-codegen/src/main/java/software/amazon/smithy/typescript/codegen/CodegenUtils.java @@ -206,13 +206,16 @@ static void writeClientCommandBlobPayloadInputType( writer.addImport("BlobTypes", null, TypeScriptDependency.AWS_SDK_TYPES); writer.writeDocs("@public"); - writer.openBlock("export type $LType = Omit<$T, $S> & {", "};", + writer.write( + """ + export type $LType = Omit<$T, $S> & { + $L: BlobTypes; + }; + """, typeName, containerSymbol, memberName, - () -> { - writer.write("$1L$2L: BlobTypes;", memberName, optionalSuffix); - } + memberName + optionalSuffix ); writer.writeDocs("@public\n\nThe input for {@link " + commandName + "}."); @@ -233,13 +236,16 @@ static void writeClientCommandBlobPayloadOutputType( writer.addDependency(TypeScriptDependency.UTIL_STREAM); writer.writeDocs("@public"); - writer.openBlock("export type $LType = Omit<$T, $S> & {", "};", + writer.write( + """ + export type $LType = Omit<$T, $S> & { + $L: Uint8ArrayBlobAdapter; + }; + """, typeName, containerSymbol, memberName, - () -> { - writer.write("$1L$2L: Uint8ArrayBlobAdapter;", memberName, optionalSuffix); - } + memberName + optionalSuffix ); writer.writeDocs("@public\n\nThe output of {@link " + commandName + "}."); diff --git a/smithy-typescript-codegen/src/main/java/software/amazon/smithy/typescript/codegen/integration/HttpBindingProtocolGenerator.java b/smithy-typescript-codegen/src/main/java/software/amazon/smithy/typescript/codegen/integration/HttpBindingProtocolGenerator.java index dda49060e48..e4a84cb2410 100644 --- a/smithy-typescript-codegen/src/main/java/software/amazon/smithy/typescript/codegen/integration/HttpBindingProtocolGenerator.java +++ b/smithy-typescript-codegen/src/main/java/software/amazon/smithy/typescript/codegen/integration/HttpBindingProtocolGenerator.java @@ -200,7 +200,6 @@ public void generateSharedComponents(GenerationContext context) { generateDocumentBodyShapeSerializers(context, serializingDocumentShapes); generateDocumentBodyShapeDeserializers(context, deserializingDocumentShapes); HttpProtocolGeneratorUtils.generateMetadataDeserializer(context, getApplicationProtocol().getResponseType()); - HttpProtocolGeneratorUtils.generateCollectBody(context); HttpProtocolGeneratorUtils.generateCollectBodyString(context); HttpProtocolGeneratorUtils.generateHttpBindingUtils(context); } diff --git a/smithy-typescript-codegen/src/main/java/software/amazon/smithy/typescript/codegen/integration/HttpProtocolGeneratorUtils.java b/smithy-typescript-codegen/src/main/java/software/amazon/smithy/typescript/codegen/integration/HttpProtocolGeneratorUtils.java index 5ac122b5997..1df6a2194a1 100644 --- a/smithy-typescript-codegen/src/main/java/software/amazon/smithy/typescript/codegen/integration/HttpProtocolGeneratorUtils.java +++ b/smithy-typescript-codegen/src/main/java/software/amazon/smithy/typescript/codegen/integration/HttpProtocolGeneratorUtils.java @@ -247,26 +247,15 @@ static void generateMetadataDeserializer(GenerationContext context, SymbolRefere writer.write(""); } - /** - * Imports a response body stream collector. This function converts the low-level response body stream to - * Uint8Array binary data. - * - * @param context The generation context. - */ - static void generateCollectBody(GenerationContext context) { - TypeScriptWriter writer = context.getWriter(); - writer.addImport("collectBody", null, TypeScriptDependency.AWS_SMITHY_CLIENT); - } - /** * Writes a function converting the low-level response body stream to utf-8 encoded string. It depends on - * response body stream collector {@link #generateCollectBody(GenerationContext)}. + * response body stream collector. * * @param context The generation context */ static void generateCollectBodyString(GenerationContext context) { TypeScriptWriter writer = context.getWriter(); - + writer.addImport("collectBody", null, TypeScriptDependency.AWS_SMITHY_CLIENT); writer.addImport("SerdeContext", "__SerdeContext", TypeScriptDependency.SMITHY_TYPES); writer.write("// Encode Uint8Array data into string with utf-8."); writer.write("const collectBodyString = (streamBody: any, context: __SerdeContext): Promise => " diff --git a/smithy-typescript-codegen/src/main/java/software/amazon/smithy/typescript/codegen/integration/HttpRpcProtocolGenerator.java b/smithy-typescript-codegen/src/main/java/software/amazon/smithy/typescript/codegen/integration/HttpRpcProtocolGenerator.java index da341e625d5..6c5c4005088 100644 --- a/smithy-typescript-codegen/src/main/java/software/amazon/smithy/typescript/codegen/integration/HttpRpcProtocolGenerator.java +++ b/smithy-typescript-codegen/src/main/java/software/amazon/smithy/typescript/codegen/integration/HttpRpcProtocolGenerator.java @@ -128,7 +128,6 @@ public void generateSharedComponents(GenerationContext context) { generateDocumentBodyShapeSerializers(context, serializingDocumentShapes); generateDocumentBodyShapeDeserializers(context, deserializingDocumentShapes); HttpProtocolGeneratorUtils.generateMetadataDeserializer(context, getApplicationProtocol().getResponseType()); - HttpProtocolGeneratorUtils.generateCollectBody(context); HttpProtocolGeneratorUtils.generateCollectBodyString(context); TypeScriptWriter writer = context.getWriter();