From c9374b99d1c83d918781d5e7bb9a424bc45158da Mon Sep 17 00:00:00 2001 From: Kevin Stich Date: Mon, 14 Oct 2024 12:59:39 -0700 Subject: [PATCH] Add checksum algorithm to model enum --- .gitignore | 3 +++ .../software/amazon/smithy/aws/traits/HttpChecksumTrait.java | 1 + .../src/main/resources/META-INF/smithy/aws.protocols.smithy | 4 ++++ 3 files changed, 8 insertions(+) diff --git a/.gitignore b/.gitignore index ed1c10be16a..f39ff7525a1 100644 --- a/.gitignore +++ b/.gitignore @@ -14,6 +14,9 @@ docs/src *.iml *.iws +# Fleet +.fleet/ + # VSCode bin/ diff --git a/smithy-aws-traits/src/main/java/software/amazon/smithy/aws/traits/HttpChecksumTrait.java b/smithy-aws-traits/src/main/java/software/amazon/smithy/aws/traits/HttpChecksumTrait.java index 50fdf5bbbef..679792d5cec 100644 --- a/smithy-aws-traits/src/main/java/software/amazon/smithy/aws/traits/HttpChecksumTrait.java +++ b/smithy-aws-traits/src/main/java/software/amazon/smithy/aws/traits/HttpChecksumTrait.java @@ -38,6 +38,7 @@ public final class HttpChecksumTrait extends AbstractTrait implements ToSmithyBuilder { public static final ShapeId ID = ShapeId.from("aws.protocols#httpChecksum"); public static final String CHECKSUM_PREFIX = "x-amz-checksum-"; + // This list should be in sync with the trait definition in `aws.protocols.smithy`. public static final List CHECKSUM_ALGORITHMS = ListUtils.of("CRC64NVME", "CRC32C", "CRC32", "SHA1", "SHA256"); public static final List VALIDATION_MODES = ListUtils.of("ENABLED"); diff --git a/smithy-aws-traits/src/main/resources/META-INF/smithy/aws.protocols.smithy b/smithy-aws-traits/src/main/resources/META-INF/smithy/aws.protocols.smithy index d4a7be98f3b..16fbbfb2be9 100644 --- a/smithy-aws-traits/src/main/resources/META-INF/smithy/aws.protocols.smithy +++ b/smithy-aws-traits/src/main/resources/META-INF/smithy/aws.protocols.smithy @@ -253,8 +253,12 @@ list ChecksumAlgorithmSet { member: ChecksumAlgorithm } +// This enum should be in sync with the `HttpChecksumTrait` list. @private enum ChecksumAlgorithm { + /// CRC64NVME + CRC64NVME + /// CRC32C CRC32C