1// Code generated by smithy-go-codegen DO NOT EDIT.
2
3package elastictranscoder
4
5import (
6	"bytes"
7	"context"
8	"fmt"
9	"github.com/aws/aws-sdk-go-v2/service/elastictranscoder/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	smithyhttp "github.com/aws/smithy-go/transport/http"
15)
16
17type awsRestjson1_serializeOpCancelJob struct {
18}
19
20func (*awsRestjson1_serializeOpCancelJob) ID() string {
21	return "OperationSerializer"
22}
23
24func (m *awsRestjson1_serializeOpCancelJob) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
25	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
26) {
27	request, ok := in.Request.(*smithyhttp.Request)
28	if !ok {
29		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
30	}
31
32	input, ok := in.Parameters.(*CancelJobInput)
33	_ = input
34	if !ok {
35		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
36	}
37
38	opPath, opQuery := httpbinding.SplitURI("/2012-09-25/jobs/{Id}")
39	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
40	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
41	request.Method = "DELETE"
42	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
43	if err != nil {
44		return out, metadata, &smithy.SerializationError{Err: err}
45	}
46
47	if err := awsRestjson1_serializeOpHttpBindingsCancelJobInput(input, restEncoder); err != nil {
48		return out, metadata, &smithy.SerializationError{Err: err}
49	}
50
51	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
52		return out, metadata, &smithy.SerializationError{Err: err}
53	}
54	in.Request = request
55
56	return next.HandleSerialize(ctx, in)
57}
58func awsRestjson1_serializeOpHttpBindingsCancelJobInput(v *CancelJobInput, encoder *httpbinding.Encoder) error {
59	if v == nil {
60		return fmt.Errorf("unsupported serialization of nil %T", v)
61	}
62
63	if v.Id == nil || len(*v.Id) == 0 {
64		return &smithy.SerializationError{Err: fmt.Errorf("input member Id must not be empty")}
65	}
66	if v.Id != nil {
67		if err := encoder.SetURI("Id").String(*v.Id); err != nil {
68			return err
69		}
70	}
71
72	return nil
73}
74
75type awsRestjson1_serializeOpCreateJob struct {
76}
77
78func (*awsRestjson1_serializeOpCreateJob) ID() string {
79	return "OperationSerializer"
80}
81
82func (m *awsRestjson1_serializeOpCreateJob) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
83	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
84) {
85	request, ok := in.Request.(*smithyhttp.Request)
86	if !ok {
87		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
88	}
89
90	input, ok := in.Parameters.(*CreateJobInput)
91	_ = input
92	if !ok {
93		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
94	}
95
96	opPath, opQuery := httpbinding.SplitURI("/2012-09-25/jobs")
97	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
98	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
99	request.Method = "POST"
100	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
101	if err != nil {
102		return out, metadata, &smithy.SerializationError{Err: err}
103	}
104
105	restEncoder.SetHeader("Content-Type").String("application/json")
106
107	jsonEncoder := smithyjson.NewEncoder()
108	if err := awsRestjson1_serializeOpDocumentCreateJobInput(input, jsonEncoder.Value); err != nil {
109		return out, metadata, &smithy.SerializationError{Err: err}
110	}
111
112	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
113		return out, metadata, &smithy.SerializationError{Err: err}
114	}
115
116	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
117		return out, metadata, &smithy.SerializationError{Err: err}
118	}
119	in.Request = request
120
121	return next.HandleSerialize(ctx, in)
122}
123func awsRestjson1_serializeOpHttpBindingsCreateJobInput(v *CreateJobInput, encoder *httpbinding.Encoder) error {
124	if v == nil {
125		return fmt.Errorf("unsupported serialization of nil %T", v)
126	}
127
128	return nil
129}
130
131func awsRestjson1_serializeOpDocumentCreateJobInput(v *CreateJobInput, value smithyjson.Value) error {
132	object := value.Object()
133	defer object.Close()
134
135	if v.Input != nil {
136		ok := object.Key("Input")
137		if err := awsRestjson1_serializeDocumentJobInput(v.Input, ok); err != nil {
138			return err
139		}
140	}
141
142	if v.Inputs != nil {
143		ok := object.Key("Inputs")
144		if err := awsRestjson1_serializeDocumentJobInputs(v.Inputs, ok); err != nil {
145			return err
146		}
147	}
148
149	if v.Output != nil {
150		ok := object.Key("Output")
151		if err := awsRestjson1_serializeDocumentCreateJobOutput(v.Output, ok); err != nil {
152			return err
153		}
154	}
155
156	if v.OutputKeyPrefix != nil {
157		ok := object.Key("OutputKeyPrefix")
158		ok.String(*v.OutputKeyPrefix)
159	}
160
161	if v.Outputs != nil {
162		ok := object.Key("Outputs")
163		if err := awsRestjson1_serializeDocumentCreateJobOutputs(v.Outputs, ok); err != nil {
164			return err
165		}
166	}
167
168	if v.PipelineId != nil {
169		ok := object.Key("PipelineId")
170		ok.String(*v.PipelineId)
171	}
172
173	if v.Playlists != nil {
174		ok := object.Key("Playlists")
175		if err := awsRestjson1_serializeDocumentCreateJobPlaylists(v.Playlists, ok); err != nil {
176			return err
177		}
178	}
179
180	if v.UserMetadata != nil {
181		ok := object.Key("UserMetadata")
182		if err := awsRestjson1_serializeDocumentUserMetadata(v.UserMetadata, ok); err != nil {
183			return err
184		}
185	}
186
187	return nil
188}
189
190type awsRestjson1_serializeOpCreatePipeline struct {
191}
192
193func (*awsRestjson1_serializeOpCreatePipeline) ID() string {
194	return "OperationSerializer"
195}
196
197func (m *awsRestjson1_serializeOpCreatePipeline) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
198	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
199) {
200	request, ok := in.Request.(*smithyhttp.Request)
201	if !ok {
202		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
203	}
204
205	input, ok := in.Parameters.(*CreatePipelineInput)
206	_ = input
207	if !ok {
208		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
209	}
210
211	opPath, opQuery := httpbinding.SplitURI("/2012-09-25/pipelines")
212	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
213	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
214	request.Method = "POST"
215	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
216	if err != nil {
217		return out, metadata, &smithy.SerializationError{Err: err}
218	}
219
220	restEncoder.SetHeader("Content-Type").String("application/json")
221
222	jsonEncoder := smithyjson.NewEncoder()
223	if err := awsRestjson1_serializeOpDocumentCreatePipelineInput(input, jsonEncoder.Value); err != nil {
224		return out, metadata, &smithy.SerializationError{Err: err}
225	}
226
227	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
228		return out, metadata, &smithy.SerializationError{Err: err}
229	}
230
231	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
232		return out, metadata, &smithy.SerializationError{Err: err}
233	}
234	in.Request = request
235
236	return next.HandleSerialize(ctx, in)
237}
238func awsRestjson1_serializeOpHttpBindingsCreatePipelineInput(v *CreatePipelineInput, encoder *httpbinding.Encoder) error {
239	if v == nil {
240		return fmt.Errorf("unsupported serialization of nil %T", v)
241	}
242
243	return nil
244}
245
246func awsRestjson1_serializeOpDocumentCreatePipelineInput(v *CreatePipelineInput, value smithyjson.Value) error {
247	object := value.Object()
248	defer object.Close()
249
250	if v.AwsKmsKeyArn != nil {
251		ok := object.Key("AwsKmsKeyArn")
252		ok.String(*v.AwsKmsKeyArn)
253	}
254
255	if v.ContentConfig != nil {
256		ok := object.Key("ContentConfig")
257		if err := awsRestjson1_serializeDocumentPipelineOutputConfig(v.ContentConfig, ok); err != nil {
258			return err
259		}
260	}
261
262	if v.InputBucket != nil {
263		ok := object.Key("InputBucket")
264		ok.String(*v.InputBucket)
265	}
266
267	if v.Name != nil {
268		ok := object.Key("Name")
269		ok.String(*v.Name)
270	}
271
272	if v.Notifications != nil {
273		ok := object.Key("Notifications")
274		if err := awsRestjson1_serializeDocumentNotifications(v.Notifications, ok); err != nil {
275			return err
276		}
277	}
278
279	if v.OutputBucket != nil {
280		ok := object.Key("OutputBucket")
281		ok.String(*v.OutputBucket)
282	}
283
284	if v.Role != nil {
285		ok := object.Key("Role")
286		ok.String(*v.Role)
287	}
288
289	if v.ThumbnailConfig != nil {
290		ok := object.Key("ThumbnailConfig")
291		if err := awsRestjson1_serializeDocumentPipelineOutputConfig(v.ThumbnailConfig, ok); err != nil {
292			return err
293		}
294	}
295
296	return nil
297}
298
299type awsRestjson1_serializeOpCreatePreset struct {
300}
301
302func (*awsRestjson1_serializeOpCreatePreset) ID() string {
303	return "OperationSerializer"
304}
305
306func (m *awsRestjson1_serializeOpCreatePreset) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
307	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
308) {
309	request, ok := in.Request.(*smithyhttp.Request)
310	if !ok {
311		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
312	}
313
314	input, ok := in.Parameters.(*CreatePresetInput)
315	_ = input
316	if !ok {
317		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
318	}
319
320	opPath, opQuery := httpbinding.SplitURI("/2012-09-25/presets")
321	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
322	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
323	request.Method = "POST"
324	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
325	if err != nil {
326		return out, metadata, &smithy.SerializationError{Err: err}
327	}
328
329	restEncoder.SetHeader("Content-Type").String("application/json")
330
331	jsonEncoder := smithyjson.NewEncoder()
332	if err := awsRestjson1_serializeOpDocumentCreatePresetInput(input, jsonEncoder.Value); err != nil {
333		return out, metadata, &smithy.SerializationError{Err: err}
334	}
335
336	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
337		return out, metadata, &smithy.SerializationError{Err: err}
338	}
339
340	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
341		return out, metadata, &smithy.SerializationError{Err: err}
342	}
343	in.Request = request
344
345	return next.HandleSerialize(ctx, in)
346}
347func awsRestjson1_serializeOpHttpBindingsCreatePresetInput(v *CreatePresetInput, encoder *httpbinding.Encoder) error {
348	if v == nil {
349		return fmt.Errorf("unsupported serialization of nil %T", v)
350	}
351
352	return nil
353}
354
355func awsRestjson1_serializeOpDocumentCreatePresetInput(v *CreatePresetInput, value smithyjson.Value) error {
356	object := value.Object()
357	defer object.Close()
358
359	if v.Audio != nil {
360		ok := object.Key("Audio")
361		if err := awsRestjson1_serializeDocumentAudioParameters(v.Audio, ok); err != nil {
362			return err
363		}
364	}
365
366	if v.Container != nil {
367		ok := object.Key("Container")
368		ok.String(*v.Container)
369	}
370
371	if v.Description != nil {
372		ok := object.Key("Description")
373		ok.String(*v.Description)
374	}
375
376	if v.Name != nil {
377		ok := object.Key("Name")
378		ok.String(*v.Name)
379	}
380
381	if v.Thumbnails != nil {
382		ok := object.Key("Thumbnails")
383		if err := awsRestjson1_serializeDocumentThumbnails(v.Thumbnails, ok); err != nil {
384			return err
385		}
386	}
387
388	if v.Video != nil {
389		ok := object.Key("Video")
390		if err := awsRestjson1_serializeDocumentVideoParameters(v.Video, ok); err != nil {
391			return err
392		}
393	}
394
395	return nil
396}
397
398type awsRestjson1_serializeOpDeletePipeline struct {
399}
400
401func (*awsRestjson1_serializeOpDeletePipeline) ID() string {
402	return "OperationSerializer"
403}
404
405func (m *awsRestjson1_serializeOpDeletePipeline) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
406	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
407) {
408	request, ok := in.Request.(*smithyhttp.Request)
409	if !ok {
410		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
411	}
412
413	input, ok := in.Parameters.(*DeletePipelineInput)
414	_ = input
415	if !ok {
416		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
417	}
418
419	opPath, opQuery := httpbinding.SplitURI("/2012-09-25/pipelines/{Id}")
420	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
421	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
422	request.Method = "DELETE"
423	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
424	if err != nil {
425		return out, metadata, &smithy.SerializationError{Err: err}
426	}
427
428	if err := awsRestjson1_serializeOpHttpBindingsDeletePipelineInput(input, restEncoder); err != nil {
429		return out, metadata, &smithy.SerializationError{Err: err}
430	}
431
432	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
433		return out, metadata, &smithy.SerializationError{Err: err}
434	}
435	in.Request = request
436
437	return next.HandleSerialize(ctx, in)
438}
439func awsRestjson1_serializeOpHttpBindingsDeletePipelineInput(v *DeletePipelineInput, encoder *httpbinding.Encoder) error {
440	if v == nil {
441		return fmt.Errorf("unsupported serialization of nil %T", v)
442	}
443
444	if v.Id == nil || len(*v.Id) == 0 {
445		return &smithy.SerializationError{Err: fmt.Errorf("input member Id must not be empty")}
446	}
447	if v.Id != nil {
448		if err := encoder.SetURI("Id").String(*v.Id); err != nil {
449			return err
450		}
451	}
452
453	return nil
454}
455
456type awsRestjson1_serializeOpDeletePreset struct {
457}
458
459func (*awsRestjson1_serializeOpDeletePreset) ID() string {
460	return "OperationSerializer"
461}
462
463func (m *awsRestjson1_serializeOpDeletePreset) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
464	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
465) {
466	request, ok := in.Request.(*smithyhttp.Request)
467	if !ok {
468		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
469	}
470
471	input, ok := in.Parameters.(*DeletePresetInput)
472	_ = input
473	if !ok {
474		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
475	}
476
477	opPath, opQuery := httpbinding.SplitURI("/2012-09-25/presets/{Id}")
478	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
479	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
480	request.Method = "DELETE"
481	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
482	if err != nil {
483		return out, metadata, &smithy.SerializationError{Err: err}
484	}
485
486	if err := awsRestjson1_serializeOpHttpBindingsDeletePresetInput(input, restEncoder); err != nil {
487		return out, metadata, &smithy.SerializationError{Err: err}
488	}
489
490	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
491		return out, metadata, &smithy.SerializationError{Err: err}
492	}
493	in.Request = request
494
495	return next.HandleSerialize(ctx, in)
496}
497func awsRestjson1_serializeOpHttpBindingsDeletePresetInput(v *DeletePresetInput, encoder *httpbinding.Encoder) error {
498	if v == nil {
499		return fmt.Errorf("unsupported serialization of nil %T", v)
500	}
501
502	if v.Id == nil || len(*v.Id) == 0 {
503		return &smithy.SerializationError{Err: fmt.Errorf("input member Id must not be empty")}
504	}
505	if v.Id != nil {
506		if err := encoder.SetURI("Id").String(*v.Id); err != nil {
507			return err
508		}
509	}
510
511	return nil
512}
513
514type awsRestjson1_serializeOpListJobsByPipeline struct {
515}
516
517func (*awsRestjson1_serializeOpListJobsByPipeline) ID() string {
518	return "OperationSerializer"
519}
520
521func (m *awsRestjson1_serializeOpListJobsByPipeline) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
522	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
523) {
524	request, ok := in.Request.(*smithyhttp.Request)
525	if !ok {
526		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
527	}
528
529	input, ok := in.Parameters.(*ListJobsByPipelineInput)
530	_ = input
531	if !ok {
532		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
533	}
534
535	opPath, opQuery := httpbinding.SplitURI("/2012-09-25/jobsByPipeline/{PipelineId}")
536	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
537	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
538	request.Method = "GET"
539	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
540	if err != nil {
541		return out, metadata, &smithy.SerializationError{Err: err}
542	}
543
544	if err := awsRestjson1_serializeOpHttpBindingsListJobsByPipelineInput(input, restEncoder); err != nil {
545		return out, metadata, &smithy.SerializationError{Err: err}
546	}
547
548	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
549		return out, metadata, &smithy.SerializationError{Err: err}
550	}
551	in.Request = request
552
553	return next.HandleSerialize(ctx, in)
554}
555func awsRestjson1_serializeOpHttpBindingsListJobsByPipelineInput(v *ListJobsByPipelineInput, encoder *httpbinding.Encoder) error {
556	if v == nil {
557		return fmt.Errorf("unsupported serialization of nil %T", v)
558	}
559
560	if v.Ascending != nil {
561		encoder.SetQuery("Ascending").String(*v.Ascending)
562	}
563
564	if v.PageToken != nil {
565		encoder.SetQuery("PageToken").String(*v.PageToken)
566	}
567
568	if v.PipelineId == nil || len(*v.PipelineId) == 0 {
569		return &smithy.SerializationError{Err: fmt.Errorf("input member PipelineId must not be empty")}
570	}
571	if v.PipelineId != nil {
572		if err := encoder.SetURI("PipelineId").String(*v.PipelineId); err != nil {
573			return err
574		}
575	}
576
577	return nil
578}
579
580type awsRestjson1_serializeOpListJobsByStatus struct {
581}
582
583func (*awsRestjson1_serializeOpListJobsByStatus) ID() string {
584	return "OperationSerializer"
585}
586
587func (m *awsRestjson1_serializeOpListJobsByStatus) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
588	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
589) {
590	request, ok := in.Request.(*smithyhttp.Request)
591	if !ok {
592		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
593	}
594
595	input, ok := in.Parameters.(*ListJobsByStatusInput)
596	_ = input
597	if !ok {
598		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
599	}
600
601	opPath, opQuery := httpbinding.SplitURI("/2012-09-25/jobsByStatus/{Status}")
602	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
603	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
604	request.Method = "GET"
605	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
606	if err != nil {
607		return out, metadata, &smithy.SerializationError{Err: err}
608	}
609
610	if err := awsRestjson1_serializeOpHttpBindingsListJobsByStatusInput(input, restEncoder); err != nil {
611		return out, metadata, &smithy.SerializationError{Err: err}
612	}
613
614	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
615		return out, metadata, &smithy.SerializationError{Err: err}
616	}
617	in.Request = request
618
619	return next.HandleSerialize(ctx, in)
620}
621func awsRestjson1_serializeOpHttpBindingsListJobsByStatusInput(v *ListJobsByStatusInput, encoder *httpbinding.Encoder) error {
622	if v == nil {
623		return fmt.Errorf("unsupported serialization of nil %T", v)
624	}
625
626	if v.Ascending != nil {
627		encoder.SetQuery("Ascending").String(*v.Ascending)
628	}
629
630	if v.PageToken != nil {
631		encoder.SetQuery("PageToken").String(*v.PageToken)
632	}
633
634	if v.Status == nil || len(*v.Status) == 0 {
635		return &smithy.SerializationError{Err: fmt.Errorf("input member Status must not be empty")}
636	}
637	if v.Status != nil {
638		if err := encoder.SetURI("Status").String(*v.Status); err != nil {
639			return err
640		}
641	}
642
643	return nil
644}
645
646type awsRestjson1_serializeOpListPipelines struct {
647}
648
649func (*awsRestjson1_serializeOpListPipelines) ID() string {
650	return "OperationSerializer"
651}
652
653func (m *awsRestjson1_serializeOpListPipelines) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
654	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
655) {
656	request, ok := in.Request.(*smithyhttp.Request)
657	if !ok {
658		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
659	}
660
661	input, ok := in.Parameters.(*ListPipelinesInput)
662	_ = input
663	if !ok {
664		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
665	}
666
667	opPath, opQuery := httpbinding.SplitURI("/2012-09-25/pipelines")
668	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
669	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
670	request.Method = "GET"
671	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
672	if err != nil {
673		return out, metadata, &smithy.SerializationError{Err: err}
674	}
675
676	if err := awsRestjson1_serializeOpHttpBindingsListPipelinesInput(input, restEncoder); err != nil {
677		return out, metadata, &smithy.SerializationError{Err: err}
678	}
679
680	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
681		return out, metadata, &smithy.SerializationError{Err: err}
682	}
683	in.Request = request
684
685	return next.HandleSerialize(ctx, in)
686}
687func awsRestjson1_serializeOpHttpBindingsListPipelinesInput(v *ListPipelinesInput, encoder *httpbinding.Encoder) error {
688	if v == nil {
689		return fmt.Errorf("unsupported serialization of nil %T", v)
690	}
691
692	if v.Ascending != nil {
693		encoder.SetQuery("Ascending").String(*v.Ascending)
694	}
695
696	if v.PageToken != nil {
697		encoder.SetQuery("PageToken").String(*v.PageToken)
698	}
699
700	return nil
701}
702
703type awsRestjson1_serializeOpListPresets struct {
704}
705
706func (*awsRestjson1_serializeOpListPresets) ID() string {
707	return "OperationSerializer"
708}
709
710func (m *awsRestjson1_serializeOpListPresets) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
711	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
712) {
713	request, ok := in.Request.(*smithyhttp.Request)
714	if !ok {
715		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
716	}
717
718	input, ok := in.Parameters.(*ListPresetsInput)
719	_ = input
720	if !ok {
721		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
722	}
723
724	opPath, opQuery := httpbinding.SplitURI("/2012-09-25/presets")
725	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
726	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
727	request.Method = "GET"
728	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
729	if err != nil {
730		return out, metadata, &smithy.SerializationError{Err: err}
731	}
732
733	if err := awsRestjson1_serializeOpHttpBindingsListPresetsInput(input, restEncoder); err != nil {
734		return out, metadata, &smithy.SerializationError{Err: err}
735	}
736
737	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
738		return out, metadata, &smithy.SerializationError{Err: err}
739	}
740	in.Request = request
741
742	return next.HandleSerialize(ctx, in)
743}
744func awsRestjson1_serializeOpHttpBindingsListPresetsInput(v *ListPresetsInput, encoder *httpbinding.Encoder) error {
745	if v == nil {
746		return fmt.Errorf("unsupported serialization of nil %T", v)
747	}
748
749	if v.Ascending != nil {
750		encoder.SetQuery("Ascending").String(*v.Ascending)
751	}
752
753	if v.PageToken != nil {
754		encoder.SetQuery("PageToken").String(*v.PageToken)
755	}
756
757	return nil
758}
759
760type awsRestjson1_serializeOpReadJob struct {
761}
762
763func (*awsRestjson1_serializeOpReadJob) ID() string {
764	return "OperationSerializer"
765}
766
767func (m *awsRestjson1_serializeOpReadJob) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
768	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
769) {
770	request, ok := in.Request.(*smithyhttp.Request)
771	if !ok {
772		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
773	}
774
775	input, ok := in.Parameters.(*ReadJobInput)
776	_ = input
777	if !ok {
778		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
779	}
780
781	opPath, opQuery := httpbinding.SplitURI("/2012-09-25/jobs/{Id}")
782	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
783	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
784	request.Method = "GET"
785	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
786	if err != nil {
787		return out, metadata, &smithy.SerializationError{Err: err}
788	}
789
790	if err := awsRestjson1_serializeOpHttpBindingsReadJobInput(input, restEncoder); err != nil {
791		return out, metadata, &smithy.SerializationError{Err: err}
792	}
793
794	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
795		return out, metadata, &smithy.SerializationError{Err: err}
796	}
797	in.Request = request
798
799	return next.HandleSerialize(ctx, in)
800}
801func awsRestjson1_serializeOpHttpBindingsReadJobInput(v *ReadJobInput, encoder *httpbinding.Encoder) error {
802	if v == nil {
803		return fmt.Errorf("unsupported serialization of nil %T", v)
804	}
805
806	if v.Id == nil || len(*v.Id) == 0 {
807		return &smithy.SerializationError{Err: fmt.Errorf("input member Id must not be empty")}
808	}
809	if v.Id != nil {
810		if err := encoder.SetURI("Id").String(*v.Id); err != nil {
811			return err
812		}
813	}
814
815	return nil
816}
817
818type awsRestjson1_serializeOpReadPipeline struct {
819}
820
821func (*awsRestjson1_serializeOpReadPipeline) ID() string {
822	return "OperationSerializer"
823}
824
825func (m *awsRestjson1_serializeOpReadPipeline) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
826	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
827) {
828	request, ok := in.Request.(*smithyhttp.Request)
829	if !ok {
830		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
831	}
832
833	input, ok := in.Parameters.(*ReadPipelineInput)
834	_ = input
835	if !ok {
836		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
837	}
838
839	opPath, opQuery := httpbinding.SplitURI("/2012-09-25/pipelines/{Id}")
840	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
841	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
842	request.Method = "GET"
843	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
844	if err != nil {
845		return out, metadata, &smithy.SerializationError{Err: err}
846	}
847
848	if err := awsRestjson1_serializeOpHttpBindingsReadPipelineInput(input, restEncoder); err != nil {
849		return out, metadata, &smithy.SerializationError{Err: err}
850	}
851
852	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
853		return out, metadata, &smithy.SerializationError{Err: err}
854	}
855	in.Request = request
856
857	return next.HandleSerialize(ctx, in)
858}
859func awsRestjson1_serializeOpHttpBindingsReadPipelineInput(v *ReadPipelineInput, encoder *httpbinding.Encoder) error {
860	if v == nil {
861		return fmt.Errorf("unsupported serialization of nil %T", v)
862	}
863
864	if v.Id == nil || len(*v.Id) == 0 {
865		return &smithy.SerializationError{Err: fmt.Errorf("input member Id must not be empty")}
866	}
867	if v.Id != nil {
868		if err := encoder.SetURI("Id").String(*v.Id); err != nil {
869			return err
870		}
871	}
872
873	return nil
874}
875
876type awsRestjson1_serializeOpReadPreset struct {
877}
878
879func (*awsRestjson1_serializeOpReadPreset) ID() string {
880	return "OperationSerializer"
881}
882
883func (m *awsRestjson1_serializeOpReadPreset) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
884	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
885) {
886	request, ok := in.Request.(*smithyhttp.Request)
887	if !ok {
888		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
889	}
890
891	input, ok := in.Parameters.(*ReadPresetInput)
892	_ = input
893	if !ok {
894		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
895	}
896
897	opPath, opQuery := httpbinding.SplitURI("/2012-09-25/presets/{Id}")
898	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
899	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
900	request.Method = "GET"
901	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
902	if err != nil {
903		return out, metadata, &smithy.SerializationError{Err: err}
904	}
905
906	if err := awsRestjson1_serializeOpHttpBindingsReadPresetInput(input, restEncoder); err != nil {
907		return out, metadata, &smithy.SerializationError{Err: err}
908	}
909
910	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
911		return out, metadata, &smithy.SerializationError{Err: err}
912	}
913	in.Request = request
914
915	return next.HandleSerialize(ctx, in)
916}
917func awsRestjson1_serializeOpHttpBindingsReadPresetInput(v *ReadPresetInput, encoder *httpbinding.Encoder) error {
918	if v == nil {
919		return fmt.Errorf("unsupported serialization of nil %T", v)
920	}
921
922	if v.Id == nil || len(*v.Id) == 0 {
923		return &smithy.SerializationError{Err: fmt.Errorf("input member Id must not be empty")}
924	}
925	if v.Id != nil {
926		if err := encoder.SetURI("Id").String(*v.Id); err != nil {
927			return err
928		}
929	}
930
931	return nil
932}
933
934type awsRestjson1_serializeOpTestRole struct {
935}
936
937func (*awsRestjson1_serializeOpTestRole) ID() string {
938	return "OperationSerializer"
939}
940
941func (m *awsRestjson1_serializeOpTestRole) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
942	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
943) {
944	request, ok := in.Request.(*smithyhttp.Request)
945	if !ok {
946		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
947	}
948
949	input, ok := in.Parameters.(*TestRoleInput)
950	_ = input
951	if !ok {
952		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
953	}
954
955	opPath, opQuery := httpbinding.SplitURI("/2012-09-25/roleTests")
956	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
957	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
958	request.Method = "POST"
959	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
960	if err != nil {
961		return out, metadata, &smithy.SerializationError{Err: err}
962	}
963
964	restEncoder.SetHeader("Content-Type").String("application/json")
965
966	jsonEncoder := smithyjson.NewEncoder()
967	if err := awsRestjson1_serializeOpDocumentTestRoleInput(input, jsonEncoder.Value); err != nil {
968		return out, metadata, &smithy.SerializationError{Err: err}
969	}
970
971	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
972		return out, metadata, &smithy.SerializationError{Err: err}
973	}
974
975	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
976		return out, metadata, &smithy.SerializationError{Err: err}
977	}
978	in.Request = request
979
980	return next.HandleSerialize(ctx, in)
981}
982func awsRestjson1_serializeOpHttpBindingsTestRoleInput(v *TestRoleInput, encoder *httpbinding.Encoder) error {
983	if v == nil {
984		return fmt.Errorf("unsupported serialization of nil %T", v)
985	}
986
987	return nil
988}
989
990func awsRestjson1_serializeOpDocumentTestRoleInput(v *TestRoleInput, value smithyjson.Value) error {
991	object := value.Object()
992	defer object.Close()
993
994	if v.InputBucket != nil {
995		ok := object.Key("InputBucket")
996		ok.String(*v.InputBucket)
997	}
998
999	if v.OutputBucket != nil {
1000		ok := object.Key("OutputBucket")
1001		ok.String(*v.OutputBucket)
1002	}
1003
1004	if v.Role != nil {
1005		ok := object.Key("Role")
1006		ok.String(*v.Role)
1007	}
1008
1009	if v.Topics != nil {
1010		ok := object.Key("Topics")
1011		if err := awsRestjson1_serializeDocumentSnsTopics(v.Topics, ok); err != nil {
1012			return err
1013		}
1014	}
1015
1016	return nil
1017}
1018
1019type awsRestjson1_serializeOpUpdatePipeline struct {
1020}
1021
1022func (*awsRestjson1_serializeOpUpdatePipeline) ID() string {
1023	return "OperationSerializer"
1024}
1025
1026func (m *awsRestjson1_serializeOpUpdatePipeline) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1027	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1028) {
1029	request, ok := in.Request.(*smithyhttp.Request)
1030	if !ok {
1031		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1032	}
1033
1034	input, ok := in.Parameters.(*UpdatePipelineInput)
1035	_ = input
1036	if !ok {
1037		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1038	}
1039
1040	opPath, opQuery := httpbinding.SplitURI("/2012-09-25/pipelines/{Id}")
1041	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
1042	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
1043	request.Method = "PUT"
1044	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1045	if err != nil {
1046		return out, metadata, &smithy.SerializationError{Err: err}
1047	}
1048
1049	if err := awsRestjson1_serializeOpHttpBindingsUpdatePipelineInput(input, restEncoder); err != nil {
1050		return out, metadata, &smithy.SerializationError{Err: err}
1051	}
1052
1053	restEncoder.SetHeader("Content-Type").String("application/json")
1054
1055	jsonEncoder := smithyjson.NewEncoder()
1056	if err := awsRestjson1_serializeOpDocumentUpdatePipelineInput(input, jsonEncoder.Value); err != nil {
1057		return out, metadata, &smithy.SerializationError{Err: err}
1058	}
1059
1060	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1061		return out, metadata, &smithy.SerializationError{Err: err}
1062	}
1063
1064	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
1065		return out, metadata, &smithy.SerializationError{Err: err}
1066	}
1067	in.Request = request
1068
1069	return next.HandleSerialize(ctx, in)
1070}
1071func awsRestjson1_serializeOpHttpBindingsUpdatePipelineInput(v *UpdatePipelineInput, encoder *httpbinding.Encoder) error {
1072	if v == nil {
1073		return fmt.Errorf("unsupported serialization of nil %T", v)
1074	}
1075
1076	if v.Id == nil || len(*v.Id) == 0 {
1077		return &smithy.SerializationError{Err: fmt.Errorf("input member Id must not be empty")}
1078	}
1079	if v.Id != nil {
1080		if err := encoder.SetURI("Id").String(*v.Id); err != nil {
1081			return err
1082		}
1083	}
1084
1085	return nil
1086}
1087
1088func awsRestjson1_serializeOpDocumentUpdatePipelineInput(v *UpdatePipelineInput, value smithyjson.Value) error {
1089	object := value.Object()
1090	defer object.Close()
1091
1092	if v.AwsKmsKeyArn != nil {
1093		ok := object.Key("AwsKmsKeyArn")
1094		ok.String(*v.AwsKmsKeyArn)
1095	}
1096
1097	if v.ContentConfig != nil {
1098		ok := object.Key("ContentConfig")
1099		if err := awsRestjson1_serializeDocumentPipelineOutputConfig(v.ContentConfig, ok); err != nil {
1100			return err
1101		}
1102	}
1103
1104	if v.InputBucket != nil {
1105		ok := object.Key("InputBucket")
1106		ok.String(*v.InputBucket)
1107	}
1108
1109	if v.Name != nil {
1110		ok := object.Key("Name")
1111		ok.String(*v.Name)
1112	}
1113
1114	if v.Notifications != nil {
1115		ok := object.Key("Notifications")
1116		if err := awsRestjson1_serializeDocumentNotifications(v.Notifications, ok); err != nil {
1117			return err
1118		}
1119	}
1120
1121	if v.Role != nil {
1122		ok := object.Key("Role")
1123		ok.String(*v.Role)
1124	}
1125
1126	if v.ThumbnailConfig != nil {
1127		ok := object.Key("ThumbnailConfig")
1128		if err := awsRestjson1_serializeDocumentPipelineOutputConfig(v.ThumbnailConfig, ok); err != nil {
1129			return err
1130		}
1131	}
1132
1133	return nil
1134}
1135
1136type awsRestjson1_serializeOpUpdatePipelineNotifications struct {
1137}
1138
1139func (*awsRestjson1_serializeOpUpdatePipelineNotifications) ID() string {
1140	return "OperationSerializer"
1141}
1142
1143func (m *awsRestjson1_serializeOpUpdatePipelineNotifications) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1144	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1145) {
1146	request, ok := in.Request.(*smithyhttp.Request)
1147	if !ok {
1148		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1149	}
1150
1151	input, ok := in.Parameters.(*UpdatePipelineNotificationsInput)
1152	_ = input
1153	if !ok {
1154		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1155	}
1156
1157	opPath, opQuery := httpbinding.SplitURI("/2012-09-25/pipelines/{Id}/notifications")
1158	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
1159	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
1160	request.Method = "POST"
1161	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1162	if err != nil {
1163		return out, metadata, &smithy.SerializationError{Err: err}
1164	}
1165
1166	if err := awsRestjson1_serializeOpHttpBindingsUpdatePipelineNotificationsInput(input, restEncoder); err != nil {
1167		return out, metadata, &smithy.SerializationError{Err: err}
1168	}
1169
1170	restEncoder.SetHeader("Content-Type").String("application/json")
1171
1172	jsonEncoder := smithyjson.NewEncoder()
1173	if err := awsRestjson1_serializeOpDocumentUpdatePipelineNotificationsInput(input, jsonEncoder.Value); err != nil {
1174		return out, metadata, &smithy.SerializationError{Err: err}
1175	}
1176
1177	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1178		return out, metadata, &smithy.SerializationError{Err: err}
1179	}
1180
1181	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
1182		return out, metadata, &smithy.SerializationError{Err: err}
1183	}
1184	in.Request = request
1185
1186	return next.HandleSerialize(ctx, in)
1187}
1188func awsRestjson1_serializeOpHttpBindingsUpdatePipelineNotificationsInput(v *UpdatePipelineNotificationsInput, encoder *httpbinding.Encoder) error {
1189	if v == nil {
1190		return fmt.Errorf("unsupported serialization of nil %T", v)
1191	}
1192
1193	if v.Id == nil || len(*v.Id) == 0 {
1194		return &smithy.SerializationError{Err: fmt.Errorf("input member Id must not be empty")}
1195	}
1196	if v.Id != nil {
1197		if err := encoder.SetURI("Id").String(*v.Id); err != nil {
1198			return err
1199		}
1200	}
1201
1202	return nil
1203}
1204
1205func awsRestjson1_serializeOpDocumentUpdatePipelineNotificationsInput(v *UpdatePipelineNotificationsInput, value smithyjson.Value) error {
1206	object := value.Object()
1207	defer object.Close()
1208
1209	if v.Notifications != nil {
1210		ok := object.Key("Notifications")
1211		if err := awsRestjson1_serializeDocumentNotifications(v.Notifications, ok); err != nil {
1212			return err
1213		}
1214	}
1215
1216	return nil
1217}
1218
1219type awsRestjson1_serializeOpUpdatePipelineStatus struct {
1220}
1221
1222func (*awsRestjson1_serializeOpUpdatePipelineStatus) ID() string {
1223	return "OperationSerializer"
1224}
1225
1226func (m *awsRestjson1_serializeOpUpdatePipelineStatus) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1227	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1228) {
1229	request, ok := in.Request.(*smithyhttp.Request)
1230	if !ok {
1231		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1232	}
1233
1234	input, ok := in.Parameters.(*UpdatePipelineStatusInput)
1235	_ = input
1236	if !ok {
1237		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1238	}
1239
1240	opPath, opQuery := httpbinding.SplitURI("/2012-09-25/pipelines/{Id}/status")
1241	request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
1242	request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
1243	request.Method = "POST"
1244	restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1245	if err != nil {
1246		return out, metadata, &smithy.SerializationError{Err: err}
1247	}
1248
1249	if err := awsRestjson1_serializeOpHttpBindingsUpdatePipelineStatusInput(input, restEncoder); err != nil {
1250		return out, metadata, &smithy.SerializationError{Err: err}
1251	}
1252
1253	restEncoder.SetHeader("Content-Type").String("application/json")
1254
1255	jsonEncoder := smithyjson.NewEncoder()
1256	if err := awsRestjson1_serializeOpDocumentUpdatePipelineStatusInput(input, jsonEncoder.Value); err != nil {
1257		return out, metadata, &smithy.SerializationError{Err: err}
1258	}
1259
1260	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1261		return out, metadata, &smithy.SerializationError{Err: err}
1262	}
1263
1264	if request.Request, err = restEncoder.Encode(request.Request); err != nil {
1265		return out, metadata, &smithy.SerializationError{Err: err}
1266	}
1267	in.Request = request
1268
1269	return next.HandleSerialize(ctx, in)
1270}
1271func awsRestjson1_serializeOpHttpBindingsUpdatePipelineStatusInput(v *UpdatePipelineStatusInput, encoder *httpbinding.Encoder) error {
1272	if v == nil {
1273		return fmt.Errorf("unsupported serialization of nil %T", v)
1274	}
1275
1276	if v.Id == nil || len(*v.Id) == 0 {
1277		return &smithy.SerializationError{Err: fmt.Errorf("input member Id must not be empty")}
1278	}
1279	if v.Id != nil {
1280		if err := encoder.SetURI("Id").String(*v.Id); err != nil {
1281			return err
1282		}
1283	}
1284
1285	return nil
1286}
1287
1288func awsRestjson1_serializeOpDocumentUpdatePipelineStatusInput(v *UpdatePipelineStatusInput, value smithyjson.Value) error {
1289	object := value.Object()
1290	defer object.Close()
1291
1292	if v.Status != nil {
1293		ok := object.Key("Status")
1294		ok.String(*v.Status)
1295	}
1296
1297	return nil
1298}
1299
1300func awsRestjson1_serializeDocumentAccessControls(v []string, value smithyjson.Value) error {
1301	array := value.Array()
1302	defer array.Close()
1303
1304	for i := range v {
1305		av := array.Value()
1306		av.String(v[i])
1307	}
1308	return nil
1309}
1310
1311func awsRestjson1_serializeDocumentArtwork(v *types.Artwork, value smithyjson.Value) error {
1312	object := value.Object()
1313	defer object.Close()
1314
1315	if v.AlbumArtFormat != nil {
1316		ok := object.Key("AlbumArtFormat")
1317		ok.String(*v.AlbumArtFormat)
1318	}
1319
1320	if v.Encryption != nil {
1321		ok := object.Key("Encryption")
1322		if err := awsRestjson1_serializeDocumentEncryption(v.Encryption, ok); err != nil {
1323			return err
1324		}
1325	}
1326
1327	if v.InputKey != nil {
1328		ok := object.Key("InputKey")
1329		ok.String(*v.InputKey)
1330	}
1331
1332	if v.MaxHeight != nil {
1333		ok := object.Key("MaxHeight")
1334		ok.String(*v.MaxHeight)
1335	}
1336
1337	if v.MaxWidth != nil {
1338		ok := object.Key("MaxWidth")
1339		ok.String(*v.MaxWidth)
1340	}
1341
1342	if v.PaddingPolicy != nil {
1343		ok := object.Key("PaddingPolicy")
1344		ok.String(*v.PaddingPolicy)
1345	}
1346
1347	if v.SizingPolicy != nil {
1348		ok := object.Key("SizingPolicy")
1349		ok.String(*v.SizingPolicy)
1350	}
1351
1352	return nil
1353}
1354
1355func awsRestjson1_serializeDocumentArtworks(v []types.Artwork, value smithyjson.Value) error {
1356	array := value.Array()
1357	defer array.Close()
1358
1359	for i := range v {
1360		av := array.Value()
1361		if err := awsRestjson1_serializeDocumentArtwork(&v[i], av); err != nil {
1362			return err
1363		}
1364	}
1365	return nil
1366}
1367
1368func awsRestjson1_serializeDocumentAudioCodecOptions(v *types.AudioCodecOptions, value smithyjson.Value) error {
1369	object := value.Object()
1370	defer object.Close()
1371
1372	if v.BitDepth != nil {
1373		ok := object.Key("BitDepth")
1374		ok.String(*v.BitDepth)
1375	}
1376
1377	if v.BitOrder != nil {
1378		ok := object.Key("BitOrder")
1379		ok.String(*v.BitOrder)
1380	}
1381
1382	if v.Profile != nil {
1383		ok := object.Key("Profile")
1384		ok.String(*v.Profile)
1385	}
1386
1387	if v.Signed != nil {
1388		ok := object.Key("Signed")
1389		ok.String(*v.Signed)
1390	}
1391
1392	return nil
1393}
1394
1395func awsRestjson1_serializeDocumentAudioParameters(v *types.AudioParameters, value smithyjson.Value) error {
1396	object := value.Object()
1397	defer object.Close()
1398
1399	if v.AudioPackingMode != nil {
1400		ok := object.Key("AudioPackingMode")
1401		ok.String(*v.AudioPackingMode)
1402	}
1403
1404	if v.BitRate != nil {
1405		ok := object.Key("BitRate")
1406		ok.String(*v.BitRate)
1407	}
1408
1409	if v.Channels != nil {
1410		ok := object.Key("Channels")
1411		ok.String(*v.Channels)
1412	}
1413
1414	if v.Codec != nil {
1415		ok := object.Key("Codec")
1416		ok.String(*v.Codec)
1417	}
1418
1419	if v.CodecOptions != nil {
1420		ok := object.Key("CodecOptions")
1421		if err := awsRestjson1_serializeDocumentAudioCodecOptions(v.CodecOptions, ok); err != nil {
1422			return err
1423		}
1424	}
1425
1426	if v.SampleRate != nil {
1427		ok := object.Key("SampleRate")
1428		ok.String(*v.SampleRate)
1429	}
1430
1431	return nil
1432}
1433
1434func awsRestjson1_serializeDocumentCaptionFormat(v *types.CaptionFormat, value smithyjson.Value) error {
1435	object := value.Object()
1436	defer object.Close()
1437
1438	if v.Encryption != nil {
1439		ok := object.Key("Encryption")
1440		if err := awsRestjson1_serializeDocumentEncryption(v.Encryption, ok); err != nil {
1441			return err
1442		}
1443	}
1444
1445	if v.Format != nil {
1446		ok := object.Key("Format")
1447		ok.String(*v.Format)
1448	}
1449
1450	if v.Pattern != nil {
1451		ok := object.Key("Pattern")
1452		ok.String(*v.Pattern)
1453	}
1454
1455	return nil
1456}
1457
1458func awsRestjson1_serializeDocumentCaptionFormats(v []types.CaptionFormat, value smithyjson.Value) error {
1459	array := value.Array()
1460	defer array.Close()
1461
1462	for i := range v {
1463		av := array.Value()
1464		if err := awsRestjson1_serializeDocumentCaptionFormat(&v[i], av); err != nil {
1465			return err
1466		}
1467	}
1468	return nil
1469}
1470
1471func awsRestjson1_serializeDocumentCaptions(v *types.Captions, value smithyjson.Value) error {
1472	object := value.Object()
1473	defer object.Close()
1474
1475	if v.CaptionFormats != nil {
1476		ok := object.Key("CaptionFormats")
1477		if err := awsRestjson1_serializeDocumentCaptionFormats(v.CaptionFormats, ok); err != nil {
1478			return err
1479		}
1480	}
1481
1482	if v.CaptionSources != nil {
1483		ok := object.Key("CaptionSources")
1484		if err := awsRestjson1_serializeDocumentCaptionSources(v.CaptionSources, ok); err != nil {
1485			return err
1486		}
1487	}
1488
1489	if v.MergePolicy != nil {
1490		ok := object.Key("MergePolicy")
1491		ok.String(*v.MergePolicy)
1492	}
1493
1494	return nil
1495}
1496
1497func awsRestjson1_serializeDocumentCaptionSource(v *types.CaptionSource, value smithyjson.Value) error {
1498	object := value.Object()
1499	defer object.Close()
1500
1501	if v.Encryption != nil {
1502		ok := object.Key("Encryption")
1503		if err := awsRestjson1_serializeDocumentEncryption(v.Encryption, ok); err != nil {
1504			return err
1505		}
1506	}
1507
1508	if v.Key != nil {
1509		ok := object.Key("Key")
1510		ok.String(*v.Key)
1511	}
1512
1513	if v.Label != nil {
1514		ok := object.Key("Label")
1515		ok.String(*v.Label)
1516	}
1517
1518	if v.Language != nil {
1519		ok := object.Key("Language")
1520		ok.String(*v.Language)
1521	}
1522
1523	if v.TimeOffset != nil {
1524		ok := object.Key("TimeOffset")
1525		ok.String(*v.TimeOffset)
1526	}
1527
1528	return nil
1529}
1530
1531func awsRestjson1_serializeDocumentCaptionSources(v []types.CaptionSource, value smithyjson.Value) error {
1532	array := value.Array()
1533	defer array.Close()
1534
1535	for i := range v {
1536		av := array.Value()
1537		if err := awsRestjson1_serializeDocumentCaptionSource(&v[i], av); err != nil {
1538			return err
1539		}
1540	}
1541	return nil
1542}
1543
1544func awsRestjson1_serializeDocumentClip(v *types.Clip, value smithyjson.Value) error {
1545	object := value.Object()
1546	defer object.Close()
1547
1548	if v.TimeSpan != nil {
1549		ok := object.Key("TimeSpan")
1550		if err := awsRestjson1_serializeDocumentTimeSpan(v.TimeSpan, ok); err != nil {
1551			return err
1552		}
1553	}
1554
1555	return nil
1556}
1557
1558func awsRestjson1_serializeDocumentCodecOptions(v map[string]string, value smithyjson.Value) error {
1559	object := value.Object()
1560	defer object.Close()
1561
1562	for key := range v {
1563		om := object.Key(key)
1564		om.String(v[key])
1565	}
1566	return nil
1567}
1568
1569func awsRestjson1_serializeDocumentComposition(v []types.Clip, value smithyjson.Value) error {
1570	array := value.Array()
1571	defer array.Close()
1572
1573	for i := range v {
1574		av := array.Value()
1575		if err := awsRestjson1_serializeDocumentClip(&v[i], av); err != nil {
1576			return err
1577		}
1578	}
1579	return nil
1580}
1581
1582func awsRestjson1_serializeDocumentCreateJobOutput(v *types.CreateJobOutput, value smithyjson.Value) error {
1583	object := value.Object()
1584	defer object.Close()
1585
1586	if v.AlbumArt != nil {
1587		ok := object.Key("AlbumArt")
1588		if err := awsRestjson1_serializeDocumentJobAlbumArt(v.AlbumArt, ok); err != nil {
1589			return err
1590		}
1591	}
1592
1593	if v.Captions != nil {
1594		ok := object.Key("Captions")
1595		if err := awsRestjson1_serializeDocumentCaptions(v.Captions, ok); err != nil {
1596			return err
1597		}
1598	}
1599
1600	if v.Composition != nil {
1601		ok := object.Key("Composition")
1602		if err := awsRestjson1_serializeDocumentComposition(v.Composition, ok); err != nil {
1603			return err
1604		}
1605	}
1606
1607	if v.Encryption != nil {
1608		ok := object.Key("Encryption")
1609		if err := awsRestjson1_serializeDocumentEncryption(v.Encryption, ok); err != nil {
1610			return err
1611		}
1612	}
1613
1614	if v.Key != nil {
1615		ok := object.Key("Key")
1616		ok.String(*v.Key)
1617	}
1618
1619	if v.PresetId != nil {
1620		ok := object.Key("PresetId")
1621		ok.String(*v.PresetId)
1622	}
1623
1624	if v.Rotate != nil {
1625		ok := object.Key("Rotate")
1626		ok.String(*v.Rotate)
1627	}
1628
1629	if v.SegmentDuration != nil {
1630		ok := object.Key("SegmentDuration")
1631		ok.String(*v.SegmentDuration)
1632	}
1633
1634	if v.ThumbnailEncryption != nil {
1635		ok := object.Key("ThumbnailEncryption")
1636		if err := awsRestjson1_serializeDocumentEncryption(v.ThumbnailEncryption, ok); err != nil {
1637			return err
1638		}
1639	}
1640
1641	if v.ThumbnailPattern != nil {
1642		ok := object.Key("ThumbnailPattern")
1643		ok.String(*v.ThumbnailPattern)
1644	}
1645
1646	if v.Watermarks != nil {
1647		ok := object.Key("Watermarks")
1648		if err := awsRestjson1_serializeDocumentJobWatermarks(v.Watermarks, ok); err != nil {
1649			return err
1650		}
1651	}
1652
1653	return nil
1654}
1655
1656func awsRestjson1_serializeDocumentCreateJobOutputs(v []types.CreateJobOutput, value smithyjson.Value) error {
1657	array := value.Array()
1658	defer array.Close()
1659
1660	for i := range v {
1661		av := array.Value()
1662		if err := awsRestjson1_serializeDocumentCreateJobOutput(&v[i], av); err != nil {
1663			return err
1664		}
1665	}
1666	return nil
1667}
1668
1669func awsRestjson1_serializeDocumentCreateJobPlaylist(v *types.CreateJobPlaylist, value smithyjson.Value) error {
1670	object := value.Object()
1671	defer object.Close()
1672
1673	if v.Format != nil {
1674		ok := object.Key("Format")
1675		ok.String(*v.Format)
1676	}
1677
1678	if v.HlsContentProtection != nil {
1679		ok := object.Key("HlsContentProtection")
1680		if err := awsRestjson1_serializeDocumentHlsContentProtection(v.HlsContentProtection, ok); err != nil {
1681			return err
1682		}
1683	}
1684
1685	if v.Name != nil {
1686		ok := object.Key("Name")
1687		ok.String(*v.Name)
1688	}
1689
1690	if v.OutputKeys != nil {
1691		ok := object.Key("OutputKeys")
1692		if err := awsRestjson1_serializeDocumentOutputKeys(v.OutputKeys, ok); err != nil {
1693			return err
1694		}
1695	}
1696
1697	if v.PlayReadyDrm != nil {
1698		ok := object.Key("PlayReadyDrm")
1699		if err := awsRestjson1_serializeDocumentPlayReadyDrm(v.PlayReadyDrm, ok); err != nil {
1700			return err
1701		}
1702	}
1703
1704	return nil
1705}
1706
1707func awsRestjson1_serializeDocumentCreateJobPlaylists(v []types.CreateJobPlaylist, value smithyjson.Value) error {
1708	array := value.Array()
1709	defer array.Close()
1710
1711	for i := range v {
1712		av := array.Value()
1713		if err := awsRestjson1_serializeDocumentCreateJobPlaylist(&v[i], av); err != nil {
1714			return err
1715		}
1716	}
1717	return nil
1718}
1719
1720func awsRestjson1_serializeDocumentDetectedProperties(v *types.DetectedProperties, value smithyjson.Value) error {
1721	object := value.Object()
1722	defer object.Close()
1723
1724	if v.DurationMillis != nil {
1725		ok := object.Key("DurationMillis")
1726		ok.Long(*v.DurationMillis)
1727	}
1728
1729	if v.FileSize != nil {
1730		ok := object.Key("FileSize")
1731		ok.Long(*v.FileSize)
1732	}
1733
1734	if v.FrameRate != nil {
1735		ok := object.Key("FrameRate")
1736		ok.String(*v.FrameRate)
1737	}
1738
1739	if v.Height != nil {
1740		ok := object.Key("Height")
1741		ok.Integer(*v.Height)
1742	}
1743
1744	if v.Width != nil {
1745		ok := object.Key("Width")
1746		ok.Integer(*v.Width)
1747	}
1748
1749	return nil
1750}
1751
1752func awsRestjson1_serializeDocumentEncryption(v *types.Encryption, value smithyjson.Value) error {
1753	object := value.Object()
1754	defer object.Close()
1755
1756	if v.InitializationVector != nil {
1757		ok := object.Key("InitializationVector")
1758		ok.String(*v.InitializationVector)
1759	}
1760
1761	if v.Key != nil {
1762		ok := object.Key("Key")
1763		ok.String(*v.Key)
1764	}
1765
1766	if v.KeyMd5 != nil {
1767		ok := object.Key("KeyMd5")
1768		ok.String(*v.KeyMd5)
1769	}
1770
1771	if v.Mode != nil {
1772		ok := object.Key("Mode")
1773		ok.String(*v.Mode)
1774	}
1775
1776	return nil
1777}
1778
1779func awsRestjson1_serializeDocumentHlsContentProtection(v *types.HlsContentProtection, value smithyjson.Value) error {
1780	object := value.Object()
1781	defer object.Close()
1782
1783	if v.InitializationVector != nil {
1784		ok := object.Key("InitializationVector")
1785		ok.String(*v.InitializationVector)
1786	}
1787
1788	if v.Key != nil {
1789		ok := object.Key("Key")
1790		ok.String(*v.Key)
1791	}
1792
1793	if v.KeyMd5 != nil {
1794		ok := object.Key("KeyMd5")
1795		ok.String(*v.KeyMd5)
1796	}
1797
1798	if v.KeyStoragePolicy != nil {
1799		ok := object.Key("KeyStoragePolicy")
1800		ok.String(*v.KeyStoragePolicy)
1801	}
1802
1803	if v.LicenseAcquisitionUrl != nil {
1804		ok := object.Key("LicenseAcquisitionUrl")
1805		ok.String(*v.LicenseAcquisitionUrl)
1806	}
1807
1808	if v.Method != nil {
1809		ok := object.Key("Method")
1810		ok.String(*v.Method)
1811	}
1812
1813	return nil
1814}
1815
1816func awsRestjson1_serializeDocumentInputCaptions(v *types.InputCaptions, value smithyjson.Value) error {
1817	object := value.Object()
1818	defer object.Close()
1819
1820	if v.CaptionSources != nil {
1821		ok := object.Key("CaptionSources")
1822		if err := awsRestjson1_serializeDocumentCaptionSources(v.CaptionSources, ok); err != nil {
1823			return err
1824		}
1825	}
1826
1827	if v.MergePolicy != nil {
1828		ok := object.Key("MergePolicy")
1829		ok.String(*v.MergePolicy)
1830	}
1831
1832	return nil
1833}
1834
1835func awsRestjson1_serializeDocumentJobAlbumArt(v *types.JobAlbumArt, value smithyjson.Value) error {
1836	object := value.Object()
1837	defer object.Close()
1838
1839	if v.Artwork != nil {
1840		ok := object.Key("Artwork")
1841		if err := awsRestjson1_serializeDocumentArtworks(v.Artwork, ok); err != nil {
1842			return err
1843		}
1844	}
1845
1846	if v.MergePolicy != nil {
1847		ok := object.Key("MergePolicy")
1848		ok.String(*v.MergePolicy)
1849	}
1850
1851	return nil
1852}
1853
1854func awsRestjson1_serializeDocumentJobInput(v *types.JobInput, value smithyjson.Value) error {
1855	object := value.Object()
1856	defer object.Close()
1857
1858	if v.AspectRatio != nil {
1859		ok := object.Key("AspectRatio")
1860		ok.String(*v.AspectRatio)
1861	}
1862
1863	if v.Container != nil {
1864		ok := object.Key("Container")
1865		ok.String(*v.Container)
1866	}
1867
1868	if v.DetectedProperties != nil {
1869		ok := object.Key("DetectedProperties")
1870		if err := awsRestjson1_serializeDocumentDetectedProperties(v.DetectedProperties, ok); err != nil {
1871			return err
1872		}
1873	}
1874
1875	if v.Encryption != nil {
1876		ok := object.Key("Encryption")
1877		if err := awsRestjson1_serializeDocumentEncryption(v.Encryption, ok); err != nil {
1878			return err
1879		}
1880	}
1881
1882	if v.FrameRate != nil {
1883		ok := object.Key("FrameRate")
1884		ok.String(*v.FrameRate)
1885	}
1886
1887	if v.InputCaptions != nil {
1888		ok := object.Key("InputCaptions")
1889		if err := awsRestjson1_serializeDocumentInputCaptions(v.InputCaptions, ok); err != nil {
1890			return err
1891		}
1892	}
1893
1894	if v.Interlaced != nil {
1895		ok := object.Key("Interlaced")
1896		ok.String(*v.Interlaced)
1897	}
1898
1899	if v.Key != nil {
1900		ok := object.Key("Key")
1901		ok.String(*v.Key)
1902	}
1903
1904	if v.Resolution != nil {
1905		ok := object.Key("Resolution")
1906		ok.String(*v.Resolution)
1907	}
1908
1909	if v.TimeSpan != nil {
1910		ok := object.Key("TimeSpan")
1911		if err := awsRestjson1_serializeDocumentTimeSpan(v.TimeSpan, ok); err != nil {
1912			return err
1913		}
1914	}
1915
1916	return nil
1917}
1918
1919func awsRestjson1_serializeDocumentJobInputs(v []types.JobInput, value smithyjson.Value) error {
1920	array := value.Array()
1921	defer array.Close()
1922
1923	for i := range v {
1924		av := array.Value()
1925		if err := awsRestjson1_serializeDocumentJobInput(&v[i], av); err != nil {
1926			return err
1927		}
1928	}
1929	return nil
1930}
1931
1932func awsRestjson1_serializeDocumentJobWatermark(v *types.JobWatermark, value smithyjson.Value) error {
1933	object := value.Object()
1934	defer object.Close()
1935
1936	if v.Encryption != nil {
1937		ok := object.Key("Encryption")
1938		if err := awsRestjson1_serializeDocumentEncryption(v.Encryption, ok); err != nil {
1939			return err
1940		}
1941	}
1942
1943	if v.InputKey != nil {
1944		ok := object.Key("InputKey")
1945		ok.String(*v.InputKey)
1946	}
1947
1948	if v.PresetWatermarkId != nil {
1949		ok := object.Key("PresetWatermarkId")
1950		ok.String(*v.PresetWatermarkId)
1951	}
1952
1953	return nil
1954}
1955
1956func awsRestjson1_serializeDocumentJobWatermarks(v []types.JobWatermark, value smithyjson.Value) error {
1957	array := value.Array()
1958	defer array.Close()
1959
1960	for i := range v {
1961		av := array.Value()
1962		if err := awsRestjson1_serializeDocumentJobWatermark(&v[i], av); err != nil {
1963			return err
1964		}
1965	}
1966	return nil
1967}
1968
1969func awsRestjson1_serializeDocumentNotifications(v *types.Notifications, value smithyjson.Value) error {
1970	object := value.Object()
1971	defer object.Close()
1972
1973	if v.Completed != nil {
1974		ok := object.Key("Completed")
1975		ok.String(*v.Completed)
1976	}
1977
1978	if v.Error != nil {
1979		ok := object.Key("Error")
1980		ok.String(*v.Error)
1981	}
1982
1983	if v.Progressing != nil {
1984		ok := object.Key("Progressing")
1985		ok.String(*v.Progressing)
1986	}
1987
1988	if v.Warning != nil {
1989		ok := object.Key("Warning")
1990		ok.String(*v.Warning)
1991	}
1992
1993	return nil
1994}
1995
1996func awsRestjson1_serializeDocumentOutputKeys(v []string, value smithyjson.Value) error {
1997	array := value.Array()
1998	defer array.Close()
1999
2000	for i := range v {
2001		av := array.Value()
2002		av.String(v[i])
2003	}
2004	return nil
2005}
2006
2007func awsRestjson1_serializeDocumentPermission(v *types.Permission, value smithyjson.Value) error {
2008	object := value.Object()
2009	defer object.Close()
2010
2011	if v.Access != nil {
2012		ok := object.Key("Access")
2013		if err := awsRestjson1_serializeDocumentAccessControls(v.Access, ok); err != nil {
2014			return err
2015		}
2016	}
2017
2018	if v.Grantee != nil {
2019		ok := object.Key("Grantee")
2020		ok.String(*v.Grantee)
2021	}
2022
2023	if v.GranteeType != nil {
2024		ok := object.Key("GranteeType")
2025		ok.String(*v.GranteeType)
2026	}
2027
2028	return nil
2029}
2030
2031func awsRestjson1_serializeDocumentPermissions(v []types.Permission, value smithyjson.Value) error {
2032	array := value.Array()
2033	defer array.Close()
2034
2035	for i := range v {
2036		av := array.Value()
2037		if err := awsRestjson1_serializeDocumentPermission(&v[i], av); err != nil {
2038			return err
2039		}
2040	}
2041	return nil
2042}
2043
2044func awsRestjson1_serializeDocumentPipelineOutputConfig(v *types.PipelineOutputConfig, value smithyjson.Value) error {
2045	object := value.Object()
2046	defer object.Close()
2047
2048	if v.Bucket != nil {
2049		ok := object.Key("Bucket")
2050		ok.String(*v.Bucket)
2051	}
2052
2053	if v.Permissions != nil {
2054		ok := object.Key("Permissions")
2055		if err := awsRestjson1_serializeDocumentPermissions(v.Permissions, ok); err != nil {
2056			return err
2057		}
2058	}
2059
2060	if v.StorageClass != nil {
2061		ok := object.Key("StorageClass")
2062		ok.String(*v.StorageClass)
2063	}
2064
2065	return nil
2066}
2067
2068func awsRestjson1_serializeDocumentPlayReadyDrm(v *types.PlayReadyDrm, value smithyjson.Value) error {
2069	object := value.Object()
2070	defer object.Close()
2071
2072	if v.Format != nil {
2073		ok := object.Key("Format")
2074		ok.String(*v.Format)
2075	}
2076
2077	if v.InitializationVector != nil {
2078		ok := object.Key("InitializationVector")
2079		ok.String(*v.InitializationVector)
2080	}
2081
2082	if v.Key != nil {
2083		ok := object.Key("Key")
2084		ok.String(*v.Key)
2085	}
2086
2087	if v.KeyId != nil {
2088		ok := object.Key("KeyId")
2089		ok.String(*v.KeyId)
2090	}
2091
2092	if v.KeyMd5 != nil {
2093		ok := object.Key("KeyMd5")
2094		ok.String(*v.KeyMd5)
2095	}
2096
2097	if v.LicenseAcquisitionUrl != nil {
2098		ok := object.Key("LicenseAcquisitionUrl")
2099		ok.String(*v.LicenseAcquisitionUrl)
2100	}
2101
2102	return nil
2103}
2104
2105func awsRestjson1_serializeDocumentPresetWatermark(v *types.PresetWatermark, value smithyjson.Value) error {
2106	object := value.Object()
2107	defer object.Close()
2108
2109	if v.HorizontalAlign != nil {
2110		ok := object.Key("HorizontalAlign")
2111		ok.String(*v.HorizontalAlign)
2112	}
2113
2114	if v.HorizontalOffset != nil {
2115		ok := object.Key("HorizontalOffset")
2116		ok.String(*v.HorizontalOffset)
2117	}
2118
2119	if v.Id != nil {
2120		ok := object.Key("Id")
2121		ok.String(*v.Id)
2122	}
2123
2124	if v.MaxHeight != nil {
2125		ok := object.Key("MaxHeight")
2126		ok.String(*v.MaxHeight)
2127	}
2128
2129	if v.MaxWidth != nil {
2130		ok := object.Key("MaxWidth")
2131		ok.String(*v.MaxWidth)
2132	}
2133
2134	if v.Opacity != nil {
2135		ok := object.Key("Opacity")
2136		ok.String(*v.Opacity)
2137	}
2138
2139	if v.SizingPolicy != nil {
2140		ok := object.Key("SizingPolicy")
2141		ok.String(*v.SizingPolicy)
2142	}
2143
2144	if v.Target != nil {
2145		ok := object.Key("Target")
2146		ok.String(*v.Target)
2147	}
2148
2149	if v.VerticalAlign != nil {
2150		ok := object.Key("VerticalAlign")
2151		ok.String(*v.VerticalAlign)
2152	}
2153
2154	if v.VerticalOffset != nil {
2155		ok := object.Key("VerticalOffset")
2156		ok.String(*v.VerticalOffset)
2157	}
2158
2159	return nil
2160}
2161
2162func awsRestjson1_serializeDocumentPresetWatermarks(v []types.PresetWatermark, value smithyjson.Value) error {
2163	array := value.Array()
2164	defer array.Close()
2165
2166	for i := range v {
2167		av := array.Value()
2168		if err := awsRestjson1_serializeDocumentPresetWatermark(&v[i], av); err != nil {
2169			return err
2170		}
2171	}
2172	return nil
2173}
2174
2175func awsRestjson1_serializeDocumentSnsTopics(v []string, value smithyjson.Value) error {
2176	array := value.Array()
2177	defer array.Close()
2178
2179	for i := range v {
2180		av := array.Value()
2181		av.String(v[i])
2182	}
2183	return nil
2184}
2185
2186func awsRestjson1_serializeDocumentThumbnails(v *types.Thumbnails, value smithyjson.Value) error {
2187	object := value.Object()
2188	defer object.Close()
2189
2190	if v.AspectRatio != nil {
2191		ok := object.Key("AspectRatio")
2192		ok.String(*v.AspectRatio)
2193	}
2194
2195	if v.Format != nil {
2196		ok := object.Key("Format")
2197		ok.String(*v.Format)
2198	}
2199
2200	if v.Interval != nil {
2201		ok := object.Key("Interval")
2202		ok.String(*v.Interval)
2203	}
2204
2205	if v.MaxHeight != nil {
2206		ok := object.Key("MaxHeight")
2207		ok.String(*v.MaxHeight)
2208	}
2209
2210	if v.MaxWidth != nil {
2211		ok := object.Key("MaxWidth")
2212		ok.String(*v.MaxWidth)
2213	}
2214
2215	if v.PaddingPolicy != nil {
2216		ok := object.Key("PaddingPolicy")
2217		ok.String(*v.PaddingPolicy)
2218	}
2219
2220	if v.Resolution != nil {
2221		ok := object.Key("Resolution")
2222		ok.String(*v.Resolution)
2223	}
2224
2225	if v.SizingPolicy != nil {
2226		ok := object.Key("SizingPolicy")
2227		ok.String(*v.SizingPolicy)
2228	}
2229
2230	return nil
2231}
2232
2233func awsRestjson1_serializeDocumentTimeSpan(v *types.TimeSpan, value smithyjson.Value) error {
2234	object := value.Object()
2235	defer object.Close()
2236
2237	if v.Duration != nil {
2238		ok := object.Key("Duration")
2239		ok.String(*v.Duration)
2240	}
2241
2242	if v.StartTime != nil {
2243		ok := object.Key("StartTime")
2244		ok.String(*v.StartTime)
2245	}
2246
2247	return nil
2248}
2249
2250func awsRestjson1_serializeDocumentUserMetadata(v map[string]string, value smithyjson.Value) error {
2251	object := value.Object()
2252	defer object.Close()
2253
2254	for key := range v {
2255		om := object.Key(key)
2256		om.String(v[key])
2257	}
2258	return nil
2259}
2260
2261func awsRestjson1_serializeDocumentVideoParameters(v *types.VideoParameters, value smithyjson.Value) error {
2262	object := value.Object()
2263	defer object.Close()
2264
2265	if v.AspectRatio != nil {
2266		ok := object.Key("AspectRatio")
2267		ok.String(*v.AspectRatio)
2268	}
2269
2270	if v.BitRate != nil {
2271		ok := object.Key("BitRate")
2272		ok.String(*v.BitRate)
2273	}
2274
2275	if v.Codec != nil {
2276		ok := object.Key("Codec")
2277		ok.String(*v.Codec)
2278	}
2279
2280	if v.CodecOptions != nil {
2281		ok := object.Key("CodecOptions")
2282		if err := awsRestjson1_serializeDocumentCodecOptions(v.CodecOptions, ok); err != nil {
2283			return err
2284		}
2285	}
2286
2287	if v.DisplayAspectRatio != nil {
2288		ok := object.Key("DisplayAspectRatio")
2289		ok.String(*v.DisplayAspectRatio)
2290	}
2291
2292	if v.FixedGOP != nil {
2293		ok := object.Key("FixedGOP")
2294		ok.String(*v.FixedGOP)
2295	}
2296
2297	if v.FrameRate != nil {
2298		ok := object.Key("FrameRate")
2299		ok.String(*v.FrameRate)
2300	}
2301
2302	if v.KeyframesMaxDist != nil {
2303		ok := object.Key("KeyframesMaxDist")
2304		ok.String(*v.KeyframesMaxDist)
2305	}
2306
2307	if v.MaxFrameRate != nil {
2308		ok := object.Key("MaxFrameRate")
2309		ok.String(*v.MaxFrameRate)
2310	}
2311
2312	if v.MaxHeight != nil {
2313		ok := object.Key("MaxHeight")
2314		ok.String(*v.MaxHeight)
2315	}
2316
2317	if v.MaxWidth != nil {
2318		ok := object.Key("MaxWidth")
2319		ok.String(*v.MaxWidth)
2320	}
2321
2322	if v.PaddingPolicy != nil {
2323		ok := object.Key("PaddingPolicy")
2324		ok.String(*v.PaddingPolicy)
2325	}
2326
2327	if v.Resolution != nil {
2328		ok := object.Key("Resolution")
2329		ok.String(*v.Resolution)
2330	}
2331
2332	if v.SizingPolicy != nil {
2333		ok := object.Key("SizingPolicy")
2334		ok.String(*v.SizingPolicy)
2335	}
2336
2337	if v.Watermarks != nil {
2338		ok := object.Key("Watermarks")
2339		if err := awsRestjson1_serializeDocumentPresetWatermarks(v.Watermarks, ok); err != nil {
2340			return err
2341		}
2342	}
2343
2344	return nil
2345}
2346