service/connectcampaignsv2/serializers.go (3,177 lines of code) (raw):

// Code generated by smithy-go-codegen DO NOT EDIT. package connectcampaignsv2 import ( "bytes" "context" "fmt" "github.com/aws/aws-sdk-go-v2/service/connectcampaignsv2/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" "github.com/aws/smithy-go/tracing" smithyhttp "github.com/aws/smithy-go/transport/http" "math" ) type awsRestjson1_serializeOpCreateCampaign struct { } func (*awsRestjson1_serializeOpCreateCampaign) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpCreateCampaign) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*CreateCampaignInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/campaigns") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "PUT" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, 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_serializeOpDocumentCreateCampaignInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsCreateCampaignInput(v *CreateCampaignInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } return nil } func awsRestjson1_serializeOpDocumentCreateCampaignInput(v *CreateCampaignInput, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.ChannelSubtypeConfig != nil { ok := object.Key("channelSubtypeConfig") if err := awsRestjson1_serializeDocumentChannelSubtypeConfig(v.ChannelSubtypeConfig, ok); err != nil { return err } } if v.CommunicationLimitsOverride != nil { ok := object.Key("communicationLimitsOverride") if err := awsRestjson1_serializeDocumentCommunicationLimitsConfig(v.CommunicationLimitsOverride, ok); err != nil { return err } } if v.CommunicationTimeConfig != nil { ok := object.Key("communicationTimeConfig") if err := awsRestjson1_serializeDocumentCommunicationTimeConfig(v.CommunicationTimeConfig, ok); err != nil { return err } } if v.ConnectCampaignFlowArn != nil { ok := object.Key("connectCampaignFlowArn") ok.String(*v.ConnectCampaignFlowArn) } if v.ConnectInstanceId != nil { ok := object.Key("connectInstanceId") ok.String(*v.ConnectInstanceId) } if v.Name != nil { ok := object.Key("name") ok.String(*v.Name) } if v.Schedule != nil { ok := object.Key("schedule") if err := awsRestjson1_serializeDocumentSchedule(v.Schedule, ok); err != nil { return err } } if v.Source != nil { ok := object.Key("source") if err := awsRestjson1_serializeDocumentSource(v.Source, 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_serializeOpDeleteCampaign struct { } func (*awsRestjson1_serializeOpDeleteCampaign) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpDeleteCampaign) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*DeleteCampaignInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/campaigns/{id}") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "DELETE" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsDeleteCampaignInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsDeleteCampaignInput(v *DeleteCampaignInput, 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_serializeOpDeleteCampaignChannelSubtypeConfig struct { } func (*awsRestjson1_serializeOpDeleteCampaignChannelSubtypeConfig) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpDeleteCampaignChannelSubtypeConfig) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*DeleteCampaignChannelSubtypeConfigInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/campaigns/{id}/channel-subtype-config") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "DELETE" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsDeleteCampaignChannelSubtypeConfigInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsDeleteCampaignChannelSubtypeConfigInput(v *DeleteCampaignChannelSubtypeConfigInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if len(v.ChannelSubtype) > 0 { encoder.SetQuery("channelSubtype").String(string(v.ChannelSubtype)) } 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_serializeOpDeleteCampaignCommunicationLimits struct { } func (*awsRestjson1_serializeOpDeleteCampaignCommunicationLimits) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpDeleteCampaignCommunicationLimits) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*DeleteCampaignCommunicationLimitsInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/campaigns/{id}/communication-limits") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "DELETE" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsDeleteCampaignCommunicationLimitsInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsDeleteCampaignCommunicationLimitsInput(v *DeleteCampaignCommunicationLimitsInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if len(v.Config) > 0 { encoder.SetQuery("config").String(string(v.Config)) } 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_serializeOpDeleteCampaignCommunicationTime struct { } func (*awsRestjson1_serializeOpDeleteCampaignCommunicationTime) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpDeleteCampaignCommunicationTime) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*DeleteCampaignCommunicationTimeInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/campaigns/{id}/communication-time") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "DELETE" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsDeleteCampaignCommunicationTimeInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsDeleteCampaignCommunicationTimeInput(v *DeleteCampaignCommunicationTimeInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if len(v.Config) > 0 { encoder.SetQuery("config").String(string(v.Config)) } 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_serializeOpDeleteConnectInstanceConfig struct { } func (*awsRestjson1_serializeOpDeleteConnectInstanceConfig) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpDeleteConnectInstanceConfig) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*DeleteConnectInstanceConfigInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/connect-instance/{connectInstanceId}/config") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "DELETE" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsDeleteConnectInstanceConfigInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsDeleteConnectInstanceConfigInput(v *DeleteConnectInstanceConfigInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if len(v.CampaignDeletionPolicy) > 0 { encoder.SetQuery("campaignDeletionPolicy").String(string(v.CampaignDeletionPolicy)) } if v.ConnectInstanceId == nil || len(*v.ConnectInstanceId) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member connectInstanceId must not be empty")} } if v.ConnectInstanceId != nil { if err := encoder.SetURI("connectInstanceId").String(*v.ConnectInstanceId); err != nil { return err } } return nil } type awsRestjson1_serializeOpDeleteConnectInstanceIntegration struct { } func (*awsRestjson1_serializeOpDeleteConnectInstanceIntegration) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpDeleteConnectInstanceIntegration) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*DeleteConnectInstanceIntegrationInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/connect-instance/{connectInstanceId}/integrations/delete") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "POST" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsDeleteConnectInstanceIntegrationInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } restEncoder.SetHeader("Content-Type").String("application/json") jsonEncoder := smithyjson.NewEncoder() if err := awsRestjson1_serializeOpDocumentDeleteConnectInstanceIntegrationInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsDeleteConnectInstanceIntegrationInput(v *DeleteConnectInstanceIntegrationInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if v.ConnectInstanceId == nil || len(*v.ConnectInstanceId) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member connectInstanceId must not be empty")} } if v.ConnectInstanceId != nil { if err := encoder.SetURI("connectInstanceId").String(*v.ConnectInstanceId); err != nil { return err } } return nil } func awsRestjson1_serializeOpDocumentDeleteConnectInstanceIntegrationInput(v *DeleteConnectInstanceIntegrationInput, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.IntegrationIdentifier != nil { ok := object.Key("integrationIdentifier") if err := awsRestjson1_serializeDocumentIntegrationIdentifier(v.IntegrationIdentifier, ok); err != nil { return err } } return nil } type awsRestjson1_serializeOpDeleteInstanceOnboardingJob struct { } func (*awsRestjson1_serializeOpDeleteInstanceOnboardingJob) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpDeleteInstanceOnboardingJob) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*DeleteInstanceOnboardingJobInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/connect-instance/{connectInstanceId}/onboarding") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "DELETE" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsDeleteInstanceOnboardingJobInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsDeleteInstanceOnboardingJobInput(v *DeleteInstanceOnboardingJobInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if v.ConnectInstanceId == nil || len(*v.ConnectInstanceId) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member connectInstanceId must not be empty")} } if v.ConnectInstanceId != nil { if err := encoder.SetURI("connectInstanceId").String(*v.ConnectInstanceId); err != nil { return err } } return nil } type awsRestjson1_serializeOpDescribeCampaign struct { } func (*awsRestjson1_serializeOpDescribeCampaign) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpDescribeCampaign) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*DescribeCampaignInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/campaigns/{id}") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "GET" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsDescribeCampaignInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsDescribeCampaignInput(v *DescribeCampaignInput, 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_serializeOpGetCampaignState struct { } func (*awsRestjson1_serializeOpGetCampaignState) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpGetCampaignState) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*GetCampaignStateInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/campaigns/{id}/state") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "GET" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsGetCampaignStateInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsGetCampaignStateInput(v *GetCampaignStateInput, 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_serializeOpGetCampaignStateBatch struct { } func (*awsRestjson1_serializeOpGetCampaignStateBatch) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpGetCampaignStateBatch) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*GetCampaignStateBatchInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/campaigns-state") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "POST" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, 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_serializeOpDocumentGetCampaignStateBatchInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsGetCampaignStateBatchInput(v *GetCampaignStateBatchInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } return nil } func awsRestjson1_serializeOpDocumentGetCampaignStateBatchInput(v *GetCampaignStateBatchInput, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.CampaignIds != nil { ok := object.Key("campaignIds") if err := awsRestjson1_serializeDocumentCampaignIdList(v.CampaignIds, ok); err != nil { return err } } return nil } type awsRestjson1_serializeOpGetConnectInstanceConfig struct { } func (*awsRestjson1_serializeOpGetConnectInstanceConfig) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpGetConnectInstanceConfig) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*GetConnectInstanceConfigInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/connect-instance/{connectInstanceId}/config") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "GET" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsGetConnectInstanceConfigInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsGetConnectInstanceConfigInput(v *GetConnectInstanceConfigInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if v.ConnectInstanceId == nil || len(*v.ConnectInstanceId) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member connectInstanceId must not be empty")} } if v.ConnectInstanceId != nil { if err := encoder.SetURI("connectInstanceId").String(*v.ConnectInstanceId); err != nil { return err } } return nil } type awsRestjson1_serializeOpGetInstanceOnboardingJobStatus struct { } func (*awsRestjson1_serializeOpGetInstanceOnboardingJobStatus) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpGetInstanceOnboardingJobStatus) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*GetInstanceOnboardingJobStatusInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/connect-instance/{connectInstanceId}/onboarding") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "GET" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsGetInstanceOnboardingJobStatusInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsGetInstanceOnboardingJobStatusInput(v *GetInstanceOnboardingJobStatusInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if v.ConnectInstanceId == nil || len(*v.ConnectInstanceId) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member connectInstanceId must not be empty")} } if v.ConnectInstanceId != nil { if err := encoder.SetURI("connectInstanceId").String(*v.ConnectInstanceId); err != nil { return err } } return nil } type awsRestjson1_serializeOpListCampaigns struct { } func (*awsRestjson1_serializeOpListCampaigns) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpListCampaigns) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*ListCampaignsInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/campaigns-summary") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "POST" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, 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_serializeOpDocumentListCampaignsInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsListCampaignsInput(v *ListCampaignsInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } return nil } func awsRestjson1_serializeOpDocumentListCampaignsInput(v *ListCampaignsInput, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.Filters != nil { ok := object.Key("filters") if err := awsRestjson1_serializeDocumentCampaignFilters(v.Filters, ok); err != nil { return err } } if v.MaxResults != nil { ok := object.Key("maxResults") ok.Integer(*v.MaxResults) } if v.NextToken != nil { ok := object.Key("nextToken") ok.String(*v.NextToken) } return nil } type awsRestjson1_serializeOpListConnectInstanceIntegrations struct { } func (*awsRestjson1_serializeOpListConnectInstanceIntegrations) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpListConnectInstanceIntegrations) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*ListConnectInstanceIntegrationsInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/connect-instance/{connectInstanceId}/integrations") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "GET" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsListConnectInstanceIntegrationsInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsListConnectInstanceIntegrationsInput(v *ListConnectInstanceIntegrationsInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if v.ConnectInstanceId == nil || len(*v.ConnectInstanceId) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member connectInstanceId must not be empty")} } if v.ConnectInstanceId != nil { if err := encoder.SetURI("connectInstanceId").String(*v.ConnectInstanceId); err != nil { return err } } if v.MaxResults != nil { encoder.SetQuery("maxResults").Integer(*v.MaxResults) } if v.NextToken != nil { encoder.SetQuery("nextToken").String(*v.NextToken) } 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, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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("/v2/tags/{arn}") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "GET" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, 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 endTimer() span.End() 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.Arn == nil || len(*v.Arn) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member arn must not be empty")} } if v.Arn != nil { if err := encoder.SetURI("arn").String(*v.Arn); err != nil { return err } } return nil } type awsRestjson1_serializeOpPauseCampaign struct { } func (*awsRestjson1_serializeOpPauseCampaign) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpPauseCampaign) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*PauseCampaignInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/campaigns/{id}/pause") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "POST" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsPauseCampaignInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsPauseCampaignInput(v *PauseCampaignInput, 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_serializeOpPutConnectInstanceIntegration struct { } func (*awsRestjson1_serializeOpPutConnectInstanceIntegration) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpPutConnectInstanceIntegration) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*PutConnectInstanceIntegrationInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/connect-instance/{connectInstanceId}/integrations") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "PUT" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsPutConnectInstanceIntegrationInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } restEncoder.SetHeader("Content-Type").String("application/json") jsonEncoder := smithyjson.NewEncoder() if err := awsRestjson1_serializeOpDocumentPutConnectInstanceIntegrationInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsPutConnectInstanceIntegrationInput(v *PutConnectInstanceIntegrationInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if v.ConnectInstanceId == nil || len(*v.ConnectInstanceId) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member connectInstanceId must not be empty")} } if v.ConnectInstanceId != nil { if err := encoder.SetURI("connectInstanceId").String(*v.ConnectInstanceId); err != nil { return err } } return nil } func awsRestjson1_serializeOpDocumentPutConnectInstanceIntegrationInput(v *PutConnectInstanceIntegrationInput, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.IntegrationConfig != nil { ok := object.Key("integrationConfig") if err := awsRestjson1_serializeDocumentIntegrationConfig(v.IntegrationConfig, ok); err != nil { return err } } return nil } type awsRestjson1_serializeOpPutOutboundRequestBatch struct { } func (*awsRestjson1_serializeOpPutOutboundRequestBatch) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpPutOutboundRequestBatch) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*PutOutboundRequestBatchInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/campaigns/{id}/outbound-requests") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "PUT" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsPutOutboundRequestBatchInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } restEncoder.SetHeader("Content-Type").String("application/json") jsonEncoder := smithyjson.NewEncoder() if err := awsRestjson1_serializeOpDocumentPutOutboundRequestBatchInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsPutOutboundRequestBatchInput(v *PutOutboundRequestBatchInput, 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 } func awsRestjson1_serializeOpDocumentPutOutboundRequestBatchInput(v *PutOutboundRequestBatchInput, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.OutboundRequests != nil { ok := object.Key("outboundRequests") if err := awsRestjson1_serializeDocumentOutboundRequestList(v.OutboundRequests, ok); err != nil { return err } } return nil } type awsRestjson1_serializeOpPutProfileOutboundRequestBatch struct { } func (*awsRestjson1_serializeOpPutProfileOutboundRequestBatch) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpPutProfileOutboundRequestBatch) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*PutProfileOutboundRequestBatchInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/campaigns/{id}/profile-outbound-requests") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "PUT" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsPutProfileOutboundRequestBatchInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } restEncoder.SetHeader("Content-Type").String("application/json") jsonEncoder := smithyjson.NewEncoder() if err := awsRestjson1_serializeOpDocumentPutProfileOutboundRequestBatchInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsPutProfileOutboundRequestBatchInput(v *PutProfileOutboundRequestBatchInput, 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 } func awsRestjson1_serializeOpDocumentPutProfileOutboundRequestBatchInput(v *PutProfileOutboundRequestBatchInput, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.ProfileOutboundRequests != nil { ok := object.Key("profileOutboundRequests") if err := awsRestjson1_serializeDocumentProfileOutboundRequestList(v.ProfileOutboundRequests, ok); err != nil { return err } } return nil } type awsRestjson1_serializeOpResumeCampaign struct { } func (*awsRestjson1_serializeOpResumeCampaign) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpResumeCampaign) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*ResumeCampaignInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/campaigns/{id}/resume") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "POST" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsResumeCampaignInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsResumeCampaignInput(v *ResumeCampaignInput, 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_serializeOpStartCampaign struct { } func (*awsRestjson1_serializeOpStartCampaign) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpStartCampaign) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*StartCampaignInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/campaigns/{id}/start") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "POST" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsStartCampaignInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsStartCampaignInput(v *StartCampaignInput, 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_serializeOpStartInstanceOnboardingJob struct { } func (*awsRestjson1_serializeOpStartInstanceOnboardingJob) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpStartInstanceOnboardingJob) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*StartInstanceOnboardingJobInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/connect-instance/{connectInstanceId}/onboarding") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "PUT" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsStartInstanceOnboardingJobInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } restEncoder.SetHeader("Content-Type").String("application/json") jsonEncoder := smithyjson.NewEncoder() if err := awsRestjson1_serializeOpDocumentStartInstanceOnboardingJobInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsStartInstanceOnboardingJobInput(v *StartInstanceOnboardingJobInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } if v.ConnectInstanceId == nil || len(*v.ConnectInstanceId) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member connectInstanceId must not be empty")} } if v.ConnectInstanceId != nil { if err := encoder.SetURI("connectInstanceId").String(*v.ConnectInstanceId); err != nil { return err } } return nil } func awsRestjson1_serializeOpDocumentStartInstanceOnboardingJobInput(v *StartInstanceOnboardingJobInput, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.EncryptionConfig != nil { ok := object.Key("encryptionConfig") if err := awsRestjson1_serializeDocumentEncryptionConfig(v.EncryptionConfig, ok); err != nil { return err } } return nil } type awsRestjson1_serializeOpStopCampaign struct { } func (*awsRestjson1_serializeOpStopCampaign) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpStopCampaign) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*StopCampaignInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/campaigns/{id}/stop") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "POST" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsStopCampaignInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsStopCampaignInput(v *StopCampaignInput, 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_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, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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("/v2/tags/{arn}") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "POST" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, 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 endTimer() span.End() 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.Arn == nil || len(*v.Arn) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member arn must not be empty")} } if v.Arn != nil { if err := encoder.SetURI("arn").String(*v.Arn); 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, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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("/v2/tags/{arn}") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "DELETE" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, 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 endTimer() span.End() 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.Arn == nil || len(*v.Arn) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member arn must not be empty")} } if v.Arn != nil { if err := encoder.SetURI("arn").String(*v.Arn); err != nil { return err } } if v.TagKeys != nil { for i := range v.TagKeys { encoder.AddQuery("tagKeys").String(v.TagKeys[i]) } } return nil } type awsRestjson1_serializeOpUpdateCampaignChannelSubtypeConfig struct { } func (*awsRestjson1_serializeOpUpdateCampaignChannelSubtypeConfig) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpUpdateCampaignChannelSubtypeConfig) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*UpdateCampaignChannelSubtypeConfigInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/campaigns/{id}/channel-subtype-config") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "POST" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsUpdateCampaignChannelSubtypeConfigInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } restEncoder.SetHeader("Content-Type").String("application/json") jsonEncoder := smithyjson.NewEncoder() if err := awsRestjson1_serializeOpDocumentUpdateCampaignChannelSubtypeConfigInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsUpdateCampaignChannelSubtypeConfigInput(v *UpdateCampaignChannelSubtypeConfigInput, 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 } func awsRestjson1_serializeOpDocumentUpdateCampaignChannelSubtypeConfigInput(v *UpdateCampaignChannelSubtypeConfigInput, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.ChannelSubtypeConfig != nil { ok := object.Key("channelSubtypeConfig") if err := awsRestjson1_serializeDocumentChannelSubtypeConfig(v.ChannelSubtypeConfig, ok); err != nil { return err } } return nil } type awsRestjson1_serializeOpUpdateCampaignCommunicationLimits struct { } func (*awsRestjson1_serializeOpUpdateCampaignCommunicationLimits) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpUpdateCampaignCommunicationLimits) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*UpdateCampaignCommunicationLimitsInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/campaigns/{id}/communication-limits") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "POST" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsUpdateCampaignCommunicationLimitsInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } restEncoder.SetHeader("Content-Type").String("application/json") jsonEncoder := smithyjson.NewEncoder() if err := awsRestjson1_serializeOpDocumentUpdateCampaignCommunicationLimitsInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsUpdateCampaignCommunicationLimitsInput(v *UpdateCampaignCommunicationLimitsInput, 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 } func awsRestjson1_serializeOpDocumentUpdateCampaignCommunicationLimitsInput(v *UpdateCampaignCommunicationLimitsInput, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.CommunicationLimitsOverride != nil { ok := object.Key("communicationLimitsOverride") if err := awsRestjson1_serializeDocumentCommunicationLimitsConfig(v.CommunicationLimitsOverride, ok); err != nil { return err } } return nil } type awsRestjson1_serializeOpUpdateCampaignCommunicationTime struct { } func (*awsRestjson1_serializeOpUpdateCampaignCommunicationTime) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpUpdateCampaignCommunicationTime) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*UpdateCampaignCommunicationTimeInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/campaigns/{id}/communication-time") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "POST" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsUpdateCampaignCommunicationTimeInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } restEncoder.SetHeader("Content-Type").String("application/json") jsonEncoder := smithyjson.NewEncoder() if err := awsRestjson1_serializeOpDocumentUpdateCampaignCommunicationTimeInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsUpdateCampaignCommunicationTimeInput(v *UpdateCampaignCommunicationTimeInput, 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 } func awsRestjson1_serializeOpDocumentUpdateCampaignCommunicationTimeInput(v *UpdateCampaignCommunicationTimeInput, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.CommunicationTimeConfig != nil { ok := object.Key("communicationTimeConfig") if err := awsRestjson1_serializeDocumentCommunicationTimeConfig(v.CommunicationTimeConfig, ok); err != nil { return err } } return nil } type awsRestjson1_serializeOpUpdateCampaignFlowAssociation struct { } func (*awsRestjson1_serializeOpUpdateCampaignFlowAssociation) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpUpdateCampaignFlowAssociation) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*UpdateCampaignFlowAssociationInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/campaigns/{id}/flow") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "POST" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsUpdateCampaignFlowAssociationInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } restEncoder.SetHeader("Content-Type").String("application/json") jsonEncoder := smithyjson.NewEncoder() if err := awsRestjson1_serializeOpDocumentUpdateCampaignFlowAssociationInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsUpdateCampaignFlowAssociationInput(v *UpdateCampaignFlowAssociationInput, 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 } func awsRestjson1_serializeOpDocumentUpdateCampaignFlowAssociationInput(v *UpdateCampaignFlowAssociationInput, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.ConnectCampaignFlowArn != nil { ok := object.Key("connectCampaignFlowArn") ok.String(*v.ConnectCampaignFlowArn) } return nil } type awsRestjson1_serializeOpUpdateCampaignName struct { } func (*awsRestjson1_serializeOpUpdateCampaignName) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpUpdateCampaignName) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*UpdateCampaignNameInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/campaigns/{id}/name") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "POST" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsUpdateCampaignNameInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } restEncoder.SetHeader("Content-Type").String("application/json") jsonEncoder := smithyjson.NewEncoder() if err := awsRestjson1_serializeOpDocumentUpdateCampaignNameInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsUpdateCampaignNameInput(v *UpdateCampaignNameInput, 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 } func awsRestjson1_serializeOpDocumentUpdateCampaignNameInput(v *UpdateCampaignNameInput, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.Name != nil { ok := object.Key("name") ok.String(*v.Name) } return nil } type awsRestjson1_serializeOpUpdateCampaignSchedule struct { } func (*awsRestjson1_serializeOpUpdateCampaignSchedule) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpUpdateCampaignSchedule) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*UpdateCampaignScheduleInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/campaigns/{id}/schedule") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "POST" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsUpdateCampaignScheduleInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } restEncoder.SetHeader("Content-Type").String("application/json") jsonEncoder := smithyjson.NewEncoder() if err := awsRestjson1_serializeOpDocumentUpdateCampaignScheduleInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsUpdateCampaignScheduleInput(v *UpdateCampaignScheduleInput, 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 } func awsRestjson1_serializeOpDocumentUpdateCampaignScheduleInput(v *UpdateCampaignScheduleInput, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.Schedule != nil { ok := object.Key("schedule") if err := awsRestjson1_serializeDocumentSchedule(v.Schedule, ok); err != nil { return err } } return nil } type awsRestjson1_serializeOpUpdateCampaignSource struct { } func (*awsRestjson1_serializeOpUpdateCampaignSource) ID() string { return "OperationSerializer" } func (m *awsRestjson1_serializeOpUpdateCampaignSource) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { _, span := tracing.StartSpan(ctx, "OperationSerializer") endTimer := startMetricTimer(ctx, "client.call.serialization_duration") defer endTimer() defer span.End() 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.(*UpdateCampaignSourceInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } opPath, opQuery := httpbinding.SplitURI("/v2/campaigns/{id}/source") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "POST" var restEncoder *httpbinding.Encoder if request.URL.RawPath == "" { restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) } else { request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) } if err != nil { return out, metadata, &smithy.SerializationError{Err: err} } if err := awsRestjson1_serializeOpHttpBindingsUpdateCampaignSourceInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } restEncoder.SetHeader("Content-Type").String("application/json") jsonEncoder := smithyjson.NewEncoder() if err := awsRestjson1_serializeOpDocumentUpdateCampaignSourceInput(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 endTimer() span.End() return next.HandleSerialize(ctx, in) } func awsRestjson1_serializeOpHttpBindingsUpdateCampaignSourceInput(v *UpdateCampaignSourceInput, 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 } func awsRestjson1_serializeOpDocumentUpdateCampaignSourceInput(v *UpdateCampaignSourceInput, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.Source != nil { ok := object.Key("source") if err := awsRestjson1_serializeDocumentSource(v.Source, ok); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentAgentlessConfig(v *types.AgentlessConfig, value smithyjson.Value) error { object := value.Object() defer object.Close() return nil } func awsRestjson1_serializeDocumentAnswerMachineDetectionConfig(v *types.AnswerMachineDetectionConfig, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.AwaitAnswerMachinePrompt != nil { ok := object.Key("awaitAnswerMachinePrompt") ok.Boolean(*v.AwaitAnswerMachinePrompt) } if v.EnableAnswerMachineDetection != nil { ok := object.Key("enableAnswerMachineDetection") ok.Boolean(*v.EnableAnswerMachineDetection) } return nil } func awsRestjson1_serializeDocumentAttributes(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_serializeDocumentCampaignFilters(v *types.CampaignFilters, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.InstanceIdFilter != nil { ok := object.Key("instanceIdFilter") if err := awsRestjson1_serializeDocumentInstanceIdFilter(v.InstanceIdFilter, ok); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentCampaignIdList(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_serializeDocumentChannelSubtypeConfig(v *types.ChannelSubtypeConfig, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.Email != nil { ok := object.Key("email") if err := awsRestjson1_serializeDocumentEmailChannelSubtypeConfig(v.Email, ok); err != nil { return err } } if v.Sms != nil { ok := object.Key("sms") if err := awsRestjson1_serializeDocumentSmsChannelSubtypeConfig(v.Sms, ok); err != nil { return err } } if v.Telephony != nil { ok := object.Key("telephony") if err := awsRestjson1_serializeDocumentTelephonyChannelSubtypeConfig(v.Telephony, ok); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentChannelSubtypeParameters(v types.ChannelSubtypeParameters, value smithyjson.Value) error { object := value.Object() defer object.Close() switch uv := v.(type) { case *types.ChannelSubtypeParametersMemberEmail: av := object.Key("email") if err := awsRestjson1_serializeDocumentEmailChannelSubtypeParameters(&uv.Value, av); err != nil { return err } case *types.ChannelSubtypeParametersMemberSms: av := object.Key("sms") if err := awsRestjson1_serializeDocumentSmsChannelSubtypeParameters(&uv.Value, av); err != nil { return err } case *types.ChannelSubtypeParametersMemberTelephony: av := object.Key("telephony") if err := awsRestjson1_serializeDocumentTelephonyChannelSubtypeParameters(&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_serializeDocumentCommunicationLimit(v *types.CommunicationLimit, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.Frequency != nil { ok := object.Key("frequency") ok.Integer(*v.Frequency) } if v.MaxCountPerRecipient != nil { ok := object.Key("maxCountPerRecipient") ok.Integer(*v.MaxCountPerRecipient) } if len(v.Unit) > 0 { ok := object.Key("unit") ok.String(string(v.Unit)) } return nil } func awsRestjson1_serializeDocumentCommunicationLimitList(v []types.CommunicationLimit, value smithyjson.Value) error { array := value.Array() defer array.Close() for i := range v { av := array.Value() if err := awsRestjson1_serializeDocumentCommunicationLimit(&v[i], av); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentCommunicationLimits(v types.CommunicationLimits, value smithyjson.Value) error { object := value.Object() defer object.Close() switch uv := v.(type) { case *types.CommunicationLimitsMemberCommunicationLimitsList: av := object.Key("communicationLimitsList") if err := awsRestjson1_serializeDocumentCommunicationLimitList(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_serializeDocumentCommunicationLimitsConfig(v *types.CommunicationLimitsConfig, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.AllChannelSubtypes != nil { ok := object.Key("allChannelSubtypes") if err := awsRestjson1_serializeDocumentCommunicationLimits(v.AllChannelSubtypes, ok); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentCommunicationTimeConfig(v *types.CommunicationTimeConfig, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.Email != nil { ok := object.Key("email") if err := awsRestjson1_serializeDocumentTimeWindow(v.Email, ok); err != nil { return err } } if v.LocalTimeZoneConfig != nil { ok := object.Key("localTimeZoneConfig") if err := awsRestjson1_serializeDocumentLocalTimeZoneConfig(v.LocalTimeZoneConfig, ok); err != nil { return err } } if v.Sms != nil { ok := object.Key("sms") if err := awsRestjson1_serializeDocumentTimeWindow(v.Sms, ok); err != nil { return err } } if v.Telephony != nil { ok := object.Key("telephony") if err := awsRestjson1_serializeDocumentTimeWindow(v.Telephony, ok); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentCustomerProfilesIntegrationConfig(v *types.CustomerProfilesIntegrationConfig, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.DomainArn != nil { ok := object.Key("domainArn") ok.String(*v.DomainArn) } if v.ObjectTypeNames != nil { ok := object.Key("objectTypeNames") if err := awsRestjson1_serializeDocumentObjectTypeNamesMap(v.ObjectTypeNames, ok); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentCustomerProfilesIntegrationIdentifier(v *types.CustomerProfilesIntegrationIdentifier, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.DomainArn != nil { ok := object.Key("domainArn") ok.String(*v.DomainArn) } return nil } func awsRestjson1_serializeDocumentDailyHours(v map[string][]types.TimeRange, value smithyjson.Value) error { object := value.Object() defer object.Close() for key := range v { om := object.Key(key) if vv := v[key]; vv == nil { continue } if err := awsRestjson1_serializeDocumentTimeRangeList(v[key], om); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentEmailChannelSubtypeConfig(v *types.EmailChannelSubtypeConfig, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.Capacity != nil { ok := object.Key("capacity") switch { case math.IsNaN(*v.Capacity): ok.String("NaN") case math.IsInf(*v.Capacity, 1): ok.String("Infinity") case math.IsInf(*v.Capacity, -1): ok.String("-Infinity") default: ok.Double(*v.Capacity) } } if v.DefaultOutboundConfig != nil { ok := object.Key("defaultOutboundConfig") if err := awsRestjson1_serializeDocumentEmailOutboundConfig(v.DefaultOutboundConfig, ok); err != nil { return err } } if v.OutboundMode != nil { ok := object.Key("outboundMode") if err := awsRestjson1_serializeDocumentEmailOutboundMode(v.OutboundMode, ok); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentEmailChannelSubtypeParameters(v *types.EmailChannelSubtypeParameters, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.ConnectSourceEmailAddress != nil { ok := object.Key("connectSourceEmailAddress") ok.String(*v.ConnectSourceEmailAddress) } if v.DestinationEmailAddress != nil { ok := object.Key("destinationEmailAddress") ok.String(*v.DestinationEmailAddress) } if v.TemplateArn != nil { ok := object.Key("templateArn") ok.String(*v.TemplateArn) } if v.TemplateParameters != nil { ok := object.Key("templateParameters") if err := awsRestjson1_serializeDocumentAttributes(v.TemplateParameters, ok); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentEmailOutboundConfig(v *types.EmailOutboundConfig, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.ConnectSourceEmailAddress != nil { ok := object.Key("connectSourceEmailAddress") ok.String(*v.ConnectSourceEmailAddress) } if v.SourceEmailAddressDisplayName != nil { ok := object.Key("sourceEmailAddressDisplayName") ok.String(*v.SourceEmailAddressDisplayName) } if v.WisdomTemplateArn != nil { ok := object.Key("wisdomTemplateArn") ok.String(*v.WisdomTemplateArn) } return nil } func awsRestjson1_serializeDocumentEmailOutboundMode(v types.EmailOutboundMode, value smithyjson.Value) error { object := value.Object() defer object.Close() switch uv := v.(type) { case *types.EmailOutboundModeMemberAgentless: av := object.Key("agentless") if err := awsRestjson1_serializeDocumentAgentlessConfig(&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_serializeDocumentEncryptionConfig(v *types.EncryptionConfig, value smithyjson.Value) error { object := value.Object() defer object.Close() { ok := object.Key("enabled") ok.Boolean(v.Enabled) } if len(v.EncryptionType) > 0 { ok := object.Key("encryptionType") ok.String(string(v.EncryptionType)) } if v.KeyArn != nil { ok := object.Key("keyArn") ok.String(*v.KeyArn) } return nil } func awsRestjson1_serializeDocumentEventTrigger(v *types.EventTrigger, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.CustomerProfilesDomainArn != nil { ok := object.Key("customerProfilesDomainArn") ok.String(*v.CustomerProfilesDomainArn) } return nil } func awsRestjson1_serializeDocumentInstanceIdFilter(v *types.InstanceIdFilter, value smithyjson.Value) error { object := value.Object() defer object.Close() if len(v.Operator) > 0 { ok := object.Key("operator") ok.String(string(v.Operator)) } if v.Value != nil { ok := object.Key("value") ok.String(*v.Value) } return nil } func awsRestjson1_serializeDocumentIntegrationConfig(v types.IntegrationConfig, value smithyjson.Value) error { object := value.Object() defer object.Close() switch uv := v.(type) { case *types.IntegrationConfigMemberCustomerProfiles: av := object.Key("customerProfiles") if err := awsRestjson1_serializeDocumentCustomerProfilesIntegrationConfig(&uv.Value, av); err != nil { return err } case *types.IntegrationConfigMemberQConnect: av := object.Key("qConnect") if err := awsRestjson1_serializeDocumentQConnectIntegrationConfig(&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_serializeDocumentIntegrationIdentifier(v types.IntegrationIdentifier, value smithyjson.Value) error { object := value.Object() defer object.Close() switch uv := v.(type) { case *types.IntegrationIdentifierMemberCustomerProfiles: av := object.Key("customerProfiles") if err := awsRestjson1_serializeDocumentCustomerProfilesIntegrationIdentifier(&uv.Value, av); err != nil { return err } case *types.IntegrationIdentifierMemberQConnect: av := object.Key("qConnect") if err := awsRestjson1_serializeDocumentQConnectIntegrationIdentifier(&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_serializeDocumentLocalTimeZoneConfig(v *types.LocalTimeZoneConfig, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.DefaultTimeZone != nil { ok := object.Key("defaultTimeZone") ok.String(*v.DefaultTimeZone) } if v.LocalTimeZoneDetection != nil { ok := object.Key("localTimeZoneDetection") if err := awsRestjson1_serializeDocumentLocalTimeZoneDetection(v.LocalTimeZoneDetection, ok); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentLocalTimeZoneDetection(v []types.LocalTimeZoneDetectionType, value smithyjson.Value) error { array := value.Array() defer array.Close() for i := range v { av := array.Value() av.String(string(v[i])) } return nil } func awsRestjson1_serializeDocumentObjectTypeNamesMap(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_serializeDocumentOpenHours(v types.OpenHours, value smithyjson.Value) error { object := value.Object() defer object.Close() switch uv := v.(type) { case *types.OpenHoursMemberDailyHours: av := object.Key("dailyHours") if err := awsRestjson1_serializeDocumentDailyHours(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_serializeDocumentOutboundRequest(v *types.OutboundRequest, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.ChannelSubtypeParameters != nil { ok := object.Key("channelSubtypeParameters") if err := awsRestjson1_serializeDocumentChannelSubtypeParameters(v.ChannelSubtypeParameters, ok); err != nil { return err } } if v.ClientToken != nil { ok := object.Key("clientToken") ok.String(*v.ClientToken) } if v.ExpirationTime != nil { ok := object.Key("expirationTime") ok.String(smithytime.FormatDateTime(*v.ExpirationTime)) } return nil } func awsRestjson1_serializeDocumentOutboundRequestList(v []types.OutboundRequest, value smithyjson.Value) error { array := value.Array() defer array.Close() for i := range v { av := array.Value() if err := awsRestjson1_serializeDocumentOutboundRequest(&v[i], av); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentPredictiveConfig(v *types.PredictiveConfig, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.BandwidthAllocation != nil { ok := object.Key("bandwidthAllocation") switch { case math.IsNaN(*v.BandwidthAllocation): ok.String("NaN") case math.IsInf(*v.BandwidthAllocation, 1): ok.String("Infinity") case math.IsInf(*v.BandwidthAllocation, -1): ok.String("-Infinity") default: ok.Double(*v.BandwidthAllocation) } } return nil } func awsRestjson1_serializeDocumentProfileOutboundRequest(v *types.ProfileOutboundRequest, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.ClientToken != nil { ok := object.Key("clientToken") ok.String(*v.ClientToken) } if v.ExpirationTime != nil { ok := object.Key("expirationTime") ok.String(smithytime.FormatDateTime(*v.ExpirationTime)) } if v.ProfileId != nil { ok := object.Key("profileId") ok.String(*v.ProfileId) } return nil } func awsRestjson1_serializeDocumentProfileOutboundRequestList(v []types.ProfileOutboundRequest, value smithyjson.Value) error { array := value.Array() defer array.Close() for i := range v { av := array.Value() if err := awsRestjson1_serializeDocumentProfileOutboundRequest(&v[i], av); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentProgressiveConfig(v *types.ProgressiveConfig, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.BandwidthAllocation != nil { ok := object.Key("bandwidthAllocation") switch { case math.IsNaN(*v.BandwidthAllocation): ok.String("NaN") case math.IsInf(*v.BandwidthAllocation, 1): ok.String("Infinity") case math.IsInf(*v.BandwidthAllocation, -1): ok.String("-Infinity") default: ok.Double(*v.BandwidthAllocation) } } return nil } func awsRestjson1_serializeDocumentQConnectIntegrationConfig(v *types.QConnectIntegrationConfig, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.KnowledgeBaseArn != nil { ok := object.Key("knowledgeBaseArn") ok.String(*v.KnowledgeBaseArn) } return nil } func awsRestjson1_serializeDocumentQConnectIntegrationIdentifier(v *types.QConnectIntegrationIdentifier, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.KnowledgeBaseArn != nil { ok := object.Key("knowledgeBaseArn") ok.String(*v.KnowledgeBaseArn) } return nil } func awsRestjson1_serializeDocumentRestrictedPeriod(v *types.RestrictedPeriod, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.EndDate != nil { ok := object.Key("endDate") ok.String(*v.EndDate) } if v.Name != nil { ok := object.Key("name") ok.String(*v.Name) } if v.StartDate != nil { ok := object.Key("startDate") ok.String(*v.StartDate) } return nil } func awsRestjson1_serializeDocumentRestrictedPeriodList(v []types.RestrictedPeriod, value smithyjson.Value) error { array := value.Array() defer array.Close() for i := range v { av := array.Value() if err := awsRestjson1_serializeDocumentRestrictedPeriod(&v[i], av); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentRestrictedPeriods(v types.RestrictedPeriods, value smithyjson.Value) error { object := value.Object() defer object.Close() switch uv := v.(type) { case *types.RestrictedPeriodsMemberRestrictedPeriodList: av := object.Key("restrictedPeriodList") if err := awsRestjson1_serializeDocumentRestrictedPeriodList(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_serializeDocumentSchedule(v *types.Schedule, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.EndTime != nil { ok := object.Key("endTime") ok.String(smithytime.FormatDateTime(*v.EndTime)) } if v.RefreshFrequency != nil { ok := object.Key("refreshFrequency") ok.String(*v.RefreshFrequency) } if v.StartTime != nil { ok := object.Key("startTime") ok.String(smithytime.FormatDateTime(*v.StartTime)) } return nil } func awsRestjson1_serializeDocumentSmsChannelSubtypeConfig(v *types.SmsChannelSubtypeConfig, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.Capacity != nil { ok := object.Key("capacity") switch { case math.IsNaN(*v.Capacity): ok.String("NaN") case math.IsInf(*v.Capacity, 1): ok.String("Infinity") case math.IsInf(*v.Capacity, -1): ok.String("-Infinity") default: ok.Double(*v.Capacity) } } if v.DefaultOutboundConfig != nil { ok := object.Key("defaultOutboundConfig") if err := awsRestjson1_serializeDocumentSmsOutboundConfig(v.DefaultOutboundConfig, ok); err != nil { return err } } if v.OutboundMode != nil { ok := object.Key("outboundMode") if err := awsRestjson1_serializeDocumentSmsOutboundMode(v.OutboundMode, ok); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentSmsChannelSubtypeParameters(v *types.SmsChannelSubtypeParameters, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.ConnectSourcePhoneNumberArn != nil { ok := object.Key("connectSourcePhoneNumberArn") ok.String(*v.ConnectSourcePhoneNumberArn) } if v.DestinationPhoneNumber != nil { ok := object.Key("destinationPhoneNumber") ok.String(*v.DestinationPhoneNumber) } if v.TemplateArn != nil { ok := object.Key("templateArn") ok.String(*v.TemplateArn) } if v.TemplateParameters != nil { ok := object.Key("templateParameters") if err := awsRestjson1_serializeDocumentAttributes(v.TemplateParameters, ok); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentSmsOutboundConfig(v *types.SmsOutboundConfig, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.ConnectSourcePhoneNumberArn != nil { ok := object.Key("connectSourcePhoneNumberArn") ok.String(*v.ConnectSourcePhoneNumberArn) } if v.WisdomTemplateArn != nil { ok := object.Key("wisdomTemplateArn") ok.String(*v.WisdomTemplateArn) } return nil } func awsRestjson1_serializeDocumentSmsOutboundMode(v types.SmsOutboundMode, value smithyjson.Value) error { object := value.Object() defer object.Close() switch uv := v.(type) { case *types.SmsOutboundModeMemberAgentless: av := object.Key("agentless") if err := awsRestjson1_serializeDocumentAgentlessConfig(&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_serializeDocumentSource(v types.Source, value smithyjson.Value) error { object := value.Object() defer object.Close() switch uv := v.(type) { case *types.SourceMemberCustomerProfilesSegmentArn: av := object.Key("customerProfilesSegmentArn") av.String(uv.Value) case *types.SourceMemberEventTrigger: av := object.Key("eventTrigger") if err := awsRestjson1_serializeDocumentEventTrigger(&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_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_serializeDocumentTelephonyChannelSubtypeConfig(v *types.TelephonyChannelSubtypeConfig, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.Capacity != nil { ok := object.Key("capacity") switch { case math.IsNaN(*v.Capacity): ok.String("NaN") case math.IsInf(*v.Capacity, 1): ok.String("Infinity") case math.IsInf(*v.Capacity, -1): ok.String("-Infinity") default: ok.Double(*v.Capacity) } } if v.ConnectQueueId != nil { ok := object.Key("connectQueueId") ok.String(*v.ConnectQueueId) } if v.DefaultOutboundConfig != nil { ok := object.Key("defaultOutboundConfig") if err := awsRestjson1_serializeDocumentTelephonyOutboundConfig(v.DefaultOutboundConfig, ok); err != nil { return err } } if v.OutboundMode != nil { ok := object.Key("outboundMode") if err := awsRestjson1_serializeDocumentTelephonyOutboundMode(v.OutboundMode, ok); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentTelephonyChannelSubtypeParameters(v *types.TelephonyChannelSubtypeParameters, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.AnswerMachineDetectionConfig != nil { ok := object.Key("answerMachineDetectionConfig") if err := awsRestjson1_serializeDocumentAnswerMachineDetectionConfig(v.AnswerMachineDetectionConfig, ok); err != nil { return err } } if v.Attributes != nil { ok := object.Key("attributes") if err := awsRestjson1_serializeDocumentAttributes(v.Attributes, ok); err != nil { return err } } if v.ConnectSourcePhoneNumber != nil { ok := object.Key("connectSourcePhoneNumber") ok.String(*v.ConnectSourcePhoneNumber) } if v.DestinationPhoneNumber != nil { ok := object.Key("destinationPhoneNumber") ok.String(*v.DestinationPhoneNumber) } return nil } func awsRestjson1_serializeDocumentTelephonyOutboundConfig(v *types.TelephonyOutboundConfig, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.AnswerMachineDetectionConfig != nil { ok := object.Key("answerMachineDetectionConfig") if err := awsRestjson1_serializeDocumentAnswerMachineDetectionConfig(v.AnswerMachineDetectionConfig, ok); err != nil { return err } } if v.ConnectContactFlowId != nil { ok := object.Key("connectContactFlowId") ok.String(*v.ConnectContactFlowId) } if v.ConnectSourcePhoneNumber != nil { ok := object.Key("connectSourcePhoneNumber") ok.String(*v.ConnectSourcePhoneNumber) } return nil } func awsRestjson1_serializeDocumentTelephonyOutboundMode(v types.TelephonyOutboundMode, value smithyjson.Value) error { object := value.Object() defer object.Close() switch uv := v.(type) { case *types.TelephonyOutboundModeMemberAgentless: av := object.Key("agentless") if err := awsRestjson1_serializeDocumentAgentlessConfig(&uv.Value, av); err != nil { return err } case *types.TelephonyOutboundModeMemberPredictive: av := object.Key("predictive") if err := awsRestjson1_serializeDocumentPredictiveConfig(&uv.Value, av); err != nil { return err } case *types.TelephonyOutboundModeMemberProgressive: av := object.Key("progressive") if err := awsRestjson1_serializeDocumentProgressiveConfig(&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_serializeDocumentTimeRange(v *types.TimeRange, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.EndTime != nil { ok := object.Key("endTime") ok.String(*v.EndTime) } if v.StartTime != nil { ok := object.Key("startTime") ok.String(*v.StartTime) } return nil } func awsRestjson1_serializeDocumentTimeRangeList(v []types.TimeRange, value smithyjson.Value) error { array := value.Array() defer array.Close() for i := range v { av := array.Value() if err := awsRestjson1_serializeDocumentTimeRange(&v[i], av); err != nil { return err } } return nil } func awsRestjson1_serializeDocumentTimeWindow(v *types.TimeWindow, value smithyjson.Value) error { object := value.Object() defer object.Close() if v.OpenHours != nil { ok := object.Key("openHours") if err := awsRestjson1_serializeDocumentOpenHours(v.OpenHours, ok); err != nil { return err } } if v.RestrictedPeriods != nil { ok := object.Key("restrictedPeriods") if err := awsRestjson1_serializeDocumentRestrictedPeriods(v.RestrictedPeriods, ok); err != nil { return err } } return nil }