// Code generated by smithy-go-codegen DO NOT EDIT. package restxml import ( "bytes" "context" "encoding/base64" "encoding/xml" "fmt" awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" awsxml "github.com/aws/aws-sdk-go-v2/aws/protocol/xml" "github.com/aws/aws-sdk-go-v2/internal/protocoltest/restxml/types" smithy "github.com/aws/smithy-go" smithyxml "github.com/aws/smithy-go/encoding/xml" smithyio "github.com/aws/smithy-go/io" "github.com/aws/smithy-go/middleware" "github.com/aws/smithy-go/ptr" smithytime "github.com/aws/smithy-go/time" smithyhttp "github.com/aws/smithy-go/transport/http" "io" "io/ioutil" "strconv" "strings" "time" ) type awsRestxml_deserializeOpAllQueryStringTypes struct { } func (*awsRestxml_deserializeOpAllQueryStringTypes) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpAllQueryStringTypes) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorAllQueryStringTypes(response, &metadata) } output := &AllQueryStringTypesOutput{} out.Result = output if _, err = io.Copy(ioutil.Discard, response.Body); err != nil { return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to discard response body, %w", err), } } return out, metadata, err } func awsRestxml_deserializeOpErrorAllQueryStringTypes(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } type awsRestxml_deserializeOpConstantAndVariableQueryString struct { } func (*awsRestxml_deserializeOpConstantAndVariableQueryString) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpConstantAndVariableQueryString) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorConstantAndVariableQueryString(response, &metadata) } output := &ConstantAndVariableQueryStringOutput{} out.Result = output if _, err = io.Copy(ioutil.Discard, response.Body); err != nil { return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to discard response body, %w", err), } } return out, metadata, err } func awsRestxml_deserializeOpErrorConstantAndVariableQueryString(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } type awsRestxml_deserializeOpConstantQueryString struct { } func (*awsRestxml_deserializeOpConstantQueryString) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpConstantQueryString) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorConstantQueryString(response, &metadata) } output := &ConstantQueryStringOutput{} out.Result = output if _, err = io.Copy(ioutil.Discard, response.Body); err != nil { return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to discard response body, %w", err), } } return out, metadata, err } func awsRestxml_deserializeOpErrorConstantQueryString(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } type awsRestxml_deserializeOpEmptyInputAndEmptyOutput struct { } func (*awsRestxml_deserializeOpEmptyInputAndEmptyOutput) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpEmptyInputAndEmptyOutput) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorEmptyInputAndEmptyOutput(response, &metadata) } output := &EmptyInputAndEmptyOutputOutput{} out.Result = output return out, metadata, err } func awsRestxml_deserializeOpErrorEmptyInputAndEmptyOutput(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } type awsRestxml_deserializeOpFlattenedXmlMap struct { } func (*awsRestxml_deserializeOpFlattenedXmlMap) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpFlattenedXmlMap) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorFlattenedXmlMap(response, &metadata) } output := &FlattenedXmlMapOutput{} out.Result = output var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(response.Body, ringBuffer) rootDecoder := xml.NewDecoder(body) t, err := smithyxml.FetchRootElement(rootDecoder) if err == io.EOF { return out, metadata, nil } if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) err = awsRestxml_deserializeOpDocumentFlattenedXmlMapOutput(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } return out, metadata, err } func awsRestxml_deserializeOpErrorFlattenedXmlMap(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpDocumentFlattenedXmlMapOutput(v **FlattenedXmlMapOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *FlattenedXmlMapOutput if *v == nil { sv = &FlattenedXmlMapOutput{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("myMap", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentFooEnumMapUnwrapped(&sv.MyMap, nodeDecoder); err != nil { return err } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } type awsRestxml_deserializeOpFlattenedXmlMapWithXmlName struct { } func (*awsRestxml_deserializeOpFlattenedXmlMapWithXmlName) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpFlattenedXmlMapWithXmlName) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorFlattenedXmlMapWithXmlName(response, &metadata) } output := &FlattenedXmlMapWithXmlNameOutput{} out.Result = output var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(response.Body, ringBuffer) rootDecoder := xml.NewDecoder(body) t, err := smithyxml.FetchRootElement(rootDecoder) if err == io.EOF { return out, metadata, nil } if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) err = awsRestxml_deserializeOpDocumentFlattenedXmlMapWithXmlNameOutput(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } return out, metadata, err } func awsRestxml_deserializeOpErrorFlattenedXmlMapWithXmlName(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpDocumentFlattenedXmlMapWithXmlNameOutput(v **FlattenedXmlMapWithXmlNameOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *FlattenedXmlMapWithXmlNameOutput if *v == nil { sv = &FlattenedXmlMapWithXmlNameOutput{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("KVP", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentFlattenedXmlMapWithXmlNameInputOutputMapUnwrapped(&sv.MyMap, nodeDecoder); err != nil { return err } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } type awsRestxml_deserializeOpFlattenedXmlMapWithXmlNamespace struct { } func (*awsRestxml_deserializeOpFlattenedXmlMapWithXmlNamespace) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpFlattenedXmlMapWithXmlNamespace) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorFlattenedXmlMapWithXmlNamespace(response, &metadata) } output := &FlattenedXmlMapWithXmlNamespaceOutput{} out.Result = output var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(response.Body, ringBuffer) rootDecoder := xml.NewDecoder(body) t, err := smithyxml.FetchRootElement(rootDecoder) if err == io.EOF { return out, metadata, nil } if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) err = awsRestxml_deserializeOpDocumentFlattenedXmlMapWithXmlNamespaceOutput(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } return out, metadata, err } func awsRestxml_deserializeOpErrorFlattenedXmlMapWithXmlNamespace(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpDocumentFlattenedXmlMapWithXmlNamespaceOutput(v **FlattenedXmlMapWithXmlNamespaceOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *FlattenedXmlMapWithXmlNamespaceOutput if *v == nil { sv = &FlattenedXmlMapWithXmlNamespaceOutput{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("KVP", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentFlattenedXmlMapWithXmlNamespaceOutputMapUnwrapped(&sv.MyMap, nodeDecoder); err != nil { return err } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } type awsRestxml_deserializeOpGreetingWithErrors struct { } func (*awsRestxml_deserializeOpGreetingWithErrors) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpGreetingWithErrors) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorGreetingWithErrors(response, &metadata) } output := &GreetingWithErrorsOutput{} out.Result = output err = awsRestxml_deserializeOpHttpBindingsGreetingWithErrorsOutput(output, response) if err != nil { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("failed to decode response with invalid Http bindings, %w", err)} } return out, metadata, err } func awsRestxml_deserializeOpErrorGreetingWithErrors(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { case strings.EqualFold("ComplexError", errorCode): return awsRestxml_deserializeErrorComplexError(response, errorBody) case strings.EqualFold("InvalidGreeting", errorCode): return awsRestxml_deserializeErrorInvalidGreeting(response, errorBody) default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpHttpBindingsGreetingWithErrorsOutput(v *GreetingWithErrorsOutput, response *smithyhttp.Response) error { if v == nil { return fmt.Errorf("unsupported deserialization for nil %T", v) } if headerValues := response.Header.Values("X-Greeting"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) v.Greeting = ptr.String(headerValues[0]) } return nil } type awsRestxml_deserializeOpHttpPayloadTraits struct { } func (*awsRestxml_deserializeOpHttpPayloadTraits) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpHttpPayloadTraits) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorHttpPayloadTraits(response, &metadata) } output := &HttpPayloadTraitsOutput{} out.Result = output err = awsRestxml_deserializeOpHttpBindingsHttpPayloadTraitsOutput(output, response) if err != nil { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("failed to decode response with invalid Http bindings, %w", err)} } err = awsRestxml_deserializeOpDocumentHttpPayloadTraitsOutput(output, response.Body) if err != nil { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("failed to deserialize response payload, %w", err)} } return out, metadata, err } func awsRestxml_deserializeOpErrorHttpPayloadTraits(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpHttpBindingsHttpPayloadTraitsOutput(v *HttpPayloadTraitsOutput, response *smithyhttp.Response) error { if v == nil { return fmt.Errorf("unsupported deserialization for nil %T", v) } if headerValues := response.Header.Values("X-Foo"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) v.Foo = ptr.String(headerValues[0]) } return nil } func awsRestxml_deserializeOpDocumentHttpPayloadTraitsOutput(v *HttpPayloadTraitsOutput, body io.ReadCloser) error { if v == nil { return fmt.Errorf("unsupported deserialization of nil %T", v) } bs, err := ioutil.ReadAll(body) if err != nil { return err } if len(bs) > 0 { v.Blob = bs } return nil } type awsRestxml_deserializeOpHttpPayloadTraitsWithMediaType struct { } func (*awsRestxml_deserializeOpHttpPayloadTraitsWithMediaType) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpHttpPayloadTraitsWithMediaType) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorHttpPayloadTraitsWithMediaType(response, &metadata) } output := &HttpPayloadTraitsWithMediaTypeOutput{} out.Result = output err = awsRestxml_deserializeOpHttpBindingsHttpPayloadTraitsWithMediaTypeOutput(output, response) if err != nil { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("failed to decode response with invalid Http bindings, %w", err)} } err = awsRestxml_deserializeOpDocumentHttpPayloadTraitsWithMediaTypeOutput(output, response.Body) if err != nil { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("failed to deserialize response payload, %w", err)} } return out, metadata, err } func awsRestxml_deserializeOpErrorHttpPayloadTraitsWithMediaType(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpHttpBindingsHttpPayloadTraitsWithMediaTypeOutput(v *HttpPayloadTraitsWithMediaTypeOutput, response *smithyhttp.Response) error { if v == nil { return fmt.Errorf("unsupported deserialization for nil %T", v) } if headerValues := response.Header.Values("X-Foo"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) v.Foo = ptr.String(headerValues[0]) } return nil } func awsRestxml_deserializeOpDocumentHttpPayloadTraitsWithMediaTypeOutput(v *HttpPayloadTraitsWithMediaTypeOutput, body io.ReadCloser) error { if v == nil { return fmt.Errorf("unsupported deserialization of nil %T", v) } bs, err := ioutil.ReadAll(body) if err != nil { return err } if len(bs) > 0 { v.Blob = bs } return nil } type awsRestxml_deserializeOpHttpPayloadWithStructure struct { } func (*awsRestxml_deserializeOpHttpPayloadWithStructure) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpHttpPayloadWithStructure) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorHttpPayloadWithStructure(response, &metadata) } output := &HttpPayloadWithStructureOutput{} out.Result = output var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(response.Body, ringBuffer) rootDecoder := xml.NewDecoder(body) t, err := smithyxml.FetchRootElement(rootDecoder) if err == io.EOF { return out, metadata, nil } if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) err = awsRestxml_deserializeDocumentNestedPayload(&output.Nested, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } return out, metadata, err } func awsRestxml_deserializeOpErrorHttpPayloadWithStructure(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpDocumentHttpPayloadWithStructureOutput(v **HttpPayloadWithStructureOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *HttpPayloadWithStructureOutput if *v == nil { sv = &HttpPayloadWithStructureOutput{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("nested", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentNestedPayload(&sv.Nested, nodeDecoder); err != nil { return err } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } type awsRestxml_deserializeOpHttpPayloadWithXmlName struct { } func (*awsRestxml_deserializeOpHttpPayloadWithXmlName) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpHttpPayloadWithXmlName) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorHttpPayloadWithXmlName(response, &metadata) } output := &HttpPayloadWithXmlNameOutput{} out.Result = output var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(response.Body, ringBuffer) rootDecoder := xml.NewDecoder(body) t, err := smithyxml.FetchRootElement(rootDecoder) if err == io.EOF { return out, metadata, nil } if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) err = awsRestxml_deserializeDocumentPayloadWithXmlName(&output.Nested, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } return out, metadata, err } func awsRestxml_deserializeOpErrorHttpPayloadWithXmlName(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpDocumentHttpPayloadWithXmlNameOutput(v **HttpPayloadWithXmlNameOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *HttpPayloadWithXmlNameOutput if *v == nil { sv = &HttpPayloadWithXmlNameOutput{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("nested", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentPayloadWithXmlName(&sv.Nested, nodeDecoder); err != nil { return err } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } type awsRestxml_deserializeOpHttpPayloadWithXmlNamespace struct { } func (*awsRestxml_deserializeOpHttpPayloadWithXmlNamespace) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpHttpPayloadWithXmlNamespace) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorHttpPayloadWithXmlNamespace(response, &metadata) } output := &HttpPayloadWithXmlNamespaceOutput{} out.Result = output var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(response.Body, ringBuffer) rootDecoder := xml.NewDecoder(body) t, err := smithyxml.FetchRootElement(rootDecoder) if err == io.EOF { return out, metadata, nil } if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) err = awsRestxml_deserializeDocumentPayloadWithXmlNamespace(&output.Nested, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } return out, metadata, err } func awsRestxml_deserializeOpErrorHttpPayloadWithXmlNamespace(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpDocumentHttpPayloadWithXmlNamespaceOutput(v **HttpPayloadWithXmlNamespaceOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *HttpPayloadWithXmlNamespaceOutput if *v == nil { sv = &HttpPayloadWithXmlNamespaceOutput{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("nested", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentPayloadWithXmlNamespace(&sv.Nested, nodeDecoder); err != nil { return err } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } type awsRestxml_deserializeOpHttpPayloadWithXmlNamespaceAndPrefix struct { } func (*awsRestxml_deserializeOpHttpPayloadWithXmlNamespaceAndPrefix) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpHttpPayloadWithXmlNamespaceAndPrefix) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorHttpPayloadWithXmlNamespaceAndPrefix(response, &metadata) } output := &HttpPayloadWithXmlNamespaceAndPrefixOutput{} out.Result = output var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(response.Body, ringBuffer) rootDecoder := xml.NewDecoder(body) t, err := smithyxml.FetchRootElement(rootDecoder) if err == io.EOF { return out, metadata, nil } if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) err = awsRestxml_deserializeDocumentPayloadWithXmlNamespaceAndPrefix(&output.Nested, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } return out, metadata, err } func awsRestxml_deserializeOpErrorHttpPayloadWithXmlNamespaceAndPrefix(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpDocumentHttpPayloadWithXmlNamespaceAndPrefixOutput(v **HttpPayloadWithXmlNamespaceAndPrefixOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *HttpPayloadWithXmlNamespaceAndPrefixOutput if *v == nil { sv = &HttpPayloadWithXmlNamespaceAndPrefixOutput{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("nested", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentPayloadWithXmlNamespaceAndPrefix(&sv.Nested, nodeDecoder); err != nil { return err } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } type awsRestxml_deserializeOpHttpPrefixHeaders struct { } func (*awsRestxml_deserializeOpHttpPrefixHeaders) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpHttpPrefixHeaders) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorHttpPrefixHeaders(response, &metadata) } output := &HttpPrefixHeadersOutput{} out.Result = output err = awsRestxml_deserializeOpHttpBindingsHttpPrefixHeadersOutput(output, response) if err != nil { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("failed to decode response with invalid Http bindings, %w", err)} } return out, metadata, err } func awsRestxml_deserializeOpErrorHttpPrefixHeaders(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpHttpBindingsHttpPrefixHeadersOutput(v *HttpPrefixHeadersOutput, response *smithyhttp.Response) error { if v == nil { return fmt.Errorf("unsupported deserialization for nil %T", v) } if headerValues := response.Header.Values("X-Foo"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) v.Foo = ptr.String(headerValues[0]) } for headerKey, headerValues := range response.Header { if lenPrefix := len("X-Foo-"); len(headerKey) >= lenPrefix && strings.EqualFold(headerKey[:lenPrefix], "X-Foo-") { if v.FooMap == nil { v.FooMap = map[string]string{} } headerValues[0] = strings.TrimSpace(headerValues[0]) v.FooMap[strings.ToLower(headerKey[lenPrefix:])] = headerValues[0] } } return nil } type awsRestxml_deserializeOpHttpRequestWithGreedyLabelInPath struct { } func (*awsRestxml_deserializeOpHttpRequestWithGreedyLabelInPath) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpHttpRequestWithGreedyLabelInPath) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorHttpRequestWithGreedyLabelInPath(response, &metadata) } output := &HttpRequestWithGreedyLabelInPathOutput{} out.Result = output if _, err = io.Copy(ioutil.Discard, response.Body); err != nil { return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to discard response body, %w", err), } } return out, metadata, err } func awsRestxml_deserializeOpErrorHttpRequestWithGreedyLabelInPath(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } type awsRestxml_deserializeOpHttpRequestWithLabels struct { } func (*awsRestxml_deserializeOpHttpRequestWithLabels) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpHttpRequestWithLabels) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorHttpRequestWithLabels(response, &metadata) } output := &HttpRequestWithLabelsOutput{} out.Result = output if _, err = io.Copy(ioutil.Discard, response.Body); err != nil { return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to discard response body, %w", err), } } return out, metadata, err } func awsRestxml_deserializeOpErrorHttpRequestWithLabels(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } type awsRestxml_deserializeOpHttpRequestWithLabelsAndTimestampFormat struct { } func (*awsRestxml_deserializeOpHttpRequestWithLabelsAndTimestampFormat) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpHttpRequestWithLabelsAndTimestampFormat) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorHttpRequestWithLabelsAndTimestampFormat(response, &metadata) } output := &HttpRequestWithLabelsAndTimestampFormatOutput{} out.Result = output if _, err = io.Copy(ioutil.Discard, response.Body); err != nil { return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to discard response body, %w", err), } } return out, metadata, err } func awsRestxml_deserializeOpErrorHttpRequestWithLabelsAndTimestampFormat(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } type awsRestxml_deserializeOpHttpResponseCode struct { } func (*awsRestxml_deserializeOpHttpResponseCode) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpHttpResponseCode) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorHttpResponseCode(response, &metadata) } output := &HttpResponseCodeOutput{} out.Result = output err = awsRestxml_deserializeOpHttpBindingsHttpResponseCodeOutput(output, response) if err != nil { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("failed to decode response with invalid Http bindings, %w", err)} } return out, metadata, err } func awsRestxml_deserializeOpErrorHttpResponseCode(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpHttpBindingsHttpResponseCodeOutput(v *HttpResponseCodeOutput, response *smithyhttp.Response) error { if v == nil { return fmt.Errorf("unsupported deserialization for nil %T", v) } v.Status = ptr.Int32(int32(response.StatusCode)) return nil } type awsRestxml_deserializeOpIgnoreQueryParamsInResponse struct { } func (*awsRestxml_deserializeOpIgnoreQueryParamsInResponse) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpIgnoreQueryParamsInResponse) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorIgnoreQueryParamsInResponse(response, &metadata) } output := &IgnoreQueryParamsInResponseOutput{} out.Result = output var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(response.Body, ringBuffer) rootDecoder := xml.NewDecoder(body) t, err := smithyxml.FetchRootElement(rootDecoder) if err == io.EOF { return out, metadata, nil } if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) err = awsRestxml_deserializeOpDocumentIgnoreQueryParamsInResponseOutput(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } return out, metadata, err } func awsRestxml_deserializeOpErrorIgnoreQueryParamsInResponse(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpDocumentIgnoreQueryParamsInResponseOutput(v **IgnoreQueryParamsInResponseOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *IgnoreQueryParamsInResponseOutput if *v == nil { sv = &IgnoreQueryParamsInResponseOutput{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("baz", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) sv.Baz = ptr.String(xtv) } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } type awsRestxml_deserializeOpInputAndOutputWithHeaders struct { } func (*awsRestxml_deserializeOpInputAndOutputWithHeaders) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpInputAndOutputWithHeaders) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorInputAndOutputWithHeaders(response, &metadata) } output := &InputAndOutputWithHeadersOutput{} out.Result = output err = awsRestxml_deserializeOpHttpBindingsInputAndOutputWithHeadersOutput(output, response) if err != nil { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("failed to decode response with invalid Http bindings, %w", err)} } return out, metadata, err } func awsRestxml_deserializeOpErrorInputAndOutputWithHeaders(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpHttpBindingsInputAndOutputWithHeadersOutput(v *InputAndOutputWithHeadersOutput, response *smithyhttp.Response) error { if v == nil { return fmt.Errorf("unsupported deserialization for nil %T", v) } if headerValues := response.Header.Values("X-BooleanList"); len(headerValues) != 0 { { var err error headerValues, err = smithyhttp.SplitHeaderListValues(headerValues) if err != nil { return err } } var list []bool for _, headerValuesVal := range headerValues { headerValuesVal = strings.TrimSpace(headerValuesVal) vv, err := strconv.ParseBool(headerValuesVal) if err != nil { return err } list = append(list, vv) } v.HeaderBooleanList = list } if headerValues := response.Header.Values("X-Byte"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) vv, err := strconv.ParseInt(headerValues[0], 0, 8) if err != nil { return err } v.HeaderByte = ptr.Int8(int8(vv)) } if headerValues := response.Header.Values("X-Double"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) vv, err := strconv.ParseFloat(headerValues[0], 64) if err != nil { return err } v.HeaderDouble = ptr.Float64(vv) } if headerValues := response.Header.Values("X-Enum"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) v.HeaderEnum = types.FooEnum(headerValues[0]) } if headerValues := response.Header.Values("X-EnumList"); len(headerValues) != 0 { { var err error headerValues, err = smithyhttp.SplitHeaderListValues(headerValues) if err != nil { return err } } var list []types.FooEnum for _, headerValuesVal := range headerValues { headerValuesVal = strings.TrimSpace(headerValuesVal) list = append(list, types.FooEnum(headerValuesVal)) } v.HeaderEnumList = list } if headerValues := response.Header.Values("X-Boolean2"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) vv, err := strconv.ParseBool(headerValues[0]) if err != nil { return err } v.HeaderFalseBool = ptr.Bool(vv) } if headerValues := response.Header.Values("X-Float"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) vv, err := strconv.ParseFloat(headerValues[0], 32) if err != nil { return err } v.HeaderFloat = ptr.Float32(float32(vv)) } if headerValues := response.Header.Values("X-Integer"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) vv, err := strconv.ParseInt(headerValues[0], 0, 32) if err != nil { return err } v.HeaderInteger = ptr.Int32(int32(vv)) } if headerValues := response.Header.Values("X-IntegerList"); len(headerValues) != 0 { { var err error headerValues, err = smithyhttp.SplitHeaderListValues(headerValues) if err != nil { return err } } var list []int32 for _, headerValuesVal := range headerValues { headerValuesVal = strings.TrimSpace(headerValuesVal) vv, err := strconv.ParseInt(headerValuesVal, 0, 32) if err != nil { return err } list = append(list, int32(vv)) } v.HeaderIntegerList = list } if headerValues := response.Header.Values("X-Long"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) vv, err := strconv.ParseInt(headerValues[0], 0, 64) if err != nil { return err } v.HeaderLong = ptr.Int64(vv) } if headerValues := response.Header.Values("X-Short"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) vv, err := strconv.ParseInt(headerValues[0], 0, 16) if err != nil { return err } v.HeaderShort = ptr.Int16(int16(vv)) } if headerValues := response.Header.Values("X-String"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) v.HeaderString = ptr.String(headerValues[0]) } if headerValues := response.Header.Values("X-StringList"); len(headerValues) != 0 { { var err error headerValues, err = smithyhttp.SplitHeaderListValues(headerValues) if err != nil { return err } } var list []string for _, headerValuesVal := range headerValues { headerValuesVal = strings.TrimSpace(headerValuesVal) list = append(list, headerValuesVal) } v.HeaderStringList = list } if headerValues := response.Header.Values("X-StringSet"); len(headerValues) != 0 { { var err error headerValues, err = smithyhttp.SplitHeaderListValues(headerValues) if err != nil { return err } } var list []string for _, headerValuesVal := range headerValues { headerValuesVal = strings.TrimSpace(headerValuesVal) list = append(list, headerValuesVal) } v.HeaderStringSet = list } if headerValues := response.Header.Values("X-TimestampList"); len(headerValues) != 0 { { var err error headerValues, err = smithyhttp.SplitHTTPDateTimestampHeaderListValues(headerValues) if err != nil { return err } } var list []time.Time for _, headerValuesVal := range headerValues { headerValuesVal = strings.TrimSpace(headerValuesVal) t, err := smithytime.ParseHTTPDate(headerValuesVal) if err != nil { return err } list = append(list, t) } v.HeaderTimestampList = list } if headerValues := response.Header.Values("X-Boolean1"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) vv, err := strconv.ParseBool(headerValues[0]) if err != nil { return err } v.HeaderTrueBool = ptr.Bool(vv) } return nil } type awsRestxml_deserializeOpNoInputAndNoOutput struct { } func (*awsRestxml_deserializeOpNoInputAndNoOutput) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpNoInputAndNoOutput) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorNoInputAndNoOutput(response, &metadata) } output := &NoInputAndNoOutputOutput{} out.Result = output if _, err = io.Copy(ioutil.Discard, response.Body); err != nil { return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to discard response body, %w", err), } } return out, metadata, err } func awsRestxml_deserializeOpErrorNoInputAndNoOutput(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } type awsRestxml_deserializeOpNoInputAndOutput struct { } func (*awsRestxml_deserializeOpNoInputAndOutput) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpNoInputAndOutput) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorNoInputAndOutput(response, &metadata) } output := &NoInputAndOutputOutput{} out.Result = output return out, metadata, err } func awsRestxml_deserializeOpErrorNoInputAndOutput(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } type awsRestxml_deserializeOpNullAndEmptyHeadersClient struct { } func (*awsRestxml_deserializeOpNullAndEmptyHeadersClient) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpNullAndEmptyHeadersClient) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorNullAndEmptyHeadersClient(response, &metadata) } output := &NullAndEmptyHeadersClientOutput{} out.Result = output err = awsRestxml_deserializeOpHttpBindingsNullAndEmptyHeadersClientOutput(output, response) if err != nil { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("failed to decode response with invalid Http bindings, %w", err)} } return out, metadata, err } func awsRestxml_deserializeOpErrorNullAndEmptyHeadersClient(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpHttpBindingsNullAndEmptyHeadersClientOutput(v *NullAndEmptyHeadersClientOutput, response *smithyhttp.Response) error { if v == nil { return fmt.Errorf("unsupported deserialization for nil %T", v) } if headerValues := response.Header.Values("X-A"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) v.A = ptr.String(headerValues[0]) } if headerValues := response.Header.Values("X-B"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) v.B = ptr.String(headerValues[0]) } if headerValues := response.Header.Values("X-C"); len(headerValues) != 0 { { var err error headerValues, err = smithyhttp.SplitHeaderListValues(headerValues) if err != nil { return err } } var list []string for _, headerValuesVal := range headerValues { headerValuesVal = strings.TrimSpace(headerValuesVal) list = append(list, headerValuesVal) } v.C = list } return nil } type awsRestxml_deserializeOpNullAndEmptyHeadersServer struct { } func (*awsRestxml_deserializeOpNullAndEmptyHeadersServer) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpNullAndEmptyHeadersServer) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorNullAndEmptyHeadersServer(response, &metadata) } output := &NullAndEmptyHeadersServerOutput{} out.Result = output err = awsRestxml_deserializeOpHttpBindingsNullAndEmptyHeadersServerOutput(output, response) if err != nil { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("failed to decode response with invalid Http bindings, %w", err)} } return out, metadata, err } func awsRestxml_deserializeOpErrorNullAndEmptyHeadersServer(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpHttpBindingsNullAndEmptyHeadersServerOutput(v *NullAndEmptyHeadersServerOutput, response *smithyhttp.Response) error { if v == nil { return fmt.Errorf("unsupported deserialization for nil %T", v) } if headerValues := response.Header.Values("X-A"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) v.A = ptr.String(headerValues[0]) } if headerValues := response.Header.Values("X-B"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) v.B = ptr.String(headerValues[0]) } if headerValues := response.Header.Values("X-C"); len(headerValues) != 0 { { var err error headerValues, err = smithyhttp.SplitHeaderListValues(headerValues) if err != nil { return err } } var list []string for _, headerValuesVal := range headerValues { headerValuesVal = strings.TrimSpace(headerValuesVal) list = append(list, headerValuesVal) } v.C = list } return nil } type awsRestxml_deserializeOpOmitsNullSerializesEmptyString struct { } func (*awsRestxml_deserializeOpOmitsNullSerializesEmptyString) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpOmitsNullSerializesEmptyString) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorOmitsNullSerializesEmptyString(response, &metadata) } output := &OmitsNullSerializesEmptyStringOutput{} out.Result = output if _, err = io.Copy(ioutil.Discard, response.Body); err != nil { return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to discard response body, %w", err), } } return out, metadata, err } func awsRestxml_deserializeOpErrorOmitsNullSerializesEmptyString(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } type awsRestxml_deserializeOpQueryIdempotencyTokenAutoFill struct { } func (*awsRestxml_deserializeOpQueryIdempotencyTokenAutoFill) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpQueryIdempotencyTokenAutoFill) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorQueryIdempotencyTokenAutoFill(response, &metadata) } output := &QueryIdempotencyTokenAutoFillOutput{} out.Result = output if _, err = io.Copy(ioutil.Discard, response.Body); err != nil { return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to discard response body, %w", err), } } return out, metadata, err } func awsRestxml_deserializeOpErrorQueryIdempotencyTokenAutoFill(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } type awsRestxml_deserializeOpRecursiveShapes struct { } func (*awsRestxml_deserializeOpRecursiveShapes) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpRecursiveShapes) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorRecursiveShapes(response, &metadata) } output := &RecursiveShapesOutput{} out.Result = output var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(response.Body, ringBuffer) rootDecoder := xml.NewDecoder(body) t, err := smithyxml.FetchRootElement(rootDecoder) if err == io.EOF { return out, metadata, nil } if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) err = awsRestxml_deserializeOpDocumentRecursiveShapesOutput(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } return out, metadata, err } func awsRestxml_deserializeOpErrorRecursiveShapes(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpDocumentRecursiveShapesOutput(v **RecursiveShapesOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *RecursiveShapesOutput if *v == nil { sv = &RecursiveShapesOutput{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("nested", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentRecursiveShapesInputOutputNested1(&sv.Nested, nodeDecoder); err != nil { return err } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } type awsRestxml_deserializeOpSimpleScalarProperties struct { } func (*awsRestxml_deserializeOpSimpleScalarProperties) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpSimpleScalarProperties) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorSimpleScalarProperties(response, &metadata) } output := &SimpleScalarPropertiesOutput{} out.Result = output err = awsRestxml_deserializeOpHttpBindingsSimpleScalarPropertiesOutput(output, response) if err != nil { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("failed to decode response with invalid Http bindings, %w", err)} } var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(response.Body, ringBuffer) rootDecoder := xml.NewDecoder(body) t, err := smithyxml.FetchRootElement(rootDecoder) if err == io.EOF { return out, metadata, nil } if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) err = awsRestxml_deserializeOpDocumentSimpleScalarPropertiesOutput(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } return out, metadata, err } func awsRestxml_deserializeOpErrorSimpleScalarProperties(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpHttpBindingsSimpleScalarPropertiesOutput(v *SimpleScalarPropertiesOutput, response *smithyhttp.Response) error { if v == nil { return fmt.Errorf("unsupported deserialization for nil %T", v) } if headerValues := response.Header.Values("X-Foo"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) v.Foo = ptr.String(headerValues[0]) } return nil } func awsRestxml_deserializeOpDocumentSimpleScalarPropertiesOutput(v **SimpleScalarPropertiesOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *SimpleScalarPropertiesOutput if *v == nil { sv = &SimpleScalarPropertiesOutput{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("byteValue", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) i64, err := strconv.ParseInt(xtv, 10, 64) if err != nil { return err } sv.ByteValue = ptr.Int8(int8(i64)) } case strings.EqualFold("DoubleDribble", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) f64, err := strconv.ParseFloat(xtv, 64) if err != nil { return err } sv.DoubleValue = ptr.Float64(f64) } case strings.EqualFold("falseBooleanValue", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv, err := strconv.ParseBool(string(val)) if err != nil { return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", val) } sv.FalseBooleanValue = ptr.Bool(xtv) } case strings.EqualFold("floatValue", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) f64, err := strconv.ParseFloat(xtv, 64) if err != nil { return err } sv.FloatValue = ptr.Float32(float32(f64)) } case strings.EqualFold("integerValue", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) i64, err := strconv.ParseInt(xtv, 10, 64) if err != nil { return err } sv.IntegerValue = ptr.Int32(int32(i64)) } case strings.EqualFold("longValue", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) i64, err := strconv.ParseInt(xtv, 10, 64) if err != nil { return err } sv.LongValue = ptr.Int64(i64) } case strings.EqualFold("shortValue", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) i64, err := strconv.ParseInt(xtv, 10, 64) if err != nil { return err } sv.ShortValue = ptr.Int16(int16(i64)) } case strings.EqualFold("stringValue", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) sv.StringValue = ptr.String(xtv) } case strings.EqualFold("trueBooleanValue", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv, err := strconv.ParseBool(string(val)) if err != nil { return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", val) } sv.TrueBooleanValue = ptr.Bool(xtv) } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } type awsRestxml_deserializeOpTimestampFormatHeaders struct { } func (*awsRestxml_deserializeOpTimestampFormatHeaders) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpTimestampFormatHeaders) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorTimestampFormatHeaders(response, &metadata) } output := &TimestampFormatHeadersOutput{} out.Result = output err = awsRestxml_deserializeOpHttpBindingsTimestampFormatHeadersOutput(output, response) if err != nil { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("failed to decode response with invalid Http bindings, %w", err)} } return out, metadata, err } func awsRestxml_deserializeOpErrorTimestampFormatHeaders(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpHttpBindingsTimestampFormatHeadersOutput(v *TimestampFormatHeadersOutput, response *smithyhttp.Response) error { if v == nil { return fmt.Errorf("unsupported deserialization for nil %T", v) } if headerValues := response.Header.Values("X-defaultFormat"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) t, err := smithytime.ParseHTTPDate(headerValues[0]) if err != nil { return err } v.DefaultFormat = ptr.Time(t) } if headerValues := response.Header.Values("X-memberDateTime"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) t, err := smithytime.ParseDateTime(headerValues[0]) if err != nil { return err } v.MemberDateTime = ptr.Time(t) } if headerValues := response.Header.Values("X-memberEpochSeconds"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) f, err := strconv.ParseFloat(headerValues[0], 64) if err != nil { return err } t := smithytime.ParseEpochSeconds(f) v.MemberEpochSeconds = ptr.Time(t) } if headerValues := response.Header.Values("X-memberHttpDate"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) t, err := smithytime.ParseHTTPDate(headerValues[0]) if err != nil { return err } v.MemberHttpDate = ptr.Time(t) } if headerValues := response.Header.Values("X-targetDateTime"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) t, err := smithytime.ParseDateTime(headerValues[0]) if err != nil { return err } v.TargetDateTime = ptr.Time(t) } if headerValues := response.Header.Values("X-targetEpochSeconds"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) f, err := strconv.ParseFloat(headerValues[0], 64) if err != nil { return err } t := smithytime.ParseEpochSeconds(f) v.TargetEpochSeconds = ptr.Time(t) } if headerValues := response.Header.Values("X-targetHttpDate"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) t, err := smithytime.ParseHTTPDate(headerValues[0]) if err != nil { return err } v.TargetHttpDate = ptr.Time(t) } return nil } type awsRestxml_deserializeOpXmlAttributes struct { } func (*awsRestxml_deserializeOpXmlAttributes) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpXmlAttributes) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorXmlAttributes(response, &metadata) } output := &XmlAttributesOutput{} out.Result = output var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(response.Body, ringBuffer) rootDecoder := xml.NewDecoder(body) t, err := smithyxml.FetchRootElement(rootDecoder) if err == io.EOF { return out, metadata, nil } if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) err = awsRestxml_deserializeOpDocumentXmlAttributesOutput(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } return out, metadata, err } func awsRestxml_deserializeOpErrorXmlAttributes(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpDocumentXmlAttributesOutput(v **XmlAttributesOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *XmlAttributesOutput if *v == nil { sv = &XmlAttributesOutput{} } else { sv = *v } for _, attr := range decoder.StartEl.Attr { name := attr.Name.Local if len(attr.Name.Space) != 0 { name = attr.Name.Space + `:` + attr.Name.Local } switch { case strings.EqualFold("test", name): val := []byte(attr.Value) { xtv := string(val) sv.Attr = ptr.String(xtv) } } } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("foo", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) sv.Foo = ptr.String(xtv) } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } type awsRestxml_deserializeOpXmlAttributesOnPayload struct { } func (*awsRestxml_deserializeOpXmlAttributesOnPayload) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpXmlAttributesOnPayload) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorXmlAttributesOnPayload(response, &metadata) } output := &XmlAttributesOnPayloadOutput{} out.Result = output var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(response.Body, ringBuffer) rootDecoder := xml.NewDecoder(body) t, err := smithyxml.FetchRootElement(rootDecoder) if err == io.EOF { return out, metadata, nil } if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) err = awsRestxml_deserializeDocumentXmlAttributesInputOutput(&output.Payload, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } return out, metadata, err } func awsRestxml_deserializeOpErrorXmlAttributesOnPayload(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpDocumentXmlAttributesOnPayloadOutput(v **XmlAttributesOnPayloadOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *XmlAttributesOnPayloadOutput if *v == nil { sv = &XmlAttributesOnPayloadOutput{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("payload", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentXmlAttributesInputOutput(&sv.Payload, nodeDecoder); err != nil { return err } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } type awsRestxml_deserializeOpXmlBlobs struct { } func (*awsRestxml_deserializeOpXmlBlobs) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpXmlBlobs) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorXmlBlobs(response, &metadata) } output := &XmlBlobsOutput{} out.Result = output var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(response.Body, ringBuffer) rootDecoder := xml.NewDecoder(body) t, err := smithyxml.FetchRootElement(rootDecoder) if err == io.EOF { return out, metadata, nil } if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) err = awsRestxml_deserializeOpDocumentXmlBlobsOutput(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } return out, metadata, err } func awsRestxml_deserializeOpErrorXmlBlobs(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpDocumentXmlBlobsOutput(v **XmlBlobsOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *XmlBlobsOutput if *v == nil { sv = &XmlBlobsOutput{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("data", t.Name.Local): var data string val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) data = xtv } sv.Data, err = base64.StdEncoding.DecodeString(data) if err != nil { return err } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } type awsRestxml_deserializeOpXmlEmptyBlobs struct { } func (*awsRestxml_deserializeOpXmlEmptyBlobs) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpXmlEmptyBlobs) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorXmlEmptyBlobs(response, &metadata) } output := &XmlEmptyBlobsOutput{} out.Result = output var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(response.Body, ringBuffer) rootDecoder := xml.NewDecoder(body) t, err := smithyxml.FetchRootElement(rootDecoder) if err == io.EOF { return out, metadata, nil } if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) err = awsRestxml_deserializeOpDocumentXmlEmptyBlobsOutput(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } return out, metadata, err } func awsRestxml_deserializeOpErrorXmlEmptyBlobs(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpDocumentXmlEmptyBlobsOutput(v **XmlEmptyBlobsOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *XmlEmptyBlobsOutput if *v == nil { sv = &XmlEmptyBlobsOutput{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("data", t.Name.Local): var data string val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) data = xtv } sv.Data, err = base64.StdEncoding.DecodeString(data) if err != nil { return err } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } type awsRestxml_deserializeOpXmlEmptyLists struct { } func (*awsRestxml_deserializeOpXmlEmptyLists) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpXmlEmptyLists) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorXmlEmptyLists(response, &metadata) } output := &XmlEmptyListsOutput{} out.Result = output var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(response.Body, ringBuffer) rootDecoder := xml.NewDecoder(body) t, err := smithyxml.FetchRootElement(rootDecoder) if err == io.EOF { return out, metadata, nil } if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) err = awsRestxml_deserializeOpDocumentXmlEmptyListsOutput(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } return out, metadata, err } func awsRestxml_deserializeOpErrorXmlEmptyLists(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpDocumentXmlEmptyListsOutput(v **XmlEmptyListsOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *XmlEmptyListsOutput if *v == nil { sv = &XmlEmptyListsOutput{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("booleanList", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentBooleanList(&sv.BooleanList, nodeDecoder); err != nil { return err } case strings.EqualFold("enumList", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentFooEnumList(&sv.EnumList, nodeDecoder); err != nil { return err } case strings.EqualFold("flattenedList", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentRenamedListMembersUnwrapped(&sv.FlattenedList, nodeDecoder); err != nil { return err } case strings.EqualFold("customName", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentRenamedListMembersUnwrapped(&sv.FlattenedList2, nodeDecoder); err != nil { return err } case strings.EqualFold("flattenedListWithMemberNamespace", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentListWithMemberNamespaceUnwrapped(&sv.FlattenedListWithMemberNamespace, nodeDecoder); err != nil { return err } case strings.EqualFold("flattenedListWithNamespace", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentListWithNamespaceUnwrapped(&sv.FlattenedListWithNamespace, nodeDecoder); err != nil { return err } case strings.EqualFold("integerList", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentIntegerList(&sv.IntegerList, nodeDecoder); err != nil { return err } case strings.EqualFold("nestedStringList", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentNestedStringList(&sv.NestedStringList, nodeDecoder); err != nil { return err } case strings.EqualFold("renamed", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentRenamedListMembers(&sv.RenamedListMembers, nodeDecoder); err != nil { return err } case strings.EqualFold("stringList", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentStringList(&sv.StringList, nodeDecoder); err != nil { return err } case strings.EqualFold("stringSet", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentStringSet(&sv.StringSet, nodeDecoder); err != nil { return err } case strings.EqualFold("myStructureList", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentStructureList(&sv.StructureList, nodeDecoder); err != nil { return err } case strings.EqualFold("timestampList", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentTimestampList(&sv.TimestampList, nodeDecoder); err != nil { return err } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } type awsRestxml_deserializeOpXmlEmptyMaps struct { } func (*awsRestxml_deserializeOpXmlEmptyMaps) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpXmlEmptyMaps) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorXmlEmptyMaps(response, &metadata) } output := &XmlEmptyMapsOutput{} out.Result = output var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(response.Body, ringBuffer) rootDecoder := xml.NewDecoder(body) t, err := smithyxml.FetchRootElement(rootDecoder) if err == io.EOF { return out, metadata, nil } if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) err = awsRestxml_deserializeOpDocumentXmlEmptyMapsOutput(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } return out, metadata, err } func awsRestxml_deserializeOpErrorXmlEmptyMaps(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpDocumentXmlEmptyMapsOutput(v **XmlEmptyMapsOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *XmlEmptyMapsOutput if *v == nil { sv = &XmlEmptyMapsOutput{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("myMap", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentXmlMapsInputOutputMap(&sv.MyMap, nodeDecoder); err != nil { return err } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } type awsRestxml_deserializeOpXmlEmptyStrings struct { } func (*awsRestxml_deserializeOpXmlEmptyStrings) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpXmlEmptyStrings) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorXmlEmptyStrings(response, &metadata) } output := &XmlEmptyStringsOutput{} out.Result = output var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(response.Body, ringBuffer) rootDecoder := xml.NewDecoder(body) t, err := smithyxml.FetchRootElement(rootDecoder) if err == io.EOF { return out, metadata, nil } if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) err = awsRestxml_deserializeOpDocumentXmlEmptyStringsOutput(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } return out, metadata, err } func awsRestxml_deserializeOpErrorXmlEmptyStrings(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpDocumentXmlEmptyStringsOutput(v **XmlEmptyStringsOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *XmlEmptyStringsOutput if *v == nil { sv = &XmlEmptyStringsOutput{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("emptyString", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) sv.EmptyString = ptr.String(xtv) } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } type awsRestxml_deserializeOpXmlEnums struct { } func (*awsRestxml_deserializeOpXmlEnums) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpXmlEnums) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorXmlEnums(response, &metadata) } output := &XmlEnumsOutput{} out.Result = output var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(response.Body, ringBuffer) rootDecoder := xml.NewDecoder(body) t, err := smithyxml.FetchRootElement(rootDecoder) if err == io.EOF { return out, metadata, nil } if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) err = awsRestxml_deserializeOpDocumentXmlEnumsOutput(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } return out, metadata, err } func awsRestxml_deserializeOpErrorXmlEnums(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpDocumentXmlEnumsOutput(v **XmlEnumsOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *XmlEnumsOutput if *v == nil { sv = &XmlEnumsOutput{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("fooEnum1", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) sv.FooEnum1 = types.FooEnum(xtv) } case strings.EqualFold("fooEnum2", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) sv.FooEnum2 = types.FooEnum(xtv) } case strings.EqualFold("fooEnum3", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) sv.FooEnum3 = types.FooEnum(xtv) } case strings.EqualFold("fooEnumList", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentFooEnumList(&sv.FooEnumList, nodeDecoder); err != nil { return err } case strings.EqualFold("fooEnumMap", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentFooEnumMap(&sv.FooEnumMap, nodeDecoder); err != nil { return err } case strings.EqualFold("fooEnumSet", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentFooEnumSet(&sv.FooEnumSet, nodeDecoder); err != nil { return err } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } type awsRestxml_deserializeOpXmlLists struct { } func (*awsRestxml_deserializeOpXmlLists) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpXmlLists) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorXmlLists(response, &metadata) } output := &XmlListsOutput{} out.Result = output var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(response.Body, ringBuffer) rootDecoder := xml.NewDecoder(body) t, err := smithyxml.FetchRootElement(rootDecoder) if err == io.EOF { return out, metadata, nil } if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) err = awsRestxml_deserializeOpDocumentXmlListsOutput(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } return out, metadata, err } func awsRestxml_deserializeOpErrorXmlLists(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpDocumentXmlListsOutput(v **XmlListsOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *XmlListsOutput if *v == nil { sv = &XmlListsOutput{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("booleanList", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentBooleanList(&sv.BooleanList, nodeDecoder); err != nil { return err } case strings.EqualFold("enumList", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentFooEnumList(&sv.EnumList, nodeDecoder); err != nil { return err } case strings.EqualFold("flattenedList", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentRenamedListMembersUnwrapped(&sv.FlattenedList, nodeDecoder); err != nil { return err } case strings.EqualFold("customName", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentRenamedListMembersUnwrapped(&sv.FlattenedList2, nodeDecoder); err != nil { return err } case strings.EqualFold("flattenedListWithMemberNamespace", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentListWithMemberNamespaceUnwrapped(&sv.FlattenedListWithMemberNamespace, nodeDecoder); err != nil { return err } case strings.EqualFold("flattenedListWithNamespace", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentListWithNamespaceUnwrapped(&sv.FlattenedListWithNamespace, nodeDecoder); err != nil { return err } case strings.EqualFold("integerList", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentIntegerList(&sv.IntegerList, nodeDecoder); err != nil { return err } case strings.EqualFold("nestedStringList", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentNestedStringList(&sv.NestedStringList, nodeDecoder); err != nil { return err } case strings.EqualFold("renamed", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentRenamedListMembers(&sv.RenamedListMembers, nodeDecoder); err != nil { return err } case strings.EqualFold("stringList", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentStringList(&sv.StringList, nodeDecoder); err != nil { return err } case strings.EqualFold("stringSet", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentStringSet(&sv.StringSet, nodeDecoder); err != nil { return err } case strings.EqualFold("myStructureList", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentStructureList(&sv.StructureList, nodeDecoder); err != nil { return err } case strings.EqualFold("timestampList", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentTimestampList(&sv.TimestampList, nodeDecoder); err != nil { return err } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } type awsRestxml_deserializeOpXmlMaps struct { } func (*awsRestxml_deserializeOpXmlMaps) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpXmlMaps) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorXmlMaps(response, &metadata) } output := &XmlMapsOutput{} out.Result = output var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(response.Body, ringBuffer) rootDecoder := xml.NewDecoder(body) t, err := smithyxml.FetchRootElement(rootDecoder) if err == io.EOF { return out, metadata, nil } if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) err = awsRestxml_deserializeOpDocumentXmlMapsOutput(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } return out, metadata, err } func awsRestxml_deserializeOpErrorXmlMaps(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpDocumentXmlMapsOutput(v **XmlMapsOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *XmlMapsOutput if *v == nil { sv = &XmlMapsOutput{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("myMap", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentXmlMapsInputOutputMap(&sv.MyMap, nodeDecoder); err != nil { return err } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } type awsRestxml_deserializeOpXmlMapsXmlName struct { } func (*awsRestxml_deserializeOpXmlMapsXmlName) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpXmlMapsXmlName) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorXmlMapsXmlName(response, &metadata) } output := &XmlMapsXmlNameOutput{} out.Result = output var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(response.Body, ringBuffer) rootDecoder := xml.NewDecoder(body) t, err := smithyxml.FetchRootElement(rootDecoder) if err == io.EOF { return out, metadata, nil } if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) err = awsRestxml_deserializeOpDocumentXmlMapsXmlNameOutput(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } return out, metadata, err } func awsRestxml_deserializeOpErrorXmlMapsXmlName(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpDocumentXmlMapsXmlNameOutput(v **XmlMapsXmlNameOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *XmlMapsXmlNameOutput if *v == nil { sv = &XmlMapsXmlNameOutput{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("myMap", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentXmlMapsXmlNameInputOutputMap(&sv.MyMap, nodeDecoder); err != nil { return err } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } type awsRestxml_deserializeOpXmlNamespaces struct { } func (*awsRestxml_deserializeOpXmlNamespaces) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpXmlNamespaces) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorXmlNamespaces(response, &metadata) } output := &XmlNamespacesOutput{} out.Result = output var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(response.Body, ringBuffer) rootDecoder := xml.NewDecoder(body) t, err := smithyxml.FetchRootElement(rootDecoder) if err == io.EOF { return out, metadata, nil } if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) err = awsRestxml_deserializeOpDocumentXmlNamespacesOutput(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } return out, metadata, err } func awsRestxml_deserializeOpErrorXmlNamespaces(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpDocumentXmlNamespacesOutput(v **XmlNamespacesOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *XmlNamespacesOutput if *v == nil { sv = &XmlNamespacesOutput{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("nested", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentXmlNamespaceNested(&sv.Nested, nodeDecoder); err != nil { return err } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } type awsRestxml_deserializeOpXmlTimestamps struct { } func (*awsRestxml_deserializeOpXmlTimestamps) ID() string { return "OperationDeserializer" } func (m *awsRestxml_deserializeOpXmlTimestamps) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) if err != nil { return out, metadata, err } response, ok := out.RawResponse.(*smithyhttp.Response) if !ok { return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} } if response.StatusCode < 200 || response.StatusCode >= 300 { return out, metadata, awsRestxml_deserializeOpErrorXmlTimestamps(response, &metadata) } output := &XmlTimestampsOutput{} out.Result = output var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(response.Body, ringBuffer) rootDecoder := xml.NewDecoder(body) t, err := smithyxml.FetchRootElement(rootDecoder) if err == io.EOF { return out, metadata, nil } if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) err = awsRestxml_deserializeOpDocumentXmlTimestampsOutput(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } return out, metadata, err } func awsRestxml_deserializeOpErrorXmlTimestamps(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} } errorBody := bytes.NewReader(errorBuffer.Bytes()) errorCode := "UnknownError" errorMessage := errorCode errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) if err != nil { return err } if reqID := errorComponents.RequestID; len(reqID) != 0 { awsmiddleware.SetRequestIDMetadata(metadata, reqID) } if len(errorComponents.Code) != 0 { errorCode = errorComponents.Code } if len(errorComponents.Message) != 0 { errorMessage = errorComponents.Message } errorBody.Seek(0, io.SeekStart) switch { default: genericError := &smithy.GenericAPIError{ Code: errorCode, Message: errorMessage, } return genericError } } func awsRestxml_deserializeOpDocumentXmlTimestampsOutput(v **XmlTimestampsOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *XmlTimestampsOutput if *v == nil { sv = &XmlTimestampsOutput{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("dateTime", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) t, err := smithytime.ParseDateTime(xtv) if err != nil { return err } sv.DateTime = ptr.Time(t) } case strings.EqualFold("epochSeconds", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) f64, err := strconv.ParseFloat(xtv, 64) if err != nil { return err } sv.EpochSeconds = ptr.Time(smithytime.ParseEpochSeconds(f64)) } case strings.EqualFold("httpDate", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) t, err := smithytime.ParseHTTPDate(xtv) if err != nil { return err } sv.HttpDate = ptr.Time(t) } case strings.EqualFold("normal", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) t, err := smithytime.ParseDateTime(xtv) if err != nil { return err } sv.Normal = ptr.Time(t) } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeOpHttpBindingsComplexError(v *types.ComplexError, response *smithyhttp.Response) error { if v == nil { return fmt.Errorf("unsupported deserialization for nil %T", v) } if headerValues := response.Header.Values("X-Header"); len(headerValues) != 0 { headerValues[0] = strings.TrimSpace(headerValues[0]) v.Header = ptr.String(headerValues[0]) } return nil } func awsRestxml_deserializeErrorComplexError(response *smithyhttp.Response, errorBody *bytes.Reader) error { output := &types.ComplexError{} if err := awsRestxml_deserializeOpHttpBindingsComplexError(output, response); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to decode response error with invalid HTTP bindings, %w", err)} } var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) rootDecoder := xml.NewDecoder(body) t, err := smithyxml.FetchRootElement(rootDecoder) if err == io.EOF { return output } if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) t, err = decoder.GetElement("Error") if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) err = awsRestxml_deserializeDocumentComplexError(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } return output } func awsRestxml_deserializeErrorInvalidGreeting(response *smithyhttp.Response, errorBody *bytes.Reader) error { output := &types.InvalidGreeting{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) rootDecoder := xml.NewDecoder(body) t, err := smithyxml.FetchRootElement(rootDecoder) if err == io.EOF { return output } if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) t, err = decoder.GetElement("Error") if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) err = awsRestxml_deserializeDocumentInvalidGreeting(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) return &smithy.DeserializationError{ Err: fmt.Errorf("failed to decode response body, %w", err), Snapshot: snapshot.Bytes(), } } return output } func awsRestxml_deserializeDocumentComplexError(v **types.ComplexError, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *types.ComplexError if *v == nil { sv = &types.ComplexError{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("Header", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) sv.Header = ptr.String(xtv) } case strings.EqualFold("Nested", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentComplexNestedErrorData(&sv.Nested, nodeDecoder); err != nil { return err } case strings.EqualFold("TopLevel", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) sv.TopLevel = ptr.String(xtv) } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentComplexNestedErrorData(v **types.ComplexNestedErrorData, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *types.ComplexNestedErrorData if *v == nil { sv = &types.ComplexNestedErrorData{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("Foo", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) sv.Foo = ptr.String(xtv) } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentFlattenedXmlMapWithXmlNameInputOutputMap(v *map[string]string, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv map[string]string if *v == nil { sv = make(map[string]string, 0) } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } switch { case strings.EqualFold("entry", t.Name.Local): entryDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentFlattenedXmlMapWithXmlNameInputOutputMapUnwrapped(&sv, entryDecoder); err != nil { return err } default: err = decoder.Decoder.Skip() if err != nil { return err } } } *v = sv return nil } func awsRestxml_deserializeDocumentFlattenedXmlMapWithXmlNameInputOutputMapUnwrapped(v *map[string]string, decoder smithyxml.NodeDecoder) error { var sv map[string]string if *v == nil { sv = make(map[string]string, 0) } else { sv = *v } var ek string var ev string for { t, done, err := decoder.Token() if err != nil { return err } if done { sv[ek] = ev break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("K", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) ek = xtv } case strings.EqualFold("V", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) ev = xtv } default: err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentFlattenedXmlMapWithXmlNamespaceOutputMap(v *map[string]string, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv map[string]string if *v == nil { sv = make(map[string]string, 0) } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } switch { case strings.EqualFold("entry", t.Name.Local): entryDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentFlattenedXmlMapWithXmlNamespaceOutputMapUnwrapped(&sv, entryDecoder); err != nil { return err } default: err = decoder.Decoder.Skip() if err != nil { return err } } } *v = sv return nil } func awsRestxml_deserializeDocumentFlattenedXmlMapWithXmlNamespaceOutputMapUnwrapped(v *map[string]string, decoder smithyxml.NodeDecoder) error { var sv map[string]string if *v == nil { sv = make(map[string]string, 0) } else { sv = *v } var ek string var ev string for { t, done, err := decoder.Token() if err != nil { return err } if done { sv[ek] = ev break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("K", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) ek = xtv } case strings.EqualFold("V", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) ev = xtv } default: err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentInvalidGreeting(v **types.InvalidGreeting, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *types.InvalidGreeting if *v == nil { sv = &types.InvalidGreeting{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("Message", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) sv.Message = ptr.String(xtv) } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentListWithMemberNamespace(v *[]string, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv []string if *v == nil { sv = make([]string, 0) } else { sv = *v } originalDecoder := decoder for { t, done, err := decoder.Token() if err != nil { return err } if done { break } memberDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) decoder = memberDecoder switch { case strings.EqualFold("member", t.Name.Local): var col string val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) col = xtv } sv = append(sv, col) default: err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentListWithMemberNamespaceUnwrapped(v *[]string, decoder smithyxml.NodeDecoder) error { var sv []string if *v == nil { sv = make([]string, 0) } else { sv = *v } switch { default: var mv string t := decoder.StartEl _ = t val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) mv = xtv } sv = append(sv, mv) } *v = sv return nil } func awsRestxml_deserializeDocumentListWithNamespace(v *[]string, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv []string if *v == nil { sv = make([]string, 0) } else { sv = *v } originalDecoder := decoder for { t, done, err := decoder.Token() if err != nil { return err } if done { break } memberDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) decoder = memberDecoder switch { case strings.EqualFold("member", t.Name.Local): var col string val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) col = xtv } sv = append(sv, col) default: err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentListWithNamespaceUnwrapped(v *[]string, decoder smithyxml.NodeDecoder) error { var sv []string if *v == nil { sv = make([]string, 0) } else { sv = *v } switch { default: var mv string t := decoder.StartEl _ = t val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) mv = xtv } sv = append(sv, mv) } *v = sv return nil } func awsRestxml_deserializeDocumentNestedPayload(v **types.NestedPayload, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *types.NestedPayload if *v == nil { sv = &types.NestedPayload{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("greeting", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) sv.Greeting = ptr.String(xtv) } case strings.EqualFold("name", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) sv.Name = ptr.String(xtv) } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentPayloadWithXmlName(v **types.PayloadWithXmlName, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *types.PayloadWithXmlName if *v == nil { sv = &types.PayloadWithXmlName{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("name", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) sv.Name = ptr.String(xtv) } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentPayloadWithXmlNamespace(v **types.PayloadWithXmlNamespace, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *types.PayloadWithXmlNamespace if *v == nil { sv = &types.PayloadWithXmlNamespace{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("name", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) sv.Name = ptr.String(xtv) } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentPayloadWithXmlNamespaceAndPrefix(v **types.PayloadWithXmlNamespaceAndPrefix, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *types.PayloadWithXmlNamespaceAndPrefix if *v == nil { sv = &types.PayloadWithXmlNamespaceAndPrefix{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("name", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) sv.Name = ptr.String(xtv) } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentRecursiveShapesInputOutputNested1(v **types.RecursiveShapesInputOutputNested1, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *types.RecursiveShapesInputOutputNested1 if *v == nil { sv = &types.RecursiveShapesInputOutputNested1{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("foo", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) sv.Foo = ptr.String(xtv) } case strings.EqualFold("nested", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentRecursiveShapesInputOutputNested2(&sv.Nested, nodeDecoder); err != nil { return err } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentRecursiveShapesInputOutputNested2(v **types.RecursiveShapesInputOutputNested2, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *types.RecursiveShapesInputOutputNested2 if *v == nil { sv = &types.RecursiveShapesInputOutputNested2{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("bar", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) sv.Bar = ptr.String(xtv) } case strings.EqualFold("recursiveMember", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentRecursiveShapesInputOutputNested1(&sv.RecursiveMember, nodeDecoder); err != nil { return err } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentRenamedListMembers(v *[]string, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv []string if *v == nil { sv = make([]string, 0) } else { sv = *v } originalDecoder := decoder for { t, done, err := decoder.Token() if err != nil { return err } if done { break } memberDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) decoder = memberDecoder switch { case strings.EqualFold("item", t.Name.Local): var col string val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) col = xtv } sv = append(sv, col) default: err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentRenamedListMembersUnwrapped(v *[]string, decoder smithyxml.NodeDecoder) error { var sv []string if *v == nil { sv = make([]string, 0) } else { sv = *v } switch { default: var mv string t := decoder.StartEl _ = t val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) mv = xtv } sv = append(sv, mv) } *v = sv return nil } func awsRestxml_deserializeDocumentStructureList(v *[]types.StructureListMember, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv []types.StructureListMember if *v == nil { sv = make([]types.StructureListMember, 0) } else { sv = *v } originalDecoder := decoder for { t, done, err := decoder.Token() if err != nil { return err } if done { break } switch { case strings.EqualFold("item", t.Name.Local): var col types.StructureListMember nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) destAddr := &col if err := awsRestxml_deserializeDocumentStructureListMember(&destAddr, nodeDecoder); err != nil { return err } col = *destAddr sv = append(sv, col) default: err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentStructureListUnwrapped(v *[]types.StructureListMember, decoder smithyxml.NodeDecoder) error { var sv []types.StructureListMember if *v == nil { sv = make([]types.StructureListMember, 0) } else { sv = *v } switch { default: var mv types.StructureListMember t := decoder.StartEl _ = t nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) destAddr := &mv if err := awsRestxml_deserializeDocumentStructureListMember(&destAddr, nodeDecoder); err != nil { return err } mv = *destAddr sv = append(sv, mv) } *v = sv return nil } func awsRestxml_deserializeDocumentStructureListMember(v **types.StructureListMember, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *types.StructureListMember if *v == nil { sv = &types.StructureListMember{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("value", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) sv.A = ptr.String(xtv) } case strings.EqualFold("other", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) sv.B = ptr.String(xtv) } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentXmlAttributesInputOutput(v **types.XmlAttributesInputOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *types.XmlAttributesInputOutput if *v == nil { sv = &types.XmlAttributesInputOutput{} } else { sv = *v } for _, attr := range decoder.StartEl.Attr { name := attr.Name.Local if len(attr.Name.Space) != 0 { name = attr.Name.Space + `:` + attr.Name.Local } switch { case strings.EqualFold("test", name): val := []byte(attr.Value) { xtv := string(val) sv.Attr = ptr.String(xtv) } } } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("foo", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) sv.Foo = ptr.String(xtv) } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentXmlMapsInputOutputMap(v *map[string]types.GreetingStruct, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv map[string]types.GreetingStruct if *v == nil { sv = make(map[string]types.GreetingStruct, 0) } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } switch { case strings.EqualFold("entry", t.Name.Local): entryDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentXmlMapsInputOutputMapUnwrapped(&sv, entryDecoder); err != nil { return err } default: err = decoder.Decoder.Skip() if err != nil { return err } } } *v = sv return nil } func awsRestxml_deserializeDocumentXmlMapsInputOutputMapUnwrapped(v *map[string]types.GreetingStruct, decoder smithyxml.NodeDecoder) error { var sv map[string]types.GreetingStruct if *v == nil { sv = make(map[string]types.GreetingStruct, 0) } else { sv = *v } var ek string var ev types.GreetingStruct for { t, done, err := decoder.Token() if err != nil { return err } if done { sv[ek] = ev break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("key", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) ek = xtv } case strings.EqualFold("value", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) mapVar := ev destAddr := &mapVar if err := awsRestxml_deserializeDocumentGreetingStruct(&destAddr, nodeDecoder); err != nil { return err } ev = *destAddr default: err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentXmlMapsXmlNameInputOutputMap(v *map[string]types.GreetingStruct, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv map[string]types.GreetingStruct if *v == nil { sv = make(map[string]types.GreetingStruct, 0) } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } switch { case strings.EqualFold("entry", t.Name.Local): entryDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentXmlMapsXmlNameInputOutputMapUnwrapped(&sv, entryDecoder); err != nil { return err } default: err = decoder.Decoder.Skip() if err != nil { return err } } } *v = sv return nil } func awsRestxml_deserializeDocumentXmlMapsXmlNameInputOutputMapUnwrapped(v *map[string]types.GreetingStruct, decoder smithyxml.NodeDecoder) error { var sv map[string]types.GreetingStruct if *v == nil { sv = make(map[string]types.GreetingStruct, 0) } else { sv = *v } var ek string var ev types.GreetingStruct for { t, done, err := decoder.Token() if err != nil { return err } if done { sv[ek] = ev break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("Attribute", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) ek = xtv } case strings.EqualFold("Setting", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) mapVar := ev destAddr := &mapVar if err := awsRestxml_deserializeDocumentGreetingStruct(&destAddr, nodeDecoder); err != nil { return err } ev = *destAddr default: err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentXmlNamespacedList(v *[]string, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv []string if *v == nil { sv = make([]string, 0) } else { sv = *v } originalDecoder := decoder for { t, done, err := decoder.Token() if err != nil { return err } if done { break } memberDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) decoder = memberDecoder switch { case strings.EqualFold("member", t.Name.Local): var col string val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) col = xtv } sv = append(sv, col) default: err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentXmlNamespacedListUnwrapped(v *[]string, decoder smithyxml.NodeDecoder) error { var sv []string if *v == nil { sv = make([]string, 0) } else { sv = *v } switch { default: var mv string t := decoder.StartEl _ = t val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) mv = xtv } sv = append(sv, mv) } *v = sv return nil } func awsRestxml_deserializeDocumentXmlNamespaceNested(v **types.XmlNamespaceNested, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *types.XmlNamespaceNested if *v == nil { sv = &types.XmlNamespaceNested{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("foo", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) sv.Foo = ptr.String(xtv) } case strings.EqualFold("values", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentXmlNamespacedList(&sv.Values, nodeDecoder); err != nil { return err } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentBooleanList(v *[]bool, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv []bool if *v == nil { sv = make([]bool, 0) } else { sv = *v } originalDecoder := decoder for { t, done, err := decoder.Token() if err != nil { return err } if done { break } memberDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) decoder = memberDecoder switch { case strings.EqualFold("member", t.Name.Local): var col bool val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv, err := strconv.ParseBool(string(val)) if err != nil { return fmt.Errorf("expected PrimitiveBoolean to be of type *bool, got %T instead", val) } col = xtv } sv = append(sv, col) default: err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentBooleanListUnwrapped(v *[]bool, decoder smithyxml.NodeDecoder) error { var sv []bool if *v == nil { sv = make([]bool, 0) } else { sv = *v } switch { default: var mv bool t := decoder.StartEl _ = t val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv, err := strconv.ParseBool(string(val)) if err != nil { return fmt.Errorf("expected PrimitiveBoolean to be of type *bool, got %T instead", val) } mv = xtv } sv = append(sv, mv) } *v = sv return nil } func awsRestxml_deserializeDocumentFooEnumList(v *[]types.FooEnum, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv []types.FooEnum if *v == nil { sv = make([]types.FooEnum, 0) } else { sv = *v } originalDecoder := decoder for { t, done, err := decoder.Token() if err != nil { return err } if done { break } memberDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) decoder = memberDecoder switch { case strings.EqualFold("member", t.Name.Local): var col types.FooEnum val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) col = types.FooEnum(xtv) } sv = append(sv, col) default: err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentFooEnumListUnwrapped(v *[]types.FooEnum, decoder smithyxml.NodeDecoder) error { var sv []types.FooEnum if *v == nil { sv = make([]types.FooEnum, 0) } else { sv = *v } switch { default: var mv types.FooEnum t := decoder.StartEl _ = t val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) mv = types.FooEnum(xtv) } sv = append(sv, mv) } *v = sv return nil } func awsRestxml_deserializeDocumentFooEnumMap(v *map[string]types.FooEnum, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv map[string]types.FooEnum if *v == nil { sv = make(map[string]types.FooEnum, 0) } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } switch { case strings.EqualFold("entry", t.Name.Local): entryDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentFooEnumMapUnwrapped(&sv, entryDecoder); err != nil { return err } default: err = decoder.Decoder.Skip() if err != nil { return err } } } *v = sv return nil } func awsRestxml_deserializeDocumentFooEnumMapUnwrapped(v *map[string]types.FooEnum, decoder smithyxml.NodeDecoder) error { var sv map[string]types.FooEnum if *v == nil { sv = make(map[string]types.FooEnum, 0) } else { sv = *v } var ek string var ev types.FooEnum for { t, done, err := decoder.Token() if err != nil { return err } if done { sv[ek] = ev break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("key", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) ek = xtv } case strings.EqualFold("value", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) ev = types.FooEnum(xtv) } default: err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentFooEnumSet(v *[]types.FooEnum, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv []types.FooEnum if *v == nil { sv = make([]types.FooEnum, 0) } else { sv = *v } originalDecoder := decoder for { t, done, err := decoder.Token() if err != nil { return err } if done { break } memberDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) decoder = memberDecoder switch { case strings.EqualFold("member", t.Name.Local): var col types.FooEnum val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) col = types.FooEnum(xtv) } sv = append(sv, col) default: err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentFooEnumSetUnwrapped(v *[]types.FooEnum, decoder smithyxml.NodeDecoder) error { var sv []types.FooEnum if *v == nil { sv = make([]types.FooEnum, 0) } else { sv = *v } switch { default: var mv types.FooEnum t := decoder.StartEl _ = t val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) mv = types.FooEnum(xtv) } sv = append(sv, mv) } *v = sv return nil } func awsRestxml_deserializeDocumentGreetingStruct(v **types.GreetingStruct, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv *types.GreetingStruct if *v == nil { sv = &types.GreetingStruct{} } else { sv = *v } for { t, done, err := decoder.Token() if err != nil { return err } if done { break } originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { case strings.EqualFold("hi", t.Name.Local): val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) sv.Hi = ptr.String(xtv) } default: // Do nothing and ignore the unexpected tag element err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentIntegerList(v *[]int32, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv []int32 if *v == nil { sv = make([]int32, 0) } else { sv = *v } originalDecoder := decoder for { t, done, err := decoder.Token() if err != nil { return err } if done { break } memberDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) decoder = memberDecoder switch { case strings.EqualFold("member", t.Name.Local): var col int32 val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) i64, err := strconv.ParseInt(xtv, 10, 64) if err != nil { return err } col = int32(i64) } sv = append(sv, col) default: err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentIntegerListUnwrapped(v *[]int32, decoder smithyxml.NodeDecoder) error { var sv []int32 if *v == nil { sv = make([]int32, 0) } else { sv = *v } switch { default: var mv int32 t := decoder.StartEl _ = t val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) i64, err := strconv.ParseInt(xtv, 10, 64) if err != nil { return err } mv = int32(i64) } sv = append(sv, mv) } *v = sv return nil } func awsRestxml_deserializeDocumentNestedStringList(v *[][]string, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv [][]string if *v == nil { sv = make([][]string, 0) } else { sv = *v } originalDecoder := decoder for { t, done, err := decoder.Token() if err != nil { return err } if done { break } switch { case strings.EqualFold("member", t.Name.Local): var col []string nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentStringList(&col, nodeDecoder); err != nil { return err } sv = append(sv, col) default: err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentNestedStringListUnwrapped(v *[][]string, decoder smithyxml.NodeDecoder) error { var sv [][]string if *v == nil { sv = make([][]string, 0) } else { sv = *v } switch { default: var mv []string t := decoder.StartEl _ = t nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) if err := awsRestxml_deserializeDocumentStringList(&mv, nodeDecoder); err != nil { return err } sv = append(sv, mv) } *v = sv return nil } func awsRestxml_deserializeDocumentStringList(v *[]string, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv []string if *v == nil { sv = make([]string, 0) } else { sv = *v } originalDecoder := decoder for { t, done, err := decoder.Token() if err != nil { return err } if done { break } memberDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) decoder = memberDecoder switch { case strings.EqualFold("member", t.Name.Local): var col string val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) col = xtv } sv = append(sv, col) default: err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentStringListUnwrapped(v *[]string, decoder smithyxml.NodeDecoder) error { var sv []string if *v == nil { sv = make([]string, 0) } else { sv = *v } switch { default: var mv string t := decoder.StartEl _ = t val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) mv = xtv } sv = append(sv, mv) } *v = sv return nil } func awsRestxml_deserializeDocumentStringSet(v *[]string, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv []string if *v == nil { sv = make([]string, 0) } else { sv = *v } originalDecoder := decoder for { t, done, err := decoder.Token() if err != nil { return err } if done { break } memberDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) decoder = memberDecoder switch { case strings.EqualFold("member", t.Name.Local): var col string val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) col = xtv } sv = append(sv, col) default: err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentStringSetUnwrapped(v *[]string, decoder smithyxml.NodeDecoder) error { var sv []string if *v == nil { sv = make([]string, 0) } else { sv = *v } switch { default: var mv string t := decoder.StartEl _ = t val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) mv = xtv } sv = append(sv, mv) } *v = sv return nil } func awsRestxml_deserializeDocumentTimestampList(v *[]time.Time, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } var sv []time.Time if *v == nil { sv = make([]time.Time, 0) } else { sv = *v } originalDecoder := decoder for { t, done, err := decoder.Token() if err != nil { return err } if done { break } memberDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) decoder = memberDecoder switch { case strings.EqualFold("member", t.Name.Local): var col time.Time val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) t, err := smithytime.ParseDateTime(xtv) if err != nil { return err } col = t } sv = append(sv, col) default: err = decoder.Decoder.Skip() if err != nil { return err } } decoder = originalDecoder } *v = sv return nil } func awsRestxml_deserializeDocumentTimestampListUnwrapped(v *[]time.Time, decoder smithyxml.NodeDecoder) error { var sv []time.Time if *v == nil { sv = make([]time.Time, 0) } else { sv = *v } switch { default: var mv time.Time t := decoder.StartEl _ = t val, err := decoder.Value() if err != nil { return err } if val == nil { break } { xtv := string(val) t, err := smithytime.ParseDateTime(xtv) if err != nil { return err } mv = t } sv = append(sv, mv) } *v = sv return nil }