From 302a3c0a4824be1b8d7207582619ff248b9d0871 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luis=20Madrigal=20=F0=9F=90=A7?= <599908+Madrigal@users.noreply.github.com> Date: Thu, 3 Oct 2024 17:22:46 -0400 Subject: [PATCH 1/2] fix: allow empty headers on prefix headers --- internal/protocoltest/awsrestjson/serializers.go | 4 +--- internal/protocoltest/restxml/serializers.go | 4 +--- service/dataexchange/serializers.go | 4 +--- service/s3/serializers.go | 16 ++++------------ 4 files changed, 7 insertions(+), 21 deletions(-) diff --git a/internal/protocoltest/awsrestjson/serializers.go b/internal/protocoltest/awsrestjson/serializers.go index 63c0f728fca..0930c4e5f5a 100644 --- a/internal/protocoltest/awsrestjson/serializers.go +++ b/internal/protocoltest/awsrestjson/serializers.go @@ -1624,9 +1624,7 @@ func awsRestjson1_serializeOpHttpBindingsHttpPrefixHeadersInput(v *HttpPrefixHea if v.FooMap != nil { hv := encoder.Headers("X-Foo-") for mapKey, mapVal := range v.FooMap { - if len(mapVal) > 0 { - hv.SetHeader(http.CanonicalHeaderKey(mapKey)).String(mapVal) - } + hv.SetHeader(http.CanonicalHeaderKey(mapKey)).String(mapVal) } } diff --git a/internal/protocoltest/restxml/serializers.go b/internal/protocoltest/restxml/serializers.go index abc6474fd2f..b6df26bbea5 100644 --- a/internal/protocoltest/restxml/serializers.go +++ b/internal/protocoltest/restxml/serializers.go @@ -1990,9 +1990,7 @@ func awsRestxml_serializeOpHttpBindingsHttpPrefixHeadersInput(v *HttpPrefixHeade if v.FooMap != nil { hv := encoder.Headers("X-Foo-") for mapKey, mapVal := range v.FooMap { - if len(mapVal) > 0 { - hv.SetHeader(http.CanonicalHeaderKey(mapKey)).String(mapVal) - } + hv.SetHeader(http.CanonicalHeaderKey(mapKey)).String(mapVal) } } diff --git a/service/dataexchange/serializers.go b/service/dataexchange/serializers.go index 669e84092f5..8994ef32299 100644 --- a/service/dataexchange/serializers.go +++ b/service/dataexchange/serializers.go @@ -1829,9 +1829,7 @@ func awsRestjson1_serializeOpHttpBindingsSendApiAssetInput(v *SendApiAssetInput, if v.RequestHeaders != nil { hv := encoder.Headers("X-Amzn-Dataexchange-Header-") for mapKey, mapVal := range v.RequestHeaders { - if len(mapVal) > 0 { - hv.SetHeader(http.CanonicalHeaderKey(mapKey)).String(mapVal) - } + hv.SetHeader(http.CanonicalHeaderKey(mapKey)).String(mapVal) } } diff --git a/service/s3/serializers.go b/service/s3/serializers.go index 96dbb6b934a..88596e07140 100644 --- a/service/s3/serializers.go +++ b/service/s3/serializers.go @@ -439,9 +439,7 @@ func awsRestxml_serializeOpHttpBindingsCopyObjectInput(v *CopyObjectInput, encod if v.Metadata != nil { hv := encoder.Headers("X-Amz-Meta-") for mapKey, mapVal := range v.Metadata { - if len(mapVal) > 0 { - hv.SetHeader(http.CanonicalHeaderKey(mapKey)).String(mapVal) - } + hv.SetHeader(http.CanonicalHeaderKey(mapKey)).String(mapVal) } } @@ -790,9 +788,7 @@ func awsRestxml_serializeOpHttpBindingsCreateMultipartUploadInput(v *CreateMulti if v.Metadata != nil { hv := encoder.Headers("X-Amz-Meta-") for mapKey, mapVal := range v.Metadata { - if len(mapVal) > 0 { - hv.SetHeader(http.CanonicalHeaderKey(mapKey)).String(mapVal) - } + hv.SetHeader(http.CanonicalHeaderKey(mapKey)).String(mapVal) } } @@ -7552,9 +7548,7 @@ func awsRestxml_serializeOpHttpBindingsPutObjectInput(v *PutObjectInput, encoder if v.Metadata != nil { hv := encoder.Headers("X-Amz-Meta-") for mapKey, mapVal := range v.Metadata { - if len(mapVal) > 0 { - hv.SetHeader(http.CanonicalHeaderKey(mapKey)).String(mapVal) - } + hv.SetHeader(http.CanonicalHeaderKey(mapKey)).String(mapVal) } } @@ -9130,9 +9124,7 @@ func awsRestxml_serializeOpHttpBindingsWriteGetObjectResponseInput(v *WriteGetOb if v.Metadata != nil { hv := encoder.Headers("X-Amz-Meta-") for mapKey, mapVal := range v.Metadata { - if len(mapVal) > 0 { - hv.SetHeader(http.CanonicalHeaderKey(mapKey)).String(mapVal) - } + hv.SetHeader(http.CanonicalHeaderKey(mapKey)).String(mapVal) } } From 9444f8962eac4c8a72590447796169f61ffee67f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luis=20Madrigal=20=F0=9F=90=A7?= <599908+Madrigal@users.noreply.github.com> Date: Thu, 3 Oct 2024 17:27:16 -0400 Subject: [PATCH 2/2] Add changelog --- .changelog/d63b07a648e14dba902b708fc248f442.json | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 .changelog/d63b07a648e14dba902b708fc248f442.json diff --git a/.changelog/d63b07a648e14dba902b708fc248f442.json b/.changelog/d63b07a648e14dba902b708fc248f442.json new file mode 100644 index 00000000000..163fbfb9233 --- /dev/null +++ b/.changelog/d63b07a648e14dba902b708fc248f442.json @@ -0,0 +1,11 @@ +{ + "id": "d63b07a6-48e1-4dba-902b-708fc248f442", + "type": "bugfix", + "description": "Allow serialization of headers with empty string for prefix headers", + "modules": [ + "internal/protocoltest/awsrestjson", + "internal/protocoltest/restxml", + "service/dataexchange", + "service/s3" + ] +} \ No newline at end of file