From fea32e94c7669f130e243e9e848b814c3cfb0771 Mon Sep 17 00:00:00 2001 From: skotambkar Date: Tue, 3 Nov 2020 10:56:05 -0800 Subject: [PATCH 1/4] update s3shared util and java codegen usage to support multi formats --- .../aws/go/codegen/XMLProtocolUtils.java | 23 ++++++- service/internal/s3shared/xml_utils.go | 61 ++++++++++++++++--- service/internal/s3shared/xml_utils_test.go | 36 ++++++++++- 3 files changed, 105 insertions(+), 15 deletions(-) diff --git a/codegen/smithy-aws-go-codegen/src/main/java/software/amazon/smithy/aws/go/codegen/XMLProtocolUtils.java b/codegen/smithy-aws-go-codegen/src/main/java/software/amazon/smithy/aws/go/codegen/XMLProtocolUtils.java index 857008fddf2..1a8ecbe6580 100644 --- a/codegen/smithy-aws-go-codegen/src/main/java/software/amazon/smithy/aws/go/codegen/XMLProtocolUtils.java +++ b/codegen/smithy-aws-go-codegen/src/main/java/software/amazon/smithy/aws/go/codegen/XMLProtocolUtils.java @@ -10,6 +10,7 @@ import software.amazon.smithy.codegen.core.SymbolProvider; import software.amazon.smithy.go.codegen.GoWriter; import software.amazon.smithy.go.codegen.SmithyGoDependency; +import software.amazon.smithy.go.codegen.SymbolUtils; import software.amazon.smithy.go.codegen.SyntheticClone; import software.amazon.smithy.go.codegen.integration.ProtocolGenerator; import software.amazon.smithy.model.Model; @@ -274,12 +275,28 @@ public static void writeXmlErrorMessageCodeDeserializer(ProtocolGenerator.Genera ServiceShape service = context.getService(); if (requiresS3Customization(service)) { - writer.addUseImports(AwsCustomGoDependency.S3_SHARED_CUSTOMIZATION); + Symbol getErrorComponentFunction = SymbolUtils.createValueSymbolBuilder( + "GetErrorResponseComponents", + AwsCustomGoDependency.S3_SHARED_CUSTOMIZATION + ).build(); + + Symbol errorOptions = SymbolUtils.createValueSymbolBuilder( + "ErrorResponseDeserializerOptions", + AwsCustomGoDependency.S3_SHARED_CUSTOMIZATION + ).build(); + if (isS3Service(service)){ - writer.write("errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode)"); + // s3 service + writer.openBlock("errorComponents, err := $T(errorBody, $T{", + "})", getErrorComponentFunction, errorOptions, () -> { + writer.write("UseStatusCode : true, StatusCode : response.StatusCode,"); + }); } else { // s3 control - writer.write("errorComponents, err := s3shared.GetErrorResponseComponents(errorBody)"); + writer.openBlock("errorComponents, err := $T(errorBody, $T{", + "})", getErrorComponentFunction, errorOptions, () -> { + writer.write("IsWrappedWithErrorTag: true,"); + }); } writer.write("if err != nil { return err }"); diff --git a/service/internal/s3shared/xml_utils.go b/service/internal/s3shared/xml_utils.go index fb6fcbdd7c0..f019120aae4 100644 --- a/service/internal/s3shared/xml_utils.go +++ b/service/internal/s3shared/xml_utils.go @@ -17,8 +17,8 @@ type ErrorComponents struct { HostID string `xml:"HostId"` } -// GetErrorResponseComponents returns the error fields from an xml error response body -func GetErrorResponseComponents(r io.Reader) (ErrorComponents, error) { +// GetUnwrappedErrorResponseComponents returns the error fields from an xml error response body +func GetUnwrappedErrorResponseComponents(r io.Reader) (ErrorComponents, error) { var errComponents ErrorComponents if err := xml.NewDecoder(r).Decode(&errComponents); err != nil && err != io.EOF { return ErrorComponents{}, fmt.Errorf("error while deserializing xml error response : %w", err) @@ -26,20 +26,63 @@ func GetErrorResponseComponents(r io.Reader) (ErrorComponents, error) { return errComponents, nil } -// GetS3ErrorResponseComponents returns the error fields from an S3 xml error response body. -// If an error code or message is not retrieved, it is derived from the http status code -func GetS3ErrorResponseComponents(r io.Reader, statusCode int) (ErrorComponents, error) { - errComponents, err := GetErrorResponseComponents(r) +// GetErrorResponseComponents returns the error fields from an xml error response body +// in which error code, and message are wrapped by a tag +func GetWrappedErrorResponseComponents(r io.Reader) (ErrorComponents, error) { + var errComponents struct { + Code string `xml:"Error>Code"` + Message string `xml:"Error>Message"` + RequestID string `xml:"RequestId"` + HostID string `xml:"HostId"` + } + + if err := xml.NewDecoder(r).Decode(&errComponents); err != nil && err != io.EOF { + return ErrorComponents{}, fmt.Errorf("error while deserializing xml error response : %w", err) + } + + return ErrorComponents{ + Code: errComponents.Code, + Message: errComponents.Message, + RequestID: errComponents.RequestID, + HostID: errComponents.HostID, + }, nil +} + +// GetErrorResponseComponents retrieves error components according to passed in options +func GetErrorResponseComponents(r io.Reader, options ErrorResponseDeserializerOptions) (ErrorComponents, error) { + var errComponents ErrorComponents + var err error + + if options.IsWrappedWithErrorTag { + errComponents, err = GetWrappedErrorResponseComponents(r) + } else { + errComponents, err = GetUnwrappedErrorResponseComponents(r) + } + if err != nil { return ErrorComponents{}, err } - // for S3 service, we derive err code and message, if none is found - if len(errComponents.Code) == 0 && len(errComponents.Message) == 0 { + // If an error code or message is not retrieved, it is derived from the http status code + // eg, for S3 service, we derive err code and message, if none is found + if options.UseStatusCode && len(errComponents.Code) == 0 && + len(errComponents.Message) == 0 { // derive code and message from status code - statusText := http.StatusText(statusCode) + statusText := http.StatusText(options.StatusCode) errComponents.Code = strings.Replace(statusText, " ", "", -1) errComponents.Message = statusText } return errComponents, nil } + +type ErrorResponseDeserializerOptions struct { + // UseStatusCode denotes if status code should be used to retrieve error code, msg + UseStatusCode bool + + // StatusCode is status code of error response + StatusCode int + + //IsWrappedWithErrorTag represents if error response's code, msg is wrapped within an + // additional tag + IsWrappedWithErrorTag bool +} diff --git a/service/internal/s3shared/xml_utils_test.go b/service/internal/s3shared/xml_utils_test.go index c0f9883d6e2..591f2c6067a 100644 --- a/service/internal/s3shared/xml_utils_test.go +++ b/service/internal/s3shared/xml_utils_test.go @@ -14,6 +14,15 @@ func TestGetResponseErrorCode(t *testing.T) { foo-id ` + const wrappedXmlErrorResponse = ` + Sender + InvalidGreeting + Hi + + bar-id + foo-id +` + cases := map[string]struct { getErr func() (ErrorComponents, error) expectedErrorCode string @@ -24,7 +33,11 @@ func TestGetResponseErrorCode(t *testing.T) { "standard xml error": { getErr: func() (ErrorComponents, error) { errResp := strings.NewReader(xmlErrorResponse) - return GetErrorResponseComponents(errResp) + return GetErrorResponseComponents(errResp, ErrorResponseDeserializerOptions{ + UseStatusCode: false, + StatusCode: 0, + IsWrappedWithErrorTag: false, + }) }, expectedErrorCode: "InvalidGreeting", expectedErrorMessage: "Hi", @@ -35,7 +48,10 @@ func TestGetResponseErrorCode(t *testing.T) { "s3 no response body": { getErr: func() (ErrorComponents, error) { errResp := strings.NewReader("") - return GetS3ErrorResponseComponents(errResp, 400) + return GetErrorResponseComponents(errResp, ErrorResponseDeserializerOptions{ + UseStatusCode: true, + StatusCode: 400, + }) }, expectedErrorCode: "BadRequest", expectedErrorMessage: "Bad Request", @@ -43,9 +59,23 @@ func TestGetResponseErrorCode(t *testing.T) { "s3control no response body": { getErr: func() (ErrorComponents, error) { errResp := strings.NewReader("") - return GetErrorResponseComponents(errResp) + return GetErrorResponseComponents(errResp, ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) }, }, + "s3control standard response body": { + getErr: func() (ErrorComponents, error) { + errResp := strings.NewReader(wrappedXmlErrorResponse) + return GetErrorResponseComponents(errResp, ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) + }, + expectedErrorCode: "InvalidGreeting", + expectedErrorMessage: "Hi", + expectedErrorRequestID: "foo-id", + expectedErrorHostID: "bar-id", + }, } for name, c := range cases { From 173b48ae18fb9fb7b39cbad6d0f4bb0141acae30 Mon Sep 17 00:00:00 2001 From: skotambkar Date: Tue, 3 Nov 2020 10:56:42 -0800 Subject: [PATCH 2/4] generated s3,s3control deserializer changes --- service/s3/deserializers.go | 344 +++++++++++++++++++++-------- service/s3control/deserializers.go | 128 ++++++++--- 2 files changed, 354 insertions(+), 118 deletions(-) diff --git a/service/s3/deserializers.go b/service/s3/deserializers.go index 1b8b758b369..3f9484ef42c 100644 --- a/service/s3/deserializers.go +++ b/service/s3/deserializers.go @@ -66,7 +66,9 @@ func awsRestxml_deserializeOpErrorAbortMultipartUpload(response *smithyhttp.Resp errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -182,7 +184,9 @@ func awsRestxml_deserializeOpErrorCompleteMultipartUpload(response *smithyhttp.R errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -410,7 +414,9 @@ func awsRestxml_deserializeOpErrorCopyObject(response *smithyhttp.Response, meta errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -575,7 +581,9 @@ func awsRestxml_deserializeOpErrorCreateBucket(response *smithyhttp.Response, me errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -694,7 +702,9 @@ func awsRestxml_deserializeOpErrorCreateMultipartUpload(response *smithyhttp.Res errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -892,7 +902,9 @@ func awsRestxml_deserializeOpErrorDeleteBucket(response *smithyhttp.Response, me errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -959,7 +971,9 @@ func awsRestxml_deserializeOpErrorDeleteBucketAnalyticsConfiguration(response *s errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -1026,7 +1040,9 @@ func awsRestxml_deserializeOpErrorDeleteBucketCors(response *smithyhttp.Response errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -1093,7 +1109,9 @@ func awsRestxml_deserializeOpErrorDeleteBucketEncryption(response *smithyhttp.Re errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -1160,7 +1178,9 @@ func awsRestxml_deserializeOpErrorDeleteBucketInventoryConfiguration(response *s errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -1227,7 +1247,9 @@ func awsRestxml_deserializeOpErrorDeleteBucketLifecycle(response *smithyhttp.Res errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -1294,7 +1316,9 @@ func awsRestxml_deserializeOpErrorDeleteBucketMetricsConfiguration(response *smi errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -1361,7 +1385,9 @@ func awsRestxml_deserializeOpErrorDeleteBucketOwnershipControls(response *smithy errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -1428,7 +1454,9 @@ func awsRestxml_deserializeOpErrorDeleteBucketPolicy(response *smithyhttp.Respon errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -1495,7 +1523,9 @@ func awsRestxml_deserializeOpErrorDeleteBucketReplication(response *smithyhttp.R errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -1562,7 +1592,9 @@ func awsRestxml_deserializeOpErrorDeleteBucketTagging(response *smithyhttp.Respo errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -1629,7 +1661,9 @@ func awsRestxml_deserializeOpErrorDeleteBucketWebsite(response *smithyhttp.Respo errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -1701,7 +1735,9 @@ func awsRestxml_deserializeOpErrorDeleteObject(response *smithyhttp.Response, me errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -1828,7 +1864,9 @@ func awsRestxml_deserializeOpErrorDeleteObjects(response *smithyhttp.Response, m errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -1956,7 +1994,9 @@ func awsRestxml_deserializeOpErrorDeleteObjectTagging(response *smithyhttp.Respo errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -2036,7 +2076,9 @@ func awsRestxml_deserializeOpErrorDeletePublicAccessBlock(response *smithyhttp.R errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -2131,7 +2173,9 @@ func awsRestxml_deserializeOpErrorGetBucketAccelerateConfiguration(response *smi errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -2271,7 +2315,9 @@ func awsRestxml_deserializeOpErrorGetBucketAcl(response *smithyhttp.Response, me errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -2410,7 +2456,9 @@ func awsRestxml_deserializeOpErrorGetBucketAnalyticsConfiguration(response *smit errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -2543,7 +2591,9 @@ func awsRestxml_deserializeOpErrorGetBucketCors(response *smithyhttp.Response, m errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -2676,7 +2726,9 @@ func awsRestxml_deserializeOpErrorGetBucketEncryption(response *smithyhttp.Respo errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -2809,7 +2861,9 @@ func awsRestxml_deserializeOpErrorGetBucketInventoryConfiguration(response *smit errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -2942,7 +2996,9 @@ func awsRestxml_deserializeOpErrorGetBucketLifecycleConfiguration(response *smit errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -3075,7 +3131,9 @@ func awsRestxml_deserializeOpErrorGetBucketLocation(response *smithyhttp.Respons errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -3215,7 +3273,9 @@ func awsRestxml_deserializeOpErrorGetBucketLogging(response *smithyhttp.Response errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -3348,7 +3408,9 @@ func awsRestxml_deserializeOpErrorGetBucketMetricsConfiguration(response *smithy errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -3481,7 +3543,9 @@ func awsRestxml_deserializeOpErrorGetBucketNotificationConfiguration(response *s errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -3626,7 +3690,9 @@ func awsRestxml_deserializeOpErrorGetBucketOwnershipControls(response *smithyhtt errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -3759,7 +3825,9 @@ func awsRestxml_deserializeOpErrorGetBucketPolicy(response *smithyhttp.Response, errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -3902,7 +3970,9 @@ func awsRestxml_deserializeOpErrorGetBucketPolicyStatus(response *smithyhttp.Res errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -4035,7 +4105,9 @@ func awsRestxml_deserializeOpErrorGetBucketReplication(response *smithyhttp.Resp errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -4168,7 +4240,9 @@ func awsRestxml_deserializeOpErrorGetBucketRequestPayment(response *smithyhttp.R errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -4308,7 +4382,9 @@ func awsRestxml_deserializeOpErrorGetBucketTagging(response *smithyhttp.Response errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -4441,7 +4517,9 @@ func awsRestxml_deserializeOpErrorGetBucketVersioning(response *smithyhttp.Respo errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -4594,7 +4672,9 @@ func awsRestxml_deserializeOpErrorGetBucketWebsite(response *smithyhttp.Response errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -4727,7 +4807,9 @@ func awsRestxml_deserializeOpErrorGetObject(response *smithyhttp.Response, metad errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -5032,7 +5114,9 @@ func awsRestxml_deserializeOpErrorGetObjectAcl(response *smithyhttp.Response, me errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -5186,7 +5270,9 @@ func awsRestxml_deserializeOpErrorGetObjectLegalHold(response *smithyhttp.Respon errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -5319,7 +5405,9 @@ func awsRestxml_deserializeOpErrorGetObjectLockConfiguration(response *smithyhtt errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -5452,7 +5540,9 @@ func awsRestxml_deserializeOpErrorGetObjectRetention(response *smithyhttp.Respon errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -5590,7 +5680,9 @@ func awsRestxml_deserializeOpErrorGetObjectTagging(response *smithyhttp.Response errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -5717,7 +5809,9 @@ func awsRestxml_deserializeOpErrorGetObjectTorrent(response *smithyhttp.Response errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -5832,7 +5926,9 @@ func awsRestxml_deserializeOpErrorGetPublicAccessBlock(response *smithyhttp.Resp errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -5937,7 +6033,9 @@ func awsRestxml_deserializeOpErrorHeadBucket(response *smithyhttp.Response, meta errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -6012,7 +6110,9 @@ func awsRestxml_deserializeOpErrorHeadObject(response *smithyhttp.Response, meta errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -6288,7 +6388,9 @@ func awsRestxml_deserializeOpErrorListBucketAnalyticsConfigurations(response *sm errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -6469,7 +6571,9 @@ func awsRestxml_deserializeOpErrorListBucketInventoryConfigurations(response *sm errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -6650,7 +6754,9 @@ func awsRestxml_deserializeOpErrorListBucketMetricsConfigurations(response *smit errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -6831,7 +6937,9 @@ func awsRestxml_deserializeOpErrorListBuckets(response *smithyhttp.Response, met errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -6970,7 +7078,9 @@ func awsRestxml_deserializeOpErrorListMultipartUploads(response *smithyhttp.Resp errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -7267,7 +7377,9 @@ func awsRestxml_deserializeOpErrorListObjects(response *smithyhttp.Response, met errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -7535,7 +7647,9 @@ func awsRestxml_deserializeOpErrorListObjectsV2(response *smithyhttp.Response, m errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -7836,7 +7950,9 @@ func awsRestxml_deserializeOpErrorListObjectVersions(response *smithyhttp.Respon errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -8144,7 +8260,9 @@ func awsRestxml_deserializeOpErrorListParts(response *smithyhttp.Response, metad errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -8415,7 +8533,9 @@ func awsRestxml_deserializeOpErrorPutBucketAccelerateConfiguration(response *smi errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -8482,7 +8602,9 @@ func awsRestxml_deserializeOpErrorPutBucketAcl(response *smithyhttp.Response, me errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -8549,7 +8671,9 @@ func awsRestxml_deserializeOpErrorPutBucketAnalyticsConfiguration(response *smit errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -8616,7 +8740,9 @@ func awsRestxml_deserializeOpErrorPutBucketCors(response *smithyhttp.Response, m errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -8683,7 +8809,9 @@ func awsRestxml_deserializeOpErrorPutBucketEncryption(response *smithyhttp.Respo errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -8750,7 +8878,9 @@ func awsRestxml_deserializeOpErrorPutBucketInventoryConfiguration(response *smit errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -8817,7 +8947,9 @@ func awsRestxml_deserializeOpErrorPutBucketLifecycleConfiguration(response *smit errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -8884,7 +9016,9 @@ func awsRestxml_deserializeOpErrorPutBucketLogging(response *smithyhttp.Response errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -8951,7 +9085,9 @@ func awsRestxml_deserializeOpErrorPutBucketMetricsConfiguration(response *smithy errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -9018,7 +9154,9 @@ func awsRestxml_deserializeOpErrorPutBucketNotificationConfiguration(response *s errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -9085,7 +9223,9 @@ func awsRestxml_deserializeOpErrorPutBucketOwnershipControls(response *smithyhtt errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -9152,7 +9292,9 @@ func awsRestxml_deserializeOpErrorPutBucketPolicy(response *smithyhttp.Response, errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -9219,7 +9361,9 @@ func awsRestxml_deserializeOpErrorPutBucketReplication(response *smithyhttp.Resp errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -9286,7 +9430,9 @@ func awsRestxml_deserializeOpErrorPutBucketRequestPayment(response *smithyhttp.R errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -9353,7 +9499,9 @@ func awsRestxml_deserializeOpErrorPutBucketTagging(response *smithyhttp.Response errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -9420,7 +9568,9 @@ func awsRestxml_deserializeOpErrorPutBucketVersioning(response *smithyhttp.Respo errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -9487,7 +9637,9 @@ func awsRestxml_deserializeOpErrorPutBucketWebsite(response *smithyhttp.Response errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -9559,7 +9711,9 @@ func awsRestxml_deserializeOpErrorPutObject(response *smithyhttp.Response, metad errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -9684,7 +9838,9 @@ func awsRestxml_deserializeOpErrorPutObjectAcl(response *smithyhttp.Response, me errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -9772,7 +9928,9 @@ func awsRestxml_deserializeOpErrorPutObjectLegalHold(response *smithyhttp.Respon errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -9857,7 +10015,9 @@ func awsRestxml_deserializeOpErrorPutObjectLockConfiguration(response *smithyhtt errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -9942,7 +10102,9 @@ func awsRestxml_deserializeOpErrorPutObjectRetention(response *smithyhttp.Respon errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -10027,7 +10189,9 @@ func awsRestxml_deserializeOpErrorPutObjectTagging(response *smithyhttp.Response errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -10107,7 +10271,9 @@ func awsRestxml_deserializeOpErrorPutPublicAccessBlock(response *smithyhttp.Resp errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -10179,7 +10345,9 @@ func awsRestxml_deserializeOpErrorRestoreObject(response *smithyhttp.Response, m errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -10272,7 +10440,9 @@ func awsRestxml_deserializeOpErrorUploadPart(response *smithyhttp.Response, meta errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } @@ -10410,7 +10580,9 @@ func awsRestxml_deserializeOpErrorUploadPartCopy(response *smithyhttp.Response, errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetS3ErrorResponseComponents(errorBody, response.StatusCode) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + UseStatusCode: true, StatusCode: response.StatusCode, + }) if err != nil { return err } diff --git a/service/s3control/deserializers.go b/service/s3control/deserializers.go index 89eb3b5e23d..f8fa418a14b 100644 --- a/service/s3control/deserializers.go +++ b/service/s3control/deserializers.go @@ -89,7 +89,9 @@ func awsRestxml_deserializeOpErrorCreateAccessPoint(response *smithyhttp.Respons errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -237,7 +239,9 @@ func awsRestxml_deserializeOpErrorCreateBucket(response *smithyhttp.Response, me errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -398,7 +402,9 @@ func awsRestxml_deserializeOpErrorCreateJob(response *smithyhttp.Response, metad errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -525,7 +531,9 @@ func awsRestxml_deserializeOpErrorDeleteAccessPoint(response *smithyhttp.Respons errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -592,7 +600,9 @@ func awsRestxml_deserializeOpErrorDeleteAccessPointPolicy(response *smithyhttp.R errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -659,7 +669,9 @@ func awsRestxml_deserializeOpErrorDeleteBucket(response *smithyhttp.Response, me errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -726,7 +738,9 @@ func awsRestxml_deserializeOpErrorDeleteBucketLifecycleConfiguration(response *s errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -793,7 +807,9 @@ func awsRestxml_deserializeOpErrorDeleteBucketPolicy(response *smithyhttp.Respon errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -860,7 +876,9 @@ func awsRestxml_deserializeOpErrorDeleteBucketTagging(response *smithyhttp.Respo errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -927,7 +945,9 @@ func awsRestxml_deserializeOpErrorDeleteJobTagging(response *smithyhttp.Response errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -1003,7 +1023,9 @@ func awsRestxml_deserializeOpErrorDeletePublicAccessBlock(response *smithyhttp.R errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -1098,7 +1120,9 @@ func awsRestxml_deserializeOpErrorDescribeJob(response *smithyhttp.Response, met errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -1243,7 +1267,9 @@ func awsRestxml_deserializeOpErrorGetAccessPoint(response *smithyhttp.Response, errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -1444,7 +1470,9 @@ func awsRestxml_deserializeOpErrorGetAccessPointPolicy(response *smithyhttp.Resp errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -1587,7 +1615,9 @@ func awsRestxml_deserializeOpErrorGetAccessPointPolicyStatus(response *smithyhtt errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -1720,7 +1750,9 @@ func awsRestxml_deserializeOpErrorGetBucket(response *smithyhttp.Response, metad errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -1896,7 +1928,9 @@ func awsRestxml_deserializeOpErrorGetBucketLifecycleConfiguration(response *smit errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -2029,7 +2063,9 @@ func awsRestxml_deserializeOpErrorGetBucketPolicy(response *smithyhttp.Response, errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -2172,7 +2208,9 @@ func awsRestxml_deserializeOpErrorGetBucketTagging(response *smithyhttp.Response errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -2305,7 +2343,9 @@ func awsRestxml_deserializeOpErrorGetJobTagging(response *smithyhttp.Response, m errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -2447,7 +2487,9 @@ func awsRestxml_deserializeOpErrorGetPublicAccessBlock(response *smithyhttp.Resp errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -2583,7 +2625,9 @@ func awsRestxml_deserializeOpErrorListAccessPoints(response *smithyhttp.Response errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -2732,7 +2776,9 @@ func awsRestxml_deserializeOpErrorListJobs(response *smithyhttp.Response, metada errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -2890,7 +2936,9 @@ func awsRestxml_deserializeOpErrorListRegionalBuckets(response *smithyhttp.Respo errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -3011,7 +3059,9 @@ func awsRestxml_deserializeOpErrorPutAccessPointPolicy(response *smithyhttp.Resp errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -3078,7 +3128,9 @@ func awsRestxml_deserializeOpErrorPutBucketLifecycleConfiguration(response *smit errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -3145,7 +3197,9 @@ func awsRestxml_deserializeOpErrorPutBucketPolicy(response *smithyhttp.Response, errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -3212,7 +3266,9 @@ func awsRestxml_deserializeOpErrorPutBucketTagging(response *smithyhttp.Response errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -3279,7 +3335,9 @@ func awsRestxml_deserializeOpErrorPutJobTagging(response *smithyhttp.Response, m errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -3358,7 +3416,9 @@ func awsRestxml_deserializeOpErrorPutPublicAccessBlock(response *smithyhttp.Resp errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -3453,7 +3513,9 @@ func awsRestxml_deserializeOpErrorUpdateJobPriority(response *smithyhttp.Respons errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } @@ -3625,7 +3687,9 @@ func awsRestxml_deserializeOpErrorUpdateJobStatus(response *smithyhttp.Response, errorCode := "UnknownError" errorMessage := errorCode - errorComponents, err := s3shared.GetErrorResponseComponents(errorBody) + errorComponents, err := s3shared.GetErrorResponseComponents(errorBody, s3shared.ErrorResponseDeserializerOptions{ + IsWrappedWithErrorTag: true, + }) if err != nil { return err } From 051b01523e79f6498c6e80feb9be30977e622666 Mon Sep 17 00:00:00 2001 From: skotambkar Date: Sat, 7 Nov 2020 20:32:57 -0800 Subject: [PATCH 3/4] golint fix --- service/internal/s3shared/xml_utils.go | 3 ++- service/internal/s3shared/xml_utils_test.go | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/service/internal/s3shared/xml_utils.go b/service/internal/s3shared/xml_utils.go index f019120aae4..65fd07e0006 100644 --- a/service/internal/s3shared/xml_utils.go +++ b/service/internal/s3shared/xml_utils.go @@ -26,7 +26,7 @@ func GetUnwrappedErrorResponseComponents(r io.Reader) (ErrorComponents, error) { return errComponents, nil } -// GetErrorResponseComponents returns the error fields from an xml error response body +// GetWrappedErrorResponseComponents returns the error fields from an xml error response body // in which error code, and message are wrapped by a tag func GetWrappedErrorResponseComponents(r io.Reader) (ErrorComponents, error) { var errComponents struct { @@ -75,6 +75,7 @@ func GetErrorResponseComponents(r io.Reader, options ErrorResponseDeserializerOp return errComponents, nil } +// ErrorResponseDeserializerOptions represents error response deserializer options for s3 and s3-control service type ErrorResponseDeserializerOptions struct { // UseStatusCode denotes if status code should be used to retrieve error code, msg UseStatusCode bool diff --git a/service/internal/s3shared/xml_utils_test.go b/service/internal/s3shared/xml_utils_test.go index 591f2c6067a..345f67616aa 100644 --- a/service/internal/s3shared/xml_utils_test.go +++ b/service/internal/s3shared/xml_utils_test.go @@ -14,7 +14,7 @@ func TestGetResponseErrorCode(t *testing.T) { foo-id ` - const wrappedXmlErrorResponse = ` + const wrappedXMLErrorResponse = ` Sender InvalidGreeting Hi From e0273947bed7d3f00037c265b8c6e7669bf74f56 Mon Sep 17 00:00:00 2001 From: skotambkar Date: Sat, 7 Nov 2020 20:37:05 -0800 Subject: [PATCH 4/4] gobuild fix --- service/internal/s3shared/xml_utils_test.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/service/internal/s3shared/xml_utils_test.go b/service/internal/s3shared/xml_utils_test.go index 345f67616aa..6d7efaabf96 100644 --- a/service/internal/s3shared/xml_utils_test.go +++ b/service/internal/s3shared/xml_utils_test.go @@ -66,7 +66,7 @@ func TestGetResponseErrorCode(t *testing.T) { }, "s3control standard response body": { getErr: func() (ErrorComponents, error) { - errResp := strings.NewReader(wrappedXmlErrorResponse) + errResp := strings.NewReader(wrappedXMLErrorResponse) return GetErrorResponseComponents(errResp, ErrorResponseDeserializerOptions{ IsWrappedWithErrorTag: true, })