diff --git a/codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/JsonShapeDeserVisitor.java b/codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/JsonShapeDeserVisitor.java index d93e6de380d6..a663bf7df7c1 100644 --- a/codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/JsonShapeDeserVisitor.java +++ b/codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/JsonShapeDeserVisitor.java @@ -36,6 +36,7 @@ import software.amazon.smithy.model.traits.MediaTypeTrait; import software.amazon.smithy.model.traits.SparseTrait; import software.amazon.smithy.model.traits.TimestampFormatTrait.Format; +import software.amazon.smithy.model.traits.UniqueItemsTrait; import software.amazon.smithy.typescript.codegen.CodegenUtils; import software.amazon.smithy.typescript.codegen.TypeScriptDependency; import software.amazon.smithy.typescript.codegen.TypeScriptSettings.ArtifactType; @@ -123,7 +124,7 @@ protected void deserializeCollection(GenerationContext context, CollectionShape ); } - if (shape.isSetShape() && artifactType.equals(ArtifactType.SSDK)) { + if (shape.isListShape() && shape.hasTrait(UniqueItemsTrait.ID) && artifactType.equals(ArtifactType.SSDK)) { writer.addDependency(TypeScriptDependency.SERVER_COMMON); writer.addImport("findDuplicates", "__findDuplicates", "@aws-smithy/server-common"); writer.openBlock("if (__findDuplicates(retVal).length > 0) {", "}", () -> { diff --git a/codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/QueryMemberSerVisitor.java b/codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/QueryMemberSerVisitor.java index 0b8d105fe887..f03a1ecb9981 100644 --- a/codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/QueryMemberSerVisitor.java +++ b/codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/QueryMemberSerVisitor.java @@ -39,7 +39,7 @@ final class QueryMemberSerVisitor extends DocumentMemberSerVisitor { boolean visitSuppliesEntryList(Shape shape) { return shape.isStructureShape() || shape.isUnionShape() - || shape.isMapShape() || shape.isListShape() || shape.isSetShape(); + || shape.isMapShape() || shape.isListShape(); } @Override diff --git a/codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/QueryShapeSerVisitor.java b/codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/QueryShapeSerVisitor.java index 0cef96b456e6..354d314cc917 100644 --- a/codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/QueryShapeSerVisitor.java +++ b/codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/QueryShapeSerVisitor.java @@ -275,7 +275,7 @@ private void serializeNamedMemberEntryList( Shape targetShape = context.getModel().expectShape(memberShape.getTarget()); - if ((targetShape.isListShape() || targetShape.isSetShape()) && serializeEmptyLists) { + if (targetShape.isListShape() && serializeEmptyLists) { writer.openBlock( "if ($L?.length === 0) {", "}", diff --git a/codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/visitor/MemberDeserVisitor.java b/codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/visitor/MemberDeserVisitor.java index 0abdf5b09132..051cfa73c6bd 100644 --- a/codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/visitor/MemberDeserVisitor.java +++ b/codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/visitor/MemberDeserVisitor.java @@ -28,7 +28,6 @@ import software.amazon.smithy.model.shapes.OperationShape; import software.amazon.smithy.model.shapes.ResourceShape; import software.amazon.smithy.model.shapes.ServiceShape; -import software.amazon.smithy.model.shapes.SetShape; import software.amazon.smithy.model.shapes.Shape; import software.amazon.smithy.model.shapes.ShapeVisitor; import software.amazon.smithy.model.shapes.ShortShape; @@ -199,11 +198,6 @@ public final String mapShape(MapShape shape) { return getDelegateDeserializer(shape); } - @Override - public final String setShape(SetShape shape) { - return getDelegateDeserializer(shape); - } - @Override public final String structureShape(StructureShape shape) { return getDelegateDeserializer(shape);