// Code generated by smithy-go-codegen DO NOT EDIT. package emrcontainers import ( "bytes" "context" "fmt" "github.com/aws/aws-sdk-go-v2/service/emrcontainers/types" smithy "github.com/aws/smithy-go" "github.com/aws/smithy-go/encoding/httpbinding" smithyjson "github.com/aws/smithy-go/encoding/json" "github.com/aws/smithy-go/middleware" smithytime "github.com/aws/smithy-go/time" smithyhttp "github.com/aws/smithy-go/transport/http" ) type awsRestjson1_serializeOpCancelJobRun struct { } func (*awsRestjson1_serializeOpCancelJobRun) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpCancelJobRun) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { request, ok := in.Request.(*smithyhttp.Request) if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} } input, ok := in.Parameters.(*CancelJobRunInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/virtualclusters/{virtualClusterId}/jobruns/{id}") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "DELETE" restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsCancelJobRunInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request.Request, err = restEncoder.Encode(request.Request); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } in.Request = request return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsCancelJobRunInput(v *CancelJobRunInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if v.Id == nil || len(*v.Id) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member id must not be empty")} } if v.Id != nil { if err := encoder.SetURI("id").String(*v.Id); err != nil { return err } } if v.VirtualClusterId == nil || len(*v.VirtualClusterId) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member virtualClusterId must not be empty")} } if v.VirtualClusterId != nil { if err := encoder.SetURI("virtualClusterId").String(*v.VirtualClusterId); err != nil { return err } } return nil } type awsRestjson1_serializeOpCreateJobTemplate struct { } func (*awsRestjson1_serializeOpCreateJobTemplate) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpCreateJobTemplate) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { request, ok := in.Request.(*smithyhttp.Request) if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} } input, ok := in.Parameters.(*CreateJobTemplateInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/jobtemplates") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "POST" restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } restEncoder.SetHeader("Content-Type").String("application/json") jsonEncoder := smithyjson.NewEncoder() if err := awsRestjson1_serializeOpDocumentCreateJobTemplateInput(input, jsonEncoder.Value); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request.Request, err = restEncoder.Encode(request.Request); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } in.Request = request return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsCreateJobTemplateInput(v *CreateJobTemplateInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } return nil } func awsRestjson1_serializeOpDocumentCreateJobTemplateInput(v *CreateJobTemplateInput, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.ClientToken != nil { ok := object.Key("clientToken") ok.String(*v.ClientToken) } if v.JobTemplateData != nil { ok := object.Key("jobTemplateData") if err := awsRestjson1_serializeDocumentJobTemplateData(v.JobTemplateData, ok); err != nil { return err } } if v.KmsKeyArn != nil { ok := object.Key("kmsKeyArn") ok.String(*v.KmsKeyArn) } if v.Name != nil { ok := object.Key("name") ok.String(*v.Name) } if v.Tags != nil { ok := object.Key("tags") if err := awsRestjson1_serializeDocumentTagMap(v.Tags, ok); err != nil { return err } } return nil } type awsRestjson1_serializeOpCreateManagedEndpoint struct { } func (*awsRestjson1_serializeOpCreateManagedEndpoint) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpCreateManagedEndpoint) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { request, ok := in.Request.(*smithyhttp.Request) if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} } input, ok := in.Parameters.(*CreateManagedEndpointInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/virtualclusters/{virtualClusterId}/endpoints") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "POST" restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsCreateManagedEndpointInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } restEncoder.SetHeader("Content-Type").String("application/json") jsonEncoder := smithyjson.NewEncoder() if err := awsRestjson1_serializeOpDocumentCreateManagedEndpointInput(input, jsonEncoder.Value); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request.Request, err = restEncoder.Encode(request.Request); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } in.Request = request return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsCreateManagedEndpointInput(v *CreateManagedEndpointInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if v.VirtualClusterId == nil || len(*v.VirtualClusterId) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member virtualClusterId must not be empty")} } if v.VirtualClusterId != nil { if err := encoder.SetURI("virtualClusterId").String(*v.VirtualClusterId); err != nil { return err } } return nil } func awsRestjson1_serializeOpDocumentCreateManagedEndpointInput(v *CreateManagedEndpointInput, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.CertificateArn != nil { ok := object.Key("certificateArn") ok.String(*v.CertificateArn) } if v.ClientToken != nil { ok := object.Key("clientToken") ok.String(*v.ClientToken) } if v.ConfigurationOverrides != nil { ok := object.Key("configurationOverrides") if err := awsRestjson1_serializeDocumentConfigurationOverrides(v.ConfigurationOverrides, ok); err != nil { return err } } if v.ExecutionRoleArn != nil { ok := object.Key("executionRoleArn") ok.String(*v.ExecutionRoleArn) } if v.Name != nil { ok := object.Key("name") ok.String(*v.Name) } if v.ReleaseLabel != nil { ok := object.Key("releaseLabel") ok.String(*v.ReleaseLabel) } if v.Tags != nil { ok := object.Key("tags") if err := awsRestjson1_serializeDocumentTagMap(v.Tags, ok); err != nil { return err } } if v.Type != nil { ok := object.Key("type") ok.String(*v.Type) } return nil } type awsRestjson1_serializeOpCreateVirtualCluster struct { } func (*awsRestjson1_serializeOpCreateVirtualCluster) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpCreateVirtualCluster) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { request, ok := in.Request.(*smithyhttp.Request) if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} } input, ok := in.Parameters.(*CreateVirtualClusterInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/virtualclusters") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "POST" restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } restEncoder.SetHeader("Content-Type").String("application/json") jsonEncoder := smithyjson.NewEncoder() if err := awsRestjson1_serializeOpDocumentCreateVirtualClusterInput(input, jsonEncoder.Value); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request.Request, err = restEncoder.Encode(request.Request); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } in.Request = request return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsCreateVirtualClusterInput(v *CreateVirtualClusterInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } return nil } func awsRestjson1_serializeOpDocumentCreateVirtualClusterInput(v *CreateVirtualClusterInput, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.ClientToken != nil { ok := object.Key("clientToken") ok.String(*v.ClientToken) } if v.ContainerProvider != nil { ok := object.Key("containerProvider") if err := awsRestjson1_serializeDocumentContainerProvider(v.ContainerProvider, ok); err != nil { return err } } if v.Name != nil { ok := object.Key("name") ok.String(*v.Name) } if v.Tags != nil { ok := object.Key("tags") if err := awsRestjson1_serializeDocumentTagMap(v.Tags, ok); err != nil { return err } } return nil } type awsRestjson1_serializeOpDeleteJobTemplate struct { } func (*awsRestjson1_serializeOpDeleteJobTemplate) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpDeleteJobTemplate) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { request, ok := in.Request.(*smithyhttp.Request) if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} } input, ok := in.Parameters.(*DeleteJobTemplateInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/jobtemplates/{id}") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "DELETE" restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsDeleteJobTemplateInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request.Request, err = restEncoder.Encode(request.Request); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } in.Request = request return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsDeleteJobTemplateInput(v *DeleteJobTemplateInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if v.Id == nil || len(*v.Id) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member id must not be empty")} } if v.Id != nil { if err := encoder.SetURI("id").String(*v.Id); err != nil { return err } } return nil } type awsRestjson1_serializeOpDeleteManagedEndpoint struct { } func (*awsRestjson1_serializeOpDeleteManagedEndpoint) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpDeleteManagedEndpoint) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { request, ok := in.Request.(*smithyhttp.Request) if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} } input, ok := in.Parameters.(*DeleteManagedEndpointInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/virtualclusters/{virtualClusterId}/endpoints/{id}") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "DELETE" restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsDeleteManagedEndpointInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request.Request, err = restEncoder.Encode(request.Request); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } in.Request = request return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsDeleteManagedEndpointInput(v *DeleteManagedEndpointInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if v.Id == nil || len(*v.Id) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member id must not be empty")} } if v.Id != nil { if err := encoder.SetURI("id").String(*v.Id); err != nil { return err } } if v.VirtualClusterId == nil || len(*v.VirtualClusterId) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member virtualClusterId must not be empty")} } if v.VirtualClusterId != nil { if err := encoder.SetURI("virtualClusterId").String(*v.VirtualClusterId); err != nil { return err } } return nil } type awsRestjson1_serializeOpDeleteVirtualCluster struct { } func (*awsRestjson1_serializeOpDeleteVirtualCluster) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpDeleteVirtualCluster) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { request, ok := in.Request.(*smithyhttp.Request) if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} } input, ok := in.Parameters.(*DeleteVirtualClusterInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/virtualclusters/{id}") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "DELETE" restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsDeleteVirtualClusterInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request.Request, err = restEncoder.Encode(request.Request); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } in.Request = request return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsDeleteVirtualClusterInput(v *DeleteVirtualClusterInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if v.Id == nil || len(*v.Id) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member id must not be empty")} } if v.Id != nil { if err := encoder.SetURI("id").String(*v.Id); err != nil { return err } } return nil } type awsRestjson1_serializeOpDescribeJobRun struct { } func (*awsRestjson1_serializeOpDescribeJobRun) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpDescribeJobRun) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { request, ok := in.Request.(*smithyhttp.Request) if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} } input, ok := in.Parameters.(*DescribeJobRunInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/virtualclusters/{virtualClusterId}/jobruns/{id}") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "GET" restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsDescribeJobRunInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request.Request, err = restEncoder.Encode(request.Request); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } in.Request = request return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsDescribeJobRunInput(v *DescribeJobRunInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if v.Id == nil || len(*v.Id) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member id must not be empty")} } if v.Id != nil { if err := encoder.SetURI("id").String(*v.Id); err != nil { return err } } if v.VirtualClusterId == nil || len(*v.VirtualClusterId) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member virtualClusterId must not be empty")} } if v.VirtualClusterId != nil { if err := encoder.SetURI("virtualClusterId").String(*v.VirtualClusterId); err != nil { return err } } return nil } type awsRestjson1_serializeOpDescribeJobTemplate struct { } func (*awsRestjson1_serializeOpDescribeJobTemplate) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpDescribeJobTemplate) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { request, ok := in.Request.(*smithyhttp.Request) if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} } input, ok := in.Parameters.(*DescribeJobTemplateInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/jobtemplates/{id}") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "GET" restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsDescribeJobTemplateInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request.Request, err = restEncoder.Encode(request.Request); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } in.Request = request return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsDescribeJobTemplateInput(v *DescribeJobTemplateInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if v.Id == nil || len(*v.Id) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member id must not be empty")} } if v.Id != nil { if err := encoder.SetURI("id").String(*v.Id); err != nil { return err } } return nil } type awsRestjson1_serializeOpDescribeManagedEndpoint struct { } func (*awsRestjson1_serializeOpDescribeManagedEndpoint) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpDescribeManagedEndpoint) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { request, ok := in.Request.(*smithyhttp.Request) if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} } input, ok := in.Parameters.(*DescribeManagedEndpointInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/virtualclusters/{virtualClusterId}/endpoints/{id}") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "GET" restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsDescribeManagedEndpointInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request.Request, err = restEncoder.Encode(request.Request); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } in.Request = request return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsDescribeManagedEndpointInput(v *DescribeManagedEndpointInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if v.Id == nil || len(*v.Id) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member id must not be empty")} } if v.Id != nil { if err := encoder.SetURI("id").String(*v.Id); err != nil { return err } } if v.VirtualClusterId == nil || len(*v.VirtualClusterId) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member virtualClusterId must not be empty")} } if v.VirtualClusterId != nil { if err := encoder.SetURI("virtualClusterId").String(*v.VirtualClusterId); err != nil { return err } } return nil } type awsRestjson1_serializeOpDescribeVirtualCluster struct { } func (*awsRestjson1_serializeOpDescribeVirtualCluster) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpDescribeVirtualCluster) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { request, ok := in.Request.(*smithyhttp.Request) if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} } input, ok := in.Parameters.(*DescribeVirtualClusterInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/virtualclusters/{id}") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "GET" restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsDescribeVirtualClusterInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request.Request, err = restEncoder.Encode(request.Request); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } in.Request = request return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsDescribeVirtualClusterInput(v *DescribeVirtualClusterInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if v.Id == nil || len(*v.Id) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member id must not be empty")} } if v.Id != nil { if err := encoder.SetURI("id").String(*v.Id); err != nil { return err } } return nil } type awsRestjson1_serializeOpGetManagedEndpointSessionCredentials struct { } func (*awsRestjson1_serializeOpGetManagedEndpointSessionCredentials) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpGetManagedEndpointSessionCredentials) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { request, ok := in.Request.(*smithyhttp.Request) if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} } input, ok := in.Parameters.(*GetManagedEndpointSessionCredentialsInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/virtualclusters/{virtualClusterIdentifier}/endpoints/{endpointIdentifier}/credentials") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "POST" restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsGetManagedEndpointSessionCredentialsInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } restEncoder.SetHeader("Content-Type").String("application/json") jsonEncoder := smithyjson.NewEncoder() if err := awsRestjson1_serializeOpDocumentGetManagedEndpointSessionCredentialsInput(input, jsonEncoder.Value); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request.Request, err = restEncoder.Encode(request.Request); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } in.Request = request return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsGetManagedEndpointSessionCredentialsInput(v *GetManagedEndpointSessionCredentialsInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if v.EndpointIdentifier == nil || len(*v.EndpointIdentifier) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member endpointIdentifier must not be empty")} } if v.EndpointIdentifier != nil { if err := encoder.SetURI("endpointIdentifier").String(*v.EndpointIdentifier); err != nil { return err } } if v.VirtualClusterIdentifier == nil || len(*v.VirtualClusterIdentifier) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member virtualClusterIdentifier must not be empty")} } if v.VirtualClusterIdentifier != nil { if err := encoder.SetURI("virtualClusterIdentifier").String(*v.VirtualClusterIdentifier); err != nil { return err } } return nil } func awsRestjson1_serializeOpDocumentGetManagedEndpointSessionCredentialsInput(v *GetManagedEndpointSessionCredentialsInput, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.ClientToken != nil { ok := object.Key("clientToken") ok.String(*v.ClientToken) } if v.CredentialType != nil { ok := object.Key("credentialType") ok.String(*v.CredentialType) } if v.DurationInSeconds != nil { ok := object.Key("durationInSeconds") ok.Integer(*v.DurationInSeconds) } if v.ExecutionRoleArn != nil { ok := object.Key("executionRoleArn") ok.String(*v.ExecutionRoleArn) } if v.LogContext != nil { ok := object.Key("logContext") ok.String(*v.LogContext) } return nil } type awsRestjson1_serializeOpListJobRuns struct { } func (*awsRestjson1_serializeOpListJobRuns) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpListJobRuns) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { request, ok := in.Request.(*smithyhttp.Request) if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} } input, ok := in.Parameters.(*ListJobRunsInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/virtualclusters/{virtualClusterId}/jobruns") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "GET" restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsListJobRunsInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request.Request, err = restEncoder.Encode(request.Request); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } in.Request = request return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsListJobRunsInput(v *ListJobRunsInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if v.CreatedAfter != nil { encoder.SetQuery("createdAfter").String(smithytime.FormatDateTime(*v.CreatedAfter)) } if v.CreatedBefore != nil { encoder.SetQuery("createdBefore").String(smithytime.FormatDateTime(*v.CreatedBefore)) } if v.MaxResults != nil { encoder.SetQuery("maxResults").Integer(*v.MaxResults) } if v.Name != nil { encoder.SetQuery("name").String(*v.Name) } if v.NextToken != nil { encoder.SetQuery("nextToken").String(*v.NextToken) } if v.States != nil { for i := range v.States { encoder.AddQuery("states").String(string(v.States[i])) } } if v.VirtualClusterId == nil || len(*v.VirtualClusterId) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member virtualClusterId must not be empty")} } if v.VirtualClusterId != nil { if err := encoder.SetURI("virtualClusterId").String(*v.VirtualClusterId); err != nil { return err } } return nil } type awsRestjson1_serializeOpListJobTemplates struct { } func (*awsRestjson1_serializeOpListJobTemplates) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpListJobTemplates) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { request, ok := in.Request.(*smithyhttp.Request) if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} } input, ok := in.Parameters.(*ListJobTemplatesInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/jobtemplates") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "GET" restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsListJobTemplatesInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request.Request, err = restEncoder.Encode(request.Request); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } in.Request = request return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsListJobTemplatesInput(v *ListJobTemplatesInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if v.CreatedAfter != nil { encoder.SetQuery("createdAfter").String(smithytime.FormatDateTime(*v.CreatedAfter)) } if v.CreatedBefore != nil { encoder.SetQuery("createdBefore").String(smithytime.FormatDateTime(*v.CreatedBefore)) } if v.MaxResults != nil { encoder.SetQuery("maxResults").Integer(*v.MaxResults) } if v.NextToken != nil { encoder.SetQuery("nextToken").String(*v.NextToken) } return nil } type awsRestjson1_serializeOpListManagedEndpoints struct { } func (*awsRestjson1_serializeOpListManagedEndpoints) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpListManagedEndpoints) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { request, ok := in.Request.(*smithyhttp.Request) if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} } input, ok := in.Parameters.(*ListManagedEndpointsInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/virtualclusters/{virtualClusterId}/endpoints") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "GET" restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsListManagedEndpointsInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request.Request, err = restEncoder.Encode(request.Request); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } in.Request = request return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsListManagedEndpointsInput(v *ListManagedEndpointsInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if v.CreatedAfter != nil { encoder.SetQuery("createdAfter").String(smithytime.FormatDateTime(*v.CreatedAfter)) } if v.CreatedBefore != nil { encoder.SetQuery("createdBefore").String(smithytime.FormatDateTime(*v.CreatedBefore)) } if v.MaxResults != nil { encoder.SetQuery("maxResults").Integer(*v.MaxResults) } if v.NextToken != nil { encoder.SetQuery("nextToken").String(*v.NextToken) } if v.States != nil { for i := range v.States { encoder.AddQuery("states").String(string(v.States[i])) } } if v.Types != nil { for i := range v.Types { encoder.AddQuery("types").String(v.Types[i]) } } if v.VirtualClusterId == nil || len(*v.VirtualClusterId) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member virtualClusterId must not be empty")} } if v.VirtualClusterId != nil { if err := encoder.SetURI("virtualClusterId").String(*v.VirtualClusterId); err != nil { return err } } return nil } type awsRestjson1_serializeOpListTagsForResource struct { } func (*awsRestjson1_serializeOpListTagsForResource) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpListTagsForResource) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { request, ok := in.Request.(*smithyhttp.Request) if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} } input, ok := in.Parameters.(*ListTagsForResourceInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/tags/{resourceArn}") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "GET" restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsListTagsForResourceInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request.Request, err = restEncoder.Encode(request.Request); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } in.Request = request return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsListTagsForResourceInput(v *ListTagsForResourceInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if v.ResourceArn == nil || len(*v.ResourceArn) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member resourceArn must not be empty")} } if v.ResourceArn != nil { if err := encoder.SetURI("resourceArn").String(*v.ResourceArn); err != nil { return err } } return nil } type awsRestjson1_serializeOpListVirtualClusters struct { } func (*awsRestjson1_serializeOpListVirtualClusters) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpListVirtualClusters) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { request, ok := in.Request.(*smithyhttp.Request) if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} } input, ok := in.Parameters.(*ListVirtualClustersInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/virtualclusters") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "GET" restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsListVirtualClustersInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request.Request, err = restEncoder.Encode(request.Request); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } in.Request = request return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsListVirtualClustersInput(v *ListVirtualClustersInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if v.ContainerProviderId != nil { encoder.SetQuery("containerProviderId").String(*v.ContainerProviderId) } if len(v.ContainerProviderType) > 0 { encoder.SetQuery("containerProviderType").String(string(v.ContainerProviderType)) } if v.CreatedAfter != nil { encoder.SetQuery("createdAfter").String(smithytime.FormatDateTime(*v.CreatedAfter)) } if v.CreatedBefore != nil { encoder.SetQuery("createdBefore").String(smithytime.FormatDateTime(*v.CreatedBefore)) } if v.MaxResults != nil { encoder.SetQuery("maxResults").Integer(*v.MaxResults) } if v.NextToken != nil { encoder.SetQuery("nextToken").String(*v.NextToken) } if v.States != nil { for i := range v.States { encoder.AddQuery("states").String(string(v.States[i])) } } return nil } type awsRestjson1_serializeOpStartJobRun struct { } func (*awsRestjson1_serializeOpStartJobRun) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpStartJobRun) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { request, ok := in.Request.(*smithyhttp.Request) if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} } input, ok := in.Parameters.(*StartJobRunInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/virtualclusters/{virtualClusterId}/jobruns") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "POST" restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsStartJobRunInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } restEncoder.SetHeader("Content-Type").String("application/json") jsonEncoder := smithyjson.NewEncoder() if err := awsRestjson1_serializeOpDocumentStartJobRunInput(input, jsonEncoder.Value); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request.Request, err = restEncoder.Encode(request.Request); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } in.Request = request return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsStartJobRunInput(v *StartJobRunInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if v.VirtualClusterId == nil || len(*v.VirtualClusterId) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member virtualClusterId must not be empty")} } if v.VirtualClusterId != nil { if err := encoder.SetURI("virtualClusterId").String(*v.VirtualClusterId); err != nil { return err } } return nil } func awsRestjson1_serializeOpDocumentStartJobRunInput(v *StartJobRunInput, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.ClientToken != nil { ok := object.Key("clientToken") ok.String(*v.ClientToken) } if v.ConfigurationOverrides != nil { ok := object.Key("configurationOverrides") if err := awsRestjson1_serializeDocumentConfigurationOverrides(v.ConfigurationOverrides, ok); err != nil { return err } } if v.ExecutionRoleArn != nil { ok := object.Key("executionRoleArn") ok.String(*v.ExecutionRoleArn) } if v.JobDriver != nil { ok := object.Key("jobDriver") if err := awsRestjson1_serializeDocumentJobDriver(v.JobDriver, ok); err != nil { return err } } if v.JobTemplateId != nil { ok := object.Key("jobTemplateId") ok.String(*v.JobTemplateId) } if v.JobTemplateParameters != nil { ok := object.Key("jobTemplateParameters") if err := awsRestjson1_serializeDocumentTemplateParameterInputMap(v.JobTemplateParameters, ok); err != nil { return err } } if v.Name != nil { ok := object.Key("name") ok.String(*v.Name) } if v.ReleaseLabel != nil { ok := object.Key("releaseLabel") ok.String(*v.ReleaseLabel) } if v.RetryPolicyConfiguration != nil { ok := object.Key("retryPolicyConfiguration") if err := awsRestjson1_serializeDocumentRetryPolicyConfiguration(v.RetryPolicyConfiguration, ok); err != nil { return err } } if v.Tags != nil { ok := object.Key("tags") if err := awsRestjson1_serializeDocumentTagMap(v.Tags, ok); err != nil { return err } } return nil } type awsRestjson1_serializeOpTagResource struct { } func (*awsRestjson1_serializeOpTagResource) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpTagResource) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { request, ok := in.Request.(*smithyhttp.Request) if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} } input, ok := in.Parameters.(*TagResourceInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/tags/{resourceArn}") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "POST" restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsTagResourceInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } restEncoder.SetHeader("Content-Type").String("application/json") jsonEncoder := smithyjson.NewEncoder() if err := awsRestjson1_serializeOpDocumentTagResourceInput(input, jsonEncoder.Value); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request.Request, err = restEncoder.Encode(request.Request); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } in.Request = request return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsTagResourceInput(v *TagResourceInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if v.ResourceArn == nil || len(*v.ResourceArn) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member resourceArn must not be empty")} } if v.ResourceArn != nil { if err := encoder.SetURI("resourceArn").String(*v.ResourceArn); err != nil { return err } } return nil } func awsRestjson1_serializeOpDocumentTagResourceInput(v *TagResourceInput, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.Tags != nil { ok := object.Key("tags") if err := awsRestjson1_serializeDocumentTagMap(v.Tags, ok); err != nil { return err } } return nil } type awsRestjson1_serializeOpUntagResource struct { } func (*awsRestjson1_serializeOpUntagResource) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpUntagResource) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { request, ok := in.Request.(*smithyhttp.Request) if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} } input, ok := in.Parameters.(*UntagResourceInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/tags/{resourceArn}") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "DELETE" restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsUntagResourceInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if request.Request, err = restEncoder.Encode(request.Request); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } in.Request = request return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsUntagResourceInput(v *UntagResourceInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if v.ResourceArn == nil || len(*v.ResourceArn) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member resourceArn must not be empty")} } if v.ResourceArn != nil { if err := encoder.SetURI("resourceArn").String(*v.ResourceArn); err != nil { return err } } if v.TagKeys != nil { for i := range v.TagKeys { encoder.AddQuery("tagKeys").String(v.TagKeys[i]) } } return nil } func awsRestjson1_serializeDocumentCloudWatchMonitoringConfiguration(v *types.CloudWatchMonitoringConfiguration, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.LogGroupName != nil { ok := object.Key("logGroupName") ok.String(*v.LogGroupName) } if v.LogStreamNamePrefix != nil { ok := object.Key("logStreamNamePrefix") ok.String(*v.LogStreamNamePrefix) } return nil } func awsRestjson1_serializeDocumentConfiguration(v *types.Configuration, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.Classification != nil { ok := object.Key("classification") ok.String(*v.Classification) } if v.Configurations != nil { ok := object.Key("configurations") if err := awsRestjson1_serializeDocumentConfigurationList(v.Configurations, ok); err != nil { return err } } if v.Properties != nil { ok := object.Key("properties") if err := awsRestjson1_serializeDocumentSensitivePropertiesMap(v.Properties, ok); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentConfigurationList(v []types.Configuration, value smithyjson.Value) error { array := value.Array() defer array.Close() for i := range v { av := array.Value() if err := awsRestjson1_serializeDocumentConfiguration(&v[i], av); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentConfigurationOverrides(v *types.ConfigurationOverrides, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.ApplicationConfiguration != nil { ok := object.Key("applicationConfiguration") if err := awsRestjson1_serializeDocumentConfigurationList(v.ApplicationConfiguration, ok); err != nil { return err } } if v.MonitoringConfiguration != nil { ok := object.Key("monitoringConfiguration") if err := awsRestjson1_serializeDocumentMonitoringConfiguration(v.MonitoringConfiguration, ok); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentContainerInfo(v types.ContainerInfo, value smithyjson.Value) error { object := value.Object() defer object.Close() switch uv := v.(type) { case *types.ContainerInfoMemberEksInfo: av := object.Key("eksInfo") if err := awsRestjson1_serializeDocumentEksInfo(&uv.Value, av); err != nil { return err } default: return fmt.Errorf("attempted to serialize unknown member type %T for union %T", uv, v) } return nil } func awsRestjson1_serializeDocumentContainerLogRotationConfiguration(v *types.ContainerLogRotationConfiguration, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.MaxFilesToKeep != nil { ok := object.Key("maxFilesToKeep") ok.Integer(*v.MaxFilesToKeep) } if v.RotationSize != nil { ok := object.Key("rotationSize") ok.String(*v.RotationSize) } return nil } func awsRestjson1_serializeDocumentContainerProvider(v *types.ContainerProvider, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.Id != nil { ok := object.Key("id") ok.String(*v.Id) } if v.Info != nil { ok := object.Key("info") if err := awsRestjson1_serializeDocumentContainerInfo(v.Info, ok); err != nil { return err } } if len(v.Type) > 0 { ok := object.Key("type") ok.String(string(v.Type)) } return nil } func awsRestjson1_serializeDocumentEksInfo(v *types.EksInfo, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.Namespace != nil { ok := object.Key("namespace") ok.String(*v.Namespace) } return nil } func awsRestjson1_serializeDocumentEntryPointArguments(v []string, value smithyjson.Value) error { array := value.Array() defer array.Close() for i := range v { av := array.Value() av.String(v[i]) } return nil } func awsRestjson1_serializeDocumentJobDriver(v *types.JobDriver, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.SparkSqlJobDriver != nil { ok := object.Key("sparkSqlJobDriver") if err := awsRestjson1_serializeDocumentSparkSqlJobDriver(v.SparkSqlJobDriver, ok); err != nil { return err } } if v.SparkSubmitJobDriver != nil { ok := object.Key("sparkSubmitJobDriver") if err := awsRestjson1_serializeDocumentSparkSubmitJobDriver(v.SparkSubmitJobDriver, ok); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentJobTemplateData(v *types.JobTemplateData, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.ConfigurationOverrides != nil { ok := object.Key("configurationOverrides") if err := awsRestjson1_serializeDocumentParametricConfigurationOverrides(v.ConfigurationOverrides, ok); err != nil { return err } } if v.ExecutionRoleArn != nil { ok := object.Key("executionRoleArn") ok.String(*v.ExecutionRoleArn) } if v.JobDriver != nil { ok := object.Key("jobDriver") if err := awsRestjson1_serializeDocumentJobDriver(v.JobDriver, ok); err != nil { return err } } if v.JobTags != nil { ok := object.Key("jobTags") if err := awsRestjson1_serializeDocumentTagMap(v.JobTags, ok); err != nil { return err } } if v.ParameterConfiguration != nil { ok := object.Key("parameterConfiguration") if err := awsRestjson1_serializeDocumentTemplateParameterConfigurationMap(v.ParameterConfiguration, ok); err != nil { return err } } if v.ReleaseLabel != nil { ok := object.Key("releaseLabel") ok.String(*v.ReleaseLabel) } return nil } func awsRestjson1_serializeDocumentMonitoringConfiguration(v *types.MonitoringConfiguration, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.CloudWatchMonitoringConfiguration != nil { ok := object.Key("cloudWatchMonitoringConfiguration") if err := awsRestjson1_serializeDocumentCloudWatchMonitoringConfiguration(v.CloudWatchMonitoringConfiguration, ok); err != nil { return err } } if v.ContainerLogRotationConfiguration != nil { ok := object.Key("containerLogRotationConfiguration") if err := awsRestjson1_serializeDocumentContainerLogRotationConfiguration(v.ContainerLogRotationConfiguration, ok); err != nil { return err } } if len(v.PersistentAppUI) > 0 { ok := object.Key("persistentAppUI") ok.String(string(v.PersistentAppUI)) } if v.S3MonitoringConfiguration != nil { ok := object.Key("s3MonitoringConfiguration") if err := awsRestjson1_serializeDocumentS3MonitoringConfiguration(v.S3MonitoringConfiguration, ok); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentParametricCloudWatchMonitoringConfiguration(v *types.ParametricCloudWatchMonitoringConfiguration, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.LogGroupName != nil { ok := object.Key("logGroupName") ok.String(*v.LogGroupName) } if v.LogStreamNamePrefix != nil { ok := object.Key("logStreamNamePrefix") ok.String(*v.LogStreamNamePrefix) } return nil } func awsRestjson1_serializeDocumentParametricConfigurationOverrides(v *types.ParametricConfigurationOverrides, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.ApplicationConfiguration != nil { ok := object.Key("applicationConfiguration") if err := awsRestjson1_serializeDocumentConfigurationList(v.ApplicationConfiguration, ok); err != nil { return err } } if v.MonitoringConfiguration != nil { ok := object.Key("monitoringConfiguration") if err := awsRestjson1_serializeDocumentParametricMonitoringConfiguration(v.MonitoringConfiguration, ok); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentParametricMonitoringConfiguration(v *types.ParametricMonitoringConfiguration, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.CloudWatchMonitoringConfiguration != nil { ok := object.Key("cloudWatchMonitoringConfiguration") if err := awsRestjson1_serializeDocumentParametricCloudWatchMonitoringConfiguration(v.CloudWatchMonitoringConfiguration, ok); err != nil { return err } } if v.PersistentAppUI != nil { ok := object.Key("persistentAppUI") ok.String(*v.PersistentAppUI) } if v.S3MonitoringConfiguration != nil { ok := object.Key("s3MonitoringConfiguration") if err := awsRestjson1_serializeDocumentParametricS3MonitoringConfiguration(v.S3MonitoringConfiguration, ok); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentParametricS3MonitoringConfiguration(v *types.ParametricS3MonitoringConfiguration, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.LogUri != nil { ok := object.Key("logUri") ok.String(*v.LogUri) } return nil } func awsRestjson1_serializeDocumentRetryPolicyConfiguration(v *types.RetryPolicyConfiguration, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.MaxAttempts != nil { ok := object.Key("maxAttempts") ok.Integer(*v.MaxAttempts) } return nil } func awsRestjson1_serializeDocumentS3MonitoringConfiguration(v *types.S3MonitoringConfiguration, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.LogUri != nil { ok := object.Key("logUri") ok.String(*v.LogUri) } return nil } func awsRestjson1_serializeDocumentSensitivePropertiesMap(v map[string]string, value smithyjson.Value) error { object := value.Object() defer object.Close() for key := range v { om := object.Key(key) om.String(v[key]) } return nil } func awsRestjson1_serializeDocumentSparkSqlJobDriver(v *types.SparkSqlJobDriver, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.EntryPoint != nil { ok := object.Key("entryPoint") ok.String(*v.EntryPoint) } if v.SparkSqlParameters != nil { ok := object.Key("sparkSqlParameters") ok.String(*v.SparkSqlParameters) } return nil } func awsRestjson1_serializeDocumentSparkSubmitJobDriver(v *types.SparkSubmitJobDriver, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.EntryPoint != nil { ok := object.Key("entryPoint") ok.String(*v.EntryPoint) } if v.EntryPointArguments != nil { ok := object.Key("entryPointArguments") if err := awsRestjson1_serializeDocumentEntryPointArguments(v.EntryPointArguments, ok); err != nil { return err } } if v.SparkSubmitParameters != nil { ok := object.Key("sparkSubmitParameters") ok.String(*v.SparkSubmitParameters) } return nil } func awsRestjson1_serializeDocumentTagMap(v map[string]string, value smithyjson.Value) error { object := value.Object() defer object.Close() for key := range v { om := object.Key(key) om.String(v[key]) } return nil } func awsRestjson1_serializeDocumentTemplateParameterConfiguration(v *types.TemplateParameterConfiguration, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.DefaultValue != nil { ok := object.Key("defaultValue") ok.String(*v.DefaultValue) } if len(v.Type) > 0 { ok := object.Key("type") ok.String(string(v.Type)) } return nil } func awsRestjson1_serializeDocumentTemplateParameterConfigurationMap(v map[string]types.TemplateParameterConfiguration, value smithyjson.Value) error { object := value.Object() defer object.Close() for key := range v { om := object.Key(key) mapVar := v[key] if err := awsRestjson1_serializeDocumentTemplateParameterConfiguration(&mapVar, om); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentTemplateParameterInputMap(v map[string]string, value smithyjson.Value) error { object := value.Object() defer object.Close() for key := range v { om := object.Key(key) om.String(v[key]) } return nil }