1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package panorama
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 opCreateApplicationInstance = "CreateApplicationInstance"
17
18// CreateApplicationInstanceRequest generates a "aws/request.Request" representing the
19// client's request for the CreateApplicationInstance 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 CreateApplicationInstance for more information on using the CreateApplicationInstance
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 CreateApplicationInstanceRequest method.
34//    req, resp := client.CreateApplicationInstanceRequest(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/panorama-2019-07-24/CreateApplicationInstance
42func (c *Panorama) CreateApplicationInstanceRequest(input *CreateApplicationInstanceInput) (req *request.Request, output *CreateApplicationInstanceOutput) {
43	op := &request.Operation{
44		Name:       opCreateApplicationInstance,
45		HTTPMethod: "POST",
46		HTTPPath:   "/application-instances",
47	}
48
49	if input == nil {
50		input = &CreateApplicationInstanceInput{}
51	}
52
53	output = &CreateApplicationInstanceOutput{}
54	req = c.newRequest(op, input, output)
55	return
56}
57
58// CreateApplicationInstance API operation for AWS Panorama.
59//
60// Creates an application instance and deploys it to a device.
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 Panorama's
67// API operation CreateApplicationInstance for usage and error information.
68//
69// Returned Error Types:
70//   * ValidationException
71//   The request contains an invalid parameter value.
72//
73//   * InternalServerException
74//   An internal error occurred.
75//
76//   * AccessDeniedException
77//   The requestor does not have permission to access the target action or resource.
78//
79//   * ServiceQuotaExceededException
80//   The request would cause a limit to be exceeded.
81//
82// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/CreateApplicationInstance
83func (c *Panorama) CreateApplicationInstance(input *CreateApplicationInstanceInput) (*CreateApplicationInstanceOutput, error) {
84	req, out := c.CreateApplicationInstanceRequest(input)
85	return out, req.Send()
86}
87
88// CreateApplicationInstanceWithContext is the same as CreateApplicationInstance with the addition of
89// the ability to pass a context and additional request options.
90//
91// See CreateApplicationInstance for details on how to use this API operation.
92//
93// The context must be non-nil and will be used for request cancellation. If
94// the context is nil a panic will occur. In the future the SDK may create
95// sub-contexts for http.Requests. See https://golang.org/pkg/context/
96// for more information on using Contexts.
97func (c *Panorama) CreateApplicationInstanceWithContext(ctx aws.Context, input *CreateApplicationInstanceInput, opts ...request.Option) (*CreateApplicationInstanceOutput, error) {
98	req, out := c.CreateApplicationInstanceRequest(input)
99	req.SetContext(ctx)
100	req.ApplyOptions(opts...)
101	return out, req.Send()
102}
103
104const opCreateJobForDevices = "CreateJobForDevices"
105
106// CreateJobForDevicesRequest generates a "aws/request.Request" representing the
107// client's request for the CreateJobForDevices operation. The "output" return
108// value will be populated with the request's response once the request completes
109// successfully.
110//
111// Use "Send" method on the returned Request to send the API call to the service.
112// the "output" return value is not valid until after Send returns without error.
113//
114// See CreateJobForDevices for more information on using the CreateJobForDevices
115// API call, and error handling.
116//
117// This method is useful when you want to inject custom logic or configuration
118// into the SDK's request lifecycle. Such as custom headers, or retry logic.
119//
120//
121//    // Example sending a request using the CreateJobForDevicesRequest method.
122//    req, resp := client.CreateJobForDevicesRequest(params)
123//
124//    err := req.Send()
125//    if err == nil { // resp is now filled
126//        fmt.Println(resp)
127//    }
128//
129// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/CreateJobForDevices
130func (c *Panorama) CreateJobForDevicesRequest(input *CreateJobForDevicesInput) (req *request.Request, output *CreateJobForDevicesOutput) {
131	op := &request.Operation{
132		Name:       opCreateJobForDevices,
133		HTTPMethod: "POST",
134		HTTPPath:   "/jobs",
135	}
136
137	if input == nil {
138		input = &CreateJobForDevicesInput{}
139	}
140
141	output = &CreateJobForDevicesOutput{}
142	req = c.newRequest(op, input, output)
143	return
144}
145
146// CreateJobForDevices API operation for AWS Panorama.
147//
148// Creates a job to run on one or more devices.
149//
150// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
151// with awserr.Error's Code and Message methods to get detailed information about
152// the error.
153//
154// See the AWS API reference guide for AWS Panorama's
155// API operation CreateJobForDevices for usage and error information.
156//
157// Returned Error Types:
158//   * ConflictException
159//   The target resource is in use.
160//
161//   * ValidationException
162//   The request contains an invalid parameter value.
163//
164//   * InternalServerException
165//   An internal error occurred.
166//
167//   * AccessDeniedException
168//   The requestor does not have permission to access the target action or resource.
169//
170//   * ResourceNotFoundException
171//   The target resource was not found.
172//
173// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/CreateJobForDevices
174func (c *Panorama) CreateJobForDevices(input *CreateJobForDevicesInput) (*CreateJobForDevicesOutput, error) {
175	req, out := c.CreateJobForDevicesRequest(input)
176	return out, req.Send()
177}
178
179// CreateJobForDevicesWithContext is the same as CreateJobForDevices with the addition of
180// the ability to pass a context and additional request options.
181//
182// See CreateJobForDevices for details on how to use this API operation.
183//
184// The context must be non-nil and will be used for request cancellation. If
185// the context is nil a panic will occur. In the future the SDK may create
186// sub-contexts for http.Requests. See https://golang.org/pkg/context/
187// for more information on using Contexts.
188func (c *Panorama) CreateJobForDevicesWithContext(ctx aws.Context, input *CreateJobForDevicesInput, opts ...request.Option) (*CreateJobForDevicesOutput, error) {
189	req, out := c.CreateJobForDevicesRequest(input)
190	req.SetContext(ctx)
191	req.ApplyOptions(opts...)
192	return out, req.Send()
193}
194
195const opCreateNodeFromTemplateJob = "CreateNodeFromTemplateJob"
196
197// CreateNodeFromTemplateJobRequest generates a "aws/request.Request" representing the
198// client's request for the CreateNodeFromTemplateJob operation. The "output" return
199// value will be populated with the request's response once the request completes
200// successfully.
201//
202// Use "Send" method on the returned Request to send the API call to the service.
203// the "output" return value is not valid until after Send returns without error.
204//
205// See CreateNodeFromTemplateJob for more information on using the CreateNodeFromTemplateJob
206// API call, and error handling.
207//
208// This method is useful when you want to inject custom logic or configuration
209// into the SDK's request lifecycle. Such as custom headers, or retry logic.
210//
211//
212//    // Example sending a request using the CreateNodeFromTemplateJobRequest method.
213//    req, resp := client.CreateNodeFromTemplateJobRequest(params)
214//
215//    err := req.Send()
216//    if err == nil { // resp is now filled
217//        fmt.Println(resp)
218//    }
219//
220// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/CreateNodeFromTemplateJob
221func (c *Panorama) CreateNodeFromTemplateJobRequest(input *CreateNodeFromTemplateJobInput) (req *request.Request, output *CreateNodeFromTemplateJobOutput) {
222	op := &request.Operation{
223		Name:       opCreateNodeFromTemplateJob,
224		HTTPMethod: "POST",
225		HTTPPath:   "/packages/template-job",
226	}
227
228	if input == nil {
229		input = &CreateNodeFromTemplateJobInput{}
230	}
231
232	output = &CreateNodeFromTemplateJobOutput{}
233	req = c.newRequest(op, input, output)
234	return
235}
236
237// CreateNodeFromTemplateJob API operation for AWS Panorama.
238//
239// Creates a camera stream node.
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 Panorama's
246// API operation CreateNodeFromTemplateJob for usage and error information.
247//
248// Returned Error Types:
249//   * ValidationException
250//   The request contains an invalid parameter value.
251//
252//   * InternalServerException
253//   An internal error occurred.
254//
255//   * AccessDeniedException
256//   The requestor does not have permission to access the target action or resource.
257//
258//   * ConflictException
259//   The target resource is in use.
260//
261// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/CreateNodeFromTemplateJob
262func (c *Panorama) CreateNodeFromTemplateJob(input *CreateNodeFromTemplateJobInput) (*CreateNodeFromTemplateJobOutput, error) {
263	req, out := c.CreateNodeFromTemplateJobRequest(input)
264	return out, req.Send()
265}
266
267// CreateNodeFromTemplateJobWithContext is the same as CreateNodeFromTemplateJob with the addition of
268// the ability to pass a context and additional request options.
269//
270// See CreateNodeFromTemplateJob for details on how to use this API operation.
271//
272// The context must be non-nil and will be used for request cancellation. If
273// the context is nil a panic will occur. In the future the SDK may create
274// sub-contexts for http.Requests. See https://golang.org/pkg/context/
275// for more information on using Contexts.
276func (c *Panorama) CreateNodeFromTemplateJobWithContext(ctx aws.Context, input *CreateNodeFromTemplateJobInput, opts ...request.Option) (*CreateNodeFromTemplateJobOutput, error) {
277	req, out := c.CreateNodeFromTemplateJobRequest(input)
278	req.SetContext(ctx)
279	req.ApplyOptions(opts...)
280	return out, req.Send()
281}
282
283const opCreatePackage = "CreatePackage"
284
285// CreatePackageRequest generates a "aws/request.Request" representing the
286// client's request for the CreatePackage operation. The "output" return
287// value will be populated with the request's response once the request completes
288// successfully.
289//
290// Use "Send" method on the returned Request to send the API call to the service.
291// the "output" return value is not valid until after Send returns without error.
292//
293// See CreatePackage for more information on using the CreatePackage
294// API call, and error handling.
295//
296// This method is useful when you want to inject custom logic or configuration
297// into the SDK's request lifecycle. Such as custom headers, or retry logic.
298//
299//
300//    // Example sending a request using the CreatePackageRequest method.
301//    req, resp := client.CreatePackageRequest(params)
302//
303//    err := req.Send()
304//    if err == nil { // resp is now filled
305//        fmt.Println(resp)
306//    }
307//
308// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/CreatePackage
309func (c *Panorama) CreatePackageRequest(input *CreatePackageInput) (req *request.Request, output *CreatePackageOutput) {
310	op := &request.Operation{
311		Name:       opCreatePackage,
312		HTTPMethod: "POST",
313		HTTPPath:   "/packages",
314	}
315
316	if input == nil {
317		input = &CreatePackageInput{}
318	}
319
320	output = &CreatePackageOutput{}
321	req = c.newRequest(op, input, output)
322	return
323}
324
325// CreatePackage API operation for AWS Panorama.
326//
327// Creates a package and storage location in an Amazon S3 access point.
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 Panorama's
334// API operation CreatePackage for usage and error information.
335//
336// Returned Error Types:
337//   * ValidationException
338//   The request contains an invalid parameter value.
339//
340//   * InternalServerException
341//   An internal error occurred.
342//
343//   * AccessDeniedException
344//   The requestor does not have permission to access the target action or resource.
345//
346//   * ConflictException
347//   The target resource is in use.
348//
349// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/CreatePackage
350func (c *Panorama) CreatePackage(input *CreatePackageInput) (*CreatePackageOutput, error) {
351	req, out := c.CreatePackageRequest(input)
352	return out, req.Send()
353}
354
355// CreatePackageWithContext is the same as CreatePackage with the addition of
356// the ability to pass a context and additional request options.
357//
358// See CreatePackage for details on how to use this API operation.
359//
360// The context must be non-nil and will be used for request cancellation. If
361// the context is nil a panic will occur. In the future the SDK may create
362// sub-contexts for http.Requests. See https://golang.org/pkg/context/
363// for more information on using Contexts.
364func (c *Panorama) CreatePackageWithContext(ctx aws.Context, input *CreatePackageInput, opts ...request.Option) (*CreatePackageOutput, error) {
365	req, out := c.CreatePackageRequest(input)
366	req.SetContext(ctx)
367	req.ApplyOptions(opts...)
368	return out, req.Send()
369}
370
371const opCreatePackageImportJob = "CreatePackageImportJob"
372
373// CreatePackageImportJobRequest generates a "aws/request.Request" representing the
374// client's request for the CreatePackageImportJob operation. The "output" return
375// value will be populated with the request's response once the request completes
376// successfully.
377//
378// Use "Send" method on the returned Request to send the API call to the service.
379// the "output" return value is not valid until after Send returns without error.
380//
381// See CreatePackageImportJob for more information on using the CreatePackageImportJob
382// API call, and error handling.
383//
384// This method is useful when you want to inject custom logic or configuration
385// into the SDK's request lifecycle. Such as custom headers, or retry logic.
386//
387//
388//    // Example sending a request using the CreatePackageImportJobRequest method.
389//    req, resp := client.CreatePackageImportJobRequest(params)
390//
391//    err := req.Send()
392//    if err == nil { // resp is now filled
393//        fmt.Println(resp)
394//    }
395//
396// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/CreatePackageImportJob
397func (c *Panorama) CreatePackageImportJobRequest(input *CreatePackageImportJobInput) (req *request.Request, output *CreatePackageImportJobOutput) {
398	op := &request.Operation{
399		Name:       opCreatePackageImportJob,
400		HTTPMethod: "POST",
401		HTTPPath:   "/packages/import-jobs",
402	}
403
404	if input == nil {
405		input = &CreatePackageImportJobInput{}
406	}
407
408	output = &CreatePackageImportJobOutput{}
409	req = c.newRequest(op, input, output)
410	return
411}
412
413// CreatePackageImportJob API operation for AWS Panorama.
414//
415// Imports a node package.
416//
417// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
418// with awserr.Error's Code and Message methods to get detailed information about
419// the error.
420//
421// See the AWS API reference guide for AWS Panorama's
422// API operation CreatePackageImportJob for usage and error information.
423//
424// Returned Error Types:
425//   * ValidationException
426//   The request contains an invalid parameter value.
427//
428//   * InternalServerException
429//   An internal error occurred.
430//
431//   * AccessDeniedException
432//   The requestor does not have permission to access the target action or resource.
433//
434//   * ConflictException
435//   The target resource is in use.
436//
437// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/CreatePackageImportJob
438func (c *Panorama) CreatePackageImportJob(input *CreatePackageImportJobInput) (*CreatePackageImportJobOutput, error) {
439	req, out := c.CreatePackageImportJobRequest(input)
440	return out, req.Send()
441}
442
443// CreatePackageImportJobWithContext is the same as CreatePackageImportJob with the addition of
444// the ability to pass a context and additional request options.
445//
446// See CreatePackageImportJob for details on how to use this API operation.
447//
448// The context must be non-nil and will be used for request cancellation. If
449// the context is nil a panic will occur. In the future the SDK may create
450// sub-contexts for http.Requests. See https://golang.org/pkg/context/
451// for more information on using Contexts.
452func (c *Panorama) CreatePackageImportJobWithContext(ctx aws.Context, input *CreatePackageImportJobInput, opts ...request.Option) (*CreatePackageImportJobOutput, error) {
453	req, out := c.CreatePackageImportJobRequest(input)
454	req.SetContext(ctx)
455	req.ApplyOptions(opts...)
456	return out, req.Send()
457}
458
459const opDeleteDevice = "DeleteDevice"
460
461// DeleteDeviceRequest generates a "aws/request.Request" representing the
462// client's request for the DeleteDevice operation. The "output" return
463// value will be populated with the request's response once the request completes
464// successfully.
465//
466// Use "Send" method on the returned Request to send the API call to the service.
467// the "output" return value is not valid until after Send returns without error.
468//
469// See DeleteDevice for more information on using the DeleteDevice
470// API call, and error handling.
471//
472// This method is useful when you want to inject custom logic or configuration
473// into the SDK's request lifecycle. Such as custom headers, or retry logic.
474//
475//
476//    // Example sending a request using the DeleteDeviceRequest method.
477//    req, resp := client.DeleteDeviceRequest(params)
478//
479//    err := req.Send()
480//    if err == nil { // resp is now filled
481//        fmt.Println(resp)
482//    }
483//
484// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/DeleteDevice
485func (c *Panorama) DeleteDeviceRequest(input *DeleteDeviceInput) (req *request.Request, output *DeleteDeviceOutput) {
486	op := &request.Operation{
487		Name:       opDeleteDevice,
488		HTTPMethod: "DELETE",
489		HTTPPath:   "/devices/{DeviceId}",
490	}
491
492	if input == nil {
493		input = &DeleteDeviceInput{}
494	}
495
496	output = &DeleteDeviceOutput{}
497	req = c.newRequest(op, input, output)
498	return
499}
500
501// DeleteDevice API operation for AWS Panorama.
502//
503// Deletes a device.
504//
505// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
506// with awserr.Error's Code and Message methods to get detailed information about
507// the error.
508//
509// See the AWS API reference guide for AWS Panorama's
510// API operation DeleteDevice for usage and error information.
511//
512// Returned Error Types:
513//   * ConflictException
514//   The target resource is in use.
515//
516//   * ValidationException
517//   The request contains an invalid parameter value.
518//
519//   * InternalServerException
520//   An internal error occurred.
521//
522//   * AccessDeniedException
523//   The requestor does not have permission to access the target action or resource.
524//
525//   * ResourceNotFoundException
526//   The target resource was not found.
527//
528// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/DeleteDevice
529func (c *Panorama) DeleteDevice(input *DeleteDeviceInput) (*DeleteDeviceOutput, error) {
530	req, out := c.DeleteDeviceRequest(input)
531	return out, req.Send()
532}
533
534// DeleteDeviceWithContext is the same as DeleteDevice with the addition of
535// the ability to pass a context and additional request options.
536//
537// See DeleteDevice for details on how to use this API operation.
538//
539// The context must be non-nil and will be used for request cancellation. If
540// the context is nil a panic will occur. In the future the SDK may create
541// sub-contexts for http.Requests. See https://golang.org/pkg/context/
542// for more information on using Contexts.
543func (c *Panorama) DeleteDeviceWithContext(ctx aws.Context, input *DeleteDeviceInput, opts ...request.Option) (*DeleteDeviceOutput, error) {
544	req, out := c.DeleteDeviceRequest(input)
545	req.SetContext(ctx)
546	req.ApplyOptions(opts...)
547	return out, req.Send()
548}
549
550const opDeletePackage = "DeletePackage"
551
552// DeletePackageRequest generates a "aws/request.Request" representing the
553// client's request for the DeletePackage operation. The "output" return
554// value will be populated with the request's response once the request completes
555// successfully.
556//
557// Use "Send" method on the returned Request to send the API call to the service.
558// the "output" return value is not valid until after Send returns without error.
559//
560// See DeletePackage for more information on using the DeletePackage
561// API call, and error handling.
562//
563// This method is useful when you want to inject custom logic or configuration
564// into the SDK's request lifecycle. Such as custom headers, or retry logic.
565//
566//
567//    // Example sending a request using the DeletePackageRequest method.
568//    req, resp := client.DeletePackageRequest(params)
569//
570//    err := req.Send()
571//    if err == nil { // resp is now filled
572//        fmt.Println(resp)
573//    }
574//
575// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/DeletePackage
576func (c *Panorama) DeletePackageRequest(input *DeletePackageInput) (req *request.Request, output *DeletePackageOutput) {
577	op := &request.Operation{
578		Name:       opDeletePackage,
579		HTTPMethod: "DELETE",
580		HTTPPath:   "/packages/{PackageId}",
581	}
582
583	if input == nil {
584		input = &DeletePackageInput{}
585	}
586
587	output = &DeletePackageOutput{}
588	req = c.newRequest(op, input, output)
589	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
590	return
591}
592
593// DeletePackage API operation for AWS Panorama.
594//
595// Deletes a package.
596//
597// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
598// with awserr.Error's Code and Message methods to get detailed information about
599// the error.
600//
601// See the AWS API reference guide for AWS Panorama's
602// API operation DeletePackage for usage and error information.
603//
604// Returned Error Types:
605//   * ValidationException
606//   The request contains an invalid parameter value.
607//
608//   * InternalServerException
609//   An internal error occurred.
610//
611//   * AccessDeniedException
612//   The requestor does not have permission to access the target action or resource.
613//
614//   * ConflictException
615//   The target resource is in use.
616//
617//   * ResourceNotFoundException
618//   The target resource was not found.
619//
620// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/DeletePackage
621func (c *Panorama) DeletePackage(input *DeletePackageInput) (*DeletePackageOutput, error) {
622	req, out := c.DeletePackageRequest(input)
623	return out, req.Send()
624}
625
626// DeletePackageWithContext is the same as DeletePackage with the addition of
627// the ability to pass a context and additional request options.
628//
629// See DeletePackage for details on how to use this API operation.
630//
631// The context must be non-nil and will be used for request cancellation. If
632// the context is nil a panic will occur. In the future the SDK may create
633// sub-contexts for http.Requests. See https://golang.org/pkg/context/
634// for more information on using Contexts.
635func (c *Panorama) DeletePackageWithContext(ctx aws.Context, input *DeletePackageInput, opts ...request.Option) (*DeletePackageOutput, error) {
636	req, out := c.DeletePackageRequest(input)
637	req.SetContext(ctx)
638	req.ApplyOptions(opts...)
639	return out, req.Send()
640}
641
642const opDeregisterPackageVersion = "DeregisterPackageVersion"
643
644// DeregisterPackageVersionRequest generates a "aws/request.Request" representing the
645// client's request for the DeregisterPackageVersion operation. The "output" return
646// value will be populated with the request's response once the request completes
647// successfully.
648//
649// Use "Send" method on the returned Request to send the API call to the service.
650// the "output" return value is not valid until after Send returns without error.
651//
652// See DeregisterPackageVersion for more information on using the DeregisterPackageVersion
653// API call, and error handling.
654//
655// This method is useful when you want to inject custom logic or configuration
656// into the SDK's request lifecycle. Such as custom headers, or retry logic.
657//
658//
659//    // Example sending a request using the DeregisterPackageVersionRequest method.
660//    req, resp := client.DeregisterPackageVersionRequest(params)
661//
662//    err := req.Send()
663//    if err == nil { // resp is now filled
664//        fmt.Println(resp)
665//    }
666//
667// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/DeregisterPackageVersion
668func (c *Panorama) DeregisterPackageVersionRequest(input *DeregisterPackageVersionInput) (req *request.Request, output *DeregisterPackageVersionOutput) {
669	op := &request.Operation{
670		Name:       opDeregisterPackageVersion,
671		HTTPMethod: "DELETE",
672		HTTPPath:   "/packages/{PackageId}/versions/{PackageVersion}/patch/{PatchVersion}",
673	}
674
675	if input == nil {
676		input = &DeregisterPackageVersionInput{}
677	}
678
679	output = &DeregisterPackageVersionOutput{}
680	req = c.newRequest(op, input, output)
681	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
682	return
683}
684
685// DeregisterPackageVersion API operation for AWS Panorama.
686//
687// Deregisters a package version.
688//
689// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
690// with awserr.Error's Code and Message methods to get detailed information about
691// the error.
692//
693// See the AWS API reference guide for AWS Panorama's
694// API operation DeregisterPackageVersion for usage and error information.
695//
696// Returned Error Types:
697//   * ValidationException
698//   The request contains an invalid parameter value.
699//
700//   * InternalServerException
701//   An internal error occurred.
702//
703//   * AccessDeniedException
704//   The requestor does not have permission to access the target action or resource.
705//
706//   * ConflictException
707//   The target resource is in use.
708//
709//   * ResourceNotFoundException
710//   The target resource was not found.
711//
712// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/DeregisterPackageVersion
713func (c *Panorama) DeregisterPackageVersion(input *DeregisterPackageVersionInput) (*DeregisterPackageVersionOutput, error) {
714	req, out := c.DeregisterPackageVersionRequest(input)
715	return out, req.Send()
716}
717
718// DeregisterPackageVersionWithContext is the same as DeregisterPackageVersion with the addition of
719// the ability to pass a context and additional request options.
720//
721// See DeregisterPackageVersion for details on how to use this API operation.
722//
723// The context must be non-nil and will be used for request cancellation. If
724// the context is nil a panic will occur. In the future the SDK may create
725// sub-contexts for http.Requests. See https://golang.org/pkg/context/
726// for more information on using Contexts.
727func (c *Panorama) DeregisterPackageVersionWithContext(ctx aws.Context, input *DeregisterPackageVersionInput, opts ...request.Option) (*DeregisterPackageVersionOutput, error) {
728	req, out := c.DeregisterPackageVersionRequest(input)
729	req.SetContext(ctx)
730	req.ApplyOptions(opts...)
731	return out, req.Send()
732}
733
734const opDescribeApplicationInstance = "DescribeApplicationInstance"
735
736// DescribeApplicationInstanceRequest generates a "aws/request.Request" representing the
737// client's request for the DescribeApplicationInstance operation. The "output" return
738// value will be populated with the request's response once the request completes
739// successfully.
740//
741// Use "Send" method on the returned Request to send the API call to the service.
742// the "output" return value is not valid until after Send returns without error.
743//
744// See DescribeApplicationInstance for more information on using the DescribeApplicationInstance
745// API call, and error handling.
746//
747// This method is useful when you want to inject custom logic or configuration
748// into the SDK's request lifecycle. Such as custom headers, or retry logic.
749//
750//
751//    // Example sending a request using the DescribeApplicationInstanceRequest method.
752//    req, resp := client.DescribeApplicationInstanceRequest(params)
753//
754//    err := req.Send()
755//    if err == nil { // resp is now filled
756//        fmt.Println(resp)
757//    }
758//
759// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/DescribeApplicationInstance
760func (c *Panorama) DescribeApplicationInstanceRequest(input *DescribeApplicationInstanceInput) (req *request.Request, output *DescribeApplicationInstanceOutput) {
761	op := &request.Operation{
762		Name:       opDescribeApplicationInstance,
763		HTTPMethod: "GET",
764		HTTPPath:   "/application-instances/{applicationInstanceId}",
765	}
766
767	if input == nil {
768		input = &DescribeApplicationInstanceInput{}
769	}
770
771	output = &DescribeApplicationInstanceOutput{}
772	req = c.newRequest(op, input, output)
773	return
774}
775
776// DescribeApplicationInstance API operation for AWS Panorama.
777//
778// Returns information about an application instance on a device.
779//
780// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
781// with awserr.Error's Code and Message methods to get detailed information about
782// the error.
783//
784// See the AWS API reference guide for AWS Panorama's
785// API operation DescribeApplicationInstance for usage and error information.
786//
787// Returned Error Types:
788//   * ConflictException
789//   The target resource is in use.
790//
791//   * ValidationException
792//   The request contains an invalid parameter value.
793//
794//   * InternalServerException
795//   An internal error occurred.
796//
797//   * AccessDeniedException
798//   The requestor does not have permission to access the target action or resource.
799//
800//   * ResourceNotFoundException
801//   The target resource was not found.
802//
803// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/DescribeApplicationInstance
804func (c *Panorama) DescribeApplicationInstance(input *DescribeApplicationInstanceInput) (*DescribeApplicationInstanceOutput, error) {
805	req, out := c.DescribeApplicationInstanceRequest(input)
806	return out, req.Send()
807}
808
809// DescribeApplicationInstanceWithContext is the same as DescribeApplicationInstance with the addition of
810// the ability to pass a context and additional request options.
811//
812// See DescribeApplicationInstance for details on how to use this API operation.
813//
814// The context must be non-nil and will be used for request cancellation. If
815// the context is nil a panic will occur. In the future the SDK may create
816// sub-contexts for http.Requests. See https://golang.org/pkg/context/
817// for more information on using Contexts.
818func (c *Panorama) DescribeApplicationInstanceWithContext(ctx aws.Context, input *DescribeApplicationInstanceInput, opts ...request.Option) (*DescribeApplicationInstanceOutput, error) {
819	req, out := c.DescribeApplicationInstanceRequest(input)
820	req.SetContext(ctx)
821	req.ApplyOptions(opts...)
822	return out, req.Send()
823}
824
825const opDescribeApplicationInstanceDetails = "DescribeApplicationInstanceDetails"
826
827// DescribeApplicationInstanceDetailsRequest generates a "aws/request.Request" representing the
828// client's request for the DescribeApplicationInstanceDetails operation. The "output" return
829// value will be populated with the request's response once the request completes
830// successfully.
831//
832// Use "Send" method on the returned Request to send the API call to the service.
833// the "output" return value is not valid until after Send returns without error.
834//
835// See DescribeApplicationInstanceDetails for more information on using the DescribeApplicationInstanceDetails
836// API call, and error handling.
837//
838// This method is useful when you want to inject custom logic or configuration
839// into the SDK's request lifecycle. Such as custom headers, or retry logic.
840//
841//
842//    // Example sending a request using the DescribeApplicationInstanceDetailsRequest method.
843//    req, resp := client.DescribeApplicationInstanceDetailsRequest(params)
844//
845//    err := req.Send()
846//    if err == nil { // resp is now filled
847//        fmt.Println(resp)
848//    }
849//
850// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/DescribeApplicationInstanceDetails
851func (c *Panorama) DescribeApplicationInstanceDetailsRequest(input *DescribeApplicationInstanceDetailsInput) (req *request.Request, output *DescribeApplicationInstanceDetailsOutput) {
852	op := &request.Operation{
853		Name:       opDescribeApplicationInstanceDetails,
854		HTTPMethod: "GET",
855		HTTPPath:   "/application-instances/{applicationInstanceId}/details",
856	}
857
858	if input == nil {
859		input = &DescribeApplicationInstanceDetailsInput{}
860	}
861
862	output = &DescribeApplicationInstanceDetailsOutput{}
863	req = c.newRequest(op, input, output)
864	return
865}
866
867// DescribeApplicationInstanceDetails API operation for AWS Panorama.
868//
869// Returns information about an application instance's configuration manifest.
870//
871// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
872// with awserr.Error's Code and Message methods to get detailed information about
873// the error.
874//
875// See the AWS API reference guide for AWS Panorama's
876// API operation DescribeApplicationInstanceDetails for usage and error information.
877//
878// Returned Error Types:
879//   * ConflictException
880//   The target resource is in use.
881//
882//   * ValidationException
883//   The request contains an invalid parameter value.
884//
885//   * InternalServerException
886//   An internal error occurred.
887//
888//   * AccessDeniedException
889//   The requestor does not have permission to access the target action or resource.
890//
891//   * ResourceNotFoundException
892//   The target resource was not found.
893//
894// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/DescribeApplicationInstanceDetails
895func (c *Panorama) DescribeApplicationInstanceDetails(input *DescribeApplicationInstanceDetailsInput) (*DescribeApplicationInstanceDetailsOutput, error) {
896	req, out := c.DescribeApplicationInstanceDetailsRequest(input)
897	return out, req.Send()
898}
899
900// DescribeApplicationInstanceDetailsWithContext is the same as DescribeApplicationInstanceDetails with the addition of
901// the ability to pass a context and additional request options.
902//
903// See DescribeApplicationInstanceDetails for details on how to use this API operation.
904//
905// The context must be non-nil and will be used for request cancellation. If
906// the context is nil a panic will occur. In the future the SDK may create
907// sub-contexts for http.Requests. See https://golang.org/pkg/context/
908// for more information on using Contexts.
909func (c *Panorama) DescribeApplicationInstanceDetailsWithContext(ctx aws.Context, input *DescribeApplicationInstanceDetailsInput, opts ...request.Option) (*DescribeApplicationInstanceDetailsOutput, error) {
910	req, out := c.DescribeApplicationInstanceDetailsRequest(input)
911	req.SetContext(ctx)
912	req.ApplyOptions(opts...)
913	return out, req.Send()
914}
915
916const opDescribeDevice = "DescribeDevice"
917
918// DescribeDeviceRequest generates a "aws/request.Request" representing the
919// client's request for the DescribeDevice operation. The "output" return
920// value will be populated with the request's response once the request completes
921// successfully.
922//
923// Use "Send" method on the returned Request to send the API call to the service.
924// the "output" return value is not valid until after Send returns without error.
925//
926// See DescribeDevice for more information on using the DescribeDevice
927// API call, and error handling.
928//
929// This method is useful when you want to inject custom logic or configuration
930// into the SDK's request lifecycle. Such as custom headers, or retry logic.
931//
932//
933//    // Example sending a request using the DescribeDeviceRequest method.
934//    req, resp := client.DescribeDeviceRequest(params)
935//
936//    err := req.Send()
937//    if err == nil { // resp is now filled
938//        fmt.Println(resp)
939//    }
940//
941// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/DescribeDevice
942func (c *Panorama) DescribeDeviceRequest(input *DescribeDeviceInput) (req *request.Request, output *DescribeDeviceOutput) {
943	op := &request.Operation{
944		Name:       opDescribeDevice,
945		HTTPMethod: "GET",
946		HTTPPath:   "/devices/{DeviceId}",
947	}
948
949	if input == nil {
950		input = &DescribeDeviceInput{}
951	}
952
953	output = &DescribeDeviceOutput{}
954	req = c.newRequest(op, input, output)
955	return
956}
957
958// DescribeDevice API operation for AWS Panorama.
959//
960// Returns information about a device.
961//
962// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
963// with awserr.Error's Code and Message methods to get detailed information about
964// the error.
965//
966// See the AWS API reference guide for AWS Panorama's
967// API operation DescribeDevice for usage and error information.
968//
969// Returned Error Types:
970//   * ValidationException
971//   The request contains an invalid parameter value.
972//
973//   * InternalServerException
974//   An internal error occurred.
975//
976//   * AccessDeniedException
977//   The requestor does not have permission to access the target action or resource.
978//
979//   * ResourceNotFoundException
980//   The target resource was not found.
981//
982// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/DescribeDevice
983func (c *Panorama) DescribeDevice(input *DescribeDeviceInput) (*DescribeDeviceOutput, error) {
984	req, out := c.DescribeDeviceRequest(input)
985	return out, req.Send()
986}
987
988// DescribeDeviceWithContext is the same as DescribeDevice with the addition of
989// the ability to pass a context and additional request options.
990//
991// See DescribeDevice for details on how to use this API operation.
992//
993// The context must be non-nil and will be used for request cancellation. If
994// the context is nil a panic will occur. In the future the SDK may create
995// sub-contexts for http.Requests. See https://golang.org/pkg/context/
996// for more information on using Contexts.
997func (c *Panorama) DescribeDeviceWithContext(ctx aws.Context, input *DescribeDeviceInput, opts ...request.Option) (*DescribeDeviceOutput, error) {
998	req, out := c.DescribeDeviceRequest(input)
999	req.SetContext(ctx)
1000	req.ApplyOptions(opts...)
1001	return out, req.Send()
1002}
1003
1004const opDescribeDeviceJob = "DescribeDeviceJob"
1005
1006// DescribeDeviceJobRequest generates a "aws/request.Request" representing the
1007// client's request for the DescribeDeviceJob operation. The "output" return
1008// value will be populated with the request's response once the request completes
1009// successfully.
1010//
1011// Use "Send" method on the returned Request to send the API call to the service.
1012// the "output" return value is not valid until after Send returns without error.
1013//
1014// See DescribeDeviceJob for more information on using the DescribeDeviceJob
1015// API call, and error handling.
1016//
1017// This method is useful when you want to inject custom logic or configuration
1018// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1019//
1020//
1021//    // Example sending a request using the DescribeDeviceJobRequest method.
1022//    req, resp := client.DescribeDeviceJobRequest(params)
1023//
1024//    err := req.Send()
1025//    if err == nil { // resp is now filled
1026//        fmt.Println(resp)
1027//    }
1028//
1029// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/DescribeDeviceJob
1030func (c *Panorama) DescribeDeviceJobRequest(input *DescribeDeviceJobInput) (req *request.Request, output *DescribeDeviceJobOutput) {
1031	op := &request.Operation{
1032		Name:       opDescribeDeviceJob,
1033		HTTPMethod: "GET",
1034		HTTPPath:   "/jobs/{JobId}",
1035	}
1036
1037	if input == nil {
1038		input = &DescribeDeviceJobInput{}
1039	}
1040
1041	output = &DescribeDeviceJobOutput{}
1042	req = c.newRequest(op, input, output)
1043	return
1044}
1045
1046// DescribeDeviceJob API operation for AWS Panorama.
1047//
1048// Returns information about a device job.
1049//
1050// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1051// with awserr.Error's Code and Message methods to get detailed information about
1052// the error.
1053//
1054// See the AWS API reference guide for AWS Panorama's
1055// API operation DescribeDeviceJob for usage and error information.
1056//
1057// Returned Error Types:
1058//   * ConflictException
1059//   The target resource is in use.
1060//
1061//   * ValidationException
1062//   The request contains an invalid parameter value.
1063//
1064//   * InternalServerException
1065//   An internal error occurred.
1066//
1067//   * AccessDeniedException
1068//   The requestor does not have permission to access the target action or resource.
1069//
1070//   * ResourceNotFoundException
1071//   The target resource was not found.
1072//
1073// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/DescribeDeviceJob
1074func (c *Panorama) DescribeDeviceJob(input *DescribeDeviceJobInput) (*DescribeDeviceJobOutput, error) {
1075	req, out := c.DescribeDeviceJobRequest(input)
1076	return out, req.Send()
1077}
1078
1079// DescribeDeviceJobWithContext is the same as DescribeDeviceJob with the addition of
1080// the ability to pass a context and additional request options.
1081//
1082// See DescribeDeviceJob for details on how to use this API operation.
1083//
1084// The context must be non-nil and will be used for request cancellation. If
1085// the context is nil a panic will occur. In the future the SDK may create
1086// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1087// for more information on using Contexts.
1088func (c *Panorama) DescribeDeviceJobWithContext(ctx aws.Context, input *DescribeDeviceJobInput, opts ...request.Option) (*DescribeDeviceJobOutput, error) {
1089	req, out := c.DescribeDeviceJobRequest(input)
1090	req.SetContext(ctx)
1091	req.ApplyOptions(opts...)
1092	return out, req.Send()
1093}
1094
1095const opDescribeNode = "DescribeNode"
1096
1097// DescribeNodeRequest generates a "aws/request.Request" representing the
1098// client's request for the DescribeNode operation. The "output" return
1099// value will be populated with the request's response once the request completes
1100// successfully.
1101//
1102// Use "Send" method on the returned Request to send the API call to the service.
1103// the "output" return value is not valid until after Send returns without error.
1104//
1105// See DescribeNode for more information on using the DescribeNode
1106// API call, and error handling.
1107//
1108// This method is useful when you want to inject custom logic or configuration
1109// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1110//
1111//
1112//    // Example sending a request using the DescribeNodeRequest method.
1113//    req, resp := client.DescribeNodeRequest(params)
1114//
1115//    err := req.Send()
1116//    if err == nil { // resp is now filled
1117//        fmt.Println(resp)
1118//    }
1119//
1120// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/DescribeNode
1121func (c *Panorama) DescribeNodeRequest(input *DescribeNodeInput) (req *request.Request, output *DescribeNodeOutput) {
1122	op := &request.Operation{
1123		Name:       opDescribeNode,
1124		HTTPMethod: "GET",
1125		HTTPPath:   "/nodes/{NodeId}",
1126	}
1127
1128	if input == nil {
1129		input = &DescribeNodeInput{}
1130	}
1131
1132	output = &DescribeNodeOutput{}
1133	req = c.newRequest(op, input, output)
1134	return
1135}
1136
1137// DescribeNode API operation for AWS Panorama.
1138//
1139// Returns information about a node.
1140//
1141// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1142// with awserr.Error's Code and Message methods to get detailed information about
1143// the error.
1144//
1145// See the AWS API reference guide for AWS Panorama's
1146// API operation DescribeNode for usage and error information.
1147//
1148// Returned Error Types:
1149//   * ConflictException
1150//   The target resource is in use.
1151//
1152//   * ValidationException
1153//   The request contains an invalid parameter value.
1154//
1155//   * InternalServerException
1156//   An internal error occurred.
1157//
1158//   * AccessDeniedException
1159//   The requestor does not have permission to access the target action or resource.
1160//
1161//   * ResourceNotFoundException
1162//   The target resource was not found.
1163//
1164// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/DescribeNode
1165func (c *Panorama) DescribeNode(input *DescribeNodeInput) (*DescribeNodeOutput, error) {
1166	req, out := c.DescribeNodeRequest(input)
1167	return out, req.Send()
1168}
1169
1170// DescribeNodeWithContext is the same as DescribeNode with the addition of
1171// the ability to pass a context and additional request options.
1172//
1173// See DescribeNode for details on how to use this API operation.
1174//
1175// The context must be non-nil and will be used for request cancellation. If
1176// the context is nil a panic will occur. In the future the SDK may create
1177// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1178// for more information on using Contexts.
1179func (c *Panorama) DescribeNodeWithContext(ctx aws.Context, input *DescribeNodeInput, opts ...request.Option) (*DescribeNodeOutput, error) {
1180	req, out := c.DescribeNodeRequest(input)
1181	req.SetContext(ctx)
1182	req.ApplyOptions(opts...)
1183	return out, req.Send()
1184}
1185
1186const opDescribeNodeFromTemplateJob = "DescribeNodeFromTemplateJob"
1187
1188// DescribeNodeFromTemplateJobRequest generates a "aws/request.Request" representing the
1189// client's request for the DescribeNodeFromTemplateJob operation. The "output" return
1190// value will be populated with the request's response once the request completes
1191// successfully.
1192//
1193// Use "Send" method on the returned Request to send the API call to the service.
1194// the "output" return value is not valid until after Send returns without error.
1195//
1196// See DescribeNodeFromTemplateJob for more information on using the DescribeNodeFromTemplateJob
1197// API call, and error handling.
1198//
1199// This method is useful when you want to inject custom logic or configuration
1200// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1201//
1202//
1203//    // Example sending a request using the DescribeNodeFromTemplateJobRequest method.
1204//    req, resp := client.DescribeNodeFromTemplateJobRequest(params)
1205//
1206//    err := req.Send()
1207//    if err == nil { // resp is now filled
1208//        fmt.Println(resp)
1209//    }
1210//
1211// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/DescribeNodeFromTemplateJob
1212func (c *Panorama) DescribeNodeFromTemplateJobRequest(input *DescribeNodeFromTemplateJobInput) (req *request.Request, output *DescribeNodeFromTemplateJobOutput) {
1213	op := &request.Operation{
1214		Name:       opDescribeNodeFromTemplateJob,
1215		HTTPMethod: "GET",
1216		HTTPPath:   "/packages/template-job/{JobId}",
1217	}
1218
1219	if input == nil {
1220		input = &DescribeNodeFromTemplateJobInput{}
1221	}
1222
1223	output = &DescribeNodeFromTemplateJobOutput{}
1224	req = c.newRequest(op, input, output)
1225	return
1226}
1227
1228// DescribeNodeFromTemplateJob API operation for AWS Panorama.
1229//
1230// Returns information about a job to create a camera stream node.
1231//
1232// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1233// with awserr.Error's Code and Message methods to get detailed information about
1234// the error.
1235//
1236// See the AWS API reference guide for AWS Panorama's
1237// API operation DescribeNodeFromTemplateJob for usage and error information.
1238//
1239// Returned Error Types:
1240//   * ValidationException
1241//   The request contains an invalid parameter value.
1242//
1243//   * InternalServerException
1244//   An internal error occurred.
1245//
1246//   * AccessDeniedException
1247//   The requestor does not have permission to access the target action or resource.
1248//
1249//   * ConflictException
1250//   The target resource is in use.
1251//
1252// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/DescribeNodeFromTemplateJob
1253func (c *Panorama) DescribeNodeFromTemplateJob(input *DescribeNodeFromTemplateJobInput) (*DescribeNodeFromTemplateJobOutput, error) {
1254	req, out := c.DescribeNodeFromTemplateJobRequest(input)
1255	return out, req.Send()
1256}
1257
1258// DescribeNodeFromTemplateJobWithContext is the same as DescribeNodeFromTemplateJob with the addition of
1259// the ability to pass a context and additional request options.
1260//
1261// See DescribeNodeFromTemplateJob for details on how to use this API operation.
1262//
1263// The context must be non-nil and will be used for request cancellation. If
1264// the context is nil a panic will occur. In the future the SDK may create
1265// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1266// for more information on using Contexts.
1267func (c *Panorama) DescribeNodeFromTemplateJobWithContext(ctx aws.Context, input *DescribeNodeFromTemplateJobInput, opts ...request.Option) (*DescribeNodeFromTemplateJobOutput, error) {
1268	req, out := c.DescribeNodeFromTemplateJobRequest(input)
1269	req.SetContext(ctx)
1270	req.ApplyOptions(opts...)
1271	return out, req.Send()
1272}
1273
1274const opDescribePackage = "DescribePackage"
1275
1276// DescribePackageRequest generates a "aws/request.Request" representing the
1277// client's request for the DescribePackage operation. The "output" return
1278// value will be populated with the request's response once the request completes
1279// successfully.
1280//
1281// Use "Send" method on the returned Request to send the API call to the service.
1282// the "output" return value is not valid until after Send returns without error.
1283//
1284// See DescribePackage for more information on using the DescribePackage
1285// API call, and error handling.
1286//
1287// This method is useful when you want to inject custom logic or configuration
1288// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1289//
1290//
1291//    // Example sending a request using the DescribePackageRequest method.
1292//    req, resp := client.DescribePackageRequest(params)
1293//
1294//    err := req.Send()
1295//    if err == nil { // resp is now filled
1296//        fmt.Println(resp)
1297//    }
1298//
1299// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/DescribePackage
1300func (c *Panorama) DescribePackageRequest(input *DescribePackageInput) (req *request.Request, output *DescribePackageOutput) {
1301	op := &request.Operation{
1302		Name:       opDescribePackage,
1303		HTTPMethod: "GET",
1304		HTTPPath:   "/packages/metadata/{PackageId}",
1305	}
1306
1307	if input == nil {
1308		input = &DescribePackageInput{}
1309	}
1310
1311	output = &DescribePackageOutput{}
1312	req = c.newRequest(op, input, output)
1313	return
1314}
1315
1316// DescribePackage API operation for AWS Panorama.
1317//
1318// Returns information about a package.
1319//
1320// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1321// with awserr.Error's Code and Message methods to get detailed information about
1322// the error.
1323//
1324// See the AWS API reference guide for AWS Panorama's
1325// API operation DescribePackage for usage and error information.
1326//
1327// Returned Error Types:
1328//   * ValidationException
1329//   The request contains an invalid parameter value.
1330//
1331//   * InternalServerException
1332//   An internal error occurred.
1333//
1334//   * AccessDeniedException
1335//   The requestor does not have permission to access the target action or resource.
1336//
1337//   * ConflictException
1338//   The target resource is in use.
1339//
1340//   * ResourceNotFoundException
1341//   The target resource was not found.
1342//
1343// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/DescribePackage
1344func (c *Panorama) DescribePackage(input *DescribePackageInput) (*DescribePackageOutput, error) {
1345	req, out := c.DescribePackageRequest(input)
1346	return out, req.Send()
1347}
1348
1349// DescribePackageWithContext is the same as DescribePackage with the addition of
1350// the ability to pass a context and additional request options.
1351//
1352// See DescribePackage for details on how to use this API operation.
1353//
1354// The context must be non-nil and will be used for request cancellation. If
1355// the context is nil a panic will occur. In the future the SDK may create
1356// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1357// for more information on using Contexts.
1358func (c *Panorama) DescribePackageWithContext(ctx aws.Context, input *DescribePackageInput, opts ...request.Option) (*DescribePackageOutput, error) {
1359	req, out := c.DescribePackageRequest(input)
1360	req.SetContext(ctx)
1361	req.ApplyOptions(opts...)
1362	return out, req.Send()
1363}
1364
1365const opDescribePackageImportJob = "DescribePackageImportJob"
1366
1367// DescribePackageImportJobRequest generates a "aws/request.Request" representing the
1368// client's request for the DescribePackageImportJob operation. The "output" return
1369// value will be populated with the request's response once the request completes
1370// successfully.
1371//
1372// Use "Send" method on the returned Request to send the API call to the service.
1373// the "output" return value is not valid until after Send returns without error.
1374//
1375// See DescribePackageImportJob for more information on using the DescribePackageImportJob
1376// API call, and error handling.
1377//
1378// This method is useful when you want to inject custom logic or configuration
1379// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1380//
1381//
1382//    // Example sending a request using the DescribePackageImportJobRequest method.
1383//    req, resp := client.DescribePackageImportJobRequest(params)
1384//
1385//    err := req.Send()
1386//    if err == nil { // resp is now filled
1387//        fmt.Println(resp)
1388//    }
1389//
1390// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/DescribePackageImportJob
1391func (c *Panorama) DescribePackageImportJobRequest(input *DescribePackageImportJobInput) (req *request.Request, output *DescribePackageImportJobOutput) {
1392	op := &request.Operation{
1393		Name:       opDescribePackageImportJob,
1394		HTTPMethod: "GET",
1395		HTTPPath:   "/packages/import-jobs/{JobId}",
1396	}
1397
1398	if input == nil {
1399		input = &DescribePackageImportJobInput{}
1400	}
1401
1402	output = &DescribePackageImportJobOutput{}
1403	req = c.newRequest(op, input, output)
1404	return
1405}
1406
1407// DescribePackageImportJob API operation for AWS Panorama.
1408//
1409// Returns information about a package import job.
1410//
1411// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1412// with awserr.Error's Code and Message methods to get detailed information about
1413// the error.
1414//
1415// See the AWS API reference guide for AWS Panorama's
1416// API operation DescribePackageImportJob for usage and error information.
1417//
1418// Returned Error Types:
1419//   * ValidationException
1420//   The request contains an invalid parameter value.
1421//
1422//   * InternalServerException
1423//   An internal error occurred.
1424//
1425//   * AccessDeniedException
1426//   The requestor does not have permission to access the target action or resource.
1427//
1428//   * ConflictException
1429//   The target resource is in use.
1430//
1431// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/DescribePackageImportJob
1432func (c *Panorama) DescribePackageImportJob(input *DescribePackageImportJobInput) (*DescribePackageImportJobOutput, error) {
1433	req, out := c.DescribePackageImportJobRequest(input)
1434	return out, req.Send()
1435}
1436
1437// DescribePackageImportJobWithContext is the same as DescribePackageImportJob with the addition of
1438// the ability to pass a context and additional request options.
1439//
1440// See DescribePackageImportJob for details on how to use this API operation.
1441//
1442// The context must be non-nil and will be used for request cancellation. If
1443// the context is nil a panic will occur. In the future the SDK may create
1444// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1445// for more information on using Contexts.
1446func (c *Panorama) DescribePackageImportJobWithContext(ctx aws.Context, input *DescribePackageImportJobInput, opts ...request.Option) (*DescribePackageImportJobOutput, error) {
1447	req, out := c.DescribePackageImportJobRequest(input)
1448	req.SetContext(ctx)
1449	req.ApplyOptions(opts...)
1450	return out, req.Send()
1451}
1452
1453const opDescribePackageVersion = "DescribePackageVersion"
1454
1455// DescribePackageVersionRequest generates a "aws/request.Request" representing the
1456// client's request for the DescribePackageVersion operation. The "output" return
1457// value will be populated with the request's response once the request completes
1458// successfully.
1459//
1460// Use "Send" method on the returned Request to send the API call to the service.
1461// the "output" return value is not valid until after Send returns without error.
1462//
1463// See DescribePackageVersion for more information on using the DescribePackageVersion
1464// API call, and error handling.
1465//
1466// This method is useful when you want to inject custom logic or configuration
1467// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1468//
1469//
1470//    // Example sending a request using the DescribePackageVersionRequest method.
1471//    req, resp := client.DescribePackageVersionRequest(params)
1472//
1473//    err := req.Send()
1474//    if err == nil { // resp is now filled
1475//        fmt.Println(resp)
1476//    }
1477//
1478// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/DescribePackageVersion
1479func (c *Panorama) DescribePackageVersionRequest(input *DescribePackageVersionInput) (req *request.Request, output *DescribePackageVersionOutput) {
1480	op := &request.Operation{
1481		Name:       opDescribePackageVersion,
1482		HTTPMethod: "GET",
1483		HTTPPath:   "/packages/metadata/{PackageId}/versions/{PackageVersion}",
1484	}
1485
1486	if input == nil {
1487		input = &DescribePackageVersionInput{}
1488	}
1489
1490	output = &DescribePackageVersionOutput{}
1491	req = c.newRequest(op, input, output)
1492	return
1493}
1494
1495// DescribePackageVersion API operation for AWS Panorama.
1496//
1497// Returns information about a package version.
1498//
1499// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1500// with awserr.Error's Code and Message methods to get detailed information about
1501// the error.
1502//
1503// See the AWS API reference guide for AWS Panorama's
1504// API operation DescribePackageVersion for usage and error information.
1505//
1506// Returned Error Types:
1507//   * ValidationException
1508//   The request contains an invalid parameter value.
1509//
1510//   * InternalServerException
1511//   An internal error occurred.
1512//
1513//   * AccessDeniedException
1514//   The requestor does not have permission to access the target action or resource.
1515//
1516//   * ConflictException
1517//   The target resource is in use.
1518//
1519//   * ResourceNotFoundException
1520//   The target resource was not found.
1521//
1522// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/DescribePackageVersion
1523func (c *Panorama) DescribePackageVersion(input *DescribePackageVersionInput) (*DescribePackageVersionOutput, error) {
1524	req, out := c.DescribePackageVersionRequest(input)
1525	return out, req.Send()
1526}
1527
1528// DescribePackageVersionWithContext is the same as DescribePackageVersion with the addition of
1529// the ability to pass a context and additional request options.
1530//
1531// See DescribePackageVersion for details on how to use this API operation.
1532//
1533// The context must be non-nil and will be used for request cancellation. If
1534// the context is nil a panic will occur. In the future the SDK may create
1535// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1536// for more information on using Contexts.
1537func (c *Panorama) DescribePackageVersionWithContext(ctx aws.Context, input *DescribePackageVersionInput, opts ...request.Option) (*DescribePackageVersionOutput, error) {
1538	req, out := c.DescribePackageVersionRequest(input)
1539	req.SetContext(ctx)
1540	req.ApplyOptions(opts...)
1541	return out, req.Send()
1542}
1543
1544const opListApplicationInstanceDependencies = "ListApplicationInstanceDependencies"
1545
1546// ListApplicationInstanceDependenciesRequest generates a "aws/request.Request" representing the
1547// client's request for the ListApplicationInstanceDependencies operation. The "output" return
1548// value will be populated with the request's response once the request completes
1549// successfully.
1550//
1551// Use "Send" method on the returned Request to send the API call to the service.
1552// the "output" return value is not valid until after Send returns without error.
1553//
1554// See ListApplicationInstanceDependencies for more information on using the ListApplicationInstanceDependencies
1555// API call, and error handling.
1556//
1557// This method is useful when you want to inject custom logic or configuration
1558// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1559//
1560//
1561//    // Example sending a request using the ListApplicationInstanceDependenciesRequest method.
1562//    req, resp := client.ListApplicationInstanceDependenciesRequest(params)
1563//
1564//    err := req.Send()
1565//    if err == nil { // resp is now filled
1566//        fmt.Println(resp)
1567//    }
1568//
1569// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/ListApplicationInstanceDependencies
1570func (c *Panorama) ListApplicationInstanceDependenciesRequest(input *ListApplicationInstanceDependenciesInput) (req *request.Request, output *ListApplicationInstanceDependenciesOutput) {
1571	op := &request.Operation{
1572		Name:       opListApplicationInstanceDependencies,
1573		HTTPMethod: "GET",
1574		HTTPPath:   "/application-instances/{applicationInstanceId}/package-dependencies",
1575		Paginator: &request.Paginator{
1576			InputTokens:     []string{"NextToken"},
1577			OutputTokens:    []string{"NextToken"},
1578			LimitToken:      "MaxResults",
1579			TruncationToken: "",
1580		},
1581	}
1582
1583	if input == nil {
1584		input = &ListApplicationInstanceDependenciesInput{}
1585	}
1586
1587	output = &ListApplicationInstanceDependenciesOutput{}
1588	req = c.newRequest(op, input, output)
1589	return
1590}
1591
1592// ListApplicationInstanceDependencies API operation for AWS Panorama.
1593//
1594// Returns a list of application instance dependencies.
1595//
1596// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1597// with awserr.Error's Code and Message methods to get detailed information about
1598// the error.
1599//
1600// See the AWS API reference guide for AWS Panorama's
1601// API operation ListApplicationInstanceDependencies for usage and error information.
1602//
1603// Returned Error Types:
1604//   * AccessDeniedException
1605//   The requestor does not have permission to access the target action or resource.
1606//
1607//   * InternalServerException
1608//   An internal error occurred.
1609//
1610// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/ListApplicationInstanceDependencies
1611func (c *Panorama) ListApplicationInstanceDependencies(input *ListApplicationInstanceDependenciesInput) (*ListApplicationInstanceDependenciesOutput, error) {
1612	req, out := c.ListApplicationInstanceDependenciesRequest(input)
1613	return out, req.Send()
1614}
1615
1616// ListApplicationInstanceDependenciesWithContext is the same as ListApplicationInstanceDependencies with the addition of
1617// the ability to pass a context and additional request options.
1618//
1619// See ListApplicationInstanceDependencies for details on how to use this API operation.
1620//
1621// The context must be non-nil and will be used for request cancellation. If
1622// the context is nil a panic will occur. In the future the SDK may create
1623// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1624// for more information on using Contexts.
1625func (c *Panorama) ListApplicationInstanceDependenciesWithContext(ctx aws.Context, input *ListApplicationInstanceDependenciesInput, opts ...request.Option) (*ListApplicationInstanceDependenciesOutput, error) {
1626	req, out := c.ListApplicationInstanceDependenciesRequest(input)
1627	req.SetContext(ctx)
1628	req.ApplyOptions(opts...)
1629	return out, req.Send()
1630}
1631
1632// ListApplicationInstanceDependenciesPages iterates over the pages of a ListApplicationInstanceDependencies operation,
1633// calling the "fn" function with the response data for each page. To stop
1634// iterating, return false from the fn function.
1635//
1636// See ListApplicationInstanceDependencies method for more information on how to use this operation.
1637//
1638// Note: This operation can generate multiple requests to a service.
1639//
1640//    // Example iterating over at most 3 pages of a ListApplicationInstanceDependencies operation.
1641//    pageNum := 0
1642//    err := client.ListApplicationInstanceDependenciesPages(params,
1643//        func(page *panorama.ListApplicationInstanceDependenciesOutput, lastPage bool) bool {
1644//            pageNum++
1645//            fmt.Println(page)
1646//            return pageNum <= 3
1647//        })
1648//
1649func (c *Panorama) ListApplicationInstanceDependenciesPages(input *ListApplicationInstanceDependenciesInput, fn func(*ListApplicationInstanceDependenciesOutput, bool) bool) error {
1650	return c.ListApplicationInstanceDependenciesPagesWithContext(aws.BackgroundContext(), input, fn)
1651}
1652
1653// ListApplicationInstanceDependenciesPagesWithContext same as ListApplicationInstanceDependenciesPages except
1654// it takes a Context and allows setting request options on the pages.
1655//
1656// The context must be non-nil and will be used for request cancellation. If
1657// the context is nil a panic will occur. In the future the SDK may create
1658// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1659// for more information on using Contexts.
1660func (c *Panorama) ListApplicationInstanceDependenciesPagesWithContext(ctx aws.Context, input *ListApplicationInstanceDependenciesInput, fn func(*ListApplicationInstanceDependenciesOutput, bool) bool, opts ...request.Option) error {
1661	p := request.Pagination{
1662		NewRequest: func() (*request.Request, error) {
1663			var inCpy *ListApplicationInstanceDependenciesInput
1664			if input != nil {
1665				tmp := *input
1666				inCpy = &tmp
1667			}
1668			req, _ := c.ListApplicationInstanceDependenciesRequest(inCpy)
1669			req.SetContext(ctx)
1670			req.ApplyOptions(opts...)
1671			return req, nil
1672		},
1673	}
1674
1675	for p.Next() {
1676		if !fn(p.Page().(*ListApplicationInstanceDependenciesOutput), !p.HasNextPage()) {
1677			break
1678		}
1679	}
1680
1681	return p.Err()
1682}
1683
1684const opListApplicationInstanceNodeInstances = "ListApplicationInstanceNodeInstances"
1685
1686// ListApplicationInstanceNodeInstancesRequest generates a "aws/request.Request" representing the
1687// client's request for the ListApplicationInstanceNodeInstances operation. The "output" return
1688// value will be populated with the request's response once the request completes
1689// successfully.
1690//
1691// Use "Send" method on the returned Request to send the API call to the service.
1692// the "output" return value is not valid until after Send returns without error.
1693//
1694// See ListApplicationInstanceNodeInstances for more information on using the ListApplicationInstanceNodeInstances
1695// API call, and error handling.
1696//
1697// This method is useful when you want to inject custom logic or configuration
1698// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1699//
1700//
1701//    // Example sending a request using the ListApplicationInstanceNodeInstancesRequest method.
1702//    req, resp := client.ListApplicationInstanceNodeInstancesRequest(params)
1703//
1704//    err := req.Send()
1705//    if err == nil { // resp is now filled
1706//        fmt.Println(resp)
1707//    }
1708//
1709// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/ListApplicationInstanceNodeInstances
1710func (c *Panorama) ListApplicationInstanceNodeInstancesRequest(input *ListApplicationInstanceNodeInstancesInput) (req *request.Request, output *ListApplicationInstanceNodeInstancesOutput) {
1711	op := &request.Operation{
1712		Name:       opListApplicationInstanceNodeInstances,
1713		HTTPMethod: "GET",
1714		HTTPPath:   "/application-instances/{applicationInstanceId}/node-instances",
1715		Paginator: &request.Paginator{
1716			InputTokens:     []string{"NextToken"},
1717			OutputTokens:    []string{"NextToken"},
1718			LimitToken:      "MaxResults",
1719			TruncationToken: "",
1720		},
1721	}
1722
1723	if input == nil {
1724		input = &ListApplicationInstanceNodeInstancesInput{}
1725	}
1726
1727	output = &ListApplicationInstanceNodeInstancesOutput{}
1728	req = c.newRequest(op, input, output)
1729	return
1730}
1731
1732// ListApplicationInstanceNodeInstances API operation for AWS Panorama.
1733//
1734// Returns a list of application node instances.
1735//
1736// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1737// with awserr.Error's Code and Message methods to get detailed information about
1738// the error.
1739//
1740// See the AWS API reference guide for AWS Panorama's
1741// API operation ListApplicationInstanceNodeInstances for usage and error information.
1742//
1743// Returned Error Types:
1744//   * AccessDeniedException
1745//   The requestor does not have permission to access the target action or resource.
1746//
1747//   * InternalServerException
1748//   An internal error occurred.
1749//
1750// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/ListApplicationInstanceNodeInstances
1751func (c *Panorama) ListApplicationInstanceNodeInstances(input *ListApplicationInstanceNodeInstancesInput) (*ListApplicationInstanceNodeInstancesOutput, error) {
1752	req, out := c.ListApplicationInstanceNodeInstancesRequest(input)
1753	return out, req.Send()
1754}
1755
1756// ListApplicationInstanceNodeInstancesWithContext is the same as ListApplicationInstanceNodeInstances with the addition of
1757// the ability to pass a context and additional request options.
1758//
1759// See ListApplicationInstanceNodeInstances for details on how to use this API operation.
1760//
1761// The context must be non-nil and will be used for request cancellation. If
1762// the context is nil a panic will occur. In the future the SDK may create
1763// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1764// for more information on using Contexts.
1765func (c *Panorama) ListApplicationInstanceNodeInstancesWithContext(ctx aws.Context, input *ListApplicationInstanceNodeInstancesInput, opts ...request.Option) (*ListApplicationInstanceNodeInstancesOutput, error) {
1766	req, out := c.ListApplicationInstanceNodeInstancesRequest(input)
1767	req.SetContext(ctx)
1768	req.ApplyOptions(opts...)
1769	return out, req.Send()
1770}
1771
1772// ListApplicationInstanceNodeInstancesPages iterates over the pages of a ListApplicationInstanceNodeInstances operation,
1773// calling the "fn" function with the response data for each page. To stop
1774// iterating, return false from the fn function.
1775//
1776// See ListApplicationInstanceNodeInstances method for more information on how to use this operation.
1777//
1778// Note: This operation can generate multiple requests to a service.
1779//
1780//    // Example iterating over at most 3 pages of a ListApplicationInstanceNodeInstances operation.
1781//    pageNum := 0
1782//    err := client.ListApplicationInstanceNodeInstancesPages(params,
1783//        func(page *panorama.ListApplicationInstanceNodeInstancesOutput, lastPage bool) bool {
1784//            pageNum++
1785//            fmt.Println(page)
1786//            return pageNum <= 3
1787//        })
1788//
1789func (c *Panorama) ListApplicationInstanceNodeInstancesPages(input *ListApplicationInstanceNodeInstancesInput, fn func(*ListApplicationInstanceNodeInstancesOutput, bool) bool) error {
1790	return c.ListApplicationInstanceNodeInstancesPagesWithContext(aws.BackgroundContext(), input, fn)
1791}
1792
1793// ListApplicationInstanceNodeInstancesPagesWithContext same as ListApplicationInstanceNodeInstancesPages except
1794// it takes a Context and allows setting request options on the pages.
1795//
1796// The context must be non-nil and will be used for request cancellation. If
1797// the context is nil a panic will occur. In the future the SDK may create
1798// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1799// for more information on using Contexts.
1800func (c *Panorama) ListApplicationInstanceNodeInstancesPagesWithContext(ctx aws.Context, input *ListApplicationInstanceNodeInstancesInput, fn func(*ListApplicationInstanceNodeInstancesOutput, bool) bool, opts ...request.Option) error {
1801	p := request.Pagination{
1802		NewRequest: func() (*request.Request, error) {
1803			var inCpy *ListApplicationInstanceNodeInstancesInput
1804			if input != nil {
1805				tmp := *input
1806				inCpy = &tmp
1807			}
1808			req, _ := c.ListApplicationInstanceNodeInstancesRequest(inCpy)
1809			req.SetContext(ctx)
1810			req.ApplyOptions(opts...)
1811			return req, nil
1812		},
1813	}
1814
1815	for p.Next() {
1816		if !fn(p.Page().(*ListApplicationInstanceNodeInstancesOutput), !p.HasNextPage()) {
1817			break
1818		}
1819	}
1820
1821	return p.Err()
1822}
1823
1824const opListApplicationInstances = "ListApplicationInstances"
1825
1826// ListApplicationInstancesRequest generates a "aws/request.Request" representing the
1827// client's request for the ListApplicationInstances operation. The "output" return
1828// value will be populated with the request's response once the request completes
1829// successfully.
1830//
1831// Use "Send" method on the returned Request to send the API call to the service.
1832// the "output" return value is not valid until after Send returns without error.
1833//
1834// See ListApplicationInstances for more information on using the ListApplicationInstances
1835// API call, and error handling.
1836//
1837// This method is useful when you want to inject custom logic or configuration
1838// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1839//
1840//
1841//    // Example sending a request using the ListApplicationInstancesRequest method.
1842//    req, resp := client.ListApplicationInstancesRequest(params)
1843//
1844//    err := req.Send()
1845//    if err == nil { // resp is now filled
1846//        fmt.Println(resp)
1847//    }
1848//
1849// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/ListApplicationInstances
1850func (c *Panorama) ListApplicationInstancesRequest(input *ListApplicationInstancesInput) (req *request.Request, output *ListApplicationInstancesOutput) {
1851	op := &request.Operation{
1852		Name:       opListApplicationInstances,
1853		HTTPMethod: "GET",
1854		HTTPPath:   "/application-instances",
1855		Paginator: &request.Paginator{
1856			InputTokens:     []string{"NextToken"},
1857			OutputTokens:    []string{"NextToken"},
1858			LimitToken:      "MaxResults",
1859			TruncationToken: "",
1860		},
1861	}
1862
1863	if input == nil {
1864		input = &ListApplicationInstancesInput{}
1865	}
1866
1867	output = &ListApplicationInstancesOutput{}
1868	req = c.newRequest(op, input, output)
1869	return
1870}
1871
1872// ListApplicationInstances API operation for AWS Panorama.
1873//
1874// Returns a list of application instances.
1875//
1876// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1877// with awserr.Error's Code and Message methods to get detailed information about
1878// the error.
1879//
1880// See the AWS API reference guide for AWS Panorama's
1881// API operation ListApplicationInstances for usage and error information.
1882//
1883// Returned Error Types:
1884//   * AccessDeniedException
1885//   The requestor does not have permission to access the target action or resource.
1886//
1887//   * InternalServerException
1888//   An internal error occurred.
1889//
1890// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/ListApplicationInstances
1891func (c *Panorama) ListApplicationInstances(input *ListApplicationInstancesInput) (*ListApplicationInstancesOutput, error) {
1892	req, out := c.ListApplicationInstancesRequest(input)
1893	return out, req.Send()
1894}
1895
1896// ListApplicationInstancesWithContext is the same as ListApplicationInstances with the addition of
1897// the ability to pass a context and additional request options.
1898//
1899// See ListApplicationInstances for details on how to use this API operation.
1900//
1901// The context must be non-nil and will be used for request cancellation. If
1902// the context is nil a panic will occur. In the future the SDK may create
1903// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1904// for more information on using Contexts.
1905func (c *Panorama) ListApplicationInstancesWithContext(ctx aws.Context, input *ListApplicationInstancesInput, opts ...request.Option) (*ListApplicationInstancesOutput, error) {
1906	req, out := c.ListApplicationInstancesRequest(input)
1907	req.SetContext(ctx)
1908	req.ApplyOptions(opts...)
1909	return out, req.Send()
1910}
1911
1912// ListApplicationInstancesPages iterates over the pages of a ListApplicationInstances operation,
1913// calling the "fn" function with the response data for each page. To stop
1914// iterating, return false from the fn function.
1915//
1916// See ListApplicationInstances method for more information on how to use this operation.
1917//
1918// Note: This operation can generate multiple requests to a service.
1919//
1920//    // Example iterating over at most 3 pages of a ListApplicationInstances operation.
1921//    pageNum := 0
1922//    err := client.ListApplicationInstancesPages(params,
1923//        func(page *panorama.ListApplicationInstancesOutput, lastPage bool) bool {
1924//            pageNum++
1925//            fmt.Println(page)
1926//            return pageNum <= 3
1927//        })
1928//
1929func (c *Panorama) ListApplicationInstancesPages(input *ListApplicationInstancesInput, fn func(*ListApplicationInstancesOutput, bool) bool) error {
1930	return c.ListApplicationInstancesPagesWithContext(aws.BackgroundContext(), input, fn)
1931}
1932
1933// ListApplicationInstancesPagesWithContext same as ListApplicationInstancesPages except
1934// it takes a Context and allows setting request options on the pages.
1935//
1936// The context must be non-nil and will be used for request cancellation. If
1937// the context is nil a panic will occur. In the future the SDK may create
1938// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1939// for more information on using Contexts.
1940func (c *Panorama) ListApplicationInstancesPagesWithContext(ctx aws.Context, input *ListApplicationInstancesInput, fn func(*ListApplicationInstancesOutput, bool) bool, opts ...request.Option) error {
1941	p := request.Pagination{
1942		NewRequest: func() (*request.Request, error) {
1943			var inCpy *ListApplicationInstancesInput
1944			if input != nil {
1945				tmp := *input
1946				inCpy = &tmp
1947			}
1948			req, _ := c.ListApplicationInstancesRequest(inCpy)
1949			req.SetContext(ctx)
1950			req.ApplyOptions(opts...)
1951			return req, nil
1952		},
1953	}
1954
1955	for p.Next() {
1956		if !fn(p.Page().(*ListApplicationInstancesOutput), !p.HasNextPage()) {
1957			break
1958		}
1959	}
1960
1961	return p.Err()
1962}
1963
1964const opListDevices = "ListDevices"
1965
1966// ListDevicesRequest generates a "aws/request.Request" representing the
1967// client's request for the ListDevices operation. The "output" return
1968// value will be populated with the request's response once the request completes
1969// successfully.
1970//
1971// Use "Send" method on the returned Request to send the API call to the service.
1972// the "output" return value is not valid until after Send returns without error.
1973//
1974// See ListDevices for more information on using the ListDevices
1975// API call, and error handling.
1976//
1977// This method is useful when you want to inject custom logic or configuration
1978// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1979//
1980//
1981//    // Example sending a request using the ListDevicesRequest method.
1982//    req, resp := client.ListDevicesRequest(params)
1983//
1984//    err := req.Send()
1985//    if err == nil { // resp is now filled
1986//        fmt.Println(resp)
1987//    }
1988//
1989// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/ListDevices
1990func (c *Panorama) ListDevicesRequest(input *ListDevicesInput) (req *request.Request, output *ListDevicesOutput) {
1991	op := &request.Operation{
1992		Name:       opListDevices,
1993		HTTPMethod: "GET",
1994		HTTPPath:   "/devices",
1995		Paginator: &request.Paginator{
1996			InputTokens:     []string{"NextToken"},
1997			OutputTokens:    []string{"NextToken"},
1998			LimitToken:      "MaxResults",
1999			TruncationToken: "",
2000		},
2001	}
2002
2003	if input == nil {
2004		input = &ListDevicesInput{}
2005	}
2006
2007	output = &ListDevicesOutput{}
2008	req = c.newRequest(op, input, output)
2009	return
2010}
2011
2012// ListDevices API operation for AWS Panorama.
2013//
2014// Returns a list of devices.
2015//
2016// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2017// with awserr.Error's Code and Message methods to get detailed information about
2018// the error.
2019//
2020// See the AWS API reference guide for AWS Panorama's
2021// API operation ListDevices for usage and error information.
2022//
2023// Returned Error Types:
2024//   * ConflictException
2025//   The target resource is in use.
2026//
2027//   * ValidationException
2028//   The request contains an invalid parameter value.
2029//
2030//   * InternalServerException
2031//   An internal error occurred.
2032//
2033//   * AccessDeniedException
2034//   The requestor does not have permission to access the target action or resource.
2035//
2036// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/ListDevices
2037func (c *Panorama) ListDevices(input *ListDevicesInput) (*ListDevicesOutput, error) {
2038	req, out := c.ListDevicesRequest(input)
2039	return out, req.Send()
2040}
2041
2042// ListDevicesWithContext is the same as ListDevices with the addition of
2043// the ability to pass a context and additional request options.
2044//
2045// See ListDevices for details on how to use this API operation.
2046//
2047// The context must be non-nil and will be used for request cancellation. If
2048// the context is nil a panic will occur. In the future the SDK may create
2049// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2050// for more information on using Contexts.
2051func (c *Panorama) ListDevicesWithContext(ctx aws.Context, input *ListDevicesInput, opts ...request.Option) (*ListDevicesOutput, error) {
2052	req, out := c.ListDevicesRequest(input)
2053	req.SetContext(ctx)
2054	req.ApplyOptions(opts...)
2055	return out, req.Send()
2056}
2057
2058// ListDevicesPages iterates over the pages of a ListDevices operation,
2059// calling the "fn" function with the response data for each page. To stop
2060// iterating, return false from the fn function.
2061//
2062// See ListDevices method for more information on how to use this operation.
2063//
2064// Note: This operation can generate multiple requests to a service.
2065//
2066//    // Example iterating over at most 3 pages of a ListDevices operation.
2067//    pageNum := 0
2068//    err := client.ListDevicesPages(params,
2069//        func(page *panorama.ListDevicesOutput, lastPage bool) bool {
2070//            pageNum++
2071//            fmt.Println(page)
2072//            return pageNum <= 3
2073//        })
2074//
2075func (c *Panorama) ListDevicesPages(input *ListDevicesInput, fn func(*ListDevicesOutput, bool) bool) error {
2076	return c.ListDevicesPagesWithContext(aws.BackgroundContext(), input, fn)
2077}
2078
2079// ListDevicesPagesWithContext same as ListDevicesPages except
2080// it takes a Context and allows setting request options on the pages.
2081//
2082// The context must be non-nil and will be used for request cancellation. If
2083// the context is nil a panic will occur. In the future the SDK may create
2084// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2085// for more information on using Contexts.
2086func (c *Panorama) ListDevicesPagesWithContext(ctx aws.Context, input *ListDevicesInput, fn func(*ListDevicesOutput, bool) bool, opts ...request.Option) error {
2087	p := request.Pagination{
2088		NewRequest: func() (*request.Request, error) {
2089			var inCpy *ListDevicesInput
2090			if input != nil {
2091				tmp := *input
2092				inCpy = &tmp
2093			}
2094			req, _ := c.ListDevicesRequest(inCpy)
2095			req.SetContext(ctx)
2096			req.ApplyOptions(opts...)
2097			return req, nil
2098		},
2099	}
2100
2101	for p.Next() {
2102		if !fn(p.Page().(*ListDevicesOutput), !p.HasNextPage()) {
2103			break
2104		}
2105	}
2106
2107	return p.Err()
2108}
2109
2110const opListDevicesJobs = "ListDevicesJobs"
2111
2112// ListDevicesJobsRequest generates a "aws/request.Request" representing the
2113// client's request for the ListDevicesJobs operation. The "output" return
2114// value will be populated with the request's response once the request completes
2115// successfully.
2116//
2117// Use "Send" method on the returned Request to send the API call to the service.
2118// the "output" return value is not valid until after Send returns without error.
2119//
2120// See ListDevicesJobs for more information on using the ListDevicesJobs
2121// API call, and error handling.
2122//
2123// This method is useful when you want to inject custom logic or configuration
2124// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2125//
2126//
2127//    // Example sending a request using the ListDevicesJobsRequest method.
2128//    req, resp := client.ListDevicesJobsRequest(params)
2129//
2130//    err := req.Send()
2131//    if err == nil { // resp is now filled
2132//        fmt.Println(resp)
2133//    }
2134//
2135// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/ListDevicesJobs
2136func (c *Panorama) ListDevicesJobsRequest(input *ListDevicesJobsInput) (req *request.Request, output *ListDevicesJobsOutput) {
2137	op := &request.Operation{
2138		Name:       opListDevicesJobs,
2139		HTTPMethod: "GET",
2140		HTTPPath:   "/jobs",
2141		Paginator: &request.Paginator{
2142			InputTokens:     []string{"NextToken"},
2143			OutputTokens:    []string{"NextToken"},
2144			LimitToken:      "MaxResults",
2145			TruncationToken: "",
2146		},
2147	}
2148
2149	if input == nil {
2150		input = &ListDevicesJobsInput{}
2151	}
2152
2153	output = &ListDevicesJobsOutput{}
2154	req = c.newRequest(op, input, output)
2155	return
2156}
2157
2158// ListDevicesJobs API operation for AWS Panorama.
2159//
2160// Returns a list of jobs.
2161//
2162// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2163// with awserr.Error's Code and Message methods to get detailed information about
2164// the error.
2165//
2166// See the AWS API reference guide for AWS Panorama's
2167// API operation ListDevicesJobs for usage and error information.
2168//
2169// Returned Error Types:
2170//   * ConflictException
2171//   The target resource is in use.
2172//
2173//   * ValidationException
2174//   The request contains an invalid parameter value.
2175//
2176//   * InternalServerException
2177//   An internal error occurred.
2178//
2179//   * AccessDeniedException
2180//   The requestor does not have permission to access the target action or resource.
2181//
2182//   * ResourceNotFoundException
2183//   The target resource was not found.
2184//
2185// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/ListDevicesJobs
2186func (c *Panorama) ListDevicesJobs(input *ListDevicesJobsInput) (*ListDevicesJobsOutput, error) {
2187	req, out := c.ListDevicesJobsRequest(input)
2188	return out, req.Send()
2189}
2190
2191// ListDevicesJobsWithContext is the same as ListDevicesJobs with the addition of
2192// the ability to pass a context and additional request options.
2193//
2194// See ListDevicesJobs for details on how to use this API operation.
2195//
2196// The context must be non-nil and will be used for request cancellation. If
2197// the context is nil a panic will occur. In the future the SDK may create
2198// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2199// for more information on using Contexts.
2200func (c *Panorama) ListDevicesJobsWithContext(ctx aws.Context, input *ListDevicesJobsInput, opts ...request.Option) (*ListDevicesJobsOutput, error) {
2201	req, out := c.ListDevicesJobsRequest(input)
2202	req.SetContext(ctx)
2203	req.ApplyOptions(opts...)
2204	return out, req.Send()
2205}
2206
2207// ListDevicesJobsPages iterates over the pages of a ListDevicesJobs operation,
2208// calling the "fn" function with the response data for each page. To stop
2209// iterating, return false from the fn function.
2210//
2211// See ListDevicesJobs method for more information on how to use this operation.
2212//
2213// Note: This operation can generate multiple requests to a service.
2214//
2215//    // Example iterating over at most 3 pages of a ListDevicesJobs operation.
2216//    pageNum := 0
2217//    err := client.ListDevicesJobsPages(params,
2218//        func(page *panorama.ListDevicesJobsOutput, lastPage bool) bool {
2219//            pageNum++
2220//            fmt.Println(page)
2221//            return pageNum <= 3
2222//        })
2223//
2224func (c *Panorama) ListDevicesJobsPages(input *ListDevicesJobsInput, fn func(*ListDevicesJobsOutput, bool) bool) error {
2225	return c.ListDevicesJobsPagesWithContext(aws.BackgroundContext(), input, fn)
2226}
2227
2228// ListDevicesJobsPagesWithContext same as ListDevicesJobsPages except
2229// it takes a Context and allows setting request options on the pages.
2230//
2231// The context must be non-nil and will be used for request cancellation. If
2232// the context is nil a panic will occur. In the future the SDK may create
2233// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2234// for more information on using Contexts.
2235func (c *Panorama) ListDevicesJobsPagesWithContext(ctx aws.Context, input *ListDevicesJobsInput, fn func(*ListDevicesJobsOutput, bool) bool, opts ...request.Option) error {
2236	p := request.Pagination{
2237		NewRequest: func() (*request.Request, error) {
2238			var inCpy *ListDevicesJobsInput
2239			if input != nil {
2240				tmp := *input
2241				inCpy = &tmp
2242			}
2243			req, _ := c.ListDevicesJobsRequest(inCpy)
2244			req.SetContext(ctx)
2245			req.ApplyOptions(opts...)
2246			return req, nil
2247		},
2248	}
2249
2250	for p.Next() {
2251		if !fn(p.Page().(*ListDevicesJobsOutput), !p.HasNextPage()) {
2252			break
2253		}
2254	}
2255
2256	return p.Err()
2257}
2258
2259const opListNodeFromTemplateJobs = "ListNodeFromTemplateJobs"
2260
2261// ListNodeFromTemplateJobsRequest generates a "aws/request.Request" representing the
2262// client's request for the ListNodeFromTemplateJobs operation. The "output" return
2263// value will be populated with the request's response once the request completes
2264// successfully.
2265//
2266// Use "Send" method on the returned Request to send the API call to the service.
2267// the "output" return value is not valid until after Send returns without error.
2268//
2269// See ListNodeFromTemplateJobs for more information on using the ListNodeFromTemplateJobs
2270// API call, and error handling.
2271//
2272// This method is useful when you want to inject custom logic or configuration
2273// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2274//
2275//
2276//    // Example sending a request using the ListNodeFromTemplateJobsRequest method.
2277//    req, resp := client.ListNodeFromTemplateJobsRequest(params)
2278//
2279//    err := req.Send()
2280//    if err == nil { // resp is now filled
2281//        fmt.Println(resp)
2282//    }
2283//
2284// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/ListNodeFromTemplateJobs
2285func (c *Panorama) ListNodeFromTemplateJobsRequest(input *ListNodeFromTemplateJobsInput) (req *request.Request, output *ListNodeFromTemplateJobsOutput) {
2286	op := &request.Operation{
2287		Name:       opListNodeFromTemplateJobs,
2288		HTTPMethod: "GET",
2289		HTTPPath:   "/packages/template-job",
2290		Paginator: &request.Paginator{
2291			InputTokens:     []string{"NextToken"},
2292			OutputTokens:    []string{"NextToken"},
2293			LimitToken:      "MaxResults",
2294			TruncationToken: "",
2295		},
2296	}
2297
2298	if input == nil {
2299		input = &ListNodeFromTemplateJobsInput{}
2300	}
2301
2302	output = &ListNodeFromTemplateJobsOutput{}
2303	req = c.newRequest(op, input, output)
2304	return
2305}
2306
2307// ListNodeFromTemplateJobs API operation for AWS Panorama.
2308//
2309// Returns a list of camera stream node jobs.
2310//
2311// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2312// with awserr.Error's Code and Message methods to get detailed information about
2313// the error.
2314//
2315// See the AWS API reference guide for AWS Panorama's
2316// API operation ListNodeFromTemplateJobs for usage and error information.
2317//
2318// Returned Error Types:
2319//   * ValidationException
2320//   The request contains an invalid parameter value.
2321//
2322//   * InternalServerException
2323//   An internal error occurred.
2324//
2325//   * AccessDeniedException
2326//   The requestor does not have permission to access the target action or resource.
2327//
2328//   * ConflictException
2329//   The target resource is in use.
2330//
2331// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/ListNodeFromTemplateJobs
2332func (c *Panorama) ListNodeFromTemplateJobs(input *ListNodeFromTemplateJobsInput) (*ListNodeFromTemplateJobsOutput, error) {
2333	req, out := c.ListNodeFromTemplateJobsRequest(input)
2334	return out, req.Send()
2335}
2336
2337// ListNodeFromTemplateJobsWithContext is the same as ListNodeFromTemplateJobs with the addition of
2338// the ability to pass a context and additional request options.
2339//
2340// See ListNodeFromTemplateJobs for details on how to use this API operation.
2341//
2342// The context must be non-nil and will be used for request cancellation. If
2343// the context is nil a panic will occur. In the future the SDK may create
2344// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2345// for more information on using Contexts.
2346func (c *Panorama) ListNodeFromTemplateJobsWithContext(ctx aws.Context, input *ListNodeFromTemplateJobsInput, opts ...request.Option) (*ListNodeFromTemplateJobsOutput, error) {
2347	req, out := c.ListNodeFromTemplateJobsRequest(input)
2348	req.SetContext(ctx)
2349	req.ApplyOptions(opts...)
2350	return out, req.Send()
2351}
2352
2353// ListNodeFromTemplateJobsPages iterates over the pages of a ListNodeFromTemplateJobs operation,
2354// calling the "fn" function with the response data for each page. To stop
2355// iterating, return false from the fn function.
2356//
2357// See ListNodeFromTemplateJobs method for more information on how to use this operation.
2358//
2359// Note: This operation can generate multiple requests to a service.
2360//
2361//    // Example iterating over at most 3 pages of a ListNodeFromTemplateJobs operation.
2362//    pageNum := 0
2363//    err := client.ListNodeFromTemplateJobsPages(params,
2364//        func(page *panorama.ListNodeFromTemplateJobsOutput, lastPage bool) bool {
2365//            pageNum++
2366//            fmt.Println(page)
2367//            return pageNum <= 3
2368//        })
2369//
2370func (c *Panorama) ListNodeFromTemplateJobsPages(input *ListNodeFromTemplateJobsInput, fn func(*ListNodeFromTemplateJobsOutput, bool) bool) error {
2371	return c.ListNodeFromTemplateJobsPagesWithContext(aws.BackgroundContext(), input, fn)
2372}
2373
2374// ListNodeFromTemplateJobsPagesWithContext same as ListNodeFromTemplateJobsPages except
2375// it takes a Context and allows setting request options on the pages.
2376//
2377// The context must be non-nil and will be used for request cancellation. If
2378// the context is nil a panic will occur. In the future the SDK may create
2379// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2380// for more information on using Contexts.
2381func (c *Panorama) ListNodeFromTemplateJobsPagesWithContext(ctx aws.Context, input *ListNodeFromTemplateJobsInput, fn func(*ListNodeFromTemplateJobsOutput, bool) bool, opts ...request.Option) error {
2382	p := request.Pagination{
2383		NewRequest: func() (*request.Request, error) {
2384			var inCpy *ListNodeFromTemplateJobsInput
2385			if input != nil {
2386				tmp := *input
2387				inCpy = &tmp
2388			}
2389			req, _ := c.ListNodeFromTemplateJobsRequest(inCpy)
2390			req.SetContext(ctx)
2391			req.ApplyOptions(opts...)
2392			return req, nil
2393		},
2394	}
2395
2396	for p.Next() {
2397		if !fn(p.Page().(*ListNodeFromTemplateJobsOutput), !p.HasNextPage()) {
2398			break
2399		}
2400	}
2401
2402	return p.Err()
2403}
2404
2405const opListNodes = "ListNodes"
2406
2407// ListNodesRequest generates a "aws/request.Request" representing the
2408// client's request for the ListNodes operation. The "output" return
2409// value will be populated with the request's response once the request completes
2410// successfully.
2411//
2412// Use "Send" method on the returned Request to send the API call to the service.
2413// the "output" return value is not valid until after Send returns without error.
2414//
2415// See ListNodes for more information on using the ListNodes
2416// API call, and error handling.
2417//
2418// This method is useful when you want to inject custom logic or configuration
2419// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2420//
2421//
2422//    // Example sending a request using the ListNodesRequest method.
2423//    req, resp := client.ListNodesRequest(params)
2424//
2425//    err := req.Send()
2426//    if err == nil { // resp is now filled
2427//        fmt.Println(resp)
2428//    }
2429//
2430// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/ListNodes
2431func (c *Panorama) ListNodesRequest(input *ListNodesInput) (req *request.Request, output *ListNodesOutput) {
2432	op := &request.Operation{
2433		Name:       opListNodes,
2434		HTTPMethod: "GET",
2435		HTTPPath:   "/nodes",
2436		Paginator: &request.Paginator{
2437			InputTokens:     []string{"NextToken"},
2438			OutputTokens:    []string{"NextToken"},
2439			LimitToken:      "MaxResults",
2440			TruncationToken: "",
2441		},
2442	}
2443
2444	if input == nil {
2445		input = &ListNodesInput{}
2446	}
2447
2448	output = &ListNodesOutput{}
2449	req = c.newRequest(op, input, output)
2450	return
2451}
2452
2453// ListNodes API operation for AWS Panorama.
2454//
2455// Returns a list of nodes.
2456//
2457// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2458// with awserr.Error's Code and Message methods to get detailed information about
2459// the error.
2460//
2461// See the AWS API reference guide for AWS Panorama's
2462// API operation ListNodes for usage and error information.
2463//
2464// Returned Error Types:
2465//   * ConflictException
2466//   The target resource is in use.
2467//
2468//   * ValidationException
2469//   The request contains an invalid parameter value.
2470//
2471//   * InternalServerException
2472//   An internal error occurred.
2473//
2474// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/ListNodes
2475func (c *Panorama) ListNodes(input *ListNodesInput) (*ListNodesOutput, error) {
2476	req, out := c.ListNodesRequest(input)
2477	return out, req.Send()
2478}
2479
2480// ListNodesWithContext is the same as ListNodes with the addition of
2481// the ability to pass a context and additional request options.
2482//
2483// See ListNodes for details on how to use this API operation.
2484//
2485// The context must be non-nil and will be used for request cancellation. If
2486// the context is nil a panic will occur. In the future the SDK may create
2487// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2488// for more information on using Contexts.
2489func (c *Panorama) ListNodesWithContext(ctx aws.Context, input *ListNodesInput, opts ...request.Option) (*ListNodesOutput, error) {
2490	req, out := c.ListNodesRequest(input)
2491	req.SetContext(ctx)
2492	req.ApplyOptions(opts...)
2493	return out, req.Send()
2494}
2495
2496// ListNodesPages iterates over the pages of a ListNodes operation,
2497// calling the "fn" function with the response data for each page. To stop
2498// iterating, return false from the fn function.
2499//
2500// See ListNodes method for more information on how to use this operation.
2501//
2502// Note: This operation can generate multiple requests to a service.
2503//
2504//    // Example iterating over at most 3 pages of a ListNodes operation.
2505//    pageNum := 0
2506//    err := client.ListNodesPages(params,
2507//        func(page *panorama.ListNodesOutput, lastPage bool) bool {
2508//            pageNum++
2509//            fmt.Println(page)
2510//            return pageNum <= 3
2511//        })
2512//
2513func (c *Panorama) ListNodesPages(input *ListNodesInput, fn func(*ListNodesOutput, bool) bool) error {
2514	return c.ListNodesPagesWithContext(aws.BackgroundContext(), input, fn)
2515}
2516
2517// ListNodesPagesWithContext same as ListNodesPages except
2518// it takes a Context and allows setting request options on the pages.
2519//
2520// The context must be non-nil and will be used for request cancellation. If
2521// the context is nil a panic will occur. In the future the SDK may create
2522// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2523// for more information on using Contexts.
2524func (c *Panorama) ListNodesPagesWithContext(ctx aws.Context, input *ListNodesInput, fn func(*ListNodesOutput, bool) bool, opts ...request.Option) error {
2525	p := request.Pagination{
2526		NewRequest: func() (*request.Request, error) {
2527			var inCpy *ListNodesInput
2528			if input != nil {
2529				tmp := *input
2530				inCpy = &tmp
2531			}
2532			req, _ := c.ListNodesRequest(inCpy)
2533			req.SetContext(ctx)
2534			req.ApplyOptions(opts...)
2535			return req, nil
2536		},
2537	}
2538
2539	for p.Next() {
2540		if !fn(p.Page().(*ListNodesOutput), !p.HasNextPage()) {
2541			break
2542		}
2543	}
2544
2545	return p.Err()
2546}
2547
2548const opListPackageImportJobs = "ListPackageImportJobs"
2549
2550// ListPackageImportJobsRequest generates a "aws/request.Request" representing the
2551// client's request for the ListPackageImportJobs operation. The "output" return
2552// value will be populated with the request's response once the request completes
2553// successfully.
2554//
2555// Use "Send" method on the returned Request to send the API call to the service.
2556// the "output" return value is not valid until after Send returns without error.
2557//
2558// See ListPackageImportJobs for more information on using the ListPackageImportJobs
2559// API call, and error handling.
2560//
2561// This method is useful when you want to inject custom logic or configuration
2562// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2563//
2564//
2565//    // Example sending a request using the ListPackageImportJobsRequest method.
2566//    req, resp := client.ListPackageImportJobsRequest(params)
2567//
2568//    err := req.Send()
2569//    if err == nil { // resp is now filled
2570//        fmt.Println(resp)
2571//    }
2572//
2573// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/ListPackageImportJobs
2574func (c *Panorama) ListPackageImportJobsRequest(input *ListPackageImportJobsInput) (req *request.Request, output *ListPackageImportJobsOutput) {
2575	op := &request.Operation{
2576		Name:       opListPackageImportJobs,
2577		HTTPMethod: "GET",
2578		HTTPPath:   "/packages/import-jobs",
2579		Paginator: &request.Paginator{
2580			InputTokens:     []string{"NextToken"},
2581			OutputTokens:    []string{"NextToken"},
2582			LimitToken:      "MaxResults",
2583			TruncationToken: "",
2584		},
2585	}
2586
2587	if input == nil {
2588		input = &ListPackageImportJobsInput{}
2589	}
2590
2591	output = &ListPackageImportJobsOutput{}
2592	req = c.newRequest(op, input, output)
2593	return
2594}
2595
2596// ListPackageImportJobs API operation for AWS Panorama.
2597//
2598// Returns a list of package import jobs.
2599//
2600// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2601// with awserr.Error's Code and Message methods to get detailed information about
2602// the error.
2603//
2604// See the AWS API reference guide for AWS Panorama's
2605// API operation ListPackageImportJobs for usage and error information.
2606//
2607// Returned Error Types:
2608//   * ValidationException
2609//   The request contains an invalid parameter value.
2610//
2611//   * InternalServerException
2612//   An internal error occurred.
2613//
2614//   * AccessDeniedException
2615//   The requestor does not have permission to access the target action or resource.
2616//
2617//   * ConflictException
2618//   The target resource is in use.
2619//
2620// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/ListPackageImportJobs
2621func (c *Panorama) ListPackageImportJobs(input *ListPackageImportJobsInput) (*ListPackageImportJobsOutput, error) {
2622	req, out := c.ListPackageImportJobsRequest(input)
2623	return out, req.Send()
2624}
2625
2626// ListPackageImportJobsWithContext is the same as ListPackageImportJobs with the addition of
2627// the ability to pass a context and additional request options.
2628//
2629// See ListPackageImportJobs for details on how to use this API operation.
2630//
2631// The context must be non-nil and will be used for request cancellation. If
2632// the context is nil a panic will occur. In the future the SDK may create
2633// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2634// for more information on using Contexts.
2635func (c *Panorama) ListPackageImportJobsWithContext(ctx aws.Context, input *ListPackageImportJobsInput, opts ...request.Option) (*ListPackageImportJobsOutput, error) {
2636	req, out := c.ListPackageImportJobsRequest(input)
2637	req.SetContext(ctx)
2638	req.ApplyOptions(opts...)
2639	return out, req.Send()
2640}
2641
2642// ListPackageImportJobsPages iterates over the pages of a ListPackageImportJobs operation,
2643// calling the "fn" function with the response data for each page. To stop
2644// iterating, return false from the fn function.
2645//
2646// See ListPackageImportJobs method for more information on how to use this operation.
2647//
2648// Note: This operation can generate multiple requests to a service.
2649//
2650//    // Example iterating over at most 3 pages of a ListPackageImportJobs operation.
2651//    pageNum := 0
2652//    err := client.ListPackageImportJobsPages(params,
2653//        func(page *panorama.ListPackageImportJobsOutput, lastPage bool) bool {
2654//            pageNum++
2655//            fmt.Println(page)
2656//            return pageNum <= 3
2657//        })
2658//
2659func (c *Panorama) ListPackageImportJobsPages(input *ListPackageImportJobsInput, fn func(*ListPackageImportJobsOutput, bool) bool) error {
2660	return c.ListPackageImportJobsPagesWithContext(aws.BackgroundContext(), input, fn)
2661}
2662
2663// ListPackageImportJobsPagesWithContext same as ListPackageImportJobsPages except
2664// it takes a Context and allows setting request options on the pages.
2665//
2666// The context must be non-nil and will be used for request cancellation. If
2667// the context is nil a panic will occur. In the future the SDK may create
2668// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2669// for more information on using Contexts.
2670func (c *Panorama) ListPackageImportJobsPagesWithContext(ctx aws.Context, input *ListPackageImportJobsInput, fn func(*ListPackageImportJobsOutput, bool) bool, opts ...request.Option) error {
2671	p := request.Pagination{
2672		NewRequest: func() (*request.Request, error) {
2673			var inCpy *ListPackageImportJobsInput
2674			if input != nil {
2675				tmp := *input
2676				inCpy = &tmp
2677			}
2678			req, _ := c.ListPackageImportJobsRequest(inCpy)
2679			req.SetContext(ctx)
2680			req.ApplyOptions(opts...)
2681			return req, nil
2682		},
2683	}
2684
2685	for p.Next() {
2686		if !fn(p.Page().(*ListPackageImportJobsOutput), !p.HasNextPage()) {
2687			break
2688		}
2689	}
2690
2691	return p.Err()
2692}
2693
2694const opListPackages = "ListPackages"
2695
2696// ListPackagesRequest generates a "aws/request.Request" representing the
2697// client's request for the ListPackages operation. The "output" return
2698// value will be populated with the request's response once the request completes
2699// successfully.
2700//
2701// Use "Send" method on the returned Request to send the API call to the service.
2702// the "output" return value is not valid until after Send returns without error.
2703//
2704// See ListPackages for more information on using the ListPackages
2705// API call, and error handling.
2706//
2707// This method is useful when you want to inject custom logic or configuration
2708// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2709//
2710//
2711//    // Example sending a request using the ListPackagesRequest method.
2712//    req, resp := client.ListPackagesRequest(params)
2713//
2714//    err := req.Send()
2715//    if err == nil { // resp is now filled
2716//        fmt.Println(resp)
2717//    }
2718//
2719// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/ListPackages
2720func (c *Panorama) ListPackagesRequest(input *ListPackagesInput) (req *request.Request, output *ListPackagesOutput) {
2721	op := &request.Operation{
2722		Name:       opListPackages,
2723		HTTPMethod: "GET",
2724		HTTPPath:   "/packages",
2725		Paginator: &request.Paginator{
2726			InputTokens:     []string{"NextToken"},
2727			OutputTokens:    []string{"NextToken"},
2728			LimitToken:      "MaxResults",
2729			TruncationToken: "",
2730		},
2731	}
2732
2733	if input == nil {
2734		input = &ListPackagesInput{}
2735	}
2736
2737	output = &ListPackagesOutput{}
2738	req = c.newRequest(op, input, output)
2739	return
2740}
2741
2742// ListPackages API operation for AWS Panorama.
2743//
2744// Returns a list of packages.
2745//
2746// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2747// with awserr.Error's Code and Message methods to get detailed information about
2748// the error.
2749//
2750// See the AWS API reference guide for AWS Panorama's
2751// API operation ListPackages for usage and error information.
2752//
2753// Returned Error Types:
2754//   * ValidationException
2755//   The request contains an invalid parameter value.
2756//
2757//   * InternalServerException
2758//   An internal error occurred.
2759//
2760//   * AccessDeniedException
2761//   The requestor does not have permission to access the target action or resource.
2762//
2763//   * ConflictException
2764//   The target resource is in use.
2765//
2766//   * ResourceNotFoundException
2767//   The target resource was not found.
2768//
2769// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/ListPackages
2770func (c *Panorama) ListPackages(input *ListPackagesInput) (*ListPackagesOutput, error) {
2771	req, out := c.ListPackagesRequest(input)
2772	return out, req.Send()
2773}
2774
2775// ListPackagesWithContext is the same as ListPackages with the addition of
2776// the ability to pass a context and additional request options.
2777//
2778// See ListPackages for details on how to use this API operation.
2779//
2780// The context must be non-nil and will be used for request cancellation. If
2781// the context is nil a panic will occur. In the future the SDK may create
2782// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2783// for more information on using Contexts.
2784func (c *Panorama) ListPackagesWithContext(ctx aws.Context, input *ListPackagesInput, opts ...request.Option) (*ListPackagesOutput, error) {
2785	req, out := c.ListPackagesRequest(input)
2786	req.SetContext(ctx)
2787	req.ApplyOptions(opts...)
2788	return out, req.Send()
2789}
2790
2791// ListPackagesPages iterates over the pages of a ListPackages operation,
2792// calling the "fn" function with the response data for each page. To stop
2793// iterating, return false from the fn function.
2794//
2795// See ListPackages method for more information on how to use this operation.
2796//
2797// Note: This operation can generate multiple requests to a service.
2798//
2799//    // Example iterating over at most 3 pages of a ListPackages operation.
2800//    pageNum := 0
2801//    err := client.ListPackagesPages(params,
2802//        func(page *panorama.ListPackagesOutput, lastPage bool) bool {
2803//            pageNum++
2804//            fmt.Println(page)
2805//            return pageNum <= 3
2806//        })
2807//
2808func (c *Panorama) ListPackagesPages(input *ListPackagesInput, fn func(*ListPackagesOutput, bool) bool) error {
2809	return c.ListPackagesPagesWithContext(aws.BackgroundContext(), input, fn)
2810}
2811
2812// ListPackagesPagesWithContext same as ListPackagesPages except
2813// it takes a Context and allows setting request options on the pages.
2814//
2815// The context must be non-nil and will be used for request cancellation. If
2816// the context is nil a panic will occur. In the future the SDK may create
2817// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2818// for more information on using Contexts.
2819func (c *Panorama) ListPackagesPagesWithContext(ctx aws.Context, input *ListPackagesInput, fn func(*ListPackagesOutput, bool) bool, opts ...request.Option) error {
2820	p := request.Pagination{
2821		NewRequest: func() (*request.Request, error) {
2822			var inCpy *ListPackagesInput
2823			if input != nil {
2824				tmp := *input
2825				inCpy = &tmp
2826			}
2827			req, _ := c.ListPackagesRequest(inCpy)
2828			req.SetContext(ctx)
2829			req.ApplyOptions(opts...)
2830			return req, nil
2831		},
2832	}
2833
2834	for p.Next() {
2835		if !fn(p.Page().(*ListPackagesOutput), !p.HasNextPage()) {
2836			break
2837		}
2838	}
2839
2840	return p.Err()
2841}
2842
2843const opListTagsForResource = "ListTagsForResource"
2844
2845// ListTagsForResourceRequest generates a "aws/request.Request" representing the
2846// client's request for the ListTagsForResource operation. The "output" return
2847// value will be populated with the request's response once the request completes
2848// successfully.
2849//
2850// Use "Send" method on the returned Request to send the API call to the service.
2851// the "output" return value is not valid until after Send returns without error.
2852//
2853// See ListTagsForResource for more information on using the ListTagsForResource
2854// API call, and error handling.
2855//
2856// This method is useful when you want to inject custom logic or configuration
2857// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2858//
2859//
2860//    // Example sending a request using the ListTagsForResourceRequest method.
2861//    req, resp := client.ListTagsForResourceRequest(params)
2862//
2863//    err := req.Send()
2864//    if err == nil { // resp is now filled
2865//        fmt.Println(resp)
2866//    }
2867//
2868// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/ListTagsForResource
2869func (c *Panorama) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
2870	op := &request.Operation{
2871		Name:       opListTagsForResource,
2872		HTTPMethod: "GET",
2873		HTTPPath:   "/tags/{ResourceArn}",
2874	}
2875
2876	if input == nil {
2877		input = &ListTagsForResourceInput{}
2878	}
2879
2880	output = &ListTagsForResourceOutput{}
2881	req = c.newRequest(op, input, output)
2882	return
2883}
2884
2885// ListTagsForResource API operation for AWS Panorama.
2886//
2887// Returns a list of tags for a resource.
2888//
2889// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2890// with awserr.Error's Code and Message methods to get detailed information about
2891// the error.
2892//
2893// See the AWS API reference guide for AWS Panorama's
2894// API operation ListTagsForResource for usage and error information.
2895//
2896// Returned Error Types:
2897//   * ResourceNotFoundException
2898//   The target resource was not found.
2899//
2900//   * ValidationException
2901//   The request contains an invalid parameter value.
2902//
2903//   * InternalServerException
2904//   An internal error occurred.
2905//
2906// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/ListTagsForResource
2907func (c *Panorama) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
2908	req, out := c.ListTagsForResourceRequest(input)
2909	return out, req.Send()
2910}
2911
2912// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
2913// the ability to pass a context and additional request options.
2914//
2915// See ListTagsForResource for details on how to use this API operation.
2916//
2917// The context must be non-nil and will be used for request cancellation. If
2918// the context is nil a panic will occur. In the future the SDK may create
2919// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2920// for more information on using Contexts.
2921func (c *Panorama) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
2922	req, out := c.ListTagsForResourceRequest(input)
2923	req.SetContext(ctx)
2924	req.ApplyOptions(opts...)
2925	return out, req.Send()
2926}
2927
2928const opProvisionDevice = "ProvisionDevice"
2929
2930// ProvisionDeviceRequest generates a "aws/request.Request" representing the
2931// client's request for the ProvisionDevice operation. The "output" return
2932// value will be populated with the request's response once the request completes
2933// successfully.
2934//
2935// Use "Send" method on the returned Request to send the API call to the service.
2936// the "output" return value is not valid until after Send returns without error.
2937//
2938// See ProvisionDevice for more information on using the ProvisionDevice
2939// API call, and error handling.
2940//
2941// This method is useful when you want to inject custom logic or configuration
2942// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2943//
2944//
2945//    // Example sending a request using the ProvisionDeviceRequest method.
2946//    req, resp := client.ProvisionDeviceRequest(params)
2947//
2948//    err := req.Send()
2949//    if err == nil { // resp is now filled
2950//        fmt.Println(resp)
2951//    }
2952//
2953// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/ProvisionDevice
2954func (c *Panorama) ProvisionDeviceRequest(input *ProvisionDeviceInput) (req *request.Request, output *ProvisionDeviceOutput) {
2955	op := &request.Operation{
2956		Name:       opProvisionDevice,
2957		HTTPMethod: "POST",
2958		HTTPPath:   "/devices",
2959	}
2960
2961	if input == nil {
2962		input = &ProvisionDeviceInput{}
2963	}
2964
2965	output = &ProvisionDeviceOutput{}
2966	req = c.newRequest(op, input, output)
2967	return
2968}
2969
2970// ProvisionDevice API operation for AWS Panorama.
2971//
2972// Creates a device and returns a configuration archive. The configuration archive
2973// is a ZIP file that contains a provisioning certificate that is valid for
2974// 5 minutes. Transfer the configuration archive to the device with the included
2975// USB storage device within 5 minutes.
2976//
2977// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2978// with awserr.Error's Code and Message methods to get detailed information about
2979// the error.
2980//
2981// See the AWS API reference guide for AWS Panorama's
2982// API operation ProvisionDevice for usage and error information.
2983//
2984// Returned Error Types:
2985//   * ConflictException
2986//   The target resource is in use.
2987//
2988//   * ValidationException
2989//   The request contains an invalid parameter value.
2990//
2991//   * InternalServerException
2992//   An internal error occurred.
2993//
2994//   * AccessDeniedException
2995//   The requestor does not have permission to access the target action or resource.
2996//
2997//   * ServiceQuotaExceededException
2998//   The request would cause a limit to be exceeded.
2999//
3000// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/ProvisionDevice
3001func (c *Panorama) ProvisionDevice(input *ProvisionDeviceInput) (*ProvisionDeviceOutput, error) {
3002	req, out := c.ProvisionDeviceRequest(input)
3003	return out, req.Send()
3004}
3005
3006// ProvisionDeviceWithContext is the same as ProvisionDevice with the addition of
3007// the ability to pass a context and additional request options.
3008//
3009// See ProvisionDevice for details on how to use this API operation.
3010//
3011// The context must be non-nil and will be used for request cancellation. If
3012// the context is nil a panic will occur. In the future the SDK may create
3013// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3014// for more information on using Contexts.
3015func (c *Panorama) ProvisionDeviceWithContext(ctx aws.Context, input *ProvisionDeviceInput, opts ...request.Option) (*ProvisionDeviceOutput, error) {
3016	req, out := c.ProvisionDeviceRequest(input)
3017	req.SetContext(ctx)
3018	req.ApplyOptions(opts...)
3019	return out, req.Send()
3020}
3021
3022const opRegisterPackageVersion = "RegisterPackageVersion"
3023
3024// RegisterPackageVersionRequest generates a "aws/request.Request" representing the
3025// client's request for the RegisterPackageVersion operation. The "output" return
3026// value will be populated with the request's response once the request completes
3027// successfully.
3028//
3029// Use "Send" method on the returned Request to send the API call to the service.
3030// the "output" return value is not valid until after Send returns without error.
3031//
3032// See RegisterPackageVersion for more information on using the RegisterPackageVersion
3033// API call, and error handling.
3034//
3035// This method is useful when you want to inject custom logic or configuration
3036// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3037//
3038//
3039//    // Example sending a request using the RegisterPackageVersionRequest method.
3040//    req, resp := client.RegisterPackageVersionRequest(params)
3041//
3042//    err := req.Send()
3043//    if err == nil { // resp is now filled
3044//        fmt.Println(resp)
3045//    }
3046//
3047// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/RegisterPackageVersion
3048func (c *Panorama) RegisterPackageVersionRequest(input *RegisterPackageVersionInput) (req *request.Request, output *RegisterPackageVersionOutput) {
3049	op := &request.Operation{
3050		Name:       opRegisterPackageVersion,
3051		HTTPMethod: "PUT",
3052		HTTPPath:   "/packages/{PackageId}/versions/{PackageVersion}/patch/{PatchVersion}",
3053	}
3054
3055	if input == nil {
3056		input = &RegisterPackageVersionInput{}
3057	}
3058
3059	output = &RegisterPackageVersionOutput{}
3060	req = c.newRequest(op, input, output)
3061	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3062	return
3063}
3064
3065// RegisterPackageVersion API operation for AWS Panorama.
3066//
3067// Registers a package version.
3068//
3069// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3070// with awserr.Error's Code and Message methods to get detailed information about
3071// the error.
3072//
3073// See the AWS API reference guide for AWS Panorama's
3074// API operation RegisterPackageVersion for usage and error information.
3075//
3076// Returned Error Types:
3077//   * ValidationException
3078//   The request contains an invalid parameter value.
3079//
3080//   * InternalServerException
3081//   An internal error occurred.
3082//
3083//   * AccessDeniedException
3084//   The requestor does not have permission to access the target action or resource.
3085//
3086//   * ConflictException
3087//   The target resource is in use.
3088//
3089// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/RegisterPackageVersion
3090func (c *Panorama) RegisterPackageVersion(input *RegisterPackageVersionInput) (*RegisterPackageVersionOutput, error) {
3091	req, out := c.RegisterPackageVersionRequest(input)
3092	return out, req.Send()
3093}
3094
3095// RegisterPackageVersionWithContext is the same as RegisterPackageVersion with the addition of
3096// the ability to pass a context and additional request options.
3097//
3098// See RegisterPackageVersion for details on how to use this API operation.
3099//
3100// The context must be non-nil and will be used for request cancellation. If
3101// the context is nil a panic will occur. In the future the SDK may create
3102// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3103// for more information on using Contexts.
3104func (c *Panorama) RegisterPackageVersionWithContext(ctx aws.Context, input *RegisterPackageVersionInput, opts ...request.Option) (*RegisterPackageVersionOutput, error) {
3105	req, out := c.RegisterPackageVersionRequest(input)
3106	req.SetContext(ctx)
3107	req.ApplyOptions(opts...)
3108	return out, req.Send()
3109}
3110
3111const opRemoveApplicationInstance = "RemoveApplicationInstance"
3112
3113// RemoveApplicationInstanceRequest generates a "aws/request.Request" representing the
3114// client's request for the RemoveApplicationInstance operation. The "output" return
3115// value will be populated with the request's response once the request completes
3116// successfully.
3117//
3118// Use "Send" method on the returned Request to send the API call to the service.
3119// the "output" return value is not valid until after Send returns without error.
3120//
3121// See RemoveApplicationInstance for more information on using the RemoveApplicationInstance
3122// API call, and error handling.
3123//
3124// This method is useful when you want to inject custom logic or configuration
3125// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3126//
3127//
3128//    // Example sending a request using the RemoveApplicationInstanceRequest method.
3129//    req, resp := client.RemoveApplicationInstanceRequest(params)
3130//
3131//    err := req.Send()
3132//    if err == nil { // resp is now filled
3133//        fmt.Println(resp)
3134//    }
3135//
3136// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/RemoveApplicationInstance
3137func (c *Panorama) RemoveApplicationInstanceRequest(input *RemoveApplicationInstanceInput) (req *request.Request, output *RemoveApplicationInstanceOutput) {
3138	op := &request.Operation{
3139		Name:       opRemoveApplicationInstance,
3140		HTTPMethod: "DELETE",
3141		HTTPPath:   "/application-instances/{applicationInstanceId}",
3142	}
3143
3144	if input == nil {
3145		input = &RemoveApplicationInstanceInput{}
3146	}
3147
3148	output = &RemoveApplicationInstanceOutput{}
3149	req = c.newRequest(op, input, output)
3150	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3151	return
3152}
3153
3154// RemoveApplicationInstance API operation for AWS Panorama.
3155//
3156// Removes an application instance.
3157//
3158// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3159// with awserr.Error's Code and Message methods to get detailed information about
3160// the error.
3161//
3162// See the AWS API reference guide for AWS Panorama's
3163// API operation RemoveApplicationInstance for usage and error information.
3164//
3165// Returned Error Types:
3166//   * ConflictException
3167//   The target resource is in use.
3168//
3169//   * ValidationException
3170//   The request contains an invalid parameter value.
3171//
3172//   * InternalServerException
3173//   An internal error occurred.
3174//
3175//   * AccessDeniedException
3176//   The requestor does not have permission to access the target action or resource.
3177//
3178//   * ResourceNotFoundException
3179//   The target resource was not found.
3180//
3181// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/RemoveApplicationInstance
3182func (c *Panorama) RemoveApplicationInstance(input *RemoveApplicationInstanceInput) (*RemoveApplicationInstanceOutput, error) {
3183	req, out := c.RemoveApplicationInstanceRequest(input)
3184	return out, req.Send()
3185}
3186
3187// RemoveApplicationInstanceWithContext is the same as RemoveApplicationInstance with the addition of
3188// the ability to pass a context and additional request options.
3189//
3190// See RemoveApplicationInstance for details on how to use this API operation.
3191//
3192// The context must be non-nil and will be used for request cancellation. If
3193// the context is nil a panic will occur. In the future the SDK may create
3194// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3195// for more information on using Contexts.
3196func (c *Panorama) RemoveApplicationInstanceWithContext(ctx aws.Context, input *RemoveApplicationInstanceInput, opts ...request.Option) (*RemoveApplicationInstanceOutput, error) {
3197	req, out := c.RemoveApplicationInstanceRequest(input)
3198	req.SetContext(ctx)
3199	req.ApplyOptions(opts...)
3200	return out, req.Send()
3201}
3202
3203const opTagResource = "TagResource"
3204
3205// TagResourceRequest generates a "aws/request.Request" representing the
3206// client's request for the TagResource operation. The "output" return
3207// value will be populated with the request's response once the request completes
3208// successfully.
3209//
3210// Use "Send" method on the returned Request to send the API call to the service.
3211// the "output" return value is not valid until after Send returns without error.
3212//
3213// See TagResource for more information on using the TagResource
3214// API call, and error handling.
3215//
3216// This method is useful when you want to inject custom logic or configuration
3217// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3218//
3219//
3220//    // Example sending a request using the TagResourceRequest method.
3221//    req, resp := client.TagResourceRequest(params)
3222//
3223//    err := req.Send()
3224//    if err == nil { // resp is now filled
3225//        fmt.Println(resp)
3226//    }
3227//
3228// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/TagResource
3229func (c *Panorama) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
3230	op := &request.Operation{
3231		Name:       opTagResource,
3232		HTTPMethod: "POST",
3233		HTTPPath:   "/tags/{ResourceArn}",
3234	}
3235
3236	if input == nil {
3237		input = &TagResourceInput{}
3238	}
3239
3240	output = &TagResourceOutput{}
3241	req = c.newRequest(op, input, output)
3242	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3243	return
3244}
3245
3246// TagResource API operation for AWS Panorama.
3247//
3248// Tags a resource.
3249//
3250// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3251// with awserr.Error's Code and Message methods to get detailed information about
3252// the error.
3253//
3254// See the AWS API reference guide for AWS Panorama's
3255// API operation TagResource for usage and error information.
3256//
3257// Returned Error Types:
3258//   * ResourceNotFoundException
3259//   The target resource was not found.
3260//
3261//   * ValidationException
3262//   The request contains an invalid parameter value.
3263//
3264//   * InternalServerException
3265//   An internal error occurred.
3266//
3267// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/TagResource
3268func (c *Panorama) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
3269	req, out := c.TagResourceRequest(input)
3270	return out, req.Send()
3271}
3272
3273// TagResourceWithContext is the same as TagResource with the addition of
3274// the ability to pass a context and additional request options.
3275//
3276// See TagResource for details on how to use this API operation.
3277//
3278// The context must be non-nil and will be used for request cancellation. If
3279// the context is nil a panic will occur. In the future the SDK may create
3280// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3281// for more information on using Contexts.
3282func (c *Panorama) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
3283	req, out := c.TagResourceRequest(input)
3284	req.SetContext(ctx)
3285	req.ApplyOptions(opts...)
3286	return out, req.Send()
3287}
3288
3289const opUntagResource = "UntagResource"
3290
3291// UntagResourceRequest generates a "aws/request.Request" representing the
3292// client's request for the UntagResource operation. The "output" return
3293// value will be populated with the request's response once the request completes
3294// successfully.
3295//
3296// Use "Send" method on the returned Request to send the API call to the service.
3297// the "output" return value is not valid until after Send returns without error.
3298//
3299// See UntagResource for more information on using the UntagResource
3300// API call, and error handling.
3301//
3302// This method is useful when you want to inject custom logic or configuration
3303// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3304//
3305//
3306//    // Example sending a request using the UntagResourceRequest method.
3307//    req, resp := client.UntagResourceRequest(params)
3308//
3309//    err := req.Send()
3310//    if err == nil { // resp is now filled
3311//        fmt.Println(resp)
3312//    }
3313//
3314// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/UntagResource
3315func (c *Panorama) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
3316	op := &request.Operation{
3317		Name:       opUntagResource,
3318		HTTPMethod: "DELETE",
3319		HTTPPath:   "/tags/{ResourceArn}",
3320	}
3321
3322	if input == nil {
3323		input = &UntagResourceInput{}
3324	}
3325
3326	output = &UntagResourceOutput{}
3327	req = c.newRequest(op, input, output)
3328	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3329	return
3330}
3331
3332// UntagResource API operation for AWS Panorama.
3333//
3334// Removes tags from a resource.
3335//
3336// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3337// with awserr.Error's Code and Message methods to get detailed information about
3338// the error.
3339//
3340// See the AWS API reference guide for AWS Panorama's
3341// API operation UntagResource for usage and error information.
3342//
3343// Returned Error Types:
3344//   * ResourceNotFoundException
3345//   The target resource was not found.
3346//
3347//   * ValidationException
3348//   The request contains an invalid parameter value.
3349//
3350//   * InternalServerException
3351//   An internal error occurred.
3352//
3353// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/UntagResource
3354func (c *Panorama) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
3355	req, out := c.UntagResourceRequest(input)
3356	return out, req.Send()
3357}
3358
3359// UntagResourceWithContext is the same as UntagResource with the addition of
3360// the ability to pass a context and additional request options.
3361//
3362// See UntagResource for details on how to use this API operation.
3363//
3364// The context must be non-nil and will be used for request cancellation. If
3365// the context is nil a panic will occur. In the future the SDK may create
3366// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3367// for more information on using Contexts.
3368func (c *Panorama) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
3369	req, out := c.UntagResourceRequest(input)
3370	req.SetContext(ctx)
3371	req.ApplyOptions(opts...)
3372	return out, req.Send()
3373}
3374
3375const opUpdateDeviceMetadata = "UpdateDeviceMetadata"
3376
3377// UpdateDeviceMetadataRequest generates a "aws/request.Request" representing the
3378// client's request for the UpdateDeviceMetadata operation. The "output" return
3379// value will be populated with the request's response once the request completes
3380// successfully.
3381//
3382// Use "Send" method on the returned Request to send the API call to the service.
3383// the "output" return value is not valid until after Send returns without error.
3384//
3385// See UpdateDeviceMetadata for more information on using the UpdateDeviceMetadata
3386// API call, and error handling.
3387//
3388// This method is useful when you want to inject custom logic or configuration
3389// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3390//
3391//
3392//    // Example sending a request using the UpdateDeviceMetadataRequest method.
3393//    req, resp := client.UpdateDeviceMetadataRequest(params)
3394//
3395//    err := req.Send()
3396//    if err == nil { // resp is now filled
3397//        fmt.Println(resp)
3398//    }
3399//
3400// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/UpdateDeviceMetadata
3401func (c *Panorama) UpdateDeviceMetadataRequest(input *UpdateDeviceMetadataInput) (req *request.Request, output *UpdateDeviceMetadataOutput) {
3402	op := &request.Operation{
3403		Name:       opUpdateDeviceMetadata,
3404		HTTPMethod: "PUT",
3405		HTTPPath:   "/devices/{DeviceId}",
3406	}
3407
3408	if input == nil {
3409		input = &UpdateDeviceMetadataInput{}
3410	}
3411
3412	output = &UpdateDeviceMetadataOutput{}
3413	req = c.newRequest(op, input, output)
3414	return
3415}
3416
3417// UpdateDeviceMetadata API operation for AWS Panorama.
3418//
3419// Updates a device's metadata.
3420//
3421// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3422// with awserr.Error's Code and Message methods to get detailed information about
3423// the error.
3424//
3425// See the AWS API reference guide for AWS Panorama's
3426// API operation UpdateDeviceMetadata for usage and error information.
3427//
3428// Returned Error Types:
3429//   * ConflictException
3430//   The target resource is in use.
3431//
3432//   * ValidationException
3433//   The request contains an invalid parameter value.
3434//
3435//   * InternalServerException
3436//   An internal error occurred.
3437//
3438//   * AccessDeniedException
3439//   The requestor does not have permission to access the target action or resource.
3440//
3441//   * ResourceNotFoundException
3442//   The target resource was not found.
3443//
3444// See also, https://docs.aws.amazon.com/goto/WebAPI/panorama-2019-07-24/UpdateDeviceMetadata
3445func (c *Panorama) UpdateDeviceMetadata(input *UpdateDeviceMetadataInput) (*UpdateDeviceMetadataOutput, error) {
3446	req, out := c.UpdateDeviceMetadataRequest(input)
3447	return out, req.Send()
3448}
3449
3450// UpdateDeviceMetadataWithContext is the same as UpdateDeviceMetadata with the addition of
3451// the ability to pass a context and additional request options.
3452//
3453// See UpdateDeviceMetadata for details on how to use this API operation.
3454//
3455// The context must be non-nil and will be used for request cancellation. If
3456// the context is nil a panic will occur. In the future the SDK may create
3457// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3458// for more information on using Contexts.
3459func (c *Panorama) UpdateDeviceMetadataWithContext(ctx aws.Context, input *UpdateDeviceMetadataInput, opts ...request.Option) (*UpdateDeviceMetadataOutput, error) {
3460	req, out := c.UpdateDeviceMetadataRequest(input)
3461	req.SetContext(ctx)
3462	req.ApplyOptions(opts...)
3463	return out, req.Send()
3464}
3465
3466// The requestor does not have permission to access the target action or resource.
3467type AccessDeniedException struct {
3468	_            struct{}                  `type:"structure"`
3469	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
3470
3471	Message_ *string `locationName:"Message" type:"string"`
3472}
3473
3474// String returns the string representation.
3475//
3476// API parameter values that are decorated as "sensitive" in the API will not
3477// be included in the string output. The member name will be present, but the
3478// value will be replaced with "sensitive".
3479func (s AccessDeniedException) String() string {
3480	return awsutil.Prettify(s)
3481}
3482
3483// GoString returns the string representation.
3484//
3485// API parameter values that are decorated as "sensitive" in the API will not
3486// be included in the string output. The member name will be present, but the
3487// value will be replaced with "sensitive".
3488func (s AccessDeniedException) GoString() string {
3489	return s.String()
3490}
3491
3492func newErrorAccessDeniedException(v protocol.ResponseMetadata) error {
3493	return &AccessDeniedException{
3494		RespMetadata: v,
3495	}
3496}
3497
3498// Code returns the exception type name.
3499func (s *AccessDeniedException) Code() string {
3500	return "AccessDeniedException"
3501}
3502
3503// Message returns the exception's message.
3504func (s *AccessDeniedException) Message() string {
3505	if s.Message_ != nil {
3506		return *s.Message_
3507	}
3508	return ""
3509}
3510
3511// OrigErr always returns nil, satisfies awserr.Error interface.
3512func (s *AccessDeniedException) OrigErr() error {
3513	return nil
3514}
3515
3516func (s *AccessDeniedException) Error() string {
3517	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
3518}
3519
3520// Status code returns the HTTP status code for the request's response error.
3521func (s *AccessDeniedException) StatusCode() int {
3522	return s.RespMetadata.StatusCode
3523}
3524
3525// RequestID returns the service's response RequestID for request.
3526func (s *AccessDeniedException) RequestID() string {
3527	return s.RespMetadata.RequestID
3528}
3529
3530// An application instance on a device.
3531type ApplicationInstance struct {
3532	_ struct{} `type:"structure"`
3533
3534	// The application instance's ID.
3535	ApplicationInstanceId *string `min:"1" type:"string"`
3536
3537	// The application instance's ARN.
3538	Arn *string `min:"1" type:"string"`
3539
3540	// When the application instance was created.
3541	CreatedTime *time.Time `type:"timestamp"`
3542
3543	// The device's ID.
3544	DefaultRuntimeContextDevice *string `min:"1" type:"string"`
3545
3546	// The device's name.
3547	DefaultRuntimeContextDeviceName *string `min:"1" type:"string"`
3548
3549	// The application instance's description.
3550	Description *string `type:"string"`
3551
3552	// The application instance's health status.
3553	HealthStatus *string `type:"string" enum:"ApplicationInstanceHealthStatus"`
3554
3555	// The application instance's name.
3556	Name *string `min:"1" type:"string"`
3557
3558	// The application instance's status.
3559	Status *string `type:"string" enum:"ApplicationInstanceStatus"`
3560
3561	// The application instance's status description.
3562	StatusDescription *string `min:"1" type:"string"`
3563
3564	// The application instance's tags.
3565	Tags map[string]*string `type:"map"`
3566}
3567
3568// String returns the string representation.
3569//
3570// API parameter values that are decorated as "sensitive" in the API will not
3571// be included in the string output. The member name will be present, but the
3572// value will be replaced with "sensitive".
3573func (s ApplicationInstance) String() string {
3574	return awsutil.Prettify(s)
3575}
3576
3577// GoString returns the string representation.
3578//
3579// API parameter values that are decorated as "sensitive" in the API will not
3580// be included in the string output. The member name will be present, but the
3581// value will be replaced with "sensitive".
3582func (s ApplicationInstance) GoString() string {
3583	return s.String()
3584}
3585
3586// SetApplicationInstanceId sets the ApplicationInstanceId field's value.
3587func (s *ApplicationInstance) SetApplicationInstanceId(v string) *ApplicationInstance {
3588	s.ApplicationInstanceId = &v
3589	return s
3590}
3591
3592// SetArn sets the Arn field's value.
3593func (s *ApplicationInstance) SetArn(v string) *ApplicationInstance {
3594	s.Arn = &v
3595	return s
3596}
3597
3598// SetCreatedTime sets the CreatedTime field's value.
3599func (s *ApplicationInstance) SetCreatedTime(v time.Time) *ApplicationInstance {
3600	s.CreatedTime = &v
3601	return s
3602}
3603
3604// SetDefaultRuntimeContextDevice sets the DefaultRuntimeContextDevice field's value.
3605func (s *ApplicationInstance) SetDefaultRuntimeContextDevice(v string) *ApplicationInstance {
3606	s.DefaultRuntimeContextDevice = &v
3607	return s
3608}
3609
3610// SetDefaultRuntimeContextDeviceName sets the DefaultRuntimeContextDeviceName field's value.
3611func (s *ApplicationInstance) SetDefaultRuntimeContextDeviceName(v string) *ApplicationInstance {
3612	s.DefaultRuntimeContextDeviceName = &v
3613	return s
3614}
3615
3616// SetDescription sets the Description field's value.
3617func (s *ApplicationInstance) SetDescription(v string) *ApplicationInstance {
3618	s.Description = &v
3619	return s
3620}
3621
3622// SetHealthStatus sets the HealthStatus field's value.
3623func (s *ApplicationInstance) SetHealthStatus(v string) *ApplicationInstance {
3624	s.HealthStatus = &v
3625	return s
3626}
3627
3628// SetName sets the Name field's value.
3629func (s *ApplicationInstance) SetName(v string) *ApplicationInstance {
3630	s.Name = &v
3631	return s
3632}
3633
3634// SetStatus sets the Status field's value.
3635func (s *ApplicationInstance) SetStatus(v string) *ApplicationInstance {
3636	s.Status = &v
3637	return s
3638}
3639
3640// SetStatusDescription sets the StatusDescription field's value.
3641func (s *ApplicationInstance) SetStatusDescription(v string) *ApplicationInstance {
3642	s.StatusDescription = &v
3643	return s
3644}
3645
3646// SetTags sets the Tags field's value.
3647func (s *ApplicationInstance) SetTags(v map[string]*string) *ApplicationInstance {
3648	s.Tags = v
3649	return s
3650}
3651
3652// The target resource is in use.
3653type ConflictException struct {
3654	_            struct{}                  `type:"structure"`
3655	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
3656
3657	// A list of attributes that led to the exception and their values.
3658	ErrorArguments []*ConflictExceptionErrorArgument `type:"list"`
3659
3660	// A unique ID for the error.
3661	ErrorId *string `type:"string"`
3662
3663	Message_ *string `locationName:"Message" type:"string"`
3664
3665	// The resource's ID.
3666	//
3667	// ResourceId is a required field
3668	ResourceId *string `type:"string" required:"true"`
3669
3670	// The resource's type.
3671	//
3672	// ResourceType is a required field
3673	ResourceType *string `type:"string" required:"true"`
3674}
3675
3676// String returns the string representation.
3677//
3678// API parameter values that are decorated as "sensitive" in the API will not
3679// be included in the string output. The member name will be present, but the
3680// value will be replaced with "sensitive".
3681func (s ConflictException) String() string {
3682	return awsutil.Prettify(s)
3683}
3684
3685// GoString returns the string representation.
3686//
3687// API parameter values that are decorated as "sensitive" in the API will not
3688// be included in the string output. The member name will be present, but the
3689// value will be replaced with "sensitive".
3690func (s ConflictException) GoString() string {
3691	return s.String()
3692}
3693
3694func newErrorConflictException(v protocol.ResponseMetadata) error {
3695	return &ConflictException{
3696		RespMetadata: v,
3697	}
3698}
3699
3700// Code returns the exception type name.
3701func (s *ConflictException) Code() string {
3702	return "ConflictException"
3703}
3704
3705// Message returns the exception's message.
3706func (s *ConflictException) Message() string {
3707	if s.Message_ != nil {
3708		return *s.Message_
3709	}
3710	return ""
3711}
3712
3713// OrigErr always returns nil, satisfies awserr.Error interface.
3714func (s *ConflictException) OrigErr() error {
3715	return nil
3716}
3717
3718func (s *ConflictException) Error() string {
3719	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
3720}
3721
3722// Status code returns the HTTP status code for the request's response error.
3723func (s *ConflictException) StatusCode() int {
3724	return s.RespMetadata.StatusCode
3725}
3726
3727// RequestID returns the service's response RequestID for request.
3728func (s *ConflictException) RequestID() string {
3729	return s.RespMetadata.RequestID
3730}
3731
3732// A conflict exception error argument.
3733type ConflictExceptionErrorArgument struct {
3734	_ struct{} `type:"structure"`
3735
3736	// The error argument's name.
3737	//
3738	// Name is a required field
3739	Name *string `type:"string" required:"true"`
3740
3741	// The error argument's value.
3742	//
3743	// Value is a required field
3744	Value *string `type:"string" required:"true"`
3745}
3746
3747// String returns the string representation.
3748//
3749// API parameter values that are decorated as "sensitive" in the API will not
3750// be included in the string output. The member name will be present, but the
3751// value will be replaced with "sensitive".
3752func (s ConflictExceptionErrorArgument) String() string {
3753	return awsutil.Prettify(s)
3754}
3755
3756// GoString returns the string representation.
3757//
3758// API parameter values that are decorated as "sensitive" in the API will not
3759// be included in the string output. The member name will be present, but the
3760// value will be replaced with "sensitive".
3761func (s ConflictExceptionErrorArgument) GoString() string {
3762	return s.String()
3763}
3764
3765// SetName sets the Name field's value.
3766func (s *ConflictExceptionErrorArgument) SetName(v string) *ConflictExceptionErrorArgument {
3767	s.Name = &v
3768	return s
3769}
3770
3771// SetValue sets the Value field's value.
3772func (s *ConflictExceptionErrorArgument) SetValue(v string) *ConflictExceptionErrorArgument {
3773	s.Value = &v
3774	return s
3775}
3776
3777type CreateApplicationInstanceInput struct {
3778	_ struct{} `type:"structure"`
3779
3780	// The ID of an application instance to replace with the new instance.
3781	ApplicationInstanceIdToReplace *string `min:"1" type:"string"`
3782
3783	// A device's ID.
3784	//
3785	// DefaultRuntimeContextDevice is a required field
3786	DefaultRuntimeContextDevice *string `min:"1" type:"string" required:"true"`
3787
3788	// A description for the application instance.
3789	Description *string `type:"string"`
3790
3791	// Setting overrides for the application manifest.
3792	ManifestOverridesPayload *ManifestOverridesPayload `type:"structure"`
3793
3794	// The application's manifest document.
3795	//
3796	// ManifestPayload is a required field
3797	ManifestPayload *ManifestPayload `type:"structure" required:"true"`
3798
3799	// A name for the application instance.
3800	Name *string `min:"1" type:"string"`
3801
3802	// The ARN of a runtime role for the application instance.
3803	RuntimeRoleArn *string `min:"1" type:"string"`
3804
3805	// Tags for the application instance.
3806	Tags map[string]*string `type:"map"`
3807}
3808
3809// String returns the string representation.
3810//
3811// API parameter values that are decorated as "sensitive" in the API will not
3812// be included in the string output. The member name will be present, but the
3813// value will be replaced with "sensitive".
3814func (s CreateApplicationInstanceInput) String() string {
3815	return awsutil.Prettify(s)
3816}
3817
3818// GoString returns the string representation.
3819//
3820// API parameter values that are decorated as "sensitive" in the API will not
3821// be included in the string output. The member name will be present, but the
3822// value will be replaced with "sensitive".
3823func (s CreateApplicationInstanceInput) GoString() string {
3824	return s.String()
3825}
3826
3827// Validate inspects the fields of the type to determine if they are valid.
3828func (s *CreateApplicationInstanceInput) Validate() error {
3829	invalidParams := request.ErrInvalidParams{Context: "CreateApplicationInstanceInput"}
3830	if s.ApplicationInstanceIdToReplace != nil && len(*s.ApplicationInstanceIdToReplace) < 1 {
3831		invalidParams.Add(request.NewErrParamMinLen("ApplicationInstanceIdToReplace", 1))
3832	}
3833	if s.DefaultRuntimeContextDevice == nil {
3834		invalidParams.Add(request.NewErrParamRequired("DefaultRuntimeContextDevice"))
3835	}
3836	if s.DefaultRuntimeContextDevice != nil && len(*s.DefaultRuntimeContextDevice) < 1 {
3837		invalidParams.Add(request.NewErrParamMinLen("DefaultRuntimeContextDevice", 1))
3838	}
3839	if s.ManifestPayload == nil {
3840		invalidParams.Add(request.NewErrParamRequired("ManifestPayload"))
3841	}
3842	if s.Name != nil && len(*s.Name) < 1 {
3843		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
3844	}
3845	if s.RuntimeRoleArn != nil && len(*s.RuntimeRoleArn) < 1 {
3846		invalidParams.Add(request.NewErrParamMinLen("RuntimeRoleArn", 1))
3847	}
3848	if s.ManifestPayload != nil {
3849		if err := s.ManifestPayload.Validate(); err != nil {
3850			invalidParams.AddNested("ManifestPayload", err.(request.ErrInvalidParams))
3851		}
3852	}
3853
3854	if invalidParams.Len() > 0 {
3855		return invalidParams
3856	}
3857	return nil
3858}
3859
3860// SetApplicationInstanceIdToReplace sets the ApplicationInstanceIdToReplace field's value.
3861func (s *CreateApplicationInstanceInput) SetApplicationInstanceIdToReplace(v string) *CreateApplicationInstanceInput {
3862	s.ApplicationInstanceIdToReplace = &v
3863	return s
3864}
3865
3866// SetDefaultRuntimeContextDevice sets the DefaultRuntimeContextDevice field's value.
3867func (s *CreateApplicationInstanceInput) SetDefaultRuntimeContextDevice(v string) *CreateApplicationInstanceInput {
3868	s.DefaultRuntimeContextDevice = &v
3869	return s
3870}
3871
3872// SetDescription sets the Description field's value.
3873func (s *CreateApplicationInstanceInput) SetDescription(v string) *CreateApplicationInstanceInput {
3874	s.Description = &v
3875	return s
3876}
3877
3878// SetManifestOverridesPayload sets the ManifestOverridesPayload field's value.
3879func (s *CreateApplicationInstanceInput) SetManifestOverridesPayload(v *ManifestOverridesPayload) *CreateApplicationInstanceInput {
3880	s.ManifestOverridesPayload = v
3881	return s
3882}
3883
3884// SetManifestPayload sets the ManifestPayload field's value.
3885func (s *CreateApplicationInstanceInput) SetManifestPayload(v *ManifestPayload) *CreateApplicationInstanceInput {
3886	s.ManifestPayload = v
3887	return s
3888}
3889
3890// SetName sets the Name field's value.
3891func (s *CreateApplicationInstanceInput) SetName(v string) *CreateApplicationInstanceInput {
3892	s.Name = &v
3893	return s
3894}
3895
3896// SetRuntimeRoleArn sets the RuntimeRoleArn field's value.
3897func (s *CreateApplicationInstanceInput) SetRuntimeRoleArn(v string) *CreateApplicationInstanceInput {
3898	s.RuntimeRoleArn = &v
3899	return s
3900}
3901
3902// SetTags sets the Tags field's value.
3903func (s *CreateApplicationInstanceInput) SetTags(v map[string]*string) *CreateApplicationInstanceInput {
3904	s.Tags = v
3905	return s
3906}
3907
3908type CreateApplicationInstanceOutput struct {
3909	_ struct{} `type:"structure"`
3910
3911	// The application instance's ID.
3912	//
3913	// ApplicationInstanceId is a required field
3914	ApplicationInstanceId *string `min:"1" type:"string" required:"true"`
3915}
3916
3917// String returns the string representation.
3918//
3919// API parameter values that are decorated as "sensitive" in the API will not
3920// be included in the string output. The member name will be present, but the
3921// value will be replaced with "sensitive".
3922func (s CreateApplicationInstanceOutput) String() string {
3923	return awsutil.Prettify(s)
3924}
3925
3926// GoString returns the string representation.
3927//
3928// API parameter values that are decorated as "sensitive" in the API will not
3929// be included in the string output. The member name will be present, but the
3930// value will be replaced with "sensitive".
3931func (s CreateApplicationInstanceOutput) GoString() string {
3932	return s.String()
3933}
3934
3935// SetApplicationInstanceId sets the ApplicationInstanceId field's value.
3936func (s *CreateApplicationInstanceOutput) SetApplicationInstanceId(v string) *CreateApplicationInstanceOutput {
3937	s.ApplicationInstanceId = &v
3938	return s
3939}
3940
3941type CreateJobForDevicesInput struct {
3942	_ struct{} `type:"structure"`
3943
3944	// IDs of target devices.
3945	//
3946	// DeviceIds is a required field
3947	DeviceIds []*string `min:"1" type:"list" required:"true"`
3948
3949	// Configuration settings for the job.
3950	//
3951	// DeviceJobConfig is a required field
3952	DeviceJobConfig *DeviceJobConfig `type:"structure" required:"true"`
3953
3954	// The type of job to run.
3955	//
3956	// JobType is a required field
3957	JobType *string `type:"string" required:"true" enum:"JobType"`
3958}
3959
3960// String returns the string representation.
3961//
3962// API parameter values that are decorated as "sensitive" in the API will not
3963// be included in the string output. The member name will be present, but the
3964// value will be replaced with "sensitive".
3965func (s CreateJobForDevicesInput) String() string {
3966	return awsutil.Prettify(s)
3967}
3968
3969// GoString returns the string representation.
3970//
3971// API parameter values that are decorated as "sensitive" in the API will not
3972// be included in the string output. The member name will be present, but the
3973// value will be replaced with "sensitive".
3974func (s CreateJobForDevicesInput) GoString() string {
3975	return s.String()
3976}
3977
3978// Validate inspects the fields of the type to determine if they are valid.
3979func (s *CreateJobForDevicesInput) Validate() error {
3980	invalidParams := request.ErrInvalidParams{Context: "CreateJobForDevicesInput"}
3981	if s.DeviceIds == nil {
3982		invalidParams.Add(request.NewErrParamRequired("DeviceIds"))
3983	}
3984	if s.DeviceIds != nil && len(s.DeviceIds) < 1 {
3985		invalidParams.Add(request.NewErrParamMinLen("DeviceIds", 1))
3986	}
3987	if s.DeviceJobConfig == nil {
3988		invalidParams.Add(request.NewErrParamRequired("DeviceJobConfig"))
3989	}
3990	if s.JobType == nil {
3991		invalidParams.Add(request.NewErrParamRequired("JobType"))
3992	}
3993	if s.DeviceJobConfig != nil {
3994		if err := s.DeviceJobConfig.Validate(); err != nil {
3995			invalidParams.AddNested("DeviceJobConfig", err.(request.ErrInvalidParams))
3996		}
3997	}
3998
3999	if invalidParams.Len() > 0 {
4000		return invalidParams
4001	}
4002	return nil
4003}
4004
4005// SetDeviceIds sets the DeviceIds field's value.
4006func (s *CreateJobForDevicesInput) SetDeviceIds(v []*string) *CreateJobForDevicesInput {
4007	s.DeviceIds = v
4008	return s
4009}
4010
4011// SetDeviceJobConfig sets the DeviceJobConfig field's value.
4012func (s *CreateJobForDevicesInput) SetDeviceJobConfig(v *DeviceJobConfig) *CreateJobForDevicesInput {
4013	s.DeviceJobConfig = v
4014	return s
4015}
4016
4017// SetJobType sets the JobType field's value.
4018func (s *CreateJobForDevicesInput) SetJobType(v string) *CreateJobForDevicesInput {
4019	s.JobType = &v
4020	return s
4021}
4022
4023type CreateJobForDevicesOutput struct {
4024	_ struct{} `type:"structure"`
4025
4026	// A list of jobs.
4027	//
4028	// Jobs is a required field
4029	Jobs []*Job `type:"list" required:"true"`
4030}
4031
4032// String returns the string representation.
4033//
4034// API parameter values that are decorated as "sensitive" in the API will not
4035// be included in the string output. The member name will be present, but the
4036// value will be replaced with "sensitive".
4037func (s CreateJobForDevicesOutput) String() string {
4038	return awsutil.Prettify(s)
4039}
4040
4041// GoString returns the string representation.
4042//
4043// API parameter values that are decorated as "sensitive" in the API will not
4044// be included in the string output. The member name will be present, but the
4045// value will be replaced with "sensitive".
4046func (s CreateJobForDevicesOutput) GoString() string {
4047	return s.String()
4048}
4049
4050// SetJobs sets the Jobs field's value.
4051func (s *CreateJobForDevicesOutput) SetJobs(v []*Job) *CreateJobForDevicesOutput {
4052	s.Jobs = v
4053	return s
4054}
4055
4056type CreateNodeFromTemplateJobInput struct {
4057	_ struct{} `type:"structure"`
4058
4059	// Tags for the job.
4060	JobTags []*JobResourceTags `type:"list"`
4061
4062	// A description for the node.
4063	NodeDescription *string `type:"string"`
4064
4065	// A name for the node.
4066	//
4067	// NodeName is a required field
4068	NodeName *string `min:"1" type:"string" required:"true"`
4069
4070	// An output package name for the node.
4071	//
4072	// OutputPackageName is a required field
4073	OutputPackageName *string `min:"1" type:"string" required:"true"`
4074
4075	// An output package version for the node.
4076	//
4077	// OutputPackageVersion is a required field
4078	OutputPackageVersion *string `min:"1" type:"string" required:"true"`
4079
4080	// Template parameters for the node.
4081	//
4082	// TemplateParameters is a required field
4083	TemplateParameters map[string]*string `type:"map" required:"true"`
4084
4085	// The type of node.
4086	//
4087	// TemplateType is a required field
4088	TemplateType *string `type:"string" required:"true" enum:"TemplateType"`
4089}
4090
4091// String returns the string representation.
4092//
4093// API parameter values that are decorated as "sensitive" in the API will not
4094// be included in the string output. The member name will be present, but the
4095// value will be replaced with "sensitive".
4096func (s CreateNodeFromTemplateJobInput) String() string {
4097	return awsutil.Prettify(s)
4098}
4099
4100// GoString returns the string representation.
4101//
4102// API parameter values that are decorated as "sensitive" in the API will not
4103// be included in the string output. The member name will be present, but the
4104// value will be replaced with "sensitive".
4105func (s CreateNodeFromTemplateJobInput) GoString() string {
4106	return s.String()
4107}
4108
4109// Validate inspects the fields of the type to determine if they are valid.
4110func (s *CreateNodeFromTemplateJobInput) Validate() error {
4111	invalidParams := request.ErrInvalidParams{Context: "CreateNodeFromTemplateJobInput"}
4112	if s.NodeName == nil {
4113		invalidParams.Add(request.NewErrParamRequired("NodeName"))
4114	}
4115	if s.NodeName != nil && len(*s.NodeName) < 1 {
4116		invalidParams.Add(request.NewErrParamMinLen("NodeName", 1))
4117	}
4118	if s.OutputPackageName == nil {
4119		invalidParams.Add(request.NewErrParamRequired("OutputPackageName"))
4120	}
4121	if s.OutputPackageName != nil && len(*s.OutputPackageName) < 1 {
4122		invalidParams.Add(request.NewErrParamMinLen("OutputPackageName", 1))
4123	}
4124	if s.OutputPackageVersion == nil {
4125		invalidParams.Add(request.NewErrParamRequired("OutputPackageVersion"))
4126	}
4127	if s.OutputPackageVersion != nil && len(*s.OutputPackageVersion) < 1 {
4128		invalidParams.Add(request.NewErrParamMinLen("OutputPackageVersion", 1))
4129	}
4130	if s.TemplateParameters == nil {
4131		invalidParams.Add(request.NewErrParamRequired("TemplateParameters"))
4132	}
4133	if s.TemplateType == nil {
4134		invalidParams.Add(request.NewErrParamRequired("TemplateType"))
4135	}
4136	if s.JobTags != nil {
4137		for i, v := range s.JobTags {
4138			if v == nil {
4139				continue
4140			}
4141			if err := v.Validate(); err != nil {
4142				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "JobTags", i), err.(request.ErrInvalidParams))
4143			}
4144		}
4145	}
4146
4147	if invalidParams.Len() > 0 {
4148		return invalidParams
4149	}
4150	return nil
4151}
4152
4153// SetJobTags sets the JobTags field's value.
4154func (s *CreateNodeFromTemplateJobInput) SetJobTags(v []*JobResourceTags) *CreateNodeFromTemplateJobInput {
4155	s.JobTags = v
4156	return s
4157}
4158
4159// SetNodeDescription sets the NodeDescription field's value.
4160func (s *CreateNodeFromTemplateJobInput) SetNodeDescription(v string) *CreateNodeFromTemplateJobInput {
4161	s.NodeDescription = &v
4162	return s
4163}
4164
4165// SetNodeName sets the NodeName field's value.
4166func (s *CreateNodeFromTemplateJobInput) SetNodeName(v string) *CreateNodeFromTemplateJobInput {
4167	s.NodeName = &v
4168	return s
4169}
4170
4171// SetOutputPackageName sets the OutputPackageName field's value.
4172func (s *CreateNodeFromTemplateJobInput) SetOutputPackageName(v string) *CreateNodeFromTemplateJobInput {
4173	s.OutputPackageName = &v
4174	return s
4175}
4176
4177// SetOutputPackageVersion sets the OutputPackageVersion field's value.
4178func (s *CreateNodeFromTemplateJobInput) SetOutputPackageVersion(v string) *CreateNodeFromTemplateJobInput {
4179	s.OutputPackageVersion = &v
4180	return s
4181}
4182
4183// SetTemplateParameters sets the TemplateParameters field's value.
4184func (s *CreateNodeFromTemplateJobInput) SetTemplateParameters(v map[string]*string) *CreateNodeFromTemplateJobInput {
4185	s.TemplateParameters = v
4186	return s
4187}
4188
4189// SetTemplateType sets the TemplateType field's value.
4190func (s *CreateNodeFromTemplateJobInput) SetTemplateType(v string) *CreateNodeFromTemplateJobInput {
4191	s.TemplateType = &v
4192	return s
4193}
4194
4195type CreateNodeFromTemplateJobOutput struct {
4196	_ struct{} `type:"structure"`
4197
4198	// The job's ID.
4199	//
4200	// JobId is a required field
4201	JobId *string `min:"1" type:"string" required:"true"`
4202}
4203
4204// String returns the string representation.
4205//
4206// API parameter values that are decorated as "sensitive" in the API will not
4207// be included in the string output. The member name will be present, but the
4208// value will be replaced with "sensitive".
4209func (s CreateNodeFromTemplateJobOutput) String() string {
4210	return awsutil.Prettify(s)
4211}
4212
4213// GoString returns the string representation.
4214//
4215// API parameter values that are decorated as "sensitive" in the API will not
4216// be included in the string output. The member name will be present, but the
4217// value will be replaced with "sensitive".
4218func (s CreateNodeFromTemplateJobOutput) GoString() string {
4219	return s.String()
4220}
4221
4222// SetJobId sets the JobId field's value.
4223func (s *CreateNodeFromTemplateJobOutput) SetJobId(v string) *CreateNodeFromTemplateJobOutput {
4224	s.JobId = &v
4225	return s
4226}
4227
4228type CreatePackageImportJobInput struct {
4229	_ struct{} `type:"structure"`
4230
4231	// A client token for the package import job.
4232	//
4233	// ClientToken is a required field
4234	ClientToken *string `min:"1" type:"string" required:"true"`
4235
4236	// An input config for the package import job.
4237	//
4238	// InputConfig is a required field
4239	InputConfig *PackageImportJobInputConfig `type:"structure" required:"true"`
4240
4241	// Tags for the package import job.
4242	JobTags []*JobResourceTags `type:"list"`
4243
4244	// A job type for the package import job.
4245	//
4246	// JobType is a required field
4247	JobType *string `type:"string" required:"true" enum:"PackageImportJobType"`
4248
4249	// An output config for the package import job.
4250	//
4251	// OutputConfig is a required field
4252	OutputConfig *PackageImportJobOutputConfig `type:"structure" required:"true"`
4253}
4254
4255// String returns the string representation.
4256//
4257// API parameter values that are decorated as "sensitive" in the API will not
4258// be included in the string output. The member name will be present, but the
4259// value will be replaced with "sensitive".
4260func (s CreatePackageImportJobInput) String() string {
4261	return awsutil.Prettify(s)
4262}
4263
4264// GoString returns the string representation.
4265//
4266// API parameter values that are decorated as "sensitive" in the API will not
4267// be included in the string output. The member name will be present, but the
4268// value will be replaced with "sensitive".
4269func (s CreatePackageImportJobInput) GoString() string {
4270	return s.String()
4271}
4272
4273// Validate inspects the fields of the type to determine if they are valid.
4274func (s *CreatePackageImportJobInput) Validate() error {
4275	invalidParams := request.ErrInvalidParams{Context: "CreatePackageImportJobInput"}
4276	if s.ClientToken == nil {
4277		invalidParams.Add(request.NewErrParamRequired("ClientToken"))
4278	}
4279	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
4280		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
4281	}
4282	if s.InputConfig == nil {
4283		invalidParams.Add(request.NewErrParamRequired("InputConfig"))
4284	}
4285	if s.JobType == nil {
4286		invalidParams.Add(request.NewErrParamRequired("JobType"))
4287	}
4288	if s.OutputConfig == nil {
4289		invalidParams.Add(request.NewErrParamRequired("OutputConfig"))
4290	}
4291	if s.InputConfig != nil {
4292		if err := s.InputConfig.Validate(); err != nil {
4293			invalidParams.AddNested("InputConfig", err.(request.ErrInvalidParams))
4294		}
4295	}
4296	if s.JobTags != nil {
4297		for i, v := range s.JobTags {
4298			if v == nil {
4299				continue
4300			}
4301			if err := v.Validate(); err != nil {
4302				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "JobTags", i), err.(request.ErrInvalidParams))
4303			}
4304		}
4305	}
4306	if s.OutputConfig != nil {
4307		if err := s.OutputConfig.Validate(); err != nil {
4308			invalidParams.AddNested("OutputConfig", err.(request.ErrInvalidParams))
4309		}
4310	}
4311
4312	if invalidParams.Len() > 0 {
4313		return invalidParams
4314	}
4315	return nil
4316}
4317
4318// SetClientToken sets the ClientToken field's value.
4319func (s *CreatePackageImportJobInput) SetClientToken(v string) *CreatePackageImportJobInput {
4320	s.ClientToken = &v
4321	return s
4322}
4323
4324// SetInputConfig sets the InputConfig field's value.
4325func (s *CreatePackageImportJobInput) SetInputConfig(v *PackageImportJobInputConfig) *CreatePackageImportJobInput {
4326	s.InputConfig = v
4327	return s
4328}
4329
4330// SetJobTags sets the JobTags field's value.
4331func (s *CreatePackageImportJobInput) SetJobTags(v []*JobResourceTags) *CreatePackageImportJobInput {
4332	s.JobTags = v
4333	return s
4334}
4335
4336// SetJobType sets the JobType field's value.
4337func (s *CreatePackageImportJobInput) SetJobType(v string) *CreatePackageImportJobInput {
4338	s.JobType = &v
4339	return s
4340}
4341
4342// SetOutputConfig sets the OutputConfig field's value.
4343func (s *CreatePackageImportJobInput) SetOutputConfig(v *PackageImportJobOutputConfig) *CreatePackageImportJobInput {
4344	s.OutputConfig = v
4345	return s
4346}
4347
4348type CreatePackageImportJobOutput struct {
4349	_ struct{} `type:"structure"`
4350
4351	// The job's ID.
4352	//
4353	// JobId is a required field
4354	JobId *string `min:"1" type:"string" required:"true"`
4355}
4356
4357// String returns the string representation.
4358//
4359// API parameter values that are decorated as "sensitive" in the API will not
4360// be included in the string output. The member name will be present, but the
4361// value will be replaced with "sensitive".
4362func (s CreatePackageImportJobOutput) String() string {
4363	return awsutil.Prettify(s)
4364}
4365
4366// GoString returns the string representation.
4367//
4368// API parameter values that are decorated as "sensitive" in the API will not
4369// be included in the string output. The member name will be present, but the
4370// value will be replaced with "sensitive".
4371func (s CreatePackageImportJobOutput) GoString() string {
4372	return s.String()
4373}
4374
4375// SetJobId sets the JobId field's value.
4376func (s *CreatePackageImportJobOutput) SetJobId(v string) *CreatePackageImportJobOutput {
4377	s.JobId = &v
4378	return s
4379}
4380
4381type CreatePackageInput struct {
4382	_ struct{} `type:"structure"`
4383
4384	// A name for the package.
4385	//
4386	// PackageName is a required field
4387	PackageName *string `min:"1" type:"string" required:"true"`
4388
4389	// Tags for the package.
4390	Tags map[string]*string `type:"map"`
4391}
4392
4393// String returns the string representation.
4394//
4395// API parameter values that are decorated as "sensitive" in the API will not
4396// be included in the string output. The member name will be present, but the
4397// value will be replaced with "sensitive".
4398func (s CreatePackageInput) String() string {
4399	return awsutil.Prettify(s)
4400}
4401
4402// GoString returns the string representation.
4403//
4404// API parameter values that are decorated as "sensitive" in the API will not
4405// be included in the string output. The member name will be present, but the
4406// value will be replaced with "sensitive".
4407func (s CreatePackageInput) GoString() string {
4408	return s.String()
4409}
4410
4411// Validate inspects the fields of the type to determine if they are valid.
4412func (s *CreatePackageInput) Validate() error {
4413	invalidParams := request.ErrInvalidParams{Context: "CreatePackageInput"}
4414	if s.PackageName == nil {
4415		invalidParams.Add(request.NewErrParamRequired("PackageName"))
4416	}
4417	if s.PackageName != nil && len(*s.PackageName) < 1 {
4418		invalidParams.Add(request.NewErrParamMinLen("PackageName", 1))
4419	}
4420
4421	if invalidParams.Len() > 0 {
4422		return invalidParams
4423	}
4424	return nil
4425}
4426
4427// SetPackageName sets the PackageName field's value.
4428func (s *CreatePackageInput) SetPackageName(v string) *CreatePackageInput {
4429	s.PackageName = &v
4430	return s
4431}
4432
4433// SetTags sets the Tags field's value.
4434func (s *CreatePackageInput) SetTags(v map[string]*string) *CreatePackageInput {
4435	s.Tags = v
4436	return s
4437}
4438
4439type CreatePackageOutput struct {
4440	_ struct{} `type:"structure"`
4441
4442	// The package's ARN.
4443	Arn *string `min:"1" type:"string"`
4444
4445	// The package's ID.
4446	PackageId *string `min:"1" type:"string"`
4447
4448	// The package's storage location.
4449	//
4450	// StorageLocation is a required field
4451	StorageLocation *StorageLocation `type:"structure" required:"true"`
4452}
4453
4454// String returns the string representation.
4455//
4456// API parameter values that are decorated as "sensitive" in the API will not
4457// be included in the string output. The member name will be present, but the
4458// value will be replaced with "sensitive".
4459func (s CreatePackageOutput) String() string {
4460	return awsutil.Prettify(s)
4461}
4462
4463// GoString returns the string representation.
4464//
4465// API parameter values that are decorated as "sensitive" in the API will not
4466// be included in the string output. The member name will be present, but the
4467// value will be replaced with "sensitive".
4468func (s CreatePackageOutput) GoString() string {
4469	return s.String()
4470}
4471
4472// SetArn sets the Arn field's value.
4473func (s *CreatePackageOutput) SetArn(v string) *CreatePackageOutput {
4474	s.Arn = &v
4475	return s
4476}
4477
4478// SetPackageId sets the PackageId field's value.
4479func (s *CreatePackageOutput) SetPackageId(v string) *CreatePackageOutput {
4480	s.PackageId = &v
4481	return s
4482}
4483
4484// SetStorageLocation sets the StorageLocation field's value.
4485func (s *CreatePackageOutput) SetStorageLocation(v *StorageLocation) *CreatePackageOutput {
4486	s.StorageLocation = v
4487	return s
4488}
4489
4490type DeleteDeviceInput struct {
4491	_ struct{} `type:"structure" nopayload:"true"`
4492
4493	// The device's ID.
4494	//
4495	// DeviceId is a required field
4496	DeviceId *string `location:"uri" locationName:"DeviceId" min:"1" type:"string" required:"true"`
4497}
4498
4499// String returns the string representation.
4500//
4501// API parameter values that are decorated as "sensitive" in the API will not
4502// be included in the string output. The member name will be present, but the
4503// value will be replaced with "sensitive".
4504func (s DeleteDeviceInput) String() string {
4505	return awsutil.Prettify(s)
4506}
4507
4508// GoString returns the string representation.
4509//
4510// API parameter values that are decorated as "sensitive" in the API will not
4511// be included in the string output. The member name will be present, but the
4512// value will be replaced with "sensitive".
4513func (s DeleteDeviceInput) GoString() string {
4514	return s.String()
4515}
4516
4517// Validate inspects the fields of the type to determine if they are valid.
4518func (s *DeleteDeviceInput) Validate() error {
4519	invalidParams := request.ErrInvalidParams{Context: "DeleteDeviceInput"}
4520	if s.DeviceId == nil {
4521		invalidParams.Add(request.NewErrParamRequired("DeviceId"))
4522	}
4523	if s.DeviceId != nil && len(*s.DeviceId) < 1 {
4524		invalidParams.Add(request.NewErrParamMinLen("DeviceId", 1))
4525	}
4526
4527	if invalidParams.Len() > 0 {
4528		return invalidParams
4529	}
4530	return nil
4531}
4532
4533// SetDeviceId sets the DeviceId field's value.
4534func (s *DeleteDeviceInput) SetDeviceId(v string) *DeleteDeviceInput {
4535	s.DeviceId = &v
4536	return s
4537}
4538
4539type DeleteDeviceOutput struct {
4540	_ struct{} `type:"structure"`
4541
4542	// The device's ID.
4543	DeviceId *string `min:"1" type:"string"`
4544}
4545
4546// String returns the string representation.
4547//
4548// API parameter values that are decorated as "sensitive" in the API will not
4549// be included in the string output. The member name will be present, but the
4550// value will be replaced with "sensitive".
4551func (s DeleteDeviceOutput) String() string {
4552	return awsutil.Prettify(s)
4553}
4554
4555// GoString returns the string representation.
4556//
4557// API parameter values that are decorated as "sensitive" in the API will not
4558// be included in the string output. The member name will be present, but the
4559// value will be replaced with "sensitive".
4560func (s DeleteDeviceOutput) GoString() string {
4561	return s.String()
4562}
4563
4564// SetDeviceId sets the DeviceId field's value.
4565func (s *DeleteDeviceOutput) SetDeviceId(v string) *DeleteDeviceOutput {
4566	s.DeviceId = &v
4567	return s
4568}
4569
4570type DeletePackageInput struct {
4571	_ struct{} `type:"structure" nopayload:"true"`
4572
4573	// Delete the package even if it has artifacts stored in its access point. Deletes
4574	// the package's artifacts from Amazon S3.
4575	ForceDelete *bool `location:"querystring" locationName:"ForceDelete" type:"boolean"`
4576
4577	// The package's ID.
4578	//
4579	// PackageId is a required field
4580	PackageId *string `location:"uri" locationName:"PackageId" min:"1" type:"string" required:"true"`
4581}
4582
4583// String returns the string representation.
4584//
4585// API parameter values that are decorated as "sensitive" in the API will not
4586// be included in the string output. The member name will be present, but the
4587// value will be replaced with "sensitive".
4588func (s DeletePackageInput) String() string {
4589	return awsutil.Prettify(s)
4590}
4591
4592// GoString returns the string representation.
4593//
4594// API parameter values that are decorated as "sensitive" in the API will not
4595// be included in the string output. The member name will be present, but the
4596// value will be replaced with "sensitive".
4597func (s DeletePackageInput) GoString() string {
4598	return s.String()
4599}
4600
4601// Validate inspects the fields of the type to determine if they are valid.
4602func (s *DeletePackageInput) Validate() error {
4603	invalidParams := request.ErrInvalidParams{Context: "DeletePackageInput"}
4604	if s.PackageId == nil {
4605		invalidParams.Add(request.NewErrParamRequired("PackageId"))
4606	}
4607	if s.PackageId != nil && len(*s.PackageId) < 1 {
4608		invalidParams.Add(request.NewErrParamMinLen("PackageId", 1))
4609	}
4610
4611	if invalidParams.Len() > 0 {
4612		return invalidParams
4613	}
4614	return nil
4615}
4616
4617// SetForceDelete sets the ForceDelete field's value.
4618func (s *DeletePackageInput) SetForceDelete(v bool) *DeletePackageInput {
4619	s.ForceDelete = &v
4620	return s
4621}
4622
4623// SetPackageId sets the PackageId field's value.
4624func (s *DeletePackageInput) SetPackageId(v string) *DeletePackageInput {
4625	s.PackageId = &v
4626	return s
4627}
4628
4629type DeletePackageOutput struct {
4630	_ struct{} `type:"structure"`
4631}
4632
4633// String returns the string representation.
4634//
4635// API parameter values that are decorated as "sensitive" in the API will not
4636// be included in the string output. The member name will be present, but the
4637// value will be replaced with "sensitive".
4638func (s DeletePackageOutput) String() string {
4639	return awsutil.Prettify(s)
4640}
4641
4642// GoString returns the string representation.
4643//
4644// API parameter values that are decorated as "sensitive" in the API will not
4645// be included in the string output. The member name will be present, but the
4646// value will be replaced with "sensitive".
4647func (s DeletePackageOutput) GoString() string {
4648	return s.String()
4649}
4650
4651type DeregisterPackageVersionInput struct {
4652	_ struct{} `type:"structure" nopayload:"true"`
4653
4654	// An owner account.
4655	OwnerAccount *string `location:"querystring" locationName:"OwnerAccount" min:"1" type:"string"`
4656
4657	// A package ID.
4658	//
4659	// PackageId is a required field
4660	PackageId *string `location:"uri" locationName:"PackageId" min:"1" type:"string" required:"true"`
4661
4662	// A package version.
4663	//
4664	// PackageVersion is a required field
4665	PackageVersion *string `location:"uri" locationName:"PackageVersion" min:"1" type:"string" required:"true"`
4666
4667	// A patch version.
4668	//
4669	// PatchVersion is a required field
4670	PatchVersion *string `location:"uri" locationName:"PatchVersion" min:"1" type:"string" required:"true"`
4671
4672	// If the version was marked latest, the new version to maker as latest.
4673	UpdatedLatestPatchVersion *string `location:"querystring" locationName:"UpdatedLatestPatchVersion" min:"1" type:"string"`
4674}
4675
4676// String returns the string representation.
4677//
4678// API parameter values that are decorated as "sensitive" in the API will not
4679// be included in the string output. The member name will be present, but the
4680// value will be replaced with "sensitive".
4681func (s DeregisterPackageVersionInput) String() string {
4682	return awsutil.Prettify(s)
4683}
4684
4685// GoString returns the string representation.
4686//
4687// API parameter values that are decorated as "sensitive" in the API will not
4688// be included in the string output. The member name will be present, but the
4689// value will be replaced with "sensitive".
4690func (s DeregisterPackageVersionInput) GoString() string {
4691	return s.String()
4692}
4693
4694// Validate inspects the fields of the type to determine if they are valid.
4695func (s *DeregisterPackageVersionInput) Validate() error {
4696	invalidParams := request.ErrInvalidParams{Context: "DeregisterPackageVersionInput"}
4697	if s.OwnerAccount != nil && len(*s.OwnerAccount) < 1 {
4698		invalidParams.Add(request.NewErrParamMinLen("OwnerAccount", 1))
4699	}
4700	if s.PackageId == nil {
4701		invalidParams.Add(request.NewErrParamRequired("PackageId"))
4702	}
4703	if s.PackageId != nil && len(*s.PackageId) < 1 {
4704		invalidParams.Add(request.NewErrParamMinLen("PackageId", 1))
4705	}
4706	if s.PackageVersion == nil {
4707		invalidParams.Add(request.NewErrParamRequired("PackageVersion"))
4708	}
4709	if s.PackageVersion != nil && len(*s.PackageVersion) < 1 {
4710		invalidParams.Add(request.NewErrParamMinLen("PackageVersion", 1))
4711	}
4712	if s.PatchVersion == nil {
4713		invalidParams.Add(request.NewErrParamRequired("PatchVersion"))
4714	}
4715	if s.PatchVersion != nil && len(*s.PatchVersion) < 1 {
4716		invalidParams.Add(request.NewErrParamMinLen("PatchVersion", 1))
4717	}
4718	if s.UpdatedLatestPatchVersion != nil && len(*s.UpdatedLatestPatchVersion) < 1 {
4719		invalidParams.Add(request.NewErrParamMinLen("UpdatedLatestPatchVersion", 1))
4720	}
4721
4722	if invalidParams.Len() > 0 {
4723		return invalidParams
4724	}
4725	return nil
4726}
4727
4728// SetOwnerAccount sets the OwnerAccount field's value.
4729func (s *DeregisterPackageVersionInput) SetOwnerAccount(v string) *DeregisterPackageVersionInput {
4730	s.OwnerAccount = &v
4731	return s
4732}
4733
4734// SetPackageId sets the PackageId field's value.
4735func (s *DeregisterPackageVersionInput) SetPackageId(v string) *DeregisterPackageVersionInput {
4736	s.PackageId = &v
4737	return s
4738}
4739
4740// SetPackageVersion sets the PackageVersion field's value.
4741func (s *DeregisterPackageVersionInput) SetPackageVersion(v string) *DeregisterPackageVersionInput {
4742	s.PackageVersion = &v
4743	return s
4744}
4745
4746// SetPatchVersion sets the PatchVersion field's value.
4747func (s *DeregisterPackageVersionInput) SetPatchVersion(v string) *DeregisterPackageVersionInput {
4748	s.PatchVersion = &v
4749	return s
4750}
4751
4752// SetUpdatedLatestPatchVersion sets the UpdatedLatestPatchVersion field's value.
4753func (s *DeregisterPackageVersionInput) SetUpdatedLatestPatchVersion(v string) *DeregisterPackageVersionInput {
4754	s.UpdatedLatestPatchVersion = &v
4755	return s
4756}
4757
4758type DeregisterPackageVersionOutput struct {
4759	_ struct{} `type:"structure"`
4760}
4761
4762// String returns the string representation.
4763//
4764// API parameter values that are decorated as "sensitive" in the API will not
4765// be included in the string output. The member name will be present, but the
4766// value will be replaced with "sensitive".
4767func (s DeregisterPackageVersionOutput) String() string {
4768	return awsutil.Prettify(s)
4769}
4770
4771// GoString returns the string representation.
4772//
4773// API parameter values that are decorated as "sensitive" in the API will not
4774// be included in the string output. The member name will be present, but the
4775// value will be replaced with "sensitive".
4776func (s DeregisterPackageVersionOutput) GoString() string {
4777	return s.String()
4778}
4779
4780type DescribeApplicationInstanceDetailsInput struct {
4781	_ struct{} `type:"structure" nopayload:"true"`
4782
4783	// The application instance's ID.
4784	//
4785	// ApplicationInstanceId is a required field
4786	ApplicationInstanceId *string `location:"uri" locationName:"applicationInstanceId" min:"1" type:"string" required:"true"`
4787}
4788
4789// String returns the string representation.
4790//
4791// API parameter values that are decorated as "sensitive" in the API will not
4792// be included in the string output. The member name will be present, but the
4793// value will be replaced with "sensitive".
4794func (s DescribeApplicationInstanceDetailsInput) String() string {
4795	return awsutil.Prettify(s)
4796}
4797
4798// GoString returns the string representation.
4799//
4800// API parameter values that are decorated as "sensitive" in the API will not
4801// be included in the string output. The member name will be present, but the
4802// value will be replaced with "sensitive".
4803func (s DescribeApplicationInstanceDetailsInput) GoString() string {
4804	return s.String()
4805}
4806
4807// Validate inspects the fields of the type to determine if they are valid.
4808func (s *DescribeApplicationInstanceDetailsInput) Validate() error {
4809	invalidParams := request.ErrInvalidParams{Context: "DescribeApplicationInstanceDetailsInput"}
4810	if s.ApplicationInstanceId == nil {
4811		invalidParams.Add(request.NewErrParamRequired("ApplicationInstanceId"))
4812	}
4813	if s.ApplicationInstanceId != nil && len(*s.ApplicationInstanceId) < 1 {
4814		invalidParams.Add(request.NewErrParamMinLen("ApplicationInstanceId", 1))
4815	}
4816
4817	if invalidParams.Len() > 0 {
4818		return invalidParams
4819	}
4820	return nil
4821}
4822
4823// SetApplicationInstanceId sets the ApplicationInstanceId field's value.
4824func (s *DescribeApplicationInstanceDetailsInput) SetApplicationInstanceId(v string) *DescribeApplicationInstanceDetailsInput {
4825	s.ApplicationInstanceId = &v
4826	return s
4827}
4828
4829type DescribeApplicationInstanceDetailsOutput struct {
4830	_ struct{} `type:"structure"`
4831
4832	// The application instance's ID.
4833	ApplicationInstanceId *string `min:"1" type:"string"`
4834
4835	// The ID of the application instance that this instance replaced.
4836	ApplicationInstanceIdToReplace *string `min:"1" type:"string"`
4837
4838	// When the application instance was created.
4839	CreatedTime *time.Time `type:"timestamp"`
4840
4841	// The application instance's default runtime context device.
4842	DefaultRuntimeContextDevice *string `min:"1" type:"string"`
4843
4844	// The application instance's description.
4845	Description *string `type:"string"`
4846
4847	// Parameter overrides for the configuration manifest.
4848	ManifestOverridesPayload *ManifestOverridesPayload `type:"structure"`
4849
4850	// The application instance's configuration manifest.
4851	ManifestPayload *ManifestPayload `type:"structure"`
4852
4853	// The application instance's name.
4854	Name *string `min:"1" type:"string"`
4855}
4856
4857// String returns the string representation.
4858//
4859// API parameter values that are decorated as "sensitive" in the API will not
4860// be included in the string output. The member name will be present, but the
4861// value will be replaced with "sensitive".
4862func (s DescribeApplicationInstanceDetailsOutput) String() string {
4863	return awsutil.Prettify(s)
4864}
4865
4866// GoString returns the string representation.
4867//
4868// API parameter values that are decorated as "sensitive" in the API will not
4869// be included in the string output. The member name will be present, but the
4870// value will be replaced with "sensitive".
4871func (s DescribeApplicationInstanceDetailsOutput) GoString() string {
4872	return s.String()
4873}
4874
4875// SetApplicationInstanceId sets the ApplicationInstanceId field's value.
4876func (s *DescribeApplicationInstanceDetailsOutput) SetApplicationInstanceId(v string) *DescribeApplicationInstanceDetailsOutput {
4877	s.ApplicationInstanceId = &v
4878	return s
4879}
4880
4881// SetApplicationInstanceIdToReplace sets the ApplicationInstanceIdToReplace field's value.
4882func (s *DescribeApplicationInstanceDetailsOutput) SetApplicationInstanceIdToReplace(v string) *DescribeApplicationInstanceDetailsOutput {
4883	s.ApplicationInstanceIdToReplace = &v
4884	return s
4885}
4886
4887// SetCreatedTime sets the CreatedTime field's value.
4888func (s *DescribeApplicationInstanceDetailsOutput) SetCreatedTime(v time.Time) *DescribeApplicationInstanceDetailsOutput {
4889	s.CreatedTime = &v
4890	return s
4891}
4892
4893// SetDefaultRuntimeContextDevice sets the DefaultRuntimeContextDevice field's value.
4894func (s *DescribeApplicationInstanceDetailsOutput) SetDefaultRuntimeContextDevice(v string) *DescribeApplicationInstanceDetailsOutput {
4895	s.DefaultRuntimeContextDevice = &v
4896	return s
4897}
4898
4899// SetDescription sets the Description field's value.
4900func (s *DescribeApplicationInstanceDetailsOutput) SetDescription(v string) *DescribeApplicationInstanceDetailsOutput {
4901	s.Description = &v
4902	return s
4903}
4904
4905// SetManifestOverridesPayload sets the ManifestOverridesPayload field's value.
4906func (s *DescribeApplicationInstanceDetailsOutput) SetManifestOverridesPayload(v *ManifestOverridesPayload) *DescribeApplicationInstanceDetailsOutput {
4907	s.ManifestOverridesPayload = v
4908	return s
4909}
4910
4911// SetManifestPayload sets the ManifestPayload field's value.
4912func (s *DescribeApplicationInstanceDetailsOutput) SetManifestPayload(v *ManifestPayload) *DescribeApplicationInstanceDetailsOutput {
4913	s.ManifestPayload = v
4914	return s
4915}
4916
4917// SetName sets the Name field's value.
4918func (s *DescribeApplicationInstanceDetailsOutput) SetName(v string) *DescribeApplicationInstanceDetailsOutput {
4919	s.Name = &v
4920	return s
4921}
4922
4923type DescribeApplicationInstanceInput struct {
4924	_ struct{} `type:"structure" nopayload:"true"`
4925
4926	// The application instance's ID.
4927	//
4928	// ApplicationInstanceId is a required field
4929	ApplicationInstanceId *string `location:"uri" locationName:"applicationInstanceId" min:"1" type:"string" required:"true"`
4930}
4931
4932// String returns the string representation.
4933//
4934// API parameter values that are decorated as "sensitive" in the API will not
4935// be included in the string output. The member name will be present, but the
4936// value will be replaced with "sensitive".
4937func (s DescribeApplicationInstanceInput) String() string {
4938	return awsutil.Prettify(s)
4939}
4940
4941// GoString returns the string representation.
4942//
4943// API parameter values that are decorated as "sensitive" in the API will not
4944// be included in the string output. The member name will be present, but the
4945// value will be replaced with "sensitive".
4946func (s DescribeApplicationInstanceInput) GoString() string {
4947	return s.String()
4948}
4949
4950// Validate inspects the fields of the type to determine if they are valid.
4951func (s *DescribeApplicationInstanceInput) Validate() error {
4952	invalidParams := request.ErrInvalidParams{Context: "DescribeApplicationInstanceInput"}
4953	if s.ApplicationInstanceId == nil {
4954		invalidParams.Add(request.NewErrParamRequired("ApplicationInstanceId"))
4955	}
4956	if s.ApplicationInstanceId != nil && len(*s.ApplicationInstanceId) < 1 {
4957		invalidParams.Add(request.NewErrParamMinLen("ApplicationInstanceId", 1))
4958	}
4959
4960	if invalidParams.Len() > 0 {
4961		return invalidParams
4962	}
4963	return nil
4964}
4965
4966// SetApplicationInstanceId sets the ApplicationInstanceId field's value.
4967func (s *DescribeApplicationInstanceInput) SetApplicationInstanceId(v string) *DescribeApplicationInstanceInput {
4968	s.ApplicationInstanceId = &v
4969	return s
4970}
4971
4972type DescribeApplicationInstanceOutput struct {
4973	_ struct{} `type:"structure"`
4974
4975	// The application instance's ID.
4976	ApplicationInstanceId *string `min:"1" type:"string"`
4977
4978	// The ID of the application instance that this instance replaced.
4979	ApplicationInstanceIdToReplace *string `min:"1" type:"string"`
4980
4981	// The application instance's ARN.
4982	Arn *string `min:"1" type:"string"`
4983
4984	// When the application instance was created.
4985	CreatedTime *time.Time `type:"timestamp"`
4986
4987	// The device's ID.
4988	DefaultRuntimeContextDevice *string `min:"1" type:"string"`
4989
4990	// The device's bane.
4991	DefaultRuntimeContextDeviceName *string `min:"1" type:"string"`
4992
4993	// The application instance's description.
4994	Description *string `type:"string"`
4995
4996	// The application instance's health status.
4997	HealthStatus *string `type:"string" enum:"ApplicationInstanceHealthStatus"`
4998
4999	// The application instance was updated.
5000	LastUpdatedTime *time.Time `type:"timestamp"`
5001
5002	// The application instance's name.
5003	Name *string `min:"1" type:"string"`
5004
5005	// The application instance's runtime role ARN.
5006	RuntimeRoleArn *string `min:"1" type:"string"`
5007
5008	// The application instance's status.
5009	Status *string `type:"string" enum:"ApplicationInstanceStatus"`
5010
5011	// The application instance's status description.
5012	StatusDescription *string `min:"1" type:"string"`
5013
5014	// The application instance's tags.
5015	Tags map[string]*string `type:"map"`
5016}
5017
5018// String returns the string representation.
5019//
5020// API parameter values that are decorated as "sensitive" in the API will not
5021// be included in the string output. The member name will be present, but the
5022// value will be replaced with "sensitive".
5023func (s DescribeApplicationInstanceOutput) String() string {
5024	return awsutil.Prettify(s)
5025}
5026
5027// GoString returns the string representation.
5028//
5029// API parameter values that are decorated as "sensitive" in the API will not
5030// be included in the string output. The member name will be present, but the
5031// value will be replaced with "sensitive".
5032func (s DescribeApplicationInstanceOutput) GoString() string {
5033	return s.String()
5034}
5035
5036// SetApplicationInstanceId sets the ApplicationInstanceId field's value.
5037func (s *DescribeApplicationInstanceOutput) SetApplicationInstanceId(v string) *DescribeApplicationInstanceOutput {
5038	s.ApplicationInstanceId = &v
5039	return s
5040}
5041
5042// SetApplicationInstanceIdToReplace sets the ApplicationInstanceIdToReplace field's value.
5043func (s *DescribeApplicationInstanceOutput) SetApplicationInstanceIdToReplace(v string) *DescribeApplicationInstanceOutput {
5044	s.ApplicationInstanceIdToReplace = &v
5045	return s
5046}
5047
5048// SetArn sets the Arn field's value.
5049func (s *DescribeApplicationInstanceOutput) SetArn(v string) *DescribeApplicationInstanceOutput {
5050	s.Arn = &v
5051	return s
5052}
5053
5054// SetCreatedTime sets the CreatedTime field's value.
5055func (s *DescribeApplicationInstanceOutput) SetCreatedTime(v time.Time) *DescribeApplicationInstanceOutput {
5056	s.CreatedTime = &v
5057	return s
5058}
5059
5060// SetDefaultRuntimeContextDevice sets the DefaultRuntimeContextDevice field's value.
5061func (s *DescribeApplicationInstanceOutput) SetDefaultRuntimeContextDevice(v string) *DescribeApplicationInstanceOutput {
5062	s.DefaultRuntimeContextDevice = &v
5063	return s
5064}
5065
5066// SetDefaultRuntimeContextDeviceName sets the DefaultRuntimeContextDeviceName field's value.
5067func (s *DescribeApplicationInstanceOutput) SetDefaultRuntimeContextDeviceName(v string) *DescribeApplicationInstanceOutput {
5068	s.DefaultRuntimeContextDeviceName = &v
5069	return s
5070}
5071
5072// SetDescription sets the Description field's value.
5073func (s *DescribeApplicationInstanceOutput) SetDescription(v string) *DescribeApplicationInstanceOutput {
5074	s.Description = &v
5075	return s
5076}
5077
5078// SetHealthStatus sets the HealthStatus field's value.
5079func (s *DescribeApplicationInstanceOutput) SetHealthStatus(v string) *DescribeApplicationInstanceOutput {
5080	s.HealthStatus = &v
5081	return s
5082}
5083
5084// SetLastUpdatedTime sets the LastUpdatedTime field's value.
5085func (s *DescribeApplicationInstanceOutput) SetLastUpdatedTime(v time.Time) *DescribeApplicationInstanceOutput {
5086	s.LastUpdatedTime = &v
5087	return s
5088}
5089
5090// SetName sets the Name field's value.
5091func (s *DescribeApplicationInstanceOutput) SetName(v string) *DescribeApplicationInstanceOutput {
5092	s.Name = &v
5093	return s
5094}
5095
5096// SetRuntimeRoleArn sets the RuntimeRoleArn field's value.
5097func (s *DescribeApplicationInstanceOutput) SetRuntimeRoleArn(v string) *DescribeApplicationInstanceOutput {
5098	s.RuntimeRoleArn = &v
5099	return s
5100}
5101
5102// SetStatus sets the Status field's value.
5103func (s *DescribeApplicationInstanceOutput) SetStatus(v string) *DescribeApplicationInstanceOutput {
5104	s.Status = &v
5105	return s
5106}
5107
5108// SetStatusDescription sets the StatusDescription field's value.
5109func (s *DescribeApplicationInstanceOutput) SetStatusDescription(v string) *DescribeApplicationInstanceOutput {
5110	s.StatusDescription = &v
5111	return s
5112}
5113
5114// SetTags sets the Tags field's value.
5115func (s *DescribeApplicationInstanceOutput) SetTags(v map[string]*string) *DescribeApplicationInstanceOutput {
5116	s.Tags = v
5117	return s
5118}
5119
5120type DescribeDeviceInput struct {
5121	_ struct{} `type:"structure" nopayload:"true"`
5122
5123	// The device's ID.
5124	//
5125	// DeviceId is a required field
5126	DeviceId *string `location:"uri" locationName:"DeviceId" min:"1" type:"string" required:"true"`
5127}
5128
5129// String returns the string representation.
5130//
5131// API parameter values that are decorated as "sensitive" in the API will not
5132// be included in the string output. The member name will be present, but the
5133// value will be replaced with "sensitive".
5134func (s DescribeDeviceInput) String() string {
5135	return awsutil.Prettify(s)
5136}
5137
5138// GoString returns the string representation.
5139//
5140// API parameter values that are decorated as "sensitive" in the API will not
5141// be included in the string output. The member name will be present, but the
5142// value will be replaced with "sensitive".
5143func (s DescribeDeviceInput) GoString() string {
5144	return s.String()
5145}
5146
5147// Validate inspects the fields of the type to determine if they are valid.
5148func (s *DescribeDeviceInput) Validate() error {
5149	invalidParams := request.ErrInvalidParams{Context: "DescribeDeviceInput"}
5150	if s.DeviceId == nil {
5151		invalidParams.Add(request.NewErrParamRequired("DeviceId"))
5152	}
5153	if s.DeviceId != nil && len(*s.DeviceId) < 1 {
5154		invalidParams.Add(request.NewErrParamMinLen("DeviceId", 1))
5155	}
5156
5157	if invalidParams.Len() > 0 {
5158		return invalidParams
5159	}
5160	return nil
5161}
5162
5163// SetDeviceId sets the DeviceId field's value.
5164func (s *DescribeDeviceInput) SetDeviceId(v string) *DescribeDeviceInput {
5165	s.DeviceId = &v
5166	return s
5167}
5168
5169type DescribeDeviceJobInput struct {
5170	_ struct{} `type:"structure" nopayload:"true"`
5171
5172	// The job's ID.
5173	//
5174	// JobId is a required field
5175	JobId *string `location:"uri" locationName:"JobId" min:"1" type:"string" required:"true"`
5176}
5177
5178// String returns the string representation.
5179//
5180// API parameter values that are decorated as "sensitive" in the API will not
5181// be included in the string output. The member name will be present, but the
5182// value will be replaced with "sensitive".
5183func (s DescribeDeviceJobInput) String() string {
5184	return awsutil.Prettify(s)
5185}
5186
5187// GoString returns the string representation.
5188//
5189// API parameter values that are decorated as "sensitive" in the API will not
5190// be included in the string output. The member name will be present, but the
5191// value will be replaced with "sensitive".
5192func (s DescribeDeviceJobInput) GoString() string {
5193	return s.String()
5194}
5195
5196// Validate inspects the fields of the type to determine if they are valid.
5197func (s *DescribeDeviceJobInput) Validate() error {
5198	invalidParams := request.ErrInvalidParams{Context: "DescribeDeviceJobInput"}
5199	if s.JobId == nil {
5200		invalidParams.Add(request.NewErrParamRequired("JobId"))
5201	}
5202	if s.JobId != nil && len(*s.JobId) < 1 {
5203		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
5204	}
5205
5206	if invalidParams.Len() > 0 {
5207		return invalidParams
5208	}
5209	return nil
5210}
5211
5212// SetJobId sets the JobId field's value.
5213func (s *DescribeDeviceJobInput) SetJobId(v string) *DescribeDeviceJobInput {
5214	s.JobId = &v
5215	return s
5216}
5217
5218type DescribeDeviceJobOutput struct {
5219	_ struct{} `type:"structure"`
5220
5221	// When the job was created.
5222	CreatedTime *time.Time `type:"timestamp"`
5223
5224	// The device's ARN.
5225	DeviceArn *string `min:"1" type:"string"`
5226
5227	// The device's ID.
5228	DeviceId *string `min:"1" type:"string"`
5229
5230	// The device's name.
5231	DeviceName *string `min:"1" type:"string"`
5232
5233	// The device's type.
5234	DeviceType *string `type:"string" enum:"DeviceType"`
5235
5236	// For an OTA job, the target version of the device software.
5237	ImageVersion *string `min:"1" type:"string"`
5238
5239	// The job's ID.
5240	JobId *string `min:"1" type:"string"`
5241
5242	// The job's status.
5243	Status *string `type:"string" enum:"UpdateProgress"`
5244}
5245
5246// String returns the string representation.
5247//
5248// API parameter values that are decorated as "sensitive" in the API will not
5249// be included in the string output. The member name will be present, but the
5250// value will be replaced with "sensitive".
5251func (s DescribeDeviceJobOutput) String() string {
5252	return awsutil.Prettify(s)
5253}
5254
5255// GoString returns the string representation.
5256//
5257// API parameter values that are decorated as "sensitive" in the API will not
5258// be included in the string output. The member name will be present, but the
5259// value will be replaced with "sensitive".
5260func (s DescribeDeviceJobOutput) GoString() string {
5261	return s.String()
5262}
5263
5264// SetCreatedTime sets the CreatedTime field's value.
5265func (s *DescribeDeviceJobOutput) SetCreatedTime(v time.Time) *DescribeDeviceJobOutput {
5266	s.CreatedTime = &v
5267	return s
5268}
5269
5270// SetDeviceArn sets the DeviceArn field's value.
5271func (s *DescribeDeviceJobOutput) SetDeviceArn(v string) *DescribeDeviceJobOutput {
5272	s.DeviceArn = &v
5273	return s
5274}
5275
5276// SetDeviceId sets the DeviceId field's value.
5277func (s *DescribeDeviceJobOutput) SetDeviceId(v string) *DescribeDeviceJobOutput {
5278	s.DeviceId = &v
5279	return s
5280}
5281
5282// SetDeviceName sets the DeviceName field's value.
5283func (s *DescribeDeviceJobOutput) SetDeviceName(v string) *DescribeDeviceJobOutput {
5284	s.DeviceName = &v
5285	return s
5286}
5287
5288// SetDeviceType sets the DeviceType field's value.
5289func (s *DescribeDeviceJobOutput) SetDeviceType(v string) *DescribeDeviceJobOutput {
5290	s.DeviceType = &v
5291	return s
5292}
5293
5294// SetImageVersion sets the ImageVersion field's value.
5295func (s *DescribeDeviceJobOutput) SetImageVersion(v string) *DescribeDeviceJobOutput {
5296	s.ImageVersion = &v
5297	return s
5298}
5299
5300// SetJobId sets the JobId field's value.
5301func (s *DescribeDeviceJobOutput) SetJobId(v string) *DescribeDeviceJobOutput {
5302	s.JobId = &v
5303	return s
5304}
5305
5306// SetStatus sets the Status field's value.
5307func (s *DescribeDeviceJobOutput) SetStatus(v string) *DescribeDeviceJobOutput {
5308	s.Status = &v
5309	return s
5310}
5311
5312type DescribeDeviceOutput struct {
5313	_ struct{} `type:"structure"`
5314
5315	// The device's ARN.
5316	Arn *string `min:"1" type:"string"`
5317
5318	// When the device was created.
5319	CreatedTime *time.Time `type:"timestamp"`
5320
5321	// The device's networking status.
5322	CurrentNetworkingStatus *NetworkStatus `type:"structure"`
5323
5324	// The device's current software version.
5325	CurrentSoftware *string `min:"1" type:"string"`
5326
5327	// The device's description.
5328	Description *string `type:"string"`
5329
5330	// The device's connection status.
5331	DeviceConnectionStatus *string `type:"string" enum:"DeviceConnectionStatus"`
5332
5333	// The device's ID.
5334	DeviceId *string `min:"1" type:"string"`
5335
5336	// The latest software version available for the device.
5337	LatestSoftware *string `min:"1" type:"string"`
5338
5339	// The device's lease expiration time.
5340	LeaseExpirationTime *time.Time `type:"timestamp"`
5341
5342	// The device's name.
5343	Name *string `min:"1" type:"string"`
5344
5345	// The device's networking configuration.
5346	NetworkingConfiguration *NetworkPayload `type:"structure"`
5347
5348	// The device's provisioning status.
5349	ProvisioningStatus *string `type:"string" enum:"DeviceStatus"`
5350
5351	// The device's serial number.
5352	SerialNumber *string `type:"string"`
5353
5354	// The device's tags.
5355	Tags map[string]*string `type:"map"`
5356
5357	// The device's type.
5358	Type *string `type:"string" enum:"DeviceType"`
5359}
5360
5361// String returns the string representation.
5362//
5363// API parameter values that are decorated as "sensitive" in the API will not
5364// be included in the string output. The member name will be present, but the
5365// value will be replaced with "sensitive".
5366func (s DescribeDeviceOutput) String() string {
5367	return awsutil.Prettify(s)
5368}
5369
5370// GoString returns the string representation.
5371//
5372// API parameter values that are decorated as "sensitive" in the API will not
5373// be included in the string output. The member name will be present, but the
5374// value will be replaced with "sensitive".
5375func (s DescribeDeviceOutput) GoString() string {
5376	return s.String()
5377}
5378
5379// SetArn sets the Arn field's value.
5380func (s *DescribeDeviceOutput) SetArn(v string) *DescribeDeviceOutput {
5381	s.Arn = &v
5382	return s
5383}
5384
5385// SetCreatedTime sets the CreatedTime field's value.
5386func (s *DescribeDeviceOutput) SetCreatedTime(v time.Time) *DescribeDeviceOutput {
5387	s.CreatedTime = &v
5388	return s
5389}
5390
5391// SetCurrentNetworkingStatus sets the CurrentNetworkingStatus field's value.
5392func (s *DescribeDeviceOutput) SetCurrentNetworkingStatus(v *NetworkStatus) *DescribeDeviceOutput {
5393	s.CurrentNetworkingStatus = v
5394	return s
5395}
5396
5397// SetCurrentSoftware sets the CurrentSoftware field's value.
5398func (s *DescribeDeviceOutput) SetCurrentSoftware(v string) *DescribeDeviceOutput {
5399	s.CurrentSoftware = &v
5400	return s
5401}
5402
5403// SetDescription sets the Description field's value.
5404func (s *DescribeDeviceOutput) SetDescription(v string) *DescribeDeviceOutput {
5405	s.Description = &v
5406	return s
5407}
5408
5409// SetDeviceConnectionStatus sets the DeviceConnectionStatus field's value.
5410func (s *DescribeDeviceOutput) SetDeviceConnectionStatus(v string) *DescribeDeviceOutput {
5411	s.DeviceConnectionStatus = &v
5412	return s
5413}
5414
5415// SetDeviceId sets the DeviceId field's value.
5416func (s *DescribeDeviceOutput) SetDeviceId(v string) *DescribeDeviceOutput {
5417	s.DeviceId = &v
5418	return s
5419}
5420
5421// SetLatestSoftware sets the LatestSoftware field's value.
5422func (s *DescribeDeviceOutput) SetLatestSoftware(v string) *DescribeDeviceOutput {
5423	s.LatestSoftware = &v
5424	return s
5425}
5426
5427// SetLeaseExpirationTime sets the LeaseExpirationTime field's value.
5428func (s *DescribeDeviceOutput) SetLeaseExpirationTime(v time.Time) *DescribeDeviceOutput {
5429	s.LeaseExpirationTime = &v
5430	return s
5431}
5432
5433// SetName sets the Name field's value.
5434func (s *DescribeDeviceOutput) SetName(v string) *DescribeDeviceOutput {
5435	s.Name = &v
5436	return s
5437}
5438
5439// SetNetworkingConfiguration sets the NetworkingConfiguration field's value.
5440func (s *DescribeDeviceOutput) SetNetworkingConfiguration(v *NetworkPayload) *DescribeDeviceOutput {
5441	s.NetworkingConfiguration = v
5442	return s
5443}
5444
5445// SetProvisioningStatus sets the ProvisioningStatus field's value.
5446func (s *DescribeDeviceOutput) SetProvisioningStatus(v string) *DescribeDeviceOutput {
5447	s.ProvisioningStatus = &v
5448	return s
5449}
5450
5451// SetSerialNumber sets the SerialNumber field's value.
5452func (s *DescribeDeviceOutput) SetSerialNumber(v string) *DescribeDeviceOutput {
5453	s.SerialNumber = &v
5454	return s
5455}
5456
5457// SetTags sets the Tags field's value.
5458func (s *DescribeDeviceOutput) SetTags(v map[string]*string) *DescribeDeviceOutput {
5459	s.Tags = v
5460	return s
5461}
5462
5463// SetType sets the Type field's value.
5464func (s *DescribeDeviceOutput) SetType(v string) *DescribeDeviceOutput {
5465	s.Type = &v
5466	return s
5467}
5468
5469type DescribeNodeFromTemplateJobInput struct {
5470	_ struct{} `type:"structure" nopayload:"true"`
5471
5472	// The job's ID.
5473	//
5474	// JobId is a required field
5475	JobId *string `location:"uri" locationName:"JobId" min:"1" type:"string" required:"true"`
5476}
5477
5478// String returns the string representation.
5479//
5480// API parameter values that are decorated as "sensitive" in the API will not
5481// be included in the string output. The member name will be present, but the
5482// value will be replaced with "sensitive".
5483func (s DescribeNodeFromTemplateJobInput) String() string {
5484	return awsutil.Prettify(s)
5485}
5486
5487// GoString returns the string representation.
5488//
5489// API parameter values that are decorated as "sensitive" in the API will not
5490// be included in the string output. The member name will be present, but the
5491// value will be replaced with "sensitive".
5492func (s DescribeNodeFromTemplateJobInput) GoString() string {
5493	return s.String()
5494}
5495
5496// Validate inspects the fields of the type to determine if they are valid.
5497func (s *DescribeNodeFromTemplateJobInput) Validate() error {
5498	invalidParams := request.ErrInvalidParams{Context: "DescribeNodeFromTemplateJobInput"}
5499	if s.JobId == nil {
5500		invalidParams.Add(request.NewErrParamRequired("JobId"))
5501	}
5502	if s.JobId != nil && len(*s.JobId) < 1 {
5503		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
5504	}
5505
5506	if invalidParams.Len() > 0 {
5507		return invalidParams
5508	}
5509	return nil
5510}
5511
5512// SetJobId sets the JobId field's value.
5513func (s *DescribeNodeFromTemplateJobInput) SetJobId(v string) *DescribeNodeFromTemplateJobInput {
5514	s.JobId = &v
5515	return s
5516}
5517
5518type DescribeNodeFromTemplateJobOutput struct {
5519	_ struct{} `type:"structure"`
5520
5521	// When the job was created.
5522	//
5523	// CreatedTime is a required field
5524	CreatedTime *time.Time `type:"timestamp" required:"true"`
5525
5526	// The job's ID.
5527	//
5528	// JobId is a required field
5529	JobId *string `min:"1" type:"string" required:"true"`
5530
5531	// The job's tags.
5532	JobTags []*JobResourceTags `type:"list"`
5533
5534	// When the job was updated.
5535	//
5536	// LastUpdatedTime is a required field
5537	LastUpdatedTime *time.Time `type:"timestamp" required:"true"`
5538
5539	// The node's description.
5540	NodeDescription *string `type:"string"`
5541
5542	// The node's name.
5543	//
5544	// NodeName is a required field
5545	NodeName *string `min:"1" type:"string" required:"true"`
5546
5547	// The job's output package name.
5548	//
5549	// OutputPackageName is a required field
5550	OutputPackageName *string `min:"1" type:"string" required:"true"`
5551
5552	// The job's output package version.
5553	//
5554	// OutputPackageVersion is a required field
5555	OutputPackageVersion *string `min:"1" type:"string" required:"true"`
5556
5557	// The job's status.
5558	//
5559	// Status is a required field
5560	Status *string `type:"string" required:"true" enum:"NodeFromTemplateJobStatus"`
5561
5562	// The job's status message.
5563	//
5564	// StatusMessage is a required field
5565	StatusMessage *string `type:"string" required:"true"`
5566
5567	// The job's template parameters.
5568	//
5569	// TemplateParameters is a required field
5570	TemplateParameters map[string]*string `type:"map" required:"true"`
5571
5572	// The job's template type.
5573	//
5574	// TemplateType is a required field
5575	TemplateType *string `type:"string" required:"true" enum:"TemplateType"`
5576}
5577
5578// String returns the string representation.
5579//
5580// API parameter values that are decorated as "sensitive" in the API will not
5581// be included in the string output. The member name will be present, but the
5582// value will be replaced with "sensitive".
5583func (s DescribeNodeFromTemplateJobOutput) String() string {
5584	return awsutil.Prettify(s)
5585}
5586
5587// GoString returns the string representation.
5588//
5589// API parameter values that are decorated as "sensitive" in the API will not
5590// be included in the string output. The member name will be present, but the
5591// value will be replaced with "sensitive".
5592func (s DescribeNodeFromTemplateJobOutput) GoString() string {
5593	return s.String()
5594}
5595
5596// SetCreatedTime sets the CreatedTime field's value.
5597func (s *DescribeNodeFromTemplateJobOutput) SetCreatedTime(v time.Time) *DescribeNodeFromTemplateJobOutput {
5598	s.CreatedTime = &v
5599	return s
5600}
5601
5602// SetJobId sets the JobId field's value.
5603func (s *DescribeNodeFromTemplateJobOutput) SetJobId(v string) *DescribeNodeFromTemplateJobOutput {
5604	s.JobId = &v
5605	return s
5606}
5607
5608// SetJobTags sets the JobTags field's value.
5609func (s *DescribeNodeFromTemplateJobOutput) SetJobTags(v []*JobResourceTags) *DescribeNodeFromTemplateJobOutput {
5610	s.JobTags = v
5611	return s
5612}
5613
5614// SetLastUpdatedTime sets the LastUpdatedTime field's value.
5615func (s *DescribeNodeFromTemplateJobOutput) SetLastUpdatedTime(v time.Time) *DescribeNodeFromTemplateJobOutput {
5616	s.LastUpdatedTime = &v
5617	return s
5618}
5619
5620// SetNodeDescription sets the NodeDescription field's value.
5621func (s *DescribeNodeFromTemplateJobOutput) SetNodeDescription(v string) *DescribeNodeFromTemplateJobOutput {
5622	s.NodeDescription = &v
5623	return s
5624}
5625
5626// SetNodeName sets the NodeName field's value.
5627func (s *DescribeNodeFromTemplateJobOutput) SetNodeName(v string) *DescribeNodeFromTemplateJobOutput {
5628	s.NodeName = &v
5629	return s
5630}
5631
5632// SetOutputPackageName sets the OutputPackageName field's value.
5633func (s *DescribeNodeFromTemplateJobOutput) SetOutputPackageName(v string) *DescribeNodeFromTemplateJobOutput {
5634	s.OutputPackageName = &v
5635	return s
5636}
5637
5638// SetOutputPackageVersion sets the OutputPackageVersion field's value.
5639func (s *DescribeNodeFromTemplateJobOutput) SetOutputPackageVersion(v string) *DescribeNodeFromTemplateJobOutput {
5640	s.OutputPackageVersion = &v
5641	return s
5642}
5643
5644// SetStatus sets the Status field's value.
5645func (s *DescribeNodeFromTemplateJobOutput) SetStatus(v string) *DescribeNodeFromTemplateJobOutput {
5646	s.Status = &v
5647	return s
5648}
5649
5650// SetStatusMessage sets the StatusMessage field's value.
5651func (s *DescribeNodeFromTemplateJobOutput) SetStatusMessage(v string) *DescribeNodeFromTemplateJobOutput {
5652	s.StatusMessage = &v
5653	return s
5654}
5655
5656// SetTemplateParameters sets the TemplateParameters field's value.
5657func (s *DescribeNodeFromTemplateJobOutput) SetTemplateParameters(v map[string]*string) *DescribeNodeFromTemplateJobOutput {
5658	s.TemplateParameters = v
5659	return s
5660}
5661
5662// SetTemplateType sets the TemplateType field's value.
5663func (s *DescribeNodeFromTemplateJobOutput) SetTemplateType(v string) *DescribeNodeFromTemplateJobOutput {
5664	s.TemplateType = &v
5665	return s
5666}
5667
5668type DescribeNodeInput struct {
5669	_ struct{} `type:"structure" nopayload:"true"`
5670
5671	// The node's ID.
5672	//
5673	// NodeId is a required field
5674	NodeId *string `location:"uri" locationName:"NodeId" min:"1" type:"string" required:"true"`
5675
5676	// The account ID of the node's owner.
5677	OwnerAccount *string `location:"querystring" locationName:"OwnerAccount" min:"1" type:"string"`
5678}
5679
5680// String returns the string representation.
5681//
5682// API parameter values that are decorated as "sensitive" in the API will not
5683// be included in the string output. The member name will be present, but the
5684// value will be replaced with "sensitive".
5685func (s DescribeNodeInput) String() string {
5686	return awsutil.Prettify(s)
5687}
5688
5689// GoString returns the string representation.
5690//
5691// API parameter values that are decorated as "sensitive" in the API will not
5692// be included in the string output. The member name will be present, but the
5693// value will be replaced with "sensitive".
5694func (s DescribeNodeInput) GoString() string {
5695	return s.String()
5696}
5697
5698// Validate inspects the fields of the type to determine if they are valid.
5699func (s *DescribeNodeInput) Validate() error {
5700	invalidParams := request.ErrInvalidParams{Context: "DescribeNodeInput"}
5701	if s.NodeId == nil {
5702		invalidParams.Add(request.NewErrParamRequired("NodeId"))
5703	}
5704	if s.NodeId != nil && len(*s.NodeId) < 1 {
5705		invalidParams.Add(request.NewErrParamMinLen("NodeId", 1))
5706	}
5707	if s.OwnerAccount != nil && len(*s.OwnerAccount) < 1 {
5708		invalidParams.Add(request.NewErrParamMinLen("OwnerAccount", 1))
5709	}
5710
5711	if invalidParams.Len() > 0 {
5712		return invalidParams
5713	}
5714	return nil
5715}
5716
5717// SetNodeId sets the NodeId field's value.
5718func (s *DescribeNodeInput) SetNodeId(v string) *DescribeNodeInput {
5719	s.NodeId = &v
5720	return s
5721}
5722
5723// SetOwnerAccount sets the OwnerAccount field's value.
5724func (s *DescribeNodeInput) SetOwnerAccount(v string) *DescribeNodeInput {
5725	s.OwnerAccount = &v
5726	return s
5727}
5728
5729type DescribeNodeOutput struct {
5730	_ struct{} `type:"structure"`
5731
5732	// The node's asset name.
5733	AssetName *string `min:"1" type:"string"`
5734
5735	// The node's category.
5736	//
5737	// Category is a required field
5738	Category *string `type:"string" required:"true" enum:"NodeCategory"`
5739
5740	// When the node was created.
5741	//
5742	// CreatedTime is a required field
5743	CreatedTime *time.Time `type:"timestamp" required:"true"`
5744
5745	// The node's description.
5746	//
5747	// Description is a required field
5748	Description *string `type:"string" required:"true"`
5749
5750	// When the node was updated.
5751	//
5752	// LastUpdatedTime is a required field
5753	LastUpdatedTime *time.Time `type:"timestamp" required:"true"`
5754
5755	// The node's name.
5756	//
5757	// Name is a required field
5758	Name *string `min:"1" type:"string" required:"true"`
5759
5760	// The node's ID.
5761	//
5762	// NodeId is a required field
5763	NodeId *string `min:"1" type:"string" required:"true"`
5764
5765	// The node's interface.
5766	//
5767	// NodeInterface is a required field
5768	NodeInterface *NodeInterface `type:"structure" required:"true"`
5769
5770	// The account ID of the node's owner.
5771	//
5772	// OwnerAccount is a required field
5773	OwnerAccount *string `min:"1" type:"string" required:"true"`
5774
5775	// The node's ARN.
5776	PackageArn *string `min:"1" type:"string"`
5777
5778	// The node's package ID.
5779	//
5780	// PackageId is a required field
5781	PackageId *string `min:"1" type:"string" required:"true"`
5782
5783	// The node's package name.
5784	//
5785	// PackageName is a required field
5786	PackageName *string `min:"1" type:"string" required:"true"`
5787
5788	// The node's package version.
5789	//
5790	// PackageVersion is a required field
5791	PackageVersion *string `min:"1" type:"string" required:"true"`
5792
5793	// The node's patch version.
5794	//
5795	// PatchVersion is a required field
5796	PatchVersion *string `min:"1" type:"string" required:"true"`
5797}
5798
5799// String returns the string representation.
5800//
5801// API parameter values that are decorated as "sensitive" in the API will not
5802// be included in the string output. The member name will be present, but the
5803// value will be replaced with "sensitive".
5804func (s DescribeNodeOutput) String() string {
5805	return awsutil.Prettify(s)
5806}
5807
5808// GoString returns the string representation.
5809//
5810// API parameter values that are decorated as "sensitive" in the API will not
5811// be included in the string output. The member name will be present, but the
5812// value will be replaced with "sensitive".
5813func (s DescribeNodeOutput) GoString() string {
5814	return s.String()
5815}
5816
5817// SetAssetName sets the AssetName field's value.
5818func (s *DescribeNodeOutput) SetAssetName(v string) *DescribeNodeOutput {
5819	s.AssetName = &v
5820	return s
5821}
5822
5823// SetCategory sets the Category field's value.
5824func (s *DescribeNodeOutput) SetCategory(v string) *DescribeNodeOutput {
5825	s.Category = &v
5826	return s
5827}
5828
5829// SetCreatedTime sets the CreatedTime field's value.
5830func (s *DescribeNodeOutput) SetCreatedTime(v time.Time) *DescribeNodeOutput {
5831	s.CreatedTime = &v
5832	return s
5833}
5834
5835// SetDescription sets the Description field's value.
5836func (s *DescribeNodeOutput) SetDescription(v string) *DescribeNodeOutput {
5837	s.Description = &v
5838	return s
5839}
5840
5841// SetLastUpdatedTime sets the LastUpdatedTime field's value.
5842func (s *DescribeNodeOutput) SetLastUpdatedTime(v time.Time) *DescribeNodeOutput {
5843	s.LastUpdatedTime = &v
5844	return s
5845}
5846
5847// SetName sets the Name field's value.
5848func (s *DescribeNodeOutput) SetName(v string) *DescribeNodeOutput {
5849	s.Name = &v
5850	return s
5851}
5852
5853// SetNodeId sets the NodeId field's value.
5854func (s *DescribeNodeOutput) SetNodeId(v string) *DescribeNodeOutput {
5855	s.NodeId = &v
5856	return s
5857}
5858
5859// SetNodeInterface sets the NodeInterface field's value.
5860func (s *DescribeNodeOutput) SetNodeInterface(v *NodeInterface) *DescribeNodeOutput {
5861	s.NodeInterface = v
5862	return s
5863}
5864
5865// SetOwnerAccount sets the OwnerAccount field's value.
5866func (s *DescribeNodeOutput) SetOwnerAccount(v string) *DescribeNodeOutput {
5867	s.OwnerAccount = &v
5868	return s
5869}
5870
5871// SetPackageArn sets the PackageArn field's value.
5872func (s *DescribeNodeOutput) SetPackageArn(v string) *DescribeNodeOutput {
5873	s.PackageArn = &v
5874	return s
5875}
5876
5877// SetPackageId sets the PackageId field's value.
5878func (s *DescribeNodeOutput) SetPackageId(v string) *DescribeNodeOutput {
5879	s.PackageId = &v
5880	return s
5881}
5882
5883// SetPackageName sets the PackageName field's value.
5884func (s *DescribeNodeOutput) SetPackageName(v string) *DescribeNodeOutput {
5885	s.PackageName = &v
5886	return s
5887}
5888
5889// SetPackageVersion sets the PackageVersion field's value.
5890func (s *DescribeNodeOutput) SetPackageVersion(v string) *DescribeNodeOutput {
5891	s.PackageVersion = &v
5892	return s
5893}
5894
5895// SetPatchVersion sets the PatchVersion field's value.
5896func (s *DescribeNodeOutput) SetPatchVersion(v string) *DescribeNodeOutput {
5897	s.PatchVersion = &v
5898	return s
5899}
5900
5901type DescribePackageImportJobInput struct {
5902	_ struct{} `type:"structure" nopayload:"true"`
5903
5904	// The job's ID.
5905	//
5906	// JobId is a required field
5907	JobId *string `location:"uri" locationName:"JobId" min:"1" type:"string" required:"true"`
5908}
5909
5910// String returns the string representation.
5911//
5912// API parameter values that are decorated as "sensitive" in the API will not
5913// be included in the string output. The member name will be present, but the
5914// value will be replaced with "sensitive".
5915func (s DescribePackageImportJobInput) String() string {
5916	return awsutil.Prettify(s)
5917}
5918
5919// GoString returns the string representation.
5920//
5921// API parameter values that are decorated as "sensitive" in the API will not
5922// be included in the string output. The member name will be present, but the
5923// value will be replaced with "sensitive".
5924func (s DescribePackageImportJobInput) GoString() string {
5925	return s.String()
5926}
5927
5928// Validate inspects the fields of the type to determine if they are valid.
5929func (s *DescribePackageImportJobInput) Validate() error {
5930	invalidParams := request.ErrInvalidParams{Context: "DescribePackageImportJobInput"}
5931	if s.JobId == nil {
5932		invalidParams.Add(request.NewErrParamRequired("JobId"))
5933	}
5934	if s.JobId != nil && len(*s.JobId) < 1 {
5935		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
5936	}
5937
5938	if invalidParams.Len() > 0 {
5939		return invalidParams
5940	}
5941	return nil
5942}
5943
5944// SetJobId sets the JobId field's value.
5945func (s *DescribePackageImportJobInput) SetJobId(v string) *DescribePackageImportJobInput {
5946	s.JobId = &v
5947	return s
5948}
5949
5950type DescribePackageImportJobOutput struct {
5951	_ struct{} `type:"structure"`
5952
5953	// The job's client token.
5954	ClientToken *string `min:"1" type:"string"`
5955
5956	// When the job was created.
5957	//
5958	// CreatedTime is a required field
5959	CreatedTime *time.Time `type:"timestamp" required:"true"`
5960
5961	// The job's input config.
5962	//
5963	// InputConfig is a required field
5964	InputConfig *PackageImportJobInputConfig `type:"structure" required:"true"`
5965
5966	// The job's ID.
5967	//
5968	// JobId is a required field
5969	JobId *string `min:"1" type:"string" required:"true"`
5970
5971	// The job's tags.
5972	JobTags []*JobResourceTags `type:"list"`
5973
5974	// The job's type.
5975	//
5976	// JobType is a required field
5977	JobType *string `type:"string" required:"true" enum:"PackageImportJobType"`
5978
5979	// When the job was updated.
5980	//
5981	// LastUpdatedTime is a required field
5982	LastUpdatedTime *time.Time `type:"timestamp" required:"true"`
5983
5984	// The job's output.
5985	//
5986	// Output is a required field
5987	Output *PackageImportJobOutput_ `type:"structure" required:"true"`
5988
5989	// The job's output config.
5990	//
5991	// OutputConfig is a required field
5992	OutputConfig *PackageImportJobOutputConfig `type:"structure" required:"true"`
5993
5994	// The job's status.
5995	//
5996	// Status is a required field
5997	Status *string `type:"string" required:"true" enum:"PackageImportJobStatus"`
5998
5999	// The job's status message.
6000	//
6001	// StatusMessage is a required field
6002	StatusMessage *string `type:"string" required:"true"`
6003}
6004
6005// String returns the string representation.
6006//
6007// API parameter values that are decorated as "sensitive" in the API will not
6008// be included in the string output. The member name will be present, but the
6009// value will be replaced with "sensitive".
6010func (s DescribePackageImportJobOutput) String() string {
6011	return awsutil.Prettify(s)
6012}
6013
6014// GoString returns the string representation.
6015//
6016// API parameter values that are decorated as "sensitive" in the API will not
6017// be included in the string output. The member name will be present, but the
6018// value will be replaced with "sensitive".
6019func (s DescribePackageImportJobOutput) GoString() string {
6020	return s.String()
6021}
6022
6023// SetClientToken sets the ClientToken field's value.
6024func (s *DescribePackageImportJobOutput) SetClientToken(v string) *DescribePackageImportJobOutput {
6025	s.ClientToken = &v
6026	return s
6027}
6028
6029// SetCreatedTime sets the CreatedTime field's value.
6030func (s *DescribePackageImportJobOutput) SetCreatedTime(v time.Time) *DescribePackageImportJobOutput {
6031	s.CreatedTime = &v
6032	return s
6033}
6034
6035// SetInputConfig sets the InputConfig field's value.
6036func (s *DescribePackageImportJobOutput) SetInputConfig(v *PackageImportJobInputConfig) *DescribePackageImportJobOutput {
6037	s.InputConfig = v
6038	return s
6039}
6040
6041// SetJobId sets the JobId field's value.
6042func (s *DescribePackageImportJobOutput) SetJobId(v string) *DescribePackageImportJobOutput {
6043	s.JobId = &v
6044	return s
6045}
6046
6047// SetJobTags sets the JobTags field's value.
6048func (s *DescribePackageImportJobOutput) SetJobTags(v []*JobResourceTags) *DescribePackageImportJobOutput {
6049	s.JobTags = v
6050	return s
6051}
6052
6053// SetJobType sets the JobType field's value.
6054func (s *DescribePackageImportJobOutput) SetJobType(v string) *DescribePackageImportJobOutput {
6055	s.JobType = &v
6056	return s
6057}
6058
6059// SetLastUpdatedTime sets the LastUpdatedTime field's value.
6060func (s *DescribePackageImportJobOutput) SetLastUpdatedTime(v time.Time) *DescribePackageImportJobOutput {
6061	s.LastUpdatedTime = &v
6062	return s
6063}
6064
6065// SetOutput sets the Output field's value.
6066func (s *DescribePackageImportJobOutput) SetOutput(v *PackageImportJobOutput_) *DescribePackageImportJobOutput {
6067	s.Output = v
6068	return s
6069}
6070
6071// SetOutputConfig sets the OutputConfig field's value.
6072func (s *DescribePackageImportJobOutput) SetOutputConfig(v *PackageImportJobOutputConfig) *DescribePackageImportJobOutput {
6073	s.OutputConfig = v
6074	return s
6075}
6076
6077// SetStatus sets the Status field's value.
6078func (s *DescribePackageImportJobOutput) SetStatus(v string) *DescribePackageImportJobOutput {
6079	s.Status = &v
6080	return s
6081}
6082
6083// SetStatusMessage sets the StatusMessage field's value.
6084func (s *DescribePackageImportJobOutput) SetStatusMessage(v string) *DescribePackageImportJobOutput {
6085	s.StatusMessage = &v
6086	return s
6087}
6088
6089type DescribePackageInput struct {
6090	_ struct{} `type:"structure" nopayload:"true"`
6091
6092	// The package's ID.
6093	//
6094	// PackageId is a required field
6095	PackageId *string `location:"uri" locationName:"PackageId" min:"1" type:"string" required:"true"`
6096}
6097
6098// String returns the string representation.
6099//
6100// API parameter values that are decorated as "sensitive" in the API will not
6101// be included in the string output. The member name will be present, but the
6102// value will be replaced with "sensitive".
6103func (s DescribePackageInput) String() string {
6104	return awsutil.Prettify(s)
6105}
6106
6107// GoString returns the string representation.
6108//
6109// API parameter values that are decorated as "sensitive" in the API will not
6110// be included in the string output. The member name will be present, but the
6111// value will be replaced with "sensitive".
6112func (s DescribePackageInput) GoString() string {
6113	return s.String()
6114}
6115
6116// Validate inspects the fields of the type to determine if they are valid.
6117func (s *DescribePackageInput) Validate() error {
6118	invalidParams := request.ErrInvalidParams{Context: "DescribePackageInput"}
6119	if s.PackageId == nil {
6120		invalidParams.Add(request.NewErrParamRequired("PackageId"))
6121	}
6122	if s.PackageId != nil && len(*s.PackageId) < 1 {
6123		invalidParams.Add(request.NewErrParamMinLen("PackageId", 1))
6124	}
6125
6126	if invalidParams.Len() > 0 {
6127		return invalidParams
6128	}
6129	return nil
6130}
6131
6132// SetPackageId sets the PackageId field's value.
6133func (s *DescribePackageInput) SetPackageId(v string) *DescribePackageInput {
6134	s.PackageId = &v
6135	return s
6136}
6137
6138type DescribePackageOutput struct {
6139	_ struct{} `type:"structure"`
6140
6141	// The package's ARN.
6142	//
6143	// Arn is a required field
6144	Arn *string `min:"1" type:"string" required:"true"`
6145
6146	// When the package was created.
6147	//
6148	// CreatedTime is a required field
6149	CreatedTime *time.Time `type:"timestamp" required:"true"`
6150
6151	// The package's ID.
6152	//
6153	// PackageId is a required field
6154	PackageId *string `min:"1" type:"string" required:"true"`
6155
6156	// The package's name.
6157	//
6158	// PackageName is a required field
6159	PackageName *string `min:"1" type:"string" required:"true"`
6160
6161	// ARNs of accounts that have read access to the package.
6162	ReadAccessPrincipalArns []*string `type:"list"`
6163
6164	// The package's storage location.
6165	//
6166	// StorageLocation is a required field
6167	StorageLocation *StorageLocation `type:"structure" required:"true"`
6168
6169	// The package's tags.
6170	//
6171	// Tags is a required field
6172	Tags map[string]*string `type:"map" required:"true"`
6173
6174	// ARNs of accounts that have write access to the package.
6175	WriteAccessPrincipalArns []*string `type:"list"`
6176}
6177
6178// String returns the string representation.
6179//
6180// API parameter values that are decorated as "sensitive" in the API will not
6181// be included in the string output. The member name will be present, but the
6182// value will be replaced with "sensitive".
6183func (s DescribePackageOutput) String() string {
6184	return awsutil.Prettify(s)
6185}
6186
6187// GoString returns the string representation.
6188//
6189// API parameter values that are decorated as "sensitive" in the API will not
6190// be included in the string output. The member name will be present, but the
6191// value will be replaced with "sensitive".
6192func (s DescribePackageOutput) GoString() string {
6193	return s.String()
6194}
6195
6196// SetArn sets the Arn field's value.
6197func (s *DescribePackageOutput) SetArn(v string) *DescribePackageOutput {
6198	s.Arn = &v
6199	return s
6200}
6201
6202// SetCreatedTime sets the CreatedTime field's value.
6203func (s *DescribePackageOutput) SetCreatedTime(v time.Time) *DescribePackageOutput {
6204	s.CreatedTime = &v
6205	return s
6206}
6207
6208// SetPackageId sets the PackageId field's value.
6209func (s *DescribePackageOutput) SetPackageId(v string) *DescribePackageOutput {
6210	s.PackageId = &v
6211	return s
6212}
6213
6214// SetPackageName sets the PackageName field's value.
6215func (s *DescribePackageOutput) SetPackageName(v string) *DescribePackageOutput {
6216	s.PackageName = &v
6217	return s
6218}
6219
6220// SetReadAccessPrincipalArns sets the ReadAccessPrincipalArns field's value.
6221func (s *DescribePackageOutput) SetReadAccessPrincipalArns(v []*string) *DescribePackageOutput {
6222	s.ReadAccessPrincipalArns = v
6223	return s
6224}
6225
6226// SetStorageLocation sets the StorageLocation field's value.
6227func (s *DescribePackageOutput) SetStorageLocation(v *StorageLocation) *DescribePackageOutput {
6228	s.StorageLocation = v
6229	return s
6230}
6231
6232// SetTags sets the Tags field's value.
6233func (s *DescribePackageOutput) SetTags(v map[string]*string) *DescribePackageOutput {
6234	s.Tags = v
6235	return s
6236}
6237
6238// SetWriteAccessPrincipalArns sets the WriteAccessPrincipalArns field's value.
6239func (s *DescribePackageOutput) SetWriteAccessPrincipalArns(v []*string) *DescribePackageOutput {
6240	s.WriteAccessPrincipalArns = v
6241	return s
6242}
6243
6244type DescribePackageVersionInput struct {
6245	_ struct{} `type:"structure" nopayload:"true"`
6246
6247	// The version's owner account.
6248	OwnerAccount *string `location:"querystring" locationName:"OwnerAccount" min:"1" type:"string"`
6249
6250	// The version's ID.
6251	//
6252	// PackageId is a required field
6253	PackageId *string `location:"uri" locationName:"PackageId" min:"1" type:"string" required:"true"`
6254
6255	// The version's version.
6256	//
6257	// PackageVersion is a required field
6258	PackageVersion *string `location:"uri" locationName:"PackageVersion" min:"1" type:"string" required:"true"`
6259
6260	// The version's patch version.
6261	PatchVersion *string `location:"querystring" locationName:"PatchVersion" min:"1" type:"string"`
6262}
6263
6264// String returns the string representation.
6265//
6266// API parameter values that are decorated as "sensitive" in the API will not
6267// be included in the string output. The member name will be present, but the
6268// value will be replaced with "sensitive".
6269func (s DescribePackageVersionInput) String() string {
6270	return awsutil.Prettify(s)
6271}
6272
6273// GoString returns the string representation.
6274//
6275// API parameter values that are decorated as "sensitive" in the API will not
6276// be included in the string output. The member name will be present, but the
6277// value will be replaced with "sensitive".
6278func (s DescribePackageVersionInput) GoString() string {
6279	return s.String()
6280}
6281
6282// Validate inspects the fields of the type to determine if they are valid.
6283func (s *DescribePackageVersionInput) Validate() error {
6284	invalidParams := request.ErrInvalidParams{Context: "DescribePackageVersionInput"}
6285	if s.OwnerAccount != nil && len(*s.OwnerAccount) < 1 {
6286		invalidParams.Add(request.NewErrParamMinLen("OwnerAccount", 1))
6287	}
6288	if s.PackageId == nil {
6289		invalidParams.Add(request.NewErrParamRequired("PackageId"))
6290	}
6291	if s.PackageId != nil && len(*s.PackageId) < 1 {
6292		invalidParams.Add(request.NewErrParamMinLen("PackageId", 1))
6293	}
6294	if s.PackageVersion == nil {
6295		invalidParams.Add(request.NewErrParamRequired("PackageVersion"))
6296	}
6297	if s.PackageVersion != nil && len(*s.PackageVersion) < 1 {
6298		invalidParams.Add(request.NewErrParamMinLen("PackageVersion", 1))
6299	}
6300	if s.PatchVersion != nil && len(*s.PatchVersion) < 1 {
6301		invalidParams.Add(request.NewErrParamMinLen("PatchVersion", 1))
6302	}
6303
6304	if invalidParams.Len() > 0 {
6305		return invalidParams
6306	}
6307	return nil
6308}
6309
6310// SetOwnerAccount sets the OwnerAccount field's value.
6311func (s *DescribePackageVersionInput) SetOwnerAccount(v string) *DescribePackageVersionInput {
6312	s.OwnerAccount = &v
6313	return s
6314}
6315
6316// SetPackageId sets the PackageId field's value.
6317func (s *DescribePackageVersionInput) SetPackageId(v string) *DescribePackageVersionInput {
6318	s.PackageId = &v
6319	return s
6320}
6321
6322// SetPackageVersion sets the PackageVersion field's value.
6323func (s *DescribePackageVersionInput) SetPackageVersion(v string) *DescribePackageVersionInput {
6324	s.PackageVersion = &v
6325	return s
6326}
6327
6328// SetPatchVersion sets the PatchVersion field's value.
6329func (s *DescribePackageVersionInput) SetPatchVersion(v string) *DescribePackageVersionInput {
6330	s.PatchVersion = &v
6331	return s
6332}
6333
6334type DescribePackageVersionOutput struct {
6335	_ struct{} `type:"structure"`
6336
6337	// Whether the version is the latest available.
6338	//
6339	// IsLatestPatch is a required field
6340	IsLatestPatch *bool `type:"boolean" required:"true"`
6341
6342	// The account ID of the version's owner.
6343	OwnerAccount *string `min:"1" type:"string"`
6344
6345	// The ARN of the package.
6346	PackageArn *string `min:"1" type:"string"`
6347
6348	// The version's ID.
6349	//
6350	// PackageId is a required field
6351	PackageId *string `min:"1" type:"string" required:"true"`
6352
6353	// The version's name.
6354	//
6355	// PackageName is a required field
6356	PackageName *string `min:"1" type:"string" required:"true"`
6357
6358	// The version's version.
6359	//
6360	// PackageVersion is a required field
6361	PackageVersion *string `min:"1" type:"string" required:"true"`
6362
6363	// The version's patch version.
6364	//
6365	// PatchVersion is a required field
6366	PatchVersion *string `min:"1" type:"string" required:"true"`
6367
6368	// The version's registered time.
6369	RegisteredTime *time.Time `type:"timestamp"`
6370
6371	// The version's status.
6372	//
6373	// Status is a required field
6374	Status *string `type:"string" required:"true" enum:"PackageVersionStatus"`
6375
6376	// The version's status description.
6377	StatusDescription *string `min:"1" type:"string"`
6378}
6379
6380// String returns the string representation.
6381//
6382// API parameter values that are decorated as "sensitive" in the API will not
6383// be included in the string output. The member name will be present, but the
6384// value will be replaced with "sensitive".
6385func (s DescribePackageVersionOutput) String() string {
6386	return awsutil.Prettify(s)
6387}
6388
6389// GoString returns the string representation.
6390//
6391// API parameter values that are decorated as "sensitive" in the API will not
6392// be included in the string output. The member name will be present, but the
6393// value will be replaced with "sensitive".
6394func (s DescribePackageVersionOutput) GoString() string {
6395	return s.String()
6396}
6397
6398// SetIsLatestPatch sets the IsLatestPatch field's value.
6399func (s *DescribePackageVersionOutput) SetIsLatestPatch(v bool) *DescribePackageVersionOutput {
6400	s.IsLatestPatch = &v
6401	return s
6402}
6403
6404// SetOwnerAccount sets the OwnerAccount field's value.
6405func (s *DescribePackageVersionOutput) SetOwnerAccount(v string) *DescribePackageVersionOutput {
6406	s.OwnerAccount = &v
6407	return s
6408}
6409
6410// SetPackageArn sets the PackageArn field's value.
6411func (s *DescribePackageVersionOutput) SetPackageArn(v string) *DescribePackageVersionOutput {
6412	s.PackageArn = &v
6413	return s
6414}
6415
6416// SetPackageId sets the PackageId field's value.
6417func (s *DescribePackageVersionOutput) SetPackageId(v string) *DescribePackageVersionOutput {
6418	s.PackageId = &v
6419	return s
6420}
6421
6422// SetPackageName sets the PackageName field's value.
6423func (s *DescribePackageVersionOutput) SetPackageName(v string) *DescribePackageVersionOutput {
6424	s.PackageName = &v
6425	return s
6426}
6427
6428// SetPackageVersion sets the PackageVersion field's value.
6429func (s *DescribePackageVersionOutput) SetPackageVersion(v string) *DescribePackageVersionOutput {
6430	s.PackageVersion = &v
6431	return s
6432}
6433
6434// SetPatchVersion sets the PatchVersion field's value.
6435func (s *DescribePackageVersionOutput) SetPatchVersion(v string) *DescribePackageVersionOutput {
6436	s.PatchVersion = &v
6437	return s
6438}
6439
6440// SetRegisteredTime sets the RegisteredTime field's value.
6441func (s *DescribePackageVersionOutput) SetRegisteredTime(v time.Time) *DescribePackageVersionOutput {
6442	s.RegisteredTime = &v
6443	return s
6444}
6445
6446// SetStatus sets the Status field's value.
6447func (s *DescribePackageVersionOutput) SetStatus(v string) *DescribePackageVersionOutput {
6448	s.Status = &v
6449	return s
6450}
6451
6452// SetStatusDescription sets the StatusDescription field's value.
6453func (s *DescribePackageVersionOutput) SetStatusDescription(v string) *DescribePackageVersionOutput {
6454	s.StatusDescription = &v
6455	return s
6456}
6457
6458// A device.
6459type Device struct {
6460	_ struct{} `type:"structure"`
6461
6462	// When the device was created.
6463	CreatedTime *time.Time `type:"timestamp"`
6464
6465	// The device's ID.
6466	DeviceId *string `min:"1" type:"string"`
6467
6468	// When the device was updated.
6469	LastUpdatedTime *time.Time `type:"timestamp"`
6470
6471	// The device's lease expiration time.
6472	LeaseExpirationTime *time.Time `type:"timestamp"`
6473
6474	// The device's name.
6475	Name *string `min:"1" type:"string"`
6476
6477	// The device's provisioning status.
6478	ProvisioningStatus *string `type:"string" enum:"DeviceStatus"`
6479}
6480
6481// String returns the string representation.
6482//
6483// API parameter values that are decorated as "sensitive" in the API will not
6484// be included in the string output. The member name will be present, but the
6485// value will be replaced with "sensitive".
6486func (s Device) String() string {
6487	return awsutil.Prettify(s)
6488}
6489
6490// GoString returns the string representation.
6491//
6492// API parameter values that are decorated as "sensitive" in the API will not
6493// be included in the string output. The member name will be present, but the
6494// value will be replaced with "sensitive".
6495func (s Device) GoString() string {
6496	return s.String()
6497}
6498
6499// SetCreatedTime sets the CreatedTime field's value.
6500func (s *Device) SetCreatedTime(v time.Time) *Device {
6501	s.CreatedTime = &v
6502	return s
6503}
6504
6505// SetDeviceId sets the DeviceId field's value.
6506func (s *Device) SetDeviceId(v string) *Device {
6507	s.DeviceId = &v
6508	return s
6509}
6510
6511// SetLastUpdatedTime sets the LastUpdatedTime field's value.
6512func (s *Device) SetLastUpdatedTime(v time.Time) *Device {
6513	s.LastUpdatedTime = &v
6514	return s
6515}
6516
6517// SetLeaseExpirationTime sets the LeaseExpirationTime field's value.
6518func (s *Device) SetLeaseExpirationTime(v time.Time) *Device {
6519	s.LeaseExpirationTime = &v
6520	return s
6521}
6522
6523// SetName sets the Name field's value.
6524func (s *Device) SetName(v string) *Device {
6525	s.Name = &v
6526	return s
6527}
6528
6529// SetProvisioningStatus sets the ProvisioningStatus field's value.
6530func (s *Device) SetProvisioningStatus(v string) *Device {
6531	s.ProvisioningStatus = &v
6532	return s
6533}
6534
6535// A job that runs on a device.
6536type DeviceJob struct {
6537	_ struct{} `type:"structure"`
6538
6539	// When the job was created.
6540	CreatedTime *time.Time `type:"timestamp"`
6541
6542	// The ID of the target device.
6543	DeviceId *string `min:"1" type:"string"`
6544
6545	// The name of the target device
6546	DeviceName *string `min:"1" type:"string"`
6547
6548	// The job's ID.
6549	JobId *string `min:"1" type:"string"`
6550}
6551
6552// String returns the string representation.
6553//
6554// API parameter values that are decorated as "sensitive" in the API will not
6555// be included in the string output. The member name will be present, but the
6556// value will be replaced with "sensitive".
6557func (s DeviceJob) String() string {
6558	return awsutil.Prettify(s)
6559}
6560
6561// GoString returns the string representation.
6562//
6563// API parameter values that are decorated as "sensitive" in the API will not
6564// be included in the string output. The member name will be present, but the
6565// value will be replaced with "sensitive".
6566func (s DeviceJob) GoString() string {
6567	return s.String()
6568}
6569
6570// SetCreatedTime sets the CreatedTime field's value.
6571func (s *DeviceJob) SetCreatedTime(v time.Time) *DeviceJob {
6572	s.CreatedTime = &v
6573	return s
6574}
6575
6576// SetDeviceId sets the DeviceId field's value.
6577func (s *DeviceJob) SetDeviceId(v string) *DeviceJob {
6578	s.DeviceId = &v
6579	return s
6580}
6581
6582// SetDeviceName sets the DeviceName field's value.
6583func (s *DeviceJob) SetDeviceName(v string) *DeviceJob {
6584	s.DeviceName = &v
6585	return s
6586}
6587
6588// SetJobId sets the JobId field's value.
6589func (s *DeviceJob) SetJobId(v string) *DeviceJob {
6590	s.JobId = &v
6591	return s
6592}
6593
6594// A job's configuration.
6595type DeviceJobConfig struct {
6596	_ struct{} `type:"structure"`
6597
6598	// A configuration for an over-the-air (OTA) upgrade. Required for OTA jobs.
6599	OTAJobConfig *OTAJobConfig `type:"structure"`
6600}
6601
6602// String returns the string representation.
6603//
6604// API parameter values that are decorated as "sensitive" in the API will not
6605// be included in the string output. The member name will be present, but the
6606// value will be replaced with "sensitive".
6607func (s DeviceJobConfig) String() string {
6608	return awsutil.Prettify(s)
6609}
6610
6611// GoString returns the string representation.
6612//
6613// API parameter values that are decorated as "sensitive" in the API will not
6614// be included in the string output. The member name will be present, but the
6615// value will be replaced with "sensitive".
6616func (s DeviceJobConfig) GoString() string {
6617	return s.String()
6618}
6619
6620// Validate inspects the fields of the type to determine if they are valid.
6621func (s *DeviceJobConfig) Validate() error {
6622	invalidParams := request.ErrInvalidParams{Context: "DeviceJobConfig"}
6623	if s.OTAJobConfig != nil {
6624		if err := s.OTAJobConfig.Validate(); err != nil {
6625			invalidParams.AddNested("OTAJobConfig", err.(request.ErrInvalidParams))
6626		}
6627	}
6628
6629	if invalidParams.Len() > 0 {
6630		return invalidParams
6631	}
6632	return nil
6633}
6634
6635// SetOTAJobConfig sets the OTAJobConfig field's value.
6636func (s *DeviceJobConfig) SetOTAJobConfig(v *OTAJobConfig) *DeviceJobConfig {
6637	s.OTAJobConfig = v
6638	return s
6639}
6640
6641// A device's network configuration.
6642type EthernetPayload struct {
6643	_ struct{} `type:"structure"`
6644
6645	// How the device gets an IP address.
6646	//
6647	// ConnectionType is a required field
6648	ConnectionType *string `type:"string" required:"true" enum:"ConnectionType"`
6649
6650	// Network configuration for a static IP connection.
6651	StaticIpConnectionInfo *StaticIpConnectionInfo `type:"structure"`
6652}
6653
6654// String returns the string representation.
6655//
6656// API parameter values that are decorated as "sensitive" in the API will not
6657// be included in the string output. The member name will be present, but the
6658// value will be replaced with "sensitive".
6659func (s EthernetPayload) String() string {
6660	return awsutil.Prettify(s)
6661}
6662
6663// GoString returns the string representation.
6664//
6665// API parameter values that are decorated as "sensitive" in the API will not
6666// be included in the string output. The member name will be present, but the
6667// value will be replaced with "sensitive".
6668func (s EthernetPayload) GoString() string {
6669	return s.String()
6670}
6671
6672// Validate inspects the fields of the type to determine if they are valid.
6673func (s *EthernetPayload) Validate() error {
6674	invalidParams := request.ErrInvalidParams{Context: "EthernetPayload"}
6675	if s.ConnectionType == nil {
6676		invalidParams.Add(request.NewErrParamRequired("ConnectionType"))
6677	}
6678	if s.StaticIpConnectionInfo != nil {
6679		if err := s.StaticIpConnectionInfo.Validate(); err != nil {
6680			invalidParams.AddNested("StaticIpConnectionInfo", err.(request.ErrInvalidParams))
6681		}
6682	}
6683
6684	if invalidParams.Len() > 0 {
6685		return invalidParams
6686	}
6687	return nil
6688}
6689
6690// SetConnectionType sets the ConnectionType field's value.
6691func (s *EthernetPayload) SetConnectionType(v string) *EthernetPayload {
6692	s.ConnectionType = &v
6693	return s
6694}
6695
6696// SetStaticIpConnectionInfo sets the StaticIpConnectionInfo field's value.
6697func (s *EthernetPayload) SetStaticIpConnectionInfo(v *StaticIpConnectionInfo) *EthernetPayload {
6698	s.StaticIpConnectionInfo = v
6699	return s
6700}
6701
6702// A device's Ethernet status.
6703type EthernetStatus struct {
6704	_ struct{} `type:"structure"`
6705
6706	// The device's connection status.
6707	ConnectionStatus *string `type:"string" enum:"NetworkConnectionStatus"`
6708
6709	// The device's physical address.
6710	HwAddress *string `min:"1" type:"string"`
6711
6712	// The device's IP address.
6713	IpAddress *string `min:"1" type:"string"`
6714}
6715
6716// String returns the string representation.
6717//
6718// API parameter values that are decorated as "sensitive" in the API will not
6719// be included in the string output. The member name will be present, but the
6720// value will be replaced with "sensitive".
6721func (s EthernetStatus) String() string {
6722	return awsutil.Prettify(s)
6723}
6724
6725// GoString returns the string representation.
6726//
6727// API parameter values that are decorated as "sensitive" in the API will not
6728// be included in the string output. The member name will be present, but the
6729// value will be replaced with "sensitive".
6730func (s EthernetStatus) GoString() string {
6731	return s.String()
6732}
6733
6734// SetConnectionStatus sets the ConnectionStatus field's value.
6735func (s *EthernetStatus) SetConnectionStatus(v string) *EthernetStatus {
6736	s.ConnectionStatus = &v
6737	return s
6738}
6739
6740// SetHwAddress sets the HwAddress field's value.
6741func (s *EthernetStatus) SetHwAddress(v string) *EthernetStatus {
6742	s.HwAddress = &v
6743	return s
6744}
6745
6746// SetIpAddress sets the IpAddress field's value.
6747func (s *EthernetStatus) SetIpAddress(v string) *EthernetStatus {
6748	s.IpAddress = &v
6749	return s
6750}
6751
6752// An internal error occurred.
6753type InternalServerException struct {
6754	_            struct{}                  `type:"structure"`
6755	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
6756
6757	Message_ *string `locationName:"Message" type:"string"`
6758
6759	// The number of seconds a client should wait before retrying the call.
6760	RetryAfterSeconds *int64 `location:"header" locationName:"Retry-After" type:"integer"`
6761}
6762
6763// String returns the string representation.
6764//
6765// API parameter values that are decorated as "sensitive" in the API will not
6766// be included in the string output. The member name will be present, but the
6767// value will be replaced with "sensitive".
6768func (s InternalServerException) String() string {
6769	return awsutil.Prettify(s)
6770}
6771
6772// GoString returns the string representation.
6773//
6774// API parameter values that are decorated as "sensitive" in the API will not
6775// be included in the string output. The member name will be present, but the
6776// value will be replaced with "sensitive".
6777func (s InternalServerException) GoString() string {
6778	return s.String()
6779}
6780
6781func newErrorInternalServerException(v protocol.ResponseMetadata) error {
6782	return &InternalServerException{
6783		RespMetadata: v,
6784	}
6785}
6786
6787// Code returns the exception type name.
6788func (s *InternalServerException) Code() string {
6789	return "InternalServerException"
6790}
6791
6792// Message returns the exception's message.
6793func (s *InternalServerException) Message() string {
6794	if s.Message_ != nil {
6795		return *s.Message_
6796	}
6797	return ""
6798}
6799
6800// OrigErr always returns nil, satisfies awserr.Error interface.
6801func (s *InternalServerException) OrigErr() error {
6802	return nil
6803}
6804
6805func (s *InternalServerException) Error() string {
6806	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
6807}
6808
6809// Status code returns the HTTP status code for the request's response error.
6810func (s *InternalServerException) StatusCode() int {
6811	return s.RespMetadata.StatusCode
6812}
6813
6814// RequestID returns the service's response RequestID for request.
6815func (s *InternalServerException) RequestID() string {
6816	return s.RespMetadata.RequestID
6817}
6818
6819// A job for a device.
6820type Job struct {
6821	_ struct{} `type:"structure"`
6822
6823	// The target device's ID.
6824	DeviceId *string `min:"1" type:"string"`
6825
6826	// The job's ID.
6827	JobId *string `min:"1" type:"string"`
6828}
6829
6830// String returns the string representation.
6831//
6832// API parameter values that are decorated as "sensitive" in the API will not
6833// be included in the string output. The member name will be present, but the
6834// value will be replaced with "sensitive".
6835func (s Job) String() string {
6836	return awsutil.Prettify(s)
6837}
6838
6839// GoString returns the string representation.
6840//
6841// API parameter values that are decorated as "sensitive" in the API will not
6842// be included in the string output. The member name will be present, but the
6843// value will be replaced with "sensitive".
6844func (s Job) GoString() string {
6845	return s.String()
6846}
6847
6848// SetDeviceId sets the DeviceId field's value.
6849func (s *Job) SetDeviceId(v string) *Job {
6850	s.DeviceId = &v
6851	return s
6852}
6853
6854// SetJobId sets the JobId field's value.
6855func (s *Job) SetJobId(v string) *Job {
6856	s.JobId = &v
6857	return s
6858}
6859
6860// Tags for a job.
6861type JobResourceTags struct {
6862	_ struct{} `type:"structure"`
6863
6864	// The job's type.
6865	//
6866	// ResourceType is a required field
6867	ResourceType *string `type:"string" required:"true" enum:"JobResourceType"`
6868
6869	// The job's tags.
6870	//
6871	// Tags is a required field
6872	Tags map[string]*string `type:"map" required:"true"`
6873}
6874
6875// String returns the string representation.
6876//
6877// API parameter values that are decorated as "sensitive" in the API will not
6878// be included in the string output. The member name will be present, but the
6879// value will be replaced with "sensitive".
6880func (s JobResourceTags) String() string {
6881	return awsutil.Prettify(s)
6882}
6883
6884// GoString returns the string representation.
6885//
6886// API parameter values that are decorated as "sensitive" in the API will not
6887// be included in the string output. The member name will be present, but the
6888// value will be replaced with "sensitive".
6889func (s JobResourceTags) GoString() string {
6890	return s.String()
6891}
6892
6893// Validate inspects the fields of the type to determine if they are valid.
6894func (s *JobResourceTags) Validate() error {
6895	invalidParams := request.ErrInvalidParams{Context: "JobResourceTags"}
6896	if s.ResourceType == nil {
6897		invalidParams.Add(request.NewErrParamRequired("ResourceType"))
6898	}
6899	if s.Tags == nil {
6900		invalidParams.Add(request.NewErrParamRequired("Tags"))
6901	}
6902
6903	if invalidParams.Len() > 0 {
6904		return invalidParams
6905	}
6906	return nil
6907}
6908
6909// SetResourceType sets the ResourceType field's value.
6910func (s *JobResourceTags) SetResourceType(v string) *JobResourceTags {
6911	s.ResourceType = &v
6912	return s
6913}
6914
6915// SetTags sets the Tags field's value.
6916func (s *JobResourceTags) SetTags(v map[string]*string) *JobResourceTags {
6917	s.Tags = v
6918	return s
6919}
6920
6921type ListApplicationInstanceDependenciesInput struct {
6922	_ struct{} `type:"structure" nopayload:"true"`
6923
6924	// The application instance's ID.
6925	//
6926	// ApplicationInstanceId is a required field
6927	ApplicationInstanceId *string `location:"uri" locationName:"applicationInstanceId" min:"1" type:"string" required:"true"`
6928
6929	// The maximum number of application instance dependencies to return in one
6930	// page of results.
6931	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
6932
6933	// Specify the pagination token from a previous request to retrieve the next
6934	// page of results.
6935	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
6936}
6937
6938// String returns the string representation.
6939//
6940// API parameter values that are decorated as "sensitive" in the API will not
6941// be included in the string output. The member name will be present, but the
6942// value will be replaced with "sensitive".
6943func (s ListApplicationInstanceDependenciesInput) String() string {
6944	return awsutil.Prettify(s)
6945}
6946
6947// GoString returns the string representation.
6948//
6949// API parameter values that are decorated as "sensitive" in the API will not
6950// be included in the string output. The member name will be present, but the
6951// value will be replaced with "sensitive".
6952func (s ListApplicationInstanceDependenciesInput) GoString() string {
6953	return s.String()
6954}
6955
6956// Validate inspects the fields of the type to determine if they are valid.
6957func (s *ListApplicationInstanceDependenciesInput) Validate() error {
6958	invalidParams := request.ErrInvalidParams{Context: "ListApplicationInstanceDependenciesInput"}
6959	if s.ApplicationInstanceId == nil {
6960		invalidParams.Add(request.NewErrParamRequired("ApplicationInstanceId"))
6961	}
6962	if s.ApplicationInstanceId != nil && len(*s.ApplicationInstanceId) < 1 {
6963		invalidParams.Add(request.NewErrParamMinLen("ApplicationInstanceId", 1))
6964	}
6965	if s.NextToken != nil && len(*s.NextToken) < 1 {
6966		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
6967	}
6968
6969	if invalidParams.Len() > 0 {
6970		return invalidParams
6971	}
6972	return nil
6973}
6974
6975// SetApplicationInstanceId sets the ApplicationInstanceId field's value.
6976func (s *ListApplicationInstanceDependenciesInput) SetApplicationInstanceId(v string) *ListApplicationInstanceDependenciesInput {
6977	s.ApplicationInstanceId = &v
6978	return s
6979}
6980
6981// SetMaxResults sets the MaxResults field's value.
6982func (s *ListApplicationInstanceDependenciesInput) SetMaxResults(v int64) *ListApplicationInstanceDependenciesInput {
6983	s.MaxResults = &v
6984	return s
6985}
6986
6987// SetNextToken sets the NextToken field's value.
6988func (s *ListApplicationInstanceDependenciesInput) SetNextToken(v string) *ListApplicationInstanceDependenciesInput {
6989	s.NextToken = &v
6990	return s
6991}
6992
6993type ListApplicationInstanceDependenciesOutput struct {
6994	_ struct{} `type:"structure"`
6995
6996	// A pagination token that's included if more results are available.
6997	NextToken *string `min:"1" type:"string"`
6998
6999	// A list of package objects.
7000	PackageObjects []*PackageObject `type:"list"`
7001}
7002
7003// String returns the string representation.
7004//
7005// API parameter values that are decorated as "sensitive" in the API will not
7006// be included in the string output. The member name will be present, but the
7007// value will be replaced with "sensitive".
7008func (s ListApplicationInstanceDependenciesOutput) String() string {
7009	return awsutil.Prettify(s)
7010}
7011
7012// GoString returns the string representation.
7013//
7014// API parameter values that are decorated as "sensitive" in the API will not
7015// be included in the string output. The member name will be present, but the
7016// value will be replaced with "sensitive".
7017func (s ListApplicationInstanceDependenciesOutput) GoString() string {
7018	return s.String()
7019}
7020
7021// SetNextToken sets the NextToken field's value.
7022func (s *ListApplicationInstanceDependenciesOutput) SetNextToken(v string) *ListApplicationInstanceDependenciesOutput {
7023	s.NextToken = &v
7024	return s
7025}
7026
7027// SetPackageObjects sets the PackageObjects field's value.
7028func (s *ListApplicationInstanceDependenciesOutput) SetPackageObjects(v []*PackageObject) *ListApplicationInstanceDependenciesOutput {
7029	s.PackageObjects = v
7030	return s
7031}
7032
7033type ListApplicationInstanceNodeInstancesInput struct {
7034	_ struct{} `type:"structure" nopayload:"true"`
7035
7036	// The node instances' application instance ID.
7037	//
7038	// ApplicationInstanceId is a required field
7039	ApplicationInstanceId *string `location:"uri" locationName:"applicationInstanceId" min:"1" type:"string" required:"true"`
7040
7041	// The maximum number of node instances to return in one page of results.
7042	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
7043
7044	// Specify the pagination token from a previous request to retrieve the next
7045	// page of results.
7046	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
7047}
7048
7049// String returns the string representation.
7050//
7051// API parameter values that are decorated as "sensitive" in the API will not
7052// be included in the string output. The member name will be present, but the
7053// value will be replaced with "sensitive".
7054func (s ListApplicationInstanceNodeInstancesInput) String() string {
7055	return awsutil.Prettify(s)
7056}
7057
7058// GoString returns the string representation.
7059//
7060// API parameter values that are decorated as "sensitive" in the API will not
7061// be included in the string output. The member name will be present, but the
7062// value will be replaced with "sensitive".
7063func (s ListApplicationInstanceNodeInstancesInput) GoString() string {
7064	return s.String()
7065}
7066
7067// Validate inspects the fields of the type to determine if they are valid.
7068func (s *ListApplicationInstanceNodeInstancesInput) Validate() error {
7069	invalidParams := request.ErrInvalidParams{Context: "ListApplicationInstanceNodeInstancesInput"}
7070	if s.ApplicationInstanceId == nil {
7071		invalidParams.Add(request.NewErrParamRequired("ApplicationInstanceId"))
7072	}
7073	if s.ApplicationInstanceId != nil && len(*s.ApplicationInstanceId) < 1 {
7074		invalidParams.Add(request.NewErrParamMinLen("ApplicationInstanceId", 1))
7075	}
7076	if s.NextToken != nil && len(*s.NextToken) < 1 {
7077		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
7078	}
7079
7080	if invalidParams.Len() > 0 {
7081		return invalidParams
7082	}
7083	return nil
7084}
7085
7086// SetApplicationInstanceId sets the ApplicationInstanceId field's value.
7087func (s *ListApplicationInstanceNodeInstancesInput) SetApplicationInstanceId(v string) *ListApplicationInstanceNodeInstancesInput {
7088	s.ApplicationInstanceId = &v
7089	return s
7090}
7091
7092// SetMaxResults sets the MaxResults field's value.
7093func (s *ListApplicationInstanceNodeInstancesInput) SetMaxResults(v int64) *ListApplicationInstanceNodeInstancesInput {
7094	s.MaxResults = &v
7095	return s
7096}
7097
7098// SetNextToken sets the NextToken field's value.
7099func (s *ListApplicationInstanceNodeInstancesInput) SetNextToken(v string) *ListApplicationInstanceNodeInstancesInput {
7100	s.NextToken = &v
7101	return s
7102}
7103
7104type ListApplicationInstanceNodeInstancesOutput struct {
7105	_ struct{} `type:"structure"`
7106
7107	// A pagination token that's included if more results are available.
7108	NextToken *string `min:"1" type:"string"`
7109
7110	// A list of node instances.
7111	NodeInstances []*NodeInstance `type:"list"`
7112}
7113
7114// String returns the string representation.
7115//
7116// API parameter values that are decorated as "sensitive" in the API will not
7117// be included in the string output. The member name will be present, but the
7118// value will be replaced with "sensitive".
7119func (s ListApplicationInstanceNodeInstancesOutput) String() string {
7120	return awsutil.Prettify(s)
7121}
7122
7123// GoString returns the string representation.
7124//
7125// API parameter values that are decorated as "sensitive" in the API will not
7126// be included in the string output. The member name will be present, but the
7127// value will be replaced with "sensitive".
7128func (s ListApplicationInstanceNodeInstancesOutput) GoString() string {
7129	return s.String()
7130}
7131
7132// SetNextToken sets the NextToken field's value.
7133func (s *ListApplicationInstanceNodeInstancesOutput) SetNextToken(v string) *ListApplicationInstanceNodeInstancesOutput {
7134	s.NextToken = &v
7135	return s
7136}
7137
7138// SetNodeInstances sets the NodeInstances field's value.
7139func (s *ListApplicationInstanceNodeInstancesOutput) SetNodeInstances(v []*NodeInstance) *ListApplicationInstanceNodeInstancesOutput {
7140	s.NodeInstances = v
7141	return s
7142}
7143
7144type ListApplicationInstancesInput struct {
7145	_ struct{} `type:"structure" nopayload:"true"`
7146
7147	// The application instances' device ID.
7148	DeviceId *string `location:"querystring" locationName:"deviceId" min:"1" type:"string"`
7149
7150	// The maximum number of application instances to return in one page of results.
7151	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
7152
7153	// Specify the pagination token from a previous request to retrieve the next
7154	// page of results.
7155	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
7156
7157	// Only include instances with a specific status.
7158	StatusFilter *string `location:"querystring" locationName:"statusFilter" type:"string" enum:"StatusFilter"`
7159}
7160
7161// String returns the string representation.
7162//
7163// API parameter values that are decorated as "sensitive" in the API will not
7164// be included in the string output. The member name will be present, but the
7165// value will be replaced with "sensitive".
7166func (s ListApplicationInstancesInput) String() string {
7167	return awsutil.Prettify(s)
7168}
7169
7170// GoString returns the string representation.
7171//
7172// API parameter values that are decorated as "sensitive" in the API will not
7173// be included in the string output. The member name will be present, but the
7174// value will be replaced with "sensitive".
7175func (s ListApplicationInstancesInput) GoString() string {
7176	return s.String()
7177}
7178
7179// Validate inspects the fields of the type to determine if they are valid.
7180func (s *ListApplicationInstancesInput) Validate() error {
7181	invalidParams := request.ErrInvalidParams{Context: "ListApplicationInstancesInput"}
7182	if s.DeviceId != nil && len(*s.DeviceId) < 1 {
7183		invalidParams.Add(request.NewErrParamMinLen("DeviceId", 1))
7184	}
7185	if s.NextToken != nil && len(*s.NextToken) < 1 {
7186		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
7187	}
7188
7189	if invalidParams.Len() > 0 {
7190		return invalidParams
7191	}
7192	return nil
7193}
7194
7195// SetDeviceId sets the DeviceId field's value.
7196func (s *ListApplicationInstancesInput) SetDeviceId(v string) *ListApplicationInstancesInput {
7197	s.DeviceId = &v
7198	return s
7199}
7200
7201// SetMaxResults sets the MaxResults field's value.
7202func (s *ListApplicationInstancesInput) SetMaxResults(v int64) *ListApplicationInstancesInput {
7203	s.MaxResults = &v
7204	return s
7205}
7206
7207// SetNextToken sets the NextToken field's value.
7208func (s *ListApplicationInstancesInput) SetNextToken(v string) *ListApplicationInstancesInput {
7209	s.NextToken = &v
7210	return s
7211}
7212
7213// SetStatusFilter sets the StatusFilter field's value.
7214func (s *ListApplicationInstancesInput) SetStatusFilter(v string) *ListApplicationInstancesInput {
7215	s.StatusFilter = &v
7216	return s
7217}
7218
7219type ListApplicationInstancesOutput struct {
7220	_ struct{} `type:"structure"`
7221
7222	// A list of application instances.
7223	ApplicationInstances []*ApplicationInstance `type:"list"`
7224
7225	// A pagination token that's included if more results are available.
7226	NextToken *string `min:"1" type:"string"`
7227}
7228
7229// String returns the string representation.
7230//
7231// API parameter values that are decorated as "sensitive" in the API will not
7232// be included in the string output. The member name will be present, but the
7233// value will be replaced with "sensitive".
7234func (s ListApplicationInstancesOutput) String() string {
7235	return awsutil.Prettify(s)
7236}
7237
7238// GoString returns the string representation.
7239//
7240// API parameter values that are decorated as "sensitive" in the API will not
7241// be included in the string output. The member name will be present, but the
7242// value will be replaced with "sensitive".
7243func (s ListApplicationInstancesOutput) GoString() string {
7244	return s.String()
7245}
7246
7247// SetApplicationInstances sets the ApplicationInstances field's value.
7248func (s *ListApplicationInstancesOutput) SetApplicationInstances(v []*ApplicationInstance) *ListApplicationInstancesOutput {
7249	s.ApplicationInstances = v
7250	return s
7251}
7252
7253// SetNextToken sets the NextToken field's value.
7254func (s *ListApplicationInstancesOutput) SetNextToken(v string) *ListApplicationInstancesOutput {
7255	s.NextToken = &v
7256	return s
7257}
7258
7259type ListDevicesInput struct {
7260	_ struct{} `type:"structure" nopayload:"true"`
7261
7262	// The maximum number of devices to return in one page of results.
7263	MaxResults *int64 `location:"querystring" locationName:"MaxResults" type:"integer"`
7264
7265	// Specify the pagination token from a previous request to retrieve the next
7266	// page of results.
7267	NextToken *string `location:"querystring" locationName:"NextToken" min:"1" type:"string"`
7268}
7269
7270// String returns the string representation.
7271//
7272// API parameter values that are decorated as "sensitive" in the API will not
7273// be included in the string output. The member name will be present, but the
7274// value will be replaced with "sensitive".
7275func (s ListDevicesInput) String() string {
7276	return awsutil.Prettify(s)
7277}
7278
7279// GoString returns the string representation.
7280//
7281// API parameter values that are decorated as "sensitive" in the API will not
7282// be included in the string output. The member name will be present, but the
7283// value will be replaced with "sensitive".
7284func (s ListDevicesInput) GoString() string {
7285	return s.String()
7286}
7287
7288// Validate inspects the fields of the type to determine if they are valid.
7289func (s *ListDevicesInput) Validate() error {
7290	invalidParams := request.ErrInvalidParams{Context: "ListDevicesInput"}
7291	if s.NextToken != nil && len(*s.NextToken) < 1 {
7292		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
7293	}
7294
7295	if invalidParams.Len() > 0 {
7296		return invalidParams
7297	}
7298	return nil
7299}
7300
7301// SetMaxResults sets the MaxResults field's value.
7302func (s *ListDevicesInput) SetMaxResults(v int64) *ListDevicesInput {
7303	s.MaxResults = &v
7304	return s
7305}
7306
7307// SetNextToken sets the NextToken field's value.
7308func (s *ListDevicesInput) SetNextToken(v string) *ListDevicesInput {
7309	s.NextToken = &v
7310	return s
7311}
7312
7313type ListDevicesJobsInput struct {
7314	_ struct{} `type:"structure" nopayload:"true"`
7315
7316	// Filter results by the job's target device ID.
7317	DeviceId *string `location:"querystring" locationName:"DeviceId" min:"1" type:"string"`
7318
7319	// The maximum number of device jobs to return in one page of results.
7320	MaxResults *int64 `location:"querystring" locationName:"MaxResults" type:"integer"`
7321
7322	// Specify the pagination token from a previous request to retrieve the next
7323	// page of results.
7324	NextToken *string `location:"querystring" locationName:"NextToken" min:"1" type:"string"`
7325}
7326
7327// String returns the string representation.
7328//
7329// API parameter values that are decorated as "sensitive" in the API will not
7330// be included in the string output. The member name will be present, but the
7331// value will be replaced with "sensitive".
7332func (s ListDevicesJobsInput) String() string {
7333	return awsutil.Prettify(s)
7334}
7335
7336// GoString returns the string representation.
7337//
7338// API parameter values that are decorated as "sensitive" in the API will not
7339// be included in the string output. The member name will be present, but the
7340// value will be replaced with "sensitive".
7341func (s ListDevicesJobsInput) GoString() string {
7342	return s.String()
7343}
7344
7345// Validate inspects the fields of the type to determine if they are valid.
7346func (s *ListDevicesJobsInput) Validate() error {
7347	invalidParams := request.ErrInvalidParams{Context: "ListDevicesJobsInput"}
7348	if s.DeviceId != nil && len(*s.DeviceId) < 1 {
7349		invalidParams.Add(request.NewErrParamMinLen("DeviceId", 1))
7350	}
7351	if s.NextToken != nil && len(*s.NextToken) < 1 {
7352		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
7353	}
7354
7355	if invalidParams.Len() > 0 {
7356		return invalidParams
7357	}
7358	return nil
7359}
7360
7361// SetDeviceId sets the DeviceId field's value.
7362func (s *ListDevicesJobsInput) SetDeviceId(v string) *ListDevicesJobsInput {
7363	s.DeviceId = &v
7364	return s
7365}
7366
7367// SetMaxResults sets the MaxResults field's value.
7368func (s *ListDevicesJobsInput) SetMaxResults(v int64) *ListDevicesJobsInput {
7369	s.MaxResults = &v
7370	return s
7371}
7372
7373// SetNextToken sets the NextToken field's value.
7374func (s *ListDevicesJobsInput) SetNextToken(v string) *ListDevicesJobsInput {
7375	s.NextToken = &v
7376	return s
7377}
7378
7379type ListDevicesJobsOutput struct {
7380	_ struct{} `type:"structure"`
7381
7382	// A list of jobs.
7383	DeviceJobs []*DeviceJob `type:"list"`
7384
7385	// A pagination token that's included if more results are available.
7386	NextToken *string `min:"1" type:"string"`
7387}
7388
7389// String returns the string representation.
7390//
7391// API parameter values that are decorated as "sensitive" in the API will not
7392// be included in the string output. The member name will be present, but the
7393// value will be replaced with "sensitive".
7394func (s ListDevicesJobsOutput) String() string {
7395	return awsutil.Prettify(s)
7396}
7397
7398// GoString returns the string representation.
7399//
7400// API parameter values that are decorated as "sensitive" in the API will not
7401// be included in the string output. The member name will be present, but the
7402// value will be replaced with "sensitive".
7403func (s ListDevicesJobsOutput) GoString() string {
7404	return s.String()
7405}
7406
7407// SetDeviceJobs sets the DeviceJobs field's value.
7408func (s *ListDevicesJobsOutput) SetDeviceJobs(v []*DeviceJob) *ListDevicesJobsOutput {
7409	s.DeviceJobs = v
7410	return s
7411}
7412
7413// SetNextToken sets the NextToken field's value.
7414func (s *ListDevicesJobsOutput) SetNextToken(v string) *ListDevicesJobsOutput {
7415	s.NextToken = &v
7416	return s
7417}
7418
7419type ListDevicesOutput struct {
7420	_ struct{} `type:"structure"`
7421
7422	// A list of devices.
7423	//
7424	// Devices is a required field
7425	Devices []*Device `type:"list" required:"true"`
7426
7427	// A pagination token that's included if more results are available.
7428	NextToken *string `min:"1" type:"string"`
7429}
7430
7431// String returns the string representation.
7432//
7433// API parameter values that are decorated as "sensitive" in the API will not
7434// be included in the string output. The member name will be present, but the
7435// value will be replaced with "sensitive".
7436func (s ListDevicesOutput) String() string {
7437	return awsutil.Prettify(s)
7438}
7439
7440// GoString returns the string representation.
7441//
7442// API parameter values that are decorated as "sensitive" in the API will not
7443// be included in the string output. The member name will be present, but the
7444// value will be replaced with "sensitive".
7445func (s ListDevicesOutput) GoString() string {
7446	return s.String()
7447}
7448
7449// SetDevices sets the Devices field's value.
7450func (s *ListDevicesOutput) SetDevices(v []*Device) *ListDevicesOutput {
7451	s.Devices = v
7452	return s
7453}
7454
7455// SetNextToken sets the NextToken field's value.
7456func (s *ListDevicesOutput) SetNextToken(v string) *ListDevicesOutput {
7457	s.NextToken = &v
7458	return s
7459}
7460
7461type ListNodeFromTemplateJobsInput struct {
7462	_ struct{} `type:"structure" nopayload:"true"`
7463
7464	// The maximum number of node from template jobs to return in one page of results.
7465	MaxResults *int64 `location:"querystring" locationName:"MaxResults" type:"integer"`
7466
7467	// Specify the pagination token from a previous request to retrieve the next
7468	// page of results.
7469	NextToken *string `location:"querystring" locationName:"NextToken" min:"1" type:"string"`
7470}
7471
7472// String returns the string representation.
7473//
7474// API parameter values that are decorated as "sensitive" in the API will not
7475// be included in the string output. The member name will be present, but the
7476// value will be replaced with "sensitive".
7477func (s ListNodeFromTemplateJobsInput) String() string {
7478	return awsutil.Prettify(s)
7479}
7480
7481// GoString returns the string representation.
7482//
7483// API parameter values that are decorated as "sensitive" in the API will not
7484// be included in the string output. The member name will be present, but the
7485// value will be replaced with "sensitive".
7486func (s ListNodeFromTemplateJobsInput) GoString() string {
7487	return s.String()
7488}
7489
7490// Validate inspects the fields of the type to determine if they are valid.
7491func (s *ListNodeFromTemplateJobsInput) Validate() error {
7492	invalidParams := request.ErrInvalidParams{Context: "ListNodeFromTemplateJobsInput"}
7493	if s.NextToken != nil && len(*s.NextToken) < 1 {
7494		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
7495	}
7496
7497	if invalidParams.Len() > 0 {
7498		return invalidParams
7499	}
7500	return nil
7501}
7502
7503// SetMaxResults sets the MaxResults field's value.
7504func (s *ListNodeFromTemplateJobsInput) SetMaxResults(v int64) *ListNodeFromTemplateJobsInput {
7505	s.MaxResults = &v
7506	return s
7507}
7508
7509// SetNextToken sets the NextToken field's value.
7510func (s *ListNodeFromTemplateJobsInput) SetNextToken(v string) *ListNodeFromTemplateJobsInput {
7511	s.NextToken = &v
7512	return s
7513}
7514
7515type ListNodeFromTemplateJobsOutput struct {
7516	_ struct{} `type:"structure"`
7517
7518	// A pagination token that's included if more results are available.
7519	NextToken *string `min:"1" type:"string"`
7520
7521	// A list of jobs.
7522	//
7523	// NodeFromTemplateJobs is a required field
7524	NodeFromTemplateJobs []*NodeFromTemplateJob `type:"list" required:"true"`
7525}
7526
7527// String returns the string representation.
7528//
7529// API parameter values that are decorated as "sensitive" in the API will not
7530// be included in the string output. The member name will be present, but the
7531// value will be replaced with "sensitive".
7532func (s ListNodeFromTemplateJobsOutput) String() string {
7533	return awsutil.Prettify(s)
7534}
7535
7536// GoString returns the string representation.
7537//
7538// API parameter values that are decorated as "sensitive" in the API will not
7539// be included in the string output. The member name will be present, but the
7540// value will be replaced with "sensitive".
7541func (s ListNodeFromTemplateJobsOutput) GoString() string {
7542	return s.String()
7543}
7544
7545// SetNextToken sets the NextToken field's value.
7546func (s *ListNodeFromTemplateJobsOutput) SetNextToken(v string) *ListNodeFromTemplateJobsOutput {
7547	s.NextToken = &v
7548	return s
7549}
7550
7551// SetNodeFromTemplateJobs sets the NodeFromTemplateJobs field's value.
7552func (s *ListNodeFromTemplateJobsOutput) SetNodeFromTemplateJobs(v []*NodeFromTemplateJob) *ListNodeFromTemplateJobsOutput {
7553	s.NodeFromTemplateJobs = v
7554	return s
7555}
7556
7557type ListNodesInput struct {
7558	_ struct{} `type:"structure" nopayload:"true"`
7559
7560	// Search for nodes by category.
7561	Category *string `location:"querystring" locationName:"category" type:"string" enum:"NodeCategory"`
7562
7563	// The maximum number of nodes to return in one page of results.
7564	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
7565
7566	// Specify the pagination token from a previous request to retrieve the next
7567	// page of results.
7568	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
7569
7570	// Search for nodes by the account ID of the nodes' owner.
7571	OwnerAccount *string `location:"querystring" locationName:"ownerAccount" min:"1" type:"string"`
7572
7573	// Search for nodes by name.
7574	PackageName *string `location:"querystring" locationName:"packageName" min:"1" type:"string"`
7575
7576	// Search for nodes by version.
7577	PackageVersion *string `location:"querystring" locationName:"packageVersion" min:"1" type:"string"`
7578
7579	// Search for nodes by patch version.
7580	PatchVersion *string `location:"querystring" locationName:"patchVersion" min:"1" type:"string"`
7581}
7582
7583// String returns the string representation.
7584//
7585// API parameter values that are decorated as "sensitive" in the API will not
7586// be included in the string output. The member name will be present, but the
7587// value will be replaced with "sensitive".
7588func (s ListNodesInput) String() string {
7589	return awsutil.Prettify(s)
7590}
7591
7592// GoString returns the string representation.
7593//
7594// API parameter values that are decorated as "sensitive" in the API will not
7595// be included in the string output. The member name will be present, but the
7596// value will be replaced with "sensitive".
7597func (s ListNodesInput) GoString() string {
7598	return s.String()
7599}
7600
7601// Validate inspects the fields of the type to determine if they are valid.
7602func (s *ListNodesInput) Validate() error {
7603	invalidParams := request.ErrInvalidParams{Context: "ListNodesInput"}
7604	if s.NextToken != nil && len(*s.NextToken) < 1 {
7605		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
7606	}
7607	if s.OwnerAccount != nil && len(*s.OwnerAccount) < 1 {
7608		invalidParams.Add(request.NewErrParamMinLen("OwnerAccount", 1))
7609	}
7610	if s.PackageName != nil && len(*s.PackageName) < 1 {
7611		invalidParams.Add(request.NewErrParamMinLen("PackageName", 1))
7612	}
7613	if s.PackageVersion != nil && len(*s.PackageVersion) < 1 {
7614		invalidParams.Add(request.NewErrParamMinLen("PackageVersion", 1))
7615	}
7616	if s.PatchVersion != nil && len(*s.PatchVersion) < 1 {
7617		invalidParams.Add(request.NewErrParamMinLen("PatchVersion", 1))
7618	}
7619
7620	if invalidParams.Len() > 0 {
7621		return invalidParams
7622	}
7623	return nil
7624}
7625
7626// SetCategory sets the Category field's value.
7627func (s *ListNodesInput) SetCategory(v string) *ListNodesInput {
7628	s.Category = &v
7629	return s
7630}
7631
7632// SetMaxResults sets the MaxResults field's value.
7633func (s *ListNodesInput) SetMaxResults(v int64) *ListNodesInput {
7634	s.MaxResults = &v
7635	return s
7636}
7637
7638// SetNextToken sets the NextToken field's value.
7639func (s *ListNodesInput) SetNextToken(v string) *ListNodesInput {
7640	s.NextToken = &v
7641	return s
7642}
7643
7644// SetOwnerAccount sets the OwnerAccount field's value.
7645func (s *ListNodesInput) SetOwnerAccount(v string) *ListNodesInput {
7646	s.OwnerAccount = &v
7647	return s
7648}
7649
7650// SetPackageName sets the PackageName field's value.
7651func (s *ListNodesInput) SetPackageName(v string) *ListNodesInput {
7652	s.PackageName = &v
7653	return s
7654}
7655
7656// SetPackageVersion sets the PackageVersion field's value.
7657func (s *ListNodesInput) SetPackageVersion(v string) *ListNodesInput {
7658	s.PackageVersion = &v
7659	return s
7660}
7661
7662// SetPatchVersion sets the PatchVersion field's value.
7663func (s *ListNodesInput) SetPatchVersion(v string) *ListNodesInput {
7664	s.PatchVersion = &v
7665	return s
7666}
7667
7668type ListNodesOutput struct {
7669	_ struct{} `type:"structure"`
7670
7671	// A pagination token that's included if more results are available.
7672	NextToken *string `min:"1" type:"string"`
7673
7674	// A list of nodes.
7675	Nodes []*Node `type:"list"`
7676}
7677
7678// String returns the string representation.
7679//
7680// API parameter values that are decorated as "sensitive" in the API will not
7681// be included in the string output. The member name will be present, but the
7682// value will be replaced with "sensitive".
7683func (s ListNodesOutput) String() string {
7684	return awsutil.Prettify(s)
7685}
7686
7687// GoString returns the string representation.
7688//
7689// API parameter values that are decorated as "sensitive" in the API will not
7690// be included in the string output. The member name will be present, but the
7691// value will be replaced with "sensitive".
7692func (s ListNodesOutput) GoString() string {
7693	return s.String()
7694}
7695
7696// SetNextToken sets the NextToken field's value.
7697func (s *ListNodesOutput) SetNextToken(v string) *ListNodesOutput {
7698	s.NextToken = &v
7699	return s
7700}
7701
7702// SetNodes sets the Nodes field's value.
7703func (s *ListNodesOutput) SetNodes(v []*Node) *ListNodesOutput {
7704	s.Nodes = v
7705	return s
7706}
7707
7708type ListPackageImportJobsInput struct {
7709	_ struct{} `type:"structure" nopayload:"true"`
7710
7711	// The maximum number of package import jobs to return in one page of results.
7712	MaxResults *int64 `location:"querystring" locationName:"MaxResults" type:"integer"`
7713
7714	// Specify the pagination token from a previous request to retrieve the next
7715	// page of results.
7716	NextToken *string `location:"querystring" locationName:"NextToken" min:"1" type:"string"`
7717}
7718
7719// String returns the string representation.
7720//
7721// API parameter values that are decorated as "sensitive" in the API will not
7722// be included in the string output. The member name will be present, but the
7723// value will be replaced with "sensitive".
7724func (s ListPackageImportJobsInput) String() string {
7725	return awsutil.Prettify(s)
7726}
7727
7728// GoString returns the string representation.
7729//
7730// API parameter values that are decorated as "sensitive" in the API will not
7731// be included in the string output. The member name will be present, but the
7732// value will be replaced with "sensitive".
7733func (s ListPackageImportJobsInput) GoString() string {
7734	return s.String()
7735}
7736
7737// Validate inspects the fields of the type to determine if they are valid.
7738func (s *ListPackageImportJobsInput) Validate() error {
7739	invalidParams := request.ErrInvalidParams{Context: "ListPackageImportJobsInput"}
7740	if s.NextToken != nil && len(*s.NextToken) < 1 {
7741		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
7742	}
7743
7744	if invalidParams.Len() > 0 {
7745		return invalidParams
7746	}
7747	return nil
7748}
7749
7750// SetMaxResults sets the MaxResults field's value.
7751func (s *ListPackageImportJobsInput) SetMaxResults(v int64) *ListPackageImportJobsInput {
7752	s.MaxResults = &v
7753	return s
7754}
7755
7756// SetNextToken sets the NextToken field's value.
7757func (s *ListPackageImportJobsInput) SetNextToken(v string) *ListPackageImportJobsInput {
7758	s.NextToken = &v
7759	return s
7760}
7761
7762type ListPackageImportJobsOutput struct {
7763	_ struct{} `type:"structure"`
7764
7765	// A pagination token that's included if more results are available.
7766	NextToken *string `min:"1" type:"string"`
7767
7768	// A list of package import jobs.
7769	//
7770	// PackageImportJobs is a required field
7771	PackageImportJobs []*PackageImportJob `type:"list" required:"true"`
7772}
7773
7774// String returns the string representation.
7775//
7776// API parameter values that are decorated as "sensitive" in the API will not
7777// be included in the string output. The member name will be present, but the
7778// value will be replaced with "sensitive".
7779func (s ListPackageImportJobsOutput) String() string {
7780	return awsutil.Prettify(s)
7781}
7782
7783// GoString returns the string representation.
7784//
7785// API parameter values that are decorated as "sensitive" in the API will not
7786// be included in the string output. The member name will be present, but the
7787// value will be replaced with "sensitive".
7788func (s ListPackageImportJobsOutput) GoString() string {
7789	return s.String()
7790}
7791
7792// SetNextToken sets the NextToken field's value.
7793func (s *ListPackageImportJobsOutput) SetNextToken(v string) *ListPackageImportJobsOutput {
7794	s.NextToken = &v
7795	return s
7796}
7797
7798// SetPackageImportJobs sets the PackageImportJobs field's value.
7799func (s *ListPackageImportJobsOutput) SetPackageImportJobs(v []*PackageImportJob) *ListPackageImportJobsOutput {
7800	s.PackageImportJobs = v
7801	return s
7802}
7803
7804type ListPackagesInput struct {
7805	_ struct{} `type:"structure" nopayload:"true"`
7806
7807	// The maximum number of packages to return in one page of results.
7808	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
7809
7810	// Specify the pagination token from a previous request to retrieve the next
7811	// page of results.
7812	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
7813}
7814
7815// String returns the string representation.
7816//
7817// API parameter values that are decorated as "sensitive" in the API will not
7818// be included in the string output. The member name will be present, but the
7819// value will be replaced with "sensitive".
7820func (s ListPackagesInput) String() string {
7821	return awsutil.Prettify(s)
7822}
7823
7824// GoString returns the string representation.
7825//
7826// API parameter values that are decorated as "sensitive" in the API will not
7827// be included in the string output. The member name will be present, but the
7828// value will be replaced with "sensitive".
7829func (s ListPackagesInput) GoString() string {
7830	return s.String()
7831}
7832
7833// Validate inspects the fields of the type to determine if they are valid.
7834func (s *ListPackagesInput) Validate() error {
7835	invalidParams := request.ErrInvalidParams{Context: "ListPackagesInput"}
7836	if s.NextToken != nil && len(*s.NextToken) < 1 {
7837		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
7838	}
7839
7840	if invalidParams.Len() > 0 {
7841		return invalidParams
7842	}
7843	return nil
7844}
7845
7846// SetMaxResults sets the MaxResults field's value.
7847func (s *ListPackagesInput) SetMaxResults(v int64) *ListPackagesInput {
7848	s.MaxResults = &v
7849	return s
7850}
7851
7852// SetNextToken sets the NextToken field's value.
7853func (s *ListPackagesInput) SetNextToken(v string) *ListPackagesInput {
7854	s.NextToken = &v
7855	return s
7856}
7857
7858type ListPackagesOutput struct {
7859	_ struct{} `type:"structure"`
7860
7861	// A pagination token that's included if more results are available.
7862	NextToken *string `min:"1" type:"string"`
7863
7864	// A list of packages.
7865	Packages []*PackageListItem `type:"list"`
7866}
7867
7868// String returns the string representation.
7869//
7870// API parameter values that are decorated as "sensitive" in the API will not
7871// be included in the string output. The member name will be present, but the
7872// value will be replaced with "sensitive".
7873func (s ListPackagesOutput) String() string {
7874	return awsutil.Prettify(s)
7875}
7876
7877// GoString returns the string representation.
7878//
7879// API parameter values that are decorated as "sensitive" in the API will not
7880// be included in the string output. The member name will be present, but the
7881// value will be replaced with "sensitive".
7882func (s ListPackagesOutput) GoString() string {
7883	return s.String()
7884}
7885
7886// SetNextToken sets the NextToken field's value.
7887func (s *ListPackagesOutput) SetNextToken(v string) *ListPackagesOutput {
7888	s.NextToken = &v
7889	return s
7890}
7891
7892// SetPackages sets the Packages field's value.
7893func (s *ListPackagesOutput) SetPackages(v []*PackageListItem) *ListPackagesOutput {
7894	s.Packages = v
7895	return s
7896}
7897
7898type ListTagsForResourceInput struct {
7899	_ struct{} `type:"structure" nopayload:"true"`
7900
7901	// The resource's ARN.
7902	//
7903	// ResourceArn is a required field
7904	ResourceArn *string `location:"uri" locationName:"ResourceArn" min:"1" type:"string" required:"true"`
7905}
7906
7907// String returns the string representation.
7908//
7909// API parameter values that are decorated as "sensitive" in the API will not
7910// be included in the string output. The member name will be present, but the
7911// value will be replaced with "sensitive".
7912func (s ListTagsForResourceInput) String() string {
7913	return awsutil.Prettify(s)
7914}
7915
7916// GoString returns the string representation.
7917//
7918// API parameter values that are decorated as "sensitive" in the API will not
7919// be included in the string output. The member name will be present, but the
7920// value will be replaced with "sensitive".
7921func (s ListTagsForResourceInput) GoString() string {
7922	return s.String()
7923}
7924
7925// Validate inspects the fields of the type to determine if they are valid.
7926func (s *ListTagsForResourceInput) Validate() error {
7927	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
7928	if s.ResourceArn == nil {
7929		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
7930	}
7931	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
7932		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
7933	}
7934
7935	if invalidParams.Len() > 0 {
7936		return invalidParams
7937	}
7938	return nil
7939}
7940
7941// SetResourceArn sets the ResourceArn field's value.
7942func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
7943	s.ResourceArn = &v
7944	return s
7945}
7946
7947type ListTagsForResourceOutput struct {
7948	_ struct{} `type:"structure"`
7949
7950	// A list of tags.
7951	Tags map[string]*string `type:"map"`
7952}
7953
7954// String returns the string representation.
7955//
7956// API parameter values that are decorated as "sensitive" in the API will not
7957// be included in the string output. The member name will be present, but the
7958// value will be replaced with "sensitive".
7959func (s ListTagsForResourceOutput) String() string {
7960	return awsutil.Prettify(s)
7961}
7962
7963// GoString returns the string representation.
7964//
7965// API parameter values that are decorated as "sensitive" in the API will not
7966// be included in the string output. The member name will be present, but the
7967// value will be replaced with "sensitive".
7968func (s ListTagsForResourceOutput) GoString() string {
7969	return s.String()
7970}
7971
7972// SetTags sets the Tags field's value.
7973func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput {
7974	s.Tags = v
7975	return s
7976}
7977
7978// Parameter overrides for an application instance. This is a JSON document
7979// that has a single key (PayloadData) where the value is an escaped string
7980// representation of the overrides document.
7981type ManifestOverridesPayload struct {
7982	_ struct{} `type:"structure"`
7983
7984	// The overrides document.
7985	PayloadData *string `type:"string"`
7986}
7987
7988// String returns the string representation.
7989//
7990// API parameter values that are decorated as "sensitive" in the API will not
7991// be included in the string output. The member name will be present, but the
7992// value will be replaced with "sensitive".
7993func (s ManifestOverridesPayload) String() string {
7994	return awsutil.Prettify(s)
7995}
7996
7997// GoString returns the string representation.
7998//
7999// API parameter values that are decorated as "sensitive" in the API will not
8000// be included in the string output. The member name will be present, but the
8001// value will be replaced with "sensitive".
8002func (s ManifestOverridesPayload) GoString() string {
8003	return s.String()
8004}
8005
8006// SetPayloadData sets the PayloadData field's value.
8007func (s *ManifestOverridesPayload) SetPayloadData(v string) *ManifestOverridesPayload {
8008	s.PayloadData = &v
8009	return s
8010}
8011
8012// A application verion's manifest file. This is a JSON document that has a
8013// single key (PayloadData) where the value is an escaped string representation
8014// of the application manifest (graph.json). This file is located in the graphs
8015// folder in your application source.
8016type ManifestPayload struct {
8017	_ struct{} `type:"structure"`
8018
8019	// The application manifest.
8020	PayloadData *string `min:"1" type:"string"`
8021}
8022
8023// String returns the string representation.
8024//
8025// API parameter values that are decorated as "sensitive" in the API will not
8026// be included in the string output. The member name will be present, but the
8027// value will be replaced with "sensitive".
8028func (s ManifestPayload) String() string {
8029	return awsutil.Prettify(s)
8030}
8031
8032// GoString returns the string representation.
8033//
8034// API parameter values that are decorated as "sensitive" in the API will not
8035// be included in the string output. The member name will be present, but the
8036// value will be replaced with "sensitive".
8037func (s ManifestPayload) GoString() string {
8038	return s.String()
8039}
8040
8041// Validate inspects the fields of the type to determine if they are valid.
8042func (s *ManifestPayload) Validate() error {
8043	invalidParams := request.ErrInvalidParams{Context: "ManifestPayload"}
8044	if s.PayloadData != nil && len(*s.PayloadData) < 1 {
8045		invalidParams.Add(request.NewErrParamMinLen("PayloadData", 1))
8046	}
8047
8048	if invalidParams.Len() > 0 {
8049		return invalidParams
8050	}
8051	return nil
8052}
8053
8054// SetPayloadData sets the PayloadData field's value.
8055func (s *ManifestPayload) SetPayloadData(v string) *ManifestPayload {
8056	s.PayloadData = &v
8057	return s
8058}
8059
8060// The network configuration for a device.
8061type NetworkPayload struct {
8062	_ struct{} `type:"structure"`
8063
8064	// Settings for Ethernet port 0.
8065	Ethernet0 *EthernetPayload `type:"structure"`
8066
8067	// Settings for Ethernet port 1.
8068	Ethernet1 *EthernetPayload `type:"structure"`
8069}
8070
8071// String returns the string representation.
8072//
8073// API parameter values that are decorated as "sensitive" in the API will not
8074// be included in the string output. The member name will be present, but the
8075// value will be replaced with "sensitive".
8076func (s NetworkPayload) String() string {
8077	return awsutil.Prettify(s)
8078}
8079
8080// GoString returns the string representation.
8081//
8082// API parameter values that are decorated as "sensitive" in the API will not
8083// be included in the string output. The member name will be present, but the
8084// value will be replaced with "sensitive".
8085func (s NetworkPayload) GoString() string {
8086	return s.String()
8087}
8088
8089// Validate inspects the fields of the type to determine if they are valid.
8090func (s *NetworkPayload) Validate() error {
8091	invalidParams := request.ErrInvalidParams{Context: "NetworkPayload"}
8092	if s.Ethernet0 != nil {
8093		if err := s.Ethernet0.Validate(); err != nil {
8094			invalidParams.AddNested("Ethernet0", err.(request.ErrInvalidParams))
8095		}
8096	}
8097	if s.Ethernet1 != nil {
8098		if err := s.Ethernet1.Validate(); err != nil {
8099			invalidParams.AddNested("Ethernet1", err.(request.ErrInvalidParams))
8100		}
8101	}
8102
8103	if invalidParams.Len() > 0 {
8104		return invalidParams
8105	}
8106	return nil
8107}
8108
8109// SetEthernet0 sets the Ethernet0 field's value.
8110func (s *NetworkPayload) SetEthernet0(v *EthernetPayload) *NetworkPayload {
8111	s.Ethernet0 = v
8112	return s
8113}
8114
8115// SetEthernet1 sets the Ethernet1 field's value.
8116func (s *NetworkPayload) SetEthernet1(v *EthernetPayload) *NetworkPayload {
8117	s.Ethernet1 = v
8118	return s
8119}
8120
8121// The network status of a device.
8122type NetworkStatus struct {
8123	_ struct{} `type:"structure"`
8124
8125	// The status of Ethernet port 0.
8126	Ethernet0Status *EthernetStatus `type:"structure"`
8127
8128	// The status of Ethernet port 1.
8129	Ethernet1Status *EthernetStatus `type:"structure"`
8130}
8131
8132// String returns the string representation.
8133//
8134// API parameter values that are decorated as "sensitive" in the API will not
8135// be included in the string output. The member name will be present, but the
8136// value will be replaced with "sensitive".
8137func (s NetworkStatus) String() string {
8138	return awsutil.Prettify(s)
8139}
8140
8141// GoString returns the string representation.
8142//
8143// API parameter values that are decorated as "sensitive" in the API will not
8144// be included in the string output. The member name will be present, but the
8145// value will be replaced with "sensitive".
8146func (s NetworkStatus) GoString() string {
8147	return s.String()
8148}
8149
8150// SetEthernet0Status sets the Ethernet0Status field's value.
8151func (s *NetworkStatus) SetEthernet0Status(v *EthernetStatus) *NetworkStatus {
8152	s.Ethernet0Status = v
8153	return s
8154}
8155
8156// SetEthernet1Status sets the Ethernet1Status field's value.
8157func (s *NetworkStatus) SetEthernet1Status(v *EthernetStatus) *NetworkStatus {
8158	s.Ethernet1Status = v
8159	return s
8160}
8161
8162// An application node that represents a camera stream, a model, code, or output.
8163type Node struct {
8164	_ struct{} `type:"structure"`
8165
8166	// The node's category.
8167	//
8168	// Category is a required field
8169	Category *string `type:"string" required:"true" enum:"NodeCategory"`
8170
8171	// When the node was created.
8172	//
8173	// CreatedTime is a required field
8174	CreatedTime *time.Time `type:"timestamp" required:"true"`
8175
8176	// The node's description.
8177	Description *string `type:"string"`
8178
8179	// The node's name.
8180	//
8181	// Name is a required field
8182	Name *string `min:"1" type:"string" required:"true"`
8183
8184	// The node's ID.
8185	//
8186	// NodeId is a required field
8187	NodeId *string `min:"1" type:"string" required:"true"`
8188
8189	// The account ID of the node's owner.
8190	OwnerAccount *string `min:"1" type:"string"`
8191
8192	// The node's ARN.
8193	PackageArn *string `min:"1" type:"string"`
8194
8195	// The node's package ID.
8196	//
8197	// PackageId is a required field
8198	PackageId *string `min:"1" type:"string" required:"true"`
8199
8200	// The node's package name.
8201	//
8202	// PackageName is a required field
8203	PackageName *string `min:"1" type:"string" required:"true"`
8204
8205	// The node's package version.
8206	//
8207	// PackageVersion is a required field
8208	PackageVersion *string `min:"1" type:"string" required:"true"`
8209
8210	// The node's patch version.
8211	//
8212	// PatchVersion is a required field
8213	PatchVersion *string `min:"1" type:"string" required:"true"`
8214}
8215
8216// String returns the string representation.
8217//
8218// API parameter values that are decorated as "sensitive" in the API will not
8219// be included in the string output. The member name will be present, but the
8220// value will be replaced with "sensitive".
8221func (s Node) String() string {
8222	return awsutil.Prettify(s)
8223}
8224
8225// GoString returns the string representation.
8226//
8227// API parameter values that are decorated as "sensitive" in the API will not
8228// be included in the string output. The member name will be present, but the
8229// value will be replaced with "sensitive".
8230func (s Node) GoString() string {
8231	return s.String()
8232}
8233
8234// SetCategory sets the Category field's value.
8235func (s *Node) SetCategory(v string) *Node {
8236	s.Category = &v
8237	return s
8238}
8239
8240// SetCreatedTime sets the CreatedTime field's value.
8241func (s *Node) SetCreatedTime(v time.Time) *Node {
8242	s.CreatedTime = &v
8243	return s
8244}
8245
8246// SetDescription sets the Description field's value.
8247func (s *Node) SetDescription(v string) *Node {
8248	s.Description = &v
8249	return s
8250}
8251
8252// SetName sets the Name field's value.
8253func (s *Node) SetName(v string) *Node {
8254	s.Name = &v
8255	return s
8256}
8257
8258// SetNodeId sets the NodeId field's value.
8259func (s *Node) SetNodeId(v string) *Node {
8260	s.NodeId = &v
8261	return s
8262}
8263
8264// SetOwnerAccount sets the OwnerAccount field's value.
8265func (s *Node) SetOwnerAccount(v string) *Node {
8266	s.OwnerAccount = &v
8267	return s
8268}
8269
8270// SetPackageArn sets the PackageArn field's value.
8271func (s *Node) SetPackageArn(v string) *Node {
8272	s.PackageArn = &v
8273	return s
8274}
8275
8276// SetPackageId sets the PackageId field's value.
8277func (s *Node) SetPackageId(v string) *Node {
8278	s.PackageId = &v
8279	return s
8280}
8281
8282// SetPackageName sets the PackageName field's value.
8283func (s *Node) SetPackageName(v string) *Node {
8284	s.PackageName = &v
8285	return s
8286}
8287
8288// SetPackageVersion sets the PackageVersion field's value.
8289func (s *Node) SetPackageVersion(v string) *Node {
8290	s.PackageVersion = &v
8291	return s
8292}
8293
8294// SetPatchVersion sets the PatchVersion field's value.
8295func (s *Node) SetPatchVersion(v string) *Node {
8296	s.PatchVersion = &v
8297	return s
8298}
8299
8300// A job to create a camera stream node.
8301type NodeFromTemplateJob struct {
8302	_ struct{} `type:"structure"`
8303
8304	// When the job was created.
8305	CreatedTime *time.Time `type:"timestamp"`
8306
8307	// The job's ID.
8308	JobId *string `min:"1" type:"string"`
8309
8310	// The node's name.
8311	NodeName *string `min:"1" type:"string"`
8312
8313	// The job's status.
8314	Status *string `type:"string" enum:"NodeFromTemplateJobStatus"`
8315
8316	// The job's status message.
8317	StatusMessage *string `type:"string"`
8318
8319	// The job's template type.
8320	TemplateType *string `type:"string" enum:"TemplateType"`
8321}
8322
8323// String returns the string representation.
8324//
8325// API parameter values that are decorated as "sensitive" in the API will not
8326// be included in the string output. The member name will be present, but the
8327// value will be replaced with "sensitive".
8328func (s NodeFromTemplateJob) String() string {
8329	return awsutil.Prettify(s)
8330}
8331
8332// GoString returns the string representation.
8333//
8334// API parameter values that are decorated as "sensitive" in the API will not
8335// be included in the string output. The member name will be present, but the
8336// value will be replaced with "sensitive".
8337func (s NodeFromTemplateJob) GoString() string {
8338	return s.String()
8339}
8340
8341// SetCreatedTime sets the CreatedTime field's value.
8342func (s *NodeFromTemplateJob) SetCreatedTime(v time.Time) *NodeFromTemplateJob {
8343	s.CreatedTime = &v
8344	return s
8345}
8346
8347// SetJobId sets the JobId field's value.
8348func (s *NodeFromTemplateJob) SetJobId(v string) *NodeFromTemplateJob {
8349	s.JobId = &v
8350	return s
8351}
8352
8353// SetNodeName sets the NodeName field's value.
8354func (s *NodeFromTemplateJob) SetNodeName(v string) *NodeFromTemplateJob {
8355	s.NodeName = &v
8356	return s
8357}
8358
8359// SetStatus sets the Status field's value.
8360func (s *NodeFromTemplateJob) SetStatus(v string) *NodeFromTemplateJob {
8361	s.Status = &v
8362	return s
8363}
8364
8365// SetStatusMessage sets the StatusMessage field's value.
8366func (s *NodeFromTemplateJob) SetStatusMessage(v string) *NodeFromTemplateJob {
8367	s.StatusMessage = &v
8368	return s
8369}
8370
8371// SetTemplateType sets the TemplateType field's value.
8372func (s *NodeFromTemplateJob) SetTemplateType(v string) *NodeFromTemplateJob {
8373	s.TemplateType = &v
8374	return s
8375}
8376
8377// A node input port.
8378type NodeInputPort struct {
8379	_ struct{} `type:"structure"`
8380
8381	// The input port's default value.
8382	DefaultValue *string `min:"1" type:"string"`
8383
8384	// The input port's description.
8385	Description *string `type:"string"`
8386
8387	// The input port's max connections.
8388	MaxConnections *int64 `type:"integer"`
8389
8390	// The input port's name.
8391	Name *string `min:"1" type:"string"`
8392
8393	// The input port's type.
8394	Type *string `type:"string" enum:"PortType"`
8395}
8396
8397// String returns the string representation.
8398//
8399// API parameter values that are decorated as "sensitive" in the API will not
8400// be included in the string output. The member name will be present, but the
8401// value will be replaced with "sensitive".
8402func (s NodeInputPort) String() string {
8403	return awsutil.Prettify(s)
8404}
8405
8406// GoString returns the string representation.
8407//
8408// API parameter values that are decorated as "sensitive" in the API will not
8409// be included in the string output. The member name will be present, but the
8410// value will be replaced with "sensitive".
8411func (s NodeInputPort) GoString() string {
8412	return s.String()
8413}
8414
8415// SetDefaultValue sets the DefaultValue field's value.
8416func (s *NodeInputPort) SetDefaultValue(v string) *NodeInputPort {
8417	s.DefaultValue = &v
8418	return s
8419}
8420
8421// SetDescription sets the Description field's value.
8422func (s *NodeInputPort) SetDescription(v string) *NodeInputPort {
8423	s.Description = &v
8424	return s
8425}
8426
8427// SetMaxConnections sets the MaxConnections field's value.
8428func (s *NodeInputPort) SetMaxConnections(v int64) *NodeInputPort {
8429	s.MaxConnections = &v
8430	return s
8431}
8432
8433// SetName sets the Name field's value.
8434func (s *NodeInputPort) SetName(v string) *NodeInputPort {
8435	s.Name = &v
8436	return s
8437}
8438
8439// SetType sets the Type field's value.
8440func (s *NodeInputPort) SetType(v string) *NodeInputPort {
8441	s.Type = &v
8442	return s
8443}
8444
8445// A node instance.
8446type NodeInstance struct {
8447	_ struct{} `type:"structure"`
8448
8449	// The instance's current status.
8450	//
8451	// CurrentStatus is a required field
8452	CurrentStatus *string `type:"string" required:"true" enum:"NodeInstanceStatus"`
8453
8454	// The node's ID.
8455	NodeId *string `min:"1" type:"string"`
8456
8457	// The instance's ID.
8458	//
8459	// NodeInstanceId is a required field
8460	NodeInstanceId *string `min:"1" type:"string" required:"true"`
8461
8462	// The instance's name.
8463	NodeName *string `min:"1" type:"string"`
8464
8465	// The instance's package name.
8466	PackageName *string `min:"1" type:"string"`
8467
8468	// The instance's package patch version.
8469	PackagePatchVersion *string `min:"1" type:"string"`
8470
8471	// The instance's package version.
8472	PackageVersion *string `min:"1" type:"string"`
8473}
8474
8475// String returns the string representation.
8476//
8477// API parameter values that are decorated as "sensitive" in the API will not
8478// be included in the string output. The member name will be present, but the
8479// value will be replaced with "sensitive".
8480func (s NodeInstance) String() string {
8481	return awsutil.Prettify(s)
8482}
8483
8484// GoString returns the string representation.
8485//
8486// API parameter values that are decorated as "sensitive" in the API will not
8487// be included in the string output. The member name will be present, but the
8488// value will be replaced with "sensitive".
8489func (s NodeInstance) GoString() string {
8490	return s.String()
8491}
8492
8493// SetCurrentStatus sets the CurrentStatus field's value.
8494func (s *NodeInstance) SetCurrentStatus(v string) *NodeInstance {
8495	s.CurrentStatus = &v
8496	return s
8497}
8498
8499// SetNodeId sets the NodeId field's value.
8500func (s *NodeInstance) SetNodeId(v string) *NodeInstance {
8501	s.NodeId = &v
8502	return s
8503}
8504
8505// SetNodeInstanceId sets the NodeInstanceId field's value.
8506func (s *NodeInstance) SetNodeInstanceId(v string) *NodeInstance {
8507	s.NodeInstanceId = &v
8508	return s
8509}
8510
8511// SetNodeName sets the NodeName field's value.
8512func (s *NodeInstance) SetNodeName(v string) *NodeInstance {
8513	s.NodeName = &v
8514	return s
8515}
8516
8517// SetPackageName sets the PackageName field's value.
8518func (s *NodeInstance) SetPackageName(v string) *NodeInstance {
8519	s.PackageName = &v
8520	return s
8521}
8522
8523// SetPackagePatchVersion sets the PackagePatchVersion field's value.
8524func (s *NodeInstance) SetPackagePatchVersion(v string) *NodeInstance {
8525	s.PackagePatchVersion = &v
8526	return s
8527}
8528
8529// SetPackageVersion sets the PackageVersion field's value.
8530func (s *NodeInstance) SetPackageVersion(v string) *NodeInstance {
8531	s.PackageVersion = &v
8532	return s
8533}
8534
8535// A node interface.
8536type NodeInterface struct {
8537	_ struct{} `type:"structure"`
8538
8539	// The node interface's inputs.
8540	//
8541	// Inputs is a required field
8542	Inputs []*NodeInputPort `type:"list" required:"true"`
8543
8544	// The node interface's outputs.
8545	//
8546	// Outputs is a required field
8547	Outputs []*NodeOutputPort `type:"list" required:"true"`
8548}
8549
8550// String returns the string representation.
8551//
8552// API parameter values that are decorated as "sensitive" in the API will not
8553// be included in the string output. The member name will be present, but the
8554// value will be replaced with "sensitive".
8555func (s NodeInterface) String() string {
8556	return awsutil.Prettify(s)
8557}
8558
8559// GoString returns the string representation.
8560//
8561// API parameter values that are decorated as "sensitive" in the API will not
8562// be included in the string output. The member name will be present, but the
8563// value will be replaced with "sensitive".
8564func (s NodeInterface) GoString() string {
8565	return s.String()
8566}
8567
8568// SetInputs sets the Inputs field's value.
8569func (s *NodeInterface) SetInputs(v []*NodeInputPort) *NodeInterface {
8570	s.Inputs = v
8571	return s
8572}
8573
8574// SetOutputs sets the Outputs field's value.
8575func (s *NodeInterface) SetOutputs(v []*NodeOutputPort) *NodeInterface {
8576	s.Outputs = v
8577	return s
8578}
8579
8580// A node output port.
8581type NodeOutputPort struct {
8582	_ struct{} `type:"structure"`
8583
8584	// The output port's description.
8585	Description *string `type:"string"`
8586
8587	// The output port's name.
8588	Name *string `min:"1" type:"string"`
8589
8590	// The output port's type.
8591	Type *string `type:"string" enum:"PortType"`
8592}
8593
8594// String returns the string representation.
8595//
8596// API parameter values that are decorated as "sensitive" in the API will not
8597// be included in the string output. The member name will be present, but the
8598// value will be replaced with "sensitive".
8599func (s NodeOutputPort) String() string {
8600	return awsutil.Prettify(s)
8601}
8602
8603// GoString returns the string representation.
8604//
8605// API parameter values that are decorated as "sensitive" in the API will not
8606// be included in the string output. The member name will be present, but the
8607// value will be replaced with "sensitive".
8608func (s NodeOutputPort) GoString() string {
8609	return s.String()
8610}
8611
8612// SetDescription sets the Description field's value.
8613func (s *NodeOutputPort) SetDescription(v string) *NodeOutputPort {
8614	s.Description = &v
8615	return s
8616}
8617
8618// SetName sets the Name field's value.
8619func (s *NodeOutputPort) SetName(v string) *NodeOutputPort {
8620	s.Name = &v
8621	return s
8622}
8623
8624// SetType sets the Type field's value.
8625func (s *NodeOutputPort) SetType(v string) *NodeOutputPort {
8626	s.Type = &v
8627	return s
8628}
8629
8630// An over-the-air update (OTA) job configuration.
8631type OTAJobConfig struct {
8632	_ struct{} `type:"structure"`
8633
8634	// The target version of the device software.
8635	//
8636	// ImageVersion is a required field
8637	ImageVersion *string `min:"1" type:"string" required:"true"`
8638}
8639
8640// String returns the string representation.
8641//
8642// API parameter values that are decorated as "sensitive" in the API will not
8643// be included in the string output. The member name will be present, but the
8644// value will be replaced with "sensitive".
8645func (s OTAJobConfig) String() string {
8646	return awsutil.Prettify(s)
8647}
8648
8649// GoString returns the string representation.
8650//
8651// API parameter values that are decorated as "sensitive" in the API will not
8652// be included in the string output. The member name will be present, but the
8653// value will be replaced with "sensitive".
8654func (s OTAJobConfig) GoString() string {
8655	return s.String()
8656}
8657
8658// Validate inspects the fields of the type to determine if they are valid.
8659func (s *OTAJobConfig) Validate() error {
8660	invalidParams := request.ErrInvalidParams{Context: "OTAJobConfig"}
8661	if s.ImageVersion == nil {
8662		invalidParams.Add(request.NewErrParamRequired("ImageVersion"))
8663	}
8664	if s.ImageVersion != nil && len(*s.ImageVersion) < 1 {
8665		invalidParams.Add(request.NewErrParamMinLen("ImageVersion", 1))
8666	}
8667
8668	if invalidParams.Len() > 0 {
8669		return invalidParams
8670	}
8671	return nil
8672}
8673
8674// SetImageVersion sets the ImageVersion field's value.
8675func (s *OTAJobConfig) SetImageVersion(v string) *OTAJobConfig {
8676	s.ImageVersion = &v
8677	return s
8678}
8679
8680// The location of an output object in Amazon S3.
8681type OutPutS3Location struct {
8682	_ struct{} `type:"structure"`
8683
8684	// The object's bucket.
8685	//
8686	// BucketName is a required field
8687	BucketName *string `min:"1" type:"string" required:"true"`
8688
8689	// The object's key.
8690	//
8691	// ObjectKey is a required field
8692	ObjectKey *string `min:"1" type:"string" required:"true"`
8693}
8694
8695// String returns the string representation.
8696//
8697// API parameter values that are decorated as "sensitive" in the API will not
8698// be included in the string output. The member name will be present, but the
8699// value will be replaced with "sensitive".
8700func (s OutPutS3Location) String() string {
8701	return awsutil.Prettify(s)
8702}
8703
8704// GoString returns the string representation.
8705//
8706// API parameter values that are decorated as "sensitive" in the API will not
8707// be included in the string output. The member name will be present, but the
8708// value will be replaced with "sensitive".
8709func (s OutPutS3Location) GoString() string {
8710	return s.String()
8711}
8712
8713// SetBucketName sets the BucketName field's value.
8714func (s *OutPutS3Location) SetBucketName(v string) *OutPutS3Location {
8715	s.BucketName = &v
8716	return s
8717}
8718
8719// SetObjectKey sets the ObjectKey field's value.
8720func (s *OutPutS3Location) SetObjectKey(v string) *OutPutS3Location {
8721	s.ObjectKey = &v
8722	return s
8723}
8724
8725// A job to import a package version.
8726type PackageImportJob struct {
8727	_ struct{} `type:"structure"`
8728
8729	// When the job was created.
8730	CreatedTime *time.Time `type:"timestamp"`
8731
8732	// The job's ID.
8733	JobId *string `min:"1" type:"string"`
8734
8735	// The job's type.
8736	JobType *string `type:"string" enum:"PackageImportJobType"`
8737
8738	// When the job was updated.
8739	LastUpdatedTime *time.Time `type:"timestamp"`
8740
8741	// The job's status.
8742	Status *string `type:"string" enum:"PackageImportJobStatus"`
8743
8744	// The job's status message.
8745	StatusMessage *string `type:"string"`
8746}
8747
8748// String returns the string representation.
8749//
8750// API parameter values that are decorated as "sensitive" in the API will not
8751// be included in the string output. The member name will be present, but the
8752// value will be replaced with "sensitive".
8753func (s PackageImportJob) String() string {
8754	return awsutil.Prettify(s)
8755}
8756
8757// GoString returns the string representation.
8758//
8759// API parameter values that are decorated as "sensitive" in the API will not
8760// be included in the string output. The member name will be present, but the
8761// value will be replaced with "sensitive".
8762func (s PackageImportJob) GoString() string {
8763	return s.String()
8764}
8765
8766// SetCreatedTime sets the CreatedTime field's value.
8767func (s *PackageImportJob) SetCreatedTime(v time.Time) *PackageImportJob {
8768	s.CreatedTime = &v
8769	return s
8770}
8771
8772// SetJobId sets the JobId field's value.
8773func (s *PackageImportJob) SetJobId(v string) *PackageImportJob {
8774	s.JobId = &v
8775	return s
8776}
8777
8778// SetJobType sets the JobType field's value.
8779func (s *PackageImportJob) SetJobType(v string) *PackageImportJob {
8780	s.JobType = &v
8781	return s
8782}
8783
8784// SetLastUpdatedTime sets the LastUpdatedTime field's value.
8785func (s *PackageImportJob) SetLastUpdatedTime(v time.Time) *PackageImportJob {
8786	s.LastUpdatedTime = &v
8787	return s
8788}
8789
8790// SetStatus sets the Status field's value.
8791func (s *PackageImportJob) SetStatus(v string) *PackageImportJob {
8792	s.Status = &v
8793	return s
8794}
8795
8796// SetStatusMessage sets the StatusMessage field's value.
8797func (s *PackageImportJob) SetStatusMessage(v string) *PackageImportJob {
8798	s.StatusMessage = &v
8799	return s
8800}
8801
8802// A configuration for a package import job.
8803type PackageImportJobInputConfig struct {
8804	_ struct{} `type:"structure"`
8805
8806	// The package version's input configuration.
8807	PackageVersionInputConfig *PackageVersionInputConfig `type:"structure"`
8808}
8809
8810// String returns the string representation.
8811//
8812// API parameter values that are decorated as "sensitive" in the API will not
8813// be included in the string output. The member name will be present, but the
8814// value will be replaced with "sensitive".
8815func (s PackageImportJobInputConfig) String() string {
8816	return awsutil.Prettify(s)
8817}
8818
8819// GoString returns the string representation.
8820//
8821// API parameter values that are decorated as "sensitive" in the API will not
8822// be included in the string output. The member name will be present, but the
8823// value will be replaced with "sensitive".
8824func (s PackageImportJobInputConfig) GoString() string {
8825	return s.String()
8826}
8827
8828// Validate inspects the fields of the type to determine if they are valid.
8829func (s *PackageImportJobInputConfig) Validate() error {
8830	invalidParams := request.ErrInvalidParams{Context: "PackageImportJobInputConfig"}
8831	if s.PackageVersionInputConfig != nil {
8832		if err := s.PackageVersionInputConfig.Validate(); err != nil {
8833			invalidParams.AddNested("PackageVersionInputConfig", err.(request.ErrInvalidParams))
8834		}
8835	}
8836
8837	if invalidParams.Len() > 0 {
8838		return invalidParams
8839	}
8840	return nil
8841}
8842
8843// SetPackageVersionInputConfig sets the PackageVersionInputConfig field's value.
8844func (s *PackageImportJobInputConfig) SetPackageVersionInputConfig(v *PackageVersionInputConfig) *PackageImportJobInputConfig {
8845	s.PackageVersionInputConfig = v
8846	return s
8847}
8848
8849// An output configuration for a package import job.
8850type PackageImportJobOutputConfig struct {
8851	_ struct{} `type:"structure"`
8852
8853	// The package version's output configuration.
8854	PackageVersionOutputConfig *PackageVersionOutputConfig `type:"structure"`
8855}
8856
8857// String returns the string representation.
8858//
8859// API parameter values that are decorated as "sensitive" in the API will not
8860// be included in the string output. The member name will be present, but the
8861// value will be replaced with "sensitive".
8862func (s PackageImportJobOutputConfig) String() string {
8863	return awsutil.Prettify(s)
8864}
8865
8866// GoString returns the string representation.
8867//
8868// API parameter values that are decorated as "sensitive" in the API will not
8869// be included in the string output. The member name will be present, but the
8870// value will be replaced with "sensitive".
8871func (s PackageImportJobOutputConfig) GoString() string {
8872	return s.String()
8873}
8874
8875// Validate inspects the fields of the type to determine if they are valid.
8876func (s *PackageImportJobOutputConfig) Validate() error {
8877	invalidParams := request.ErrInvalidParams{Context: "PackageImportJobOutputConfig"}
8878	if s.PackageVersionOutputConfig != nil {
8879		if err := s.PackageVersionOutputConfig.Validate(); err != nil {
8880			invalidParams.AddNested("PackageVersionOutputConfig", err.(request.ErrInvalidParams))
8881		}
8882	}
8883
8884	if invalidParams.Len() > 0 {
8885		return invalidParams
8886	}
8887	return nil
8888}
8889
8890// SetPackageVersionOutputConfig sets the PackageVersionOutputConfig field's value.
8891func (s *PackageImportJobOutputConfig) SetPackageVersionOutputConfig(v *PackageVersionOutputConfig) *PackageImportJobOutputConfig {
8892	s.PackageVersionOutputConfig = v
8893	return s
8894}
8895
8896// Results of a package import job.
8897type PackageImportJobOutput_ struct {
8898	_ struct{} `type:"structure"`
8899
8900	// The package's output location.
8901	//
8902	// OutputS3Location is a required field
8903	OutputS3Location *OutPutS3Location `type:"structure" required:"true"`
8904
8905	// The package's ID.
8906	//
8907	// PackageId is a required field
8908	PackageId *string `min:"1" type:"string" required:"true"`
8909
8910	// The package's version.
8911	//
8912	// PackageVersion is a required field
8913	PackageVersion *string `min:"1" type:"string" required:"true"`
8914
8915	// The package's patch version.
8916	//
8917	// PatchVersion is a required field
8918	PatchVersion *string `min:"1" type:"string" required:"true"`
8919}
8920
8921// String returns the string representation.
8922//
8923// API parameter values that are decorated as "sensitive" in the API will not
8924// be included in the string output. The member name will be present, but the
8925// value will be replaced with "sensitive".
8926func (s PackageImportJobOutput_) String() string {
8927	return awsutil.Prettify(s)
8928}
8929
8930// GoString returns the string representation.
8931//
8932// API parameter values that are decorated as "sensitive" in the API will not
8933// be included in the string output. The member name will be present, but the
8934// value will be replaced with "sensitive".
8935func (s PackageImportJobOutput_) GoString() string {
8936	return s.String()
8937}
8938
8939// SetOutputS3Location sets the OutputS3Location field's value.
8940func (s *PackageImportJobOutput_) SetOutputS3Location(v *OutPutS3Location) *PackageImportJobOutput_ {
8941	s.OutputS3Location = v
8942	return s
8943}
8944
8945// SetPackageId sets the PackageId field's value.
8946func (s *PackageImportJobOutput_) SetPackageId(v string) *PackageImportJobOutput_ {
8947	s.PackageId = &v
8948	return s
8949}
8950
8951// SetPackageVersion sets the PackageVersion field's value.
8952func (s *PackageImportJobOutput_) SetPackageVersion(v string) *PackageImportJobOutput_ {
8953	s.PackageVersion = &v
8954	return s
8955}
8956
8957// SetPatchVersion sets the PatchVersion field's value.
8958func (s *PackageImportJobOutput_) SetPatchVersion(v string) *PackageImportJobOutput_ {
8959	s.PatchVersion = &v
8960	return s
8961}
8962
8963// A package summary.
8964type PackageListItem struct {
8965	_ struct{} `type:"structure"`
8966
8967	// The package's ARN.
8968	Arn *string `min:"1" type:"string"`
8969
8970	// When the package was created.
8971	CreatedTime *time.Time `type:"timestamp"`
8972
8973	// The package's ID.
8974	PackageId *string `min:"1" type:"string"`
8975
8976	// The package's name.
8977	PackageName *string `min:"1" type:"string"`
8978
8979	// The package's tags.
8980	Tags map[string]*string `type:"map"`
8981}
8982
8983// String returns the string representation.
8984//
8985// API parameter values that are decorated as "sensitive" in the API will not
8986// be included in the string output. The member name will be present, but the
8987// value will be replaced with "sensitive".
8988func (s PackageListItem) String() string {
8989	return awsutil.Prettify(s)
8990}
8991
8992// GoString returns the string representation.
8993//
8994// API parameter values that are decorated as "sensitive" in the API will not
8995// be included in the string output. The member name will be present, but the
8996// value will be replaced with "sensitive".
8997func (s PackageListItem) GoString() string {
8998	return s.String()
8999}
9000
9001// SetArn sets the Arn field's value.
9002func (s *PackageListItem) SetArn(v string) *PackageListItem {
9003	s.Arn = &v
9004	return s
9005}
9006
9007// SetCreatedTime sets the CreatedTime field's value.
9008func (s *PackageListItem) SetCreatedTime(v time.Time) *PackageListItem {
9009	s.CreatedTime = &v
9010	return s
9011}
9012
9013// SetPackageId sets the PackageId field's value.
9014func (s *PackageListItem) SetPackageId(v string) *PackageListItem {
9015	s.PackageId = &v
9016	return s
9017}
9018
9019// SetPackageName sets the PackageName field's value.
9020func (s *PackageListItem) SetPackageName(v string) *PackageListItem {
9021	s.PackageName = &v
9022	return s
9023}
9024
9025// SetTags sets the Tags field's value.
9026func (s *PackageListItem) SetTags(v map[string]*string) *PackageListItem {
9027	s.Tags = v
9028	return s
9029}
9030
9031// A package object.
9032type PackageObject struct {
9033	_ struct{} `type:"structure"`
9034
9035	// The object's name.
9036	//
9037	// Name is a required field
9038	Name *string `min:"1" type:"string" required:"true"`
9039
9040	// The object's package version.
9041	//
9042	// PackageVersion is a required field
9043	PackageVersion *string `min:"1" type:"string" required:"true"`
9044
9045	// The object's patch version.
9046	//
9047	// PatchVersion is a required field
9048	PatchVersion *string `min:"1" type:"string" required:"true"`
9049}
9050
9051// String returns the string representation.
9052//
9053// API parameter values that are decorated as "sensitive" in the API will not
9054// be included in the string output. The member name will be present, but the
9055// value will be replaced with "sensitive".
9056func (s PackageObject) String() string {
9057	return awsutil.Prettify(s)
9058}
9059
9060// GoString returns the string representation.
9061//
9062// API parameter values that are decorated as "sensitive" in the API will not
9063// be included in the string output. The member name will be present, but the
9064// value will be replaced with "sensitive".
9065func (s PackageObject) GoString() string {
9066	return s.String()
9067}
9068
9069// SetName sets the Name field's value.
9070func (s *PackageObject) SetName(v string) *PackageObject {
9071	s.Name = &v
9072	return s
9073}
9074
9075// SetPackageVersion sets the PackageVersion field's value.
9076func (s *PackageObject) SetPackageVersion(v string) *PackageObject {
9077	s.PackageVersion = &v
9078	return s
9079}
9080
9081// SetPatchVersion sets the PatchVersion field's value.
9082func (s *PackageObject) SetPatchVersion(v string) *PackageObject {
9083	s.PatchVersion = &v
9084	return s
9085}
9086
9087// A package version input configuration.
9088type PackageVersionInputConfig struct {
9089	_ struct{} `type:"structure"`
9090
9091	// A location in Amazon S3.
9092	//
9093	// S3Location is a required field
9094	S3Location *S3Location `type:"structure" required:"true"`
9095}
9096
9097// String returns the string representation.
9098//
9099// API parameter values that are decorated as "sensitive" in the API will not
9100// be included in the string output. The member name will be present, but the
9101// value will be replaced with "sensitive".
9102func (s PackageVersionInputConfig) String() string {
9103	return awsutil.Prettify(s)
9104}
9105
9106// GoString returns the string representation.
9107//
9108// API parameter values that are decorated as "sensitive" in the API will not
9109// be included in the string output. The member name will be present, but the
9110// value will be replaced with "sensitive".
9111func (s PackageVersionInputConfig) GoString() string {
9112	return s.String()
9113}
9114
9115// Validate inspects the fields of the type to determine if they are valid.
9116func (s *PackageVersionInputConfig) Validate() error {
9117	invalidParams := request.ErrInvalidParams{Context: "PackageVersionInputConfig"}
9118	if s.S3Location == nil {
9119		invalidParams.Add(request.NewErrParamRequired("S3Location"))
9120	}
9121	if s.S3Location != nil {
9122		if err := s.S3Location.Validate(); err != nil {
9123			invalidParams.AddNested("S3Location", err.(request.ErrInvalidParams))
9124		}
9125	}
9126
9127	if invalidParams.Len() > 0 {
9128		return invalidParams
9129	}
9130	return nil
9131}
9132
9133// SetS3Location sets the S3Location field's value.
9134func (s *PackageVersionInputConfig) SetS3Location(v *S3Location) *PackageVersionInputConfig {
9135	s.S3Location = v
9136	return s
9137}
9138
9139// A package version output configuration.
9140type PackageVersionOutputConfig struct {
9141	_ struct{} `type:"structure"`
9142
9143	// Indicates that the version is recommended for all users.
9144	MarkLatest *bool `type:"boolean"`
9145
9146	// The output's package name.
9147	//
9148	// PackageName is a required field
9149	PackageName *string `min:"1" type:"string" required:"true"`
9150
9151	// The output's package version.
9152	//
9153	// PackageVersion is a required field
9154	PackageVersion *string `min:"1" type:"string" required:"true"`
9155}
9156
9157// String returns the string representation.
9158//
9159// API parameter values that are decorated as "sensitive" in the API will not
9160// be included in the string output. The member name will be present, but the
9161// value will be replaced with "sensitive".
9162func (s PackageVersionOutputConfig) String() string {
9163	return awsutil.Prettify(s)
9164}
9165
9166// GoString returns the string representation.
9167//
9168// API parameter values that are decorated as "sensitive" in the API will not
9169// be included in the string output. The member name will be present, but the
9170// value will be replaced with "sensitive".
9171func (s PackageVersionOutputConfig) GoString() string {
9172	return s.String()
9173}
9174
9175// Validate inspects the fields of the type to determine if they are valid.
9176func (s *PackageVersionOutputConfig) Validate() error {
9177	invalidParams := request.ErrInvalidParams{Context: "PackageVersionOutputConfig"}
9178	if s.PackageName == nil {
9179		invalidParams.Add(request.NewErrParamRequired("PackageName"))
9180	}
9181	if s.PackageName != nil && len(*s.PackageName) < 1 {
9182		invalidParams.Add(request.NewErrParamMinLen("PackageName", 1))
9183	}
9184	if s.PackageVersion == nil {
9185		invalidParams.Add(request.NewErrParamRequired("PackageVersion"))
9186	}
9187	if s.PackageVersion != nil && len(*s.PackageVersion) < 1 {
9188		invalidParams.Add(request.NewErrParamMinLen("PackageVersion", 1))
9189	}
9190
9191	if invalidParams.Len() > 0 {
9192		return invalidParams
9193	}
9194	return nil
9195}
9196
9197// SetMarkLatest sets the MarkLatest field's value.
9198func (s *PackageVersionOutputConfig) SetMarkLatest(v bool) *PackageVersionOutputConfig {
9199	s.MarkLatest = &v
9200	return s
9201}
9202
9203// SetPackageName sets the PackageName field's value.
9204func (s *PackageVersionOutputConfig) SetPackageName(v string) *PackageVersionOutputConfig {
9205	s.PackageName = &v
9206	return s
9207}
9208
9209// SetPackageVersion sets the PackageVersion field's value.
9210func (s *PackageVersionOutputConfig) SetPackageVersion(v string) *PackageVersionOutputConfig {
9211	s.PackageVersion = &v
9212	return s
9213}
9214
9215type ProvisionDeviceInput struct {
9216	_ struct{} `type:"structure"`
9217
9218	// A description for the device.
9219	Description *string `type:"string"`
9220
9221	// A name for the device.
9222	//
9223	// Name is a required field
9224	Name *string `min:"1" type:"string" required:"true"`
9225
9226	// A networking configuration for the device.
9227	NetworkingConfiguration *NetworkPayload `type:"structure"`
9228
9229	// Tags for the device.
9230	Tags map[string]*string `type:"map"`
9231}
9232
9233// String returns the string representation.
9234//
9235// API parameter values that are decorated as "sensitive" in the API will not
9236// be included in the string output. The member name will be present, but the
9237// value will be replaced with "sensitive".
9238func (s ProvisionDeviceInput) String() string {
9239	return awsutil.Prettify(s)
9240}
9241
9242// GoString returns the string representation.
9243//
9244// API parameter values that are decorated as "sensitive" in the API will not
9245// be included in the string output. The member name will be present, but the
9246// value will be replaced with "sensitive".
9247func (s ProvisionDeviceInput) GoString() string {
9248	return s.String()
9249}
9250
9251// Validate inspects the fields of the type to determine if they are valid.
9252func (s *ProvisionDeviceInput) Validate() error {
9253	invalidParams := request.ErrInvalidParams{Context: "ProvisionDeviceInput"}
9254	if s.Name == nil {
9255		invalidParams.Add(request.NewErrParamRequired("Name"))
9256	}
9257	if s.Name != nil && len(*s.Name) < 1 {
9258		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
9259	}
9260	if s.NetworkingConfiguration != nil {
9261		if err := s.NetworkingConfiguration.Validate(); err != nil {
9262			invalidParams.AddNested("NetworkingConfiguration", err.(request.ErrInvalidParams))
9263		}
9264	}
9265
9266	if invalidParams.Len() > 0 {
9267		return invalidParams
9268	}
9269	return nil
9270}
9271
9272// SetDescription sets the Description field's value.
9273func (s *ProvisionDeviceInput) SetDescription(v string) *ProvisionDeviceInput {
9274	s.Description = &v
9275	return s
9276}
9277
9278// SetName sets the Name field's value.
9279func (s *ProvisionDeviceInput) SetName(v string) *ProvisionDeviceInput {
9280	s.Name = &v
9281	return s
9282}
9283
9284// SetNetworkingConfiguration sets the NetworkingConfiguration field's value.
9285func (s *ProvisionDeviceInput) SetNetworkingConfiguration(v *NetworkPayload) *ProvisionDeviceInput {
9286	s.NetworkingConfiguration = v
9287	return s
9288}
9289
9290// SetTags sets the Tags field's value.
9291func (s *ProvisionDeviceInput) SetTags(v map[string]*string) *ProvisionDeviceInput {
9292	s.Tags = v
9293	return s
9294}
9295
9296type ProvisionDeviceOutput struct {
9297	_ struct{} `type:"structure"`
9298
9299	// The device's ARN.
9300	//
9301	// Arn is a required field
9302	Arn *string `min:"1" type:"string" required:"true"`
9303
9304	// The device's configuration bundle.
9305	// Certificates is automatically base64 encoded/decoded by the SDK.
9306	Certificates []byte `type:"blob"`
9307
9308	// The device's ID.
9309	DeviceId *string `min:"1" type:"string"`
9310
9311	// The device's IoT thing name.
9312	IotThingName *string `min:"1" type:"string"`
9313
9314	// The device's status.
9315	//
9316	// Status is a required field
9317	Status *string `type:"string" required:"true" enum:"DeviceStatus"`
9318}
9319
9320// String returns the string representation.
9321//
9322// API parameter values that are decorated as "sensitive" in the API will not
9323// be included in the string output. The member name will be present, but the
9324// value will be replaced with "sensitive".
9325func (s ProvisionDeviceOutput) String() string {
9326	return awsutil.Prettify(s)
9327}
9328
9329// GoString returns the string representation.
9330//
9331// API parameter values that are decorated as "sensitive" in the API will not
9332// be included in the string output. The member name will be present, but the
9333// value will be replaced with "sensitive".
9334func (s ProvisionDeviceOutput) GoString() string {
9335	return s.String()
9336}
9337
9338// SetArn sets the Arn field's value.
9339func (s *ProvisionDeviceOutput) SetArn(v string) *ProvisionDeviceOutput {
9340	s.Arn = &v
9341	return s
9342}
9343
9344// SetCertificates sets the Certificates field's value.
9345func (s *ProvisionDeviceOutput) SetCertificates(v []byte) *ProvisionDeviceOutput {
9346	s.Certificates = v
9347	return s
9348}
9349
9350// SetDeviceId sets the DeviceId field's value.
9351func (s *ProvisionDeviceOutput) SetDeviceId(v string) *ProvisionDeviceOutput {
9352	s.DeviceId = &v
9353	return s
9354}
9355
9356// SetIotThingName sets the IotThingName field's value.
9357func (s *ProvisionDeviceOutput) SetIotThingName(v string) *ProvisionDeviceOutput {
9358	s.IotThingName = &v
9359	return s
9360}
9361
9362// SetStatus sets the Status field's value.
9363func (s *ProvisionDeviceOutput) SetStatus(v string) *ProvisionDeviceOutput {
9364	s.Status = &v
9365	return s
9366}
9367
9368type RegisterPackageVersionInput struct {
9369	_ struct{} `type:"structure"`
9370
9371	// Whether to mark the new version as the latest version.
9372	MarkLatest *bool `type:"boolean"`
9373
9374	// An owner account.
9375	OwnerAccount *string `min:"1" type:"string"`
9376
9377	// A package ID.
9378	//
9379	// PackageId is a required field
9380	PackageId *string `location:"uri" locationName:"PackageId" min:"1" type:"string" required:"true"`
9381
9382	// A package version.
9383	//
9384	// PackageVersion is a required field
9385	PackageVersion *string `location:"uri" locationName:"PackageVersion" min:"1" type:"string" required:"true"`
9386
9387	// A patch version.
9388	//
9389	// PatchVersion is a required field
9390	PatchVersion *string `location:"uri" locationName:"PatchVersion" min:"1" type:"string" required:"true"`
9391}
9392
9393// String returns the string representation.
9394//
9395// API parameter values that are decorated as "sensitive" in the API will not
9396// be included in the string output. The member name will be present, but the
9397// value will be replaced with "sensitive".
9398func (s RegisterPackageVersionInput) String() string {
9399	return awsutil.Prettify(s)
9400}
9401
9402// GoString returns the string representation.
9403//
9404// API parameter values that are decorated as "sensitive" in the API will not
9405// be included in the string output. The member name will be present, but the
9406// value will be replaced with "sensitive".
9407func (s RegisterPackageVersionInput) GoString() string {
9408	return s.String()
9409}
9410
9411// Validate inspects the fields of the type to determine if they are valid.
9412func (s *RegisterPackageVersionInput) Validate() error {
9413	invalidParams := request.ErrInvalidParams{Context: "RegisterPackageVersionInput"}
9414	if s.OwnerAccount != nil && len(*s.OwnerAccount) < 1 {
9415		invalidParams.Add(request.NewErrParamMinLen("OwnerAccount", 1))
9416	}
9417	if s.PackageId == nil {
9418		invalidParams.Add(request.NewErrParamRequired("PackageId"))
9419	}
9420	if s.PackageId != nil && len(*s.PackageId) < 1 {
9421		invalidParams.Add(request.NewErrParamMinLen("PackageId", 1))
9422	}
9423	if s.PackageVersion == nil {
9424		invalidParams.Add(request.NewErrParamRequired("PackageVersion"))
9425	}
9426	if s.PackageVersion != nil && len(*s.PackageVersion) < 1 {
9427		invalidParams.Add(request.NewErrParamMinLen("PackageVersion", 1))
9428	}
9429	if s.PatchVersion == nil {
9430		invalidParams.Add(request.NewErrParamRequired("PatchVersion"))
9431	}
9432	if s.PatchVersion != nil && len(*s.PatchVersion) < 1 {
9433		invalidParams.Add(request.NewErrParamMinLen("PatchVersion", 1))
9434	}
9435
9436	if invalidParams.Len() > 0 {
9437		return invalidParams
9438	}
9439	return nil
9440}
9441
9442// SetMarkLatest sets the MarkLatest field's value.
9443func (s *RegisterPackageVersionInput) SetMarkLatest(v bool) *RegisterPackageVersionInput {
9444	s.MarkLatest = &v
9445	return s
9446}
9447
9448// SetOwnerAccount sets the OwnerAccount field's value.
9449func (s *RegisterPackageVersionInput) SetOwnerAccount(v string) *RegisterPackageVersionInput {
9450	s.OwnerAccount = &v
9451	return s
9452}
9453
9454// SetPackageId sets the PackageId field's value.
9455func (s *RegisterPackageVersionInput) SetPackageId(v string) *RegisterPackageVersionInput {
9456	s.PackageId = &v
9457	return s
9458}
9459
9460// SetPackageVersion sets the PackageVersion field's value.
9461func (s *RegisterPackageVersionInput) SetPackageVersion(v string) *RegisterPackageVersionInput {
9462	s.PackageVersion = &v
9463	return s
9464}
9465
9466// SetPatchVersion sets the PatchVersion field's value.
9467func (s *RegisterPackageVersionInput) SetPatchVersion(v string) *RegisterPackageVersionInput {
9468	s.PatchVersion = &v
9469	return s
9470}
9471
9472type RegisterPackageVersionOutput struct {
9473	_ struct{} `type:"structure"`
9474}
9475
9476// String returns the string representation.
9477//
9478// API parameter values that are decorated as "sensitive" in the API will not
9479// be included in the string output. The member name will be present, but the
9480// value will be replaced with "sensitive".
9481func (s RegisterPackageVersionOutput) String() string {
9482	return awsutil.Prettify(s)
9483}
9484
9485// GoString returns the string representation.
9486//
9487// API parameter values that are decorated as "sensitive" in the API will not
9488// be included in the string output. The member name will be present, but the
9489// value will be replaced with "sensitive".
9490func (s RegisterPackageVersionOutput) GoString() string {
9491	return s.String()
9492}
9493
9494type RemoveApplicationInstanceInput struct {
9495	_ struct{} `type:"structure" nopayload:"true"`
9496
9497	// An application instance ID.
9498	//
9499	// ApplicationInstanceId is a required field
9500	ApplicationInstanceId *string `location:"uri" locationName:"applicationInstanceId" min:"1" type:"string" required:"true"`
9501}
9502
9503// String returns the string representation.
9504//
9505// API parameter values that are decorated as "sensitive" in the API will not
9506// be included in the string output. The member name will be present, but the
9507// value will be replaced with "sensitive".
9508func (s RemoveApplicationInstanceInput) String() string {
9509	return awsutil.Prettify(s)
9510}
9511
9512// GoString returns the string representation.
9513//
9514// API parameter values that are decorated as "sensitive" in the API will not
9515// be included in the string output. The member name will be present, but the
9516// value will be replaced with "sensitive".
9517func (s RemoveApplicationInstanceInput) GoString() string {
9518	return s.String()
9519}
9520
9521// Validate inspects the fields of the type to determine if they are valid.
9522func (s *RemoveApplicationInstanceInput) Validate() error {
9523	invalidParams := request.ErrInvalidParams{Context: "RemoveApplicationInstanceInput"}
9524	if s.ApplicationInstanceId == nil {
9525		invalidParams.Add(request.NewErrParamRequired("ApplicationInstanceId"))
9526	}
9527	if s.ApplicationInstanceId != nil && len(*s.ApplicationInstanceId) < 1 {
9528		invalidParams.Add(request.NewErrParamMinLen("ApplicationInstanceId", 1))
9529	}
9530
9531	if invalidParams.Len() > 0 {
9532		return invalidParams
9533	}
9534	return nil
9535}
9536
9537// SetApplicationInstanceId sets the ApplicationInstanceId field's value.
9538func (s *RemoveApplicationInstanceInput) SetApplicationInstanceId(v string) *RemoveApplicationInstanceInput {
9539	s.ApplicationInstanceId = &v
9540	return s
9541}
9542
9543type RemoveApplicationInstanceOutput struct {
9544	_ struct{} `type:"structure"`
9545}
9546
9547// String returns the string representation.
9548//
9549// API parameter values that are decorated as "sensitive" in the API will not
9550// be included in the string output. The member name will be present, but the
9551// value will be replaced with "sensitive".
9552func (s RemoveApplicationInstanceOutput) String() string {
9553	return awsutil.Prettify(s)
9554}
9555
9556// GoString returns the string representation.
9557//
9558// API parameter values that are decorated as "sensitive" in the API will not
9559// be included in the string output. The member name will be present, but the
9560// value will be replaced with "sensitive".
9561func (s RemoveApplicationInstanceOutput) GoString() string {
9562	return s.String()
9563}
9564
9565// The target resource was not found.
9566type ResourceNotFoundException struct {
9567	_            struct{}                  `type:"structure"`
9568	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9569
9570	Message_ *string `locationName:"Message" type:"string"`
9571
9572	// The resource's ID.
9573	//
9574	// ResourceId is a required field
9575	ResourceId *string `type:"string" required:"true"`
9576
9577	// The resource's type.
9578	//
9579	// ResourceType is a required field
9580	ResourceType *string `type:"string" required:"true"`
9581}
9582
9583// String returns the string representation.
9584//
9585// API parameter values that are decorated as "sensitive" in the API will not
9586// be included in the string output. The member name will be present, but the
9587// value will be replaced with "sensitive".
9588func (s ResourceNotFoundException) String() string {
9589	return awsutil.Prettify(s)
9590}
9591
9592// GoString returns the string representation.
9593//
9594// API parameter values that are decorated as "sensitive" in the API will not
9595// be included in the string output. The member name will be present, but the
9596// value will be replaced with "sensitive".
9597func (s ResourceNotFoundException) GoString() string {
9598	return s.String()
9599}
9600
9601func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
9602	return &ResourceNotFoundException{
9603		RespMetadata: v,
9604	}
9605}
9606
9607// Code returns the exception type name.
9608func (s *ResourceNotFoundException) Code() string {
9609	return "ResourceNotFoundException"
9610}
9611
9612// Message returns the exception's message.
9613func (s *ResourceNotFoundException) Message() string {
9614	if s.Message_ != nil {
9615		return *s.Message_
9616	}
9617	return ""
9618}
9619
9620// OrigErr always returns nil, satisfies awserr.Error interface.
9621func (s *ResourceNotFoundException) OrigErr() error {
9622	return nil
9623}
9624
9625func (s *ResourceNotFoundException) Error() string {
9626	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
9627}
9628
9629// Status code returns the HTTP status code for the request's response error.
9630func (s *ResourceNotFoundException) StatusCode() int {
9631	return s.RespMetadata.StatusCode
9632}
9633
9634// RequestID returns the service's response RequestID for request.
9635func (s *ResourceNotFoundException) RequestID() string {
9636	return s.RespMetadata.RequestID
9637}
9638
9639// A location in Amazon S3.
9640type S3Location struct {
9641	_ struct{} `type:"structure"`
9642
9643	// A bucket name.
9644	//
9645	// BucketName is a required field
9646	BucketName *string `min:"1" type:"string" required:"true"`
9647
9648	// An object key.
9649	//
9650	// ObjectKey is a required field
9651	ObjectKey *string `min:"1" type:"string" required:"true"`
9652
9653	// The bucket's Region.
9654	Region *string `min:"1" type:"string"`
9655}
9656
9657// String returns the string representation.
9658//
9659// API parameter values that are decorated as "sensitive" in the API will not
9660// be included in the string output. The member name will be present, but the
9661// value will be replaced with "sensitive".
9662func (s S3Location) String() string {
9663	return awsutil.Prettify(s)
9664}
9665
9666// GoString returns the string representation.
9667//
9668// API parameter values that are decorated as "sensitive" in the API will not
9669// be included in the string output. The member name will be present, but the
9670// value will be replaced with "sensitive".
9671func (s S3Location) GoString() string {
9672	return s.String()
9673}
9674
9675// Validate inspects the fields of the type to determine if they are valid.
9676func (s *S3Location) Validate() error {
9677	invalidParams := request.ErrInvalidParams{Context: "S3Location"}
9678	if s.BucketName == nil {
9679		invalidParams.Add(request.NewErrParamRequired("BucketName"))
9680	}
9681	if s.BucketName != nil && len(*s.BucketName) < 1 {
9682		invalidParams.Add(request.NewErrParamMinLen("BucketName", 1))
9683	}
9684	if s.ObjectKey == nil {
9685		invalidParams.Add(request.NewErrParamRequired("ObjectKey"))
9686	}
9687	if s.ObjectKey != nil && len(*s.ObjectKey) < 1 {
9688		invalidParams.Add(request.NewErrParamMinLen("ObjectKey", 1))
9689	}
9690	if s.Region != nil && len(*s.Region) < 1 {
9691		invalidParams.Add(request.NewErrParamMinLen("Region", 1))
9692	}
9693
9694	if invalidParams.Len() > 0 {
9695		return invalidParams
9696	}
9697	return nil
9698}
9699
9700// SetBucketName sets the BucketName field's value.
9701func (s *S3Location) SetBucketName(v string) *S3Location {
9702	s.BucketName = &v
9703	return s
9704}
9705
9706// SetObjectKey sets the ObjectKey field's value.
9707func (s *S3Location) SetObjectKey(v string) *S3Location {
9708	s.ObjectKey = &v
9709	return s
9710}
9711
9712// SetRegion sets the Region field's value.
9713func (s *S3Location) SetRegion(v string) *S3Location {
9714	s.Region = &v
9715	return s
9716}
9717
9718// The request would cause a limit to be exceeded.
9719type ServiceQuotaExceededException struct {
9720	_            struct{}                  `type:"structure"`
9721	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9722
9723	Message_ *string `locationName:"Message" type:"string"`
9724
9725	// The name of the limit.
9726	//
9727	// QuotaCode is a required field
9728	QuotaCode *string `type:"string" required:"true"`
9729
9730	// The target resource's ID.
9731	ResourceId *string `type:"string"`
9732
9733	// The target resource's type.
9734	ResourceType *string `type:"string"`
9735
9736	// The name of the service.
9737	//
9738	// ServiceCode is a required field
9739	ServiceCode *string `type:"string" required:"true"`
9740}
9741
9742// String returns the string representation.
9743//
9744// API parameter values that are decorated as "sensitive" in the API will not
9745// be included in the string output. The member name will be present, but the
9746// value will be replaced with "sensitive".
9747func (s ServiceQuotaExceededException) String() string {
9748	return awsutil.Prettify(s)
9749}
9750
9751// GoString returns the string representation.
9752//
9753// API parameter values that are decorated as "sensitive" in the API will not
9754// be included in the string output. The member name will be present, but the
9755// value will be replaced with "sensitive".
9756func (s ServiceQuotaExceededException) GoString() string {
9757	return s.String()
9758}
9759
9760func newErrorServiceQuotaExceededException(v protocol.ResponseMetadata) error {
9761	return &ServiceQuotaExceededException{
9762		RespMetadata: v,
9763	}
9764}
9765
9766// Code returns the exception type name.
9767func (s *ServiceQuotaExceededException) Code() string {
9768	return "ServiceQuotaExceededException"
9769}
9770
9771// Message returns the exception's message.
9772func (s *ServiceQuotaExceededException) Message() string {
9773	if s.Message_ != nil {
9774		return *s.Message_
9775	}
9776	return ""
9777}
9778
9779// OrigErr always returns nil, satisfies awserr.Error interface.
9780func (s *ServiceQuotaExceededException) OrigErr() error {
9781	return nil
9782}
9783
9784func (s *ServiceQuotaExceededException) Error() string {
9785	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
9786}
9787
9788// Status code returns the HTTP status code for the request's response error.
9789func (s *ServiceQuotaExceededException) StatusCode() int {
9790	return s.RespMetadata.StatusCode
9791}
9792
9793// RequestID returns the service's response RequestID for request.
9794func (s *ServiceQuotaExceededException) RequestID() string {
9795	return s.RespMetadata.RequestID
9796}
9797
9798// A static IP configuration.
9799type StaticIpConnectionInfo struct {
9800	_ struct{} `type:"structure"`
9801
9802	// The connection's default gateway.
9803	//
9804	// DefaultGateway is a required field
9805	DefaultGateway *string `min:"1" type:"string" required:"true"`
9806
9807	// The connection's DNS address.
9808	//
9809	// Dns is a required field
9810	Dns []*string `type:"list" required:"true"`
9811
9812	// The connection's IP address.
9813	//
9814	// IpAddress is a required field
9815	IpAddress *string `min:"1" type:"string" required:"true"`
9816
9817	// The connection's DNS mask.
9818	//
9819	// Mask is a required field
9820	Mask *string `min:"1" type:"string" required:"true"`
9821}
9822
9823// String returns the string representation.
9824//
9825// API parameter values that are decorated as "sensitive" in the API will not
9826// be included in the string output. The member name will be present, but the
9827// value will be replaced with "sensitive".
9828func (s StaticIpConnectionInfo) String() string {
9829	return awsutil.Prettify(s)
9830}
9831
9832// GoString returns the string representation.
9833//
9834// API parameter values that are decorated as "sensitive" in the API will not
9835// be included in the string output. The member name will be present, but the
9836// value will be replaced with "sensitive".
9837func (s StaticIpConnectionInfo) GoString() string {
9838	return s.String()
9839}
9840
9841// Validate inspects the fields of the type to determine if they are valid.
9842func (s *StaticIpConnectionInfo) Validate() error {
9843	invalidParams := request.ErrInvalidParams{Context: "StaticIpConnectionInfo"}
9844	if s.DefaultGateway == nil {
9845		invalidParams.Add(request.NewErrParamRequired("DefaultGateway"))
9846	}
9847	if s.DefaultGateway != nil && len(*s.DefaultGateway) < 1 {
9848		invalidParams.Add(request.NewErrParamMinLen("DefaultGateway", 1))
9849	}
9850	if s.Dns == nil {
9851		invalidParams.Add(request.NewErrParamRequired("Dns"))
9852	}
9853	if s.IpAddress == nil {
9854		invalidParams.Add(request.NewErrParamRequired("IpAddress"))
9855	}
9856	if s.IpAddress != nil && len(*s.IpAddress) < 1 {
9857		invalidParams.Add(request.NewErrParamMinLen("IpAddress", 1))
9858	}
9859	if s.Mask == nil {
9860		invalidParams.Add(request.NewErrParamRequired("Mask"))
9861	}
9862	if s.Mask != nil && len(*s.Mask) < 1 {
9863		invalidParams.Add(request.NewErrParamMinLen("Mask", 1))
9864	}
9865
9866	if invalidParams.Len() > 0 {
9867		return invalidParams
9868	}
9869	return nil
9870}
9871
9872// SetDefaultGateway sets the DefaultGateway field's value.
9873func (s *StaticIpConnectionInfo) SetDefaultGateway(v string) *StaticIpConnectionInfo {
9874	s.DefaultGateway = &v
9875	return s
9876}
9877
9878// SetDns sets the Dns field's value.
9879func (s *StaticIpConnectionInfo) SetDns(v []*string) *StaticIpConnectionInfo {
9880	s.Dns = v
9881	return s
9882}
9883
9884// SetIpAddress sets the IpAddress field's value.
9885func (s *StaticIpConnectionInfo) SetIpAddress(v string) *StaticIpConnectionInfo {
9886	s.IpAddress = &v
9887	return s
9888}
9889
9890// SetMask sets the Mask field's value.
9891func (s *StaticIpConnectionInfo) SetMask(v string) *StaticIpConnectionInfo {
9892	s.Mask = &v
9893	return s
9894}
9895
9896// A storage location.
9897type StorageLocation struct {
9898	_ struct{} `type:"structure"`
9899
9900	// The location's binary prefix.
9901	//
9902	// BinaryPrefixLocation is a required field
9903	BinaryPrefixLocation *string `type:"string" required:"true"`
9904
9905	// The location's bucket.
9906	//
9907	// Bucket is a required field
9908	Bucket *string `type:"string" required:"true"`
9909
9910	// The location's generated prefix.
9911	//
9912	// GeneratedPrefixLocation is a required field
9913	GeneratedPrefixLocation *string `type:"string" required:"true"`
9914
9915	// The location's manifest prefix.
9916	//
9917	// ManifestPrefixLocation is a required field
9918	ManifestPrefixLocation *string `type:"string" required:"true"`
9919
9920	// The location's repo prefix.
9921	//
9922	// RepoPrefixLocation is a required field
9923	RepoPrefixLocation *string `type:"string" required:"true"`
9924}
9925
9926// String returns the string representation.
9927//
9928// API parameter values that are decorated as "sensitive" in the API will not
9929// be included in the string output. The member name will be present, but the
9930// value will be replaced with "sensitive".
9931func (s StorageLocation) String() string {
9932	return awsutil.Prettify(s)
9933}
9934
9935// GoString returns the string representation.
9936//
9937// API parameter values that are decorated as "sensitive" in the API will not
9938// be included in the string output. The member name will be present, but the
9939// value will be replaced with "sensitive".
9940func (s StorageLocation) GoString() string {
9941	return s.String()
9942}
9943
9944// SetBinaryPrefixLocation sets the BinaryPrefixLocation field's value.
9945func (s *StorageLocation) SetBinaryPrefixLocation(v string) *StorageLocation {
9946	s.BinaryPrefixLocation = &v
9947	return s
9948}
9949
9950// SetBucket sets the Bucket field's value.
9951func (s *StorageLocation) SetBucket(v string) *StorageLocation {
9952	s.Bucket = &v
9953	return s
9954}
9955
9956// SetGeneratedPrefixLocation sets the GeneratedPrefixLocation field's value.
9957func (s *StorageLocation) SetGeneratedPrefixLocation(v string) *StorageLocation {
9958	s.GeneratedPrefixLocation = &v
9959	return s
9960}
9961
9962// SetManifestPrefixLocation sets the ManifestPrefixLocation field's value.
9963func (s *StorageLocation) SetManifestPrefixLocation(v string) *StorageLocation {
9964	s.ManifestPrefixLocation = &v
9965	return s
9966}
9967
9968// SetRepoPrefixLocation sets the RepoPrefixLocation field's value.
9969func (s *StorageLocation) SetRepoPrefixLocation(v string) *StorageLocation {
9970	s.RepoPrefixLocation = &v
9971	return s
9972}
9973
9974type TagResourceInput struct {
9975	_ struct{} `type:"structure"`
9976
9977	// The resource's ARN.
9978	//
9979	// ResourceArn is a required field
9980	ResourceArn *string `location:"uri" locationName:"ResourceArn" min:"1" type:"string" required:"true"`
9981
9982	// Tags for the resource.
9983	//
9984	// Tags is a required field
9985	Tags map[string]*string `type:"map" required:"true"`
9986}
9987
9988// String returns the string representation.
9989//
9990// API parameter values that are decorated as "sensitive" in the API will not
9991// be included in the string output. The member name will be present, but the
9992// value will be replaced with "sensitive".
9993func (s TagResourceInput) String() string {
9994	return awsutil.Prettify(s)
9995}
9996
9997// GoString returns the string representation.
9998//
9999// API parameter values that are decorated as "sensitive" in the API will not
10000// be included in the string output. The member name will be present, but the
10001// value will be replaced with "sensitive".
10002func (s TagResourceInput) GoString() string {
10003	return s.String()
10004}
10005
10006// Validate inspects the fields of the type to determine if they are valid.
10007func (s *TagResourceInput) Validate() error {
10008	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
10009	if s.ResourceArn == nil {
10010		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
10011	}
10012	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
10013		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
10014	}
10015	if s.Tags == nil {
10016		invalidParams.Add(request.NewErrParamRequired("Tags"))
10017	}
10018
10019	if invalidParams.Len() > 0 {
10020		return invalidParams
10021	}
10022	return nil
10023}
10024
10025// SetResourceArn sets the ResourceArn field's value.
10026func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
10027	s.ResourceArn = &v
10028	return s
10029}
10030
10031// SetTags sets the Tags field's value.
10032func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput {
10033	s.Tags = v
10034	return s
10035}
10036
10037type TagResourceOutput struct {
10038	_ struct{} `type:"structure"`
10039}
10040
10041// String returns the string representation.
10042//
10043// API parameter values that are decorated as "sensitive" in the API will not
10044// be included in the string output. The member name will be present, but the
10045// value will be replaced with "sensitive".
10046func (s TagResourceOutput) String() string {
10047	return awsutil.Prettify(s)
10048}
10049
10050// GoString returns the string representation.
10051//
10052// API parameter values that are decorated as "sensitive" in the API will not
10053// be included in the string output. The member name will be present, but the
10054// value will be replaced with "sensitive".
10055func (s TagResourceOutput) GoString() string {
10056	return s.String()
10057}
10058
10059type UntagResourceInput struct {
10060	_ struct{} `type:"structure" nopayload:"true"`
10061
10062	// The resource's ARN.
10063	//
10064	// ResourceArn is a required field
10065	ResourceArn *string `location:"uri" locationName:"ResourceArn" min:"1" type:"string" required:"true"`
10066
10067	// Tag keys to remove.
10068	//
10069	// TagKeys is a required field
10070	TagKeys []*string `location:"querystring" locationName:"tagKeys" min:"1" type:"list" required:"true"`
10071}
10072
10073// String returns the string representation.
10074//
10075// API parameter values that are decorated as "sensitive" in the API will not
10076// be included in the string output. The member name will be present, but the
10077// value will be replaced with "sensitive".
10078func (s UntagResourceInput) String() string {
10079	return awsutil.Prettify(s)
10080}
10081
10082// GoString returns the string representation.
10083//
10084// API parameter values that are decorated as "sensitive" in the API will not
10085// be included in the string output. The member name will be present, but the
10086// value will be replaced with "sensitive".
10087func (s UntagResourceInput) GoString() string {
10088	return s.String()
10089}
10090
10091// Validate inspects the fields of the type to determine if they are valid.
10092func (s *UntagResourceInput) Validate() error {
10093	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
10094	if s.ResourceArn == nil {
10095		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
10096	}
10097	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
10098		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
10099	}
10100	if s.TagKeys == nil {
10101		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
10102	}
10103	if s.TagKeys != nil && len(s.TagKeys) < 1 {
10104		invalidParams.Add(request.NewErrParamMinLen("TagKeys", 1))
10105	}
10106
10107	if invalidParams.Len() > 0 {
10108		return invalidParams
10109	}
10110	return nil
10111}
10112
10113// SetResourceArn sets the ResourceArn field's value.
10114func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
10115	s.ResourceArn = &v
10116	return s
10117}
10118
10119// SetTagKeys sets the TagKeys field's value.
10120func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
10121	s.TagKeys = v
10122	return s
10123}
10124
10125type UntagResourceOutput struct {
10126	_ struct{} `type:"structure"`
10127}
10128
10129// String returns the string representation.
10130//
10131// API parameter values that are decorated as "sensitive" in the API will not
10132// be included in the string output. The member name will be present, but the
10133// value will be replaced with "sensitive".
10134func (s UntagResourceOutput) String() string {
10135	return awsutil.Prettify(s)
10136}
10137
10138// GoString returns the string representation.
10139//
10140// API parameter values that are decorated as "sensitive" in the API will not
10141// be included in the string output. The member name will be present, but the
10142// value will be replaced with "sensitive".
10143func (s UntagResourceOutput) GoString() string {
10144	return s.String()
10145}
10146
10147type UpdateDeviceMetadataInput struct {
10148	_ struct{} `type:"structure"`
10149
10150	// A description for the device.
10151	Description *string `type:"string"`
10152
10153	// The device's ID.
10154	//
10155	// DeviceId is a required field
10156	DeviceId *string `location:"uri" locationName:"DeviceId" min:"1" type:"string" required:"true"`
10157}
10158
10159// String returns the string representation.
10160//
10161// API parameter values that are decorated as "sensitive" in the API will not
10162// be included in the string output. The member name will be present, but the
10163// value will be replaced with "sensitive".
10164func (s UpdateDeviceMetadataInput) String() string {
10165	return awsutil.Prettify(s)
10166}
10167
10168// GoString returns the string representation.
10169//
10170// API parameter values that are decorated as "sensitive" in the API will not
10171// be included in the string output. The member name will be present, but the
10172// value will be replaced with "sensitive".
10173func (s UpdateDeviceMetadataInput) GoString() string {
10174	return s.String()
10175}
10176
10177// Validate inspects the fields of the type to determine if they are valid.
10178func (s *UpdateDeviceMetadataInput) Validate() error {
10179	invalidParams := request.ErrInvalidParams{Context: "UpdateDeviceMetadataInput"}
10180	if s.DeviceId == nil {
10181		invalidParams.Add(request.NewErrParamRequired("DeviceId"))
10182	}
10183	if s.DeviceId != nil && len(*s.DeviceId) < 1 {
10184		invalidParams.Add(request.NewErrParamMinLen("DeviceId", 1))
10185	}
10186
10187	if invalidParams.Len() > 0 {
10188		return invalidParams
10189	}
10190	return nil
10191}
10192
10193// SetDescription sets the Description field's value.
10194func (s *UpdateDeviceMetadataInput) SetDescription(v string) *UpdateDeviceMetadataInput {
10195	s.Description = &v
10196	return s
10197}
10198
10199// SetDeviceId sets the DeviceId field's value.
10200func (s *UpdateDeviceMetadataInput) SetDeviceId(v string) *UpdateDeviceMetadataInput {
10201	s.DeviceId = &v
10202	return s
10203}
10204
10205type UpdateDeviceMetadataOutput struct {
10206	_ struct{} `type:"structure"`
10207
10208	// The device's ID.
10209	DeviceId *string `min:"1" type:"string"`
10210}
10211
10212// String returns the string representation.
10213//
10214// API parameter values that are decorated as "sensitive" in the API will not
10215// be included in the string output. The member name will be present, but the
10216// value will be replaced with "sensitive".
10217func (s UpdateDeviceMetadataOutput) String() string {
10218	return awsutil.Prettify(s)
10219}
10220
10221// GoString returns the string representation.
10222//
10223// API parameter values that are decorated as "sensitive" in the API will not
10224// be included in the string output. The member name will be present, but the
10225// value will be replaced with "sensitive".
10226func (s UpdateDeviceMetadataOutput) GoString() string {
10227	return s.String()
10228}
10229
10230// SetDeviceId sets the DeviceId field's value.
10231func (s *UpdateDeviceMetadataOutput) SetDeviceId(v string) *UpdateDeviceMetadataOutput {
10232	s.DeviceId = &v
10233	return s
10234}
10235
10236// The request contains an invalid parameter value.
10237type ValidationException struct {
10238	_            struct{}                  `type:"structure"`
10239	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
10240
10241	// A list of attributes that led to the exception and their values.
10242	ErrorArguments []*ValidationExceptionErrorArgument `type:"list"`
10243
10244	// A unique ID for the error.
10245	ErrorId *string `type:"string"`
10246
10247	// A list of request parameters that failed validation.
10248	Fields []*ValidationExceptionField `type:"list"`
10249
10250	Message_ *string `locationName:"Message" type:"string"`
10251
10252	// The reason that validation failed.
10253	Reason *string `type:"string" enum:"ValidationExceptionReason"`
10254}
10255
10256// String returns the string representation.
10257//
10258// API parameter values that are decorated as "sensitive" in the API will not
10259// be included in the string output. The member name will be present, but the
10260// value will be replaced with "sensitive".
10261func (s ValidationException) String() string {
10262	return awsutil.Prettify(s)
10263}
10264
10265// GoString returns the string representation.
10266//
10267// API parameter values that are decorated as "sensitive" in the API will not
10268// be included in the string output. The member name will be present, but the
10269// value will be replaced with "sensitive".
10270func (s ValidationException) GoString() string {
10271	return s.String()
10272}
10273
10274func newErrorValidationException(v protocol.ResponseMetadata) error {
10275	return &ValidationException{
10276		RespMetadata: v,
10277	}
10278}
10279
10280// Code returns the exception type name.
10281func (s *ValidationException) Code() string {
10282	return "ValidationException"
10283}
10284
10285// Message returns the exception's message.
10286func (s *ValidationException) Message() string {
10287	if s.Message_ != nil {
10288		return *s.Message_
10289	}
10290	return ""
10291}
10292
10293// OrigErr always returns nil, satisfies awserr.Error interface.
10294func (s *ValidationException) OrigErr() error {
10295	return nil
10296}
10297
10298func (s *ValidationException) Error() string {
10299	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
10300}
10301
10302// Status code returns the HTTP status code for the request's response error.
10303func (s *ValidationException) StatusCode() int {
10304	return s.RespMetadata.StatusCode
10305}
10306
10307// RequestID returns the service's response RequestID for request.
10308func (s *ValidationException) RequestID() string {
10309	return s.RespMetadata.RequestID
10310}
10311
10312// A validation exception error argument.
10313type ValidationExceptionErrorArgument struct {
10314	_ struct{} `type:"structure"`
10315
10316	// The argument's name.
10317	//
10318	// Name is a required field
10319	Name *string `type:"string" required:"true"`
10320
10321	// The argument's value.
10322	//
10323	// Value is a required field
10324	Value *string `type:"string" required:"true"`
10325}
10326
10327// String returns the string representation.
10328//
10329// API parameter values that are decorated as "sensitive" in the API will not
10330// be included in the string output. The member name will be present, but the
10331// value will be replaced with "sensitive".
10332func (s ValidationExceptionErrorArgument) String() string {
10333	return awsutil.Prettify(s)
10334}
10335
10336// GoString returns the string representation.
10337//
10338// API parameter values that are decorated as "sensitive" in the API will not
10339// be included in the string output. The member name will be present, but the
10340// value will be replaced with "sensitive".
10341func (s ValidationExceptionErrorArgument) GoString() string {
10342	return s.String()
10343}
10344
10345// SetName sets the Name field's value.
10346func (s *ValidationExceptionErrorArgument) SetName(v string) *ValidationExceptionErrorArgument {
10347	s.Name = &v
10348	return s
10349}
10350
10351// SetValue sets the Value field's value.
10352func (s *ValidationExceptionErrorArgument) SetValue(v string) *ValidationExceptionErrorArgument {
10353	s.Value = &v
10354	return s
10355}
10356
10357// A validation exception field.
10358type ValidationExceptionField struct {
10359	_ struct{} `type:"structure"`
10360
10361	// The field's message.
10362	//
10363	// Message is a required field
10364	Message *string `type:"string" required:"true"`
10365
10366	// The field's name.
10367	//
10368	// Name is a required field
10369	Name *string `type:"string" required:"true"`
10370}
10371
10372// String returns the string representation.
10373//
10374// API parameter values that are decorated as "sensitive" in the API will not
10375// be included in the string output. The member name will be present, but the
10376// value will be replaced with "sensitive".
10377func (s ValidationExceptionField) String() string {
10378	return awsutil.Prettify(s)
10379}
10380
10381// GoString returns the string representation.
10382//
10383// API parameter values that are decorated as "sensitive" in the API will not
10384// be included in the string output. The member name will be present, but the
10385// value will be replaced with "sensitive".
10386func (s ValidationExceptionField) GoString() string {
10387	return s.String()
10388}
10389
10390// SetMessage sets the Message field's value.
10391func (s *ValidationExceptionField) SetMessage(v string) *ValidationExceptionField {
10392	s.Message = &v
10393	return s
10394}
10395
10396// SetName sets the Name field's value.
10397func (s *ValidationExceptionField) SetName(v string) *ValidationExceptionField {
10398	s.Name = &v
10399	return s
10400}
10401
10402const (
10403	// ApplicationInstanceHealthStatusRunning is a ApplicationInstanceHealthStatus enum value
10404	ApplicationInstanceHealthStatusRunning = "RUNNING"
10405
10406	// ApplicationInstanceHealthStatusError is a ApplicationInstanceHealthStatus enum value
10407	ApplicationInstanceHealthStatusError = "ERROR"
10408
10409	// ApplicationInstanceHealthStatusNotAvailable is a ApplicationInstanceHealthStatus enum value
10410	ApplicationInstanceHealthStatusNotAvailable = "NOT_AVAILABLE"
10411)
10412
10413// ApplicationInstanceHealthStatus_Values returns all elements of the ApplicationInstanceHealthStatus enum
10414func ApplicationInstanceHealthStatus_Values() []string {
10415	return []string{
10416		ApplicationInstanceHealthStatusRunning,
10417		ApplicationInstanceHealthStatusError,
10418		ApplicationInstanceHealthStatusNotAvailable,
10419	}
10420}
10421
10422const (
10423	// ApplicationInstanceStatusDeploymentPending is a ApplicationInstanceStatus enum value
10424	ApplicationInstanceStatusDeploymentPending = "DEPLOYMENT_PENDING"
10425
10426	// ApplicationInstanceStatusDeploymentRequested is a ApplicationInstanceStatus enum value
10427	ApplicationInstanceStatusDeploymentRequested = "DEPLOYMENT_REQUESTED"
10428
10429	// ApplicationInstanceStatusDeploymentInProgress is a ApplicationInstanceStatus enum value
10430	ApplicationInstanceStatusDeploymentInProgress = "DEPLOYMENT_IN_PROGRESS"
10431
10432	// ApplicationInstanceStatusDeploymentError is a ApplicationInstanceStatus enum value
10433	ApplicationInstanceStatusDeploymentError = "DEPLOYMENT_ERROR"
10434
10435	// ApplicationInstanceStatusDeploymentSucceeded is a ApplicationInstanceStatus enum value
10436	ApplicationInstanceStatusDeploymentSucceeded = "DEPLOYMENT_SUCCEEDED"
10437
10438	// ApplicationInstanceStatusRemovalPending is a ApplicationInstanceStatus enum value
10439	ApplicationInstanceStatusRemovalPending = "REMOVAL_PENDING"
10440
10441	// ApplicationInstanceStatusRemovalRequested is a ApplicationInstanceStatus enum value
10442	ApplicationInstanceStatusRemovalRequested = "REMOVAL_REQUESTED"
10443
10444	// ApplicationInstanceStatusRemovalInProgress is a ApplicationInstanceStatus enum value
10445	ApplicationInstanceStatusRemovalInProgress = "REMOVAL_IN_PROGRESS"
10446
10447	// ApplicationInstanceStatusRemovalFailed is a ApplicationInstanceStatus enum value
10448	ApplicationInstanceStatusRemovalFailed = "REMOVAL_FAILED"
10449
10450	// ApplicationInstanceStatusRemovalSucceeded is a ApplicationInstanceStatus enum value
10451	ApplicationInstanceStatusRemovalSucceeded = "REMOVAL_SUCCEEDED"
10452)
10453
10454// ApplicationInstanceStatus_Values returns all elements of the ApplicationInstanceStatus enum
10455func ApplicationInstanceStatus_Values() []string {
10456	return []string{
10457		ApplicationInstanceStatusDeploymentPending,
10458		ApplicationInstanceStatusDeploymentRequested,
10459		ApplicationInstanceStatusDeploymentInProgress,
10460		ApplicationInstanceStatusDeploymentError,
10461		ApplicationInstanceStatusDeploymentSucceeded,
10462		ApplicationInstanceStatusRemovalPending,
10463		ApplicationInstanceStatusRemovalRequested,
10464		ApplicationInstanceStatusRemovalInProgress,
10465		ApplicationInstanceStatusRemovalFailed,
10466		ApplicationInstanceStatusRemovalSucceeded,
10467	}
10468}
10469
10470const (
10471	// ConnectionTypeStaticIp is a ConnectionType enum value
10472	ConnectionTypeStaticIp = "STATIC_IP"
10473
10474	// ConnectionTypeDhcp is a ConnectionType enum value
10475	ConnectionTypeDhcp = "DHCP"
10476)
10477
10478// ConnectionType_Values returns all elements of the ConnectionType enum
10479func ConnectionType_Values() []string {
10480	return []string{
10481		ConnectionTypeStaticIp,
10482		ConnectionTypeDhcp,
10483	}
10484}
10485
10486const (
10487	// DeviceConnectionStatusOnline is a DeviceConnectionStatus enum value
10488	DeviceConnectionStatusOnline = "ONLINE"
10489
10490	// DeviceConnectionStatusOffline is a DeviceConnectionStatus enum value
10491	DeviceConnectionStatusOffline = "OFFLINE"
10492
10493	// DeviceConnectionStatusAwaitingCredentials is a DeviceConnectionStatus enum value
10494	DeviceConnectionStatusAwaitingCredentials = "AWAITING_CREDENTIALS"
10495
10496	// DeviceConnectionStatusNotAvailable is a DeviceConnectionStatus enum value
10497	DeviceConnectionStatusNotAvailable = "NOT_AVAILABLE"
10498
10499	// DeviceConnectionStatusError is a DeviceConnectionStatus enum value
10500	DeviceConnectionStatusError = "ERROR"
10501)
10502
10503// DeviceConnectionStatus_Values returns all elements of the DeviceConnectionStatus enum
10504func DeviceConnectionStatus_Values() []string {
10505	return []string{
10506		DeviceConnectionStatusOnline,
10507		DeviceConnectionStatusOffline,
10508		DeviceConnectionStatusAwaitingCredentials,
10509		DeviceConnectionStatusNotAvailable,
10510		DeviceConnectionStatusError,
10511	}
10512}
10513
10514const (
10515	// DeviceStatusAwaitingProvisioning is a DeviceStatus enum value
10516	DeviceStatusAwaitingProvisioning = "AWAITING_PROVISIONING"
10517
10518	// DeviceStatusPending is a DeviceStatus enum value
10519	DeviceStatusPending = "PENDING"
10520
10521	// DeviceStatusSucceeded is a DeviceStatus enum value
10522	DeviceStatusSucceeded = "SUCCEEDED"
10523
10524	// DeviceStatusFailed is a DeviceStatus enum value
10525	DeviceStatusFailed = "FAILED"
10526
10527	// DeviceStatusError is a DeviceStatus enum value
10528	DeviceStatusError = "ERROR"
10529
10530	// DeviceStatusDeleting is a DeviceStatus enum value
10531	DeviceStatusDeleting = "DELETING"
10532)
10533
10534// DeviceStatus_Values returns all elements of the DeviceStatus enum
10535func DeviceStatus_Values() []string {
10536	return []string{
10537		DeviceStatusAwaitingProvisioning,
10538		DeviceStatusPending,
10539		DeviceStatusSucceeded,
10540		DeviceStatusFailed,
10541		DeviceStatusError,
10542		DeviceStatusDeleting,
10543	}
10544}
10545
10546const (
10547	// DeviceTypePanoramaApplianceDeveloperKit is a DeviceType enum value
10548	DeviceTypePanoramaApplianceDeveloperKit = "PANORAMA_APPLIANCE_DEVELOPER_KIT"
10549
10550	// DeviceTypePanoramaAppliance is a DeviceType enum value
10551	DeviceTypePanoramaAppliance = "PANORAMA_APPLIANCE"
10552)
10553
10554// DeviceType_Values returns all elements of the DeviceType enum
10555func DeviceType_Values() []string {
10556	return []string{
10557		DeviceTypePanoramaApplianceDeveloperKit,
10558		DeviceTypePanoramaAppliance,
10559	}
10560}
10561
10562const (
10563	// JobResourceTypePackage is a JobResourceType enum value
10564	JobResourceTypePackage = "PACKAGE"
10565)
10566
10567// JobResourceType_Values returns all elements of the JobResourceType enum
10568func JobResourceType_Values() []string {
10569	return []string{
10570		JobResourceTypePackage,
10571	}
10572}
10573
10574const (
10575	// JobTypeOta is a JobType enum value
10576	JobTypeOta = "OTA"
10577)
10578
10579// JobType_Values returns all elements of the JobType enum
10580func JobType_Values() []string {
10581	return []string{
10582		JobTypeOta,
10583	}
10584}
10585
10586const (
10587	// NetworkConnectionStatusConnected is a NetworkConnectionStatus enum value
10588	NetworkConnectionStatusConnected = "CONNECTED"
10589
10590	// NetworkConnectionStatusNotConnected is a NetworkConnectionStatus enum value
10591	NetworkConnectionStatusNotConnected = "NOT_CONNECTED"
10592)
10593
10594// NetworkConnectionStatus_Values returns all elements of the NetworkConnectionStatus enum
10595func NetworkConnectionStatus_Values() []string {
10596	return []string{
10597		NetworkConnectionStatusConnected,
10598		NetworkConnectionStatusNotConnected,
10599	}
10600}
10601
10602const (
10603	// NodeCategoryBusinessLogic is a NodeCategory enum value
10604	NodeCategoryBusinessLogic = "BUSINESS_LOGIC"
10605
10606	// NodeCategoryMlModel is a NodeCategory enum value
10607	NodeCategoryMlModel = "ML_MODEL"
10608
10609	// NodeCategoryMediaSource is a NodeCategory enum value
10610	NodeCategoryMediaSource = "MEDIA_SOURCE"
10611
10612	// NodeCategoryMediaSink is a NodeCategory enum value
10613	NodeCategoryMediaSink = "MEDIA_SINK"
10614)
10615
10616// NodeCategory_Values returns all elements of the NodeCategory enum
10617func NodeCategory_Values() []string {
10618	return []string{
10619		NodeCategoryBusinessLogic,
10620		NodeCategoryMlModel,
10621		NodeCategoryMediaSource,
10622		NodeCategoryMediaSink,
10623	}
10624}
10625
10626const (
10627	// NodeFromTemplateJobStatusPending is a NodeFromTemplateJobStatus enum value
10628	NodeFromTemplateJobStatusPending = "PENDING"
10629
10630	// NodeFromTemplateJobStatusSucceeded is a NodeFromTemplateJobStatus enum value
10631	NodeFromTemplateJobStatusSucceeded = "SUCCEEDED"
10632
10633	// NodeFromTemplateJobStatusFailed is a NodeFromTemplateJobStatus enum value
10634	NodeFromTemplateJobStatusFailed = "FAILED"
10635)
10636
10637// NodeFromTemplateJobStatus_Values returns all elements of the NodeFromTemplateJobStatus enum
10638func NodeFromTemplateJobStatus_Values() []string {
10639	return []string{
10640		NodeFromTemplateJobStatusPending,
10641		NodeFromTemplateJobStatusSucceeded,
10642		NodeFromTemplateJobStatusFailed,
10643	}
10644}
10645
10646const (
10647	// NodeInstanceStatusRunning is a NodeInstanceStatus enum value
10648	NodeInstanceStatusRunning = "RUNNING"
10649
10650	// NodeInstanceStatusError is a NodeInstanceStatus enum value
10651	NodeInstanceStatusError = "ERROR"
10652
10653	// NodeInstanceStatusNotAvailable is a NodeInstanceStatus enum value
10654	NodeInstanceStatusNotAvailable = "NOT_AVAILABLE"
10655)
10656
10657// NodeInstanceStatus_Values returns all elements of the NodeInstanceStatus enum
10658func NodeInstanceStatus_Values() []string {
10659	return []string{
10660		NodeInstanceStatusRunning,
10661		NodeInstanceStatusError,
10662		NodeInstanceStatusNotAvailable,
10663	}
10664}
10665
10666const (
10667	// PackageImportJobStatusPending is a PackageImportJobStatus enum value
10668	PackageImportJobStatusPending = "PENDING"
10669
10670	// PackageImportJobStatusSucceeded is a PackageImportJobStatus enum value
10671	PackageImportJobStatusSucceeded = "SUCCEEDED"
10672
10673	// PackageImportJobStatusFailed is a PackageImportJobStatus enum value
10674	PackageImportJobStatusFailed = "FAILED"
10675)
10676
10677// PackageImportJobStatus_Values returns all elements of the PackageImportJobStatus enum
10678func PackageImportJobStatus_Values() []string {
10679	return []string{
10680		PackageImportJobStatusPending,
10681		PackageImportJobStatusSucceeded,
10682		PackageImportJobStatusFailed,
10683	}
10684}
10685
10686const (
10687	// PackageImportJobTypeNodePackageVersion is a PackageImportJobType enum value
10688	PackageImportJobTypeNodePackageVersion = "NODE_PACKAGE_VERSION"
10689)
10690
10691// PackageImportJobType_Values returns all elements of the PackageImportJobType enum
10692func PackageImportJobType_Values() []string {
10693	return []string{
10694		PackageImportJobTypeNodePackageVersion,
10695	}
10696}
10697
10698const (
10699	// PackageVersionStatusRegisterPending is a PackageVersionStatus enum value
10700	PackageVersionStatusRegisterPending = "REGISTER_PENDING"
10701
10702	// PackageVersionStatusRegisterCompleted is a PackageVersionStatus enum value
10703	PackageVersionStatusRegisterCompleted = "REGISTER_COMPLETED"
10704
10705	// PackageVersionStatusFailed is a PackageVersionStatus enum value
10706	PackageVersionStatusFailed = "FAILED"
10707
10708	// PackageVersionStatusDeleting is a PackageVersionStatus enum value
10709	PackageVersionStatusDeleting = "DELETING"
10710)
10711
10712// PackageVersionStatus_Values returns all elements of the PackageVersionStatus enum
10713func PackageVersionStatus_Values() []string {
10714	return []string{
10715		PackageVersionStatusRegisterPending,
10716		PackageVersionStatusRegisterCompleted,
10717		PackageVersionStatusFailed,
10718		PackageVersionStatusDeleting,
10719	}
10720}
10721
10722const (
10723	// PortTypeBoolean is a PortType enum value
10724	PortTypeBoolean = "BOOLEAN"
10725
10726	// PortTypeString is a PortType enum value
10727	PortTypeString = "STRING"
10728
10729	// PortTypeInt32 is a PortType enum value
10730	PortTypeInt32 = "INT32"
10731
10732	// PortTypeFloat32 is a PortType enum value
10733	PortTypeFloat32 = "FLOAT32"
10734
10735	// PortTypeMedia is a PortType enum value
10736	PortTypeMedia = "MEDIA"
10737)
10738
10739// PortType_Values returns all elements of the PortType enum
10740func PortType_Values() []string {
10741	return []string{
10742		PortTypeBoolean,
10743		PortTypeString,
10744		PortTypeInt32,
10745		PortTypeFloat32,
10746		PortTypeMedia,
10747	}
10748}
10749
10750const (
10751	// StatusFilterDeploymentSucceeded is a StatusFilter enum value
10752	StatusFilterDeploymentSucceeded = "DEPLOYMENT_SUCCEEDED"
10753
10754	// StatusFilterDeploymentError is a StatusFilter enum value
10755	StatusFilterDeploymentError = "DEPLOYMENT_ERROR"
10756
10757	// StatusFilterRemovalSucceeded is a StatusFilter enum value
10758	StatusFilterRemovalSucceeded = "REMOVAL_SUCCEEDED"
10759
10760	// StatusFilterRemovalFailed is a StatusFilter enum value
10761	StatusFilterRemovalFailed = "REMOVAL_FAILED"
10762
10763	// StatusFilterProcessingDeployment is a StatusFilter enum value
10764	StatusFilterProcessingDeployment = "PROCESSING_DEPLOYMENT"
10765
10766	// StatusFilterProcessingRemoval is a StatusFilter enum value
10767	StatusFilterProcessingRemoval = "PROCESSING_REMOVAL"
10768)
10769
10770// StatusFilter_Values returns all elements of the StatusFilter enum
10771func StatusFilter_Values() []string {
10772	return []string{
10773		StatusFilterDeploymentSucceeded,
10774		StatusFilterDeploymentError,
10775		StatusFilterRemovalSucceeded,
10776		StatusFilterRemovalFailed,
10777		StatusFilterProcessingDeployment,
10778		StatusFilterProcessingRemoval,
10779	}
10780}
10781
10782const (
10783	// TemplateTypeRtspCameraStream is a TemplateType enum value
10784	TemplateTypeRtspCameraStream = "RTSP_CAMERA_STREAM"
10785)
10786
10787// TemplateType_Values returns all elements of the TemplateType enum
10788func TemplateType_Values() []string {
10789	return []string{
10790		TemplateTypeRtspCameraStream,
10791	}
10792}
10793
10794const (
10795	// UpdateProgressPending is a UpdateProgress enum value
10796	UpdateProgressPending = "PENDING"
10797
10798	// UpdateProgressInProgress is a UpdateProgress enum value
10799	UpdateProgressInProgress = "IN_PROGRESS"
10800
10801	// UpdateProgressVerifying is a UpdateProgress enum value
10802	UpdateProgressVerifying = "VERIFYING"
10803
10804	// UpdateProgressRebooting is a UpdateProgress enum value
10805	UpdateProgressRebooting = "REBOOTING"
10806
10807	// UpdateProgressDownloading is a UpdateProgress enum value
10808	UpdateProgressDownloading = "DOWNLOADING"
10809
10810	// UpdateProgressCompleted is a UpdateProgress enum value
10811	UpdateProgressCompleted = "COMPLETED"
10812
10813	// UpdateProgressFailed is a UpdateProgress enum value
10814	UpdateProgressFailed = "FAILED"
10815)
10816
10817// UpdateProgress_Values returns all elements of the UpdateProgress enum
10818func UpdateProgress_Values() []string {
10819	return []string{
10820		UpdateProgressPending,
10821		UpdateProgressInProgress,
10822		UpdateProgressVerifying,
10823		UpdateProgressRebooting,
10824		UpdateProgressDownloading,
10825		UpdateProgressCompleted,
10826		UpdateProgressFailed,
10827	}
10828}
10829
10830const (
10831	// ValidationExceptionReasonUnknownOperation is a ValidationExceptionReason enum value
10832	ValidationExceptionReasonUnknownOperation = "UNKNOWN_OPERATION"
10833
10834	// ValidationExceptionReasonCannotParse is a ValidationExceptionReason enum value
10835	ValidationExceptionReasonCannotParse = "CANNOT_PARSE"
10836
10837	// ValidationExceptionReasonFieldValidationFailed is a ValidationExceptionReason enum value
10838	ValidationExceptionReasonFieldValidationFailed = "FIELD_VALIDATION_FAILED"
10839
10840	// ValidationExceptionReasonOther is a ValidationExceptionReason enum value
10841	ValidationExceptionReasonOther = "OTHER"
10842)
10843
10844// ValidationExceptionReason_Values returns all elements of the ValidationExceptionReason enum
10845func ValidationExceptionReason_Values() []string {
10846	return []string{
10847		ValidationExceptionReasonUnknownOperation,
10848		ValidationExceptionReasonCannotParse,
10849		ValidationExceptionReasonFieldValidationFailed,
10850		ValidationExceptionReasonOther,
10851	}
10852}
10853