1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package groundstation
4
5import (
6	"fmt"
7	"time"
8
9	"github.com/aws/aws-sdk-go/aws"
10	"github.com/aws/aws-sdk-go/aws/awsutil"
11	"github.com/aws/aws-sdk-go/aws/request"
12	"github.com/aws/aws-sdk-go/private/protocol"
13	"github.com/aws/aws-sdk-go/private/protocol/restjson"
14)
15
16const opCancelContact = "CancelContact"
17
18// CancelContactRequest generates a "aws/request.Request" representing the
19// client's request for the CancelContact operation. The "output" return
20// value will be populated with the request's response once the request completes
21// successfully.
22//
23// Use "Send" method on the returned Request to send the API call to the service.
24// the "output" return value is not valid until after Send returns without error.
25//
26// See CancelContact for more information on using the CancelContact
27// API call, and error handling.
28//
29// This method is useful when you want to inject custom logic or configuration
30// into the SDK's request lifecycle. Such as custom headers, or retry logic.
31//
32//
33//    // Example sending a request using the CancelContactRequest method.
34//    req, resp := client.CancelContactRequest(params)
35//
36//    err := req.Send()
37//    if err == nil { // resp is now filled
38//        fmt.Println(resp)
39//    }
40//
41// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/CancelContact
42func (c *GroundStation) CancelContactRequest(input *CancelContactInput) (req *request.Request, output *CancelContactOutput) {
43	op := &request.Operation{
44		Name:       opCancelContact,
45		HTTPMethod: "DELETE",
46		HTTPPath:   "/contact/{contactId}",
47	}
48
49	if input == nil {
50		input = &CancelContactInput{}
51	}
52
53	output = &CancelContactOutput{}
54	req = c.newRequest(op, input, output)
55	return
56}
57
58// CancelContact API operation for AWS Ground Station.
59//
60// Cancels a contact with a specified contact ID.
61//
62// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
63// with awserr.Error's Code and Message methods to get detailed information about
64// the error.
65//
66// See the AWS API reference guide for AWS Ground Station's
67// API operation CancelContact for usage and error information.
68//
69// Returned Error Codes:
70//   * ErrCodeDependencyException "DependencyException"
71//   Dependency encountered an error.
72//
73//   * ErrCodeInvalidParameterException "InvalidParameterException"
74//   One or more parameters are not valid.
75//
76//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
77//   Resource was not found.
78//
79// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/CancelContact
80func (c *GroundStation) CancelContact(input *CancelContactInput) (*CancelContactOutput, error) {
81	req, out := c.CancelContactRequest(input)
82	return out, req.Send()
83}
84
85// CancelContactWithContext is the same as CancelContact with the addition of
86// the ability to pass a context and additional request options.
87//
88// See CancelContact for details on how to use this API operation.
89//
90// The context must be non-nil and will be used for request cancellation. If
91// the context is nil a panic will occur. In the future the SDK may create
92// sub-contexts for http.Requests. See https://golang.org/pkg/context/
93// for more information on using Contexts.
94func (c *GroundStation) CancelContactWithContext(ctx aws.Context, input *CancelContactInput, opts ...request.Option) (*CancelContactOutput, error) {
95	req, out := c.CancelContactRequest(input)
96	req.SetContext(ctx)
97	req.ApplyOptions(opts...)
98	return out, req.Send()
99}
100
101const opCreateConfig = "CreateConfig"
102
103// CreateConfigRequest generates a "aws/request.Request" representing the
104// client's request for the CreateConfig operation. The "output" return
105// value will be populated with the request's response once the request completes
106// successfully.
107//
108// Use "Send" method on the returned Request to send the API call to the service.
109// the "output" return value is not valid until after Send returns without error.
110//
111// See CreateConfig for more information on using the CreateConfig
112// API call, and error handling.
113//
114// This method is useful when you want to inject custom logic or configuration
115// into the SDK's request lifecycle. Such as custom headers, or retry logic.
116//
117//
118//    // Example sending a request using the CreateConfigRequest method.
119//    req, resp := client.CreateConfigRequest(params)
120//
121//    err := req.Send()
122//    if err == nil { // resp is now filled
123//        fmt.Println(resp)
124//    }
125//
126// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/CreateConfig
127func (c *GroundStation) CreateConfigRequest(input *CreateConfigInput) (req *request.Request, output *CreateConfigOutput) {
128	op := &request.Operation{
129		Name:       opCreateConfig,
130		HTTPMethod: "POST",
131		HTTPPath:   "/config",
132	}
133
134	if input == nil {
135		input = &CreateConfigInput{}
136	}
137
138	output = &CreateConfigOutput{}
139	req = c.newRequest(op, input, output)
140	return
141}
142
143// CreateConfig API operation for AWS Ground Station.
144//
145// Creates a Config with the specified configData parameters.
146//
147// Only one type of configData can be specified.
148//
149// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
150// with awserr.Error's Code and Message methods to get detailed information about
151// the error.
152//
153// See the AWS API reference guide for AWS Ground Station's
154// API operation CreateConfig for usage and error information.
155//
156// Returned Error Codes:
157//   * ErrCodeDependencyException "DependencyException"
158//   Dependency encountered an error.
159//
160//   * ErrCodeInvalidParameterException "InvalidParameterException"
161//   One or more parameters are not valid.
162//
163//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
164//   Resource was not found.
165//
166// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/CreateConfig
167func (c *GroundStation) CreateConfig(input *CreateConfigInput) (*CreateConfigOutput, error) {
168	req, out := c.CreateConfigRequest(input)
169	return out, req.Send()
170}
171
172// CreateConfigWithContext is the same as CreateConfig with the addition of
173// the ability to pass a context and additional request options.
174//
175// See CreateConfig for details on how to use this API operation.
176//
177// The context must be non-nil and will be used for request cancellation. If
178// the context is nil a panic will occur. In the future the SDK may create
179// sub-contexts for http.Requests. See https://golang.org/pkg/context/
180// for more information on using Contexts.
181func (c *GroundStation) CreateConfigWithContext(ctx aws.Context, input *CreateConfigInput, opts ...request.Option) (*CreateConfigOutput, error) {
182	req, out := c.CreateConfigRequest(input)
183	req.SetContext(ctx)
184	req.ApplyOptions(opts...)
185	return out, req.Send()
186}
187
188const opCreateDataflowEndpointGroup = "CreateDataflowEndpointGroup"
189
190// CreateDataflowEndpointGroupRequest generates a "aws/request.Request" representing the
191// client's request for the CreateDataflowEndpointGroup operation. The "output" return
192// value will be populated with the request's response once the request completes
193// successfully.
194//
195// Use "Send" method on the returned Request to send the API call to the service.
196// the "output" return value is not valid until after Send returns without error.
197//
198// See CreateDataflowEndpointGroup for more information on using the CreateDataflowEndpointGroup
199// API call, and error handling.
200//
201// This method is useful when you want to inject custom logic or configuration
202// into the SDK's request lifecycle. Such as custom headers, or retry logic.
203//
204//
205//    // Example sending a request using the CreateDataflowEndpointGroupRequest method.
206//    req, resp := client.CreateDataflowEndpointGroupRequest(params)
207//
208//    err := req.Send()
209//    if err == nil { // resp is now filled
210//        fmt.Println(resp)
211//    }
212//
213// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/CreateDataflowEndpointGroup
214func (c *GroundStation) CreateDataflowEndpointGroupRequest(input *CreateDataflowEndpointGroupInput) (req *request.Request, output *CreateDataflowEndpointGroupOutput) {
215	op := &request.Operation{
216		Name:       opCreateDataflowEndpointGroup,
217		HTTPMethod: "POST",
218		HTTPPath:   "/dataflowEndpointGroup",
219	}
220
221	if input == nil {
222		input = &CreateDataflowEndpointGroupInput{}
223	}
224
225	output = &CreateDataflowEndpointGroupOutput{}
226	req = c.newRequest(op, input, output)
227	return
228}
229
230// CreateDataflowEndpointGroup API operation for AWS Ground Station.
231//
232// Creates a DataflowEndpoint group containing the specified list of DataflowEndpoint
233// objects.
234//
235// The name field in each endpoint is used in your mission profile DataflowEndpointConfig
236// to specify which endpoints to use during a contact.
237//
238// When a contact uses multiple DataflowEndpointConfig objects, each Config
239// must match a DataflowEndpoint in the same group.
240//
241// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
242// with awserr.Error's Code and Message methods to get detailed information about
243// the error.
244//
245// See the AWS API reference guide for AWS Ground Station's
246// API operation CreateDataflowEndpointGroup for usage and error information.
247//
248// Returned Error Codes:
249//   * ErrCodeDependencyException "DependencyException"
250//   Dependency encountered an error.
251//
252//   * ErrCodeInvalidParameterException "InvalidParameterException"
253//   One or more parameters are not valid.
254//
255//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
256//   Resource was not found.
257//
258// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/CreateDataflowEndpointGroup
259func (c *GroundStation) CreateDataflowEndpointGroup(input *CreateDataflowEndpointGroupInput) (*CreateDataflowEndpointGroupOutput, error) {
260	req, out := c.CreateDataflowEndpointGroupRequest(input)
261	return out, req.Send()
262}
263
264// CreateDataflowEndpointGroupWithContext is the same as CreateDataflowEndpointGroup with the addition of
265// the ability to pass a context and additional request options.
266//
267// See CreateDataflowEndpointGroup for details on how to use this API operation.
268//
269// The context must be non-nil and will be used for request cancellation. If
270// the context is nil a panic will occur. In the future the SDK may create
271// sub-contexts for http.Requests. See https://golang.org/pkg/context/
272// for more information on using Contexts.
273func (c *GroundStation) CreateDataflowEndpointGroupWithContext(ctx aws.Context, input *CreateDataflowEndpointGroupInput, opts ...request.Option) (*CreateDataflowEndpointGroupOutput, error) {
274	req, out := c.CreateDataflowEndpointGroupRequest(input)
275	req.SetContext(ctx)
276	req.ApplyOptions(opts...)
277	return out, req.Send()
278}
279
280const opCreateMissionProfile = "CreateMissionProfile"
281
282// CreateMissionProfileRequest generates a "aws/request.Request" representing the
283// client's request for the CreateMissionProfile operation. The "output" return
284// value will be populated with the request's response once the request completes
285// successfully.
286//
287// Use "Send" method on the returned Request to send the API call to the service.
288// the "output" return value is not valid until after Send returns without error.
289//
290// See CreateMissionProfile for more information on using the CreateMissionProfile
291// API call, and error handling.
292//
293// This method is useful when you want to inject custom logic or configuration
294// into the SDK's request lifecycle. Such as custom headers, or retry logic.
295//
296//
297//    // Example sending a request using the CreateMissionProfileRequest method.
298//    req, resp := client.CreateMissionProfileRequest(params)
299//
300//    err := req.Send()
301//    if err == nil { // resp is now filled
302//        fmt.Println(resp)
303//    }
304//
305// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/CreateMissionProfile
306func (c *GroundStation) CreateMissionProfileRequest(input *CreateMissionProfileInput) (req *request.Request, output *CreateMissionProfileOutput) {
307	op := &request.Operation{
308		Name:       opCreateMissionProfile,
309		HTTPMethod: "POST",
310		HTTPPath:   "/missionprofile",
311	}
312
313	if input == nil {
314		input = &CreateMissionProfileInput{}
315	}
316
317	output = &CreateMissionProfileOutput{}
318	req = c.newRequest(op, input, output)
319	return
320}
321
322// CreateMissionProfile API operation for AWS Ground Station.
323//
324// Creates a mission profile.
325//
326// dataflowEdges is a list of lists of strings. Each lower level list of strings
327// has two elements: a from ARN and a to ARN.
328//
329// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
330// with awserr.Error's Code and Message methods to get detailed information about
331// the error.
332//
333// See the AWS API reference guide for AWS Ground Station's
334// API operation CreateMissionProfile for usage and error information.
335//
336// Returned Error Codes:
337//   * ErrCodeDependencyException "DependencyException"
338//   Dependency encountered an error.
339//
340//   * ErrCodeInvalidParameterException "InvalidParameterException"
341//   One or more parameters are not valid.
342//
343//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
344//   Resource was not found.
345//
346// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/CreateMissionProfile
347func (c *GroundStation) CreateMissionProfile(input *CreateMissionProfileInput) (*CreateMissionProfileOutput, error) {
348	req, out := c.CreateMissionProfileRequest(input)
349	return out, req.Send()
350}
351
352// CreateMissionProfileWithContext is the same as CreateMissionProfile with the addition of
353// the ability to pass a context and additional request options.
354//
355// See CreateMissionProfile for details on how to use this API operation.
356//
357// The context must be non-nil and will be used for request cancellation. If
358// the context is nil a panic will occur. In the future the SDK may create
359// sub-contexts for http.Requests. See https://golang.org/pkg/context/
360// for more information on using Contexts.
361func (c *GroundStation) CreateMissionProfileWithContext(ctx aws.Context, input *CreateMissionProfileInput, opts ...request.Option) (*CreateMissionProfileOutput, error) {
362	req, out := c.CreateMissionProfileRequest(input)
363	req.SetContext(ctx)
364	req.ApplyOptions(opts...)
365	return out, req.Send()
366}
367
368const opDeleteConfig = "DeleteConfig"
369
370// DeleteConfigRequest generates a "aws/request.Request" representing the
371// client's request for the DeleteConfig operation. The "output" return
372// value will be populated with the request's response once the request completes
373// successfully.
374//
375// Use "Send" method on the returned Request to send the API call to the service.
376// the "output" return value is not valid until after Send returns without error.
377//
378// See DeleteConfig for more information on using the DeleteConfig
379// API call, and error handling.
380//
381// This method is useful when you want to inject custom logic or configuration
382// into the SDK's request lifecycle. Such as custom headers, or retry logic.
383//
384//
385//    // Example sending a request using the DeleteConfigRequest method.
386//    req, resp := client.DeleteConfigRequest(params)
387//
388//    err := req.Send()
389//    if err == nil { // resp is now filled
390//        fmt.Println(resp)
391//    }
392//
393// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/DeleteConfig
394func (c *GroundStation) DeleteConfigRequest(input *DeleteConfigInput) (req *request.Request, output *DeleteConfigOutput) {
395	op := &request.Operation{
396		Name:       opDeleteConfig,
397		HTTPMethod: "DELETE",
398		HTTPPath:   "/config/{configType}/{configId}",
399	}
400
401	if input == nil {
402		input = &DeleteConfigInput{}
403	}
404
405	output = &DeleteConfigOutput{}
406	req = c.newRequest(op, input, output)
407	return
408}
409
410// DeleteConfig API operation for AWS Ground Station.
411//
412// Deletes a Config.
413//
414// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
415// with awserr.Error's Code and Message methods to get detailed information about
416// the error.
417//
418// See the AWS API reference guide for AWS Ground Station's
419// API operation DeleteConfig for usage and error information.
420//
421// Returned Error Codes:
422//   * ErrCodeDependencyException "DependencyException"
423//   Dependency encountered an error.
424//
425//   * ErrCodeInvalidParameterException "InvalidParameterException"
426//   One or more parameters are not valid.
427//
428//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
429//   Resource was not found.
430//
431// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/DeleteConfig
432func (c *GroundStation) DeleteConfig(input *DeleteConfigInput) (*DeleteConfigOutput, error) {
433	req, out := c.DeleteConfigRequest(input)
434	return out, req.Send()
435}
436
437// DeleteConfigWithContext is the same as DeleteConfig with the addition of
438// the ability to pass a context and additional request options.
439//
440// See DeleteConfig for details on how to use this API operation.
441//
442// The context must be non-nil and will be used for request cancellation. If
443// the context is nil a panic will occur. In the future the SDK may create
444// sub-contexts for http.Requests. See https://golang.org/pkg/context/
445// for more information on using Contexts.
446func (c *GroundStation) DeleteConfigWithContext(ctx aws.Context, input *DeleteConfigInput, opts ...request.Option) (*DeleteConfigOutput, error) {
447	req, out := c.DeleteConfigRequest(input)
448	req.SetContext(ctx)
449	req.ApplyOptions(opts...)
450	return out, req.Send()
451}
452
453const opDeleteDataflowEndpointGroup = "DeleteDataflowEndpointGroup"
454
455// DeleteDataflowEndpointGroupRequest generates a "aws/request.Request" representing the
456// client's request for the DeleteDataflowEndpointGroup operation. The "output" return
457// value will be populated with the request's response once the request completes
458// successfully.
459//
460// Use "Send" method on the returned Request to send the API call to the service.
461// the "output" return value is not valid until after Send returns without error.
462//
463// See DeleteDataflowEndpointGroup for more information on using the DeleteDataflowEndpointGroup
464// API call, and error handling.
465//
466// This method is useful when you want to inject custom logic or configuration
467// into the SDK's request lifecycle. Such as custom headers, or retry logic.
468//
469//
470//    // Example sending a request using the DeleteDataflowEndpointGroupRequest method.
471//    req, resp := client.DeleteDataflowEndpointGroupRequest(params)
472//
473//    err := req.Send()
474//    if err == nil { // resp is now filled
475//        fmt.Println(resp)
476//    }
477//
478// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/DeleteDataflowEndpointGroup
479func (c *GroundStation) DeleteDataflowEndpointGroupRequest(input *DeleteDataflowEndpointGroupInput) (req *request.Request, output *DeleteDataflowEndpointGroupOutput) {
480	op := &request.Operation{
481		Name:       opDeleteDataflowEndpointGroup,
482		HTTPMethod: "DELETE",
483		HTTPPath:   "/dataflowEndpointGroup/{dataflowEndpointGroupId}",
484	}
485
486	if input == nil {
487		input = &DeleteDataflowEndpointGroupInput{}
488	}
489
490	output = &DeleteDataflowEndpointGroupOutput{}
491	req = c.newRequest(op, input, output)
492	return
493}
494
495// DeleteDataflowEndpointGroup API operation for AWS Ground Station.
496//
497// Deletes a dataflow endpoint group.
498//
499// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
500// with awserr.Error's Code and Message methods to get detailed information about
501// the error.
502//
503// See the AWS API reference guide for AWS Ground Station's
504// API operation DeleteDataflowEndpointGroup for usage and error information.
505//
506// Returned Error Codes:
507//   * ErrCodeDependencyException "DependencyException"
508//   Dependency encountered an error.
509//
510//   * ErrCodeInvalidParameterException "InvalidParameterException"
511//   One or more parameters are not valid.
512//
513//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
514//   Resource was not found.
515//
516// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/DeleteDataflowEndpointGroup
517func (c *GroundStation) DeleteDataflowEndpointGroup(input *DeleteDataflowEndpointGroupInput) (*DeleteDataflowEndpointGroupOutput, error) {
518	req, out := c.DeleteDataflowEndpointGroupRequest(input)
519	return out, req.Send()
520}
521
522// DeleteDataflowEndpointGroupWithContext is the same as DeleteDataflowEndpointGroup with the addition of
523// the ability to pass a context and additional request options.
524//
525// See DeleteDataflowEndpointGroup for details on how to use this API operation.
526//
527// The context must be non-nil and will be used for request cancellation. If
528// the context is nil a panic will occur. In the future the SDK may create
529// sub-contexts for http.Requests. See https://golang.org/pkg/context/
530// for more information on using Contexts.
531func (c *GroundStation) DeleteDataflowEndpointGroupWithContext(ctx aws.Context, input *DeleteDataflowEndpointGroupInput, opts ...request.Option) (*DeleteDataflowEndpointGroupOutput, error) {
532	req, out := c.DeleteDataflowEndpointGroupRequest(input)
533	req.SetContext(ctx)
534	req.ApplyOptions(opts...)
535	return out, req.Send()
536}
537
538const opDeleteMissionProfile = "DeleteMissionProfile"
539
540// DeleteMissionProfileRequest generates a "aws/request.Request" representing the
541// client's request for the DeleteMissionProfile operation. The "output" return
542// value will be populated with the request's response once the request completes
543// successfully.
544//
545// Use "Send" method on the returned Request to send the API call to the service.
546// the "output" return value is not valid until after Send returns without error.
547//
548// See DeleteMissionProfile for more information on using the DeleteMissionProfile
549// API call, and error handling.
550//
551// This method is useful when you want to inject custom logic or configuration
552// into the SDK's request lifecycle. Such as custom headers, or retry logic.
553//
554//
555//    // Example sending a request using the DeleteMissionProfileRequest method.
556//    req, resp := client.DeleteMissionProfileRequest(params)
557//
558//    err := req.Send()
559//    if err == nil { // resp is now filled
560//        fmt.Println(resp)
561//    }
562//
563// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/DeleteMissionProfile
564func (c *GroundStation) DeleteMissionProfileRequest(input *DeleteMissionProfileInput) (req *request.Request, output *DeleteMissionProfileOutput) {
565	op := &request.Operation{
566		Name:       opDeleteMissionProfile,
567		HTTPMethod: "DELETE",
568		HTTPPath:   "/missionprofile/{missionProfileId}",
569	}
570
571	if input == nil {
572		input = &DeleteMissionProfileInput{}
573	}
574
575	output = &DeleteMissionProfileOutput{}
576	req = c.newRequest(op, input, output)
577	return
578}
579
580// DeleteMissionProfile API operation for AWS Ground Station.
581//
582// Deletes a mission profile.
583//
584// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
585// with awserr.Error's Code and Message methods to get detailed information about
586// the error.
587//
588// See the AWS API reference guide for AWS Ground Station's
589// API operation DeleteMissionProfile for usage and error information.
590//
591// Returned Error Codes:
592//   * ErrCodeDependencyException "DependencyException"
593//   Dependency encountered an error.
594//
595//   * ErrCodeInvalidParameterException "InvalidParameterException"
596//   One or more parameters are not valid.
597//
598//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
599//   Resource was not found.
600//
601// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/DeleteMissionProfile
602func (c *GroundStation) DeleteMissionProfile(input *DeleteMissionProfileInput) (*DeleteMissionProfileOutput, error) {
603	req, out := c.DeleteMissionProfileRequest(input)
604	return out, req.Send()
605}
606
607// DeleteMissionProfileWithContext is the same as DeleteMissionProfile with the addition of
608// the ability to pass a context and additional request options.
609//
610// See DeleteMissionProfile for details on how to use this API operation.
611//
612// The context must be non-nil and will be used for request cancellation. If
613// the context is nil a panic will occur. In the future the SDK may create
614// sub-contexts for http.Requests. See https://golang.org/pkg/context/
615// for more information on using Contexts.
616func (c *GroundStation) DeleteMissionProfileWithContext(ctx aws.Context, input *DeleteMissionProfileInput, opts ...request.Option) (*DeleteMissionProfileOutput, error) {
617	req, out := c.DeleteMissionProfileRequest(input)
618	req.SetContext(ctx)
619	req.ApplyOptions(opts...)
620	return out, req.Send()
621}
622
623const opDescribeContact = "DescribeContact"
624
625// DescribeContactRequest generates a "aws/request.Request" representing the
626// client's request for the DescribeContact operation. The "output" return
627// value will be populated with the request's response once the request completes
628// successfully.
629//
630// Use "Send" method on the returned Request to send the API call to the service.
631// the "output" return value is not valid until after Send returns without error.
632//
633// See DescribeContact for more information on using the DescribeContact
634// API call, and error handling.
635//
636// This method is useful when you want to inject custom logic or configuration
637// into the SDK's request lifecycle. Such as custom headers, or retry logic.
638//
639//
640//    // Example sending a request using the DescribeContactRequest method.
641//    req, resp := client.DescribeContactRequest(params)
642//
643//    err := req.Send()
644//    if err == nil { // resp is now filled
645//        fmt.Println(resp)
646//    }
647//
648// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/DescribeContact
649func (c *GroundStation) DescribeContactRequest(input *DescribeContactInput) (req *request.Request, output *DescribeContactOutput) {
650	op := &request.Operation{
651		Name:       opDescribeContact,
652		HTTPMethod: "GET",
653		HTTPPath:   "/contact/{contactId}",
654	}
655
656	if input == nil {
657		input = &DescribeContactInput{}
658	}
659
660	output = &DescribeContactOutput{}
661	req = c.newRequest(op, input, output)
662	return
663}
664
665// DescribeContact API operation for AWS Ground Station.
666//
667// Describes an existing contact.
668//
669// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
670// with awserr.Error's Code and Message methods to get detailed information about
671// the error.
672//
673// See the AWS API reference guide for AWS Ground Station's
674// API operation DescribeContact for usage and error information.
675//
676// Returned Error Codes:
677//   * ErrCodeDependencyException "DependencyException"
678//   Dependency encountered an error.
679//
680//   * ErrCodeInvalidParameterException "InvalidParameterException"
681//   One or more parameters are not valid.
682//
683//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
684//   Resource was not found.
685//
686// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/DescribeContact
687func (c *GroundStation) DescribeContact(input *DescribeContactInput) (*DescribeContactOutput, error) {
688	req, out := c.DescribeContactRequest(input)
689	return out, req.Send()
690}
691
692// DescribeContactWithContext is the same as DescribeContact with the addition of
693// the ability to pass a context and additional request options.
694//
695// See DescribeContact for details on how to use this API operation.
696//
697// The context must be non-nil and will be used for request cancellation. If
698// the context is nil a panic will occur. In the future the SDK may create
699// sub-contexts for http.Requests. See https://golang.org/pkg/context/
700// for more information on using Contexts.
701func (c *GroundStation) DescribeContactWithContext(ctx aws.Context, input *DescribeContactInput, opts ...request.Option) (*DescribeContactOutput, error) {
702	req, out := c.DescribeContactRequest(input)
703	req.SetContext(ctx)
704	req.ApplyOptions(opts...)
705	return out, req.Send()
706}
707
708const opGetConfig = "GetConfig"
709
710// GetConfigRequest generates a "aws/request.Request" representing the
711// client's request for the GetConfig operation. The "output" return
712// value will be populated with the request's response once the request completes
713// successfully.
714//
715// Use "Send" method on the returned Request to send the API call to the service.
716// the "output" return value is not valid until after Send returns without error.
717//
718// See GetConfig for more information on using the GetConfig
719// API call, and error handling.
720//
721// This method is useful when you want to inject custom logic or configuration
722// into the SDK's request lifecycle. Such as custom headers, or retry logic.
723//
724//
725//    // Example sending a request using the GetConfigRequest method.
726//    req, resp := client.GetConfigRequest(params)
727//
728//    err := req.Send()
729//    if err == nil { // resp is now filled
730//        fmt.Println(resp)
731//    }
732//
733// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/GetConfig
734func (c *GroundStation) GetConfigRequest(input *GetConfigInput) (req *request.Request, output *GetConfigOutput) {
735	op := &request.Operation{
736		Name:       opGetConfig,
737		HTTPMethod: "GET",
738		HTTPPath:   "/config/{configType}/{configId}",
739	}
740
741	if input == nil {
742		input = &GetConfigInput{}
743	}
744
745	output = &GetConfigOutput{}
746	req = c.newRequest(op, input, output)
747	return
748}
749
750// GetConfig API operation for AWS Ground Station.
751//
752// Returns Config information.
753//
754// Only one Config response can be returned.
755//
756// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
757// with awserr.Error's Code and Message methods to get detailed information about
758// the error.
759//
760// See the AWS API reference guide for AWS Ground Station's
761// API operation GetConfig for usage and error information.
762//
763// Returned Error Codes:
764//   * ErrCodeDependencyException "DependencyException"
765//   Dependency encountered an error.
766//
767//   * ErrCodeInvalidParameterException "InvalidParameterException"
768//   One or more parameters are not valid.
769//
770//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
771//   Resource was not found.
772//
773// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/GetConfig
774func (c *GroundStation) GetConfig(input *GetConfigInput) (*GetConfigOutput, error) {
775	req, out := c.GetConfigRequest(input)
776	return out, req.Send()
777}
778
779// GetConfigWithContext is the same as GetConfig with the addition of
780// the ability to pass a context and additional request options.
781//
782// See GetConfig for details on how to use this API operation.
783//
784// The context must be non-nil and will be used for request cancellation. If
785// the context is nil a panic will occur. In the future the SDK may create
786// sub-contexts for http.Requests. See https://golang.org/pkg/context/
787// for more information on using Contexts.
788func (c *GroundStation) GetConfigWithContext(ctx aws.Context, input *GetConfigInput, opts ...request.Option) (*GetConfigOutput, error) {
789	req, out := c.GetConfigRequest(input)
790	req.SetContext(ctx)
791	req.ApplyOptions(opts...)
792	return out, req.Send()
793}
794
795const opGetDataflowEndpointGroup = "GetDataflowEndpointGroup"
796
797// GetDataflowEndpointGroupRequest generates a "aws/request.Request" representing the
798// client's request for the GetDataflowEndpointGroup operation. The "output" return
799// value will be populated with the request's response once the request completes
800// successfully.
801//
802// Use "Send" method on the returned Request to send the API call to the service.
803// the "output" return value is not valid until after Send returns without error.
804//
805// See GetDataflowEndpointGroup for more information on using the GetDataflowEndpointGroup
806// API call, and error handling.
807//
808// This method is useful when you want to inject custom logic or configuration
809// into the SDK's request lifecycle. Such as custom headers, or retry logic.
810//
811//
812//    // Example sending a request using the GetDataflowEndpointGroupRequest method.
813//    req, resp := client.GetDataflowEndpointGroupRequest(params)
814//
815//    err := req.Send()
816//    if err == nil { // resp is now filled
817//        fmt.Println(resp)
818//    }
819//
820// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/GetDataflowEndpointGroup
821func (c *GroundStation) GetDataflowEndpointGroupRequest(input *GetDataflowEndpointGroupInput) (req *request.Request, output *GetDataflowEndpointGroupOutput) {
822	op := &request.Operation{
823		Name:       opGetDataflowEndpointGroup,
824		HTTPMethod: "GET",
825		HTTPPath:   "/dataflowEndpointGroup/{dataflowEndpointGroupId}",
826	}
827
828	if input == nil {
829		input = &GetDataflowEndpointGroupInput{}
830	}
831
832	output = &GetDataflowEndpointGroupOutput{}
833	req = c.newRequest(op, input, output)
834	return
835}
836
837// GetDataflowEndpointGroup API operation for AWS Ground Station.
838//
839// Returns the dataflow endpoint group.
840//
841// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
842// with awserr.Error's Code and Message methods to get detailed information about
843// the error.
844//
845// See the AWS API reference guide for AWS Ground Station's
846// API operation GetDataflowEndpointGroup for usage and error information.
847//
848// Returned Error Codes:
849//   * ErrCodeDependencyException "DependencyException"
850//   Dependency encountered an error.
851//
852//   * ErrCodeInvalidParameterException "InvalidParameterException"
853//   One or more parameters are not valid.
854//
855//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
856//   Resource was not found.
857//
858// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/GetDataflowEndpointGroup
859func (c *GroundStation) GetDataflowEndpointGroup(input *GetDataflowEndpointGroupInput) (*GetDataflowEndpointGroupOutput, error) {
860	req, out := c.GetDataflowEndpointGroupRequest(input)
861	return out, req.Send()
862}
863
864// GetDataflowEndpointGroupWithContext is the same as GetDataflowEndpointGroup with the addition of
865// the ability to pass a context and additional request options.
866//
867// See GetDataflowEndpointGroup for details on how to use this API operation.
868//
869// The context must be non-nil and will be used for request cancellation. If
870// the context is nil a panic will occur. In the future the SDK may create
871// sub-contexts for http.Requests. See https://golang.org/pkg/context/
872// for more information on using Contexts.
873func (c *GroundStation) GetDataflowEndpointGroupWithContext(ctx aws.Context, input *GetDataflowEndpointGroupInput, opts ...request.Option) (*GetDataflowEndpointGroupOutput, error) {
874	req, out := c.GetDataflowEndpointGroupRequest(input)
875	req.SetContext(ctx)
876	req.ApplyOptions(opts...)
877	return out, req.Send()
878}
879
880const opGetMinuteUsage = "GetMinuteUsage"
881
882// GetMinuteUsageRequest generates a "aws/request.Request" representing the
883// client's request for the GetMinuteUsage operation. The "output" return
884// value will be populated with the request's response once the request completes
885// successfully.
886//
887// Use "Send" method on the returned Request to send the API call to the service.
888// the "output" return value is not valid until after Send returns without error.
889//
890// See GetMinuteUsage for more information on using the GetMinuteUsage
891// API call, and error handling.
892//
893// This method is useful when you want to inject custom logic or configuration
894// into the SDK's request lifecycle. Such as custom headers, or retry logic.
895//
896//
897//    // Example sending a request using the GetMinuteUsageRequest method.
898//    req, resp := client.GetMinuteUsageRequest(params)
899//
900//    err := req.Send()
901//    if err == nil { // resp is now filled
902//        fmt.Println(resp)
903//    }
904//
905// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/GetMinuteUsage
906func (c *GroundStation) GetMinuteUsageRequest(input *GetMinuteUsageInput) (req *request.Request, output *GetMinuteUsageOutput) {
907	op := &request.Operation{
908		Name:       opGetMinuteUsage,
909		HTTPMethod: "POST",
910		HTTPPath:   "/minute-usage",
911	}
912
913	if input == nil {
914		input = &GetMinuteUsageInput{}
915	}
916
917	output = &GetMinuteUsageOutput{}
918	req = c.newRequest(op, input, output)
919	return
920}
921
922// GetMinuteUsage API operation for AWS Ground Station.
923//
924// Returns the number of minutes used by account.
925//
926// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
927// with awserr.Error's Code and Message methods to get detailed information about
928// the error.
929//
930// See the AWS API reference guide for AWS Ground Station's
931// API operation GetMinuteUsage for usage and error information.
932//
933// Returned Error Codes:
934//   * ErrCodeDependencyException "DependencyException"
935//   Dependency encountered an error.
936//
937//   * ErrCodeInvalidParameterException "InvalidParameterException"
938//   One or more parameters are not valid.
939//
940//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
941//   Resource was not found.
942//
943// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/GetMinuteUsage
944func (c *GroundStation) GetMinuteUsage(input *GetMinuteUsageInput) (*GetMinuteUsageOutput, error) {
945	req, out := c.GetMinuteUsageRequest(input)
946	return out, req.Send()
947}
948
949// GetMinuteUsageWithContext is the same as GetMinuteUsage with the addition of
950// the ability to pass a context and additional request options.
951//
952// See GetMinuteUsage for details on how to use this API operation.
953//
954// The context must be non-nil and will be used for request cancellation. If
955// the context is nil a panic will occur. In the future the SDK may create
956// sub-contexts for http.Requests. See https://golang.org/pkg/context/
957// for more information on using Contexts.
958func (c *GroundStation) GetMinuteUsageWithContext(ctx aws.Context, input *GetMinuteUsageInput, opts ...request.Option) (*GetMinuteUsageOutput, error) {
959	req, out := c.GetMinuteUsageRequest(input)
960	req.SetContext(ctx)
961	req.ApplyOptions(opts...)
962	return out, req.Send()
963}
964
965const opGetMissionProfile = "GetMissionProfile"
966
967// GetMissionProfileRequest generates a "aws/request.Request" representing the
968// client's request for the GetMissionProfile operation. The "output" return
969// value will be populated with the request's response once the request completes
970// successfully.
971//
972// Use "Send" method on the returned Request to send the API call to the service.
973// the "output" return value is not valid until after Send returns without error.
974//
975// See GetMissionProfile for more information on using the GetMissionProfile
976// API call, and error handling.
977//
978// This method is useful when you want to inject custom logic or configuration
979// into the SDK's request lifecycle. Such as custom headers, or retry logic.
980//
981//
982//    // Example sending a request using the GetMissionProfileRequest method.
983//    req, resp := client.GetMissionProfileRequest(params)
984//
985//    err := req.Send()
986//    if err == nil { // resp is now filled
987//        fmt.Println(resp)
988//    }
989//
990// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/GetMissionProfile
991func (c *GroundStation) GetMissionProfileRequest(input *GetMissionProfileInput) (req *request.Request, output *GetMissionProfileOutput) {
992	op := &request.Operation{
993		Name:       opGetMissionProfile,
994		HTTPMethod: "GET",
995		HTTPPath:   "/missionprofile/{missionProfileId}",
996	}
997
998	if input == nil {
999		input = &GetMissionProfileInput{}
1000	}
1001
1002	output = &GetMissionProfileOutput{}
1003	req = c.newRequest(op, input, output)
1004	return
1005}
1006
1007// GetMissionProfile API operation for AWS Ground Station.
1008//
1009// Returns a mission profile.
1010//
1011// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1012// with awserr.Error's Code and Message methods to get detailed information about
1013// the error.
1014//
1015// See the AWS API reference guide for AWS Ground Station's
1016// API operation GetMissionProfile for usage and error information.
1017//
1018// Returned Error Codes:
1019//   * ErrCodeDependencyException "DependencyException"
1020//   Dependency encountered an error.
1021//
1022//   * ErrCodeInvalidParameterException "InvalidParameterException"
1023//   One or more parameters are not valid.
1024//
1025//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
1026//   Resource was not found.
1027//
1028// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/GetMissionProfile
1029func (c *GroundStation) GetMissionProfile(input *GetMissionProfileInput) (*GetMissionProfileOutput, error) {
1030	req, out := c.GetMissionProfileRequest(input)
1031	return out, req.Send()
1032}
1033
1034// GetMissionProfileWithContext is the same as GetMissionProfile with the addition of
1035// the ability to pass a context and additional request options.
1036//
1037// See GetMissionProfile for details on how to use this API operation.
1038//
1039// The context must be non-nil and will be used for request cancellation. If
1040// the context is nil a panic will occur. In the future the SDK may create
1041// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1042// for more information on using Contexts.
1043func (c *GroundStation) GetMissionProfileWithContext(ctx aws.Context, input *GetMissionProfileInput, opts ...request.Option) (*GetMissionProfileOutput, error) {
1044	req, out := c.GetMissionProfileRequest(input)
1045	req.SetContext(ctx)
1046	req.ApplyOptions(opts...)
1047	return out, req.Send()
1048}
1049
1050const opGetSatellite = "GetSatellite"
1051
1052// GetSatelliteRequest generates a "aws/request.Request" representing the
1053// client's request for the GetSatellite operation. The "output" return
1054// value will be populated with the request's response once the request completes
1055// successfully.
1056//
1057// Use "Send" method on the returned Request to send the API call to the service.
1058// the "output" return value is not valid until after Send returns without error.
1059//
1060// See GetSatellite for more information on using the GetSatellite
1061// API call, and error handling.
1062//
1063// This method is useful when you want to inject custom logic or configuration
1064// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1065//
1066//
1067//    // Example sending a request using the GetSatelliteRequest method.
1068//    req, resp := client.GetSatelliteRequest(params)
1069//
1070//    err := req.Send()
1071//    if err == nil { // resp is now filled
1072//        fmt.Println(resp)
1073//    }
1074//
1075// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/GetSatellite
1076func (c *GroundStation) GetSatelliteRequest(input *GetSatelliteInput) (req *request.Request, output *GetSatelliteOutput) {
1077	op := &request.Operation{
1078		Name:       opGetSatellite,
1079		HTTPMethod: "GET",
1080		HTTPPath:   "/satellite/{satelliteId}",
1081	}
1082
1083	if input == nil {
1084		input = &GetSatelliteInput{}
1085	}
1086
1087	output = &GetSatelliteOutput{}
1088	req = c.newRequest(op, input, output)
1089	return
1090}
1091
1092// GetSatellite API operation for AWS Ground Station.
1093//
1094// Returns a satellite.
1095//
1096// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1097// with awserr.Error's Code and Message methods to get detailed information about
1098// the error.
1099//
1100// See the AWS API reference guide for AWS Ground Station's
1101// API operation GetSatellite for usage and error information.
1102//
1103// Returned Error Codes:
1104//   * ErrCodeDependencyException "DependencyException"
1105//   Dependency encountered an error.
1106//
1107//   * ErrCodeInvalidParameterException "InvalidParameterException"
1108//   One or more parameters are not valid.
1109//
1110//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
1111//   Resource was not found.
1112//
1113// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/GetSatellite
1114func (c *GroundStation) GetSatellite(input *GetSatelliteInput) (*GetSatelliteOutput, error) {
1115	req, out := c.GetSatelliteRequest(input)
1116	return out, req.Send()
1117}
1118
1119// GetSatelliteWithContext is the same as GetSatellite with the addition of
1120// the ability to pass a context and additional request options.
1121//
1122// See GetSatellite for details on how to use this API operation.
1123//
1124// The context must be non-nil and will be used for request cancellation. If
1125// the context is nil a panic will occur. In the future the SDK may create
1126// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1127// for more information on using Contexts.
1128func (c *GroundStation) GetSatelliteWithContext(ctx aws.Context, input *GetSatelliteInput, opts ...request.Option) (*GetSatelliteOutput, error) {
1129	req, out := c.GetSatelliteRequest(input)
1130	req.SetContext(ctx)
1131	req.ApplyOptions(opts...)
1132	return out, req.Send()
1133}
1134
1135const opListConfigs = "ListConfigs"
1136
1137// ListConfigsRequest generates a "aws/request.Request" representing the
1138// client's request for the ListConfigs operation. The "output" return
1139// value will be populated with the request's response once the request completes
1140// successfully.
1141//
1142// Use "Send" method on the returned Request to send the API call to the service.
1143// the "output" return value is not valid until after Send returns without error.
1144//
1145// See ListConfigs for more information on using the ListConfigs
1146// API call, and error handling.
1147//
1148// This method is useful when you want to inject custom logic or configuration
1149// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1150//
1151//
1152//    // Example sending a request using the ListConfigsRequest method.
1153//    req, resp := client.ListConfigsRequest(params)
1154//
1155//    err := req.Send()
1156//    if err == nil { // resp is now filled
1157//        fmt.Println(resp)
1158//    }
1159//
1160// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListConfigs
1161func (c *GroundStation) ListConfigsRequest(input *ListConfigsInput) (req *request.Request, output *ListConfigsOutput) {
1162	op := &request.Operation{
1163		Name:       opListConfigs,
1164		HTTPMethod: "GET",
1165		HTTPPath:   "/config",
1166		Paginator: &request.Paginator{
1167			InputTokens:     []string{"nextToken"},
1168			OutputTokens:    []string{"nextToken"},
1169			LimitToken:      "maxResults",
1170			TruncationToken: "",
1171		},
1172	}
1173
1174	if input == nil {
1175		input = &ListConfigsInput{}
1176	}
1177
1178	output = &ListConfigsOutput{}
1179	req = c.newRequest(op, input, output)
1180	return
1181}
1182
1183// ListConfigs API operation for AWS Ground Station.
1184//
1185// Returns a list of Config objects.
1186//
1187// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1188// with awserr.Error's Code and Message methods to get detailed information about
1189// the error.
1190//
1191// See the AWS API reference guide for AWS Ground Station's
1192// API operation ListConfigs for usage and error information.
1193//
1194// Returned Error Codes:
1195//   * ErrCodeDependencyException "DependencyException"
1196//   Dependency encountered an error.
1197//
1198//   * ErrCodeInvalidParameterException "InvalidParameterException"
1199//   One or more parameters are not valid.
1200//
1201//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
1202//   Resource was not found.
1203//
1204// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListConfigs
1205func (c *GroundStation) ListConfigs(input *ListConfigsInput) (*ListConfigsOutput, error) {
1206	req, out := c.ListConfigsRequest(input)
1207	return out, req.Send()
1208}
1209
1210// ListConfigsWithContext is the same as ListConfigs with the addition of
1211// the ability to pass a context and additional request options.
1212//
1213// See ListConfigs for details on how to use this API operation.
1214//
1215// The context must be non-nil and will be used for request cancellation. If
1216// the context is nil a panic will occur. In the future the SDK may create
1217// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1218// for more information on using Contexts.
1219func (c *GroundStation) ListConfigsWithContext(ctx aws.Context, input *ListConfigsInput, opts ...request.Option) (*ListConfigsOutput, error) {
1220	req, out := c.ListConfigsRequest(input)
1221	req.SetContext(ctx)
1222	req.ApplyOptions(opts...)
1223	return out, req.Send()
1224}
1225
1226// ListConfigsPages iterates over the pages of a ListConfigs operation,
1227// calling the "fn" function with the response data for each page. To stop
1228// iterating, return false from the fn function.
1229//
1230// See ListConfigs method for more information on how to use this operation.
1231//
1232// Note: This operation can generate multiple requests to a service.
1233//
1234//    // Example iterating over at most 3 pages of a ListConfigs operation.
1235//    pageNum := 0
1236//    err := client.ListConfigsPages(params,
1237//        func(page *groundstation.ListConfigsOutput, lastPage bool) bool {
1238//            pageNum++
1239//            fmt.Println(page)
1240//            return pageNum <= 3
1241//        })
1242//
1243func (c *GroundStation) ListConfigsPages(input *ListConfigsInput, fn func(*ListConfigsOutput, bool) bool) error {
1244	return c.ListConfigsPagesWithContext(aws.BackgroundContext(), input, fn)
1245}
1246
1247// ListConfigsPagesWithContext same as ListConfigsPages except
1248// it takes a Context and allows setting request options on the pages.
1249//
1250// The context must be non-nil and will be used for request cancellation. If
1251// the context is nil a panic will occur. In the future the SDK may create
1252// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1253// for more information on using Contexts.
1254func (c *GroundStation) ListConfigsPagesWithContext(ctx aws.Context, input *ListConfigsInput, fn func(*ListConfigsOutput, bool) bool, opts ...request.Option) error {
1255	p := request.Pagination{
1256		NewRequest: func() (*request.Request, error) {
1257			var inCpy *ListConfigsInput
1258			if input != nil {
1259				tmp := *input
1260				inCpy = &tmp
1261			}
1262			req, _ := c.ListConfigsRequest(inCpy)
1263			req.SetContext(ctx)
1264			req.ApplyOptions(opts...)
1265			return req, nil
1266		},
1267	}
1268
1269	for p.Next() {
1270		if !fn(p.Page().(*ListConfigsOutput), !p.HasNextPage()) {
1271			break
1272		}
1273	}
1274
1275	return p.Err()
1276}
1277
1278const opListContacts = "ListContacts"
1279
1280// ListContactsRequest generates a "aws/request.Request" representing the
1281// client's request for the ListContacts operation. The "output" return
1282// value will be populated with the request's response once the request completes
1283// successfully.
1284//
1285// Use "Send" method on the returned Request to send the API call to the service.
1286// the "output" return value is not valid until after Send returns without error.
1287//
1288// See ListContacts for more information on using the ListContacts
1289// API call, and error handling.
1290//
1291// This method is useful when you want to inject custom logic or configuration
1292// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1293//
1294//
1295//    // Example sending a request using the ListContactsRequest method.
1296//    req, resp := client.ListContactsRequest(params)
1297//
1298//    err := req.Send()
1299//    if err == nil { // resp is now filled
1300//        fmt.Println(resp)
1301//    }
1302//
1303// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListContacts
1304func (c *GroundStation) ListContactsRequest(input *ListContactsInput) (req *request.Request, output *ListContactsOutput) {
1305	op := &request.Operation{
1306		Name:       opListContacts,
1307		HTTPMethod: "POST",
1308		HTTPPath:   "/contacts",
1309		Paginator: &request.Paginator{
1310			InputTokens:     []string{"nextToken"},
1311			OutputTokens:    []string{"nextToken"},
1312			LimitToken:      "maxResults",
1313			TruncationToken: "",
1314		},
1315	}
1316
1317	if input == nil {
1318		input = &ListContactsInput{}
1319	}
1320
1321	output = &ListContactsOutput{}
1322	req = c.newRequest(op, input, output)
1323	return
1324}
1325
1326// ListContacts API operation for AWS Ground Station.
1327//
1328// Returns a list of contacts.
1329//
1330// If statusList contains AVAILABLE, the request must include groundstation,
1331// missionprofileArn, and satelliteArn.
1332//
1333// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1334// with awserr.Error's Code and Message methods to get detailed information about
1335// the error.
1336//
1337// See the AWS API reference guide for AWS Ground Station's
1338// API operation ListContacts for usage and error information.
1339//
1340// Returned Error Codes:
1341//   * ErrCodeDependencyException "DependencyException"
1342//   Dependency encountered an error.
1343//
1344//   * ErrCodeInvalidParameterException "InvalidParameterException"
1345//   One or more parameters are not valid.
1346//
1347//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
1348//   Resource was not found.
1349//
1350// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListContacts
1351func (c *GroundStation) ListContacts(input *ListContactsInput) (*ListContactsOutput, error) {
1352	req, out := c.ListContactsRequest(input)
1353	return out, req.Send()
1354}
1355
1356// ListContactsWithContext is the same as ListContacts with the addition of
1357// the ability to pass a context and additional request options.
1358//
1359// See ListContacts for details on how to use this API operation.
1360//
1361// The context must be non-nil and will be used for request cancellation. If
1362// the context is nil a panic will occur. In the future the SDK may create
1363// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1364// for more information on using Contexts.
1365func (c *GroundStation) ListContactsWithContext(ctx aws.Context, input *ListContactsInput, opts ...request.Option) (*ListContactsOutput, error) {
1366	req, out := c.ListContactsRequest(input)
1367	req.SetContext(ctx)
1368	req.ApplyOptions(opts...)
1369	return out, req.Send()
1370}
1371
1372// ListContactsPages iterates over the pages of a ListContacts operation,
1373// calling the "fn" function with the response data for each page. To stop
1374// iterating, return false from the fn function.
1375//
1376// See ListContacts method for more information on how to use this operation.
1377//
1378// Note: This operation can generate multiple requests to a service.
1379//
1380//    // Example iterating over at most 3 pages of a ListContacts operation.
1381//    pageNum := 0
1382//    err := client.ListContactsPages(params,
1383//        func(page *groundstation.ListContactsOutput, lastPage bool) bool {
1384//            pageNum++
1385//            fmt.Println(page)
1386//            return pageNum <= 3
1387//        })
1388//
1389func (c *GroundStation) ListContactsPages(input *ListContactsInput, fn func(*ListContactsOutput, bool) bool) error {
1390	return c.ListContactsPagesWithContext(aws.BackgroundContext(), input, fn)
1391}
1392
1393// ListContactsPagesWithContext same as ListContactsPages except
1394// it takes a Context and allows setting request options on the pages.
1395//
1396// The context must be non-nil and will be used for request cancellation. If
1397// the context is nil a panic will occur. In the future the SDK may create
1398// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1399// for more information on using Contexts.
1400func (c *GroundStation) ListContactsPagesWithContext(ctx aws.Context, input *ListContactsInput, fn func(*ListContactsOutput, bool) bool, opts ...request.Option) error {
1401	p := request.Pagination{
1402		NewRequest: func() (*request.Request, error) {
1403			var inCpy *ListContactsInput
1404			if input != nil {
1405				tmp := *input
1406				inCpy = &tmp
1407			}
1408			req, _ := c.ListContactsRequest(inCpy)
1409			req.SetContext(ctx)
1410			req.ApplyOptions(opts...)
1411			return req, nil
1412		},
1413	}
1414
1415	for p.Next() {
1416		if !fn(p.Page().(*ListContactsOutput), !p.HasNextPage()) {
1417			break
1418		}
1419	}
1420
1421	return p.Err()
1422}
1423
1424const opListDataflowEndpointGroups = "ListDataflowEndpointGroups"
1425
1426// ListDataflowEndpointGroupsRequest generates a "aws/request.Request" representing the
1427// client's request for the ListDataflowEndpointGroups operation. The "output" return
1428// value will be populated with the request's response once the request completes
1429// successfully.
1430//
1431// Use "Send" method on the returned Request to send the API call to the service.
1432// the "output" return value is not valid until after Send returns without error.
1433//
1434// See ListDataflowEndpointGroups for more information on using the ListDataflowEndpointGroups
1435// API call, and error handling.
1436//
1437// This method is useful when you want to inject custom logic or configuration
1438// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1439//
1440//
1441//    // Example sending a request using the ListDataflowEndpointGroupsRequest method.
1442//    req, resp := client.ListDataflowEndpointGroupsRequest(params)
1443//
1444//    err := req.Send()
1445//    if err == nil { // resp is now filled
1446//        fmt.Println(resp)
1447//    }
1448//
1449// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListDataflowEndpointGroups
1450func (c *GroundStation) ListDataflowEndpointGroupsRequest(input *ListDataflowEndpointGroupsInput) (req *request.Request, output *ListDataflowEndpointGroupsOutput) {
1451	op := &request.Operation{
1452		Name:       opListDataflowEndpointGroups,
1453		HTTPMethod: "GET",
1454		HTTPPath:   "/dataflowEndpointGroup",
1455		Paginator: &request.Paginator{
1456			InputTokens:     []string{"nextToken"},
1457			OutputTokens:    []string{"nextToken"},
1458			LimitToken:      "maxResults",
1459			TruncationToken: "",
1460		},
1461	}
1462
1463	if input == nil {
1464		input = &ListDataflowEndpointGroupsInput{}
1465	}
1466
1467	output = &ListDataflowEndpointGroupsOutput{}
1468	req = c.newRequest(op, input, output)
1469	return
1470}
1471
1472// ListDataflowEndpointGroups API operation for AWS Ground Station.
1473//
1474// Returns a list of DataflowEndpoint groups.
1475//
1476// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1477// with awserr.Error's Code and Message methods to get detailed information about
1478// the error.
1479//
1480// See the AWS API reference guide for AWS Ground Station's
1481// API operation ListDataflowEndpointGroups for usage and error information.
1482//
1483// Returned Error Codes:
1484//   * ErrCodeDependencyException "DependencyException"
1485//   Dependency encountered an error.
1486//
1487//   * ErrCodeInvalidParameterException "InvalidParameterException"
1488//   One or more parameters are not valid.
1489//
1490//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
1491//   Resource was not found.
1492//
1493// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListDataflowEndpointGroups
1494func (c *GroundStation) ListDataflowEndpointGroups(input *ListDataflowEndpointGroupsInput) (*ListDataflowEndpointGroupsOutput, error) {
1495	req, out := c.ListDataflowEndpointGroupsRequest(input)
1496	return out, req.Send()
1497}
1498
1499// ListDataflowEndpointGroupsWithContext is the same as ListDataflowEndpointGroups with the addition of
1500// the ability to pass a context and additional request options.
1501//
1502// See ListDataflowEndpointGroups for details on how to use this API operation.
1503//
1504// The context must be non-nil and will be used for request cancellation. If
1505// the context is nil a panic will occur. In the future the SDK may create
1506// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1507// for more information on using Contexts.
1508func (c *GroundStation) ListDataflowEndpointGroupsWithContext(ctx aws.Context, input *ListDataflowEndpointGroupsInput, opts ...request.Option) (*ListDataflowEndpointGroupsOutput, error) {
1509	req, out := c.ListDataflowEndpointGroupsRequest(input)
1510	req.SetContext(ctx)
1511	req.ApplyOptions(opts...)
1512	return out, req.Send()
1513}
1514
1515// ListDataflowEndpointGroupsPages iterates over the pages of a ListDataflowEndpointGroups operation,
1516// calling the "fn" function with the response data for each page. To stop
1517// iterating, return false from the fn function.
1518//
1519// See ListDataflowEndpointGroups method for more information on how to use this operation.
1520//
1521// Note: This operation can generate multiple requests to a service.
1522//
1523//    // Example iterating over at most 3 pages of a ListDataflowEndpointGroups operation.
1524//    pageNum := 0
1525//    err := client.ListDataflowEndpointGroupsPages(params,
1526//        func(page *groundstation.ListDataflowEndpointGroupsOutput, lastPage bool) bool {
1527//            pageNum++
1528//            fmt.Println(page)
1529//            return pageNum <= 3
1530//        })
1531//
1532func (c *GroundStation) ListDataflowEndpointGroupsPages(input *ListDataflowEndpointGroupsInput, fn func(*ListDataflowEndpointGroupsOutput, bool) bool) error {
1533	return c.ListDataflowEndpointGroupsPagesWithContext(aws.BackgroundContext(), input, fn)
1534}
1535
1536// ListDataflowEndpointGroupsPagesWithContext same as ListDataflowEndpointGroupsPages except
1537// it takes a Context and allows setting request options on the pages.
1538//
1539// The context must be non-nil and will be used for request cancellation. If
1540// the context is nil a panic will occur. In the future the SDK may create
1541// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1542// for more information on using Contexts.
1543func (c *GroundStation) ListDataflowEndpointGroupsPagesWithContext(ctx aws.Context, input *ListDataflowEndpointGroupsInput, fn func(*ListDataflowEndpointGroupsOutput, bool) bool, opts ...request.Option) error {
1544	p := request.Pagination{
1545		NewRequest: func() (*request.Request, error) {
1546			var inCpy *ListDataflowEndpointGroupsInput
1547			if input != nil {
1548				tmp := *input
1549				inCpy = &tmp
1550			}
1551			req, _ := c.ListDataflowEndpointGroupsRequest(inCpy)
1552			req.SetContext(ctx)
1553			req.ApplyOptions(opts...)
1554			return req, nil
1555		},
1556	}
1557
1558	for p.Next() {
1559		if !fn(p.Page().(*ListDataflowEndpointGroupsOutput), !p.HasNextPage()) {
1560			break
1561		}
1562	}
1563
1564	return p.Err()
1565}
1566
1567const opListGroundStations = "ListGroundStations"
1568
1569// ListGroundStationsRequest generates a "aws/request.Request" representing the
1570// client's request for the ListGroundStations operation. The "output" return
1571// value will be populated with the request's response once the request completes
1572// successfully.
1573//
1574// Use "Send" method on the returned Request to send the API call to the service.
1575// the "output" return value is not valid until after Send returns without error.
1576//
1577// See ListGroundStations for more information on using the ListGroundStations
1578// API call, and error handling.
1579//
1580// This method is useful when you want to inject custom logic or configuration
1581// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1582//
1583//
1584//    // Example sending a request using the ListGroundStationsRequest method.
1585//    req, resp := client.ListGroundStationsRequest(params)
1586//
1587//    err := req.Send()
1588//    if err == nil { // resp is now filled
1589//        fmt.Println(resp)
1590//    }
1591//
1592// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListGroundStations
1593func (c *GroundStation) ListGroundStationsRequest(input *ListGroundStationsInput) (req *request.Request, output *ListGroundStationsOutput) {
1594	op := &request.Operation{
1595		Name:       opListGroundStations,
1596		HTTPMethod: "GET",
1597		HTTPPath:   "/groundstation",
1598		Paginator: &request.Paginator{
1599			InputTokens:     []string{"nextToken"},
1600			OutputTokens:    []string{"nextToken"},
1601			LimitToken:      "maxResults",
1602			TruncationToken: "",
1603		},
1604	}
1605
1606	if input == nil {
1607		input = &ListGroundStationsInput{}
1608	}
1609
1610	output = &ListGroundStationsOutput{}
1611	req = c.newRequest(op, input, output)
1612	return
1613}
1614
1615// ListGroundStations API operation for AWS Ground Station.
1616//
1617// Returns a list of ground stations.
1618//
1619// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1620// with awserr.Error's Code and Message methods to get detailed information about
1621// the error.
1622//
1623// See the AWS API reference guide for AWS Ground Station's
1624// API operation ListGroundStations for usage and error information.
1625//
1626// Returned Error Codes:
1627//   * ErrCodeDependencyException "DependencyException"
1628//   Dependency encountered an error.
1629//
1630//   * ErrCodeInvalidParameterException "InvalidParameterException"
1631//   One or more parameters are not valid.
1632//
1633//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
1634//   Resource was not found.
1635//
1636// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListGroundStations
1637func (c *GroundStation) ListGroundStations(input *ListGroundStationsInput) (*ListGroundStationsOutput, error) {
1638	req, out := c.ListGroundStationsRequest(input)
1639	return out, req.Send()
1640}
1641
1642// ListGroundStationsWithContext is the same as ListGroundStations with the addition of
1643// the ability to pass a context and additional request options.
1644//
1645// See ListGroundStations for details on how to use this API operation.
1646//
1647// The context must be non-nil and will be used for request cancellation. If
1648// the context is nil a panic will occur. In the future the SDK may create
1649// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1650// for more information on using Contexts.
1651func (c *GroundStation) ListGroundStationsWithContext(ctx aws.Context, input *ListGroundStationsInput, opts ...request.Option) (*ListGroundStationsOutput, error) {
1652	req, out := c.ListGroundStationsRequest(input)
1653	req.SetContext(ctx)
1654	req.ApplyOptions(opts...)
1655	return out, req.Send()
1656}
1657
1658// ListGroundStationsPages iterates over the pages of a ListGroundStations operation,
1659// calling the "fn" function with the response data for each page. To stop
1660// iterating, return false from the fn function.
1661//
1662// See ListGroundStations method for more information on how to use this operation.
1663//
1664// Note: This operation can generate multiple requests to a service.
1665//
1666//    // Example iterating over at most 3 pages of a ListGroundStations operation.
1667//    pageNum := 0
1668//    err := client.ListGroundStationsPages(params,
1669//        func(page *groundstation.ListGroundStationsOutput, lastPage bool) bool {
1670//            pageNum++
1671//            fmt.Println(page)
1672//            return pageNum <= 3
1673//        })
1674//
1675func (c *GroundStation) ListGroundStationsPages(input *ListGroundStationsInput, fn func(*ListGroundStationsOutput, bool) bool) error {
1676	return c.ListGroundStationsPagesWithContext(aws.BackgroundContext(), input, fn)
1677}
1678
1679// ListGroundStationsPagesWithContext same as ListGroundStationsPages except
1680// it takes a Context and allows setting request options on the pages.
1681//
1682// The context must be non-nil and will be used for request cancellation. If
1683// the context is nil a panic will occur. In the future the SDK may create
1684// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1685// for more information on using Contexts.
1686func (c *GroundStation) ListGroundStationsPagesWithContext(ctx aws.Context, input *ListGroundStationsInput, fn func(*ListGroundStationsOutput, bool) bool, opts ...request.Option) error {
1687	p := request.Pagination{
1688		NewRequest: func() (*request.Request, error) {
1689			var inCpy *ListGroundStationsInput
1690			if input != nil {
1691				tmp := *input
1692				inCpy = &tmp
1693			}
1694			req, _ := c.ListGroundStationsRequest(inCpy)
1695			req.SetContext(ctx)
1696			req.ApplyOptions(opts...)
1697			return req, nil
1698		},
1699	}
1700
1701	for p.Next() {
1702		if !fn(p.Page().(*ListGroundStationsOutput), !p.HasNextPage()) {
1703			break
1704		}
1705	}
1706
1707	return p.Err()
1708}
1709
1710const opListMissionProfiles = "ListMissionProfiles"
1711
1712// ListMissionProfilesRequest generates a "aws/request.Request" representing the
1713// client's request for the ListMissionProfiles operation. The "output" return
1714// value will be populated with the request's response once the request completes
1715// successfully.
1716//
1717// Use "Send" method on the returned Request to send the API call to the service.
1718// the "output" return value is not valid until after Send returns without error.
1719//
1720// See ListMissionProfiles for more information on using the ListMissionProfiles
1721// API call, and error handling.
1722//
1723// This method is useful when you want to inject custom logic or configuration
1724// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1725//
1726//
1727//    // Example sending a request using the ListMissionProfilesRequest method.
1728//    req, resp := client.ListMissionProfilesRequest(params)
1729//
1730//    err := req.Send()
1731//    if err == nil { // resp is now filled
1732//        fmt.Println(resp)
1733//    }
1734//
1735// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListMissionProfiles
1736func (c *GroundStation) ListMissionProfilesRequest(input *ListMissionProfilesInput) (req *request.Request, output *ListMissionProfilesOutput) {
1737	op := &request.Operation{
1738		Name:       opListMissionProfiles,
1739		HTTPMethod: "GET",
1740		HTTPPath:   "/missionprofile",
1741		Paginator: &request.Paginator{
1742			InputTokens:     []string{"nextToken"},
1743			OutputTokens:    []string{"nextToken"},
1744			LimitToken:      "maxResults",
1745			TruncationToken: "",
1746		},
1747	}
1748
1749	if input == nil {
1750		input = &ListMissionProfilesInput{}
1751	}
1752
1753	output = &ListMissionProfilesOutput{}
1754	req = c.newRequest(op, input, output)
1755	return
1756}
1757
1758// ListMissionProfiles API operation for AWS Ground Station.
1759//
1760// Returns a list of mission profiles.
1761//
1762// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1763// with awserr.Error's Code and Message methods to get detailed information about
1764// the error.
1765//
1766// See the AWS API reference guide for AWS Ground Station's
1767// API operation ListMissionProfiles for usage and error information.
1768//
1769// Returned Error Codes:
1770//   * ErrCodeDependencyException "DependencyException"
1771//   Dependency encountered an error.
1772//
1773//   * ErrCodeInvalidParameterException "InvalidParameterException"
1774//   One or more parameters are not valid.
1775//
1776//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
1777//   Resource was not found.
1778//
1779// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListMissionProfiles
1780func (c *GroundStation) ListMissionProfiles(input *ListMissionProfilesInput) (*ListMissionProfilesOutput, error) {
1781	req, out := c.ListMissionProfilesRequest(input)
1782	return out, req.Send()
1783}
1784
1785// ListMissionProfilesWithContext is the same as ListMissionProfiles with the addition of
1786// the ability to pass a context and additional request options.
1787//
1788// See ListMissionProfiles for details on how to use this API operation.
1789//
1790// The context must be non-nil and will be used for request cancellation. If
1791// the context is nil a panic will occur. In the future the SDK may create
1792// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1793// for more information on using Contexts.
1794func (c *GroundStation) ListMissionProfilesWithContext(ctx aws.Context, input *ListMissionProfilesInput, opts ...request.Option) (*ListMissionProfilesOutput, error) {
1795	req, out := c.ListMissionProfilesRequest(input)
1796	req.SetContext(ctx)
1797	req.ApplyOptions(opts...)
1798	return out, req.Send()
1799}
1800
1801// ListMissionProfilesPages iterates over the pages of a ListMissionProfiles operation,
1802// calling the "fn" function with the response data for each page. To stop
1803// iterating, return false from the fn function.
1804//
1805// See ListMissionProfiles method for more information on how to use this operation.
1806//
1807// Note: This operation can generate multiple requests to a service.
1808//
1809//    // Example iterating over at most 3 pages of a ListMissionProfiles operation.
1810//    pageNum := 0
1811//    err := client.ListMissionProfilesPages(params,
1812//        func(page *groundstation.ListMissionProfilesOutput, lastPage bool) bool {
1813//            pageNum++
1814//            fmt.Println(page)
1815//            return pageNum <= 3
1816//        })
1817//
1818func (c *GroundStation) ListMissionProfilesPages(input *ListMissionProfilesInput, fn func(*ListMissionProfilesOutput, bool) bool) error {
1819	return c.ListMissionProfilesPagesWithContext(aws.BackgroundContext(), input, fn)
1820}
1821
1822// ListMissionProfilesPagesWithContext same as ListMissionProfilesPages except
1823// it takes a Context and allows setting request options on the pages.
1824//
1825// The context must be non-nil and will be used for request cancellation. If
1826// the context is nil a panic will occur. In the future the SDK may create
1827// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1828// for more information on using Contexts.
1829func (c *GroundStation) ListMissionProfilesPagesWithContext(ctx aws.Context, input *ListMissionProfilesInput, fn func(*ListMissionProfilesOutput, bool) bool, opts ...request.Option) error {
1830	p := request.Pagination{
1831		NewRequest: func() (*request.Request, error) {
1832			var inCpy *ListMissionProfilesInput
1833			if input != nil {
1834				tmp := *input
1835				inCpy = &tmp
1836			}
1837			req, _ := c.ListMissionProfilesRequest(inCpy)
1838			req.SetContext(ctx)
1839			req.ApplyOptions(opts...)
1840			return req, nil
1841		},
1842	}
1843
1844	for p.Next() {
1845		if !fn(p.Page().(*ListMissionProfilesOutput), !p.HasNextPage()) {
1846			break
1847		}
1848	}
1849
1850	return p.Err()
1851}
1852
1853const opListSatellites = "ListSatellites"
1854
1855// ListSatellitesRequest generates a "aws/request.Request" representing the
1856// client's request for the ListSatellites operation. The "output" return
1857// value will be populated with the request's response once the request completes
1858// successfully.
1859//
1860// Use "Send" method on the returned Request to send the API call to the service.
1861// the "output" return value is not valid until after Send returns without error.
1862//
1863// See ListSatellites for more information on using the ListSatellites
1864// API call, and error handling.
1865//
1866// This method is useful when you want to inject custom logic or configuration
1867// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1868//
1869//
1870//    // Example sending a request using the ListSatellitesRequest method.
1871//    req, resp := client.ListSatellitesRequest(params)
1872//
1873//    err := req.Send()
1874//    if err == nil { // resp is now filled
1875//        fmt.Println(resp)
1876//    }
1877//
1878// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListSatellites
1879func (c *GroundStation) ListSatellitesRequest(input *ListSatellitesInput) (req *request.Request, output *ListSatellitesOutput) {
1880	op := &request.Operation{
1881		Name:       opListSatellites,
1882		HTTPMethod: "GET",
1883		HTTPPath:   "/satellite",
1884		Paginator: &request.Paginator{
1885			InputTokens:     []string{"nextToken"},
1886			OutputTokens:    []string{"nextToken"},
1887			LimitToken:      "maxResults",
1888			TruncationToken: "",
1889		},
1890	}
1891
1892	if input == nil {
1893		input = &ListSatellitesInput{}
1894	}
1895
1896	output = &ListSatellitesOutput{}
1897	req = c.newRequest(op, input, output)
1898	return
1899}
1900
1901// ListSatellites API operation for AWS Ground Station.
1902//
1903// Returns a list of satellites.
1904//
1905// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1906// with awserr.Error's Code and Message methods to get detailed information about
1907// the error.
1908//
1909// See the AWS API reference guide for AWS Ground Station's
1910// API operation ListSatellites for usage and error information.
1911//
1912// Returned Error Codes:
1913//   * ErrCodeDependencyException "DependencyException"
1914//   Dependency encountered an error.
1915//
1916//   * ErrCodeInvalidParameterException "InvalidParameterException"
1917//   One or more parameters are not valid.
1918//
1919//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
1920//   Resource was not found.
1921//
1922// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListSatellites
1923func (c *GroundStation) ListSatellites(input *ListSatellitesInput) (*ListSatellitesOutput, error) {
1924	req, out := c.ListSatellitesRequest(input)
1925	return out, req.Send()
1926}
1927
1928// ListSatellitesWithContext is the same as ListSatellites with the addition of
1929// the ability to pass a context and additional request options.
1930//
1931// See ListSatellites for details on how to use this API operation.
1932//
1933// The context must be non-nil and will be used for request cancellation. If
1934// the context is nil a panic will occur. In the future the SDK may create
1935// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1936// for more information on using Contexts.
1937func (c *GroundStation) ListSatellitesWithContext(ctx aws.Context, input *ListSatellitesInput, opts ...request.Option) (*ListSatellitesOutput, error) {
1938	req, out := c.ListSatellitesRequest(input)
1939	req.SetContext(ctx)
1940	req.ApplyOptions(opts...)
1941	return out, req.Send()
1942}
1943
1944// ListSatellitesPages iterates over the pages of a ListSatellites operation,
1945// calling the "fn" function with the response data for each page. To stop
1946// iterating, return false from the fn function.
1947//
1948// See ListSatellites method for more information on how to use this operation.
1949//
1950// Note: This operation can generate multiple requests to a service.
1951//
1952//    // Example iterating over at most 3 pages of a ListSatellites operation.
1953//    pageNum := 0
1954//    err := client.ListSatellitesPages(params,
1955//        func(page *groundstation.ListSatellitesOutput, lastPage bool) bool {
1956//            pageNum++
1957//            fmt.Println(page)
1958//            return pageNum <= 3
1959//        })
1960//
1961func (c *GroundStation) ListSatellitesPages(input *ListSatellitesInput, fn func(*ListSatellitesOutput, bool) bool) error {
1962	return c.ListSatellitesPagesWithContext(aws.BackgroundContext(), input, fn)
1963}
1964
1965// ListSatellitesPagesWithContext same as ListSatellitesPages except
1966// it takes a Context and allows setting request options on the pages.
1967//
1968// The context must be non-nil and will be used for request cancellation. If
1969// the context is nil a panic will occur. In the future the SDK may create
1970// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1971// for more information on using Contexts.
1972func (c *GroundStation) ListSatellitesPagesWithContext(ctx aws.Context, input *ListSatellitesInput, fn func(*ListSatellitesOutput, bool) bool, opts ...request.Option) error {
1973	p := request.Pagination{
1974		NewRequest: func() (*request.Request, error) {
1975			var inCpy *ListSatellitesInput
1976			if input != nil {
1977				tmp := *input
1978				inCpy = &tmp
1979			}
1980			req, _ := c.ListSatellitesRequest(inCpy)
1981			req.SetContext(ctx)
1982			req.ApplyOptions(opts...)
1983			return req, nil
1984		},
1985	}
1986
1987	for p.Next() {
1988		if !fn(p.Page().(*ListSatellitesOutput), !p.HasNextPage()) {
1989			break
1990		}
1991	}
1992
1993	return p.Err()
1994}
1995
1996const opListTagsForResource = "ListTagsForResource"
1997
1998// ListTagsForResourceRequest generates a "aws/request.Request" representing the
1999// client's request for the ListTagsForResource operation. The "output" return
2000// value will be populated with the request's response once the request completes
2001// successfully.
2002//
2003// Use "Send" method on the returned Request to send the API call to the service.
2004// the "output" return value is not valid until after Send returns without error.
2005//
2006// See ListTagsForResource for more information on using the ListTagsForResource
2007// API call, and error handling.
2008//
2009// This method is useful when you want to inject custom logic or configuration
2010// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2011//
2012//
2013//    // Example sending a request using the ListTagsForResourceRequest method.
2014//    req, resp := client.ListTagsForResourceRequest(params)
2015//
2016//    err := req.Send()
2017//    if err == nil { // resp is now filled
2018//        fmt.Println(resp)
2019//    }
2020//
2021// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListTagsForResource
2022func (c *GroundStation) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
2023	op := &request.Operation{
2024		Name:       opListTagsForResource,
2025		HTTPMethod: "GET",
2026		HTTPPath:   "/tags/{resourceArn}",
2027	}
2028
2029	if input == nil {
2030		input = &ListTagsForResourceInput{}
2031	}
2032
2033	output = &ListTagsForResourceOutput{}
2034	req = c.newRequest(op, input, output)
2035	return
2036}
2037
2038// ListTagsForResource API operation for AWS Ground Station.
2039//
2040// Returns a list of tags or a specified resource.
2041//
2042// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2043// with awserr.Error's Code and Message methods to get detailed information about
2044// the error.
2045//
2046// See the AWS API reference guide for AWS Ground Station's
2047// API operation ListTagsForResource for usage and error information.
2048//
2049// Returned Error Codes:
2050//   * ErrCodeDependencyException "DependencyException"
2051//   Dependency encountered an error.
2052//
2053//   * ErrCodeInvalidParameterException "InvalidParameterException"
2054//   One or more parameters are not valid.
2055//
2056//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
2057//   Resource was not found.
2058//
2059// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListTagsForResource
2060func (c *GroundStation) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
2061	req, out := c.ListTagsForResourceRequest(input)
2062	return out, req.Send()
2063}
2064
2065// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
2066// the ability to pass a context and additional request options.
2067//
2068// See ListTagsForResource for details on how to use this API operation.
2069//
2070// The context must be non-nil and will be used for request cancellation. If
2071// the context is nil a panic will occur. In the future the SDK may create
2072// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2073// for more information on using Contexts.
2074func (c *GroundStation) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
2075	req, out := c.ListTagsForResourceRequest(input)
2076	req.SetContext(ctx)
2077	req.ApplyOptions(opts...)
2078	return out, req.Send()
2079}
2080
2081const opReserveContact = "ReserveContact"
2082
2083// ReserveContactRequest generates a "aws/request.Request" representing the
2084// client's request for the ReserveContact operation. The "output" return
2085// value will be populated with the request's response once the request completes
2086// successfully.
2087//
2088// Use "Send" method on the returned Request to send the API call to the service.
2089// the "output" return value is not valid until after Send returns without error.
2090//
2091// See ReserveContact for more information on using the ReserveContact
2092// API call, and error handling.
2093//
2094// This method is useful when you want to inject custom logic or configuration
2095// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2096//
2097//
2098//    // Example sending a request using the ReserveContactRequest method.
2099//    req, resp := client.ReserveContactRequest(params)
2100//
2101//    err := req.Send()
2102//    if err == nil { // resp is now filled
2103//        fmt.Println(resp)
2104//    }
2105//
2106// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ReserveContact
2107func (c *GroundStation) ReserveContactRequest(input *ReserveContactInput) (req *request.Request, output *ReserveContactOutput) {
2108	op := &request.Operation{
2109		Name:       opReserveContact,
2110		HTTPMethod: "POST",
2111		HTTPPath:   "/contact",
2112	}
2113
2114	if input == nil {
2115		input = &ReserveContactInput{}
2116	}
2117
2118	output = &ReserveContactOutput{}
2119	req = c.newRequest(op, input, output)
2120	return
2121}
2122
2123// ReserveContact API operation for AWS Ground Station.
2124//
2125// Reserves a contact using specified parameters.
2126//
2127// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2128// with awserr.Error's Code and Message methods to get detailed information about
2129// the error.
2130//
2131// See the AWS API reference guide for AWS Ground Station's
2132// API operation ReserveContact for usage and error information.
2133//
2134// Returned Error Codes:
2135//   * ErrCodeDependencyException "DependencyException"
2136//   Dependency encountered an error.
2137//
2138//   * ErrCodeInvalidParameterException "InvalidParameterException"
2139//   One or more parameters are not valid.
2140//
2141//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
2142//   Resource was not found.
2143//
2144// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ReserveContact
2145func (c *GroundStation) ReserveContact(input *ReserveContactInput) (*ReserveContactOutput, error) {
2146	req, out := c.ReserveContactRequest(input)
2147	return out, req.Send()
2148}
2149
2150// ReserveContactWithContext is the same as ReserveContact with the addition of
2151// the ability to pass a context and additional request options.
2152//
2153// See ReserveContact for details on how to use this API operation.
2154//
2155// The context must be non-nil and will be used for request cancellation. If
2156// the context is nil a panic will occur. In the future the SDK may create
2157// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2158// for more information on using Contexts.
2159func (c *GroundStation) ReserveContactWithContext(ctx aws.Context, input *ReserveContactInput, opts ...request.Option) (*ReserveContactOutput, error) {
2160	req, out := c.ReserveContactRequest(input)
2161	req.SetContext(ctx)
2162	req.ApplyOptions(opts...)
2163	return out, req.Send()
2164}
2165
2166const opTagResource = "TagResource"
2167
2168// TagResourceRequest generates a "aws/request.Request" representing the
2169// client's request for the TagResource operation. The "output" return
2170// value will be populated with the request's response once the request completes
2171// successfully.
2172//
2173// Use "Send" method on the returned Request to send the API call to the service.
2174// the "output" return value is not valid until after Send returns without error.
2175//
2176// See TagResource for more information on using the TagResource
2177// API call, and error handling.
2178//
2179// This method is useful when you want to inject custom logic or configuration
2180// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2181//
2182//
2183//    // Example sending a request using the TagResourceRequest method.
2184//    req, resp := client.TagResourceRequest(params)
2185//
2186//    err := req.Send()
2187//    if err == nil { // resp is now filled
2188//        fmt.Println(resp)
2189//    }
2190//
2191// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/TagResource
2192func (c *GroundStation) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
2193	op := &request.Operation{
2194		Name:       opTagResource,
2195		HTTPMethod: "POST",
2196		HTTPPath:   "/tags/{resourceArn}",
2197	}
2198
2199	if input == nil {
2200		input = &TagResourceInput{}
2201	}
2202
2203	output = &TagResourceOutput{}
2204	req = c.newRequest(op, input, output)
2205	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2206	return
2207}
2208
2209// TagResource API operation for AWS Ground Station.
2210//
2211// Assigns a tag to a resource.
2212//
2213// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2214// with awserr.Error's Code and Message methods to get detailed information about
2215// the error.
2216//
2217// See the AWS API reference guide for AWS Ground Station's
2218// API operation TagResource for usage and error information.
2219//
2220// Returned Error Codes:
2221//   * ErrCodeDependencyException "DependencyException"
2222//   Dependency encountered an error.
2223//
2224//   * ErrCodeInvalidParameterException "InvalidParameterException"
2225//   One or more parameters are not valid.
2226//
2227//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
2228//   Resource was not found.
2229//
2230// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/TagResource
2231func (c *GroundStation) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
2232	req, out := c.TagResourceRequest(input)
2233	return out, req.Send()
2234}
2235
2236// TagResourceWithContext is the same as TagResource with the addition of
2237// the ability to pass a context and additional request options.
2238//
2239// See TagResource for details on how to use this API operation.
2240//
2241// The context must be non-nil and will be used for request cancellation. If
2242// the context is nil a panic will occur. In the future the SDK may create
2243// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2244// for more information on using Contexts.
2245func (c *GroundStation) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
2246	req, out := c.TagResourceRequest(input)
2247	req.SetContext(ctx)
2248	req.ApplyOptions(opts...)
2249	return out, req.Send()
2250}
2251
2252const opUntagResource = "UntagResource"
2253
2254// UntagResourceRequest generates a "aws/request.Request" representing the
2255// client's request for the UntagResource operation. The "output" return
2256// value will be populated with the request's response once the request completes
2257// successfully.
2258//
2259// Use "Send" method on the returned Request to send the API call to the service.
2260// the "output" return value is not valid until after Send returns without error.
2261//
2262// See UntagResource for more information on using the UntagResource
2263// API call, and error handling.
2264//
2265// This method is useful when you want to inject custom logic or configuration
2266// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2267//
2268//
2269//    // Example sending a request using the UntagResourceRequest method.
2270//    req, resp := client.UntagResourceRequest(params)
2271//
2272//    err := req.Send()
2273//    if err == nil { // resp is now filled
2274//        fmt.Println(resp)
2275//    }
2276//
2277// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/UntagResource
2278func (c *GroundStation) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
2279	op := &request.Operation{
2280		Name:       opUntagResource,
2281		HTTPMethod: "DELETE",
2282		HTTPPath:   "/tags/{resourceArn}",
2283	}
2284
2285	if input == nil {
2286		input = &UntagResourceInput{}
2287	}
2288
2289	output = &UntagResourceOutput{}
2290	req = c.newRequest(op, input, output)
2291	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2292	return
2293}
2294
2295// UntagResource API operation for AWS Ground Station.
2296//
2297// Deassigns a resource tag.
2298//
2299// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2300// with awserr.Error's Code and Message methods to get detailed information about
2301// the error.
2302//
2303// See the AWS API reference guide for AWS Ground Station's
2304// API operation UntagResource for usage and error information.
2305//
2306// Returned Error Codes:
2307//   * ErrCodeDependencyException "DependencyException"
2308//   Dependency encountered an error.
2309//
2310//   * ErrCodeInvalidParameterException "InvalidParameterException"
2311//   One or more parameters are not valid.
2312//
2313//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
2314//   Resource was not found.
2315//
2316// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/UntagResource
2317func (c *GroundStation) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
2318	req, out := c.UntagResourceRequest(input)
2319	return out, req.Send()
2320}
2321
2322// UntagResourceWithContext is the same as UntagResource with the addition of
2323// the ability to pass a context and additional request options.
2324//
2325// See UntagResource for details on how to use this API operation.
2326//
2327// The context must be non-nil and will be used for request cancellation. If
2328// the context is nil a panic will occur. In the future the SDK may create
2329// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2330// for more information on using Contexts.
2331func (c *GroundStation) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
2332	req, out := c.UntagResourceRequest(input)
2333	req.SetContext(ctx)
2334	req.ApplyOptions(opts...)
2335	return out, req.Send()
2336}
2337
2338const opUpdateConfig = "UpdateConfig"
2339
2340// UpdateConfigRequest generates a "aws/request.Request" representing the
2341// client's request for the UpdateConfig operation. The "output" return
2342// value will be populated with the request's response once the request completes
2343// successfully.
2344//
2345// Use "Send" method on the returned Request to send the API call to the service.
2346// the "output" return value is not valid until after Send returns without error.
2347//
2348// See UpdateConfig for more information on using the UpdateConfig
2349// API call, and error handling.
2350//
2351// This method is useful when you want to inject custom logic or configuration
2352// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2353//
2354//
2355//    // Example sending a request using the UpdateConfigRequest method.
2356//    req, resp := client.UpdateConfigRequest(params)
2357//
2358//    err := req.Send()
2359//    if err == nil { // resp is now filled
2360//        fmt.Println(resp)
2361//    }
2362//
2363// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/UpdateConfig
2364func (c *GroundStation) UpdateConfigRequest(input *UpdateConfigInput) (req *request.Request, output *UpdateConfigOutput) {
2365	op := &request.Operation{
2366		Name:       opUpdateConfig,
2367		HTTPMethod: "PUT",
2368		HTTPPath:   "/config/{configType}/{configId}",
2369	}
2370
2371	if input == nil {
2372		input = &UpdateConfigInput{}
2373	}
2374
2375	output = &UpdateConfigOutput{}
2376	req = c.newRequest(op, input, output)
2377	return
2378}
2379
2380// UpdateConfig API operation for AWS Ground Station.
2381//
2382// Updates the Config used when scheduling contacts.
2383//
2384// Updating a Config will not update the execution parameters for existing future
2385// contacts scheduled with this Config.
2386//
2387// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2388// with awserr.Error's Code and Message methods to get detailed information about
2389// the error.
2390//
2391// See the AWS API reference guide for AWS Ground Station's
2392// API operation UpdateConfig for usage and error information.
2393//
2394// Returned Error Codes:
2395//   * ErrCodeDependencyException "DependencyException"
2396//   Dependency encountered an error.
2397//
2398//   * ErrCodeInvalidParameterException "InvalidParameterException"
2399//   One or more parameters are not valid.
2400//
2401//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
2402//   Resource was not found.
2403//
2404// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/UpdateConfig
2405func (c *GroundStation) UpdateConfig(input *UpdateConfigInput) (*UpdateConfigOutput, error) {
2406	req, out := c.UpdateConfigRequest(input)
2407	return out, req.Send()
2408}
2409
2410// UpdateConfigWithContext is the same as UpdateConfig with the addition of
2411// the ability to pass a context and additional request options.
2412//
2413// See UpdateConfig for details on how to use this API operation.
2414//
2415// The context must be non-nil and will be used for request cancellation. If
2416// the context is nil a panic will occur. In the future the SDK may create
2417// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2418// for more information on using Contexts.
2419func (c *GroundStation) UpdateConfigWithContext(ctx aws.Context, input *UpdateConfigInput, opts ...request.Option) (*UpdateConfigOutput, error) {
2420	req, out := c.UpdateConfigRequest(input)
2421	req.SetContext(ctx)
2422	req.ApplyOptions(opts...)
2423	return out, req.Send()
2424}
2425
2426const opUpdateMissionProfile = "UpdateMissionProfile"
2427
2428// UpdateMissionProfileRequest generates a "aws/request.Request" representing the
2429// client's request for the UpdateMissionProfile operation. The "output" return
2430// value will be populated with the request's response once the request completes
2431// successfully.
2432//
2433// Use "Send" method on the returned Request to send the API call to the service.
2434// the "output" return value is not valid until after Send returns without error.
2435//
2436// See UpdateMissionProfile for more information on using the UpdateMissionProfile
2437// API call, and error handling.
2438//
2439// This method is useful when you want to inject custom logic or configuration
2440// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2441//
2442//
2443//    // Example sending a request using the UpdateMissionProfileRequest method.
2444//    req, resp := client.UpdateMissionProfileRequest(params)
2445//
2446//    err := req.Send()
2447//    if err == nil { // resp is now filled
2448//        fmt.Println(resp)
2449//    }
2450//
2451// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/UpdateMissionProfile
2452func (c *GroundStation) UpdateMissionProfileRequest(input *UpdateMissionProfileInput) (req *request.Request, output *UpdateMissionProfileOutput) {
2453	op := &request.Operation{
2454		Name:       opUpdateMissionProfile,
2455		HTTPMethod: "PUT",
2456		HTTPPath:   "/missionprofile/{missionProfileId}",
2457	}
2458
2459	if input == nil {
2460		input = &UpdateMissionProfileInput{}
2461	}
2462
2463	output = &UpdateMissionProfileOutput{}
2464	req = c.newRequest(op, input, output)
2465	return
2466}
2467
2468// UpdateMissionProfile API operation for AWS Ground Station.
2469//
2470// Updates a mission profile.
2471//
2472// Updating a mission profile will not update the execution parameters for existing
2473// future contacts.
2474//
2475// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2476// with awserr.Error's Code and Message methods to get detailed information about
2477// the error.
2478//
2479// See the AWS API reference guide for AWS Ground Station's
2480// API operation UpdateMissionProfile for usage and error information.
2481//
2482// Returned Error Codes:
2483//   * ErrCodeDependencyException "DependencyException"
2484//   Dependency encountered an error.
2485//
2486//   * ErrCodeInvalidParameterException "InvalidParameterException"
2487//   One or more parameters are not valid.
2488//
2489//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
2490//   Resource was not found.
2491//
2492// See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/UpdateMissionProfile
2493func (c *GroundStation) UpdateMissionProfile(input *UpdateMissionProfileInput) (*UpdateMissionProfileOutput, error) {
2494	req, out := c.UpdateMissionProfileRequest(input)
2495	return out, req.Send()
2496}
2497
2498// UpdateMissionProfileWithContext is the same as UpdateMissionProfile with the addition of
2499// the ability to pass a context and additional request options.
2500//
2501// See UpdateMissionProfile for details on how to use this API operation.
2502//
2503// The context must be non-nil and will be used for request cancellation. If
2504// the context is nil a panic will occur. In the future the SDK may create
2505// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2506// for more information on using Contexts.
2507func (c *GroundStation) UpdateMissionProfileWithContext(ctx aws.Context, input *UpdateMissionProfileInput, opts ...request.Option) (*UpdateMissionProfileOutput, error) {
2508	req, out := c.UpdateMissionProfileRequest(input)
2509	req.SetContext(ctx)
2510	req.ApplyOptions(opts...)
2511	return out, req.Send()
2512}
2513
2514// Information about how AWS Ground Station should configure an antenna for
2515// downlink during a contact.
2516type AntennaDownlinkConfig struct {
2517	_ struct{} `type:"structure"`
2518
2519	// Object that describes a spectral Config.
2520	//
2521	// SpectrumConfig is a required field
2522	SpectrumConfig *SpectrumConfig `locationName:"spectrumConfig" type:"structure" required:"true"`
2523}
2524
2525// String returns the string representation
2526func (s AntennaDownlinkConfig) String() string {
2527	return awsutil.Prettify(s)
2528}
2529
2530// GoString returns the string representation
2531func (s AntennaDownlinkConfig) GoString() string {
2532	return s.String()
2533}
2534
2535// Validate inspects the fields of the type to determine if they are valid.
2536func (s *AntennaDownlinkConfig) Validate() error {
2537	invalidParams := request.ErrInvalidParams{Context: "AntennaDownlinkConfig"}
2538	if s.SpectrumConfig == nil {
2539		invalidParams.Add(request.NewErrParamRequired("SpectrumConfig"))
2540	}
2541	if s.SpectrumConfig != nil {
2542		if err := s.SpectrumConfig.Validate(); err != nil {
2543			invalidParams.AddNested("SpectrumConfig", err.(request.ErrInvalidParams))
2544		}
2545	}
2546
2547	if invalidParams.Len() > 0 {
2548		return invalidParams
2549	}
2550	return nil
2551}
2552
2553// SetSpectrumConfig sets the SpectrumConfig field's value.
2554func (s *AntennaDownlinkConfig) SetSpectrumConfig(v *SpectrumConfig) *AntennaDownlinkConfig {
2555	s.SpectrumConfig = v
2556	return s
2557}
2558
2559// Information about how AWS Ground Station should configure an antenna for
2560// downlink demod decode during a contact.
2561type AntennaDownlinkDemodDecodeConfig struct {
2562	_ struct{} `type:"structure"`
2563
2564	// Information about the decode Config.
2565	//
2566	// DecodeConfig is a required field
2567	DecodeConfig *DecodeConfig `locationName:"decodeConfig" type:"structure" required:"true"`
2568
2569	// Information about the demodulation Config.
2570	//
2571	// DemodulationConfig is a required field
2572	DemodulationConfig *DemodulationConfig `locationName:"demodulationConfig" type:"structure" required:"true"`
2573
2574	// Object that describes a spectral Config.
2575	//
2576	// SpectrumConfig is a required field
2577	SpectrumConfig *SpectrumConfig `locationName:"spectrumConfig" type:"structure" required:"true"`
2578}
2579
2580// String returns the string representation
2581func (s AntennaDownlinkDemodDecodeConfig) String() string {
2582	return awsutil.Prettify(s)
2583}
2584
2585// GoString returns the string representation
2586func (s AntennaDownlinkDemodDecodeConfig) GoString() string {
2587	return s.String()
2588}
2589
2590// Validate inspects the fields of the type to determine if they are valid.
2591func (s *AntennaDownlinkDemodDecodeConfig) Validate() error {
2592	invalidParams := request.ErrInvalidParams{Context: "AntennaDownlinkDemodDecodeConfig"}
2593	if s.DecodeConfig == nil {
2594		invalidParams.Add(request.NewErrParamRequired("DecodeConfig"))
2595	}
2596	if s.DemodulationConfig == nil {
2597		invalidParams.Add(request.NewErrParamRequired("DemodulationConfig"))
2598	}
2599	if s.SpectrumConfig == nil {
2600		invalidParams.Add(request.NewErrParamRequired("SpectrumConfig"))
2601	}
2602	if s.DecodeConfig != nil {
2603		if err := s.DecodeConfig.Validate(); err != nil {
2604			invalidParams.AddNested("DecodeConfig", err.(request.ErrInvalidParams))
2605		}
2606	}
2607	if s.DemodulationConfig != nil {
2608		if err := s.DemodulationConfig.Validate(); err != nil {
2609			invalidParams.AddNested("DemodulationConfig", err.(request.ErrInvalidParams))
2610		}
2611	}
2612	if s.SpectrumConfig != nil {
2613		if err := s.SpectrumConfig.Validate(); err != nil {
2614			invalidParams.AddNested("SpectrumConfig", err.(request.ErrInvalidParams))
2615		}
2616	}
2617
2618	if invalidParams.Len() > 0 {
2619		return invalidParams
2620	}
2621	return nil
2622}
2623
2624// SetDecodeConfig sets the DecodeConfig field's value.
2625func (s *AntennaDownlinkDemodDecodeConfig) SetDecodeConfig(v *DecodeConfig) *AntennaDownlinkDemodDecodeConfig {
2626	s.DecodeConfig = v
2627	return s
2628}
2629
2630// SetDemodulationConfig sets the DemodulationConfig field's value.
2631func (s *AntennaDownlinkDemodDecodeConfig) SetDemodulationConfig(v *DemodulationConfig) *AntennaDownlinkDemodDecodeConfig {
2632	s.DemodulationConfig = v
2633	return s
2634}
2635
2636// SetSpectrumConfig sets the SpectrumConfig field's value.
2637func (s *AntennaDownlinkDemodDecodeConfig) SetSpectrumConfig(v *SpectrumConfig) *AntennaDownlinkDemodDecodeConfig {
2638	s.SpectrumConfig = v
2639	return s
2640}
2641
2642// Information about the uplink Config of an antenna.
2643type AntennaUplinkConfig struct {
2644	_ struct{} `type:"structure"`
2645
2646	// Information about the uplink spectral Config.
2647	//
2648	// SpectrumConfig is a required field
2649	SpectrumConfig *UplinkSpectrumConfig `locationName:"spectrumConfig" type:"structure" required:"true"`
2650
2651	// Object that represents EIRP.
2652	//
2653	// TargetEirp is a required field
2654	TargetEirp *Eirp `locationName:"targetEirp" type:"structure" required:"true"`
2655}
2656
2657// String returns the string representation
2658func (s AntennaUplinkConfig) String() string {
2659	return awsutil.Prettify(s)
2660}
2661
2662// GoString returns the string representation
2663func (s AntennaUplinkConfig) GoString() string {
2664	return s.String()
2665}
2666
2667// Validate inspects the fields of the type to determine if they are valid.
2668func (s *AntennaUplinkConfig) Validate() error {
2669	invalidParams := request.ErrInvalidParams{Context: "AntennaUplinkConfig"}
2670	if s.SpectrumConfig == nil {
2671		invalidParams.Add(request.NewErrParamRequired("SpectrumConfig"))
2672	}
2673	if s.TargetEirp == nil {
2674		invalidParams.Add(request.NewErrParamRequired("TargetEirp"))
2675	}
2676	if s.SpectrumConfig != nil {
2677		if err := s.SpectrumConfig.Validate(); err != nil {
2678			invalidParams.AddNested("SpectrumConfig", err.(request.ErrInvalidParams))
2679		}
2680	}
2681	if s.TargetEirp != nil {
2682		if err := s.TargetEirp.Validate(); err != nil {
2683			invalidParams.AddNested("TargetEirp", err.(request.ErrInvalidParams))
2684		}
2685	}
2686
2687	if invalidParams.Len() > 0 {
2688		return invalidParams
2689	}
2690	return nil
2691}
2692
2693// SetSpectrumConfig sets the SpectrumConfig field's value.
2694func (s *AntennaUplinkConfig) SetSpectrumConfig(v *UplinkSpectrumConfig) *AntennaUplinkConfig {
2695	s.SpectrumConfig = v
2696	return s
2697}
2698
2699// SetTargetEirp sets the TargetEirp field's value.
2700func (s *AntennaUplinkConfig) SetTargetEirp(v *Eirp) *AntennaUplinkConfig {
2701	s.TargetEirp = v
2702	return s
2703}
2704
2705type CancelContactInput struct {
2706	_ struct{} `type:"structure"`
2707
2708	// ContactId is a required field
2709	ContactId *string `location:"uri" locationName:"contactId" type:"string" required:"true"`
2710}
2711
2712// String returns the string representation
2713func (s CancelContactInput) String() string {
2714	return awsutil.Prettify(s)
2715}
2716
2717// GoString returns the string representation
2718func (s CancelContactInput) GoString() string {
2719	return s.String()
2720}
2721
2722// Validate inspects the fields of the type to determine if they are valid.
2723func (s *CancelContactInput) Validate() error {
2724	invalidParams := request.ErrInvalidParams{Context: "CancelContactInput"}
2725	if s.ContactId == nil {
2726		invalidParams.Add(request.NewErrParamRequired("ContactId"))
2727	}
2728	if s.ContactId != nil && len(*s.ContactId) < 1 {
2729		invalidParams.Add(request.NewErrParamMinLen("ContactId", 1))
2730	}
2731
2732	if invalidParams.Len() > 0 {
2733		return invalidParams
2734	}
2735	return nil
2736}
2737
2738// SetContactId sets the ContactId field's value.
2739func (s *CancelContactInput) SetContactId(v string) *CancelContactInput {
2740	s.ContactId = &v
2741	return s
2742}
2743
2744type CancelContactOutput struct {
2745	_ struct{} `type:"structure"`
2746
2747	ContactId *string `locationName:"contactId" type:"string"`
2748}
2749
2750// String returns the string representation
2751func (s CancelContactOutput) String() string {
2752	return awsutil.Prettify(s)
2753}
2754
2755// GoString returns the string representation
2756func (s CancelContactOutput) GoString() string {
2757	return s.String()
2758}
2759
2760// SetContactId sets the ContactId field's value.
2761func (s *CancelContactOutput) SetContactId(v string) *CancelContactOutput {
2762	s.ContactId = &v
2763	return s
2764}
2765
2766// An item in a list of Config objects.
2767type ConfigListItem struct {
2768	_ struct{} `type:"structure"`
2769
2770	ConfigArn *string `locationName:"configArn" type:"string"`
2771
2772	ConfigId *string `locationName:"configId" type:"string"`
2773
2774	ConfigType *string `locationName:"configType" type:"string" enum:"ConfigCapabilityType"`
2775
2776	Name *string `locationName:"name" type:"string"`
2777}
2778
2779// String returns the string representation
2780func (s ConfigListItem) String() string {
2781	return awsutil.Prettify(s)
2782}
2783
2784// GoString returns the string representation
2785func (s ConfigListItem) GoString() string {
2786	return s.String()
2787}
2788
2789// SetConfigArn sets the ConfigArn field's value.
2790func (s *ConfigListItem) SetConfigArn(v string) *ConfigListItem {
2791	s.ConfigArn = &v
2792	return s
2793}
2794
2795// SetConfigId sets the ConfigId field's value.
2796func (s *ConfigListItem) SetConfigId(v string) *ConfigListItem {
2797	s.ConfigId = &v
2798	return s
2799}
2800
2801// SetConfigType sets the ConfigType field's value.
2802func (s *ConfigListItem) SetConfigType(v string) *ConfigListItem {
2803	s.ConfigType = &v
2804	return s
2805}
2806
2807// SetName sets the Name field's value.
2808func (s *ConfigListItem) SetName(v string) *ConfigListItem {
2809	s.Name = &v
2810	return s
2811}
2812
2813// Object containing the parameters for a Config.
2814//
2815// See the subtype definitions for what each type of Config contains.
2816type ConfigTypeData struct {
2817	_ struct{} `type:"structure"`
2818
2819	// Information about how AWS Ground Station should configure an antenna for
2820	// downlink during a contact.
2821	AntennaDownlinkConfig *AntennaDownlinkConfig `locationName:"antennaDownlinkConfig" type:"structure"`
2822
2823	// Information about how AWS Ground Station should configure an antenna for
2824	// downlink demod decode during a contact.
2825	AntennaDownlinkDemodDecodeConfig *AntennaDownlinkDemodDecodeConfig `locationName:"antennaDownlinkDemodDecodeConfig" type:"structure"`
2826
2827	// Information about the uplink Config of an antenna.
2828	AntennaUplinkConfig *AntennaUplinkConfig `locationName:"antennaUplinkConfig" type:"structure"`
2829
2830	// Information about the dataflow endpoint Config.
2831	DataflowEndpointConfig *DataflowEndpointConfig `locationName:"dataflowEndpointConfig" type:"structure"`
2832
2833	// Object that determines whether tracking should be used during a contact executed
2834	// with this Config in the mission profile.
2835	TrackingConfig *TrackingConfig `locationName:"trackingConfig" type:"structure"`
2836
2837	// Information about an uplink echo Config.
2838	//
2839	// Parameters from the AntennaUplinkConfig, corresponding to the specified AntennaUplinkConfigArn,
2840	// are used when this UplinkEchoConfig is used in a contact.
2841	UplinkEchoConfig *UplinkEchoConfig `locationName:"uplinkEchoConfig" type:"structure"`
2842}
2843
2844// String returns the string representation
2845func (s ConfigTypeData) String() string {
2846	return awsutil.Prettify(s)
2847}
2848
2849// GoString returns the string representation
2850func (s ConfigTypeData) GoString() string {
2851	return s.String()
2852}
2853
2854// Validate inspects the fields of the type to determine if they are valid.
2855func (s *ConfigTypeData) Validate() error {
2856	invalidParams := request.ErrInvalidParams{Context: "ConfigTypeData"}
2857	if s.AntennaDownlinkConfig != nil {
2858		if err := s.AntennaDownlinkConfig.Validate(); err != nil {
2859			invalidParams.AddNested("AntennaDownlinkConfig", err.(request.ErrInvalidParams))
2860		}
2861	}
2862	if s.AntennaDownlinkDemodDecodeConfig != nil {
2863		if err := s.AntennaDownlinkDemodDecodeConfig.Validate(); err != nil {
2864			invalidParams.AddNested("AntennaDownlinkDemodDecodeConfig", err.(request.ErrInvalidParams))
2865		}
2866	}
2867	if s.AntennaUplinkConfig != nil {
2868		if err := s.AntennaUplinkConfig.Validate(); err != nil {
2869			invalidParams.AddNested("AntennaUplinkConfig", err.(request.ErrInvalidParams))
2870		}
2871	}
2872	if s.DataflowEndpointConfig != nil {
2873		if err := s.DataflowEndpointConfig.Validate(); err != nil {
2874			invalidParams.AddNested("DataflowEndpointConfig", err.(request.ErrInvalidParams))
2875		}
2876	}
2877	if s.TrackingConfig != nil {
2878		if err := s.TrackingConfig.Validate(); err != nil {
2879			invalidParams.AddNested("TrackingConfig", err.(request.ErrInvalidParams))
2880		}
2881	}
2882	if s.UplinkEchoConfig != nil {
2883		if err := s.UplinkEchoConfig.Validate(); err != nil {
2884			invalidParams.AddNested("UplinkEchoConfig", err.(request.ErrInvalidParams))
2885		}
2886	}
2887
2888	if invalidParams.Len() > 0 {
2889		return invalidParams
2890	}
2891	return nil
2892}
2893
2894// SetAntennaDownlinkConfig sets the AntennaDownlinkConfig field's value.
2895func (s *ConfigTypeData) SetAntennaDownlinkConfig(v *AntennaDownlinkConfig) *ConfigTypeData {
2896	s.AntennaDownlinkConfig = v
2897	return s
2898}
2899
2900// SetAntennaDownlinkDemodDecodeConfig sets the AntennaDownlinkDemodDecodeConfig field's value.
2901func (s *ConfigTypeData) SetAntennaDownlinkDemodDecodeConfig(v *AntennaDownlinkDemodDecodeConfig) *ConfigTypeData {
2902	s.AntennaDownlinkDemodDecodeConfig = v
2903	return s
2904}
2905
2906// SetAntennaUplinkConfig sets the AntennaUplinkConfig field's value.
2907func (s *ConfigTypeData) SetAntennaUplinkConfig(v *AntennaUplinkConfig) *ConfigTypeData {
2908	s.AntennaUplinkConfig = v
2909	return s
2910}
2911
2912// SetDataflowEndpointConfig sets the DataflowEndpointConfig field's value.
2913func (s *ConfigTypeData) SetDataflowEndpointConfig(v *DataflowEndpointConfig) *ConfigTypeData {
2914	s.DataflowEndpointConfig = v
2915	return s
2916}
2917
2918// SetTrackingConfig sets the TrackingConfig field's value.
2919func (s *ConfigTypeData) SetTrackingConfig(v *TrackingConfig) *ConfigTypeData {
2920	s.TrackingConfig = v
2921	return s
2922}
2923
2924// SetUplinkEchoConfig sets the UplinkEchoConfig field's value.
2925func (s *ConfigTypeData) SetUplinkEchoConfig(v *UplinkEchoConfig) *ConfigTypeData {
2926	s.UplinkEchoConfig = v
2927	return s
2928}
2929
2930// Data describing a contact.
2931type ContactData struct {
2932	_ struct{} `type:"structure"`
2933
2934	ContactId *string `locationName:"contactId" type:"string"`
2935
2936	ContactStatus *string `locationName:"contactStatus" type:"string" enum:"ContactStatus"`
2937
2938	EndTime *time.Time `locationName:"endTime" type:"timestamp"`
2939
2940	ErrorMessage *string `locationName:"errorMessage" type:"string"`
2941
2942	GroundStation *string `locationName:"groundStation" type:"string"`
2943
2944	// Elevation angle of the satellite in the sky during a contact.
2945	MaximumElevation *Elevation `locationName:"maximumElevation" type:"structure"`
2946
2947	MissionProfileArn *string `locationName:"missionProfileArn" type:"string"`
2948
2949	PostPassEndTime *time.Time `locationName:"postPassEndTime" type:"timestamp"`
2950
2951	PrePassStartTime *time.Time `locationName:"prePassStartTime" type:"timestamp"`
2952
2953	SatelliteArn *string `locationName:"satelliteArn" type:"string"`
2954
2955	StartTime *time.Time `locationName:"startTime" type:"timestamp"`
2956
2957	Tags map[string]*string `locationName:"tags" type:"map"`
2958}
2959
2960// String returns the string representation
2961func (s ContactData) String() string {
2962	return awsutil.Prettify(s)
2963}
2964
2965// GoString returns the string representation
2966func (s ContactData) GoString() string {
2967	return s.String()
2968}
2969
2970// SetContactId sets the ContactId field's value.
2971func (s *ContactData) SetContactId(v string) *ContactData {
2972	s.ContactId = &v
2973	return s
2974}
2975
2976// SetContactStatus sets the ContactStatus field's value.
2977func (s *ContactData) SetContactStatus(v string) *ContactData {
2978	s.ContactStatus = &v
2979	return s
2980}
2981
2982// SetEndTime sets the EndTime field's value.
2983func (s *ContactData) SetEndTime(v time.Time) *ContactData {
2984	s.EndTime = &v
2985	return s
2986}
2987
2988// SetErrorMessage sets the ErrorMessage field's value.
2989func (s *ContactData) SetErrorMessage(v string) *ContactData {
2990	s.ErrorMessage = &v
2991	return s
2992}
2993
2994// SetGroundStation sets the GroundStation field's value.
2995func (s *ContactData) SetGroundStation(v string) *ContactData {
2996	s.GroundStation = &v
2997	return s
2998}
2999
3000// SetMaximumElevation sets the MaximumElevation field's value.
3001func (s *ContactData) SetMaximumElevation(v *Elevation) *ContactData {
3002	s.MaximumElevation = v
3003	return s
3004}
3005
3006// SetMissionProfileArn sets the MissionProfileArn field's value.
3007func (s *ContactData) SetMissionProfileArn(v string) *ContactData {
3008	s.MissionProfileArn = &v
3009	return s
3010}
3011
3012// SetPostPassEndTime sets the PostPassEndTime field's value.
3013func (s *ContactData) SetPostPassEndTime(v time.Time) *ContactData {
3014	s.PostPassEndTime = &v
3015	return s
3016}
3017
3018// SetPrePassStartTime sets the PrePassStartTime field's value.
3019func (s *ContactData) SetPrePassStartTime(v time.Time) *ContactData {
3020	s.PrePassStartTime = &v
3021	return s
3022}
3023
3024// SetSatelliteArn sets the SatelliteArn field's value.
3025func (s *ContactData) SetSatelliteArn(v string) *ContactData {
3026	s.SatelliteArn = &v
3027	return s
3028}
3029
3030// SetStartTime sets the StartTime field's value.
3031func (s *ContactData) SetStartTime(v time.Time) *ContactData {
3032	s.StartTime = &v
3033	return s
3034}
3035
3036// SetTags sets the Tags field's value.
3037func (s *ContactData) SetTags(v map[string]*string) *ContactData {
3038	s.Tags = v
3039	return s
3040}
3041
3042type CreateConfigInput struct {
3043	_ struct{} `type:"structure"`
3044
3045	// Object containing the parameters for a Config.
3046	//
3047	// See the subtype definitions for what each type of Config contains.
3048	//
3049	// ConfigData is a required field
3050	ConfigData *ConfigTypeData `locationName:"configData" type:"structure" required:"true"`
3051
3052	// Name is a required field
3053	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
3054
3055	Tags map[string]*string `locationName:"tags" type:"map"`
3056}
3057
3058// String returns the string representation
3059func (s CreateConfigInput) String() string {
3060	return awsutil.Prettify(s)
3061}
3062
3063// GoString returns the string representation
3064func (s CreateConfigInput) GoString() string {
3065	return s.String()
3066}
3067
3068// Validate inspects the fields of the type to determine if they are valid.
3069func (s *CreateConfigInput) Validate() error {
3070	invalidParams := request.ErrInvalidParams{Context: "CreateConfigInput"}
3071	if s.ConfigData == nil {
3072		invalidParams.Add(request.NewErrParamRequired("ConfigData"))
3073	}
3074	if s.Name == nil {
3075		invalidParams.Add(request.NewErrParamRequired("Name"))
3076	}
3077	if s.Name != nil && len(*s.Name) < 1 {
3078		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
3079	}
3080	if s.ConfigData != nil {
3081		if err := s.ConfigData.Validate(); err != nil {
3082			invalidParams.AddNested("ConfigData", err.(request.ErrInvalidParams))
3083		}
3084	}
3085
3086	if invalidParams.Len() > 0 {
3087		return invalidParams
3088	}
3089	return nil
3090}
3091
3092// SetConfigData sets the ConfigData field's value.
3093func (s *CreateConfigInput) SetConfigData(v *ConfigTypeData) *CreateConfigInput {
3094	s.ConfigData = v
3095	return s
3096}
3097
3098// SetName sets the Name field's value.
3099func (s *CreateConfigInput) SetName(v string) *CreateConfigInput {
3100	s.Name = &v
3101	return s
3102}
3103
3104// SetTags sets the Tags field's value.
3105func (s *CreateConfigInput) SetTags(v map[string]*string) *CreateConfigInput {
3106	s.Tags = v
3107	return s
3108}
3109
3110type CreateConfigOutput struct {
3111	_ struct{} `type:"structure"`
3112
3113	ConfigArn *string `locationName:"configArn" type:"string"`
3114
3115	ConfigId *string `locationName:"configId" type:"string"`
3116
3117	ConfigType *string `locationName:"configType" type:"string" enum:"ConfigCapabilityType"`
3118}
3119
3120// String returns the string representation
3121func (s CreateConfigOutput) String() string {
3122	return awsutil.Prettify(s)
3123}
3124
3125// GoString returns the string representation
3126func (s CreateConfigOutput) GoString() string {
3127	return s.String()
3128}
3129
3130// SetConfigArn sets the ConfigArn field's value.
3131func (s *CreateConfigOutput) SetConfigArn(v string) *CreateConfigOutput {
3132	s.ConfigArn = &v
3133	return s
3134}
3135
3136// SetConfigId sets the ConfigId field's value.
3137func (s *CreateConfigOutput) SetConfigId(v string) *CreateConfigOutput {
3138	s.ConfigId = &v
3139	return s
3140}
3141
3142// SetConfigType sets the ConfigType field's value.
3143func (s *CreateConfigOutput) SetConfigType(v string) *CreateConfigOutput {
3144	s.ConfigType = &v
3145	return s
3146}
3147
3148type CreateDataflowEndpointGroupInput struct {
3149	_ struct{} `type:"structure"`
3150
3151	// EndpointDetails is a required field
3152	EndpointDetails []*EndpointDetails `locationName:"endpointDetails" type:"list" required:"true"`
3153
3154	Tags map[string]*string `locationName:"tags" type:"map"`
3155}
3156
3157// String returns the string representation
3158func (s CreateDataflowEndpointGroupInput) String() string {
3159	return awsutil.Prettify(s)
3160}
3161
3162// GoString returns the string representation
3163func (s CreateDataflowEndpointGroupInput) GoString() string {
3164	return s.String()
3165}
3166
3167// Validate inspects the fields of the type to determine if they are valid.
3168func (s *CreateDataflowEndpointGroupInput) Validate() error {
3169	invalidParams := request.ErrInvalidParams{Context: "CreateDataflowEndpointGroupInput"}
3170	if s.EndpointDetails == nil {
3171		invalidParams.Add(request.NewErrParamRequired("EndpointDetails"))
3172	}
3173	if s.EndpointDetails != nil {
3174		for i, v := range s.EndpointDetails {
3175			if v == nil {
3176				continue
3177			}
3178			if err := v.Validate(); err != nil {
3179				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "EndpointDetails", i), err.(request.ErrInvalidParams))
3180			}
3181		}
3182	}
3183
3184	if invalidParams.Len() > 0 {
3185		return invalidParams
3186	}
3187	return nil
3188}
3189
3190// SetEndpointDetails sets the EndpointDetails field's value.
3191func (s *CreateDataflowEndpointGroupInput) SetEndpointDetails(v []*EndpointDetails) *CreateDataflowEndpointGroupInput {
3192	s.EndpointDetails = v
3193	return s
3194}
3195
3196// SetTags sets the Tags field's value.
3197func (s *CreateDataflowEndpointGroupInput) SetTags(v map[string]*string) *CreateDataflowEndpointGroupInput {
3198	s.Tags = v
3199	return s
3200}
3201
3202type CreateDataflowEndpointGroupOutput struct {
3203	_ struct{} `type:"structure"`
3204
3205	DataflowEndpointGroupId *string `locationName:"dataflowEndpointGroupId" type:"string"`
3206}
3207
3208// String returns the string representation
3209func (s CreateDataflowEndpointGroupOutput) String() string {
3210	return awsutil.Prettify(s)
3211}
3212
3213// GoString returns the string representation
3214func (s CreateDataflowEndpointGroupOutput) GoString() string {
3215	return s.String()
3216}
3217
3218// SetDataflowEndpointGroupId sets the DataflowEndpointGroupId field's value.
3219func (s *CreateDataflowEndpointGroupOutput) SetDataflowEndpointGroupId(v string) *CreateDataflowEndpointGroupOutput {
3220	s.DataflowEndpointGroupId = &v
3221	return s
3222}
3223
3224type CreateMissionProfileInput struct {
3225	_ struct{} `type:"structure"`
3226
3227	ContactPostPassDurationSeconds *int64 `locationName:"contactPostPassDurationSeconds" min:"1" type:"integer"`
3228
3229	ContactPrePassDurationSeconds *int64 `locationName:"contactPrePassDurationSeconds" min:"1" type:"integer"`
3230
3231	// DataflowEdges is a required field
3232	DataflowEdges [][]*string `locationName:"dataflowEdges" type:"list" required:"true"`
3233
3234	// MinimumViableContactDurationSeconds is a required field
3235	MinimumViableContactDurationSeconds *int64 `locationName:"minimumViableContactDurationSeconds" min:"1" type:"integer" required:"true"`
3236
3237	// Name is a required field
3238	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
3239
3240	Tags map[string]*string `locationName:"tags" type:"map"`
3241
3242	// TrackingConfigArn is a required field
3243	TrackingConfigArn *string `locationName:"trackingConfigArn" type:"string" required:"true"`
3244}
3245
3246// String returns the string representation
3247func (s CreateMissionProfileInput) String() string {
3248	return awsutil.Prettify(s)
3249}
3250
3251// GoString returns the string representation
3252func (s CreateMissionProfileInput) GoString() string {
3253	return s.String()
3254}
3255
3256// Validate inspects the fields of the type to determine if they are valid.
3257func (s *CreateMissionProfileInput) Validate() error {
3258	invalidParams := request.ErrInvalidParams{Context: "CreateMissionProfileInput"}
3259	if s.ContactPostPassDurationSeconds != nil && *s.ContactPostPassDurationSeconds < 1 {
3260		invalidParams.Add(request.NewErrParamMinValue("ContactPostPassDurationSeconds", 1))
3261	}
3262	if s.ContactPrePassDurationSeconds != nil && *s.ContactPrePassDurationSeconds < 1 {
3263		invalidParams.Add(request.NewErrParamMinValue("ContactPrePassDurationSeconds", 1))
3264	}
3265	if s.DataflowEdges == nil {
3266		invalidParams.Add(request.NewErrParamRequired("DataflowEdges"))
3267	}
3268	if s.MinimumViableContactDurationSeconds == nil {
3269		invalidParams.Add(request.NewErrParamRequired("MinimumViableContactDurationSeconds"))
3270	}
3271	if s.MinimumViableContactDurationSeconds != nil && *s.MinimumViableContactDurationSeconds < 1 {
3272		invalidParams.Add(request.NewErrParamMinValue("MinimumViableContactDurationSeconds", 1))
3273	}
3274	if s.Name == nil {
3275		invalidParams.Add(request.NewErrParamRequired("Name"))
3276	}
3277	if s.Name != nil && len(*s.Name) < 1 {
3278		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
3279	}
3280	if s.TrackingConfigArn == nil {
3281		invalidParams.Add(request.NewErrParamRequired("TrackingConfigArn"))
3282	}
3283
3284	if invalidParams.Len() > 0 {
3285		return invalidParams
3286	}
3287	return nil
3288}
3289
3290// SetContactPostPassDurationSeconds sets the ContactPostPassDurationSeconds field's value.
3291func (s *CreateMissionProfileInput) SetContactPostPassDurationSeconds(v int64) *CreateMissionProfileInput {
3292	s.ContactPostPassDurationSeconds = &v
3293	return s
3294}
3295
3296// SetContactPrePassDurationSeconds sets the ContactPrePassDurationSeconds field's value.
3297func (s *CreateMissionProfileInput) SetContactPrePassDurationSeconds(v int64) *CreateMissionProfileInput {
3298	s.ContactPrePassDurationSeconds = &v
3299	return s
3300}
3301
3302// SetDataflowEdges sets the DataflowEdges field's value.
3303func (s *CreateMissionProfileInput) SetDataflowEdges(v [][]*string) *CreateMissionProfileInput {
3304	s.DataflowEdges = v
3305	return s
3306}
3307
3308// SetMinimumViableContactDurationSeconds sets the MinimumViableContactDurationSeconds field's value.
3309func (s *CreateMissionProfileInput) SetMinimumViableContactDurationSeconds(v int64) *CreateMissionProfileInput {
3310	s.MinimumViableContactDurationSeconds = &v
3311	return s
3312}
3313
3314// SetName sets the Name field's value.
3315func (s *CreateMissionProfileInput) SetName(v string) *CreateMissionProfileInput {
3316	s.Name = &v
3317	return s
3318}
3319
3320// SetTags sets the Tags field's value.
3321func (s *CreateMissionProfileInput) SetTags(v map[string]*string) *CreateMissionProfileInput {
3322	s.Tags = v
3323	return s
3324}
3325
3326// SetTrackingConfigArn sets the TrackingConfigArn field's value.
3327func (s *CreateMissionProfileInput) SetTrackingConfigArn(v string) *CreateMissionProfileInput {
3328	s.TrackingConfigArn = &v
3329	return s
3330}
3331
3332type CreateMissionProfileOutput struct {
3333	_ struct{} `type:"structure"`
3334
3335	MissionProfileId *string `locationName:"missionProfileId" type:"string"`
3336}
3337
3338// String returns the string representation
3339func (s CreateMissionProfileOutput) String() string {
3340	return awsutil.Prettify(s)
3341}
3342
3343// GoString returns the string representation
3344func (s CreateMissionProfileOutput) GoString() string {
3345	return s.String()
3346}
3347
3348// SetMissionProfileId sets the MissionProfileId field's value.
3349func (s *CreateMissionProfileOutput) SetMissionProfileId(v string) *CreateMissionProfileOutput {
3350	s.MissionProfileId = &v
3351	return s
3352}
3353
3354// Information about the ground station data.
3355type Data struct {
3356	_ struct{} `type:"structure"`
3357
3358	GroundStationId *string `locationName:"groundStationId" type:"string"`
3359
3360	GroundStationName *string `locationName:"groundStationName" type:"string"`
3361
3362	Region *string `locationName:"region" type:"string"`
3363}
3364
3365// String returns the string representation
3366func (s Data) String() string {
3367	return awsutil.Prettify(s)
3368}
3369
3370// GoString returns the string representation
3371func (s Data) GoString() string {
3372	return s.String()
3373}
3374
3375// SetGroundStationId sets the GroundStationId field's value.
3376func (s *Data) SetGroundStationId(v string) *Data {
3377	s.GroundStationId = &v
3378	return s
3379}
3380
3381// SetGroundStationName sets the GroundStationName field's value.
3382func (s *Data) SetGroundStationName(v string) *Data {
3383	s.GroundStationName = &v
3384	return s
3385}
3386
3387// SetRegion sets the Region field's value.
3388func (s *Data) SetRegion(v string) *Data {
3389	s.Region = &v
3390	return s
3391}
3392
3393// Information about a dataflow endpoint.
3394type DataflowEndpoint struct {
3395	_ struct{} `type:"structure"`
3396
3397	// Information about the socket address.
3398	Address *SocketAddress `locationName:"address" type:"structure"`
3399
3400	Name *string `locationName:"name" min:"1" type:"string"`
3401
3402	Status *string `locationName:"status" type:"string" enum:"EndpointStatus"`
3403}
3404
3405// String returns the string representation
3406func (s DataflowEndpoint) String() string {
3407	return awsutil.Prettify(s)
3408}
3409
3410// GoString returns the string representation
3411func (s DataflowEndpoint) GoString() string {
3412	return s.String()
3413}
3414
3415// Validate inspects the fields of the type to determine if they are valid.
3416func (s *DataflowEndpoint) Validate() error {
3417	invalidParams := request.ErrInvalidParams{Context: "DataflowEndpoint"}
3418	if s.Name != nil && len(*s.Name) < 1 {
3419		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
3420	}
3421	if s.Address != nil {
3422		if err := s.Address.Validate(); err != nil {
3423			invalidParams.AddNested("Address", err.(request.ErrInvalidParams))
3424		}
3425	}
3426
3427	if invalidParams.Len() > 0 {
3428		return invalidParams
3429	}
3430	return nil
3431}
3432
3433// SetAddress sets the Address field's value.
3434func (s *DataflowEndpoint) SetAddress(v *SocketAddress) *DataflowEndpoint {
3435	s.Address = v
3436	return s
3437}
3438
3439// SetName sets the Name field's value.
3440func (s *DataflowEndpoint) SetName(v string) *DataflowEndpoint {
3441	s.Name = &v
3442	return s
3443}
3444
3445// SetStatus sets the Status field's value.
3446func (s *DataflowEndpoint) SetStatus(v string) *DataflowEndpoint {
3447	s.Status = &v
3448	return s
3449}
3450
3451// Information about the dataflow endpoint Config.
3452type DataflowEndpointConfig struct {
3453	_ struct{} `type:"structure"`
3454
3455	// DataflowEndpointName is a required field
3456	DataflowEndpointName *string `locationName:"dataflowEndpointName" type:"string" required:"true"`
3457}
3458
3459// String returns the string representation
3460func (s DataflowEndpointConfig) String() string {
3461	return awsutil.Prettify(s)
3462}
3463
3464// GoString returns the string representation
3465func (s DataflowEndpointConfig) GoString() string {
3466	return s.String()
3467}
3468
3469// Validate inspects the fields of the type to determine if they are valid.
3470func (s *DataflowEndpointConfig) Validate() error {
3471	invalidParams := request.ErrInvalidParams{Context: "DataflowEndpointConfig"}
3472	if s.DataflowEndpointName == nil {
3473		invalidParams.Add(request.NewErrParamRequired("DataflowEndpointName"))
3474	}
3475
3476	if invalidParams.Len() > 0 {
3477		return invalidParams
3478	}
3479	return nil
3480}
3481
3482// SetDataflowEndpointName sets the DataflowEndpointName field's value.
3483func (s *DataflowEndpointConfig) SetDataflowEndpointName(v string) *DataflowEndpointConfig {
3484	s.DataflowEndpointName = &v
3485	return s
3486}
3487
3488// Item in a list of DataflowEndpoint groups.
3489type DataflowEndpointListItem struct {
3490	_ struct{} `type:"structure"`
3491
3492	DataflowEndpointGroupArn *string `locationName:"dataflowEndpointGroupArn" type:"string"`
3493
3494	DataflowEndpointGroupId *string `locationName:"dataflowEndpointGroupId" type:"string"`
3495}
3496
3497// String returns the string representation
3498func (s DataflowEndpointListItem) String() string {
3499	return awsutil.Prettify(s)
3500}
3501
3502// GoString returns the string representation
3503func (s DataflowEndpointListItem) GoString() string {
3504	return s.String()
3505}
3506
3507// SetDataflowEndpointGroupArn sets the DataflowEndpointGroupArn field's value.
3508func (s *DataflowEndpointListItem) SetDataflowEndpointGroupArn(v string) *DataflowEndpointListItem {
3509	s.DataflowEndpointGroupArn = &v
3510	return s
3511}
3512
3513// SetDataflowEndpointGroupId sets the DataflowEndpointGroupId field's value.
3514func (s *DataflowEndpointListItem) SetDataflowEndpointGroupId(v string) *DataflowEndpointListItem {
3515	s.DataflowEndpointGroupId = &v
3516	return s
3517}
3518
3519// Information about the decode Config.
3520type DecodeConfig struct {
3521	_ struct{} `type:"structure"`
3522
3523	// UnvalidatedJSON is a required field
3524	UnvalidatedJSON *string `locationName:"unvalidatedJSON" min:"2" type:"string" required:"true"`
3525}
3526
3527// String returns the string representation
3528func (s DecodeConfig) String() string {
3529	return awsutil.Prettify(s)
3530}
3531
3532// GoString returns the string representation
3533func (s DecodeConfig) GoString() string {
3534	return s.String()
3535}
3536
3537// Validate inspects the fields of the type to determine if they are valid.
3538func (s *DecodeConfig) Validate() error {
3539	invalidParams := request.ErrInvalidParams{Context: "DecodeConfig"}
3540	if s.UnvalidatedJSON == nil {
3541		invalidParams.Add(request.NewErrParamRequired("UnvalidatedJSON"))
3542	}
3543	if s.UnvalidatedJSON != nil && len(*s.UnvalidatedJSON) < 2 {
3544		invalidParams.Add(request.NewErrParamMinLen("UnvalidatedJSON", 2))
3545	}
3546
3547	if invalidParams.Len() > 0 {
3548		return invalidParams
3549	}
3550	return nil
3551}
3552
3553// SetUnvalidatedJSON sets the UnvalidatedJSON field's value.
3554func (s *DecodeConfig) SetUnvalidatedJSON(v string) *DecodeConfig {
3555	s.UnvalidatedJSON = &v
3556	return s
3557}
3558
3559type DeleteConfigInput struct {
3560	_ struct{} `type:"structure"`
3561
3562	// ConfigId is a required field
3563	ConfigId *string `location:"uri" locationName:"configId" type:"string" required:"true"`
3564
3565	// ConfigType is a required field
3566	ConfigType *string `location:"uri" locationName:"configType" type:"string" required:"true" enum:"ConfigCapabilityType"`
3567}
3568
3569// String returns the string representation
3570func (s DeleteConfigInput) String() string {
3571	return awsutil.Prettify(s)
3572}
3573
3574// GoString returns the string representation
3575func (s DeleteConfigInput) GoString() string {
3576	return s.String()
3577}
3578
3579// Validate inspects the fields of the type to determine if they are valid.
3580func (s *DeleteConfigInput) Validate() error {
3581	invalidParams := request.ErrInvalidParams{Context: "DeleteConfigInput"}
3582	if s.ConfigId == nil {
3583		invalidParams.Add(request.NewErrParamRequired("ConfigId"))
3584	}
3585	if s.ConfigId != nil && len(*s.ConfigId) < 1 {
3586		invalidParams.Add(request.NewErrParamMinLen("ConfigId", 1))
3587	}
3588	if s.ConfigType == nil {
3589		invalidParams.Add(request.NewErrParamRequired("ConfigType"))
3590	}
3591	if s.ConfigType != nil && len(*s.ConfigType) < 1 {
3592		invalidParams.Add(request.NewErrParamMinLen("ConfigType", 1))
3593	}
3594
3595	if invalidParams.Len() > 0 {
3596		return invalidParams
3597	}
3598	return nil
3599}
3600
3601// SetConfigId sets the ConfigId field's value.
3602func (s *DeleteConfigInput) SetConfigId(v string) *DeleteConfigInput {
3603	s.ConfigId = &v
3604	return s
3605}
3606
3607// SetConfigType sets the ConfigType field's value.
3608func (s *DeleteConfigInput) SetConfigType(v string) *DeleteConfigInput {
3609	s.ConfigType = &v
3610	return s
3611}
3612
3613type DeleteConfigOutput struct {
3614	_ struct{} `type:"structure"`
3615
3616	ConfigArn *string `locationName:"configArn" type:"string"`
3617
3618	ConfigId *string `locationName:"configId" type:"string"`
3619
3620	ConfigType *string `locationName:"configType" type:"string" enum:"ConfigCapabilityType"`
3621}
3622
3623// String returns the string representation
3624func (s DeleteConfigOutput) String() string {
3625	return awsutil.Prettify(s)
3626}
3627
3628// GoString returns the string representation
3629func (s DeleteConfigOutput) GoString() string {
3630	return s.String()
3631}
3632
3633// SetConfigArn sets the ConfigArn field's value.
3634func (s *DeleteConfigOutput) SetConfigArn(v string) *DeleteConfigOutput {
3635	s.ConfigArn = &v
3636	return s
3637}
3638
3639// SetConfigId sets the ConfigId field's value.
3640func (s *DeleteConfigOutput) SetConfigId(v string) *DeleteConfigOutput {
3641	s.ConfigId = &v
3642	return s
3643}
3644
3645// SetConfigType sets the ConfigType field's value.
3646func (s *DeleteConfigOutput) SetConfigType(v string) *DeleteConfigOutput {
3647	s.ConfigType = &v
3648	return s
3649}
3650
3651type DeleteDataflowEndpointGroupInput struct {
3652	_ struct{} `type:"structure"`
3653
3654	// DataflowEndpointGroupId is a required field
3655	DataflowEndpointGroupId *string `location:"uri" locationName:"dataflowEndpointGroupId" type:"string" required:"true"`
3656}
3657
3658// String returns the string representation
3659func (s DeleteDataflowEndpointGroupInput) String() string {
3660	return awsutil.Prettify(s)
3661}
3662
3663// GoString returns the string representation
3664func (s DeleteDataflowEndpointGroupInput) GoString() string {
3665	return s.String()
3666}
3667
3668// Validate inspects the fields of the type to determine if they are valid.
3669func (s *DeleteDataflowEndpointGroupInput) Validate() error {
3670	invalidParams := request.ErrInvalidParams{Context: "DeleteDataflowEndpointGroupInput"}
3671	if s.DataflowEndpointGroupId == nil {
3672		invalidParams.Add(request.NewErrParamRequired("DataflowEndpointGroupId"))
3673	}
3674	if s.DataflowEndpointGroupId != nil && len(*s.DataflowEndpointGroupId) < 1 {
3675		invalidParams.Add(request.NewErrParamMinLen("DataflowEndpointGroupId", 1))
3676	}
3677
3678	if invalidParams.Len() > 0 {
3679		return invalidParams
3680	}
3681	return nil
3682}
3683
3684// SetDataflowEndpointGroupId sets the DataflowEndpointGroupId field's value.
3685func (s *DeleteDataflowEndpointGroupInput) SetDataflowEndpointGroupId(v string) *DeleteDataflowEndpointGroupInput {
3686	s.DataflowEndpointGroupId = &v
3687	return s
3688}
3689
3690type DeleteDataflowEndpointGroupOutput struct {
3691	_ struct{} `type:"structure"`
3692
3693	DataflowEndpointGroupId *string `locationName:"dataflowEndpointGroupId" type:"string"`
3694}
3695
3696// String returns the string representation
3697func (s DeleteDataflowEndpointGroupOutput) String() string {
3698	return awsutil.Prettify(s)
3699}
3700
3701// GoString returns the string representation
3702func (s DeleteDataflowEndpointGroupOutput) GoString() string {
3703	return s.String()
3704}
3705
3706// SetDataflowEndpointGroupId sets the DataflowEndpointGroupId field's value.
3707func (s *DeleteDataflowEndpointGroupOutput) SetDataflowEndpointGroupId(v string) *DeleteDataflowEndpointGroupOutput {
3708	s.DataflowEndpointGroupId = &v
3709	return s
3710}
3711
3712type DeleteMissionProfileInput struct {
3713	_ struct{} `type:"structure"`
3714
3715	// MissionProfileId is a required field
3716	MissionProfileId *string `location:"uri" locationName:"missionProfileId" type:"string" required:"true"`
3717}
3718
3719// String returns the string representation
3720func (s DeleteMissionProfileInput) String() string {
3721	return awsutil.Prettify(s)
3722}
3723
3724// GoString returns the string representation
3725func (s DeleteMissionProfileInput) GoString() string {
3726	return s.String()
3727}
3728
3729// Validate inspects the fields of the type to determine if they are valid.
3730func (s *DeleteMissionProfileInput) Validate() error {
3731	invalidParams := request.ErrInvalidParams{Context: "DeleteMissionProfileInput"}
3732	if s.MissionProfileId == nil {
3733		invalidParams.Add(request.NewErrParamRequired("MissionProfileId"))
3734	}
3735	if s.MissionProfileId != nil && len(*s.MissionProfileId) < 1 {
3736		invalidParams.Add(request.NewErrParamMinLen("MissionProfileId", 1))
3737	}
3738
3739	if invalidParams.Len() > 0 {
3740		return invalidParams
3741	}
3742	return nil
3743}
3744
3745// SetMissionProfileId sets the MissionProfileId field's value.
3746func (s *DeleteMissionProfileInput) SetMissionProfileId(v string) *DeleteMissionProfileInput {
3747	s.MissionProfileId = &v
3748	return s
3749}
3750
3751type DeleteMissionProfileOutput struct {
3752	_ struct{} `type:"structure"`
3753
3754	MissionProfileId *string `locationName:"missionProfileId" type:"string"`
3755}
3756
3757// String returns the string representation
3758func (s DeleteMissionProfileOutput) String() string {
3759	return awsutil.Prettify(s)
3760}
3761
3762// GoString returns the string representation
3763func (s DeleteMissionProfileOutput) GoString() string {
3764	return s.String()
3765}
3766
3767// SetMissionProfileId sets the MissionProfileId field's value.
3768func (s *DeleteMissionProfileOutput) SetMissionProfileId(v string) *DeleteMissionProfileOutput {
3769	s.MissionProfileId = &v
3770	return s
3771}
3772
3773// Information about the demodulation Config.
3774type DemodulationConfig struct {
3775	_ struct{} `type:"structure"`
3776
3777	// UnvalidatedJSON is a required field
3778	UnvalidatedJSON *string `locationName:"unvalidatedJSON" min:"2" type:"string" required:"true"`
3779}
3780
3781// String returns the string representation
3782func (s DemodulationConfig) String() string {
3783	return awsutil.Prettify(s)
3784}
3785
3786// GoString returns the string representation
3787func (s DemodulationConfig) GoString() string {
3788	return s.String()
3789}
3790
3791// Validate inspects the fields of the type to determine if they are valid.
3792func (s *DemodulationConfig) Validate() error {
3793	invalidParams := request.ErrInvalidParams{Context: "DemodulationConfig"}
3794	if s.UnvalidatedJSON == nil {
3795		invalidParams.Add(request.NewErrParamRequired("UnvalidatedJSON"))
3796	}
3797	if s.UnvalidatedJSON != nil && len(*s.UnvalidatedJSON) < 2 {
3798		invalidParams.Add(request.NewErrParamMinLen("UnvalidatedJSON", 2))
3799	}
3800
3801	if invalidParams.Len() > 0 {
3802		return invalidParams
3803	}
3804	return nil
3805}
3806
3807// SetUnvalidatedJSON sets the UnvalidatedJSON field's value.
3808func (s *DemodulationConfig) SetUnvalidatedJSON(v string) *DemodulationConfig {
3809	s.UnvalidatedJSON = &v
3810	return s
3811}
3812
3813type DescribeContactInput struct {
3814	_ struct{} `type:"structure"`
3815
3816	// ContactId is a required field
3817	ContactId *string `location:"uri" locationName:"contactId" type:"string" required:"true"`
3818}
3819
3820// String returns the string representation
3821func (s DescribeContactInput) String() string {
3822	return awsutil.Prettify(s)
3823}
3824
3825// GoString returns the string representation
3826func (s DescribeContactInput) GoString() string {
3827	return s.String()
3828}
3829
3830// Validate inspects the fields of the type to determine if they are valid.
3831func (s *DescribeContactInput) Validate() error {
3832	invalidParams := request.ErrInvalidParams{Context: "DescribeContactInput"}
3833	if s.ContactId == nil {
3834		invalidParams.Add(request.NewErrParamRequired("ContactId"))
3835	}
3836	if s.ContactId != nil && len(*s.ContactId) < 1 {
3837		invalidParams.Add(request.NewErrParamMinLen("ContactId", 1))
3838	}
3839
3840	if invalidParams.Len() > 0 {
3841		return invalidParams
3842	}
3843	return nil
3844}
3845
3846// SetContactId sets the ContactId field's value.
3847func (s *DescribeContactInput) SetContactId(v string) *DescribeContactInput {
3848	s.ContactId = &v
3849	return s
3850}
3851
3852type DescribeContactOutput struct {
3853	_ struct{} `type:"structure"`
3854
3855	ContactId *string `locationName:"contactId" type:"string"`
3856
3857	ContactStatus *string `locationName:"contactStatus" type:"string" enum:"ContactStatus"`
3858
3859	EndTime *time.Time `locationName:"endTime" type:"timestamp"`
3860
3861	ErrorMessage *string `locationName:"errorMessage" type:"string"`
3862
3863	GroundStation *string `locationName:"groundStation" type:"string"`
3864
3865	// Elevation angle of the satellite in the sky during a contact.
3866	MaximumElevation *Elevation `locationName:"maximumElevation" type:"structure"`
3867
3868	MissionProfileArn *string `locationName:"missionProfileArn" type:"string"`
3869
3870	PostPassEndTime *time.Time `locationName:"postPassEndTime" type:"timestamp"`
3871
3872	PrePassStartTime *time.Time `locationName:"prePassStartTime" type:"timestamp"`
3873
3874	SatelliteArn *string `locationName:"satelliteArn" type:"string"`
3875
3876	StartTime *time.Time `locationName:"startTime" type:"timestamp"`
3877
3878	Tags map[string]*string `locationName:"tags" type:"map"`
3879}
3880
3881// String returns the string representation
3882func (s DescribeContactOutput) String() string {
3883	return awsutil.Prettify(s)
3884}
3885
3886// GoString returns the string representation
3887func (s DescribeContactOutput) GoString() string {
3888	return s.String()
3889}
3890
3891// SetContactId sets the ContactId field's value.
3892func (s *DescribeContactOutput) SetContactId(v string) *DescribeContactOutput {
3893	s.ContactId = &v
3894	return s
3895}
3896
3897// SetContactStatus sets the ContactStatus field's value.
3898func (s *DescribeContactOutput) SetContactStatus(v string) *DescribeContactOutput {
3899	s.ContactStatus = &v
3900	return s
3901}
3902
3903// SetEndTime sets the EndTime field's value.
3904func (s *DescribeContactOutput) SetEndTime(v time.Time) *DescribeContactOutput {
3905	s.EndTime = &v
3906	return s
3907}
3908
3909// SetErrorMessage sets the ErrorMessage field's value.
3910func (s *DescribeContactOutput) SetErrorMessage(v string) *DescribeContactOutput {
3911	s.ErrorMessage = &v
3912	return s
3913}
3914
3915// SetGroundStation sets the GroundStation field's value.
3916func (s *DescribeContactOutput) SetGroundStation(v string) *DescribeContactOutput {
3917	s.GroundStation = &v
3918	return s
3919}
3920
3921// SetMaximumElevation sets the MaximumElevation field's value.
3922func (s *DescribeContactOutput) SetMaximumElevation(v *Elevation) *DescribeContactOutput {
3923	s.MaximumElevation = v
3924	return s
3925}
3926
3927// SetMissionProfileArn sets the MissionProfileArn field's value.
3928func (s *DescribeContactOutput) SetMissionProfileArn(v string) *DescribeContactOutput {
3929	s.MissionProfileArn = &v
3930	return s
3931}
3932
3933// SetPostPassEndTime sets the PostPassEndTime field's value.
3934func (s *DescribeContactOutput) SetPostPassEndTime(v time.Time) *DescribeContactOutput {
3935	s.PostPassEndTime = &v
3936	return s
3937}
3938
3939// SetPrePassStartTime sets the PrePassStartTime field's value.
3940func (s *DescribeContactOutput) SetPrePassStartTime(v time.Time) *DescribeContactOutput {
3941	s.PrePassStartTime = &v
3942	return s
3943}
3944
3945// SetSatelliteArn sets the SatelliteArn field's value.
3946func (s *DescribeContactOutput) SetSatelliteArn(v string) *DescribeContactOutput {
3947	s.SatelliteArn = &v
3948	return s
3949}
3950
3951// SetStartTime sets the StartTime field's value.
3952func (s *DescribeContactOutput) SetStartTime(v time.Time) *DescribeContactOutput {
3953	s.StartTime = &v
3954	return s
3955}
3956
3957// SetTags sets the Tags field's value.
3958func (s *DescribeContactOutput) SetTags(v map[string]*string) *DescribeContactOutput {
3959	s.Tags = v
3960	return s
3961}
3962
3963// Object that represents EIRP.
3964type Eirp struct {
3965	_ struct{} `type:"structure"`
3966
3967	// Units is a required field
3968	Units *string `locationName:"units" type:"string" required:"true" enum:"EirpUnits"`
3969
3970	// Value is a required field
3971	Value *float64 `locationName:"value" type:"double" required:"true"`
3972}
3973
3974// String returns the string representation
3975func (s Eirp) String() string {
3976	return awsutil.Prettify(s)
3977}
3978
3979// GoString returns the string representation
3980func (s Eirp) GoString() string {
3981	return s.String()
3982}
3983
3984// Validate inspects the fields of the type to determine if they are valid.
3985func (s *Eirp) Validate() error {
3986	invalidParams := request.ErrInvalidParams{Context: "Eirp"}
3987	if s.Units == nil {
3988		invalidParams.Add(request.NewErrParamRequired("Units"))
3989	}
3990	if s.Value == nil {
3991		invalidParams.Add(request.NewErrParamRequired("Value"))
3992	}
3993
3994	if invalidParams.Len() > 0 {
3995		return invalidParams
3996	}
3997	return nil
3998}
3999
4000// SetUnits sets the Units field's value.
4001func (s *Eirp) SetUnits(v string) *Eirp {
4002	s.Units = &v
4003	return s
4004}
4005
4006// SetValue sets the Value field's value.
4007func (s *Eirp) SetValue(v float64) *Eirp {
4008	s.Value = &v
4009	return s
4010}
4011
4012// Elevation angle of the satellite in the sky during a contact.
4013type Elevation struct {
4014	_ struct{} `type:"structure"`
4015
4016	// Unit is a required field
4017	Unit *string `locationName:"unit" type:"string" required:"true" enum:"AngleUnits"`
4018
4019	// Value is a required field
4020	Value *float64 `locationName:"value" type:"double" required:"true"`
4021}
4022
4023// String returns the string representation
4024func (s Elevation) String() string {
4025	return awsutil.Prettify(s)
4026}
4027
4028// GoString returns the string representation
4029func (s Elevation) GoString() string {
4030	return s.String()
4031}
4032
4033// SetUnit sets the Unit field's value.
4034func (s *Elevation) SetUnit(v string) *Elevation {
4035	s.Unit = &v
4036	return s
4037}
4038
4039// SetValue sets the Value field's value.
4040func (s *Elevation) SetValue(v float64) *Elevation {
4041	s.Value = &v
4042	return s
4043}
4044
4045// Information about the endpoint details.
4046type EndpointDetails struct {
4047	_ struct{} `type:"structure"`
4048
4049	// Information about a dataflow endpoint.
4050	Endpoint *DataflowEndpoint `locationName:"endpoint" type:"structure"`
4051
4052	// Information about endpoints.
4053	SecurityDetails *SecurityDetails `locationName:"securityDetails" type:"structure"`
4054}
4055
4056// String returns the string representation
4057func (s EndpointDetails) String() string {
4058	return awsutil.Prettify(s)
4059}
4060
4061// GoString returns the string representation
4062func (s EndpointDetails) GoString() string {
4063	return s.String()
4064}
4065
4066// Validate inspects the fields of the type to determine if they are valid.
4067func (s *EndpointDetails) Validate() error {
4068	invalidParams := request.ErrInvalidParams{Context: "EndpointDetails"}
4069	if s.Endpoint != nil {
4070		if err := s.Endpoint.Validate(); err != nil {
4071			invalidParams.AddNested("Endpoint", err.(request.ErrInvalidParams))
4072		}
4073	}
4074	if s.SecurityDetails != nil {
4075		if err := s.SecurityDetails.Validate(); err != nil {
4076			invalidParams.AddNested("SecurityDetails", err.(request.ErrInvalidParams))
4077		}
4078	}
4079
4080	if invalidParams.Len() > 0 {
4081		return invalidParams
4082	}
4083	return nil
4084}
4085
4086// SetEndpoint sets the Endpoint field's value.
4087func (s *EndpointDetails) SetEndpoint(v *DataflowEndpoint) *EndpointDetails {
4088	s.Endpoint = v
4089	return s
4090}
4091
4092// SetSecurityDetails sets the SecurityDetails field's value.
4093func (s *EndpointDetails) SetSecurityDetails(v *SecurityDetails) *EndpointDetails {
4094	s.SecurityDetails = v
4095	return s
4096}
4097
4098// Object that describes the frequency.
4099type Frequency struct {
4100	_ struct{} `type:"structure"`
4101
4102	// Units is a required field
4103	Units *string `locationName:"units" type:"string" required:"true" enum:"FrequencyUnits"`
4104
4105	// Value is a required field
4106	Value *float64 `locationName:"value" type:"double" required:"true"`
4107}
4108
4109// String returns the string representation
4110func (s Frequency) String() string {
4111	return awsutil.Prettify(s)
4112}
4113
4114// GoString returns the string representation
4115func (s Frequency) GoString() string {
4116	return s.String()
4117}
4118
4119// Validate inspects the fields of the type to determine if they are valid.
4120func (s *Frequency) Validate() error {
4121	invalidParams := request.ErrInvalidParams{Context: "Frequency"}
4122	if s.Units == nil {
4123		invalidParams.Add(request.NewErrParamRequired("Units"))
4124	}
4125	if s.Value == nil {
4126		invalidParams.Add(request.NewErrParamRequired("Value"))
4127	}
4128
4129	if invalidParams.Len() > 0 {
4130		return invalidParams
4131	}
4132	return nil
4133}
4134
4135// SetUnits sets the Units field's value.
4136func (s *Frequency) SetUnits(v string) *Frequency {
4137	s.Units = &v
4138	return s
4139}
4140
4141// SetValue sets the Value field's value.
4142func (s *Frequency) SetValue(v float64) *Frequency {
4143	s.Value = &v
4144	return s
4145}
4146
4147// Object that describes the frequency bandwidth.
4148type FrequencyBandwidth struct {
4149	_ struct{} `type:"structure"`
4150
4151	// Units is a required field
4152	Units *string `locationName:"units" type:"string" required:"true" enum:"BandwidthUnits"`
4153
4154	// Value is a required field
4155	Value *float64 `locationName:"value" type:"double" required:"true"`
4156}
4157
4158// String returns the string representation
4159func (s FrequencyBandwidth) String() string {
4160	return awsutil.Prettify(s)
4161}
4162
4163// GoString returns the string representation
4164func (s FrequencyBandwidth) GoString() string {
4165	return s.String()
4166}
4167
4168// Validate inspects the fields of the type to determine if they are valid.
4169func (s *FrequencyBandwidth) Validate() error {
4170	invalidParams := request.ErrInvalidParams{Context: "FrequencyBandwidth"}
4171	if s.Units == nil {
4172		invalidParams.Add(request.NewErrParamRequired("Units"))
4173	}
4174	if s.Value == nil {
4175		invalidParams.Add(request.NewErrParamRequired("Value"))
4176	}
4177
4178	if invalidParams.Len() > 0 {
4179		return invalidParams
4180	}
4181	return nil
4182}
4183
4184// SetUnits sets the Units field's value.
4185func (s *FrequencyBandwidth) SetUnits(v string) *FrequencyBandwidth {
4186	s.Units = &v
4187	return s
4188}
4189
4190// SetValue sets the Value field's value.
4191func (s *FrequencyBandwidth) SetValue(v float64) *FrequencyBandwidth {
4192	s.Value = &v
4193	return s
4194}
4195
4196type GetConfigInput struct {
4197	_ struct{} `type:"structure"`
4198
4199	// ConfigId is a required field
4200	ConfigId *string `location:"uri" locationName:"configId" type:"string" required:"true"`
4201
4202	// ConfigType is a required field
4203	ConfigType *string `location:"uri" locationName:"configType" type:"string" required:"true" enum:"ConfigCapabilityType"`
4204}
4205
4206// String returns the string representation
4207func (s GetConfigInput) String() string {
4208	return awsutil.Prettify(s)
4209}
4210
4211// GoString returns the string representation
4212func (s GetConfigInput) GoString() string {
4213	return s.String()
4214}
4215
4216// Validate inspects the fields of the type to determine if they are valid.
4217func (s *GetConfigInput) Validate() error {
4218	invalidParams := request.ErrInvalidParams{Context: "GetConfigInput"}
4219	if s.ConfigId == nil {
4220		invalidParams.Add(request.NewErrParamRequired("ConfigId"))
4221	}
4222	if s.ConfigId != nil && len(*s.ConfigId) < 1 {
4223		invalidParams.Add(request.NewErrParamMinLen("ConfigId", 1))
4224	}
4225	if s.ConfigType == nil {
4226		invalidParams.Add(request.NewErrParamRequired("ConfigType"))
4227	}
4228	if s.ConfigType != nil && len(*s.ConfigType) < 1 {
4229		invalidParams.Add(request.NewErrParamMinLen("ConfigType", 1))
4230	}
4231
4232	if invalidParams.Len() > 0 {
4233		return invalidParams
4234	}
4235	return nil
4236}
4237
4238// SetConfigId sets the ConfigId field's value.
4239func (s *GetConfigInput) SetConfigId(v string) *GetConfigInput {
4240	s.ConfigId = &v
4241	return s
4242}
4243
4244// SetConfigType sets the ConfigType field's value.
4245func (s *GetConfigInput) SetConfigType(v string) *GetConfigInput {
4246	s.ConfigType = &v
4247	return s
4248}
4249
4250type GetConfigOutput struct {
4251	_ struct{} `type:"structure"`
4252
4253	// ConfigArn is a required field
4254	ConfigArn *string `locationName:"configArn" type:"string" required:"true"`
4255
4256	// Object containing the parameters for a Config.
4257	//
4258	// See the subtype definitions for what each type of Config contains.
4259	//
4260	// ConfigData is a required field
4261	ConfigData *ConfigTypeData `locationName:"configData" type:"structure" required:"true"`
4262
4263	// ConfigId is a required field
4264	ConfigId *string `locationName:"configId" type:"string" required:"true"`
4265
4266	ConfigType *string `locationName:"configType" type:"string" enum:"ConfigCapabilityType"`
4267
4268	// Name is a required field
4269	Name *string `locationName:"name" type:"string" required:"true"`
4270
4271	Tags map[string]*string `locationName:"tags" type:"map"`
4272}
4273
4274// String returns the string representation
4275func (s GetConfigOutput) String() string {
4276	return awsutil.Prettify(s)
4277}
4278
4279// GoString returns the string representation
4280func (s GetConfigOutput) GoString() string {
4281	return s.String()
4282}
4283
4284// SetConfigArn sets the ConfigArn field's value.
4285func (s *GetConfigOutput) SetConfigArn(v string) *GetConfigOutput {
4286	s.ConfigArn = &v
4287	return s
4288}
4289
4290// SetConfigData sets the ConfigData field's value.
4291func (s *GetConfigOutput) SetConfigData(v *ConfigTypeData) *GetConfigOutput {
4292	s.ConfigData = v
4293	return s
4294}
4295
4296// SetConfigId sets the ConfigId field's value.
4297func (s *GetConfigOutput) SetConfigId(v string) *GetConfigOutput {
4298	s.ConfigId = &v
4299	return s
4300}
4301
4302// SetConfigType sets the ConfigType field's value.
4303func (s *GetConfigOutput) SetConfigType(v string) *GetConfigOutput {
4304	s.ConfigType = &v
4305	return s
4306}
4307
4308// SetName sets the Name field's value.
4309func (s *GetConfigOutput) SetName(v string) *GetConfigOutput {
4310	s.Name = &v
4311	return s
4312}
4313
4314// SetTags sets the Tags field's value.
4315func (s *GetConfigOutput) SetTags(v map[string]*string) *GetConfigOutput {
4316	s.Tags = v
4317	return s
4318}
4319
4320type GetDataflowEndpointGroupInput struct {
4321	_ struct{} `type:"structure"`
4322
4323	// DataflowEndpointGroupId is a required field
4324	DataflowEndpointGroupId *string `location:"uri" locationName:"dataflowEndpointGroupId" type:"string" required:"true"`
4325}
4326
4327// String returns the string representation
4328func (s GetDataflowEndpointGroupInput) String() string {
4329	return awsutil.Prettify(s)
4330}
4331
4332// GoString returns the string representation
4333func (s GetDataflowEndpointGroupInput) GoString() string {
4334	return s.String()
4335}
4336
4337// Validate inspects the fields of the type to determine if they are valid.
4338func (s *GetDataflowEndpointGroupInput) Validate() error {
4339	invalidParams := request.ErrInvalidParams{Context: "GetDataflowEndpointGroupInput"}
4340	if s.DataflowEndpointGroupId == nil {
4341		invalidParams.Add(request.NewErrParamRequired("DataflowEndpointGroupId"))
4342	}
4343	if s.DataflowEndpointGroupId != nil && len(*s.DataflowEndpointGroupId) < 1 {
4344		invalidParams.Add(request.NewErrParamMinLen("DataflowEndpointGroupId", 1))
4345	}
4346
4347	if invalidParams.Len() > 0 {
4348		return invalidParams
4349	}
4350	return nil
4351}
4352
4353// SetDataflowEndpointGroupId sets the DataflowEndpointGroupId field's value.
4354func (s *GetDataflowEndpointGroupInput) SetDataflowEndpointGroupId(v string) *GetDataflowEndpointGroupInput {
4355	s.DataflowEndpointGroupId = &v
4356	return s
4357}
4358
4359type GetDataflowEndpointGroupOutput struct {
4360	_ struct{} `type:"structure"`
4361
4362	DataflowEndpointGroupArn *string `locationName:"dataflowEndpointGroupArn" type:"string"`
4363
4364	DataflowEndpointGroupId *string `locationName:"dataflowEndpointGroupId" type:"string"`
4365
4366	EndpointsDetails []*EndpointDetails `locationName:"endpointsDetails" type:"list"`
4367
4368	Tags map[string]*string `locationName:"tags" type:"map"`
4369}
4370
4371// String returns the string representation
4372func (s GetDataflowEndpointGroupOutput) String() string {
4373	return awsutil.Prettify(s)
4374}
4375
4376// GoString returns the string representation
4377func (s GetDataflowEndpointGroupOutput) GoString() string {
4378	return s.String()
4379}
4380
4381// SetDataflowEndpointGroupArn sets the DataflowEndpointGroupArn field's value.
4382func (s *GetDataflowEndpointGroupOutput) SetDataflowEndpointGroupArn(v string) *GetDataflowEndpointGroupOutput {
4383	s.DataflowEndpointGroupArn = &v
4384	return s
4385}
4386
4387// SetDataflowEndpointGroupId sets the DataflowEndpointGroupId field's value.
4388func (s *GetDataflowEndpointGroupOutput) SetDataflowEndpointGroupId(v string) *GetDataflowEndpointGroupOutput {
4389	s.DataflowEndpointGroupId = &v
4390	return s
4391}
4392
4393// SetEndpointsDetails sets the EndpointsDetails field's value.
4394func (s *GetDataflowEndpointGroupOutput) SetEndpointsDetails(v []*EndpointDetails) *GetDataflowEndpointGroupOutput {
4395	s.EndpointsDetails = v
4396	return s
4397}
4398
4399// SetTags sets the Tags field's value.
4400func (s *GetDataflowEndpointGroupOutput) SetTags(v map[string]*string) *GetDataflowEndpointGroupOutput {
4401	s.Tags = v
4402	return s
4403}
4404
4405type GetMinuteUsageInput struct {
4406	_ struct{} `type:"structure"`
4407
4408	// Month is a required field
4409	Month *int64 `locationName:"month" type:"integer" required:"true"`
4410
4411	// Year is a required field
4412	Year *int64 `locationName:"year" type:"integer" required:"true"`
4413}
4414
4415// String returns the string representation
4416func (s GetMinuteUsageInput) String() string {
4417	return awsutil.Prettify(s)
4418}
4419
4420// GoString returns the string representation
4421func (s GetMinuteUsageInput) GoString() string {
4422	return s.String()
4423}
4424
4425// Validate inspects the fields of the type to determine if they are valid.
4426func (s *GetMinuteUsageInput) Validate() error {
4427	invalidParams := request.ErrInvalidParams{Context: "GetMinuteUsageInput"}
4428	if s.Month == nil {
4429		invalidParams.Add(request.NewErrParamRequired("Month"))
4430	}
4431	if s.Year == nil {
4432		invalidParams.Add(request.NewErrParamRequired("Year"))
4433	}
4434
4435	if invalidParams.Len() > 0 {
4436		return invalidParams
4437	}
4438	return nil
4439}
4440
4441// SetMonth sets the Month field's value.
4442func (s *GetMinuteUsageInput) SetMonth(v int64) *GetMinuteUsageInput {
4443	s.Month = &v
4444	return s
4445}
4446
4447// SetYear sets the Year field's value.
4448func (s *GetMinuteUsageInput) SetYear(v int64) *GetMinuteUsageInput {
4449	s.Year = &v
4450	return s
4451}
4452
4453type GetMinuteUsageOutput struct {
4454	_ struct{} `type:"structure"`
4455
4456	EstimatedMinutesRemaining *int64 `locationName:"estimatedMinutesRemaining" type:"integer"`
4457
4458	IsReservedMinutesCustomer *bool `locationName:"isReservedMinutesCustomer" type:"boolean"`
4459
4460	TotalReservedMinuteAllocation *int64 `locationName:"totalReservedMinuteAllocation" type:"integer"`
4461
4462	TotalScheduledMinutes *int64 `locationName:"totalScheduledMinutes" type:"integer"`
4463
4464	UpcomingMinutesScheduled *int64 `locationName:"upcomingMinutesScheduled" type:"integer"`
4465}
4466
4467// String returns the string representation
4468func (s GetMinuteUsageOutput) String() string {
4469	return awsutil.Prettify(s)
4470}
4471
4472// GoString returns the string representation
4473func (s GetMinuteUsageOutput) GoString() string {
4474	return s.String()
4475}
4476
4477// SetEstimatedMinutesRemaining sets the EstimatedMinutesRemaining field's value.
4478func (s *GetMinuteUsageOutput) SetEstimatedMinutesRemaining(v int64) *GetMinuteUsageOutput {
4479	s.EstimatedMinutesRemaining = &v
4480	return s
4481}
4482
4483// SetIsReservedMinutesCustomer sets the IsReservedMinutesCustomer field's value.
4484func (s *GetMinuteUsageOutput) SetIsReservedMinutesCustomer(v bool) *GetMinuteUsageOutput {
4485	s.IsReservedMinutesCustomer = &v
4486	return s
4487}
4488
4489// SetTotalReservedMinuteAllocation sets the TotalReservedMinuteAllocation field's value.
4490func (s *GetMinuteUsageOutput) SetTotalReservedMinuteAllocation(v int64) *GetMinuteUsageOutput {
4491	s.TotalReservedMinuteAllocation = &v
4492	return s
4493}
4494
4495// SetTotalScheduledMinutes sets the TotalScheduledMinutes field's value.
4496func (s *GetMinuteUsageOutput) SetTotalScheduledMinutes(v int64) *GetMinuteUsageOutput {
4497	s.TotalScheduledMinutes = &v
4498	return s
4499}
4500
4501// SetUpcomingMinutesScheduled sets the UpcomingMinutesScheduled field's value.
4502func (s *GetMinuteUsageOutput) SetUpcomingMinutesScheduled(v int64) *GetMinuteUsageOutput {
4503	s.UpcomingMinutesScheduled = &v
4504	return s
4505}
4506
4507type GetMissionProfileInput struct {
4508	_ struct{} `type:"structure"`
4509
4510	// MissionProfileId is a required field
4511	MissionProfileId *string `location:"uri" locationName:"missionProfileId" type:"string" required:"true"`
4512}
4513
4514// String returns the string representation
4515func (s GetMissionProfileInput) String() string {
4516	return awsutil.Prettify(s)
4517}
4518
4519// GoString returns the string representation
4520func (s GetMissionProfileInput) GoString() string {
4521	return s.String()
4522}
4523
4524// Validate inspects the fields of the type to determine if they are valid.
4525func (s *GetMissionProfileInput) Validate() error {
4526	invalidParams := request.ErrInvalidParams{Context: "GetMissionProfileInput"}
4527	if s.MissionProfileId == nil {
4528		invalidParams.Add(request.NewErrParamRequired("MissionProfileId"))
4529	}
4530	if s.MissionProfileId != nil && len(*s.MissionProfileId) < 1 {
4531		invalidParams.Add(request.NewErrParamMinLen("MissionProfileId", 1))
4532	}
4533
4534	if invalidParams.Len() > 0 {
4535		return invalidParams
4536	}
4537	return nil
4538}
4539
4540// SetMissionProfileId sets the MissionProfileId field's value.
4541func (s *GetMissionProfileInput) SetMissionProfileId(v string) *GetMissionProfileInput {
4542	s.MissionProfileId = &v
4543	return s
4544}
4545
4546type GetMissionProfileOutput struct {
4547	_ struct{} `type:"structure"`
4548
4549	ContactPostPassDurationSeconds *int64 `locationName:"contactPostPassDurationSeconds" min:"1" type:"integer"`
4550
4551	ContactPrePassDurationSeconds *int64 `locationName:"contactPrePassDurationSeconds" min:"1" type:"integer"`
4552
4553	DataflowEdges [][]*string `locationName:"dataflowEdges" type:"list"`
4554
4555	MinimumViableContactDurationSeconds *int64 `locationName:"minimumViableContactDurationSeconds" min:"1" type:"integer"`
4556
4557	MissionProfileArn *string `locationName:"missionProfileArn" type:"string"`
4558
4559	MissionProfileId *string `locationName:"missionProfileId" type:"string"`
4560
4561	Name *string `locationName:"name" type:"string"`
4562
4563	Region *string `locationName:"region" type:"string"`
4564
4565	Tags map[string]*string `locationName:"tags" type:"map"`
4566
4567	TrackingConfigArn *string `locationName:"trackingConfigArn" type:"string"`
4568}
4569
4570// String returns the string representation
4571func (s GetMissionProfileOutput) String() string {
4572	return awsutil.Prettify(s)
4573}
4574
4575// GoString returns the string representation
4576func (s GetMissionProfileOutput) GoString() string {
4577	return s.String()
4578}
4579
4580// SetContactPostPassDurationSeconds sets the ContactPostPassDurationSeconds field's value.
4581func (s *GetMissionProfileOutput) SetContactPostPassDurationSeconds(v int64) *GetMissionProfileOutput {
4582	s.ContactPostPassDurationSeconds = &v
4583	return s
4584}
4585
4586// SetContactPrePassDurationSeconds sets the ContactPrePassDurationSeconds field's value.
4587func (s *GetMissionProfileOutput) SetContactPrePassDurationSeconds(v int64) *GetMissionProfileOutput {
4588	s.ContactPrePassDurationSeconds = &v
4589	return s
4590}
4591
4592// SetDataflowEdges sets the DataflowEdges field's value.
4593func (s *GetMissionProfileOutput) SetDataflowEdges(v [][]*string) *GetMissionProfileOutput {
4594	s.DataflowEdges = v
4595	return s
4596}
4597
4598// SetMinimumViableContactDurationSeconds sets the MinimumViableContactDurationSeconds field's value.
4599func (s *GetMissionProfileOutput) SetMinimumViableContactDurationSeconds(v int64) *GetMissionProfileOutput {
4600	s.MinimumViableContactDurationSeconds = &v
4601	return s
4602}
4603
4604// SetMissionProfileArn sets the MissionProfileArn field's value.
4605func (s *GetMissionProfileOutput) SetMissionProfileArn(v string) *GetMissionProfileOutput {
4606	s.MissionProfileArn = &v
4607	return s
4608}
4609
4610// SetMissionProfileId sets the MissionProfileId field's value.
4611func (s *GetMissionProfileOutput) SetMissionProfileId(v string) *GetMissionProfileOutput {
4612	s.MissionProfileId = &v
4613	return s
4614}
4615
4616// SetName sets the Name field's value.
4617func (s *GetMissionProfileOutput) SetName(v string) *GetMissionProfileOutput {
4618	s.Name = &v
4619	return s
4620}
4621
4622// SetRegion sets the Region field's value.
4623func (s *GetMissionProfileOutput) SetRegion(v string) *GetMissionProfileOutput {
4624	s.Region = &v
4625	return s
4626}
4627
4628// SetTags sets the Tags field's value.
4629func (s *GetMissionProfileOutput) SetTags(v map[string]*string) *GetMissionProfileOutput {
4630	s.Tags = v
4631	return s
4632}
4633
4634// SetTrackingConfigArn sets the TrackingConfigArn field's value.
4635func (s *GetMissionProfileOutput) SetTrackingConfigArn(v string) *GetMissionProfileOutput {
4636	s.TrackingConfigArn = &v
4637	return s
4638}
4639
4640type GetSatelliteInput struct {
4641	_ struct{} `type:"structure"`
4642
4643	// SatelliteId is a required field
4644	SatelliteId *string `location:"uri" locationName:"satelliteId" type:"string" required:"true"`
4645}
4646
4647// String returns the string representation
4648func (s GetSatelliteInput) String() string {
4649	return awsutil.Prettify(s)
4650}
4651
4652// GoString returns the string representation
4653func (s GetSatelliteInput) GoString() string {
4654	return s.String()
4655}
4656
4657// Validate inspects the fields of the type to determine if they are valid.
4658func (s *GetSatelliteInput) Validate() error {
4659	invalidParams := request.ErrInvalidParams{Context: "GetSatelliteInput"}
4660	if s.SatelliteId == nil {
4661		invalidParams.Add(request.NewErrParamRequired("SatelliteId"))
4662	}
4663	if s.SatelliteId != nil && len(*s.SatelliteId) < 1 {
4664		invalidParams.Add(request.NewErrParamMinLen("SatelliteId", 1))
4665	}
4666
4667	if invalidParams.Len() > 0 {
4668		return invalidParams
4669	}
4670	return nil
4671}
4672
4673// SetSatelliteId sets the SatelliteId field's value.
4674func (s *GetSatelliteInput) SetSatelliteId(v string) *GetSatelliteInput {
4675	s.SatelliteId = &v
4676	return s
4677}
4678
4679type GetSatelliteOutput struct {
4680	_ struct{} `type:"structure"`
4681
4682	DateCreated *time.Time `locationName:"dateCreated" type:"timestamp"`
4683
4684	LastUpdated *time.Time `locationName:"lastUpdated" type:"timestamp"`
4685
4686	NoradSatelliteID *int64 `locationName:"noradSatelliteID" min:"1" type:"integer"`
4687
4688	SatelliteArn *string `locationName:"satelliteArn" type:"string"`
4689
4690	SatelliteId *string `locationName:"satelliteId" min:"1" type:"string"`
4691
4692	Tags map[string]*string `locationName:"tags" type:"map"`
4693}
4694
4695// String returns the string representation
4696func (s GetSatelliteOutput) String() string {
4697	return awsutil.Prettify(s)
4698}
4699
4700// GoString returns the string representation
4701func (s GetSatelliteOutput) GoString() string {
4702	return s.String()
4703}
4704
4705// SetDateCreated sets the DateCreated field's value.
4706func (s *GetSatelliteOutput) SetDateCreated(v time.Time) *GetSatelliteOutput {
4707	s.DateCreated = &v
4708	return s
4709}
4710
4711// SetLastUpdated sets the LastUpdated field's value.
4712func (s *GetSatelliteOutput) SetLastUpdated(v time.Time) *GetSatelliteOutput {
4713	s.LastUpdated = &v
4714	return s
4715}
4716
4717// SetNoradSatelliteID sets the NoradSatelliteID field's value.
4718func (s *GetSatelliteOutput) SetNoradSatelliteID(v int64) *GetSatelliteOutput {
4719	s.NoradSatelliteID = &v
4720	return s
4721}
4722
4723// SetSatelliteArn sets the SatelliteArn field's value.
4724func (s *GetSatelliteOutput) SetSatelliteArn(v string) *GetSatelliteOutput {
4725	s.SatelliteArn = &v
4726	return s
4727}
4728
4729// SetSatelliteId sets the SatelliteId field's value.
4730func (s *GetSatelliteOutput) SetSatelliteId(v string) *GetSatelliteOutput {
4731	s.SatelliteId = &v
4732	return s
4733}
4734
4735// SetTags sets the Tags field's value.
4736func (s *GetSatelliteOutput) SetTags(v map[string]*string) *GetSatelliteOutput {
4737	s.Tags = v
4738	return s
4739}
4740
4741type ListConfigsInput struct {
4742	_ struct{} `type:"structure"`
4743
4744	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
4745
4746	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
4747}
4748
4749// String returns the string representation
4750func (s ListConfigsInput) String() string {
4751	return awsutil.Prettify(s)
4752}
4753
4754// GoString returns the string representation
4755func (s ListConfigsInput) GoString() string {
4756	return s.String()
4757}
4758
4759// SetMaxResults sets the MaxResults field's value.
4760func (s *ListConfigsInput) SetMaxResults(v int64) *ListConfigsInput {
4761	s.MaxResults = &v
4762	return s
4763}
4764
4765// SetNextToken sets the NextToken field's value.
4766func (s *ListConfigsInput) SetNextToken(v string) *ListConfigsInput {
4767	s.NextToken = &v
4768	return s
4769}
4770
4771type ListConfigsOutput struct {
4772	_ struct{} `type:"structure"`
4773
4774	ConfigList []*ConfigListItem `locationName:"configList" type:"list"`
4775
4776	NextToken *string `locationName:"nextToken" type:"string"`
4777}
4778
4779// String returns the string representation
4780func (s ListConfigsOutput) String() string {
4781	return awsutil.Prettify(s)
4782}
4783
4784// GoString returns the string representation
4785func (s ListConfigsOutput) GoString() string {
4786	return s.String()
4787}
4788
4789// SetConfigList sets the ConfigList field's value.
4790func (s *ListConfigsOutput) SetConfigList(v []*ConfigListItem) *ListConfigsOutput {
4791	s.ConfigList = v
4792	return s
4793}
4794
4795// SetNextToken sets the NextToken field's value.
4796func (s *ListConfigsOutput) SetNextToken(v string) *ListConfigsOutput {
4797	s.NextToken = &v
4798	return s
4799}
4800
4801type ListContactsInput struct {
4802	_ struct{} `type:"structure"`
4803
4804	// EndTime is a required field
4805	EndTime *time.Time `locationName:"endTime" type:"timestamp" required:"true"`
4806
4807	GroundStation *string `locationName:"groundStation" type:"string"`
4808
4809	MaxResults *int64 `locationName:"maxResults" type:"integer"`
4810
4811	MissionProfileArn *string `locationName:"missionProfileArn" type:"string"`
4812
4813	NextToken *string `locationName:"nextToken" type:"string"`
4814
4815	SatelliteArn *string `locationName:"satelliteArn" type:"string"`
4816
4817	// StartTime is a required field
4818	StartTime *time.Time `locationName:"startTime" type:"timestamp" required:"true"`
4819
4820	// StatusList is a required field
4821	StatusList []*string `locationName:"statusList" type:"list" required:"true"`
4822}
4823
4824// String returns the string representation
4825func (s ListContactsInput) String() string {
4826	return awsutil.Prettify(s)
4827}
4828
4829// GoString returns the string representation
4830func (s ListContactsInput) GoString() string {
4831	return s.String()
4832}
4833
4834// Validate inspects the fields of the type to determine if they are valid.
4835func (s *ListContactsInput) Validate() error {
4836	invalidParams := request.ErrInvalidParams{Context: "ListContactsInput"}
4837	if s.EndTime == nil {
4838		invalidParams.Add(request.NewErrParamRequired("EndTime"))
4839	}
4840	if s.StartTime == nil {
4841		invalidParams.Add(request.NewErrParamRequired("StartTime"))
4842	}
4843	if s.StatusList == nil {
4844		invalidParams.Add(request.NewErrParamRequired("StatusList"))
4845	}
4846
4847	if invalidParams.Len() > 0 {
4848		return invalidParams
4849	}
4850	return nil
4851}
4852
4853// SetEndTime sets the EndTime field's value.
4854func (s *ListContactsInput) SetEndTime(v time.Time) *ListContactsInput {
4855	s.EndTime = &v
4856	return s
4857}
4858
4859// SetGroundStation sets the GroundStation field's value.
4860func (s *ListContactsInput) SetGroundStation(v string) *ListContactsInput {
4861	s.GroundStation = &v
4862	return s
4863}
4864
4865// SetMaxResults sets the MaxResults field's value.
4866func (s *ListContactsInput) SetMaxResults(v int64) *ListContactsInput {
4867	s.MaxResults = &v
4868	return s
4869}
4870
4871// SetMissionProfileArn sets the MissionProfileArn field's value.
4872func (s *ListContactsInput) SetMissionProfileArn(v string) *ListContactsInput {
4873	s.MissionProfileArn = &v
4874	return s
4875}
4876
4877// SetNextToken sets the NextToken field's value.
4878func (s *ListContactsInput) SetNextToken(v string) *ListContactsInput {
4879	s.NextToken = &v
4880	return s
4881}
4882
4883// SetSatelliteArn sets the SatelliteArn field's value.
4884func (s *ListContactsInput) SetSatelliteArn(v string) *ListContactsInput {
4885	s.SatelliteArn = &v
4886	return s
4887}
4888
4889// SetStartTime sets the StartTime field's value.
4890func (s *ListContactsInput) SetStartTime(v time.Time) *ListContactsInput {
4891	s.StartTime = &v
4892	return s
4893}
4894
4895// SetStatusList sets the StatusList field's value.
4896func (s *ListContactsInput) SetStatusList(v []*string) *ListContactsInput {
4897	s.StatusList = v
4898	return s
4899}
4900
4901type ListContactsOutput struct {
4902	_ struct{} `type:"structure"`
4903
4904	ContactList []*ContactData `locationName:"contactList" type:"list"`
4905
4906	NextToken *string `locationName:"nextToken" type:"string"`
4907}
4908
4909// String returns the string representation
4910func (s ListContactsOutput) String() string {
4911	return awsutil.Prettify(s)
4912}
4913
4914// GoString returns the string representation
4915func (s ListContactsOutput) GoString() string {
4916	return s.String()
4917}
4918
4919// SetContactList sets the ContactList field's value.
4920func (s *ListContactsOutput) SetContactList(v []*ContactData) *ListContactsOutput {
4921	s.ContactList = v
4922	return s
4923}
4924
4925// SetNextToken sets the NextToken field's value.
4926func (s *ListContactsOutput) SetNextToken(v string) *ListContactsOutput {
4927	s.NextToken = &v
4928	return s
4929}
4930
4931type ListDataflowEndpointGroupsInput struct {
4932	_ struct{} `type:"structure"`
4933
4934	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
4935
4936	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
4937}
4938
4939// String returns the string representation
4940func (s ListDataflowEndpointGroupsInput) String() string {
4941	return awsutil.Prettify(s)
4942}
4943
4944// GoString returns the string representation
4945func (s ListDataflowEndpointGroupsInput) GoString() string {
4946	return s.String()
4947}
4948
4949// SetMaxResults sets the MaxResults field's value.
4950func (s *ListDataflowEndpointGroupsInput) SetMaxResults(v int64) *ListDataflowEndpointGroupsInput {
4951	s.MaxResults = &v
4952	return s
4953}
4954
4955// SetNextToken sets the NextToken field's value.
4956func (s *ListDataflowEndpointGroupsInput) SetNextToken(v string) *ListDataflowEndpointGroupsInput {
4957	s.NextToken = &v
4958	return s
4959}
4960
4961type ListDataflowEndpointGroupsOutput struct {
4962	_ struct{} `type:"structure"`
4963
4964	DataflowEndpointGroupList []*DataflowEndpointListItem `locationName:"dataflowEndpointGroupList" type:"list"`
4965
4966	NextToken *string `locationName:"nextToken" type:"string"`
4967}
4968
4969// String returns the string representation
4970func (s ListDataflowEndpointGroupsOutput) String() string {
4971	return awsutil.Prettify(s)
4972}
4973
4974// GoString returns the string representation
4975func (s ListDataflowEndpointGroupsOutput) GoString() string {
4976	return s.String()
4977}
4978
4979// SetDataflowEndpointGroupList sets the DataflowEndpointGroupList field's value.
4980func (s *ListDataflowEndpointGroupsOutput) SetDataflowEndpointGroupList(v []*DataflowEndpointListItem) *ListDataflowEndpointGroupsOutput {
4981	s.DataflowEndpointGroupList = v
4982	return s
4983}
4984
4985// SetNextToken sets the NextToken field's value.
4986func (s *ListDataflowEndpointGroupsOutput) SetNextToken(v string) *ListDataflowEndpointGroupsOutput {
4987	s.NextToken = &v
4988	return s
4989}
4990
4991type ListGroundStationsInput struct {
4992	_ struct{} `type:"structure"`
4993
4994	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
4995
4996	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
4997}
4998
4999// String returns the string representation
5000func (s ListGroundStationsInput) String() string {
5001	return awsutil.Prettify(s)
5002}
5003
5004// GoString returns the string representation
5005func (s ListGroundStationsInput) GoString() string {
5006	return s.String()
5007}
5008
5009// SetMaxResults sets the MaxResults field's value.
5010func (s *ListGroundStationsInput) SetMaxResults(v int64) *ListGroundStationsInput {
5011	s.MaxResults = &v
5012	return s
5013}
5014
5015// SetNextToken sets the NextToken field's value.
5016func (s *ListGroundStationsInput) SetNextToken(v string) *ListGroundStationsInput {
5017	s.NextToken = &v
5018	return s
5019}
5020
5021type ListGroundStationsOutput struct {
5022	_ struct{} `type:"structure"`
5023
5024	GroundStationList []*Data `locationName:"groundStationList" type:"list"`
5025
5026	NextToken *string `locationName:"nextToken" type:"string"`
5027}
5028
5029// String returns the string representation
5030func (s ListGroundStationsOutput) String() string {
5031	return awsutil.Prettify(s)
5032}
5033
5034// GoString returns the string representation
5035func (s ListGroundStationsOutput) GoString() string {
5036	return s.String()
5037}
5038
5039// SetGroundStationList sets the GroundStationList field's value.
5040func (s *ListGroundStationsOutput) SetGroundStationList(v []*Data) *ListGroundStationsOutput {
5041	s.GroundStationList = v
5042	return s
5043}
5044
5045// SetNextToken sets the NextToken field's value.
5046func (s *ListGroundStationsOutput) SetNextToken(v string) *ListGroundStationsOutput {
5047	s.NextToken = &v
5048	return s
5049}
5050
5051type ListMissionProfilesInput struct {
5052	_ struct{} `type:"structure"`
5053
5054	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
5055
5056	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
5057}
5058
5059// String returns the string representation
5060func (s ListMissionProfilesInput) String() string {
5061	return awsutil.Prettify(s)
5062}
5063
5064// GoString returns the string representation
5065func (s ListMissionProfilesInput) GoString() string {
5066	return s.String()
5067}
5068
5069// SetMaxResults sets the MaxResults field's value.
5070func (s *ListMissionProfilesInput) SetMaxResults(v int64) *ListMissionProfilesInput {
5071	s.MaxResults = &v
5072	return s
5073}
5074
5075// SetNextToken sets the NextToken field's value.
5076func (s *ListMissionProfilesInput) SetNextToken(v string) *ListMissionProfilesInput {
5077	s.NextToken = &v
5078	return s
5079}
5080
5081type ListMissionProfilesOutput struct {
5082	_ struct{} `type:"structure"`
5083
5084	MissionProfileList []*MissionProfileListItem `locationName:"missionProfileList" type:"list"`
5085
5086	NextToken *string `locationName:"nextToken" type:"string"`
5087}
5088
5089// String returns the string representation
5090func (s ListMissionProfilesOutput) String() string {
5091	return awsutil.Prettify(s)
5092}
5093
5094// GoString returns the string representation
5095func (s ListMissionProfilesOutput) GoString() string {
5096	return s.String()
5097}
5098
5099// SetMissionProfileList sets the MissionProfileList field's value.
5100func (s *ListMissionProfilesOutput) SetMissionProfileList(v []*MissionProfileListItem) *ListMissionProfilesOutput {
5101	s.MissionProfileList = v
5102	return s
5103}
5104
5105// SetNextToken sets the NextToken field's value.
5106func (s *ListMissionProfilesOutput) SetNextToken(v string) *ListMissionProfilesOutput {
5107	s.NextToken = &v
5108	return s
5109}
5110
5111type ListSatellitesInput struct {
5112	_ struct{} `type:"structure"`
5113
5114	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
5115
5116	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
5117}
5118
5119// String returns the string representation
5120func (s ListSatellitesInput) String() string {
5121	return awsutil.Prettify(s)
5122}
5123
5124// GoString returns the string representation
5125func (s ListSatellitesInput) GoString() string {
5126	return s.String()
5127}
5128
5129// SetMaxResults sets the MaxResults field's value.
5130func (s *ListSatellitesInput) SetMaxResults(v int64) *ListSatellitesInput {
5131	s.MaxResults = &v
5132	return s
5133}
5134
5135// SetNextToken sets the NextToken field's value.
5136func (s *ListSatellitesInput) SetNextToken(v string) *ListSatellitesInput {
5137	s.NextToken = &v
5138	return s
5139}
5140
5141type ListSatellitesOutput struct {
5142	_ struct{} `type:"structure"`
5143
5144	NextToken *string `locationName:"nextToken" type:"string"`
5145
5146	Satellites []*SatelliteListItem `locationName:"satellites" type:"list"`
5147}
5148
5149// String returns the string representation
5150func (s ListSatellitesOutput) String() string {
5151	return awsutil.Prettify(s)
5152}
5153
5154// GoString returns the string representation
5155func (s ListSatellitesOutput) GoString() string {
5156	return s.String()
5157}
5158
5159// SetNextToken sets the NextToken field's value.
5160func (s *ListSatellitesOutput) SetNextToken(v string) *ListSatellitesOutput {
5161	s.NextToken = &v
5162	return s
5163}
5164
5165// SetSatellites sets the Satellites field's value.
5166func (s *ListSatellitesOutput) SetSatellites(v []*SatelliteListItem) *ListSatellitesOutput {
5167	s.Satellites = v
5168	return s
5169}
5170
5171type ListTagsForResourceInput struct {
5172	_ struct{} `type:"structure"`
5173
5174	// ResourceArn is a required field
5175	ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"`
5176}
5177
5178// String returns the string representation
5179func (s ListTagsForResourceInput) String() string {
5180	return awsutil.Prettify(s)
5181}
5182
5183// GoString returns the string representation
5184func (s ListTagsForResourceInput) GoString() string {
5185	return s.String()
5186}
5187
5188// Validate inspects the fields of the type to determine if they are valid.
5189func (s *ListTagsForResourceInput) Validate() error {
5190	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
5191	if s.ResourceArn == nil {
5192		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
5193	}
5194	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
5195		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
5196	}
5197
5198	if invalidParams.Len() > 0 {
5199		return invalidParams
5200	}
5201	return nil
5202}
5203
5204// SetResourceArn sets the ResourceArn field's value.
5205func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
5206	s.ResourceArn = &v
5207	return s
5208}
5209
5210type ListTagsForResourceOutput struct {
5211	_ struct{} `type:"structure"`
5212
5213	Tags map[string]*string `locationName:"tags" type:"map"`
5214}
5215
5216// String returns the string representation
5217func (s ListTagsForResourceOutput) String() string {
5218	return awsutil.Prettify(s)
5219}
5220
5221// GoString returns the string representation
5222func (s ListTagsForResourceOutput) GoString() string {
5223	return s.String()
5224}
5225
5226// SetTags sets the Tags field's value.
5227func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput {
5228	s.Tags = v
5229	return s
5230}
5231
5232// Item in a list of mission profiles.
5233type MissionProfileListItem struct {
5234	_ struct{} `type:"structure"`
5235
5236	MissionProfileArn *string `locationName:"missionProfileArn" type:"string"`
5237
5238	MissionProfileId *string `locationName:"missionProfileId" type:"string"`
5239
5240	Name *string `locationName:"name" type:"string"`
5241
5242	Region *string `locationName:"region" type:"string"`
5243}
5244
5245// String returns the string representation
5246func (s MissionProfileListItem) String() string {
5247	return awsutil.Prettify(s)
5248}
5249
5250// GoString returns the string representation
5251func (s MissionProfileListItem) GoString() string {
5252	return s.String()
5253}
5254
5255// SetMissionProfileArn sets the MissionProfileArn field's value.
5256func (s *MissionProfileListItem) SetMissionProfileArn(v string) *MissionProfileListItem {
5257	s.MissionProfileArn = &v
5258	return s
5259}
5260
5261// SetMissionProfileId sets the MissionProfileId field's value.
5262func (s *MissionProfileListItem) SetMissionProfileId(v string) *MissionProfileListItem {
5263	s.MissionProfileId = &v
5264	return s
5265}
5266
5267// SetName sets the Name field's value.
5268func (s *MissionProfileListItem) SetName(v string) *MissionProfileListItem {
5269	s.Name = &v
5270	return s
5271}
5272
5273// SetRegion sets the Region field's value.
5274func (s *MissionProfileListItem) SetRegion(v string) *MissionProfileListItem {
5275	s.Region = &v
5276	return s
5277}
5278
5279type ReserveContactInput struct {
5280	_ struct{} `type:"structure"`
5281
5282	// EndTime is a required field
5283	EndTime *time.Time `locationName:"endTime" type:"timestamp" required:"true"`
5284
5285	// GroundStation is a required field
5286	GroundStation *string `locationName:"groundStation" type:"string" required:"true"`
5287
5288	// MissionProfileArn is a required field
5289	MissionProfileArn *string `locationName:"missionProfileArn" type:"string" required:"true"`
5290
5291	// SatelliteArn is a required field
5292	SatelliteArn *string `locationName:"satelliteArn" type:"string" required:"true"`
5293
5294	// StartTime is a required field
5295	StartTime *time.Time `locationName:"startTime" type:"timestamp" required:"true"`
5296
5297	Tags map[string]*string `locationName:"tags" type:"map"`
5298}
5299
5300// String returns the string representation
5301func (s ReserveContactInput) String() string {
5302	return awsutil.Prettify(s)
5303}
5304
5305// GoString returns the string representation
5306func (s ReserveContactInput) GoString() string {
5307	return s.String()
5308}
5309
5310// Validate inspects the fields of the type to determine if they are valid.
5311func (s *ReserveContactInput) Validate() error {
5312	invalidParams := request.ErrInvalidParams{Context: "ReserveContactInput"}
5313	if s.EndTime == nil {
5314		invalidParams.Add(request.NewErrParamRequired("EndTime"))
5315	}
5316	if s.GroundStation == nil {
5317		invalidParams.Add(request.NewErrParamRequired("GroundStation"))
5318	}
5319	if s.MissionProfileArn == nil {
5320		invalidParams.Add(request.NewErrParamRequired("MissionProfileArn"))
5321	}
5322	if s.SatelliteArn == nil {
5323		invalidParams.Add(request.NewErrParamRequired("SatelliteArn"))
5324	}
5325	if s.StartTime == nil {
5326		invalidParams.Add(request.NewErrParamRequired("StartTime"))
5327	}
5328
5329	if invalidParams.Len() > 0 {
5330		return invalidParams
5331	}
5332	return nil
5333}
5334
5335// SetEndTime sets the EndTime field's value.
5336func (s *ReserveContactInput) SetEndTime(v time.Time) *ReserveContactInput {
5337	s.EndTime = &v
5338	return s
5339}
5340
5341// SetGroundStation sets the GroundStation field's value.
5342func (s *ReserveContactInput) SetGroundStation(v string) *ReserveContactInput {
5343	s.GroundStation = &v
5344	return s
5345}
5346
5347// SetMissionProfileArn sets the MissionProfileArn field's value.
5348func (s *ReserveContactInput) SetMissionProfileArn(v string) *ReserveContactInput {
5349	s.MissionProfileArn = &v
5350	return s
5351}
5352
5353// SetSatelliteArn sets the SatelliteArn field's value.
5354func (s *ReserveContactInput) SetSatelliteArn(v string) *ReserveContactInput {
5355	s.SatelliteArn = &v
5356	return s
5357}
5358
5359// SetStartTime sets the StartTime field's value.
5360func (s *ReserveContactInput) SetStartTime(v time.Time) *ReserveContactInput {
5361	s.StartTime = &v
5362	return s
5363}
5364
5365// SetTags sets the Tags field's value.
5366func (s *ReserveContactInput) SetTags(v map[string]*string) *ReserveContactInput {
5367	s.Tags = v
5368	return s
5369}
5370
5371type ReserveContactOutput struct {
5372	_ struct{} `type:"structure"`
5373
5374	ContactId *string `locationName:"contactId" type:"string"`
5375}
5376
5377// String returns the string representation
5378func (s ReserveContactOutput) String() string {
5379	return awsutil.Prettify(s)
5380}
5381
5382// GoString returns the string representation
5383func (s ReserveContactOutput) GoString() string {
5384	return s.String()
5385}
5386
5387// SetContactId sets the ContactId field's value.
5388func (s *ReserveContactOutput) SetContactId(v string) *ReserveContactOutput {
5389	s.ContactId = &v
5390	return s
5391}
5392
5393// Item in a list of satellites.
5394type SatelliteListItem struct {
5395	_ struct{} `type:"structure"`
5396
5397	NoradSatelliteID *int64 `locationName:"noradSatelliteID" min:"1" type:"integer"`
5398
5399	SatelliteArn *string `locationName:"satelliteArn" type:"string"`
5400
5401	SatelliteId *string `locationName:"satelliteId" min:"1" type:"string"`
5402}
5403
5404// String returns the string representation
5405func (s SatelliteListItem) String() string {
5406	return awsutil.Prettify(s)
5407}
5408
5409// GoString returns the string representation
5410func (s SatelliteListItem) GoString() string {
5411	return s.String()
5412}
5413
5414// SetNoradSatelliteID sets the NoradSatelliteID field's value.
5415func (s *SatelliteListItem) SetNoradSatelliteID(v int64) *SatelliteListItem {
5416	s.NoradSatelliteID = &v
5417	return s
5418}
5419
5420// SetSatelliteArn sets the SatelliteArn field's value.
5421func (s *SatelliteListItem) SetSatelliteArn(v string) *SatelliteListItem {
5422	s.SatelliteArn = &v
5423	return s
5424}
5425
5426// SetSatelliteId sets the SatelliteId field's value.
5427func (s *SatelliteListItem) SetSatelliteId(v string) *SatelliteListItem {
5428	s.SatelliteId = &v
5429	return s
5430}
5431
5432// Information about endpoints.
5433type SecurityDetails struct {
5434	_ struct{} `type:"structure"`
5435
5436	// RoleArn is a required field
5437	RoleArn *string `locationName:"roleArn" type:"string" required:"true"`
5438
5439	// SecurityGroupIds is a required field
5440	SecurityGroupIds []*string `locationName:"securityGroupIds" type:"list" required:"true"`
5441
5442	// SubnetIds is a required field
5443	SubnetIds []*string `locationName:"subnetIds" type:"list" required:"true"`
5444}
5445
5446// String returns the string representation
5447func (s SecurityDetails) String() string {
5448	return awsutil.Prettify(s)
5449}
5450
5451// GoString returns the string representation
5452func (s SecurityDetails) GoString() string {
5453	return s.String()
5454}
5455
5456// Validate inspects the fields of the type to determine if they are valid.
5457func (s *SecurityDetails) Validate() error {
5458	invalidParams := request.ErrInvalidParams{Context: "SecurityDetails"}
5459	if s.RoleArn == nil {
5460		invalidParams.Add(request.NewErrParamRequired("RoleArn"))
5461	}
5462	if s.SecurityGroupIds == nil {
5463		invalidParams.Add(request.NewErrParamRequired("SecurityGroupIds"))
5464	}
5465	if s.SubnetIds == nil {
5466		invalidParams.Add(request.NewErrParamRequired("SubnetIds"))
5467	}
5468
5469	if invalidParams.Len() > 0 {
5470		return invalidParams
5471	}
5472	return nil
5473}
5474
5475// SetRoleArn sets the RoleArn field's value.
5476func (s *SecurityDetails) SetRoleArn(v string) *SecurityDetails {
5477	s.RoleArn = &v
5478	return s
5479}
5480
5481// SetSecurityGroupIds sets the SecurityGroupIds field's value.
5482func (s *SecurityDetails) SetSecurityGroupIds(v []*string) *SecurityDetails {
5483	s.SecurityGroupIds = v
5484	return s
5485}
5486
5487// SetSubnetIds sets the SubnetIds field's value.
5488func (s *SecurityDetails) SetSubnetIds(v []*string) *SecurityDetails {
5489	s.SubnetIds = v
5490	return s
5491}
5492
5493// Information about the socket address.
5494type SocketAddress struct {
5495	_ struct{} `type:"structure"`
5496
5497	// Name is a required field
5498	Name *string `locationName:"name" type:"string" required:"true"`
5499
5500	// Port is a required field
5501	Port *int64 `locationName:"port" type:"integer" required:"true"`
5502}
5503
5504// String returns the string representation
5505func (s SocketAddress) String() string {
5506	return awsutil.Prettify(s)
5507}
5508
5509// GoString returns the string representation
5510func (s SocketAddress) GoString() string {
5511	return s.String()
5512}
5513
5514// Validate inspects the fields of the type to determine if they are valid.
5515func (s *SocketAddress) Validate() error {
5516	invalidParams := request.ErrInvalidParams{Context: "SocketAddress"}
5517	if s.Name == nil {
5518		invalidParams.Add(request.NewErrParamRequired("Name"))
5519	}
5520	if s.Port == nil {
5521		invalidParams.Add(request.NewErrParamRequired("Port"))
5522	}
5523
5524	if invalidParams.Len() > 0 {
5525		return invalidParams
5526	}
5527	return nil
5528}
5529
5530// SetName sets the Name field's value.
5531func (s *SocketAddress) SetName(v string) *SocketAddress {
5532	s.Name = &v
5533	return s
5534}
5535
5536// SetPort sets the Port field's value.
5537func (s *SocketAddress) SetPort(v int64) *SocketAddress {
5538	s.Port = &v
5539	return s
5540}
5541
5542// Object that describes a spectral Config.
5543type SpectrumConfig struct {
5544	_ struct{} `type:"structure"`
5545
5546	// Object that describes the frequency bandwidth.
5547	//
5548	// Bandwidth is a required field
5549	Bandwidth *FrequencyBandwidth `locationName:"bandwidth" type:"structure" required:"true"`
5550
5551	// Object that describes the frequency.
5552	//
5553	// CenterFrequency is a required field
5554	CenterFrequency *Frequency `locationName:"centerFrequency" type:"structure" required:"true"`
5555
5556	Polarization *string `locationName:"polarization" type:"string" enum:"Polarization"`
5557}
5558
5559// String returns the string representation
5560func (s SpectrumConfig) String() string {
5561	return awsutil.Prettify(s)
5562}
5563
5564// GoString returns the string representation
5565func (s SpectrumConfig) GoString() string {
5566	return s.String()
5567}
5568
5569// Validate inspects the fields of the type to determine if they are valid.
5570func (s *SpectrumConfig) Validate() error {
5571	invalidParams := request.ErrInvalidParams{Context: "SpectrumConfig"}
5572	if s.Bandwidth == nil {
5573		invalidParams.Add(request.NewErrParamRequired("Bandwidth"))
5574	}
5575	if s.CenterFrequency == nil {
5576		invalidParams.Add(request.NewErrParamRequired("CenterFrequency"))
5577	}
5578	if s.Bandwidth != nil {
5579		if err := s.Bandwidth.Validate(); err != nil {
5580			invalidParams.AddNested("Bandwidth", err.(request.ErrInvalidParams))
5581		}
5582	}
5583	if s.CenterFrequency != nil {
5584		if err := s.CenterFrequency.Validate(); err != nil {
5585			invalidParams.AddNested("CenterFrequency", err.(request.ErrInvalidParams))
5586		}
5587	}
5588
5589	if invalidParams.Len() > 0 {
5590		return invalidParams
5591	}
5592	return nil
5593}
5594
5595// SetBandwidth sets the Bandwidth field's value.
5596func (s *SpectrumConfig) SetBandwidth(v *FrequencyBandwidth) *SpectrumConfig {
5597	s.Bandwidth = v
5598	return s
5599}
5600
5601// SetCenterFrequency sets the CenterFrequency field's value.
5602func (s *SpectrumConfig) SetCenterFrequency(v *Frequency) *SpectrumConfig {
5603	s.CenterFrequency = v
5604	return s
5605}
5606
5607// SetPolarization sets the Polarization field's value.
5608func (s *SpectrumConfig) SetPolarization(v string) *SpectrumConfig {
5609	s.Polarization = &v
5610	return s
5611}
5612
5613type TagResourceInput struct {
5614	_ struct{} `type:"structure"`
5615
5616	// ResourceArn is a required field
5617	ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"`
5618
5619	Tags map[string]*string `locationName:"tags" type:"map"`
5620}
5621
5622// String returns the string representation
5623func (s TagResourceInput) String() string {
5624	return awsutil.Prettify(s)
5625}
5626
5627// GoString returns the string representation
5628func (s TagResourceInput) GoString() string {
5629	return s.String()
5630}
5631
5632// Validate inspects the fields of the type to determine if they are valid.
5633func (s *TagResourceInput) Validate() error {
5634	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
5635	if s.ResourceArn == nil {
5636		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
5637	}
5638	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
5639		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
5640	}
5641
5642	if invalidParams.Len() > 0 {
5643		return invalidParams
5644	}
5645	return nil
5646}
5647
5648// SetResourceArn sets the ResourceArn field's value.
5649func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
5650	s.ResourceArn = &v
5651	return s
5652}
5653
5654// SetTags sets the Tags field's value.
5655func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput {
5656	s.Tags = v
5657	return s
5658}
5659
5660type TagResourceOutput struct {
5661	_ struct{} `type:"structure"`
5662}
5663
5664// String returns the string representation
5665func (s TagResourceOutput) String() string {
5666	return awsutil.Prettify(s)
5667}
5668
5669// GoString returns the string representation
5670func (s TagResourceOutput) GoString() string {
5671	return s.String()
5672}
5673
5674// Object that determines whether tracking should be used during a contact executed
5675// with this Config in the mission profile.
5676type TrackingConfig struct {
5677	_ struct{} `type:"structure"`
5678
5679	// Autotrack is a required field
5680	Autotrack *string `locationName:"autotrack" type:"string" required:"true" enum:"Criticality"`
5681}
5682
5683// String returns the string representation
5684func (s TrackingConfig) String() string {
5685	return awsutil.Prettify(s)
5686}
5687
5688// GoString returns the string representation
5689func (s TrackingConfig) GoString() string {
5690	return s.String()
5691}
5692
5693// Validate inspects the fields of the type to determine if they are valid.
5694func (s *TrackingConfig) Validate() error {
5695	invalidParams := request.ErrInvalidParams{Context: "TrackingConfig"}
5696	if s.Autotrack == nil {
5697		invalidParams.Add(request.NewErrParamRequired("Autotrack"))
5698	}
5699
5700	if invalidParams.Len() > 0 {
5701		return invalidParams
5702	}
5703	return nil
5704}
5705
5706// SetAutotrack sets the Autotrack field's value.
5707func (s *TrackingConfig) SetAutotrack(v string) *TrackingConfig {
5708	s.Autotrack = &v
5709	return s
5710}
5711
5712type UntagResourceInput struct {
5713	_ struct{} `type:"structure"`
5714
5715	// ResourceArn is a required field
5716	ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"`
5717
5718	// TagKeys is a required field
5719	TagKeys []*string `location:"querystring" locationName:"tagKeys" type:"list" required:"true"`
5720}
5721
5722// String returns the string representation
5723func (s UntagResourceInput) String() string {
5724	return awsutil.Prettify(s)
5725}
5726
5727// GoString returns the string representation
5728func (s UntagResourceInput) GoString() string {
5729	return s.String()
5730}
5731
5732// Validate inspects the fields of the type to determine if they are valid.
5733func (s *UntagResourceInput) Validate() error {
5734	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
5735	if s.ResourceArn == nil {
5736		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
5737	}
5738	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
5739		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
5740	}
5741	if s.TagKeys == nil {
5742		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
5743	}
5744
5745	if invalidParams.Len() > 0 {
5746		return invalidParams
5747	}
5748	return nil
5749}
5750
5751// SetResourceArn sets the ResourceArn field's value.
5752func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
5753	s.ResourceArn = &v
5754	return s
5755}
5756
5757// SetTagKeys sets the TagKeys field's value.
5758func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
5759	s.TagKeys = v
5760	return s
5761}
5762
5763type UntagResourceOutput struct {
5764	_ struct{} `type:"structure"`
5765}
5766
5767// String returns the string representation
5768func (s UntagResourceOutput) String() string {
5769	return awsutil.Prettify(s)
5770}
5771
5772// GoString returns the string representation
5773func (s UntagResourceOutput) GoString() string {
5774	return s.String()
5775}
5776
5777type UpdateConfigInput struct {
5778	_ struct{} `type:"structure"`
5779
5780	// Object containing the parameters for a Config.
5781	//
5782	// See the subtype definitions for what each type of Config contains.
5783	//
5784	// ConfigData is a required field
5785	ConfigData *ConfigTypeData `locationName:"configData" type:"structure" required:"true"`
5786
5787	// ConfigId is a required field
5788	ConfigId *string `location:"uri" locationName:"configId" type:"string" required:"true"`
5789
5790	// ConfigType is a required field
5791	ConfigType *string `location:"uri" locationName:"configType" type:"string" required:"true" enum:"ConfigCapabilityType"`
5792
5793	// Name is a required field
5794	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
5795}
5796
5797// String returns the string representation
5798func (s UpdateConfigInput) String() string {
5799	return awsutil.Prettify(s)
5800}
5801
5802// GoString returns the string representation
5803func (s UpdateConfigInput) GoString() string {
5804	return s.String()
5805}
5806
5807// Validate inspects the fields of the type to determine if they are valid.
5808func (s *UpdateConfigInput) Validate() error {
5809	invalidParams := request.ErrInvalidParams{Context: "UpdateConfigInput"}
5810	if s.ConfigData == nil {
5811		invalidParams.Add(request.NewErrParamRequired("ConfigData"))
5812	}
5813	if s.ConfigId == nil {
5814		invalidParams.Add(request.NewErrParamRequired("ConfigId"))
5815	}
5816	if s.ConfigId != nil && len(*s.ConfigId) < 1 {
5817		invalidParams.Add(request.NewErrParamMinLen("ConfigId", 1))
5818	}
5819	if s.ConfigType == nil {
5820		invalidParams.Add(request.NewErrParamRequired("ConfigType"))
5821	}
5822	if s.ConfigType != nil && len(*s.ConfigType) < 1 {
5823		invalidParams.Add(request.NewErrParamMinLen("ConfigType", 1))
5824	}
5825	if s.Name == nil {
5826		invalidParams.Add(request.NewErrParamRequired("Name"))
5827	}
5828	if s.Name != nil && len(*s.Name) < 1 {
5829		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
5830	}
5831	if s.ConfigData != nil {
5832		if err := s.ConfigData.Validate(); err != nil {
5833			invalidParams.AddNested("ConfigData", err.(request.ErrInvalidParams))
5834		}
5835	}
5836
5837	if invalidParams.Len() > 0 {
5838		return invalidParams
5839	}
5840	return nil
5841}
5842
5843// SetConfigData sets the ConfigData field's value.
5844func (s *UpdateConfigInput) SetConfigData(v *ConfigTypeData) *UpdateConfigInput {
5845	s.ConfigData = v
5846	return s
5847}
5848
5849// SetConfigId sets the ConfigId field's value.
5850func (s *UpdateConfigInput) SetConfigId(v string) *UpdateConfigInput {
5851	s.ConfigId = &v
5852	return s
5853}
5854
5855// SetConfigType sets the ConfigType field's value.
5856func (s *UpdateConfigInput) SetConfigType(v string) *UpdateConfigInput {
5857	s.ConfigType = &v
5858	return s
5859}
5860
5861// SetName sets the Name field's value.
5862func (s *UpdateConfigInput) SetName(v string) *UpdateConfigInput {
5863	s.Name = &v
5864	return s
5865}
5866
5867type UpdateConfigOutput struct {
5868	_ struct{} `type:"structure"`
5869
5870	ConfigArn *string `locationName:"configArn" type:"string"`
5871
5872	ConfigId *string `locationName:"configId" type:"string"`
5873
5874	ConfigType *string `locationName:"configType" type:"string" enum:"ConfigCapabilityType"`
5875}
5876
5877// String returns the string representation
5878func (s UpdateConfigOutput) String() string {
5879	return awsutil.Prettify(s)
5880}
5881
5882// GoString returns the string representation
5883func (s UpdateConfigOutput) GoString() string {
5884	return s.String()
5885}
5886
5887// SetConfigArn sets the ConfigArn field's value.
5888func (s *UpdateConfigOutput) SetConfigArn(v string) *UpdateConfigOutput {
5889	s.ConfigArn = &v
5890	return s
5891}
5892
5893// SetConfigId sets the ConfigId field's value.
5894func (s *UpdateConfigOutput) SetConfigId(v string) *UpdateConfigOutput {
5895	s.ConfigId = &v
5896	return s
5897}
5898
5899// SetConfigType sets the ConfigType field's value.
5900func (s *UpdateConfigOutput) SetConfigType(v string) *UpdateConfigOutput {
5901	s.ConfigType = &v
5902	return s
5903}
5904
5905type UpdateMissionProfileInput struct {
5906	_ struct{} `type:"structure"`
5907
5908	ContactPostPassDurationSeconds *int64 `locationName:"contactPostPassDurationSeconds" min:"1" type:"integer"`
5909
5910	ContactPrePassDurationSeconds *int64 `locationName:"contactPrePassDurationSeconds" min:"1" type:"integer"`
5911
5912	DataflowEdges [][]*string `locationName:"dataflowEdges" type:"list"`
5913
5914	MinimumViableContactDurationSeconds *int64 `locationName:"minimumViableContactDurationSeconds" min:"1" type:"integer"`
5915
5916	// MissionProfileId is a required field
5917	MissionProfileId *string `location:"uri" locationName:"missionProfileId" type:"string" required:"true"`
5918
5919	Name *string `locationName:"name" min:"1" type:"string"`
5920
5921	TrackingConfigArn *string `locationName:"trackingConfigArn" type:"string"`
5922}
5923
5924// String returns the string representation
5925func (s UpdateMissionProfileInput) String() string {
5926	return awsutil.Prettify(s)
5927}
5928
5929// GoString returns the string representation
5930func (s UpdateMissionProfileInput) GoString() string {
5931	return s.String()
5932}
5933
5934// Validate inspects the fields of the type to determine if they are valid.
5935func (s *UpdateMissionProfileInput) Validate() error {
5936	invalidParams := request.ErrInvalidParams{Context: "UpdateMissionProfileInput"}
5937	if s.ContactPostPassDurationSeconds != nil && *s.ContactPostPassDurationSeconds < 1 {
5938		invalidParams.Add(request.NewErrParamMinValue("ContactPostPassDurationSeconds", 1))
5939	}
5940	if s.ContactPrePassDurationSeconds != nil && *s.ContactPrePassDurationSeconds < 1 {
5941		invalidParams.Add(request.NewErrParamMinValue("ContactPrePassDurationSeconds", 1))
5942	}
5943	if s.MinimumViableContactDurationSeconds != nil && *s.MinimumViableContactDurationSeconds < 1 {
5944		invalidParams.Add(request.NewErrParamMinValue("MinimumViableContactDurationSeconds", 1))
5945	}
5946	if s.MissionProfileId == nil {
5947		invalidParams.Add(request.NewErrParamRequired("MissionProfileId"))
5948	}
5949	if s.MissionProfileId != nil && len(*s.MissionProfileId) < 1 {
5950		invalidParams.Add(request.NewErrParamMinLen("MissionProfileId", 1))
5951	}
5952	if s.Name != nil && len(*s.Name) < 1 {
5953		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
5954	}
5955
5956	if invalidParams.Len() > 0 {
5957		return invalidParams
5958	}
5959	return nil
5960}
5961
5962// SetContactPostPassDurationSeconds sets the ContactPostPassDurationSeconds field's value.
5963func (s *UpdateMissionProfileInput) SetContactPostPassDurationSeconds(v int64) *UpdateMissionProfileInput {
5964	s.ContactPostPassDurationSeconds = &v
5965	return s
5966}
5967
5968// SetContactPrePassDurationSeconds sets the ContactPrePassDurationSeconds field's value.
5969func (s *UpdateMissionProfileInput) SetContactPrePassDurationSeconds(v int64) *UpdateMissionProfileInput {
5970	s.ContactPrePassDurationSeconds = &v
5971	return s
5972}
5973
5974// SetDataflowEdges sets the DataflowEdges field's value.
5975func (s *UpdateMissionProfileInput) SetDataflowEdges(v [][]*string) *UpdateMissionProfileInput {
5976	s.DataflowEdges = v
5977	return s
5978}
5979
5980// SetMinimumViableContactDurationSeconds sets the MinimumViableContactDurationSeconds field's value.
5981func (s *UpdateMissionProfileInput) SetMinimumViableContactDurationSeconds(v int64) *UpdateMissionProfileInput {
5982	s.MinimumViableContactDurationSeconds = &v
5983	return s
5984}
5985
5986// SetMissionProfileId sets the MissionProfileId field's value.
5987func (s *UpdateMissionProfileInput) SetMissionProfileId(v string) *UpdateMissionProfileInput {
5988	s.MissionProfileId = &v
5989	return s
5990}
5991
5992// SetName sets the Name field's value.
5993func (s *UpdateMissionProfileInput) SetName(v string) *UpdateMissionProfileInput {
5994	s.Name = &v
5995	return s
5996}
5997
5998// SetTrackingConfigArn sets the TrackingConfigArn field's value.
5999func (s *UpdateMissionProfileInput) SetTrackingConfigArn(v string) *UpdateMissionProfileInput {
6000	s.TrackingConfigArn = &v
6001	return s
6002}
6003
6004type UpdateMissionProfileOutput struct {
6005	_ struct{} `type:"structure"`
6006
6007	MissionProfileId *string `locationName:"missionProfileId" type:"string"`
6008}
6009
6010// String returns the string representation
6011func (s UpdateMissionProfileOutput) String() string {
6012	return awsutil.Prettify(s)
6013}
6014
6015// GoString returns the string representation
6016func (s UpdateMissionProfileOutput) GoString() string {
6017	return s.String()
6018}
6019
6020// SetMissionProfileId sets the MissionProfileId field's value.
6021func (s *UpdateMissionProfileOutput) SetMissionProfileId(v string) *UpdateMissionProfileOutput {
6022	s.MissionProfileId = &v
6023	return s
6024}
6025
6026// Information about an uplink echo Config.
6027//
6028// Parameters from the AntennaUplinkConfig, corresponding to the specified AntennaUplinkConfigArn,
6029// are used when this UplinkEchoConfig is used in a contact.
6030type UplinkEchoConfig struct {
6031	_ struct{} `type:"structure"`
6032
6033	// AntennaUplinkConfigArn is a required field
6034	AntennaUplinkConfigArn *string `locationName:"antennaUplinkConfigArn" type:"string" required:"true"`
6035
6036	// Enabled is a required field
6037	Enabled *bool `locationName:"enabled" type:"boolean" required:"true"`
6038}
6039
6040// String returns the string representation
6041func (s UplinkEchoConfig) String() string {
6042	return awsutil.Prettify(s)
6043}
6044
6045// GoString returns the string representation
6046func (s UplinkEchoConfig) GoString() string {
6047	return s.String()
6048}
6049
6050// Validate inspects the fields of the type to determine if they are valid.
6051func (s *UplinkEchoConfig) Validate() error {
6052	invalidParams := request.ErrInvalidParams{Context: "UplinkEchoConfig"}
6053	if s.AntennaUplinkConfigArn == nil {
6054		invalidParams.Add(request.NewErrParamRequired("AntennaUplinkConfigArn"))
6055	}
6056	if s.Enabled == nil {
6057		invalidParams.Add(request.NewErrParamRequired("Enabled"))
6058	}
6059
6060	if invalidParams.Len() > 0 {
6061		return invalidParams
6062	}
6063	return nil
6064}
6065
6066// SetAntennaUplinkConfigArn sets the AntennaUplinkConfigArn field's value.
6067func (s *UplinkEchoConfig) SetAntennaUplinkConfigArn(v string) *UplinkEchoConfig {
6068	s.AntennaUplinkConfigArn = &v
6069	return s
6070}
6071
6072// SetEnabled sets the Enabled field's value.
6073func (s *UplinkEchoConfig) SetEnabled(v bool) *UplinkEchoConfig {
6074	s.Enabled = &v
6075	return s
6076}
6077
6078// Information about the uplink spectral Config.
6079type UplinkSpectrumConfig struct {
6080	_ struct{} `type:"structure"`
6081
6082	// Object that describes the frequency.
6083	//
6084	// CenterFrequency is a required field
6085	CenterFrequency *Frequency `locationName:"centerFrequency" type:"structure" required:"true"`
6086
6087	Polarization *string `locationName:"polarization" type:"string" enum:"Polarization"`
6088}
6089
6090// String returns the string representation
6091func (s UplinkSpectrumConfig) String() string {
6092	return awsutil.Prettify(s)
6093}
6094
6095// GoString returns the string representation
6096func (s UplinkSpectrumConfig) GoString() string {
6097	return s.String()
6098}
6099
6100// Validate inspects the fields of the type to determine if they are valid.
6101func (s *UplinkSpectrumConfig) Validate() error {
6102	invalidParams := request.ErrInvalidParams{Context: "UplinkSpectrumConfig"}
6103	if s.CenterFrequency == nil {
6104		invalidParams.Add(request.NewErrParamRequired("CenterFrequency"))
6105	}
6106	if s.CenterFrequency != nil {
6107		if err := s.CenterFrequency.Validate(); err != nil {
6108			invalidParams.AddNested("CenterFrequency", err.(request.ErrInvalidParams))
6109		}
6110	}
6111
6112	if invalidParams.Len() > 0 {
6113		return invalidParams
6114	}
6115	return nil
6116}
6117
6118// SetCenterFrequency sets the CenterFrequency field's value.
6119func (s *UplinkSpectrumConfig) SetCenterFrequency(v *Frequency) *UplinkSpectrumConfig {
6120	s.CenterFrequency = v
6121	return s
6122}
6123
6124// SetPolarization sets the Polarization field's value.
6125func (s *UplinkSpectrumConfig) SetPolarization(v string) *UplinkSpectrumConfig {
6126	s.Polarization = &v
6127	return s
6128}
6129
6130const (
6131	// AngleUnitsDegreeAngle is a AngleUnits enum value
6132	AngleUnitsDegreeAngle = "DEGREE_ANGLE"
6133
6134	// AngleUnitsRadian is a AngleUnits enum value
6135	AngleUnitsRadian = "RADIAN"
6136)
6137
6138const (
6139	// BandwidthUnitsGhz is a BandwidthUnits enum value
6140	BandwidthUnitsGhz = "GHz"
6141
6142	// BandwidthUnitsMhz is a BandwidthUnits enum value
6143	BandwidthUnitsMhz = "MHz"
6144
6145	// BandwidthUnitsKHz is a BandwidthUnits enum value
6146	BandwidthUnitsKHz = "kHz"
6147)
6148
6149const (
6150	// ConfigCapabilityTypeAntennaDownlink is a ConfigCapabilityType enum value
6151	ConfigCapabilityTypeAntennaDownlink = "antenna-downlink"
6152
6153	// ConfigCapabilityTypeAntennaDownlinkDemodDecode is a ConfigCapabilityType enum value
6154	ConfigCapabilityTypeAntennaDownlinkDemodDecode = "antenna-downlink-demod-decode"
6155
6156	// ConfigCapabilityTypeAntennaUplink is a ConfigCapabilityType enum value
6157	ConfigCapabilityTypeAntennaUplink = "antenna-uplink"
6158
6159	// ConfigCapabilityTypeDataflowEndpoint is a ConfigCapabilityType enum value
6160	ConfigCapabilityTypeDataflowEndpoint = "dataflow-endpoint"
6161
6162	// ConfigCapabilityTypeTracking is a ConfigCapabilityType enum value
6163	ConfigCapabilityTypeTracking = "tracking"
6164
6165	// ConfigCapabilityTypeUplinkEcho is a ConfigCapabilityType enum value
6166	ConfigCapabilityTypeUplinkEcho = "uplink-echo"
6167)
6168
6169const (
6170	// ContactStatusAvailable is a ContactStatus enum value
6171	ContactStatusAvailable = "AVAILABLE"
6172
6173	// ContactStatusAwsCancelled is a ContactStatus enum value
6174	ContactStatusAwsCancelled = "AWS_CANCELLED"
6175
6176	// ContactStatusCancelled is a ContactStatus enum value
6177	ContactStatusCancelled = "CANCELLED"
6178
6179	// ContactStatusCompleted is a ContactStatus enum value
6180	ContactStatusCompleted = "COMPLETED"
6181
6182	// ContactStatusFailed is a ContactStatus enum value
6183	ContactStatusFailed = "FAILED"
6184
6185	// ContactStatusFailedToSchedule is a ContactStatus enum value
6186	ContactStatusFailedToSchedule = "FAILED_TO_SCHEDULE"
6187
6188	// ContactStatusPass is a ContactStatus enum value
6189	ContactStatusPass = "PASS"
6190
6191	// ContactStatusPostpass is a ContactStatus enum value
6192	ContactStatusPostpass = "POSTPASS"
6193
6194	// ContactStatusPrepass is a ContactStatus enum value
6195	ContactStatusPrepass = "PREPASS"
6196
6197	// ContactStatusScheduled is a ContactStatus enum value
6198	ContactStatusScheduled = "SCHEDULED"
6199
6200	// ContactStatusScheduling is a ContactStatus enum value
6201	ContactStatusScheduling = "SCHEDULING"
6202)
6203
6204const (
6205	// CriticalityPreferred is a Criticality enum value
6206	CriticalityPreferred = "PREFERRED"
6207
6208	// CriticalityRemoved is a Criticality enum value
6209	CriticalityRemoved = "REMOVED"
6210
6211	// CriticalityRequired is a Criticality enum value
6212	CriticalityRequired = "REQUIRED"
6213)
6214
6215const (
6216	// EirpUnitsDBw is a EirpUnits enum value
6217	EirpUnitsDBw = "dBW"
6218)
6219
6220const (
6221	// EndpointStatusCreated is a EndpointStatus enum value
6222	EndpointStatusCreated = "created"
6223
6224	// EndpointStatusCreating is a EndpointStatus enum value
6225	EndpointStatusCreating = "creating"
6226
6227	// EndpointStatusDeleted is a EndpointStatus enum value
6228	EndpointStatusDeleted = "deleted"
6229
6230	// EndpointStatusDeleting is a EndpointStatus enum value
6231	EndpointStatusDeleting = "deleting"
6232
6233	// EndpointStatusFailed is a EndpointStatus enum value
6234	EndpointStatusFailed = "failed"
6235)
6236
6237const (
6238	// FrequencyUnitsGhz is a FrequencyUnits enum value
6239	FrequencyUnitsGhz = "GHz"
6240
6241	// FrequencyUnitsMhz is a FrequencyUnits enum value
6242	FrequencyUnitsMhz = "MHz"
6243
6244	// FrequencyUnitsKHz is a FrequencyUnits enum value
6245	FrequencyUnitsKHz = "kHz"
6246)
6247
6248const (
6249	// PolarizationLeftHand is a Polarization enum value
6250	PolarizationLeftHand = "LEFT_HAND"
6251
6252	// PolarizationNone is a Polarization enum value
6253	PolarizationNone = "NONE"
6254
6255	// PolarizationRightHand is a Polarization enum value
6256	PolarizationRightHand = "RIGHT_HAND"
6257)
6258