1// Code generated by smithy-go-codegen DO NOT EDIT.
2
3package appflow
4
5import (
6	"bytes"
7	"context"
8	"fmt"
9	"github.com/aws/aws-sdk-go-v2/service/appflow/types"
10	smithy "github.com/aws/smithy-go"
11	"github.com/aws/smithy-go/encoding/httpbinding"
12	smithyjson "github.com/aws/smithy-go/encoding/json"
13	"github.com/aws/smithy-go/middleware"
14	smithytime "github.com/aws/smithy-go/time"
15	smithyhttp "github.com/aws/smithy-go/transport/http"
16)
17
18type awsRestjson1_serializeOpCreateConnectorProfile struct {
19}
20
21func (*awsRestjson1_serializeOpCreateConnectorProfile) ID() string {
22	return "OperationSerializer"
23}
24
25func (m *awsRestjson1_serializeOpCreateConnectorProfile) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
26	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
27) {
28	request, ok := in.Request.(*smithyhttp.Request)
29	if !ok {
30		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
31	}
32
33	input, ok := in.Parameters.(*CreateConnectorProfileInput)
34	_ = input
35	if !ok {
36		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
37	}
38
39	opPath, opQuery := httpbinding.SplitURI("/create-connector-profile")
40	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
41	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
42	request.Method = "POST"
43	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
44	if err != nil {
45		return out, metadata, &smithy.SerializationError{Err: err}
46	}
47
48	restEncoder.SetHeader("Content-Type").String("application/json")
49
50	jsonEncoder := smithyjson.NewEncoder()
51	if err := awsRestjson1_serializeOpDocumentCreateConnectorProfileInput(input, jsonEncoder.Value); err != nil {
52		return out, metadata, &smithy.SerializationError{Err: err}
53	}
54
55	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
56		return out, metadata, &smithy.SerializationError{Err: err}
57	}
58
59	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
60		return out, metadata, &smithy.SerializationError{Err: err}
61	}
62	in.Request = request
63
64	return next.HandleSerialize(ctx, in)
65}
66func awsRestjson1_serializeOpHttpBindingsCreateConnectorProfileInput(v *CreateConnectorProfileInput, encoder *httpbinding.Encoder) error {
67	if v == nil {
68		return fmt.Errorf("unsupported serialization of nil %T", v)
69	}
70
71	return nil
72}
73
74func awsRestjson1_serializeOpDocumentCreateConnectorProfileInput(v *CreateConnectorProfileInput, value smithyjson.Value) error {
75	object := value.Object()
76	defer object.Close()
77
78	if len(v.ConnectionMode) > 0 {
79		ok := object.Key("connectionMode")
80		ok.String(string(v.ConnectionMode))
81	}
82
83	if v.ConnectorProfileConfig != nil {
84		ok := object.Key("connectorProfileConfig")
85		if err := awsRestjson1_serializeDocumentConnectorProfileConfig(v.ConnectorProfileConfig, ok); err != nil {
86			return err
87		}
88	}
89
90	if v.ConnectorProfileName != nil {
91		ok := object.Key("connectorProfileName")
92		ok.String(*v.ConnectorProfileName)
93	}
94
95	if len(v.ConnectorType) > 0 {
96		ok := object.Key("connectorType")
97		ok.String(string(v.ConnectorType))
98	}
99
100	if v.KmsArn != nil {
101		ok := object.Key("kmsArn")
102		ok.String(*v.KmsArn)
103	}
104
105	return nil
106}
107
108type awsRestjson1_serializeOpCreateFlow struct {
109}
110
111func (*awsRestjson1_serializeOpCreateFlow) ID() string {
112	return "OperationSerializer"
113}
114
115func (m *awsRestjson1_serializeOpCreateFlow) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
116	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
117) {
118	request, ok := in.Request.(*smithyhttp.Request)
119	if !ok {
120		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
121	}
122
123	input, ok := in.Parameters.(*CreateFlowInput)
124	_ = input
125	if !ok {
126		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
127	}
128
129	opPath, opQuery := httpbinding.SplitURI("/create-flow")
130	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
131	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
132	request.Method = "POST"
133	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
134	if err != nil {
135		return out, metadata, &smithy.SerializationError{Err: err}
136	}
137
138	restEncoder.SetHeader("Content-Type").String("application/json")
139
140	jsonEncoder := smithyjson.NewEncoder()
141	if err := awsRestjson1_serializeOpDocumentCreateFlowInput(input, jsonEncoder.Value); err != nil {
142		return out, metadata, &smithy.SerializationError{Err: err}
143	}
144
145	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
146		return out, metadata, &smithy.SerializationError{Err: err}
147	}
148
149	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
150		return out, metadata, &smithy.SerializationError{Err: err}
151	}
152	in.Request = request
153
154	return next.HandleSerialize(ctx, in)
155}
156func awsRestjson1_serializeOpHttpBindingsCreateFlowInput(v *CreateFlowInput, encoder *httpbinding.Encoder) error {
157	if v == nil {
158		return fmt.Errorf("unsupported serialization of nil %T", v)
159	}
160
161	return nil
162}
163
164func awsRestjson1_serializeOpDocumentCreateFlowInput(v *CreateFlowInput, value smithyjson.Value) error {
165	object := value.Object()
166	defer object.Close()
167
168	if v.Description != nil {
169		ok := object.Key("description")
170		ok.String(*v.Description)
171	}
172
173	if v.DestinationFlowConfigList != nil {
174		ok := object.Key("destinationFlowConfigList")
175		if err := awsRestjson1_serializeDocumentDestinationFlowConfigList(v.DestinationFlowConfigList, ok); err != nil {
176			return err
177		}
178	}
179
180	if v.FlowName != nil {
181		ok := object.Key("flowName")
182		ok.String(*v.FlowName)
183	}
184
185	if v.KmsArn != nil {
186		ok := object.Key("kmsArn")
187		ok.String(*v.KmsArn)
188	}
189
190	if v.SourceFlowConfig != nil {
191		ok := object.Key("sourceFlowConfig")
192		if err := awsRestjson1_serializeDocumentSourceFlowConfig(v.SourceFlowConfig, ok); err != nil {
193			return err
194		}
195	}
196
197	if v.Tags != nil {
198		ok := object.Key("tags")
199		if err := awsRestjson1_serializeDocumentTagMap(v.Tags, ok); err != nil {
200			return err
201		}
202	}
203
204	if v.Tasks != nil {
205		ok := object.Key("tasks")
206		if err := awsRestjson1_serializeDocumentTasks(v.Tasks, ok); err != nil {
207			return err
208		}
209	}
210
211	if v.TriggerConfig != nil {
212		ok := object.Key("triggerConfig")
213		if err := awsRestjson1_serializeDocumentTriggerConfig(v.TriggerConfig, ok); err != nil {
214			return err
215		}
216	}
217
218	return nil
219}
220
221type awsRestjson1_serializeOpDeleteConnectorProfile struct {
222}
223
224func (*awsRestjson1_serializeOpDeleteConnectorProfile) ID() string {
225	return "OperationSerializer"
226}
227
228func (m *awsRestjson1_serializeOpDeleteConnectorProfile) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
229	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
230) {
231	request, ok := in.Request.(*smithyhttp.Request)
232	if !ok {
233		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
234	}
235
236	input, ok := in.Parameters.(*DeleteConnectorProfileInput)
237	_ = input
238	if !ok {
239		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
240	}
241
242	opPath, opQuery := httpbinding.SplitURI("/delete-connector-profile")
243	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
244	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
245	request.Method = "POST"
246	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
247	if err != nil {
248		return out, metadata, &smithy.SerializationError{Err: err}
249	}
250
251	restEncoder.SetHeader("Content-Type").String("application/json")
252
253	jsonEncoder := smithyjson.NewEncoder()
254	if err := awsRestjson1_serializeOpDocumentDeleteConnectorProfileInput(input, jsonEncoder.Value); err != nil {
255		return out, metadata, &smithy.SerializationError{Err: err}
256	}
257
258	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
259		return out, metadata, &smithy.SerializationError{Err: err}
260	}
261
262	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
263		return out, metadata, &smithy.SerializationError{Err: err}
264	}
265	in.Request = request
266
267	return next.HandleSerialize(ctx, in)
268}
269func awsRestjson1_serializeOpHttpBindingsDeleteConnectorProfileInput(v *DeleteConnectorProfileInput, encoder *httpbinding.Encoder) error {
270	if v == nil {
271		return fmt.Errorf("unsupported serialization of nil %T", v)
272	}
273
274	return nil
275}
276
277func awsRestjson1_serializeOpDocumentDeleteConnectorProfileInput(v *DeleteConnectorProfileInput, value smithyjson.Value) error {
278	object := value.Object()
279	defer object.Close()
280
281	if v.ConnectorProfileName != nil {
282		ok := object.Key("connectorProfileName")
283		ok.String(*v.ConnectorProfileName)
284	}
285
286	if v.ForceDelete {
287		ok := object.Key("forceDelete")
288		ok.Boolean(v.ForceDelete)
289	}
290
291	return nil
292}
293
294type awsRestjson1_serializeOpDeleteFlow struct {
295}
296
297func (*awsRestjson1_serializeOpDeleteFlow) ID() string {
298	return "OperationSerializer"
299}
300
301func (m *awsRestjson1_serializeOpDeleteFlow) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
302	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
303) {
304	request, ok := in.Request.(*smithyhttp.Request)
305	if !ok {
306		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
307	}
308
309	input, ok := in.Parameters.(*DeleteFlowInput)
310	_ = input
311	if !ok {
312		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
313	}
314
315	opPath, opQuery := httpbinding.SplitURI("/delete-flow")
316	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
317	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
318	request.Method = "POST"
319	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
320	if err != nil {
321		return out, metadata, &smithy.SerializationError{Err: err}
322	}
323
324	restEncoder.SetHeader("Content-Type").String("application/json")
325
326	jsonEncoder := smithyjson.NewEncoder()
327	if err := awsRestjson1_serializeOpDocumentDeleteFlowInput(input, jsonEncoder.Value); err != nil {
328		return out, metadata, &smithy.SerializationError{Err: err}
329	}
330
331	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
332		return out, metadata, &smithy.SerializationError{Err: err}
333	}
334
335	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
336		return out, metadata, &smithy.SerializationError{Err: err}
337	}
338	in.Request = request
339
340	return next.HandleSerialize(ctx, in)
341}
342func awsRestjson1_serializeOpHttpBindingsDeleteFlowInput(v *DeleteFlowInput, encoder *httpbinding.Encoder) error {
343	if v == nil {
344		return fmt.Errorf("unsupported serialization of nil %T", v)
345	}
346
347	return nil
348}
349
350func awsRestjson1_serializeOpDocumentDeleteFlowInput(v *DeleteFlowInput, value smithyjson.Value) error {
351	object := value.Object()
352	defer object.Close()
353
354	if v.FlowName != nil {
355		ok := object.Key("flowName")
356		ok.String(*v.FlowName)
357	}
358
359	if v.ForceDelete {
360		ok := object.Key("forceDelete")
361		ok.Boolean(v.ForceDelete)
362	}
363
364	return nil
365}
366
367type awsRestjson1_serializeOpDescribeConnectorEntity struct {
368}
369
370func (*awsRestjson1_serializeOpDescribeConnectorEntity) ID() string {
371	return "OperationSerializer"
372}
373
374func (m *awsRestjson1_serializeOpDescribeConnectorEntity) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
375	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
376) {
377	request, ok := in.Request.(*smithyhttp.Request)
378	if !ok {
379		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
380	}
381
382	input, ok := in.Parameters.(*DescribeConnectorEntityInput)
383	_ = input
384	if !ok {
385		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
386	}
387
388	opPath, opQuery := httpbinding.SplitURI("/describe-connector-entity")
389	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
390	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
391	request.Method = "POST"
392	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
393	if err != nil {
394		return out, metadata, &smithy.SerializationError{Err: err}
395	}
396
397	restEncoder.SetHeader("Content-Type").String("application/json")
398
399	jsonEncoder := smithyjson.NewEncoder()
400	if err := awsRestjson1_serializeOpDocumentDescribeConnectorEntityInput(input, jsonEncoder.Value); err != nil {
401		return out, metadata, &smithy.SerializationError{Err: err}
402	}
403
404	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
405		return out, metadata, &smithy.SerializationError{Err: err}
406	}
407
408	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
409		return out, metadata, &smithy.SerializationError{Err: err}
410	}
411	in.Request = request
412
413	return next.HandleSerialize(ctx, in)
414}
415func awsRestjson1_serializeOpHttpBindingsDescribeConnectorEntityInput(v *DescribeConnectorEntityInput, encoder *httpbinding.Encoder) error {
416	if v == nil {
417		return fmt.Errorf("unsupported serialization of nil %T", v)
418	}
419
420	return nil
421}
422
423func awsRestjson1_serializeOpDocumentDescribeConnectorEntityInput(v *DescribeConnectorEntityInput, value smithyjson.Value) error {
424	object := value.Object()
425	defer object.Close()
426
427	if v.ConnectorEntityName != nil {
428		ok := object.Key("connectorEntityName")
429		ok.String(*v.ConnectorEntityName)
430	}
431
432	if v.ConnectorProfileName != nil {
433		ok := object.Key("connectorProfileName")
434		ok.String(*v.ConnectorProfileName)
435	}
436
437	if len(v.ConnectorType) > 0 {
438		ok := object.Key("connectorType")
439		ok.String(string(v.ConnectorType))
440	}
441
442	return nil
443}
444
445type awsRestjson1_serializeOpDescribeConnectorProfiles struct {
446}
447
448func (*awsRestjson1_serializeOpDescribeConnectorProfiles) ID() string {
449	return "OperationSerializer"
450}
451
452func (m *awsRestjson1_serializeOpDescribeConnectorProfiles) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
453	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
454) {
455	request, ok := in.Request.(*smithyhttp.Request)
456	if !ok {
457		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
458	}
459
460	input, ok := in.Parameters.(*DescribeConnectorProfilesInput)
461	_ = input
462	if !ok {
463		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
464	}
465
466	opPath, opQuery := httpbinding.SplitURI("/describe-connector-profiles")
467	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
468	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
469	request.Method = "POST"
470	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
471	if err != nil {
472		return out, metadata, &smithy.SerializationError{Err: err}
473	}
474
475	restEncoder.SetHeader("Content-Type").String("application/json")
476
477	jsonEncoder := smithyjson.NewEncoder()
478	if err := awsRestjson1_serializeOpDocumentDescribeConnectorProfilesInput(input, jsonEncoder.Value); err != nil {
479		return out, metadata, &smithy.SerializationError{Err: err}
480	}
481
482	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
483		return out, metadata, &smithy.SerializationError{Err: err}
484	}
485
486	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
487		return out, metadata, &smithy.SerializationError{Err: err}
488	}
489	in.Request = request
490
491	return next.HandleSerialize(ctx, in)
492}
493func awsRestjson1_serializeOpHttpBindingsDescribeConnectorProfilesInput(v *DescribeConnectorProfilesInput, encoder *httpbinding.Encoder) error {
494	if v == nil {
495		return fmt.Errorf("unsupported serialization of nil %T", v)
496	}
497
498	return nil
499}
500
501func awsRestjson1_serializeOpDocumentDescribeConnectorProfilesInput(v *DescribeConnectorProfilesInput, value smithyjson.Value) error {
502	object := value.Object()
503	defer object.Close()
504
505	if v.ConnectorProfileNames != nil {
506		ok := object.Key("connectorProfileNames")
507		if err := awsRestjson1_serializeDocumentConnectorProfileNameList(v.ConnectorProfileNames, ok); err != nil {
508			return err
509		}
510	}
511
512	if len(v.ConnectorType) > 0 {
513		ok := object.Key("connectorType")
514		ok.String(string(v.ConnectorType))
515	}
516
517	if v.MaxResults != nil {
518		ok := object.Key("maxResults")
519		ok.Integer(*v.MaxResults)
520	}
521
522	if v.NextToken != nil {
523		ok := object.Key("nextToken")
524		ok.String(*v.NextToken)
525	}
526
527	return nil
528}
529
530type awsRestjson1_serializeOpDescribeConnectors struct {
531}
532
533func (*awsRestjson1_serializeOpDescribeConnectors) ID() string {
534	return "OperationSerializer"
535}
536
537func (m *awsRestjson1_serializeOpDescribeConnectors) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
538	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
539) {
540	request, ok := in.Request.(*smithyhttp.Request)
541	if !ok {
542		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
543	}
544
545	input, ok := in.Parameters.(*DescribeConnectorsInput)
546	_ = input
547	if !ok {
548		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
549	}
550
551	opPath, opQuery := httpbinding.SplitURI("/describe-connectors")
552	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
553	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
554	request.Method = "POST"
555	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
556	if err != nil {
557		return out, metadata, &smithy.SerializationError{Err: err}
558	}
559
560	restEncoder.SetHeader("Content-Type").String("application/json")
561
562	jsonEncoder := smithyjson.NewEncoder()
563	if err := awsRestjson1_serializeOpDocumentDescribeConnectorsInput(input, jsonEncoder.Value); err != nil {
564		return out, metadata, &smithy.SerializationError{Err: err}
565	}
566
567	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
568		return out, metadata, &smithy.SerializationError{Err: err}
569	}
570
571	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
572		return out, metadata, &smithy.SerializationError{Err: err}
573	}
574	in.Request = request
575
576	return next.HandleSerialize(ctx, in)
577}
578func awsRestjson1_serializeOpHttpBindingsDescribeConnectorsInput(v *DescribeConnectorsInput, encoder *httpbinding.Encoder) error {
579	if v == nil {
580		return fmt.Errorf("unsupported serialization of nil %T", v)
581	}
582
583	return nil
584}
585
586func awsRestjson1_serializeOpDocumentDescribeConnectorsInput(v *DescribeConnectorsInput, value smithyjson.Value) error {
587	object := value.Object()
588	defer object.Close()
589
590	if v.ConnectorTypes != nil {
591		ok := object.Key("connectorTypes")
592		if err := awsRestjson1_serializeDocumentConnectorTypeList(v.ConnectorTypes, ok); err != nil {
593			return err
594		}
595	}
596
597	if v.NextToken != nil {
598		ok := object.Key("nextToken")
599		ok.String(*v.NextToken)
600	}
601
602	return nil
603}
604
605type awsRestjson1_serializeOpDescribeFlow struct {
606}
607
608func (*awsRestjson1_serializeOpDescribeFlow) ID() string {
609	return "OperationSerializer"
610}
611
612func (m *awsRestjson1_serializeOpDescribeFlow) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
613	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
614) {
615	request, ok := in.Request.(*smithyhttp.Request)
616	if !ok {
617		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
618	}
619
620	input, ok := in.Parameters.(*DescribeFlowInput)
621	_ = input
622	if !ok {
623		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
624	}
625
626	opPath, opQuery := httpbinding.SplitURI("/describe-flow")
627	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
628	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
629	request.Method = "POST"
630	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
631	if err != nil {
632		return out, metadata, &smithy.SerializationError{Err: err}
633	}
634
635	restEncoder.SetHeader("Content-Type").String("application/json")
636
637	jsonEncoder := smithyjson.NewEncoder()
638	if err := awsRestjson1_serializeOpDocumentDescribeFlowInput(input, jsonEncoder.Value); err != nil {
639		return out, metadata, &smithy.SerializationError{Err: err}
640	}
641
642	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
643		return out, metadata, &smithy.SerializationError{Err: err}
644	}
645
646	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
647		return out, metadata, &smithy.SerializationError{Err: err}
648	}
649	in.Request = request
650
651	return next.HandleSerialize(ctx, in)
652}
653func awsRestjson1_serializeOpHttpBindingsDescribeFlowInput(v *DescribeFlowInput, encoder *httpbinding.Encoder) error {
654	if v == nil {
655		return fmt.Errorf("unsupported serialization of nil %T", v)
656	}
657
658	return nil
659}
660
661func awsRestjson1_serializeOpDocumentDescribeFlowInput(v *DescribeFlowInput, value smithyjson.Value) error {
662	object := value.Object()
663	defer object.Close()
664
665	if v.FlowName != nil {
666		ok := object.Key("flowName")
667		ok.String(*v.FlowName)
668	}
669
670	return nil
671}
672
673type awsRestjson1_serializeOpDescribeFlowExecutionRecords struct {
674}
675
676func (*awsRestjson1_serializeOpDescribeFlowExecutionRecords) ID() string {
677	return "OperationSerializer"
678}
679
680func (m *awsRestjson1_serializeOpDescribeFlowExecutionRecords) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
681	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
682) {
683	request, ok := in.Request.(*smithyhttp.Request)
684	if !ok {
685		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
686	}
687
688	input, ok := in.Parameters.(*DescribeFlowExecutionRecordsInput)
689	_ = input
690	if !ok {
691		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
692	}
693
694	opPath, opQuery := httpbinding.SplitURI("/describe-flow-execution-records")
695	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
696	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
697	request.Method = "POST"
698	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
699	if err != nil {
700		return out, metadata, &smithy.SerializationError{Err: err}
701	}
702
703	restEncoder.SetHeader("Content-Type").String("application/json")
704
705	jsonEncoder := smithyjson.NewEncoder()
706	if err := awsRestjson1_serializeOpDocumentDescribeFlowExecutionRecordsInput(input, jsonEncoder.Value); err != nil {
707		return out, metadata, &smithy.SerializationError{Err: err}
708	}
709
710	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
711		return out, metadata, &smithy.SerializationError{Err: err}
712	}
713
714	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
715		return out, metadata, &smithy.SerializationError{Err: err}
716	}
717	in.Request = request
718
719	return next.HandleSerialize(ctx, in)
720}
721func awsRestjson1_serializeOpHttpBindingsDescribeFlowExecutionRecordsInput(v *DescribeFlowExecutionRecordsInput, encoder *httpbinding.Encoder) error {
722	if v == nil {
723		return fmt.Errorf("unsupported serialization of nil %T", v)
724	}
725
726	return nil
727}
728
729func awsRestjson1_serializeOpDocumentDescribeFlowExecutionRecordsInput(v *DescribeFlowExecutionRecordsInput, value smithyjson.Value) error {
730	object := value.Object()
731	defer object.Close()
732
733	if v.FlowName != nil {
734		ok := object.Key("flowName")
735		ok.String(*v.FlowName)
736	}
737
738	if v.MaxResults != nil {
739		ok := object.Key("maxResults")
740		ok.Integer(*v.MaxResults)
741	}
742
743	if v.NextToken != nil {
744		ok := object.Key("nextToken")
745		ok.String(*v.NextToken)
746	}
747
748	return nil
749}
750
751type awsRestjson1_serializeOpListConnectorEntities struct {
752}
753
754func (*awsRestjson1_serializeOpListConnectorEntities) ID() string {
755	return "OperationSerializer"
756}
757
758func (m *awsRestjson1_serializeOpListConnectorEntities) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
759	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
760) {
761	request, ok := in.Request.(*smithyhttp.Request)
762	if !ok {
763		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
764	}
765
766	input, ok := in.Parameters.(*ListConnectorEntitiesInput)
767	_ = input
768	if !ok {
769		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
770	}
771
772	opPath, opQuery := httpbinding.SplitURI("/list-connector-entities")
773	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
774	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
775	request.Method = "POST"
776	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
777	if err != nil {
778		return out, metadata, &smithy.SerializationError{Err: err}
779	}
780
781	restEncoder.SetHeader("Content-Type").String("application/json")
782
783	jsonEncoder := smithyjson.NewEncoder()
784	if err := awsRestjson1_serializeOpDocumentListConnectorEntitiesInput(input, jsonEncoder.Value); err != nil {
785		return out, metadata, &smithy.SerializationError{Err: err}
786	}
787
788	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
789		return out, metadata, &smithy.SerializationError{Err: err}
790	}
791
792	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
793		return out, metadata, &smithy.SerializationError{Err: err}
794	}
795	in.Request = request
796
797	return next.HandleSerialize(ctx, in)
798}
799func awsRestjson1_serializeOpHttpBindingsListConnectorEntitiesInput(v *ListConnectorEntitiesInput, encoder *httpbinding.Encoder) error {
800	if v == nil {
801		return fmt.Errorf("unsupported serialization of nil %T", v)
802	}
803
804	return nil
805}
806
807func awsRestjson1_serializeOpDocumentListConnectorEntitiesInput(v *ListConnectorEntitiesInput, value smithyjson.Value) error {
808	object := value.Object()
809	defer object.Close()
810
811	if v.ConnectorProfileName != nil {
812		ok := object.Key("connectorProfileName")
813		ok.String(*v.ConnectorProfileName)
814	}
815
816	if len(v.ConnectorType) > 0 {
817		ok := object.Key("connectorType")
818		ok.String(string(v.ConnectorType))
819	}
820
821	if v.EntitiesPath != nil {
822		ok := object.Key("entitiesPath")
823		ok.String(*v.EntitiesPath)
824	}
825
826	return nil
827}
828
829type awsRestjson1_serializeOpListFlows struct {
830}
831
832func (*awsRestjson1_serializeOpListFlows) ID() string {
833	return "OperationSerializer"
834}
835
836func (m *awsRestjson1_serializeOpListFlows) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
837	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
838) {
839	request, ok := in.Request.(*smithyhttp.Request)
840	if !ok {
841		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
842	}
843
844	input, ok := in.Parameters.(*ListFlowsInput)
845	_ = input
846	if !ok {
847		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
848	}
849
850	opPath, opQuery := httpbinding.SplitURI("/list-flows")
851	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
852	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
853	request.Method = "POST"
854	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
855	if err != nil {
856		return out, metadata, &smithy.SerializationError{Err: err}
857	}
858
859	restEncoder.SetHeader("Content-Type").String("application/json")
860
861	jsonEncoder := smithyjson.NewEncoder()
862	if err := awsRestjson1_serializeOpDocumentListFlowsInput(input, jsonEncoder.Value); err != nil {
863		return out, metadata, &smithy.SerializationError{Err: err}
864	}
865
866	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
867		return out, metadata, &smithy.SerializationError{Err: err}
868	}
869
870	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
871		return out, metadata, &smithy.SerializationError{Err: err}
872	}
873	in.Request = request
874
875	return next.HandleSerialize(ctx, in)
876}
877func awsRestjson1_serializeOpHttpBindingsListFlowsInput(v *ListFlowsInput, encoder *httpbinding.Encoder) error {
878	if v == nil {
879		return fmt.Errorf("unsupported serialization of nil %T", v)
880	}
881
882	return nil
883}
884
885func awsRestjson1_serializeOpDocumentListFlowsInput(v *ListFlowsInput, value smithyjson.Value) error {
886	object := value.Object()
887	defer object.Close()
888
889	if v.MaxResults != nil {
890		ok := object.Key("maxResults")
891		ok.Integer(*v.MaxResults)
892	}
893
894	if v.NextToken != nil {
895		ok := object.Key("nextToken")
896		ok.String(*v.NextToken)
897	}
898
899	return nil
900}
901
902type awsRestjson1_serializeOpListTagsForResource struct {
903}
904
905func (*awsRestjson1_serializeOpListTagsForResource) ID() string {
906	return "OperationSerializer"
907}
908
909func (m *awsRestjson1_serializeOpListTagsForResource) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
910	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
911) {
912	request, ok := in.Request.(*smithyhttp.Request)
913	if !ok {
914		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
915	}
916
917	input, ok := in.Parameters.(*ListTagsForResourceInput)
918	_ = input
919	if !ok {
920		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
921	}
922
923	opPath, opQuery := httpbinding.SplitURI("/tags/{resourceArn}")
924	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
925	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
926	request.Method = "GET"
927	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
928	if err != nil {
929		return out, metadata, &smithy.SerializationError{Err: err}
930	}
931
932	if err := awsRestjson1_serializeOpHttpBindingsListTagsForResourceInput(input, restEncoder); err != nil {
933		return out, metadata, &smithy.SerializationError{Err: err}
934	}
935
936	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
937		return out, metadata, &smithy.SerializationError{Err: err}
938	}
939	in.Request = request
940
941	return next.HandleSerialize(ctx, in)
942}
943func awsRestjson1_serializeOpHttpBindingsListTagsForResourceInput(v *ListTagsForResourceInput, encoder *httpbinding.Encoder) error {
944	if v == nil {
945		return fmt.Errorf("unsupported serialization of nil %T", v)
946	}
947
948	if v.ResourceArn == nil || len(*v.ResourceArn) == 0 {
949		return &smithy.SerializationError{Err: fmt.Errorf("input member resourceArn must not be empty")}
950	}
951	if v.ResourceArn != nil {
952		if err := encoder.SetURI("resourceArn").String(*v.ResourceArn); err != nil {
953			return err
954		}
955	}
956
957	return nil
958}
959
960type awsRestjson1_serializeOpStartFlow struct {
961}
962
963func (*awsRestjson1_serializeOpStartFlow) ID() string {
964	return "OperationSerializer"
965}
966
967func (m *awsRestjson1_serializeOpStartFlow) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
968	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
969) {
970	request, ok := in.Request.(*smithyhttp.Request)
971	if !ok {
972		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
973	}
974
975	input, ok := in.Parameters.(*StartFlowInput)
976	_ = input
977	if !ok {
978		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
979	}
980
981	opPath, opQuery := httpbinding.SplitURI("/start-flow")
982	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
983	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
984	request.Method = "POST"
985	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
986	if err != nil {
987		return out, metadata, &smithy.SerializationError{Err: err}
988	}
989
990	restEncoder.SetHeader("Content-Type").String("application/json")
991
992	jsonEncoder := smithyjson.NewEncoder()
993	if err := awsRestjson1_serializeOpDocumentStartFlowInput(input, jsonEncoder.Value); err != nil {
994		return out, metadata, &smithy.SerializationError{Err: err}
995	}
996
997	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
998		return out, metadata, &smithy.SerializationError{Err: err}
999	}
1000
1001	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
1002		return out, metadata, &smithy.SerializationError{Err: err}
1003	}
1004	in.Request = request
1005
1006	return next.HandleSerialize(ctx, in)
1007}
1008func awsRestjson1_serializeOpHttpBindingsStartFlowInput(v *StartFlowInput, encoder *httpbinding.Encoder) error {
1009	if v == nil {
1010		return fmt.Errorf("unsupported serialization of nil %T", v)
1011	}
1012
1013	return nil
1014}
1015
1016func awsRestjson1_serializeOpDocumentStartFlowInput(v *StartFlowInput, value smithyjson.Value) error {
1017	object := value.Object()
1018	defer object.Close()
1019
1020	if v.FlowName != nil {
1021		ok := object.Key("flowName")
1022		ok.String(*v.FlowName)
1023	}
1024
1025	return nil
1026}
1027
1028type awsRestjson1_serializeOpStopFlow struct {
1029}
1030
1031func (*awsRestjson1_serializeOpStopFlow) ID() string {
1032	return "OperationSerializer"
1033}
1034
1035func (m *awsRestjson1_serializeOpStopFlow) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1036	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1037) {
1038	request, ok := in.Request.(*smithyhttp.Request)
1039	if !ok {
1040		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1041	}
1042
1043	input, ok := in.Parameters.(*StopFlowInput)
1044	_ = input
1045	if !ok {
1046		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1047	}
1048
1049	opPath, opQuery := httpbinding.SplitURI("/stop-flow")
1050	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
1051	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
1052	request.Method = "POST"
1053	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1054	if err != nil {
1055		return out, metadata, &smithy.SerializationError{Err: err}
1056	}
1057
1058	restEncoder.SetHeader("Content-Type").String("application/json")
1059
1060	jsonEncoder := smithyjson.NewEncoder()
1061	if err := awsRestjson1_serializeOpDocumentStopFlowInput(input, jsonEncoder.Value); err != nil {
1062		return out, metadata, &smithy.SerializationError{Err: err}
1063	}
1064
1065	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1066		return out, metadata, &smithy.SerializationError{Err: err}
1067	}
1068
1069	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
1070		return out, metadata, &smithy.SerializationError{Err: err}
1071	}
1072	in.Request = request
1073
1074	return next.HandleSerialize(ctx, in)
1075}
1076func awsRestjson1_serializeOpHttpBindingsStopFlowInput(v *StopFlowInput, encoder *httpbinding.Encoder) error {
1077	if v == nil {
1078		return fmt.Errorf("unsupported serialization of nil %T", v)
1079	}
1080
1081	return nil
1082}
1083
1084func awsRestjson1_serializeOpDocumentStopFlowInput(v *StopFlowInput, value smithyjson.Value) error {
1085	object := value.Object()
1086	defer object.Close()
1087
1088	if v.FlowName != nil {
1089		ok := object.Key("flowName")
1090		ok.String(*v.FlowName)
1091	}
1092
1093	return nil
1094}
1095
1096type awsRestjson1_serializeOpTagResource struct {
1097}
1098
1099func (*awsRestjson1_serializeOpTagResource) ID() string {
1100	return "OperationSerializer"
1101}
1102
1103func (m *awsRestjson1_serializeOpTagResource) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1104	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1105) {
1106	request, ok := in.Request.(*smithyhttp.Request)
1107	if !ok {
1108		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1109	}
1110
1111	input, ok := in.Parameters.(*TagResourceInput)
1112	_ = input
1113	if !ok {
1114		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1115	}
1116
1117	opPath, opQuery := httpbinding.SplitURI("/tags/{resourceArn}")
1118	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
1119	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
1120	request.Method = "POST"
1121	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1122	if err != nil {
1123		return out, metadata, &smithy.SerializationError{Err: err}
1124	}
1125
1126	if err := awsRestjson1_serializeOpHttpBindingsTagResourceInput(input, restEncoder); err != nil {
1127		return out, metadata, &smithy.SerializationError{Err: err}
1128	}
1129
1130	restEncoder.SetHeader("Content-Type").String("application/json")
1131
1132	jsonEncoder := smithyjson.NewEncoder()
1133	if err := awsRestjson1_serializeOpDocumentTagResourceInput(input, jsonEncoder.Value); err != nil {
1134		return out, metadata, &smithy.SerializationError{Err: err}
1135	}
1136
1137	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1138		return out, metadata, &smithy.SerializationError{Err: err}
1139	}
1140
1141	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
1142		return out, metadata, &smithy.SerializationError{Err: err}
1143	}
1144	in.Request = request
1145
1146	return next.HandleSerialize(ctx, in)
1147}
1148func awsRestjson1_serializeOpHttpBindingsTagResourceInput(v *TagResourceInput, encoder *httpbinding.Encoder) error {
1149	if v == nil {
1150		return fmt.Errorf("unsupported serialization of nil %T", v)
1151	}
1152
1153	if v.ResourceArn == nil || len(*v.ResourceArn) == 0 {
1154		return &smithy.SerializationError{Err: fmt.Errorf("input member resourceArn must not be empty")}
1155	}
1156	if v.ResourceArn != nil {
1157		if err := encoder.SetURI("resourceArn").String(*v.ResourceArn); err != nil {
1158			return err
1159		}
1160	}
1161
1162	return nil
1163}
1164
1165func awsRestjson1_serializeOpDocumentTagResourceInput(v *TagResourceInput, value smithyjson.Value) error {
1166	object := value.Object()
1167	defer object.Close()
1168
1169	if v.Tags != nil {
1170		ok := object.Key("tags")
1171		if err := awsRestjson1_serializeDocumentTagMap(v.Tags, ok); err != nil {
1172			return err
1173		}
1174	}
1175
1176	return nil
1177}
1178
1179type awsRestjson1_serializeOpUntagResource struct {
1180}
1181
1182func (*awsRestjson1_serializeOpUntagResource) ID() string {
1183	return "OperationSerializer"
1184}
1185
1186func (m *awsRestjson1_serializeOpUntagResource) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1187	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1188) {
1189	request, ok := in.Request.(*smithyhttp.Request)
1190	if !ok {
1191		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1192	}
1193
1194	input, ok := in.Parameters.(*UntagResourceInput)
1195	_ = input
1196	if !ok {
1197		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1198	}
1199
1200	opPath, opQuery := httpbinding.SplitURI("/tags/{resourceArn}")
1201	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
1202	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
1203	request.Method = "DELETE"
1204	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1205	if err != nil {
1206		return out, metadata, &smithy.SerializationError{Err: err}
1207	}
1208
1209	if err := awsRestjson1_serializeOpHttpBindingsUntagResourceInput(input, restEncoder); err != nil {
1210		return out, metadata, &smithy.SerializationError{Err: err}
1211	}
1212
1213	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
1214		return out, metadata, &smithy.SerializationError{Err: err}
1215	}
1216	in.Request = request
1217
1218	return next.HandleSerialize(ctx, in)
1219}
1220func awsRestjson1_serializeOpHttpBindingsUntagResourceInput(v *UntagResourceInput, encoder *httpbinding.Encoder) error {
1221	if v == nil {
1222		return fmt.Errorf("unsupported serialization of nil %T", v)
1223	}
1224
1225	if v.ResourceArn == nil || len(*v.ResourceArn) == 0 {
1226		return &smithy.SerializationError{Err: fmt.Errorf("input member resourceArn must not be empty")}
1227	}
1228	if v.ResourceArn != nil {
1229		if err := encoder.SetURI("resourceArn").String(*v.ResourceArn); err != nil {
1230			return err
1231		}
1232	}
1233
1234	if v.TagKeys != nil {
1235		for i := range v.TagKeys {
1236			encoder.AddQuery("tagKeys").String(v.TagKeys[i])
1237		}
1238	}
1239
1240	return nil
1241}
1242
1243type awsRestjson1_serializeOpUpdateConnectorProfile struct {
1244}
1245
1246func (*awsRestjson1_serializeOpUpdateConnectorProfile) ID() string {
1247	return "OperationSerializer"
1248}
1249
1250func (m *awsRestjson1_serializeOpUpdateConnectorProfile) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1251	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1252) {
1253	request, ok := in.Request.(*smithyhttp.Request)
1254	if !ok {
1255		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1256	}
1257
1258	input, ok := in.Parameters.(*UpdateConnectorProfileInput)
1259	_ = input
1260	if !ok {
1261		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1262	}
1263
1264	opPath, opQuery := httpbinding.SplitURI("/update-connector-profile")
1265	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
1266	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
1267	request.Method = "POST"
1268	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1269	if err != nil {
1270		return out, metadata, &smithy.SerializationError{Err: err}
1271	}
1272
1273	restEncoder.SetHeader("Content-Type").String("application/json")
1274
1275	jsonEncoder := smithyjson.NewEncoder()
1276	if err := awsRestjson1_serializeOpDocumentUpdateConnectorProfileInput(input, jsonEncoder.Value); err != nil {
1277		return out, metadata, &smithy.SerializationError{Err: err}
1278	}
1279
1280	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1281		return out, metadata, &smithy.SerializationError{Err: err}
1282	}
1283
1284	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
1285		return out, metadata, &smithy.SerializationError{Err: err}
1286	}
1287	in.Request = request
1288
1289	return next.HandleSerialize(ctx, in)
1290}
1291func awsRestjson1_serializeOpHttpBindingsUpdateConnectorProfileInput(v *UpdateConnectorProfileInput, encoder *httpbinding.Encoder) error {
1292	if v == nil {
1293		return fmt.Errorf("unsupported serialization of nil %T", v)
1294	}
1295
1296	return nil
1297}
1298
1299func awsRestjson1_serializeOpDocumentUpdateConnectorProfileInput(v *UpdateConnectorProfileInput, value smithyjson.Value) error {
1300	object := value.Object()
1301	defer object.Close()
1302
1303	if len(v.ConnectionMode) > 0 {
1304		ok := object.Key("connectionMode")
1305		ok.String(string(v.ConnectionMode))
1306	}
1307
1308	if v.ConnectorProfileConfig != nil {
1309		ok := object.Key("connectorProfileConfig")
1310		if err := awsRestjson1_serializeDocumentConnectorProfileConfig(v.ConnectorProfileConfig, ok); err != nil {
1311			return err
1312		}
1313	}
1314
1315	if v.ConnectorProfileName != nil {
1316		ok := object.Key("connectorProfileName")
1317		ok.String(*v.ConnectorProfileName)
1318	}
1319
1320	return nil
1321}
1322
1323type awsRestjson1_serializeOpUpdateFlow struct {
1324}
1325
1326func (*awsRestjson1_serializeOpUpdateFlow) ID() string {
1327	return "OperationSerializer"
1328}
1329
1330func (m *awsRestjson1_serializeOpUpdateFlow) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1331	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1332) {
1333	request, ok := in.Request.(*smithyhttp.Request)
1334	if !ok {
1335		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1336	}
1337
1338	input, ok := in.Parameters.(*UpdateFlowInput)
1339	_ = input
1340	if !ok {
1341		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1342	}
1343
1344	opPath, opQuery := httpbinding.SplitURI("/update-flow")
1345	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
1346	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
1347	request.Method = "POST"
1348	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1349	if err != nil {
1350		return out, metadata, &smithy.SerializationError{Err: err}
1351	}
1352
1353	restEncoder.SetHeader("Content-Type").String("application/json")
1354
1355	jsonEncoder := smithyjson.NewEncoder()
1356	if err := awsRestjson1_serializeOpDocumentUpdateFlowInput(input, jsonEncoder.Value); err != nil {
1357		return out, metadata, &smithy.SerializationError{Err: err}
1358	}
1359
1360	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1361		return out, metadata, &smithy.SerializationError{Err: err}
1362	}
1363
1364	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
1365		return out, metadata, &smithy.SerializationError{Err: err}
1366	}
1367	in.Request = request
1368
1369	return next.HandleSerialize(ctx, in)
1370}
1371func awsRestjson1_serializeOpHttpBindingsUpdateFlowInput(v *UpdateFlowInput, encoder *httpbinding.Encoder) error {
1372	if v == nil {
1373		return fmt.Errorf("unsupported serialization of nil %T", v)
1374	}
1375
1376	return nil
1377}
1378
1379func awsRestjson1_serializeOpDocumentUpdateFlowInput(v *UpdateFlowInput, value smithyjson.Value) error {
1380	object := value.Object()
1381	defer object.Close()
1382
1383	if v.Description != nil {
1384		ok := object.Key("description")
1385		ok.String(*v.Description)
1386	}
1387
1388	if v.DestinationFlowConfigList != nil {
1389		ok := object.Key("destinationFlowConfigList")
1390		if err := awsRestjson1_serializeDocumentDestinationFlowConfigList(v.DestinationFlowConfigList, ok); err != nil {
1391			return err
1392		}
1393	}
1394
1395	if v.FlowName != nil {
1396		ok := object.Key("flowName")
1397		ok.String(*v.FlowName)
1398	}
1399
1400	if v.SourceFlowConfig != nil {
1401		ok := object.Key("sourceFlowConfig")
1402		if err := awsRestjson1_serializeDocumentSourceFlowConfig(v.SourceFlowConfig, ok); err != nil {
1403			return err
1404		}
1405	}
1406
1407	if v.Tasks != nil {
1408		ok := object.Key("tasks")
1409		if err := awsRestjson1_serializeDocumentTasks(v.Tasks, ok); err != nil {
1410			return err
1411		}
1412	}
1413
1414	if v.TriggerConfig != nil {
1415		ok := object.Key("triggerConfig")
1416		if err := awsRestjson1_serializeDocumentTriggerConfig(v.TriggerConfig, ok); err != nil {
1417			return err
1418		}
1419	}
1420
1421	return nil
1422}
1423
1424func awsRestjson1_serializeDocumentAggregationConfig(v *types.AggregationConfig, value smithyjson.Value) error {
1425	object := value.Object()
1426	defer object.Close()
1427
1428	if len(v.AggregationType) > 0 {
1429		ok := object.Key("aggregationType")
1430		ok.String(string(v.AggregationType))
1431	}
1432
1433	return nil
1434}
1435
1436func awsRestjson1_serializeDocumentAmplitudeConnectorProfileCredentials(v *types.AmplitudeConnectorProfileCredentials, value smithyjson.Value) error {
1437	object := value.Object()
1438	defer object.Close()
1439
1440	if v.ApiKey != nil {
1441		ok := object.Key("apiKey")
1442		ok.String(*v.ApiKey)
1443	}
1444
1445	if v.SecretKey != nil {
1446		ok := object.Key("secretKey")
1447		ok.String(*v.SecretKey)
1448	}
1449
1450	return nil
1451}
1452
1453func awsRestjson1_serializeDocumentAmplitudeConnectorProfileProperties(v *types.AmplitudeConnectorProfileProperties, value smithyjson.Value) error {
1454	object := value.Object()
1455	defer object.Close()
1456
1457	return nil
1458}
1459
1460func awsRestjson1_serializeDocumentAmplitudeSourceProperties(v *types.AmplitudeSourceProperties, value smithyjson.Value) error {
1461	object := value.Object()
1462	defer object.Close()
1463
1464	if v.Object != nil {
1465		ok := object.Key("object")
1466		ok.String(*v.Object)
1467	}
1468
1469	return nil
1470}
1471
1472func awsRestjson1_serializeDocumentConnectorOAuthRequest(v *types.ConnectorOAuthRequest, value smithyjson.Value) error {
1473	object := value.Object()
1474	defer object.Close()
1475
1476	if v.AuthCode != nil {
1477		ok := object.Key("authCode")
1478		ok.String(*v.AuthCode)
1479	}
1480
1481	if v.RedirectUri != nil {
1482		ok := object.Key("redirectUri")
1483		ok.String(*v.RedirectUri)
1484	}
1485
1486	return nil
1487}
1488
1489func awsRestjson1_serializeDocumentConnectorOperator(v *types.ConnectorOperator, value smithyjson.Value) error {
1490	object := value.Object()
1491	defer object.Close()
1492
1493	if len(v.Amplitude) > 0 {
1494		ok := object.Key("Amplitude")
1495		ok.String(string(v.Amplitude))
1496	}
1497
1498	if len(v.Datadog) > 0 {
1499		ok := object.Key("Datadog")
1500		ok.String(string(v.Datadog))
1501	}
1502
1503	if len(v.Dynatrace) > 0 {
1504		ok := object.Key("Dynatrace")
1505		ok.String(string(v.Dynatrace))
1506	}
1507
1508	if len(v.GoogleAnalytics) > 0 {
1509		ok := object.Key("GoogleAnalytics")
1510		ok.String(string(v.GoogleAnalytics))
1511	}
1512
1513	if len(v.InforNexus) > 0 {
1514		ok := object.Key("InforNexus")
1515		ok.String(string(v.InforNexus))
1516	}
1517
1518	if len(v.Marketo) > 0 {
1519		ok := object.Key("Marketo")
1520		ok.String(string(v.Marketo))
1521	}
1522
1523	if len(v.S3) > 0 {
1524		ok := object.Key("S3")
1525		ok.String(string(v.S3))
1526	}
1527
1528	if len(v.Salesforce) > 0 {
1529		ok := object.Key("Salesforce")
1530		ok.String(string(v.Salesforce))
1531	}
1532
1533	if len(v.ServiceNow) > 0 {
1534		ok := object.Key("ServiceNow")
1535		ok.String(string(v.ServiceNow))
1536	}
1537
1538	if len(v.Singular) > 0 {
1539		ok := object.Key("Singular")
1540		ok.String(string(v.Singular))
1541	}
1542
1543	if len(v.Slack) > 0 {
1544		ok := object.Key("Slack")
1545		ok.String(string(v.Slack))
1546	}
1547
1548	if len(v.Trendmicro) > 0 {
1549		ok := object.Key("Trendmicro")
1550		ok.String(string(v.Trendmicro))
1551	}
1552
1553	if len(v.Veeva) > 0 {
1554		ok := object.Key("Veeva")
1555		ok.String(string(v.Veeva))
1556	}
1557
1558	if len(v.Zendesk) > 0 {
1559		ok := object.Key("Zendesk")
1560		ok.String(string(v.Zendesk))
1561	}
1562
1563	return nil
1564}
1565
1566func awsRestjson1_serializeDocumentConnectorProfileConfig(v *types.ConnectorProfileConfig, value smithyjson.Value) error {
1567	object := value.Object()
1568	defer object.Close()
1569
1570	if v.ConnectorProfileCredentials != nil {
1571		ok := object.Key("connectorProfileCredentials")
1572		if err := awsRestjson1_serializeDocumentConnectorProfileCredentials(v.ConnectorProfileCredentials, ok); err != nil {
1573			return err
1574		}
1575	}
1576
1577	if v.ConnectorProfileProperties != nil {
1578		ok := object.Key("connectorProfileProperties")
1579		if err := awsRestjson1_serializeDocumentConnectorProfileProperties(v.ConnectorProfileProperties, ok); err != nil {
1580			return err
1581		}
1582	}
1583
1584	return nil
1585}
1586
1587func awsRestjson1_serializeDocumentConnectorProfileCredentials(v *types.ConnectorProfileCredentials, value smithyjson.Value) error {
1588	object := value.Object()
1589	defer object.Close()
1590
1591	if v.Amplitude != nil {
1592		ok := object.Key("Amplitude")
1593		if err := awsRestjson1_serializeDocumentAmplitudeConnectorProfileCredentials(v.Amplitude, ok); err != nil {
1594			return err
1595		}
1596	}
1597
1598	if v.Datadog != nil {
1599		ok := object.Key("Datadog")
1600		if err := awsRestjson1_serializeDocumentDatadogConnectorProfileCredentials(v.Datadog, ok); err != nil {
1601			return err
1602		}
1603	}
1604
1605	if v.Dynatrace != nil {
1606		ok := object.Key("Dynatrace")
1607		if err := awsRestjson1_serializeDocumentDynatraceConnectorProfileCredentials(v.Dynatrace, ok); err != nil {
1608			return err
1609		}
1610	}
1611
1612	if v.GoogleAnalytics != nil {
1613		ok := object.Key("GoogleAnalytics")
1614		if err := awsRestjson1_serializeDocumentGoogleAnalyticsConnectorProfileCredentials(v.GoogleAnalytics, ok); err != nil {
1615			return err
1616		}
1617	}
1618
1619	if v.Honeycode != nil {
1620		ok := object.Key("Honeycode")
1621		if err := awsRestjson1_serializeDocumentHoneycodeConnectorProfileCredentials(v.Honeycode, ok); err != nil {
1622			return err
1623		}
1624	}
1625
1626	if v.InforNexus != nil {
1627		ok := object.Key("InforNexus")
1628		if err := awsRestjson1_serializeDocumentInforNexusConnectorProfileCredentials(v.InforNexus, ok); err != nil {
1629			return err
1630		}
1631	}
1632
1633	if v.Marketo != nil {
1634		ok := object.Key("Marketo")
1635		if err := awsRestjson1_serializeDocumentMarketoConnectorProfileCredentials(v.Marketo, ok); err != nil {
1636			return err
1637		}
1638	}
1639
1640	if v.Redshift != nil {
1641		ok := object.Key("Redshift")
1642		if err := awsRestjson1_serializeDocumentRedshiftConnectorProfileCredentials(v.Redshift, ok); err != nil {
1643			return err
1644		}
1645	}
1646
1647	if v.Salesforce != nil {
1648		ok := object.Key("Salesforce")
1649		if err := awsRestjson1_serializeDocumentSalesforceConnectorProfileCredentials(v.Salesforce, ok); err != nil {
1650			return err
1651		}
1652	}
1653
1654	if v.ServiceNow != nil {
1655		ok := object.Key("ServiceNow")
1656		if err := awsRestjson1_serializeDocumentServiceNowConnectorProfileCredentials(v.ServiceNow, ok); err != nil {
1657			return err
1658		}
1659	}
1660
1661	if v.Singular != nil {
1662		ok := object.Key("Singular")
1663		if err := awsRestjson1_serializeDocumentSingularConnectorProfileCredentials(v.Singular, ok); err != nil {
1664			return err
1665		}
1666	}
1667
1668	if v.Slack != nil {
1669		ok := object.Key("Slack")
1670		if err := awsRestjson1_serializeDocumentSlackConnectorProfileCredentials(v.Slack, ok); err != nil {
1671			return err
1672		}
1673	}
1674
1675	if v.Snowflake != nil {
1676		ok := object.Key("Snowflake")
1677		if err := awsRestjson1_serializeDocumentSnowflakeConnectorProfileCredentials(v.Snowflake, ok); err != nil {
1678			return err
1679		}
1680	}
1681
1682	if v.Trendmicro != nil {
1683		ok := object.Key("Trendmicro")
1684		if err := awsRestjson1_serializeDocumentTrendmicroConnectorProfileCredentials(v.Trendmicro, ok); err != nil {
1685			return err
1686		}
1687	}
1688
1689	if v.Veeva != nil {
1690		ok := object.Key("Veeva")
1691		if err := awsRestjson1_serializeDocumentVeevaConnectorProfileCredentials(v.Veeva, ok); err != nil {
1692			return err
1693		}
1694	}
1695
1696	if v.Zendesk != nil {
1697		ok := object.Key("Zendesk")
1698		if err := awsRestjson1_serializeDocumentZendeskConnectorProfileCredentials(v.Zendesk, ok); err != nil {
1699			return err
1700		}
1701	}
1702
1703	return nil
1704}
1705
1706func awsRestjson1_serializeDocumentConnectorProfileNameList(v []string, value smithyjson.Value) error {
1707	array := value.Array()
1708	defer array.Close()
1709
1710	for i := range v {
1711		av := array.Value()
1712		av.String(v[i])
1713	}
1714	return nil
1715}
1716
1717func awsRestjson1_serializeDocumentConnectorProfileProperties(v *types.ConnectorProfileProperties, value smithyjson.Value) error {
1718	object := value.Object()
1719	defer object.Close()
1720
1721	if v.Amplitude != nil {
1722		ok := object.Key("Amplitude")
1723		if err := awsRestjson1_serializeDocumentAmplitudeConnectorProfileProperties(v.Amplitude, ok); err != nil {
1724			return err
1725		}
1726	}
1727
1728	if v.Datadog != nil {
1729		ok := object.Key("Datadog")
1730		if err := awsRestjson1_serializeDocumentDatadogConnectorProfileProperties(v.Datadog, ok); err != nil {
1731			return err
1732		}
1733	}
1734
1735	if v.Dynatrace != nil {
1736		ok := object.Key("Dynatrace")
1737		if err := awsRestjson1_serializeDocumentDynatraceConnectorProfileProperties(v.Dynatrace, ok); err != nil {
1738			return err
1739		}
1740	}
1741
1742	if v.GoogleAnalytics != nil {
1743		ok := object.Key("GoogleAnalytics")
1744		if err := awsRestjson1_serializeDocumentGoogleAnalyticsConnectorProfileProperties(v.GoogleAnalytics, ok); err != nil {
1745			return err
1746		}
1747	}
1748
1749	if v.Honeycode != nil {
1750		ok := object.Key("Honeycode")
1751		if err := awsRestjson1_serializeDocumentHoneycodeConnectorProfileProperties(v.Honeycode, ok); err != nil {
1752			return err
1753		}
1754	}
1755
1756	if v.InforNexus != nil {
1757		ok := object.Key("InforNexus")
1758		if err := awsRestjson1_serializeDocumentInforNexusConnectorProfileProperties(v.InforNexus, ok); err != nil {
1759			return err
1760		}
1761	}
1762
1763	if v.Marketo != nil {
1764		ok := object.Key("Marketo")
1765		if err := awsRestjson1_serializeDocumentMarketoConnectorProfileProperties(v.Marketo, ok); err != nil {
1766			return err
1767		}
1768	}
1769
1770	if v.Redshift != nil {
1771		ok := object.Key("Redshift")
1772		if err := awsRestjson1_serializeDocumentRedshiftConnectorProfileProperties(v.Redshift, ok); err != nil {
1773			return err
1774		}
1775	}
1776
1777	if v.Salesforce != nil {
1778		ok := object.Key("Salesforce")
1779		if err := awsRestjson1_serializeDocumentSalesforceConnectorProfileProperties(v.Salesforce, ok); err != nil {
1780			return err
1781		}
1782	}
1783
1784	if v.ServiceNow != nil {
1785		ok := object.Key("ServiceNow")
1786		if err := awsRestjson1_serializeDocumentServiceNowConnectorProfileProperties(v.ServiceNow, ok); err != nil {
1787			return err
1788		}
1789	}
1790
1791	if v.Singular != nil {
1792		ok := object.Key("Singular")
1793		if err := awsRestjson1_serializeDocumentSingularConnectorProfileProperties(v.Singular, ok); err != nil {
1794			return err
1795		}
1796	}
1797
1798	if v.Slack != nil {
1799		ok := object.Key("Slack")
1800		if err := awsRestjson1_serializeDocumentSlackConnectorProfileProperties(v.Slack, ok); err != nil {
1801			return err
1802		}
1803	}
1804
1805	if v.Snowflake != nil {
1806		ok := object.Key("Snowflake")
1807		if err := awsRestjson1_serializeDocumentSnowflakeConnectorProfileProperties(v.Snowflake, ok); err != nil {
1808			return err
1809		}
1810	}
1811
1812	if v.Trendmicro != nil {
1813		ok := object.Key("Trendmicro")
1814		if err := awsRestjson1_serializeDocumentTrendmicroConnectorProfileProperties(v.Trendmicro, ok); err != nil {
1815			return err
1816		}
1817	}
1818
1819	if v.Veeva != nil {
1820		ok := object.Key("Veeva")
1821		if err := awsRestjson1_serializeDocumentVeevaConnectorProfileProperties(v.Veeva, ok); err != nil {
1822			return err
1823		}
1824	}
1825
1826	if v.Zendesk != nil {
1827		ok := object.Key("Zendesk")
1828		if err := awsRestjson1_serializeDocumentZendeskConnectorProfileProperties(v.Zendesk, ok); err != nil {
1829			return err
1830		}
1831	}
1832
1833	return nil
1834}
1835
1836func awsRestjson1_serializeDocumentConnectorTypeList(v []types.ConnectorType, value smithyjson.Value) error {
1837	array := value.Array()
1838	defer array.Close()
1839
1840	for i := range v {
1841		av := array.Value()
1842		av.String(string(v[i]))
1843	}
1844	return nil
1845}
1846
1847func awsRestjson1_serializeDocumentCustomerProfilesDestinationProperties(v *types.CustomerProfilesDestinationProperties, value smithyjson.Value) error {
1848	object := value.Object()
1849	defer object.Close()
1850
1851	if v.DomainName != nil {
1852		ok := object.Key("domainName")
1853		ok.String(*v.DomainName)
1854	}
1855
1856	if v.ObjectTypeName != nil {
1857		ok := object.Key("objectTypeName")
1858		ok.String(*v.ObjectTypeName)
1859	}
1860
1861	return nil
1862}
1863
1864func awsRestjson1_serializeDocumentDatadogConnectorProfileCredentials(v *types.DatadogConnectorProfileCredentials, value smithyjson.Value) error {
1865	object := value.Object()
1866	defer object.Close()
1867
1868	if v.ApiKey != nil {
1869		ok := object.Key("apiKey")
1870		ok.String(*v.ApiKey)
1871	}
1872
1873	if v.ApplicationKey != nil {
1874		ok := object.Key("applicationKey")
1875		ok.String(*v.ApplicationKey)
1876	}
1877
1878	return nil
1879}
1880
1881func awsRestjson1_serializeDocumentDatadogConnectorProfileProperties(v *types.DatadogConnectorProfileProperties, value smithyjson.Value) error {
1882	object := value.Object()
1883	defer object.Close()
1884
1885	if v.InstanceUrl != nil {
1886		ok := object.Key("instanceUrl")
1887		ok.String(*v.InstanceUrl)
1888	}
1889
1890	return nil
1891}
1892
1893func awsRestjson1_serializeDocumentDatadogSourceProperties(v *types.DatadogSourceProperties, value smithyjson.Value) error {
1894	object := value.Object()
1895	defer object.Close()
1896
1897	if v.Object != nil {
1898		ok := object.Key("object")
1899		ok.String(*v.Object)
1900	}
1901
1902	return nil
1903}
1904
1905func awsRestjson1_serializeDocumentDestinationConnectorProperties(v *types.DestinationConnectorProperties, value smithyjson.Value) error {
1906	object := value.Object()
1907	defer object.Close()
1908
1909	if v.CustomerProfiles != nil {
1910		ok := object.Key("CustomerProfiles")
1911		if err := awsRestjson1_serializeDocumentCustomerProfilesDestinationProperties(v.CustomerProfiles, ok); err != nil {
1912			return err
1913		}
1914	}
1915
1916	if v.EventBridge != nil {
1917		ok := object.Key("EventBridge")
1918		if err := awsRestjson1_serializeDocumentEventBridgeDestinationProperties(v.EventBridge, ok); err != nil {
1919			return err
1920		}
1921	}
1922
1923	if v.Honeycode != nil {
1924		ok := object.Key("Honeycode")
1925		if err := awsRestjson1_serializeDocumentHoneycodeDestinationProperties(v.Honeycode, ok); err != nil {
1926			return err
1927		}
1928	}
1929
1930	if v.LookoutMetrics != nil {
1931		ok := object.Key("LookoutMetrics")
1932		if err := awsRestjson1_serializeDocumentLookoutMetricsDestinationProperties(v.LookoutMetrics, ok); err != nil {
1933			return err
1934		}
1935	}
1936
1937	if v.Redshift != nil {
1938		ok := object.Key("Redshift")
1939		if err := awsRestjson1_serializeDocumentRedshiftDestinationProperties(v.Redshift, ok); err != nil {
1940			return err
1941		}
1942	}
1943
1944	if v.S3 != nil {
1945		ok := object.Key("S3")
1946		if err := awsRestjson1_serializeDocumentS3DestinationProperties(v.S3, ok); err != nil {
1947			return err
1948		}
1949	}
1950
1951	if v.Salesforce != nil {
1952		ok := object.Key("Salesforce")
1953		if err := awsRestjson1_serializeDocumentSalesforceDestinationProperties(v.Salesforce, ok); err != nil {
1954			return err
1955		}
1956	}
1957
1958	if v.Snowflake != nil {
1959		ok := object.Key("Snowflake")
1960		if err := awsRestjson1_serializeDocumentSnowflakeDestinationProperties(v.Snowflake, ok); err != nil {
1961			return err
1962		}
1963	}
1964
1965	if v.Upsolver != nil {
1966		ok := object.Key("Upsolver")
1967		if err := awsRestjson1_serializeDocumentUpsolverDestinationProperties(v.Upsolver, ok); err != nil {
1968			return err
1969		}
1970	}
1971
1972	if v.Zendesk != nil {
1973		ok := object.Key("Zendesk")
1974		if err := awsRestjson1_serializeDocumentZendeskDestinationProperties(v.Zendesk, ok); err != nil {
1975			return err
1976		}
1977	}
1978
1979	return nil
1980}
1981
1982func awsRestjson1_serializeDocumentDestinationFlowConfig(v *types.DestinationFlowConfig, value smithyjson.Value) error {
1983	object := value.Object()
1984	defer object.Close()
1985
1986	if v.ConnectorProfileName != nil {
1987		ok := object.Key("connectorProfileName")
1988		ok.String(*v.ConnectorProfileName)
1989	}
1990
1991	if len(v.ConnectorType) > 0 {
1992		ok := object.Key("connectorType")
1993		ok.String(string(v.ConnectorType))
1994	}
1995
1996	if v.DestinationConnectorProperties != nil {
1997		ok := object.Key("destinationConnectorProperties")
1998		if err := awsRestjson1_serializeDocumentDestinationConnectorProperties(v.DestinationConnectorProperties, ok); err != nil {
1999			return err
2000		}
2001	}
2002
2003	return nil
2004}
2005
2006func awsRestjson1_serializeDocumentDestinationFlowConfigList(v []types.DestinationFlowConfig, value smithyjson.Value) error {
2007	array := value.Array()
2008	defer array.Close()
2009
2010	for i := range v {
2011		av := array.Value()
2012		if err := awsRestjson1_serializeDocumentDestinationFlowConfig(&v[i], av); err != nil {
2013			return err
2014		}
2015	}
2016	return nil
2017}
2018
2019func awsRestjson1_serializeDocumentDynatraceConnectorProfileCredentials(v *types.DynatraceConnectorProfileCredentials, value smithyjson.Value) error {
2020	object := value.Object()
2021	defer object.Close()
2022
2023	if v.ApiToken != nil {
2024		ok := object.Key("apiToken")
2025		ok.String(*v.ApiToken)
2026	}
2027
2028	return nil
2029}
2030
2031func awsRestjson1_serializeDocumentDynatraceConnectorProfileProperties(v *types.DynatraceConnectorProfileProperties, value smithyjson.Value) error {
2032	object := value.Object()
2033	defer object.Close()
2034
2035	if v.InstanceUrl != nil {
2036		ok := object.Key("instanceUrl")
2037		ok.String(*v.InstanceUrl)
2038	}
2039
2040	return nil
2041}
2042
2043func awsRestjson1_serializeDocumentDynatraceSourceProperties(v *types.DynatraceSourceProperties, value smithyjson.Value) error {
2044	object := value.Object()
2045	defer object.Close()
2046
2047	if v.Object != nil {
2048		ok := object.Key("object")
2049		ok.String(*v.Object)
2050	}
2051
2052	return nil
2053}
2054
2055func awsRestjson1_serializeDocumentErrorHandlingConfig(v *types.ErrorHandlingConfig, value smithyjson.Value) error {
2056	object := value.Object()
2057	defer object.Close()
2058
2059	if v.BucketName != nil {
2060		ok := object.Key("bucketName")
2061		ok.String(*v.BucketName)
2062	}
2063
2064	if v.BucketPrefix != nil {
2065		ok := object.Key("bucketPrefix")
2066		ok.String(*v.BucketPrefix)
2067	}
2068
2069	if v.FailOnFirstDestinationError {
2070		ok := object.Key("failOnFirstDestinationError")
2071		ok.Boolean(v.FailOnFirstDestinationError)
2072	}
2073
2074	return nil
2075}
2076
2077func awsRestjson1_serializeDocumentEventBridgeDestinationProperties(v *types.EventBridgeDestinationProperties, value smithyjson.Value) error {
2078	object := value.Object()
2079	defer object.Close()
2080
2081	if v.ErrorHandlingConfig != nil {
2082		ok := object.Key("errorHandlingConfig")
2083		if err := awsRestjson1_serializeDocumentErrorHandlingConfig(v.ErrorHandlingConfig, ok); err != nil {
2084			return err
2085		}
2086	}
2087
2088	if v.Object != nil {
2089		ok := object.Key("object")
2090		ok.String(*v.Object)
2091	}
2092
2093	return nil
2094}
2095
2096func awsRestjson1_serializeDocumentGoogleAnalyticsConnectorProfileCredentials(v *types.GoogleAnalyticsConnectorProfileCredentials, value smithyjson.Value) error {
2097	object := value.Object()
2098	defer object.Close()
2099
2100	if v.AccessToken != nil {
2101		ok := object.Key("accessToken")
2102		ok.String(*v.AccessToken)
2103	}
2104
2105	if v.ClientId != nil {
2106		ok := object.Key("clientId")
2107		ok.String(*v.ClientId)
2108	}
2109
2110	if v.ClientSecret != nil {
2111		ok := object.Key("clientSecret")
2112		ok.String(*v.ClientSecret)
2113	}
2114
2115	if v.OAuthRequest != nil {
2116		ok := object.Key("oAuthRequest")
2117		if err := awsRestjson1_serializeDocumentConnectorOAuthRequest(v.OAuthRequest, ok); err != nil {
2118			return err
2119		}
2120	}
2121
2122	if v.RefreshToken != nil {
2123		ok := object.Key("refreshToken")
2124		ok.String(*v.RefreshToken)
2125	}
2126
2127	return nil
2128}
2129
2130func awsRestjson1_serializeDocumentGoogleAnalyticsConnectorProfileProperties(v *types.GoogleAnalyticsConnectorProfileProperties, value smithyjson.Value) error {
2131	object := value.Object()
2132	defer object.Close()
2133
2134	return nil
2135}
2136
2137func awsRestjson1_serializeDocumentGoogleAnalyticsSourceProperties(v *types.GoogleAnalyticsSourceProperties, value smithyjson.Value) error {
2138	object := value.Object()
2139	defer object.Close()
2140
2141	if v.Object != nil {
2142		ok := object.Key("object")
2143		ok.String(*v.Object)
2144	}
2145
2146	return nil
2147}
2148
2149func awsRestjson1_serializeDocumentHoneycodeConnectorProfileCredentials(v *types.HoneycodeConnectorProfileCredentials, value smithyjson.Value) error {
2150	object := value.Object()
2151	defer object.Close()
2152
2153	if v.AccessToken != nil {
2154		ok := object.Key("accessToken")
2155		ok.String(*v.AccessToken)
2156	}
2157
2158	if v.OAuthRequest != nil {
2159		ok := object.Key("oAuthRequest")
2160		if err := awsRestjson1_serializeDocumentConnectorOAuthRequest(v.OAuthRequest, ok); err != nil {
2161			return err
2162		}
2163	}
2164
2165	if v.RefreshToken != nil {
2166		ok := object.Key("refreshToken")
2167		ok.String(*v.RefreshToken)
2168	}
2169
2170	return nil
2171}
2172
2173func awsRestjson1_serializeDocumentHoneycodeConnectorProfileProperties(v *types.HoneycodeConnectorProfileProperties, value smithyjson.Value) error {
2174	object := value.Object()
2175	defer object.Close()
2176
2177	return nil
2178}
2179
2180func awsRestjson1_serializeDocumentHoneycodeDestinationProperties(v *types.HoneycodeDestinationProperties, value smithyjson.Value) error {
2181	object := value.Object()
2182	defer object.Close()
2183
2184	if v.ErrorHandlingConfig != nil {
2185		ok := object.Key("errorHandlingConfig")
2186		if err := awsRestjson1_serializeDocumentErrorHandlingConfig(v.ErrorHandlingConfig, ok); err != nil {
2187			return err
2188		}
2189	}
2190
2191	if v.Object != nil {
2192		ok := object.Key("object")
2193		ok.String(*v.Object)
2194	}
2195
2196	return nil
2197}
2198
2199func awsRestjson1_serializeDocumentIdFieldNameList(v []string, value smithyjson.Value) error {
2200	array := value.Array()
2201	defer array.Close()
2202
2203	for i := range v {
2204		av := array.Value()
2205		av.String(v[i])
2206	}
2207	return nil
2208}
2209
2210func awsRestjson1_serializeDocumentIncrementalPullConfig(v *types.IncrementalPullConfig, value smithyjson.Value) error {
2211	object := value.Object()
2212	defer object.Close()
2213
2214	if v.DatetimeTypeFieldName != nil {
2215		ok := object.Key("datetimeTypeFieldName")
2216		ok.String(*v.DatetimeTypeFieldName)
2217	}
2218
2219	return nil
2220}
2221
2222func awsRestjson1_serializeDocumentInforNexusConnectorProfileCredentials(v *types.InforNexusConnectorProfileCredentials, value smithyjson.Value) error {
2223	object := value.Object()
2224	defer object.Close()
2225
2226	if v.AccessKeyId != nil {
2227		ok := object.Key("accessKeyId")
2228		ok.String(*v.AccessKeyId)
2229	}
2230
2231	if v.Datakey != nil {
2232		ok := object.Key("datakey")
2233		ok.String(*v.Datakey)
2234	}
2235
2236	if v.SecretAccessKey != nil {
2237		ok := object.Key("secretAccessKey")
2238		ok.String(*v.SecretAccessKey)
2239	}
2240
2241	if v.UserId != nil {
2242		ok := object.Key("userId")
2243		ok.String(*v.UserId)
2244	}
2245
2246	return nil
2247}
2248
2249func awsRestjson1_serializeDocumentInforNexusConnectorProfileProperties(v *types.InforNexusConnectorProfileProperties, value smithyjson.Value) error {
2250	object := value.Object()
2251	defer object.Close()
2252
2253	if v.InstanceUrl != nil {
2254		ok := object.Key("instanceUrl")
2255		ok.String(*v.InstanceUrl)
2256	}
2257
2258	return nil
2259}
2260
2261func awsRestjson1_serializeDocumentInforNexusSourceProperties(v *types.InforNexusSourceProperties, value smithyjson.Value) error {
2262	object := value.Object()
2263	defer object.Close()
2264
2265	if v.Object != nil {
2266		ok := object.Key("object")
2267		ok.String(*v.Object)
2268	}
2269
2270	return nil
2271}
2272
2273func awsRestjson1_serializeDocumentLookoutMetricsDestinationProperties(v *types.LookoutMetricsDestinationProperties, value smithyjson.Value) error {
2274	object := value.Object()
2275	defer object.Close()
2276
2277	return nil
2278}
2279
2280func awsRestjson1_serializeDocumentMarketoConnectorProfileCredentials(v *types.MarketoConnectorProfileCredentials, value smithyjson.Value) error {
2281	object := value.Object()
2282	defer object.Close()
2283
2284	if v.AccessToken != nil {
2285		ok := object.Key("accessToken")
2286		ok.String(*v.AccessToken)
2287	}
2288
2289	if v.ClientId != nil {
2290		ok := object.Key("clientId")
2291		ok.String(*v.ClientId)
2292	}
2293
2294	if v.ClientSecret != nil {
2295		ok := object.Key("clientSecret")
2296		ok.String(*v.ClientSecret)
2297	}
2298
2299	if v.OAuthRequest != nil {
2300		ok := object.Key("oAuthRequest")
2301		if err := awsRestjson1_serializeDocumentConnectorOAuthRequest(v.OAuthRequest, ok); err != nil {
2302			return err
2303		}
2304	}
2305
2306	return nil
2307}
2308
2309func awsRestjson1_serializeDocumentMarketoConnectorProfileProperties(v *types.MarketoConnectorProfileProperties, value smithyjson.Value) error {
2310	object := value.Object()
2311	defer object.Close()
2312
2313	if v.InstanceUrl != nil {
2314		ok := object.Key("instanceUrl")
2315		ok.String(*v.InstanceUrl)
2316	}
2317
2318	return nil
2319}
2320
2321func awsRestjson1_serializeDocumentMarketoSourceProperties(v *types.MarketoSourceProperties, value smithyjson.Value) error {
2322	object := value.Object()
2323	defer object.Close()
2324
2325	if v.Object != nil {
2326		ok := object.Key("object")
2327		ok.String(*v.Object)
2328	}
2329
2330	return nil
2331}
2332
2333func awsRestjson1_serializeDocumentPrefixConfig(v *types.PrefixConfig, value smithyjson.Value) error {
2334	object := value.Object()
2335	defer object.Close()
2336
2337	if len(v.PrefixFormat) > 0 {
2338		ok := object.Key("prefixFormat")
2339		ok.String(string(v.PrefixFormat))
2340	}
2341
2342	if len(v.PrefixType) > 0 {
2343		ok := object.Key("prefixType")
2344		ok.String(string(v.PrefixType))
2345	}
2346
2347	return nil
2348}
2349
2350func awsRestjson1_serializeDocumentRedshiftConnectorProfileCredentials(v *types.RedshiftConnectorProfileCredentials, value smithyjson.Value) error {
2351	object := value.Object()
2352	defer object.Close()
2353
2354	if v.Password != nil {
2355		ok := object.Key("password")
2356		ok.String(*v.Password)
2357	}
2358
2359	if v.Username != nil {
2360		ok := object.Key("username")
2361		ok.String(*v.Username)
2362	}
2363
2364	return nil
2365}
2366
2367func awsRestjson1_serializeDocumentRedshiftConnectorProfileProperties(v *types.RedshiftConnectorProfileProperties, value smithyjson.Value) error {
2368	object := value.Object()
2369	defer object.Close()
2370
2371	if v.BucketName != nil {
2372		ok := object.Key("bucketName")
2373		ok.String(*v.BucketName)
2374	}
2375
2376	if v.BucketPrefix != nil {
2377		ok := object.Key("bucketPrefix")
2378		ok.String(*v.BucketPrefix)
2379	}
2380
2381	if v.DatabaseUrl != nil {
2382		ok := object.Key("databaseUrl")
2383		ok.String(*v.DatabaseUrl)
2384	}
2385
2386	if v.RoleArn != nil {
2387		ok := object.Key("roleArn")
2388		ok.String(*v.RoleArn)
2389	}
2390
2391	return nil
2392}
2393
2394func awsRestjson1_serializeDocumentRedshiftDestinationProperties(v *types.RedshiftDestinationProperties, value smithyjson.Value) error {
2395	object := value.Object()
2396	defer object.Close()
2397
2398	if v.BucketPrefix != nil {
2399		ok := object.Key("bucketPrefix")
2400		ok.String(*v.BucketPrefix)
2401	}
2402
2403	if v.ErrorHandlingConfig != nil {
2404		ok := object.Key("errorHandlingConfig")
2405		if err := awsRestjson1_serializeDocumentErrorHandlingConfig(v.ErrorHandlingConfig, ok); err != nil {
2406			return err
2407		}
2408	}
2409
2410	if v.IntermediateBucketName != nil {
2411		ok := object.Key("intermediateBucketName")
2412		ok.String(*v.IntermediateBucketName)
2413	}
2414
2415	if v.Object != nil {
2416		ok := object.Key("object")
2417		ok.String(*v.Object)
2418	}
2419
2420	return nil
2421}
2422
2423func awsRestjson1_serializeDocumentS3DestinationProperties(v *types.S3DestinationProperties, value smithyjson.Value) error {
2424	object := value.Object()
2425	defer object.Close()
2426
2427	if v.BucketName != nil {
2428		ok := object.Key("bucketName")
2429		ok.String(*v.BucketName)
2430	}
2431
2432	if v.BucketPrefix != nil {
2433		ok := object.Key("bucketPrefix")
2434		ok.String(*v.BucketPrefix)
2435	}
2436
2437	if v.S3OutputFormatConfig != nil {
2438		ok := object.Key("s3OutputFormatConfig")
2439		if err := awsRestjson1_serializeDocumentS3OutputFormatConfig(v.S3OutputFormatConfig, ok); err != nil {
2440			return err
2441		}
2442	}
2443
2444	return nil
2445}
2446
2447func awsRestjson1_serializeDocumentS3OutputFormatConfig(v *types.S3OutputFormatConfig, value smithyjson.Value) error {
2448	object := value.Object()
2449	defer object.Close()
2450
2451	if v.AggregationConfig != nil {
2452		ok := object.Key("aggregationConfig")
2453		if err := awsRestjson1_serializeDocumentAggregationConfig(v.AggregationConfig, ok); err != nil {
2454			return err
2455		}
2456	}
2457
2458	if len(v.FileType) > 0 {
2459		ok := object.Key("fileType")
2460		ok.String(string(v.FileType))
2461	}
2462
2463	if v.PrefixConfig != nil {
2464		ok := object.Key("prefixConfig")
2465		if err := awsRestjson1_serializeDocumentPrefixConfig(v.PrefixConfig, ok); err != nil {
2466			return err
2467		}
2468	}
2469
2470	return nil
2471}
2472
2473func awsRestjson1_serializeDocumentS3SourceProperties(v *types.S3SourceProperties, value smithyjson.Value) error {
2474	object := value.Object()
2475	defer object.Close()
2476
2477	if v.BucketName != nil {
2478		ok := object.Key("bucketName")
2479		ok.String(*v.BucketName)
2480	}
2481
2482	if v.BucketPrefix != nil {
2483		ok := object.Key("bucketPrefix")
2484		ok.String(*v.BucketPrefix)
2485	}
2486
2487	return nil
2488}
2489
2490func awsRestjson1_serializeDocumentSalesforceConnectorProfileCredentials(v *types.SalesforceConnectorProfileCredentials, value smithyjson.Value) error {
2491	object := value.Object()
2492	defer object.Close()
2493
2494	if v.AccessToken != nil {
2495		ok := object.Key("accessToken")
2496		ok.String(*v.AccessToken)
2497	}
2498
2499	if v.ClientCredentialsArn != nil {
2500		ok := object.Key("clientCredentialsArn")
2501		ok.String(*v.ClientCredentialsArn)
2502	}
2503
2504	if v.OAuthRequest != nil {
2505		ok := object.Key("oAuthRequest")
2506		if err := awsRestjson1_serializeDocumentConnectorOAuthRequest(v.OAuthRequest, ok); err != nil {
2507			return err
2508		}
2509	}
2510
2511	if v.RefreshToken != nil {
2512		ok := object.Key("refreshToken")
2513		ok.String(*v.RefreshToken)
2514	}
2515
2516	return nil
2517}
2518
2519func awsRestjson1_serializeDocumentSalesforceConnectorProfileProperties(v *types.SalesforceConnectorProfileProperties, value smithyjson.Value) error {
2520	object := value.Object()
2521	defer object.Close()
2522
2523	if v.InstanceUrl != nil {
2524		ok := object.Key("instanceUrl")
2525		ok.String(*v.InstanceUrl)
2526	}
2527
2528	if v.IsSandboxEnvironment {
2529		ok := object.Key("isSandboxEnvironment")
2530		ok.Boolean(v.IsSandboxEnvironment)
2531	}
2532
2533	return nil
2534}
2535
2536func awsRestjson1_serializeDocumentSalesforceDestinationProperties(v *types.SalesforceDestinationProperties, value smithyjson.Value) error {
2537	object := value.Object()
2538	defer object.Close()
2539
2540	if v.ErrorHandlingConfig != nil {
2541		ok := object.Key("errorHandlingConfig")
2542		if err := awsRestjson1_serializeDocumentErrorHandlingConfig(v.ErrorHandlingConfig, ok); err != nil {
2543			return err
2544		}
2545	}
2546
2547	if v.IdFieldNames != nil {
2548		ok := object.Key("idFieldNames")
2549		if err := awsRestjson1_serializeDocumentIdFieldNameList(v.IdFieldNames, ok); err != nil {
2550			return err
2551		}
2552	}
2553
2554	if v.Object != nil {
2555		ok := object.Key("object")
2556		ok.String(*v.Object)
2557	}
2558
2559	if len(v.WriteOperationType) > 0 {
2560		ok := object.Key("writeOperationType")
2561		ok.String(string(v.WriteOperationType))
2562	}
2563
2564	return nil
2565}
2566
2567func awsRestjson1_serializeDocumentSalesforceSourceProperties(v *types.SalesforceSourceProperties, value smithyjson.Value) error {
2568	object := value.Object()
2569	defer object.Close()
2570
2571	if v.EnableDynamicFieldUpdate {
2572		ok := object.Key("enableDynamicFieldUpdate")
2573		ok.Boolean(v.EnableDynamicFieldUpdate)
2574	}
2575
2576	if v.IncludeDeletedRecords {
2577		ok := object.Key("includeDeletedRecords")
2578		ok.Boolean(v.IncludeDeletedRecords)
2579	}
2580
2581	if v.Object != nil {
2582		ok := object.Key("object")
2583		ok.String(*v.Object)
2584	}
2585
2586	return nil
2587}
2588
2589func awsRestjson1_serializeDocumentScheduledTriggerProperties(v *types.ScheduledTriggerProperties, value smithyjson.Value) error {
2590	object := value.Object()
2591	defer object.Close()
2592
2593	if len(v.DataPullMode) > 0 {
2594		ok := object.Key("dataPullMode")
2595		ok.String(string(v.DataPullMode))
2596	}
2597
2598	if v.FirstExecutionFrom != nil {
2599		ok := object.Key("firstExecutionFrom")
2600		ok.Double(smithytime.FormatEpochSeconds(*v.FirstExecutionFrom))
2601	}
2602
2603	if v.ScheduleEndTime != nil {
2604		ok := object.Key("scheduleEndTime")
2605		ok.Double(smithytime.FormatEpochSeconds(*v.ScheduleEndTime))
2606	}
2607
2608	if v.ScheduleExpression != nil {
2609		ok := object.Key("scheduleExpression")
2610		ok.String(*v.ScheduleExpression)
2611	}
2612
2613	if v.ScheduleOffset != 0 {
2614		ok := object.Key("scheduleOffset")
2615		ok.Long(v.ScheduleOffset)
2616	}
2617
2618	if v.ScheduleStartTime != nil {
2619		ok := object.Key("scheduleStartTime")
2620		ok.Double(smithytime.FormatEpochSeconds(*v.ScheduleStartTime))
2621	}
2622
2623	if v.Timezone != nil {
2624		ok := object.Key("timezone")
2625		ok.String(*v.Timezone)
2626	}
2627
2628	return nil
2629}
2630
2631func awsRestjson1_serializeDocumentServiceNowConnectorProfileCredentials(v *types.ServiceNowConnectorProfileCredentials, value smithyjson.Value) error {
2632	object := value.Object()
2633	defer object.Close()
2634
2635	if v.Password != nil {
2636		ok := object.Key("password")
2637		ok.String(*v.Password)
2638	}
2639
2640	if v.Username != nil {
2641		ok := object.Key("username")
2642		ok.String(*v.Username)
2643	}
2644
2645	return nil
2646}
2647
2648func awsRestjson1_serializeDocumentServiceNowConnectorProfileProperties(v *types.ServiceNowConnectorProfileProperties, value smithyjson.Value) error {
2649	object := value.Object()
2650	defer object.Close()
2651
2652	if v.InstanceUrl != nil {
2653		ok := object.Key("instanceUrl")
2654		ok.String(*v.InstanceUrl)
2655	}
2656
2657	return nil
2658}
2659
2660func awsRestjson1_serializeDocumentServiceNowSourceProperties(v *types.ServiceNowSourceProperties, value smithyjson.Value) error {
2661	object := value.Object()
2662	defer object.Close()
2663
2664	if v.Object != nil {
2665		ok := object.Key("object")
2666		ok.String(*v.Object)
2667	}
2668
2669	return nil
2670}
2671
2672func awsRestjson1_serializeDocumentSingularConnectorProfileCredentials(v *types.SingularConnectorProfileCredentials, value smithyjson.Value) error {
2673	object := value.Object()
2674	defer object.Close()
2675
2676	if v.ApiKey != nil {
2677		ok := object.Key("apiKey")
2678		ok.String(*v.ApiKey)
2679	}
2680
2681	return nil
2682}
2683
2684func awsRestjson1_serializeDocumentSingularConnectorProfileProperties(v *types.SingularConnectorProfileProperties, value smithyjson.Value) error {
2685	object := value.Object()
2686	defer object.Close()
2687
2688	return nil
2689}
2690
2691func awsRestjson1_serializeDocumentSingularSourceProperties(v *types.SingularSourceProperties, value smithyjson.Value) error {
2692	object := value.Object()
2693	defer object.Close()
2694
2695	if v.Object != nil {
2696		ok := object.Key("object")
2697		ok.String(*v.Object)
2698	}
2699
2700	return nil
2701}
2702
2703func awsRestjson1_serializeDocumentSlackConnectorProfileCredentials(v *types.SlackConnectorProfileCredentials, value smithyjson.Value) error {
2704	object := value.Object()
2705	defer object.Close()
2706
2707	if v.AccessToken != nil {
2708		ok := object.Key("accessToken")
2709		ok.String(*v.AccessToken)
2710	}
2711
2712	if v.ClientId != nil {
2713		ok := object.Key("clientId")
2714		ok.String(*v.ClientId)
2715	}
2716
2717	if v.ClientSecret != nil {
2718		ok := object.Key("clientSecret")
2719		ok.String(*v.ClientSecret)
2720	}
2721
2722	if v.OAuthRequest != nil {
2723		ok := object.Key("oAuthRequest")
2724		if err := awsRestjson1_serializeDocumentConnectorOAuthRequest(v.OAuthRequest, ok); err != nil {
2725			return err
2726		}
2727	}
2728
2729	return nil
2730}
2731
2732func awsRestjson1_serializeDocumentSlackConnectorProfileProperties(v *types.SlackConnectorProfileProperties, value smithyjson.Value) error {
2733	object := value.Object()
2734	defer object.Close()
2735
2736	if v.InstanceUrl != nil {
2737		ok := object.Key("instanceUrl")
2738		ok.String(*v.InstanceUrl)
2739	}
2740
2741	return nil
2742}
2743
2744func awsRestjson1_serializeDocumentSlackSourceProperties(v *types.SlackSourceProperties, value smithyjson.Value) error {
2745	object := value.Object()
2746	defer object.Close()
2747
2748	if v.Object != nil {
2749		ok := object.Key("object")
2750		ok.String(*v.Object)
2751	}
2752
2753	return nil
2754}
2755
2756func awsRestjson1_serializeDocumentSnowflakeConnectorProfileCredentials(v *types.SnowflakeConnectorProfileCredentials, value smithyjson.Value) error {
2757	object := value.Object()
2758	defer object.Close()
2759
2760	if v.Password != nil {
2761		ok := object.Key("password")
2762		ok.String(*v.Password)
2763	}
2764
2765	if v.Username != nil {
2766		ok := object.Key("username")
2767		ok.String(*v.Username)
2768	}
2769
2770	return nil
2771}
2772
2773func awsRestjson1_serializeDocumentSnowflakeConnectorProfileProperties(v *types.SnowflakeConnectorProfileProperties, value smithyjson.Value) error {
2774	object := value.Object()
2775	defer object.Close()
2776
2777	if v.AccountName != nil {
2778		ok := object.Key("accountName")
2779		ok.String(*v.AccountName)
2780	}
2781
2782	if v.BucketName != nil {
2783		ok := object.Key("bucketName")
2784		ok.String(*v.BucketName)
2785	}
2786
2787	if v.BucketPrefix != nil {
2788		ok := object.Key("bucketPrefix")
2789		ok.String(*v.BucketPrefix)
2790	}
2791
2792	if v.PrivateLinkServiceName != nil {
2793		ok := object.Key("privateLinkServiceName")
2794		ok.String(*v.PrivateLinkServiceName)
2795	}
2796
2797	if v.Region != nil {
2798		ok := object.Key("region")
2799		ok.String(*v.Region)
2800	}
2801
2802	if v.Stage != nil {
2803		ok := object.Key("stage")
2804		ok.String(*v.Stage)
2805	}
2806
2807	if v.Warehouse != nil {
2808		ok := object.Key("warehouse")
2809		ok.String(*v.Warehouse)
2810	}
2811
2812	return nil
2813}
2814
2815func awsRestjson1_serializeDocumentSnowflakeDestinationProperties(v *types.SnowflakeDestinationProperties, value smithyjson.Value) error {
2816	object := value.Object()
2817	defer object.Close()
2818
2819	if v.BucketPrefix != nil {
2820		ok := object.Key("bucketPrefix")
2821		ok.String(*v.BucketPrefix)
2822	}
2823
2824	if v.ErrorHandlingConfig != nil {
2825		ok := object.Key("errorHandlingConfig")
2826		if err := awsRestjson1_serializeDocumentErrorHandlingConfig(v.ErrorHandlingConfig, ok); err != nil {
2827			return err
2828		}
2829	}
2830
2831	if v.IntermediateBucketName != nil {
2832		ok := object.Key("intermediateBucketName")
2833		ok.String(*v.IntermediateBucketName)
2834	}
2835
2836	if v.Object != nil {
2837		ok := object.Key("object")
2838		ok.String(*v.Object)
2839	}
2840
2841	return nil
2842}
2843
2844func awsRestjson1_serializeDocumentSourceConnectorProperties(v *types.SourceConnectorProperties, value smithyjson.Value) error {
2845	object := value.Object()
2846	defer object.Close()
2847
2848	if v.Amplitude != nil {
2849		ok := object.Key("Amplitude")
2850		if err := awsRestjson1_serializeDocumentAmplitudeSourceProperties(v.Amplitude, ok); err != nil {
2851			return err
2852		}
2853	}
2854
2855	if v.Datadog != nil {
2856		ok := object.Key("Datadog")
2857		if err := awsRestjson1_serializeDocumentDatadogSourceProperties(v.Datadog, ok); err != nil {
2858			return err
2859		}
2860	}
2861
2862	if v.Dynatrace != nil {
2863		ok := object.Key("Dynatrace")
2864		if err := awsRestjson1_serializeDocumentDynatraceSourceProperties(v.Dynatrace, ok); err != nil {
2865			return err
2866		}
2867	}
2868
2869	if v.GoogleAnalytics != nil {
2870		ok := object.Key("GoogleAnalytics")
2871		if err := awsRestjson1_serializeDocumentGoogleAnalyticsSourceProperties(v.GoogleAnalytics, ok); err != nil {
2872			return err
2873		}
2874	}
2875
2876	if v.InforNexus != nil {
2877		ok := object.Key("InforNexus")
2878		if err := awsRestjson1_serializeDocumentInforNexusSourceProperties(v.InforNexus, ok); err != nil {
2879			return err
2880		}
2881	}
2882
2883	if v.Marketo != nil {
2884		ok := object.Key("Marketo")
2885		if err := awsRestjson1_serializeDocumentMarketoSourceProperties(v.Marketo, ok); err != nil {
2886			return err
2887		}
2888	}
2889
2890	if v.S3 != nil {
2891		ok := object.Key("S3")
2892		if err := awsRestjson1_serializeDocumentS3SourceProperties(v.S3, ok); err != nil {
2893			return err
2894		}
2895	}
2896
2897	if v.Salesforce != nil {
2898		ok := object.Key("Salesforce")
2899		if err := awsRestjson1_serializeDocumentSalesforceSourceProperties(v.Salesforce, ok); err != nil {
2900			return err
2901		}
2902	}
2903
2904	if v.ServiceNow != nil {
2905		ok := object.Key("ServiceNow")
2906		if err := awsRestjson1_serializeDocumentServiceNowSourceProperties(v.ServiceNow, ok); err != nil {
2907			return err
2908		}
2909	}
2910
2911	if v.Singular != nil {
2912		ok := object.Key("Singular")
2913		if err := awsRestjson1_serializeDocumentSingularSourceProperties(v.Singular, ok); err != nil {
2914			return err
2915		}
2916	}
2917
2918	if v.Slack != nil {
2919		ok := object.Key("Slack")
2920		if err := awsRestjson1_serializeDocumentSlackSourceProperties(v.Slack, ok); err != nil {
2921			return err
2922		}
2923	}
2924
2925	if v.Trendmicro != nil {
2926		ok := object.Key("Trendmicro")
2927		if err := awsRestjson1_serializeDocumentTrendmicroSourceProperties(v.Trendmicro, ok); err != nil {
2928			return err
2929		}
2930	}
2931
2932	if v.Veeva != nil {
2933		ok := object.Key("Veeva")
2934		if err := awsRestjson1_serializeDocumentVeevaSourceProperties(v.Veeva, ok); err != nil {
2935			return err
2936		}
2937	}
2938
2939	if v.Zendesk != nil {
2940		ok := object.Key("Zendesk")
2941		if err := awsRestjson1_serializeDocumentZendeskSourceProperties(v.Zendesk, ok); err != nil {
2942			return err
2943		}
2944	}
2945
2946	return nil
2947}
2948
2949func awsRestjson1_serializeDocumentSourceFields(v []string, value smithyjson.Value) error {
2950	array := value.Array()
2951	defer array.Close()
2952
2953	for i := range v {
2954		av := array.Value()
2955		av.String(v[i])
2956	}
2957	return nil
2958}
2959
2960func awsRestjson1_serializeDocumentSourceFlowConfig(v *types.SourceFlowConfig, value smithyjson.Value) error {
2961	object := value.Object()
2962	defer object.Close()
2963
2964	if v.ConnectorProfileName != nil {
2965		ok := object.Key("connectorProfileName")
2966		ok.String(*v.ConnectorProfileName)
2967	}
2968
2969	if len(v.ConnectorType) > 0 {
2970		ok := object.Key("connectorType")
2971		ok.String(string(v.ConnectorType))
2972	}
2973
2974	if v.IncrementalPullConfig != nil {
2975		ok := object.Key("incrementalPullConfig")
2976		if err := awsRestjson1_serializeDocumentIncrementalPullConfig(v.IncrementalPullConfig, ok); err != nil {
2977			return err
2978		}
2979	}
2980
2981	if v.SourceConnectorProperties != nil {
2982		ok := object.Key("sourceConnectorProperties")
2983		if err := awsRestjson1_serializeDocumentSourceConnectorProperties(v.SourceConnectorProperties, ok); err != nil {
2984			return err
2985		}
2986	}
2987
2988	return nil
2989}
2990
2991func awsRestjson1_serializeDocumentTagMap(v map[string]string, value smithyjson.Value) error {
2992	object := value.Object()
2993	defer object.Close()
2994
2995	for key := range v {
2996		om := object.Key(key)
2997		om.String(v[key])
2998	}
2999	return nil
3000}
3001
3002func awsRestjson1_serializeDocumentTask(v *types.Task, value smithyjson.Value) error {
3003	object := value.Object()
3004	defer object.Close()
3005
3006	if v.ConnectorOperator != nil {
3007		ok := object.Key("connectorOperator")
3008		if err := awsRestjson1_serializeDocumentConnectorOperator(v.ConnectorOperator, ok); err != nil {
3009			return err
3010		}
3011	}
3012
3013	if v.DestinationField != nil {
3014		ok := object.Key("destinationField")
3015		ok.String(*v.DestinationField)
3016	}
3017
3018	if v.SourceFields != nil {
3019		ok := object.Key("sourceFields")
3020		if err := awsRestjson1_serializeDocumentSourceFields(v.SourceFields, ok); err != nil {
3021			return err
3022		}
3023	}
3024
3025	if v.TaskProperties != nil {
3026		ok := object.Key("taskProperties")
3027		if err := awsRestjson1_serializeDocumentTaskPropertiesMap(v.TaskProperties, ok); err != nil {
3028			return err
3029		}
3030	}
3031
3032	if len(v.TaskType) > 0 {
3033		ok := object.Key("taskType")
3034		ok.String(string(v.TaskType))
3035	}
3036
3037	return nil
3038}
3039
3040func awsRestjson1_serializeDocumentTaskPropertiesMap(v map[string]string, value smithyjson.Value) error {
3041	object := value.Object()
3042	defer object.Close()
3043
3044	for key := range v {
3045		om := object.Key(key)
3046		om.String(v[key])
3047	}
3048	return nil
3049}
3050
3051func awsRestjson1_serializeDocumentTasks(v []types.Task, value smithyjson.Value) error {
3052	array := value.Array()
3053	defer array.Close()
3054
3055	for i := range v {
3056		av := array.Value()
3057		if err := awsRestjson1_serializeDocumentTask(&v[i], av); err != nil {
3058			return err
3059		}
3060	}
3061	return nil
3062}
3063
3064func awsRestjson1_serializeDocumentTrendmicroConnectorProfileCredentials(v *types.TrendmicroConnectorProfileCredentials, value smithyjson.Value) error {
3065	object := value.Object()
3066	defer object.Close()
3067
3068	if v.ApiSecretKey != nil {
3069		ok := object.Key("apiSecretKey")
3070		ok.String(*v.ApiSecretKey)
3071	}
3072
3073	return nil
3074}
3075
3076func awsRestjson1_serializeDocumentTrendmicroConnectorProfileProperties(v *types.TrendmicroConnectorProfileProperties, value smithyjson.Value) error {
3077	object := value.Object()
3078	defer object.Close()
3079
3080	return nil
3081}
3082
3083func awsRestjson1_serializeDocumentTrendmicroSourceProperties(v *types.TrendmicroSourceProperties, value smithyjson.Value) error {
3084	object := value.Object()
3085	defer object.Close()
3086
3087	if v.Object != nil {
3088		ok := object.Key("object")
3089		ok.String(*v.Object)
3090	}
3091
3092	return nil
3093}
3094
3095func awsRestjson1_serializeDocumentTriggerConfig(v *types.TriggerConfig, value smithyjson.Value) error {
3096	object := value.Object()
3097	defer object.Close()
3098
3099	if v.TriggerProperties != nil {
3100		ok := object.Key("triggerProperties")
3101		if err := awsRestjson1_serializeDocumentTriggerProperties(v.TriggerProperties, ok); err != nil {
3102			return err
3103		}
3104	}
3105
3106	if len(v.TriggerType) > 0 {
3107		ok := object.Key("triggerType")
3108		ok.String(string(v.TriggerType))
3109	}
3110
3111	return nil
3112}
3113
3114func awsRestjson1_serializeDocumentTriggerProperties(v *types.TriggerProperties, value smithyjson.Value) error {
3115	object := value.Object()
3116	defer object.Close()
3117
3118	if v.Scheduled != nil {
3119		ok := object.Key("Scheduled")
3120		if err := awsRestjson1_serializeDocumentScheduledTriggerProperties(v.Scheduled, ok); err != nil {
3121			return err
3122		}
3123	}
3124
3125	return nil
3126}
3127
3128func awsRestjson1_serializeDocumentUpsolverDestinationProperties(v *types.UpsolverDestinationProperties, value smithyjson.Value) error {
3129	object := value.Object()
3130	defer object.Close()
3131
3132	if v.BucketName != nil {
3133		ok := object.Key("bucketName")
3134		ok.String(*v.BucketName)
3135	}
3136
3137	if v.BucketPrefix != nil {
3138		ok := object.Key("bucketPrefix")
3139		ok.String(*v.BucketPrefix)
3140	}
3141
3142	if v.S3OutputFormatConfig != nil {
3143		ok := object.Key("s3OutputFormatConfig")
3144		if err := awsRestjson1_serializeDocumentUpsolverS3OutputFormatConfig(v.S3OutputFormatConfig, ok); err != nil {
3145			return err
3146		}
3147	}
3148
3149	return nil
3150}
3151
3152func awsRestjson1_serializeDocumentUpsolverS3OutputFormatConfig(v *types.UpsolverS3OutputFormatConfig, value smithyjson.Value) error {
3153	object := value.Object()
3154	defer object.Close()
3155
3156	if v.AggregationConfig != nil {
3157		ok := object.Key("aggregationConfig")
3158		if err := awsRestjson1_serializeDocumentAggregationConfig(v.AggregationConfig, ok); err != nil {
3159			return err
3160		}
3161	}
3162
3163	if len(v.FileType) > 0 {
3164		ok := object.Key("fileType")
3165		ok.String(string(v.FileType))
3166	}
3167
3168	if v.PrefixConfig != nil {
3169		ok := object.Key("prefixConfig")
3170		if err := awsRestjson1_serializeDocumentPrefixConfig(v.PrefixConfig, ok); err != nil {
3171			return err
3172		}
3173	}
3174
3175	return nil
3176}
3177
3178func awsRestjson1_serializeDocumentVeevaConnectorProfileCredentials(v *types.VeevaConnectorProfileCredentials, value smithyjson.Value) error {
3179	object := value.Object()
3180	defer object.Close()
3181
3182	if v.Password != nil {
3183		ok := object.Key("password")
3184		ok.String(*v.Password)
3185	}
3186
3187	if v.Username != nil {
3188		ok := object.Key("username")
3189		ok.String(*v.Username)
3190	}
3191
3192	return nil
3193}
3194
3195func awsRestjson1_serializeDocumentVeevaConnectorProfileProperties(v *types.VeevaConnectorProfileProperties, value smithyjson.Value) error {
3196	object := value.Object()
3197	defer object.Close()
3198
3199	if v.InstanceUrl != nil {
3200		ok := object.Key("instanceUrl")
3201		ok.String(*v.InstanceUrl)
3202	}
3203
3204	return nil
3205}
3206
3207func awsRestjson1_serializeDocumentVeevaSourceProperties(v *types.VeevaSourceProperties, value smithyjson.Value) error {
3208	object := value.Object()
3209	defer object.Close()
3210
3211	if v.Object != nil {
3212		ok := object.Key("object")
3213		ok.String(*v.Object)
3214	}
3215
3216	return nil
3217}
3218
3219func awsRestjson1_serializeDocumentZendeskConnectorProfileCredentials(v *types.ZendeskConnectorProfileCredentials, value smithyjson.Value) error {
3220	object := value.Object()
3221	defer object.Close()
3222
3223	if v.AccessToken != nil {
3224		ok := object.Key("accessToken")
3225		ok.String(*v.AccessToken)
3226	}
3227
3228	if v.ClientId != nil {
3229		ok := object.Key("clientId")
3230		ok.String(*v.ClientId)
3231	}
3232
3233	if v.ClientSecret != nil {
3234		ok := object.Key("clientSecret")
3235		ok.String(*v.ClientSecret)
3236	}
3237
3238	if v.OAuthRequest != nil {
3239		ok := object.Key("oAuthRequest")
3240		if err := awsRestjson1_serializeDocumentConnectorOAuthRequest(v.OAuthRequest, ok); err != nil {
3241			return err
3242		}
3243	}
3244
3245	return nil
3246}
3247
3248func awsRestjson1_serializeDocumentZendeskConnectorProfileProperties(v *types.ZendeskConnectorProfileProperties, value smithyjson.Value) error {
3249	object := value.Object()
3250	defer object.Close()
3251
3252	if v.InstanceUrl != nil {
3253		ok := object.Key("instanceUrl")
3254		ok.String(*v.InstanceUrl)
3255	}
3256
3257	return nil
3258}
3259
3260func awsRestjson1_serializeDocumentZendeskDestinationProperties(v *types.ZendeskDestinationProperties, value smithyjson.Value) error {
3261	object := value.Object()
3262	defer object.Close()
3263
3264	if v.ErrorHandlingConfig != nil {
3265		ok := object.Key("errorHandlingConfig")
3266		if err := awsRestjson1_serializeDocumentErrorHandlingConfig(v.ErrorHandlingConfig, ok); err != nil {
3267			return err
3268		}
3269	}
3270
3271	if v.IdFieldNames != nil {
3272		ok := object.Key("idFieldNames")
3273		if err := awsRestjson1_serializeDocumentIdFieldNameList(v.IdFieldNames, ok); err != nil {
3274			return err
3275		}
3276	}
3277
3278	if v.Object != nil {
3279		ok := object.Key("object")
3280		ok.String(*v.Object)
3281	}
3282
3283	if len(v.WriteOperationType) > 0 {
3284		ok := object.Key("writeOperationType")
3285		ok.String(string(v.WriteOperationType))
3286	}
3287
3288	return nil
3289}
3290
3291func awsRestjson1_serializeDocumentZendeskSourceProperties(v *types.ZendeskSourceProperties, value smithyjson.Value) error {
3292	object := value.Object()
3293	defer object.Close()
3294
3295	if v.Object != nil {
3296		ok := object.Key("object")
3297		ok.String(*v.Object)
3298	}
3299
3300	return nil
3301}
3302