Skip to content

Commit

Permalink
codegen: Update REST streaming request payload content-type usage
Browse files Browse the repository at this point in the history
Updates the SDK's codegen for REST HTTP request payload to always
include content-type header for operations with streaming request
payloads. Prior the content-type header would only be added if the
streaming request io.Reader was not nil.
  • Loading branch information
jasdel committed Jun 24, 2022
1 parent 673e566 commit 562189a
Showing 1 changed file with 3 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -511,24 +511,24 @@ protected void writeMiddlewarePayloadSerializerDelegator(
Shape payloadShape = model.expectShape(memberShape.getTarget());

if (payloadShape.hasTrait(StreamingTrait.class)) {
writeSetPayloadShapeHeader(writer, payloadShape);
GoValueAccessUtils.writeIfNonZeroValueMember(context.getModel(), context.getSymbolProvider(), writer,
memberShape, "input", (s) -> {
writeSetPayloadShapeHeader(writer, payloadShape);
writer.write("payload := $L", s);
writeSetStream(writer, "payload");
});
} else if (payloadShape.isBlobShape()) {
writeSetPayloadShapeHeader(writer, payloadShape);
GoValueAccessUtils.writeIfNonZeroValueMember(context.getModel(), context.getSymbolProvider(), writer,
memberShape, "input", (s) -> {
writeSetPayloadShapeHeader(writer, payloadShape);
writer.addUseImports(SmithyGoDependency.BYTES);
writer.write("payload := bytes.NewReader($L)", s);
writeSetStream(writer, "payload");
});
} else if (payloadShape.isStringShape()) {
writeSetPayloadShapeHeader(writer, payloadShape);
GoValueAccessUtils.writeIfNonZeroValueMember(context.getModel(), context.getSymbolProvider(), writer,
memberShape, "input", (s) -> {
writeSetPayloadShapeHeader(writer, payloadShape);
writer.addUseImports(SmithyGoDependency.STRINGS);
if (payloadShape.hasTrait(EnumTrait.class)) {
writer.write("payload := strings.NewReader(string($L))", s);
Expand Down

0 comments on commit 562189a

Please sign in to comment.