1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package greengrass
4
5import (
6	"github.com/aws/aws-sdk-go/aws"
7	"github.com/aws/aws-sdk-go/aws/awsutil"
8	"github.com/aws/aws-sdk-go/aws/request"
9	"github.com/aws/aws-sdk-go/private/protocol"
10	"github.com/aws/aws-sdk-go/private/protocol/restjson"
11)
12
13const opAssociateRoleToGroup = "AssociateRoleToGroup"
14
15// AssociateRoleToGroupRequest generates a "aws/request.Request" representing the
16// client's request for the AssociateRoleToGroup operation. The "output" return
17// value will be populated with the request's response once the request completes
18// successfully.
19//
20// Use "Send" method on the returned Request to send the API call to the service.
21// the "output" return value is not valid until after Send returns without error.
22//
23// See AssociateRoleToGroup for more information on using the AssociateRoleToGroup
24// API call, and error handling.
25//
26// This method is useful when you want to inject custom logic or configuration
27// into the SDK's request lifecycle. Such as custom headers, or retry logic.
28//
29//
30//    // Example sending a request using the AssociateRoleToGroupRequest method.
31//    req, resp := client.AssociateRoleToGroupRequest(params)
32//
33//    err := req.Send()
34//    if err == nil { // resp is now filled
35//        fmt.Println(resp)
36//    }
37//
38// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/AssociateRoleToGroup
39func (c *Greengrass) AssociateRoleToGroupRequest(input *AssociateRoleToGroupInput) (req *request.Request, output *AssociateRoleToGroupOutput) {
40	op := &request.Operation{
41		Name:       opAssociateRoleToGroup,
42		HTTPMethod: "PUT",
43		HTTPPath:   "/greengrass/groups/{GroupId}/role",
44	}
45
46	if input == nil {
47		input = &AssociateRoleToGroupInput{}
48	}
49
50	output = &AssociateRoleToGroupOutput{}
51	req = c.newRequest(op, input, output)
52	return
53}
54
55// AssociateRoleToGroup API operation for AWS Greengrass.
56//
57// Associates a role with a group. Your Greengrass core will use the role to
58// access AWS cloud services. The role's permissions should allow Greengrass
59// core Lambda functions to perform actions against the cloud.
60//
61// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
62// with awserr.Error's Code and Message methods to get detailed information about
63// the error.
64//
65// See the AWS API reference guide for AWS Greengrass's
66// API operation AssociateRoleToGroup for usage and error information.
67//
68// Returned Error Codes:
69//   * ErrCodeBadRequestException "BadRequestException"
70//   General error information.
71//
72//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
73//   General error information.
74//
75// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/AssociateRoleToGroup
76func (c *Greengrass) AssociateRoleToGroup(input *AssociateRoleToGroupInput) (*AssociateRoleToGroupOutput, error) {
77	req, out := c.AssociateRoleToGroupRequest(input)
78	return out, req.Send()
79}
80
81// AssociateRoleToGroupWithContext is the same as AssociateRoleToGroup with the addition of
82// the ability to pass a context and additional request options.
83//
84// See AssociateRoleToGroup for details on how to use this API operation.
85//
86// The context must be non-nil and will be used for request cancellation. If
87// the context is nil a panic will occur. In the future the SDK may create
88// sub-contexts for http.Requests. See https://golang.org/pkg/context/
89// for more information on using Contexts.
90func (c *Greengrass) AssociateRoleToGroupWithContext(ctx aws.Context, input *AssociateRoleToGroupInput, opts ...request.Option) (*AssociateRoleToGroupOutput, error) {
91	req, out := c.AssociateRoleToGroupRequest(input)
92	req.SetContext(ctx)
93	req.ApplyOptions(opts...)
94	return out, req.Send()
95}
96
97const opAssociateServiceRoleToAccount = "AssociateServiceRoleToAccount"
98
99// AssociateServiceRoleToAccountRequest generates a "aws/request.Request" representing the
100// client's request for the AssociateServiceRoleToAccount operation. The "output" return
101// value will be populated with the request's response once the request completes
102// successfully.
103//
104// Use "Send" method on the returned Request to send the API call to the service.
105// the "output" return value is not valid until after Send returns without error.
106//
107// See AssociateServiceRoleToAccount for more information on using the AssociateServiceRoleToAccount
108// API call, and error handling.
109//
110// This method is useful when you want to inject custom logic or configuration
111// into the SDK's request lifecycle. Such as custom headers, or retry logic.
112//
113//
114//    // Example sending a request using the AssociateServiceRoleToAccountRequest method.
115//    req, resp := client.AssociateServiceRoleToAccountRequest(params)
116//
117//    err := req.Send()
118//    if err == nil { // resp is now filled
119//        fmt.Println(resp)
120//    }
121//
122// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/AssociateServiceRoleToAccount
123func (c *Greengrass) AssociateServiceRoleToAccountRequest(input *AssociateServiceRoleToAccountInput) (req *request.Request, output *AssociateServiceRoleToAccountOutput) {
124	op := &request.Operation{
125		Name:       opAssociateServiceRoleToAccount,
126		HTTPMethod: "PUT",
127		HTTPPath:   "/greengrass/servicerole",
128	}
129
130	if input == nil {
131		input = &AssociateServiceRoleToAccountInput{}
132	}
133
134	output = &AssociateServiceRoleToAccountOutput{}
135	req = c.newRequest(op, input, output)
136	return
137}
138
139// AssociateServiceRoleToAccount API operation for AWS Greengrass.
140//
141// Associates a role with your account. AWS IoT Greengrass will use the role
142// to access your Lambda functions and AWS IoT resources. This is necessary
143// for deployments to succeed. The role must have at least minimum permissions
144// in the policy ''AWSGreengrassResourceAccessRolePolicy''.
145//
146// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
147// with awserr.Error's Code and Message methods to get detailed information about
148// the error.
149//
150// See the AWS API reference guide for AWS Greengrass's
151// API operation AssociateServiceRoleToAccount for usage and error information.
152//
153// Returned Error Codes:
154//   * ErrCodeBadRequestException "BadRequestException"
155//   General error information.
156//
157//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
158//   General error information.
159//
160// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/AssociateServiceRoleToAccount
161func (c *Greengrass) AssociateServiceRoleToAccount(input *AssociateServiceRoleToAccountInput) (*AssociateServiceRoleToAccountOutput, error) {
162	req, out := c.AssociateServiceRoleToAccountRequest(input)
163	return out, req.Send()
164}
165
166// AssociateServiceRoleToAccountWithContext is the same as AssociateServiceRoleToAccount with the addition of
167// the ability to pass a context and additional request options.
168//
169// See AssociateServiceRoleToAccount for details on how to use this API operation.
170//
171// The context must be non-nil and will be used for request cancellation. If
172// the context is nil a panic will occur. In the future the SDK may create
173// sub-contexts for http.Requests. See https://golang.org/pkg/context/
174// for more information on using Contexts.
175func (c *Greengrass) AssociateServiceRoleToAccountWithContext(ctx aws.Context, input *AssociateServiceRoleToAccountInput, opts ...request.Option) (*AssociateServiceRoleToAccountOutput, error) {
176	req, out := c.AssociateServiceRoleToAccountRequest(input)
177	req.SetContext(ctx)
178	req.ApplyOptions(opts...)
179	return out, req.Send()
180}
181
182const opCreateConnectorDefinition = "CreateConnectorDefinition"
183
184// CreateConnectorDefinitionRequest generates a "aws/request.Request" representing the
185// client's request for the CreateConnectorDefinition operation. The "output" return
186// value will be populated with the request's response once the request completes
187// successfully.
188//
189// Use "Send" method on the returned Request to send the API call to the service.
190// the "output" return value is not valid until after Send returns without error.
191//
192// See CreateConnectorDefinition for more information on using the CreateConnectorDefinition
193// API call, and error handling.
194//
195// This method is useful when you want to inject custom logic or configuration
196// into the SDK's request lifecycle. Such as custom headers, or retry logic.
197//
198//
199//    // Example sending a request using the CreateConnectorDefinitionRequest method.
200//    req, resp := client.CreateConnectorDefinitionRequest(params)
201//
202//    err := req.Send()
203//    if err == nil { // resp is now filled
204//        fmt.Println(resp)
205//    }
206//
207// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateConnectorDefinition
208func (c *Greengrass) CreateConnectorDefinitionRequest(input *CreateConnectorDefinitionInput) (req *request.Request, output *CreateConnectorDefinitionOutput) {
209	op := &request.Operation{
210		Name:       opCreateConnectorDefinition,
211		HTTPMethod: "POST",
212		HTTPPath:   "/greengrass/definition/connectors",
213	}
214
215	if input == nil {
216		input = &CreateConnectorDefinitionInput{}
217	}
218
219	output = &CreateConnectorDefinitionOutput{}
220	req = c.newRequest(op, input, output)
221	return
222}
223
224// CreateConnectorDefinition API operation for AWS Greengrass.
225//
226// Creates a connector definition. You may provide the initial version of the
227// connector definition now or use ''CreateConnectorDefinitionVersion'' at a
228// later time.
229//
230// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
231// with awserr.Error's Code and Message methods to get detailed information about
232// the error.
233//
234// See the AWS API reference guide for AWS Greengrass's
235// API operation CreateConnectorDefinition for usage and error information.
236//
237// Returned Error Codes:
238//   * ErrCodeBadRequestException "BadRequestException"
239//   General error information.
240//
241// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateConnectorDefinition
242func (c *Greengrass) CreateConnectorDefinition(input *CreateConnectorDefinitionInput) (*CreateConnectorDefinitionOutput, error) {
243	req, out := c.CreateConnectorDefinitionRequest(input)
244	return out, req.Send()
245}
246
247// CreateConnectorDefinitionWithContext is the same as CreateConnectorDefinition with the addition of
248// the ability to pass a context and additional request options.
249//
250// See CreateConnectorDefinition for details on how to use this API operation.
251//
252// The context must be non-nil and will be used for request cancellation. If
253// the context is nil a panic will occur. In the future the SDK may create
254// sub-contexts for http.Requests. See https://golang.org/pkg/context/
255// for more information on using Contexts.
256func (c *Greengrass) CreateConnectorDefinitionWithContext(ctx aws.Context, input *CreateConnectorDefinitionInput, opts ...request.Option) (*CreateConnectorDefinitionOutput, error) {
257	req, out := c.CreateConnectorDefinitionRequest(input)
258	req.SetContext(ctx)
259	req.ApplyOptions(opts...)
260	return out, req.Send()
261}
262
263const opCreateConnectorDefinitionVersion = "CreateConnectorDefinitionVersion"
264
265// CreateConnectorDefinitionVersionRequest generates a "aws/request.Request" representing the
266// client's request for the CreateConnectorDefinitionVersion operation. The "output" return
267// value will be populated with the request's response once the request completes
268// successfully.
269//
270// Use "Send" method on the returned Request to send the API call to the service.
271// the "output" return value is not valid until after Send returns without error.
272//
273// See CreateConnectorDefinitionVersion for more information on using the CreateConnectorDefinitionVersion
274// API call, and error handling.
275//
276// This method is useful when you want to inject custom logic or configuration
277// into the SDK's request lifecycle. Such as custom headers, or retry logic.
278//
279//
280//    // Example sending a request using the CreateConnectorDefinitionVersionRequest method.
281//    req, resp := client.CreateConnectorDefinitionVersionRequest(params)
282//
283//    err := req.Send()
284//    if err == nil { // resp is now filled
285//        fmt.Println(resp)
286//    }
287//
288// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateConnectorDefinitionVersion
289func (c *Greengrass) CreateConnectorDefinitionVersionRequest(input *CreateConnectorDefinitionVersionInput) (req *request.Request, output *CreateConnectorDefinitionVersionOutput) {
290	op := &request.Operation{
291		Name:       opCreateConnectorDefinitionVersion,
292		HTTPMethod: "POST",
293		HTTPPath:   "/greengrass/definition/connectors/{ConnectorDefinitionId}/versions",
294	}
295
296	if input == nil {
297		input = &CreateConnectorDefinitionVersionInput{}
298	}
299
300	output = &CreateConnectorDefinitionVersionOutput{}
301	req = c.newRequest(op, input, output)
302	return
303}
304
305// CreateConnectorDefinitionVersion API operation for AWS Greengrass.
306//
307// Creates a version of a connector definition which has already been defined.
308//
309// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
310// with awserr.Error's Code and Message methods to get detailed information about
311// the error.
312//
313// See the AWS API reference guide for AWS Greengrass's
314// API operation CreateConnectorDefinitionVersion for usage and error information.
315//
316// Returned Error Codes:
317//   * ErrCodeBadRequestException "BadRequestException"
318//   General error information.
319//
320// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateConnectorDefinitionVersion
321func (c *Greengrass) CreateConnectorDefinitionVersion(input *CreateConnectorDefinitionVersionInput) (*CreateConnectorDefinitionVersionOutput, error) {
322	req, out := c.CreateConnectorDefinitionVersionRequest(input)
323	return out, req.Send()
324}
325
326// CreateConnectorDefinitionVersionWithContext is the same as CreateConnectorDefinitionVersion with the addition of
327// the ability to pass a context and additional request options.
328//
329// See CreateConnectorDefinitionVersion for details on how to use this API operation.
330//
331// The context must be non-nil and will be used for request cancellation. If
332// the context is nil a panic will occur. In the future the SDK may create
333// sub-contexts for http.Requests. See https://golang.org/pkg/context/
334// for more information on using Contexts.
335func (c *Greengrass) CreateConnectorDefinitionVersionWithContext(ctx aws.Context, input *CreateConnectorDefinitionVersionInput, opts ...request.Option) (*CreateConnectorDefinitionVersionOutput, error) {
336	req, out := c.CreateConnectorDefinitionVersionRequest(input)
337	req.SetContext(ctx)
338	req.ApplyOptions(opts...)
339	return out, req.Send()
340}
341
342const opCreateCoreDefinition = "CreateCoreDefinition"
343
344// CreateCoreDefinitionRequest generates a "aws/request.Request" representing the
345// client's request for the CreateCoreDefinition operation. The "output" return
346// value will be populated with the request's response once the request completes
347// successfully.
348//
349// Use "Send" method on the returned Request to send the API call to the service.
350// the "output" return value is not valid until after Send returns without error.
351//
352// See CreateCoreDefinition for more information on using the CreateCoreDefinition
353// API call, and error handling.
354//
355// This method is useful when you want to inject custom logic or configuration
356// into the SDK's request lifecycle. Such as custom headers, or retry logic.
357//
358//
359//    // Example sending a request using the CreateCoreDefinitionRequest method.
360//    req, resp := client.CreateCoreDefinitionRequest(params)
361//
362//    err := req.Send()
363//    if err == nil { // resp is now filled
364//        fmt.Println(resp)
365//    }
366//
367// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateCoreDefinition
368func (c *Greengrass) CreateCoreDefinitionRequest(input *CreateCoreDefinitionInput) (req *request.Request, output *CreateCoreDefinitionOutput) {
369	op := &request.Operation{
370		Name:       opCreateCoreDefinition,
371		HTTPMethod: "POST",
372		HTTPPath:   "/greengrass/definition/cores",
373	}
374
375	if input == nil {
376		input = &CreateCoreDefinitionInput{}
377	}
378
379	output = &CreateCoreDefinitionOutput{}
380	req = c.newRequest(op, input, output)
381	return
382}
383
384// CreateCoreDefinition API operation for AWS Greengrass.
385//
386// Creates a core definition. You may provide the initial version of the core
387// definition now or use ''CreateCoreDefinitionVersion'' at a later time. Greengrass
388// groups must each contain exactly one Greengrass core.
389//
390// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
391// with awserr.Error's Code and Message methods to get detailed information about
392// the error.
393//
394// See the AWS API reference guide for AWS Greengrass's
395// API operation CreateCoreDefinition for usage and error information.
396//
397// Returned Error Codes:
398//   * ErrCodeBadRequestException "BadRequestException"
399//   General error information.
400//
401// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateCoreDefinition
402func (c *Greengrass) CreateCoreDefinition(input *CreateCoreDefinitionInput) (*CreateCoreDefinitionOutput, error) {
403	req, out := c.CreateCoreDefinitionRequest(input)
404	return out, req.Send()
405}
406
407// CreateCoreDefinitionWithContext is the same as CreateCoreDefinition with the addition of
408// the ability to pass a context and additional request options.
409//
410// See CreateCoreDefinition for details on how to use this API operation.
411//
412// The context must be non-nil and will be used for request cancellation. If
413// the context is nil a panic will occur. In the future the SDK may create
414// sub-contexts for http.Requests. See https://golang.org/pkg/context/
415// for more information on using Contexts.
416func (c *Greengrass) CreateCoreDefinitionWithContext(ctx aws.Context, input *CreateCoreDefinitionInput, opts ...request.Option) (*CreateCoreDefinitionOutput, error) {
417	req, out := c.CreateCoreDefinitionRequest(input)
418	req.SetContext(ctx)
419	req.ApplyOptions(opts...)
420	return out, req.Send()
421}
422
423const opCreateCoreDefinitionVersion = "CreateCoreDefinitionVersion"
424
425// CreateCoreDefinitionVersionRequest generates a "aws/request.Request" representing the
426// client's request for the CreateCoreDefinitionVersion operation. The "output" return
427// value will be populated with the request's response once the request completes
428// successfully.
429//
430// Use "Send" method on the returned Request to send the API call to the service.
431// the "output" return value is not valid until after Send returns without error.
432//
433// See CreateCoreDefinitionVersion for more information on using the CreateCoreDefinitionVersion
434// API call, and error handling.
435//
436// This method is useful when you want to inject custom logic or configuration
437// into the SDK's request lifecycle. Such as custom headers, or retry logic.
438//
439//
440//    // Example sending a request using the CreateCoreDefinitionVersionRequest method.
441//    req, resp := client.CreateCoreDefinitionVersionRequest(params)
442//
443//    err := req.Send()
444//    if err == nil { // resp is now filled
445//        fmt.Println(resp)
446//    }
447//
448// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateCoreDefinitionVersion
449func (c *Greengrass) CreateCoreDefinitionVersionRequest(input *CreateCoreDefinitionVersionInput) (req *request.Request, output *CreateCoreDefinitionVersionOutput) {
450	op := &request.Operation{
451		Name:       opCreateCoreDefinitionVersion,
452		HTTPMethod: "POST",
453		HTTPPath:   "/greengrass/definition/cores/{CoreDefinitionId}/versions",
454	}
455
456	if input == nil {
457		input = &CreateCoreDefinitionVersionInput{}
458	}
459
460	output = &CreateCoreDefinitionVersionOutput{}
461	req = c.newRequest(op, input, output)
462	return
463}
464
465// CreateCoreDefinitionVersion API operation for AWS Greengrass.
466//
467// Creates a version of a core definition that has already been defined. Greengrass
468// groups must each contain exactly one Greengrass core.
469//
470// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
471// with awserr.Error's Code and Message methods to get detailed information about
472// the error.
473//
474// See the AWS API reference guide for AWS Greengrass's
475// API operation CreateCoreDefinitionVersion for usage and error information.
476//
477// Returned Error Codes:
478//   * ErrCodeBadRequestException "BadRequestException"
479//   General error information.
480//
481// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateCoreDefinitionVersion
482func (c *Greengrass) CreateCoreDefinitionVersion(input *CreateCoreDefinitionVersionInput) (*CreateCoreDefinitionVersionOutput, error) {
483	req, out := c.CreateCoreDefinitionVersionRequest(input)
484	return out, req.Send()
485}
486
487// CreateCoreDefinitionVersionWithContext is the same as CreateCoreDefinitionVersion with the addition of
488// the ability to pass a context and additional request options.
489//
490// See CreateCoreDefinitionVersion for details on how to use this API operation.
491//
492// The context must be non-nil and will be used for request cancellation. If
493// the context is nil a panic will occur. In the future the SDK may create
494// sub-contexts for http.Requests. See https://golang.org/pkg/context/
495// for more information on using Contexts.
496func (c *Greengrass) CreateCoreDefinitionVersionWithContext(ctx aws.Context, input *CreateCoreDefinitionVersionInput, opts ...request.Option) (*CreateCoreDefinitionVersionOutput, error) {
497	req, out := c.CreateCoreDefinitionVersionRequest(input)
498	req.SetContext(ctx)
499	req.ApplyOptions(opts...)
500	return out, req.Send()
501}
502
503const opCreateDeployment = "CreateDeployment"
504
505// CreateDeploymentRequest generates a "aws/request.Request" representing the
506// client's request for the CreateDeployment operation. The "output" return
507// value will be populated with the request's response once the request completes
508// successfully.
509//
510// Use "Send" method on the returned Request to send the API call to the service.
511// the "output" return value is not valid until after Send returns without error.
512//
513// See CreateDeployment for more information on using the CreateDeployment
514// API call, and error handling.
515//
516// This method is useful when you want to inject custom logic or configuration
517// into the SDK's request lifecycle. Such as custom headers, or retry logic.
518//
519//
520//    // Example sending a request using the CreateDeploymentRequest method.
521//    req, resp := client.CreateDeploymentRequest(params)
522//
523//    err := req.Send()
524//    if err == nil { // resp is now filled
525//        fmt.Println(resp)
526//    }
527//
528// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateDeployment
529func (c *Greengrass) CreateDeploymentRequest(input *CreateDeploymentInput) (req *request.Request, output *CreateDeploymentOutput) {
530	op := &request.Operation{
531		Name:       opCreateDeployment,
532		HTTPMethod: "POST",
533		HTTPPath:   "/greengrass/groups/{GroupId}/deployments",
534	}
535
536	if input == nil {
537		input = &CreateDeploymentInput{}
538	}
539
540	output = &CreateDeploymentOutput{}
541	req = c.newRequest(op, input, output)
542	return
543}
544
545// CreateDeployment API operation for AWS Greengrass.
546//
547// Creates a deployment. ''CreateDeployment'' requests are idempotent with respect
548// to the ''X-Amzn-Client-Token'' token and the request parameters.
549//
550// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
551// with awserr.Error's Code and Message methods to get detailed information about
552// the error.
553//
554// See the AWS API reference guide for AWS Greengrass's
555// API operation CreateDeployment for usage and error information.
556//
557// Returned Error Codes:
558//   * ErrCodeBadRequestException "BadRequestException"
559//   General error information.
560//
561// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateDeployment
562func (c *Greengrass) CreateDeployment(input *CreateDeploymentInput) (*CreateDeploymentOutput, error) {
563	req, out := c.CreateDeploymentRequest(input)
564	return out, req.Send()
565}
566
567// CreateDeploymentWithContext is the same as CreateDeployment with the addition of
568// the ability to pass a context and additional request options.
569//
570// See CreateDeployment for details on how to use this API operation.
571//
572// The context must be non-nil and will be used for request cancellation. If
573// the context is nil a panic will occur. In the future the SDK may create
574// sub-contexts for http.Requests. See https://golang.org/pkg/context/
575// for more information on using Contexts.
576func (c *Greengrass) CreateDeploymentWithContext(ctx aws.Context, input *CreateDeploymentInput, opts ...request.Option) (*CreateDeploymentOutput, error) {
577	req, out := c.CreateDeploymentRequest(input)
578	req.SetContext(ctx)
579	req.ApplyOptions(opts...)
580	return out, req.Send()
581}
582
583const opCreateDeviceDefinition = "CreateDeviceDefinition"
584
585// CreateDeviceDefinitionRequest generates a "aws/request.Request" representing the
586// client's request for the CreateDeviceDefinition operation. The "output" return
587// value will be populated with the request's response once the request completes
588// successfully.
589//
590// Use "Send" method on the returned Request to send the API call to the service.
591// the "output" return value is not valid until after Send returns without error.
592//
593// See CreateDeviceDefinition for more information on using the CreateDeviceDefinition
594// API call, and error handling.
595//
596// This method is useful when you want to inject custom logic or configuration
597// into the SDK's request lifecycle. Such as custom headers, or retry logic.
598//
599//
600//    // Example sending a request using the CreateDeviceDefinitionRequest method.
601//    req, resp := client.CreateDeviceDefinitionRequest(params)
602//
603//    err := req.Send()
604//    if err == nil { // resp is now filled
605//        fmt.Println(resp)
606//    }
607//
608// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateDeviceDefinition
609func (c *Greengrass) CreateDeviceDefinitionRequest(input *CreateDeviceDefinitionInput) (req *request.Request, output *CreateDeviceDefinitionOutput) {
610	op := &request.Operation{
611		Name:       opCreateDeviceDefinition,
612		HTTPMethod: "POST",
613		HTTPPath:   "/greengrass/definition/devices",
614	}
615
616	if input == nil {
617		input = &CreateDeviceDefinitionInput{}
618	}
619
620	output = &CreateDeviceDefinitionOutput{}
621	req = c.newRequest(op, input, output)
622	return
623}
624
625// CreateDeviceDefinition API operation for AWS Greengrass.
626//
627// Creates a device definition. You may provide the initial version of the device
628// definition now or use ''CreateDeviceDefinitionVersion'' at a later time.
629//
630// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
631// with awserr.Error's Code and Message methods to get detailed information about
632// the error.
633//
634// See the AWS API reference guide for AWS Greengrass's
635// API operation CreateDeviceDefinition for usage and error information.
636//
637// Returned Error Codes:
638//   * ErrCodeBadRequestException "BadRequestException"
639//   General error information.
640//
641// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateDeviceDefinition
642func (c *Greengrass) CreateDeviceDefinition(input *CreateDeviceDefinitionInput) (*CreateDeviceDefinitionOutput, error) {
643	req, out := c.CreateDeviceDefinitionRequest(input)
644	return out, req.Send()
645}
646
647// CreateDeviceDefinitionWithContext is the same as CreateDeviceDefinition with the addition of
648// the ability to pass a context and additional request options.
649//
650// See CreateDeviceDefinition for details on how to use this API operation.
651//
652// The context must be non-nil and will be used for request cancellation. If
653// the context is nil a panic will occur. In the future the SDK may create
654// sub-contexts for http.Requests. See https://golang.org/pkg/context/
655// for more information on using Contexts.
656func (c *Greengrass) CreateDeviceDefinitionWithContext(ctx aws.Context, input *CreateDeviceDefinitionInput, opts ...request.Option) (*CreateDeviceDefinitionOutput, error) {
657	req, out := c.CreateDeviceDefinitionRequest(input)
658	req.SetContext(ctx)
659	req.ApplyOptions(opts...)
660	return out, req.Send()
661}
662
663const opCreateDeviceDefinitionVersion = "CreateDeviceDefinitionVersion"
664
665// CreateDeviceDefinitionVersionRequest generates a "aws/request.Request" representing the
666// client's request for the CreateDeviceDefinitionVersion operation. The "output" return
667// value will be populated with the request's response once the request completes
668// successfully.
669//
670// Use "Send" method on the returned Request to send the API call to the service.
671// the "output" return value is not valid until after Send returns without error.
672//
673// See CreateDeviceDefinitionVersion for more information on using the CreateDeviceDefinitionVersion
674// API call, and error handling.
675//
676// This method is useful when you want to inject custom logic or configuration
677// into the SDK's request lifecycle. Such as custom headers, or retry logic.
678//
679//
680//    // Example sending a request using the CreateDeviceDefinitionVersionRequest method.
681//    req, resp := client.CreateDeviceDefinitionVersionRequest(params)
682//
683//    err := req.Send()
684//    if err == nil { // resp is now filled
685//        fmt.Println(resp)
686//    }
687//
688// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateDeviceDefinitionVersion
689func (c *Greengrass) CreateDeviceDefinitionVersionRequest(input *CreateDeviceDefinitionVersionInput) (req *request.Request, output *CreateDeviceDefinitionVersionOutput) {
690	op := &request.Operation{
691		Name:       opCreateDeviceDefinitionVersion,
692		HTTPMethod: "POST",
693		HTTPPath:   "/greengrass/definition/devices/{DeviceDefinitionId}/versions",
694	}
695
696	if input == nil {
697		input = &CreateDeviceDefinitionVersionInput{}
698	}
699
700	output = &CreateDeviceDefinitionVersionOutput{}
701	req = c.newRequest(op, input, output)
702	return
703}
704
705// CreateDeviceDefinitionVersion API operation for AWS Greengrass.
706//
707// Creates a version of a device definition that has already been defined.
708//
709// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
710// with awserr.Error's Code and Message methods to get detailed information about
711// the error.
712//
713// See the AWS API reference guide for AWS Greengrass's
714// API operation CreateDeviceDefinitionVersion for usage and error information.
715//
716// Returned Error Codes:
717//   * ErrCodeBadRequestException "BadRequestException"
718//   General error information.
719//
720// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateDeviceDefinitionVersion
721func (c *Greengrass) CreateDeviceDefinitionVersion(input *CreateDeviceDefinitionVersionInput) (*CreateDeviceDefinitionVersionOutput, error) {
722	req, out := c.CreateDeviceDefinitionVersionRequest(input)
723	return out, req.Send()
724}
725
726// CreateDeviceDefinitionVersionWithContext is the same as CreateDeviceDefinitionVersion with the addition of
727// the ability to pass a context and additional request options.
728//
729// See CreateDeviceDefinitionVersion for details on how to use this API operation.
730//
731// The context must be non-nil and will be used for request cancellation. If
732// the context is nil a panic will occur. In the future the SDK may create
733// sub-contexts for http.Requests. See https://golang.org/pkg/context/
734// for more information on using Contexts.
735func (c *Greengrass) CreateDeviceDefinitionVersionWithContext(ctx aws.Context, input *CreateDeviceDefinitionVersionInput, opts ...request.Option) (*CreateDeviceDefinitionVersionOutput, error) {
736	req, out := c.CreateDeviceDefinitionVersionRequest(input)
737	req.SetContext(ctx)
738	req.ApplyOptions(opts...)
739	return out, req.Send()
740}
741
742const opCreateFunctionDefinition = "CreateFunctionDefinition"
743
744// CreateFunctionDefinitionRequest generates a "aws/request.Request" representing the
745// client's request for the CreateFunctionDefinition operation. The "output" return
746// value will be populated with the request's response once the request completes
747// successfully.
748//
749// Use "Send" method on the returned Request to send the API call to the service.
750// the "output" return value is not valid until after Send returns without error.
751//
752// See CreateFunctionDefinition for more information on using the CreateFunctionDefinition
753// API call, and error handling.
754//
755// This method is useful when you want to inject custom logic or configuration
756// into the SDK's request lifecycle. Such as custom headers, or retry logic.
757//
758//
759//    // Example sending a request using the CreateFunctionDefinitionRequest method.
760//    req, resp := client.CreateFunctionDefinitionRequest(params)
761//
762//    err := req.Send()
763//    if err == nil { // resp is now filled
764//        fmt.Println(resp)
765//    }
766//
767// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateFunctionDefinition
768func (c *Greengrass) CreateFunctionDefinitionRequest(input *CreateFunctionDefinitionInput) (req *request.Request, output *CreateFunctionDefinitionOutput) {
769	op := &request.Operation{
770		Name:       opCreateFunctionDefinition,
771		HTTPMethod: "POST",
772		HTTPPath:   "/greengrass/definition/functions",
773	}
774
775	if input == nil {
776		input = &CreateFunctionDefinitionInput{}
777	}
778
779	output = &CreateFunctionDefinitionOutput{}
780	req = c.newRequest(op, input, output)
781	return
782}
783
784// CreateFunctionDefinition API operation for AWS Greengrass.
785//
786// Creates a Lambda function definition which contains a list of Lambda functions
787// and their configurations to be used in a group. You can create an initial
788// version of the definition by providing a list of Lambda functions and their
789// configurations now, or use ''CreateFunctionDefinitionVersion'' later.
790//
791// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
792// with awserr.Error's Code and Message methods to get detailed information about
793// the error.
794//
795// See the AWS API reference guide for AWS Greengrass's
796// API operation CreateFunctionDefinition for usage and error information.
797//
798// Returned Error Codes:
799//   * ErrCodeBadRequestException "BadRequestException"
800//   General error information.
801//
802// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateFunctionDefinition
803func (c *Greengrass) CreateFunctionDefinition(input *CreateFunctionDefinitionInput) (*CreateFunctionDefinitionOutput, error) {
804	req, out := c.CreateFunctionDefinitionRequest(input)
805	return out, req.Send()
806}
807
808// CreateFunctionDefinitionWithContext is the same as CreateFunctionDefinition with the addition of
809// the ability to pass a context and additional request options.
810//
811// See CreateFunctionDefinition for details on how to use this API operation.
812//
813// The context must be non-nil and will be used for request cancellation. If
814// the context is nil a panic will occur. In the future the SDK may create
815// sub-contexts for http.Requests. See https://golang.org/pkg/context/
816// for more information on using Contexts.
817func (c *Greengrass) CreateFunctionDefinitionWithContext(ctx aws.Context, input *CreateFunctionDefinitionInput, opts ...request.Option) (*CreateFunctionDefinitionOutput, error) {
818	req, out := c.CreateFunctionDefinitionRequest(input)
819	req.SetContext(ctx)
820	req.ApplyOptions(opts...)
821	return out, req.Send()
822}
823
824const opCreateFunctionDefinitionVersion = "CreateFunctionDefinitionVersion"
825
826// CreateFunctionDefinitionVersionRequest generates a "aws/request.Request" representing the
827// client's request for the CreateFunctionDefinitionVersion operation. The "output" return
828// value will be populated with the request's response once the request completes
829// successfully.
830//
831// Use "Send" method on the returned Request to send the API call to the service.
832// the "output" return value is not valid until after Send returns without error.
833//
834// See CreateFunctionDefinitionVersion for more information on using the CreateFunctionDefinitionVersion
835// API call, and error handling.
836//
837// This method is useful when you want to inject custom logic or configuration
838// into the SDK's request lifecycle. Such as custom headers, or retry logic.
839//
840//
841//    // Example sending a request using the CreateFunctionDefinitionVersionRequest method.
842//    req, resp := client.CreateFunctionDefinitionVersionRequest(params)
843//
844//    err := req.Send()
845//    if err == nil { // resp is now filled
846//        fmt.Println(resp)
847//    }
848//
849// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateFunctionDefinitionVersion
850func (c *Greengrass) CreateFunctionDefinitionVersionRequest(input *CreateFunctionDefinitionVersionInput) (req *request.Request, output *CreateFunctionDefinitionVersionOutput) {
851	op := &request.Operation{
852		Name:       opCreateFunctionDefinitionVersion,
853		HTTPMethod: "POST",
854		HTTPPath:   "/greengrass/definition/functions/{FunctionDefinitionId}/versions",
855	}
856
857	if input == nil {
858		input = &CreateFunctionDefinitionVersionInput{}
859	}
860
861	output = &CreateFunctionDefinitionVersionOutput{}
862	req = c.newRequest(op, input, output)
863	return
864}
865
866// CreateFunctionDefinitionVersion API operation for AWS Greengrass.
867//
868// Creates a version of a Lambda function definition that has already been defined.
869//
870// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
871// with awserr.Error's Code and Message methods to get detailed information about
872// the error.
873//
874// See the AWS API reference guide for AWS Greengrass's
875// API operation CreateFunctionDefinitionVersion for usage and error information.
876//
877// Returned Error Codes:
878//   * ErrCodeBadRequestException "BadRequestException"
879//   General error information.
880//
881// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateFunctionDefinitionVersion
882func (c *Greengrass) CreateFunctionDefinitionVersion(input *CreateFunctionDefinitionVersionInput) (*CreateFunctionDefinitionVersionOutput, error) {
883	req, out := c.CreateFunctionDefinitionVersionRequest(input)
884	return out, req.Send()
885}
886
887// CreateFunctionDefinitionVersionWithContext is the same as CreateFunctionDefinitionVersion with the addition of
888// the ability to pass a context and additional request options.
889//
890// See CreateFunctionDefinitionVersion for details on how to use this API operation.
891//
892// The context must be non-nil and will be used for request cancellation. If
893// the context is nil a panic will occur. In the future the SDK may create
894// sub-contexts for http.Requests. See https://golang.org/pkg/context/
895// for more information on using Contexts.
896func (c *Greengrass) CreateFunctionDefinitionVersionWithContext(ctx aws.Context, input *CreateFunctionDefinitionVersionInput, opts ...request.Option) (*CreateFunctionDefinitionVersionOutput, error) {
897	req, out := c.CreateFunctionDefinitionVersionRequest(input)
898	req.SetContext(ctx)
899	req.ApplyOptions(opts...)
900	return out, req.Send()
901}
902
903const opCreateGroup = "CreateGroup"
904
905// CreateGroupRequest generates a "aws/request.Request" representing the
906// client's request for the CreateGroup operation. The "output" return
907// value will be populated with the request's response once the request completes
908// successfully.
909//
910// Use "Send" method on the returned Request to send the API call to the service.
911// the "output" return value is not valid until after Send returns without error.
912//
913// See CreateGroup for more information on using the CreateGroup
914// API call, and error handling.
915//
916// This method is useful when you want to inject custom logic or configuration
917// into the SDK's request lifecycle. Such as custom headers, or retry logic.
918//
919//
920//    // Example sending a request using the CreateGroupRequest method.
921//    req, resp := client.CreateGroupRequest(params)
922//
923//    err := req.Send()
924//    if err == nil { // resp is now filled
925//        fmt.Println(resp)
926//    }
927//
928// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateGroup
929func (c *Greengrass) CreateGroupRequest(input *CreateGroupInput) (req *request.Request, output *CreateGroupOutput) {
930	op := &request.Operation{
931		Name:       opCreateGroup,
932		HTTPMethod: "POST",
933		HTTPPath:   "/greengrass/groups",
934	}
935
936	if input == nil {
937		input = &CreateGroupInput{}
938	}
939
940	output = &CreateGroupOutput{}
941	req = c.newRequest(op, input, output)
942	return
943}
944
945// CreateGroup API operation for AWS Greengrass.
946//
947// Creates a group. You may provide the initial version of the group or use
948// ''CreateGroupVersion'' at a later time. Tip: You can use the ''gg_group_setup''
949// package (https://github.com/awslabs/aws-greengrass-group-setup) as a library
950// or command-line application to create and deploy Greengrass groups.
951//
952// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
953// with awserr.Error's Code and Message methods to get detailed information about
954// the error.
955//
956// See the AWS API reference guide for AWS Greengrass's
957// API operation CreateGroup for usage and error information.
958//
959// Returned Error Codes:
960//   * ErrCodeBadRequestException "BadRequestException"
961//   General error information.
962//
963// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateGroup
964func (c *Greengrass) CreateGroup(input *CreateGroupInput) (*CreateGroupOutput, error) {
965	req, out := c.CreateGroupRequest(input)
966	return out, req.Send()
967}
968
969// CreateGroupWithContext is the same as CreateGroup with the addition of
970// the ability to pass a context and additional request options.
971//
972// See CreateGroup for details on how to use this API operation.
973//
974// The context must be non-nil and will be used for request cancellation. If
975// the context is nil a panic will occur. In the future the SDK may create
976// sub-contexts for http.Requests. See https://golang.org/pkg/context/
977// for more information on using Contexts.
978func (c *Greengrass) CreateGroupWithContext(ctx aws.Context, input *CreateGroupInput, opts ...request.Option) (*CreateGroupOutput, error) {
979	req, out := c.CreateGroupRequest(input)
980	req.SetContext(ctx)
981	req.ApplyOptions(opts...)
982	return out, req.Send()
983}
984
985const opCreateGroupCertificateAuthority = "CreateGroupCertificateAuthority"
986
987// CreateGroupCertificateAuthorityRequest generates a "aws/request.Request" representing the
988// client's request for the CreateGroupCertificateAuthority operation. The "output" return
989// value will be populated with the request's response once the request completes
990// successfully.
991//
992// Use "Send" method on the returned Request to send the API call to the service.
993// the "output" return value is not valid until after Send returns without error.
994//
995// See CreateGroupCertificateAuthority for more information on using the CreateGroupCertificateAuthority
996// API call, and error handling.
997//
998// This method is useful when you want to inject custom logic or configuration
999// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1000//
1001//
1002//    // Example sending a request using the CreateGroupCertificateAuthorityRequest method.
1003//    req, resp := client.CreateGroupCertificateAuthorityRequest(params)
1004//
1005//    err := req.Send()
1006//    if err == nil { // resp is now filled
1007//        fmt.Println(resp)
1008//    }
1009//
1010// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateGroupCertificateAuthority
1011func (c *Greengrass) CreateGroupCertificateAuthorityRequest(input *CreateGroupCertificateAuthorityInput) (req *request.Request, output *CreateGroupCertificateAuthorityOutput) {
1012	op := &request.Operation{
1013		Name:       opCreateGroupCertificateAuthority,
1014		HTTPMethod: "POST",
1015		HTTPPath:   "/greengrass/groups/{GroupId}/certificateauthorities",
1016	}
1017
1018	if input == nil {
1019		input = &CreateGroupCertificateAuthorityInput{}
1020	}
1021
1022	output = &CreateGroupCertificateAuthorityOutput{}
1023	req = c.newRequest(op, input, output)
1024	return
1025}
1026
1027// CreateGroupCertificateAuthority API operation for AWS Greengrass.
1028//
1029// Creates a CA for the group. If a CA already exists, it will rotate the existing
1030// CA.
1031//
1032// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1033// with awserr.Error's Code and Message methods to get detailed information about
1034// the error.
1035//
1036// See the AWS API reference guide for AWS Greengrass's
1037// API operation CreateGroupCertificateAuthority for usage and error information.
1038//
1039// Returned Error Codes:
1040//   * ErrCodeBadRequestException "BadRequestException"
1041//   General error information.
1042//
1043//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
1044//   General error information.
1045//
1046// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateGroupCertificateAuthority
1047func (c *Greengrass) CreateGroupCertificateAuthority(input *CreateGroupCertificateAuthorityInput) (*CreateGroupCertificateAuthorityOutput, error) {
1048	req, out := c.CreateGroupCertificateAuthorityRequest(input)
1049	return out, req.Send()
1050}
1051
1052// CreateGroupCertificateAuthorityWithContext is the same as CreateGroupCertificateAuthority with the addition of
1053// the ability to pass a context and additional request options.
1054//
1055// See CreateGroupCertificateAuthority for details on how to use this API operation.
1056//
1057// The context must be non-nil and will be used for request cancellation. If
1058// the context is nil a panic will occur. In the future the SDK may create
1059// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1060// for more information on using Contexts.
1061func (c *Greengrass) CreateGroupCertificateAuthorityWithContext(ctx aws.Context, input *CreateGroupCertificateAuthorityInput, opts ...request.Option) (*CreateGroupCertificateAuthorityOutput, error) {
1062	req, out := c.CreateGroupCertificateAuthorityRequest(input)
1063	req.SetContext(ctx)
1064	req.ApplyOptions(opts...)
1065	return out, req.Send()
1066}
1067
1068const opCreateGroupVersion = "CreateGroupVersion"
1069
1070// CreateGroupVersionRequest generates a "aws/request.Request" representing the
1071// client's request for the CreateGroupVersion operation. The "output" return
1072// value will be populated with the request's response once the request completes
1073// successfully.
1074//
1075// Use "Send" method on the returned Request to send the API call to the service.
1076// the "output" return value is not valid until after Send returns without error.
1077//
1078// See CreateGroupVersion for more information on using the CreateGroupVersion
1079// API call, and error handling.
1080//
1081// This method is useful when you want to inject custom logic or configuration
1082// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1083//
1084//
1085//    // Example sending a request using the CreateGroupVersionRequest method.
1086//    req, resp := client.CreateGroupVersionRequest(params)
1087//
1088//    err := req.Send()
1089//    if err == nil { // resp is now filled
1090//        fmt.Println(resp)
1091//    }
1092//
1093// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateGroupVersion
1094func (c *Greengrass) CreateGroupVersionRequest(input *CreateGroupVersionInput) (req *request.Request, output *CreateGroupVersionOutput) {
1095	op := &request.Operation{
1096		Name:       opCreateGroupVersion,
1097		HTTPMethod: "POST",
1098		HTTPPath:   "/greengrass/groups/{GroupId}/versions",
1099	}
1100
1101	if input == nil {
1102		input = &CreateGroupVersionInput{}
1103	}
1104
1105	output = &CreateGroupVersionOutput{}
1106	req = c.newRequest(op, input, output)
1107	return
1108}
1109
1110// CreateGroupVersion API operation for AWS Greengrass.
1111//
1112// Creates a version of a group which has already been defined.
1113//
1114// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1115// with awserr.Error's Code and Message methods to get detailed information about
1116// the error.
1117//
1118// See the AWS API reference guide for AWS Greengrass's
1119// API operation CreateGroupVersion for usage and error information.
1120//
1121// Returned Error Codes:
1122//   * ErrCodeBadRequestException "BadRequestException"
1123//   General error information.
1124//
1125// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateGroupVersion
1126func (c *Greengrass) CreateGroupVersion(input *CreateGroupVersionInput) (*CreateGroupVersionOutput, error) {
1127	req, out := c.CreateGroupVersionRequest(input)
1128	return out, req.Send()
1129}
1130
1131// CreateGroupVersionWithContext is the same as CreateGroupVersion with the addition of
1132// the ability to pass a context and additional request options.
1133//
1134// See CreateGroupVersion for details on how to use this API operation.
1135//
1136// The context must be non-nil and will be used for request cancellation. If
1137// the context is nil a panic will occur. In the future the SDK may create
1138// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1139// for more information on using Contexts.
1140func (c *Greengrass) CreateGroupVersionWithContext(ctx aws.Context, input *CreateGroupVersionInput, opts ...request.Option) (*CreateGroupVersionOutput, error) {
1141	req, out := c.CreateGroupVersionRequest(input)
1142	req.SetContext(ctx)
1143	req.ApplyOptions(opts...)
1144	return out, req.Send()
1145}
1146
1147const opCreateLoggerDefinition = "CreateLoggerDefinition"
1148
1149// CreateLoggerDefinitionRequest generates a "aws/request.Request" representing the
1150// client's request for the CreateLoggerDefinition operation. The "output" return
1151// value will be populated with the request's response once the request completes
1152// successfully.
1153//
1154// Use "Send" method on the returned Request to send the API call to the service.
1155// the "output" return value is not valid until after Send returns without error.
1156//
1157// See CreateLoggerDefinition for more information on using the CreateLoggerDefinition
1158// API call, and error handling.
1159//
1160// This method is useful when you want to inject custom logic or configuration
1161// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1162//
1163//
1164//    // Example sending a request using the CreateLoggerDefinitionRequest method.
1165//    req, resp := client.CreateLoggerDefinitionRequest(params)
1166//
1167//    err := req.Send()
1168//    if err == nil { // resp is now filled
1169//        fmt.Println(resp)
1170//    }
1171//
1172// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateLoggerDefinition
1173func (c *Greengrass) CreateLoggerDefinitionRequest(input *CreateLoggerDefinitionInput) (req *request.Request, output *CreateLoggerDefinitionOutput) {
1174	op := &request.Operation{
1175		Name:       opCreateLoggerDefinition,
1176		HTTPMethod: "POST",
1177		HTTPPath:   "/greengrass/definition/loggers",
1178	}
1179
1180	if input == nil {
1181		input = &CreateLoggerDefinitionInput{}
1182	}
1183
1184	output = &CreateLoggerDefinitionOutput{}
1185	req = c.newRequest(op, input, output)
1186	return
1187}
1188
1189// CreateLoggerDefinition API operation for AWS Greengrass.
1190//
1191// Creates a logger definition. You may provide the initial version of the logger
1192// definition now or use ''CreateLoggerDefinitionVersion'' at a later time.
1193//
1194// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1195// with awserr.Error's Code and Message methods to get detailed information about
1196// the error.
1197//
1198// See the AWS API reference guide for AWS Greengrass's
1199// API operation CreateLoggerDefinition for usage and error information.
1200//
1201// Returned Error Codes:
1202//   * ErrCodeBadRequestException "BadRequestException"
1203//   General error information.
1204//
1205// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateLoggerDefinition
1206func (c *Greengrass) CreateLoggerDefinition(input *CreateLoggerDefinitionInput) (*CreateLoggerDefinitionOutput, error) {
1207	req, out := c.CreateLoggerDefinitionRequest(input)
1208	return out, req.Send()
1209}
1210
1211// CreateLoggerDefinitionWithContext is the same as CreateLoggerDefinition with the addition of
1212// the ability to pass a context and additional request options.
1213//
1214// See CreateLoggerDefinition for details on how to use this API operation.
1215//
1216// The context must be non-nil and will be used for request cancellation. If
1217// the context is nil a panic will occur. In the future the SDK may create
1218// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1219// for more information on using Contexts.
1220func (c *Greengrass) CreateLoggerDefinitionWithContext(ctx aws.Context, input *CreateLoggerDefinitionInput, opts ...request.Option) (*CreateLoggerDefinitionOutput, error) {
1221	req, out := c.CreateLoggerDefinitionRequest(input)
1222	req.SetContext(ctx)
1223	req.ApplyOptions(opts...)
1224	return out, req.Send()
1225}
1226
1227const opCreateLoggerDefinitionVersion = "CreateLoggerDefinitionVersion"
1228
1229// CreateLoggerDefinitionVersionRequest generates a "aws/request.Request" representing the
1230// client's request for the CreateLoggerDefinitionVersion operation. The "output" return
1231// value will be populated with the request's response once the request completes
1232// successfully.
1233//
1234// Use "Send" method on the returned Request to send the API call to the service.
1235// the "output" return value is not valid until after Send returns without error.
1236//
1237// See CreateLoggerDefinitionVersion for more information on using the CreateLoggerDefinitionVersion
1238// API call, and error handling.
1239//
1240// This method is useful when you want to inject custom logic or configuration
1241// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1242//
1243//
1244//    // Example sending a request using the CreateLoggerDefinitionVersionRequest method.
1245//    req, resp := client.CreateLoggerDefinitionVersionRequest(params)
1246//
1247//    err := req.Send()
1248//    if err == nil { // resp is now filled
1249//        fmt.Println(resp)
1250//    }
1251//
1252// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateLoggerDefinitionVersion
1253func (c *Greengrass) CreateLoggerDefinitionVersionRequest(input *CreateLoggerDefinitionVersionInput) (req *request.Request, output *CreateLoggerDefinitionVersionOutput) {
1254	op := &request.Operation{
1255		Name:       opCreateLoggerDefinitionVersion,
1256		HTTPMethod: "POST",
1257		HTTPPath:   "/greengrass/definition/loggers/{LoggerDefinitionId}/versions",
1258	}
1259
1260	if input == nil {
1261		input = &CreateLoggerDefinitionVersionInput{}
1262	}
1263
1264	output = &CreateLoggerDefinitionVersionOutput{}
1265	req = c.newRequest(op, input, output)
1266	return
1267}
1268
1269// CreateLoggerDefinitionVersion API operation for AWS Greengrass.
1270//
1271// Creates a version of a logger definition that has already been defined.
1272//
1273// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1274// with awserr.Error's Code and Message methods to get detailed information about
1275// the error.
1276//
1277// See the AWS API reference guide for AWS Greengrass's
1278// API operation CreateLoggerDefinitionVersion for usage and error information.
1279//
1280// Returned Error Codes:
1281//   * ErrCodeBadRequestException "BadRequestException"
1282//   General error information.
1283//
1284// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateLoggerDefinitionVersion
1285func (c *Greengrass) CreateLoggerDefinitionVersion(input *CreateLoggerDefinitionVersionInput) (*CreateLoggerDefinitionVersionOutput, error) {
1286	req, out := c.CreateLoggerDefinitionVersionRequest(input)
1287	return out, req.Send()
1288}
1289
1290// CreateLoggerDefinitionVersionWithContext is the same as CreateLoggerDefinitionVersion with the addition of
1291// the ability to pass a context and additional request options.
1292//
1293// See CreateLoggerDefinitionVersion for details on how to use this API operation.
1294//
1295// The context must be non-nil and will be used for request cancellation. If
1296// the context is nil a panic will occur. In the future the SDK may create
1297// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1298// for more information on using Contexts.
1299func (c *Greengrass) CreateLoggerDefinitionVersionWithContext(ctx aws.Context, input *CreateLoggerDefinitionVersionInput, opts ...request.Option) (*CreateLoggerDefinitionVersionOutput, error) {
1300	req, out := c.CreateLoggerDefinitionVersionRequest(input)
1301	req.SetContext(ctx)
1302	req.ApplyOptions(opts...)
1303	return out, req.Send()
1304}
1305
1306const opCreateResourceDefinition = "CreateResourceDefinition"
1307
1308// CreateResourceDefinitionRequest generates a "aws/request.Request" representing the
1309// client's request for the CreateResourceDefinition operation. The "output" return
1310// value will be populated with the request's response once the request completes
1311// successfully.
1312//
1313// Use "Send" method on the returned Request to send the API call to the service.
1314// the "output" return value is not valid until after Send returns without error.
1315//
1316// See CreateResourceDefinition for more information on using the CreateResourceDefinition
1317// API call, and error handling.
1318//
1319// This method is useful when you want to inject custom logic or configuration
1320// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1321//
1322//
1323//    // Example sending a request using the CreateResourceDefinitionRequest method.
1324//    req, resp := client.CreateResourceDefinitionRequest(params)
1325//
1326//    err := req.Send()
1327//    if err == nil { // resp is now filled
1328//        fmt.Println(resp)
1329//    }
1330//
1331// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateResourceDefinition
1332func (c *Greengrass) CreateResourceDefinitionRequest(input *CreateResourceDefinitionInput) (req *request.Request, output *CreateResourceDefinitionOutput) {
1333	op := &request.Operation{
1334		Name:       opCreateResourceDefinition,
1335		HTTPMethod: "POST",
1336		HTTPPath:   "/greengrass/definition/resources",
1337	}
1338
1339	if input == nil {
1340		input = &CreateResourceDefinitionInput{}
1341	}
1342
1343	output = &CreateResourceDefinitionOutput{}
1344	req = c.newRequest(op, input, output)
1345	return
1346}
1347
1348// CreateResourceDefinition API operation for AWS Greengrass.
1349//
1350// Creates a resource definition which contains a list of resources to be used
1351// in a group. You can create an initial version of the definition by providing
1352// a list of resources now, or use ''CreateResourceDefinitionVersion'' later.
1353//
1354// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1355// with awserr.Error's Code and Message methods to get detailed information about
1356// the error.
1357//
1358// See the AWS API reference guide for AWS Greengrass's
1359// API operation CreateResourceDefinition for usage and error information.
1360//
1361// Returned Error Codes:
1362//   * ErrCodeBadRequestException "BadRequestException"
1363//   General error information.
1364//
1365// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateResourceDefinition
1366func (c *Greengrass) CreateResourceDefinition(input *CreateResourceDefinitionInput) (*CreateResourceDefinitionOutput, error) {
1367	req, out := c.CreateResourceDefinitionRequest(input)
1368	return out, req.Send()
1369}
1370
1371// CreateResourceDefinitionWithContext is the same as CreateResourceDefinition with the addition of
1372// the ability to pass a context and additional request options.
1373//
1374// See CreateResourceDefinition for details on how to use this API operation.
1375//
1376// The context must be non-nil and will be used for request cancellation. If
1377// the context is nil a panic will occur. In the future the SDK may create
1378// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1379// for more information on using Contexts.
1380func (c *Greengrass) CreateResourceDefinitionWithContext(ctx aws.Context, input *CreateResourceDefinitionInput, opts ...request.Option) (*CreateResourceDefinitionOutput, error) {
1381	req, out := c.CreateResourceDefinitionRequest(input)
1382	req.SetContext(ctx)
1383	req.ApplyOptions(opts...)
1384	return out, req.Send()
1385}
1386
1387const opCreateResourceDefinitionVersion = "CreateResourceDefinitionVersion"
1388
1389// CreateResourceDefinitionVersionRequest generates a "aws/request.Request" representing the
1390// client's request for the CreateResourceDefinitionVersion operation. The "output" return
1391// value will be populated with the request's response once the request completes
1392// successfully.
1393//
1394// Use "Send" method on the returned Request to send the API call to the service.
1395// the "output" return value is not valid until after Send returns without error.
1396//
1397// See CreateResourceDefinitionVersion for more information on using the CreateResourceDefinitionVersion
1398// API call, and error handling.
1399//
1400// This method is useful when you want to inject custom logic or configuration
1401// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1402//
1403//
1404//    // Example sending a request using the CreateResourceDefinitionVersionRequest method.
1405//    req, resp := client.CreateResourceDefinitionVersionRequest(params)
1406//
1407//    err := req.Send()
1408//    if err == nil { // resp is now filled
1409//        fmt.Println(resp)
1410//    }
1411//
1412// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateResourceDefinitionVersion
1413func (c *Greengrass) CreateResourceDefinitionVersionRequest(input *CreateResourceDefinitionVersionInput) (req *request.Request, output *CreateResourceDefinitionVersionOutput) {
1414	op := &request.Operation{
1415		Name:       opCreateResourceDefinitionVersion,
1416		HTTPMethod: "POST",
1417		HTTPPath:   "/greengrass/definition/resources/{ResourceDefinitionId}/versions",
1418	}
1419
1420	if input == nil {
1421		input = &CreateResourceDefinitionVersionInput{}
1422	}
1423
1424	output = &CreateResourceDefinitionVersionOutput{}
1425	req = c.newRequest(op, input, output)
1426	return
1427}
1428
1429// CreateResourceDefinitionVersion API operation for AWS Greengrass.
1430//
1431// Creates a version of a resource definition that has already been defined.
1432//
1433// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1434// with awserr.Error's Code and Message methods to get detailed information about
1435// the error.
1436//
1437// See the AWS API reference guide for AWS Greengrass's
1438// API operation CreateResourceDefinitionVersion for usage and error information.
1439//
1440// Returned Error Codes:
1441//   * ErrCodeBadRequestException "BadRequestException"
1442//   General error information.
1443//
1444// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateResourceDefinitionVersion
1445func (c *Greengrass) CreateResourceDefinitionVersion(input *CreateResourceDefinitionVersionInput) (*CreateResourceDefinitionVersionOutput, error) {
1446	req, out := c.CreateResourceDefinitionVersionRequest(input)
1447	return out, req.Send()
1448}
1449
1450// CreateResourceDefinitionVersionWithContext is the same as CreateResourceDefinitionVersion with the addition of
1451// the ability to pass a context and additional request options.
1452//
1453// See CreateResourceDefinitionVersion for details on how to use this API operation.
1454//
1455// The context must be non-nil and will be used for request cancellation. If
1456// the context is nil a panic will occur. In the future the SDK may create
1457// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1458// for more information on using Contexts.
1459func (c *Greengrass) CreateResourceDefinitionVersionWithContext(ctx aws.Context, input *CreateResourceDefinitionVersionInput, opts ...request.Option) (*CreateResourceDefinitionVersionOutput, error) {
1460	req, out := c.CreateResourceDefinitionVersionRequest(input)
1461	req.SetContext(ctx)
1462	req.ApplyOptions(opts...)
1463	return out, req.Send()
1464}
1465
1466const opCreateSoftwareUpdateJob = "CreateSoftwareUpdateJob"
1467
1468// CreateSoftwareUpdateJobRequest generates a "aws/request.Request" representing the
1469// client's request for the CreateSoftwareUpdateJob operation. The "output" return
1470// value will be populated with the request's response once the request completes
1471// successfully.
1472//
1473// Use "Send" method on the returned Request to send the API call to the service.
1474// the "output" return value is not valid until after Send returns without error.
1475//
1476// See CreateSoftwareUpdateJob for more information on using the CreateSoftwareUpdateJob
1477// API call, and error handling.
1478//
1479// This method is useful when you want to inject custom logic or configuration
1480// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1481//
1482//
1483//    // Example sending a request using the CreateSoftwareUpdateJobRequest method.
1484//    req, resp := client.CreateSoftwareUpdateJobRequest(params)
1485//
1486//    err := req.Send()
1487//    if err == nil { // resp is now filled
1488//        fmt.Println(resp)
1489//    }
1490//
1491// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateSoftwareUpdateJob
1492func (c *Greengrass) CreateSoftwareUpdateJobRequest(input *CreateSoftwareUpdateJobInput) (req *request.Request, output *CreateSoftwareUpdateJobOutput) {
1493	op := &request.Operation{
1494		Name:       opCreateSoftwareUpdateJob,
1495		HTTPMethod: "POST",
1496		HTTPPath:   "/greengrass/updates",
1497	}
1498
1499	if input == nil {
1500		input = &CreateSoftwareUpdateJobInput{}
1501	}
1502
1503	output = &CreateSoftwareUpdateJobOutput{}
1504	req = c.newRequest(op, input, output)
1505	return
1506}
1507
1508// CreateSoftwareUpdateJob API operation for AWS Greengrass.
1509//
1510// Creates a software update for a core or group of cores (specified as an IoT
1511// thing group.) Use this to update the OTA Agent as well as the Greengrass
1512// core software. It makes use of the IoT Jobs feature which provides additional
1513// commands to manage a Greengrass core software update job.
1514//
1515// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1516// with awserr.Error's Code and Message methods to get detailed information about
1517// the error.
1518//
1519// See the AWS API reference guide for AWS Greengrass's
1520// API operation CreateSoftwareUpdateJob for usage and error information.
1521//
1522// Returned Error Codes:
1523//   * ErrCodeBadRequestException "BadRequestException"
1524//   General error information.
1525//
1526//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
1527//   General error information.
1528//
1529// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateSoftwareUpdateJob
1530func (c *Greengrass) CreateSoftwareUpdateJob(input *CreateSoftwareUpdateJobInput) (*CreateSoftwareUpdateJobOutput, error) {
1531	req, out := c.CreateSoftwareUpdateJobRequest(input)
1532	return out, req.Send()
1533}
1534
1535// CreateSoftwareUpdateJobWithContext is the same as CreateSoftwareUpdateJob with the addition of
1536// the ability to pass a context and additional request options.
1537//
1538// See CreateSoftwareUpdateJob for details on how to use this API operation.
1539//
1540// The context must be non-nil and will be used for request cancellation. If
1541// the context is nil a panic will occur. In the future the SDK may create
1542// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1543// for more information on using Contexts.
1544func (c *Greengrass) CreateSoftwareUpdateJobWithContext(ctx aws.Context, input *CreateSoftwareUpdateJobInput, opts ...request.Option) (*CreateSoftwareUpdateJobOutput, error) {
1545	req, out := c.CreateSoftwareUpdateJobRequest(input)
1546	req.SetContext(ctx)
1547	req.ApplyOptions(opts...)
1548	return out, req.Send()
1549}
1550
1551const opCreateSubscriptionDefinition = "CreateSubscriptionDefinition"
1552
1553// CreateSubscriptionDefinitionRequest generates a "aws/request.Request" representing the
1554// client's request for the CreateSubscriptionDefinition operation. The "output" return
1555// value will be populated with the request's response once the request completes
1556// successfully.
1557//
1558// Use "Send" method on the returned Request to send the API call to the service.
1559// the "output" return value is not valid until after Send returns without error.
1560//
1561// See CreateSubscriptionDefinition for more information on using the CreateSubscriptionDefinition
1562// API call, and error handling.
1563//
1564// This method is useful when you want to inject custom logic or configuration
1565// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1566//
1567//
1568//    // Example sending a request using the CreateSubscriptionDefinitionRequest method.
1569//    req, resp := client.CreateSubscriptionDefinitionRequest(params)
1570//
1571//    err := req.Send()
1572//    if err == nil { // resp is now filled
1573//        fmt.Println(resp)
1574//    }
1575//
1576// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateSubscriptionDefinition
1577func (c *Greengrass) CreateSubscriptionDefinitionRequest(input *CreateSubscriptionDefinitionInput) (req *request.Request, output *CreateSubscriptionDefinitionOutput) {
1578	op := &request.Operation{
1579		Name:       opCreateSubscriptionDefinition,
1580		HTTPMethod: "POST",
1581		HTTPPath:   "/greengrass/definition/subscriptions",
1582	}
1583
1584	if input == nil {
1585		input = &CreateSubscriptionDefinitionInput{}
1586	}
1587
1588	output = &CreateSubscriptionDefinitionOutput{}
1589	req = c.newRequest(op, input, output)
1590	return
1591}
1592
1593// CreateSubscriptionDefinition API operation for AWS Greengrass.
1594//
1595// Creates a subscription definition. You may provide the initial version of
1596// the subscription definition now or use ''CreateSubscriptionDefinitionVersion''
1597// at a later time.
1598//
1599// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1600// with awserr.Error's Code and Message methods to get detailed information about
1601// the error.
1602//
1603// See the AWS API reference guide for AWS Greengrass's
1604// API operation CreateSubscriptionDefinition for usage and error information.
1605//
1606// Returned Error Codes:
1607//   * ErrCodeBadRequestException "BadRequestException"
1608//   General error information.
1609//
1610// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateSubscriptionDefinition
1611func (c *Greengrass) CreateSubscriptionDefinition(input *CreateSubscriptionDefinitionInput) (*CreateSubscriptionDefinitionOutput, error) {
1612	req, out := c.CreateSubscriptionDefinitionRequest(input)
1613	return out, req.Send()
1614}
1615
1616// CreateSubscriptionDefinitionWithContext is the same as CreateSubscriptionDefinition with the addition of
1617// the ability to pass a context and additional request options.
1618//
1619// See CreateSubscriptionDefinition 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 *Greengrass) CreateSubscriptionDefinitionWithContext(ctx aws.Context, input *CreateSubscriptionDefinitionInput, opts ...request.Option) (*CreateSubscriptionDefinitionOutput, error) {
1626	req, out := c.CreateSubscriptionDefinitionRequest(input)
1627	req.SetContext(ctx)
1628	req.ApplyOptions(opts...)
1629	return out, req.Send()
1630}
1631
1632const opCreateSubscriptionDefinitionVersion = "CreateSubscriptionDefinitionVersion"
1633
1634// CreateSubscriptionDefinitionVersionRequest generates a "aws/request.Request" representing the
1635// client's request for the CreateSubscriptionDefinitionVersion operation. The "output" return
1636// value will be populated with the request's response once the request completes
1637// successfully.
1638//
1639// Use "Send" method on the returned Request to send the API call to the service.
1640// the "output" return value is not valid until after Send returns without error.
1641//
1642// See CreateSubscriptionDefinitionVersion for more information on using the CreateSubscriptionDefinitionVersion
1643// API call, and error handling.
1644//
1645// This method is useful when you want to inject custom logic or configuration
1646// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1647//
1648//
1649//    // Example sending a request using the CreateSubscriptionDefinitionVersionRequest method.
1650//    req, resp := client.CreateSubscriptionDefinitionVersionRequest(params)
1651//
1652//    err := req.Send()
1653//    if err == nil { // resp is now filled
1654//        fmt.Println(resp)
1655//    }
1656//
1657// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateSubscriptionDefinitionVersion
1658func (c *Greengrass) CreateSubscriptionDefinitionVersionRequest(input *CreateSubscriptionDefinitionVersionInput) (req *request.Request, output *CreateSubscriptionDefinitionVersionOutput) {
1659	op := &request.Operation{
1660		Name:       opCreateSubscriptionDefinitionVersion,
1661		HTTPMethod: "POST",
1662		HTTPPath:   "/greengrass/definition/subscriptions/{SubscriptionDefinitionId}/versions",
1663	}
1664
1665	if input == nil {
1666		input = &CreateSubscriptionDefinitionVersionInput{}
1667	}
1668
1669	output = &CreateSubscriptionDefinitionVersionOutput{}
1670	req = c.newRequest(op, input, output)
1671	return
1672}
1673
1674// CreateSubscriptionDefinitionVersion API operation for AWS Greengrass.
1675//
1676// Creates a version of a subscription definition which has already been defined.
1677//
1678// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1679// with awserr.Error's Code and Message methods to get detailed information about
1680// the error.
1681//
1682// See the AWS API reference guide for AWS Greengrass's
1683// API operation CreateSubscriptionDefinitionVersion for usage and error information.
1684//
1685// Returned Error Codes:
1686//   * ErrCodeBadRequestException "BadRequestException"
1687//   General error information.
1688//
1689// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateSubscriptionDefinitionVersion
1690func (c *Greengrass) CreateSubscriptionDefinitionVersion(input *CreateSubscriptionDefinitionVersionInput) (*CreateSubscriptionDefinitionVersionOutput, error) {
1691	req, out := c.CreateSubscriptionDefinitionVersionRequest(input)
1692	return out, req.Send()
1693}
1694
1695// CreateSubscriptionDefinitionVersionWithContext is the same as CreateSubscriptionDefinitionVersion with the addition of
1696// the ability to pass a context and additional request options.
1697//
1698// See CreateSubscriptionDefinitionVersion for details on how to use this API operation.
1699//
1700// The context must be non-nil and will be used for request cancellation. If
1701// the context is nil a panic will occur. In the future the SDK may create
1702// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1703// for more information on using Contexts.
1704func (c *Greengrass) CreateSubscriptionDefinitionVersionWithContext(ctx aws.Context, input *CreateSubscriptionDefinitionVersionInput, opts ...request.Option) (*CreateSubscriptionDefinitionVersionOutput, error) {
1705	req, out := c.CreateSubscriptionDefinitionVersionRequest(input)
1706	req.SetContext(ctx)
1707	req.ApplyOptions(opts...)
1708	return out, req.Send()
1709}
1710
1711const opDeleteConnectorDefinition = "DeleteConnectorDefinition"
1712
1713// DeleteConnectorDefinitionRequest generates a "aws/request.Request" representing the
1714// client's request for the DeleteConnectorDefinition operation. The "output" return
1715// value will be populated with the request's response once the request completes
1716// successfully.
1717//
1718// Use "Send" method on the returned Request to send the API call to the service.
1719// the "output" return value is not valid until after Send returns without error.
1720//
1721// See DeleteConnectorDefinition for more information on using the DeleteConnectorDefinition
1722// API call, and error handling.
1723//
1724// This method is useful when you want to inject custom logic or configuration
1725// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1726//
1727//
1728//    // Example sending a request using the DeleteConnectorDefinitionRequest method.
1729//    req, resp := client.DeleteConnectorDefinitionRequest(params)
1730//
1731//    err := req.Send()
1732//    if err == nil { // resp is now filled
1733//        fmt.Println(resp)
1734//    }
1735//
1736// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/DeleteConnectorDefinition
1737func (c *Greengrass) DeleteConnectorDefinitionRequest(input *DeleteConnectorDefinitionInput) (req *request.Request, output *DeleteConnectorDefinitionOutput) {
1738	op := &request.Operation{
1739		Name:       opDeleteConnectorDefinition,
1740		HTTPMethod: "DELETE",
1741		HTTPPath:   "/greengrass/definition/connectors/{ConnectorDefinitionId}",
1742	}
1743
1744	if input == nil {
1745		input = &DeleteConnectorDefinitionInput{}
1746	}
1747
1748	output = &DeleteConnectorDefinitionOutput{}
1749	req = c.newRequest(op, input, output)
1750	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1751	return
1752}
1753
1754// DeleteConnectorDefinition API operation for AWS Greengrass.
1755//
1756// Deletes a connector definition.
1757//
1758// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1759// with awserr.Error's Code and Message methods to get detailed information about
1760// the error.
1761//
1762// See the AWS API reference guide for AWS Greengrass's
1763// API operation DeleteConnectorDefinition for usage and error information.
1764//
1765// Returned Error Codes:
1766//   * ErrCodeBadRequestException "BadRequestException"
1767//   General error information.
1768//
1769// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/DeleteConnectorDefinition
1770func (c *Greengrass) DeleteConnectorDefinition(input *DeleteConnectorDefinitionInput) (*DeleteConnectorDefinitionOutput, error) {
1771	req, out := c.DeleteConnectorDefinitionRequest(input)
1772	return out, req.Send()
1773}
1774
1775// DeleteConnectorDefinitionWithContext is the same as DeleteConnectorDefinition with the addition of
1776// the ability to pass a context and additional request options.
1777//
1778// See DeleteConnectorDefinition for details on how to use this API operation.
1779//
1780// The context must be non-nil and will be used for request cancellation. If
1781// the context is nil a panic will occur. In the future the SDK may create
1782// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1783// for more information on using Contexts.
1784func (c *Greengrass) DeleteConnectorDefinitionWithContext(ctx aws.Context, input *DeleteConnectorDefinitionInput, opts ...request.Option) (*DeleteConnectorDefinitionOutput, error) {
1785	req, out := c.DeleteConnectorDefinitionRequest(input)
1786	req.SetContext(ctx)
1787	req.ApplyOptions(opts...)
1788	return out, req.Send()
1789}
1790
1791const opDeleteCoreDefinition = "DeleteCoreDefinition"
1792
1793// DeleteCoreDefinitionRequest generates a "aws/request.Request" representing the
1794// client's request for the DeleteCoreDefinition operation. The "output" return
1795// value will be populated with the request's response once the request completes
1796// successfully.
1797//
1798// Use "Send" method on the returned Request to send the API call to the service.
1799// the "output" return value is not valid until after Send returns without error.
1800//
1801// See DeleteCoreDefinition for more information on using the DeleteCoreDefinition
1802// API call, and error handling.
1803//
1804// This method is useful when you want to inject custom logic or configuration
1805// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1806//
1807//
1808//    // Example sending a request using the DeleteCoreDefinitionRequest method.
1809//    req, resp := client.DeleteCoreDefinitionRequest(params)
1810//
1811//    err := req.Send()
1812//    if err == nil { // resp is now filled
1813//        fmt.Println(resp)
1814//    }
1815//
1816// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/DeleteCoreDefinition
1817func (c *Greengrass) DeleteCoreDefinitionRequest(input *DeleteCoreDefinitionInput) (req *request.Request, output *DeleteCoreDefinitionOutput) {
1818	op := &request.Operation{
1819		Name:       opDeleteCoreDefinition,
1820		HTTPMethod: "DELETE",
1821		HTTPPath:   "/greengrass/definition/cores/{CoreDefinitionId}",
1822	}
1823
1824	if input == nil {
1825		input = &DeleteCoreDefinitionInput{}
1826	}
1827
1828	output = &DeleteCoreDefinitionOutput{}
1829	req = c.newRequest(op, input, output)
1830	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1831	return
1832}
1833
1834// DeleteCoreDefinition API operation for AWS Greengrass.
1835//
1836// Deletes a core definition.
1837//
1838// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1839// with awserr.Error's Code and Message methods to get detailed information about
1840// the error.
1841//
1842// See the AWS API reference guide for AWS Greengrass's
1843// API operation DeleteCoreDefinition for usage and error information.
1844//
1845// Returned Error Codes:
1846//   * ErrCodeBadRequestException "BadRequestException"
1847//   General error information.
1848//
1849// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/DeleteCoreDefinition
1850func (c *Greengrass) DeleteCoreDefinition(input *DeleteCoreDefinitionInput) (*DeleteCoreDefinitionOutput, error) {
1851	req, out := c.DeleteCoreDefinitionRequest(input)
1852	return out, req.Send()
1853}
1854
1855// DeleteCoreDefinitionWithContext is the same as DeleteCoreDefinition with the addition of
1856// the ability to pass a context and additional request options.
1857//
1858// See DeleteCoreDefinition for details on how to use this API operation.
1859//
1860// The context must be non-nil and will be used for request cancellation. If
1861// the context is nil a panic will occur. In the future the SDK may create
1862// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1863// for more information on using Contexts.
1864func (c *Greengrass) DeleteCoreDefinitionWithContext(ctx aws.Context, input *DeleteCoreDefinitionInput, opts ...request.Option) (*DeleteCoreDefinitionOutput, error) {
1865	req, out := c.DeleteCoreDefinitionRequest(input)
1866	req.SetContext(ctx)
1867	req.ApplyOptions(opts...)
1868	return out, req.Send()
1869}
1870
1871const opDeleteDeviceDefinition = "DeleteDeviceDefinition"
1872
1873// DeleteDeviceDefinitionRequest generates a "aws/request.Request" representing the
1874// client's request for the DeleteDeviceDefinition operation. The "output" return
1875// value will be populated with the request's response once the request completes
1876// successfully.
1877//
1878// Use "Send" method on the returned Request to send the API call to the service.
1879// the "output" return value is not valid until after Send returns without error.
1880//
1881// See DeleteDeviceDefinition for more information on using the DeleteDeviceDefinition
1882// API call, and error handling.
1883//
1884// This method is useful when you want to inject custom logic or configuration
1885// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1886//
1887//
1888//    // Example sending a request using the DeleteDeviceDefinitionRequest method.
1889//    req, resp := client.DeleteDeviceDefinitionRequest(params)
1890//
1891//    err := req.Send()
1892//    if err == nil { // resp is now filled
1893//        fmt.Println(resp)
1894//    }
1895//
1896// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/DeleteDeviceDefinition
1897func (c *Greengrass) DeleteDeviceDefinitionRequest(input *DeleteDeviceDefinitionInput) (req *request.Request, output *DeleteDeviceDefinitionOutput) {
1898	op := &request.Operation{
1899		Name:       opDeleteDeviceDefinition,
1900		HTTPMethod: "DELETE",
1901		HTTPPath:   "/greengrass/definition/devices/{DeviceDefinitionId}",
1902	}
1903
1904	if input == nil {
1905		input = &DeleteDeviceDefinitionInput{}
1906	}
1907
1908	output = &DeleteDeviceDefinitionOutput{}
1909	req = c.newRequest(op, input, output)
1910	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1911	return
1912}
1913
1914// DeleteDeviceDefinition API operation for AWS Greengrass.
1915//
1916// Deletes a device definition.
1917//
1918// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1919// with awserr.Error's Code and Message methods to get detailed information about
1920// the error.
1921//
1922// See the AWS API reference guide for AWS Greengrass's
1923// API operation DeleteDeviceDefinition for usage and error information.
1924//
1925// Returned Error Codes:
1926//   * ErrCodeBadRequestException "BadRequestException"
1927//   General error information.
1928//
1929// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/DeleteDeviceDefinition
1930func (c *Greengrass) DeleteDeviceDefinition(input *DeleteDeviceDefinitionInput) (*DeleteDeviceDefinitionOutput, error) {
1931	req, out := c.DeleteDeviceDefinitionRequest(input)
1932	return out, req.Send()
1933}
1934
1935// DeleteDeviceDefinitionWithContext is the same as DeleteDeviceDefinition with the addition of
1936// the ability to pass a context and additional request options.
1937//
1938// See DeleteDeviceDefinition for details on how to use this API operation.
1939//
1940// The context must be non-nil and will be used for request cancellation. If
1941// the context is nil a panic will occur. In the future the SDK may create
1942// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1943// for more information on using Contexts.
1944func (c *Greengrass) DeleteDeviceDefinitionWithContext(ctx aws.Context, input *DeleteDeviceDefinitionInput, opts ...request.Option) (*DeleteDeviceDefinitionOutput, error) {
1945	req, out := c.DeleteDeviceDefinitionRequest(input)
1946	req.SetContext(ctx)
1947	req.ApplyOptions(opts...)
1948	return out, req.Send()
1949}
1950
1951const opDeleteFunctionDefinition = "DeleteFunctionDefinition"
1952
1953// DeleteFunctionDefinitionRequest generates a "aws/request.Request" representing the
1954// client's request for the DeleteFunctionDefinition operation. The "output" return
1955// value will be populated with the request's response once the request completes
1956// successfully.
1957//
1958// Use "Send" method on the returned Request to send the API call to the service.
1959// the "output" return value is not valid until after Send returns without error.
1960//
1961// See DeleteFunctionDefinition for more information on using the DeleteFunctionDefinition
1962// API call, and error handling.
1963//
1964// This method is useful when you want to inject custom logic or configuration
1965// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1966//
1967//
1968//    // Example sending a request using the DeleteFunctionDefinitionRequest method.
1969//    req, resp := client.DeleteFunctionDefinitionRequest(params)
1970//
1971//    err := req.Send()
1972//    if err == nil { // resp is now filled
1973//        fmt.Println(resp)
1974//    }
1975//
1976// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/DeleteFunctionDefinition
1977func (c *Greengrass) DeleteFunctionDefinitionRequest(input *DeleteFunctionDefinitionInput) (req *request.Request, output *DeleteFunctionDefinitionOutput) {
1978	op := &request.Operation{
1979		Name:       opDeleteFunctionDefinition,
1980		HTTPMethod: "DELETE",
1981		HTTPPath:   "/greengrass/definition/functions/{FunctionDefinitionId}",
1982	}
1983
1984	if input == nil {
1985		input = &DeleteFunctionDefinitionInput{}
1986	}
1987
1988	output = &DeleteFunctionDefinitionOutput{}
1989	req = c.newRequest(op, input, output)
1990	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1991	return
1992}
1993
1994// DeleteFunctionDefinition API operation for AWS Greengrass.
1995//
1996// Deletes a Lambda function definition.
1997//
1998// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1999// with awserr.Error's Code and Message methods to get detailed information about
2000// the error.
2001//
2002// See the AWS API reference guide for AWS Greengrass's
2003// API operation DeleteFunctionDefinition for usage and error information.
2004//
2005// Returned Error Codes:
2006//   * ErrCodeBadRequestException "BadRequestException"
2007//   General error information.
2008//
2009// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/DeleteFunctionDefinition
2010func (c *Greengrass) DeleteFunctionDefinition(input *DeleteFunctionDefinitionInput) (*DeleteFunctionDefinitionOutput, error) {
2011	req, out := c.DeleteFunctionDefinitionRequest(input)
2012	return out, req.Send()
2013}
2014
2015// DeleteFunctionDefinitionWithContext is the same as DeleteFunctionDefinition with the addition of
2016// the ability to pass a context and additional request options.
2017//
2018// See DeleteFunctionDefinition for details on how to use this API operation.
2019//
2020// The context must be non-nil and will be used for request cancellation. If
2021// the context is nil a panic will occur. In the future the SDK may create
2022// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2023// for more information on using Contexts.
2024func (c *Greengrass) DeleteFunctionDefinitionWithContext(ctx aws.Context, input *DeleteFunctionDefinitionInput, opts ...request.Option) (*DeleteFunctionDefinitionOutput, error) {
2025	req, out := c.DeleteFunctionDefinitionRequest(input)
2026	req.SetContext(ctx)
2027	req.ApplyOptions(opts...)
2028	return out, req.Send()
2029}
2030
2031const opDeleteGroup = "DeleteGroup"
2032
2033// DeleteGroupRequest generates a "aws/request.Request" representing the
2034// client's request for the DeleteGroup operation. The "output" return
2035// value will be populated with the request's response once the request completes
2036// successfully.
2037//
2038// Use "Send" method on the returned Request to send the API call to the service.
2039// the "output" return value is not valid until after Send returns without error.
2040//
2041// See DeleteGroup for more information on using the DeleteGroup
2042// API call, and error handling.
2043//
2044// This method is useful when you want to inject custom logic or configuration
2045// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2046//
2047//
2048//    // Example sending a request using the DeleteGroupRequest method.
2049//    req, resp := client.DeleteGroupRequest(params)
2050//
2051//    err := req.Send()
2052//    if err == nil { // resp is now filled
2053//        fmt.Println(resp)
2054//    }
2055//
2056// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/DeleteGroup
2057func (c *Greengrass) DeleteGroupRequest(input *DeleteGroupInput) (req *request.Request, output *DeleteGroupOutput) {
2058	op := &request.Operation{
2059		Name:       opDeleteGroup,
2060		HTTPMethod: "DELETE",
2061		HTTPPath:   "/greengrass/groups/{GroupId}",
2062	}
2063
2064	if input == nil {
2065		input = &DeleteGroupInput{}
2066	}
2067
2068	output = &DeleteGroupOutput{}
2069	req = c.newRequest(op, input, output)
2070	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2071	return
2072}
2073
2074// DeleteGroup API operation for AWS Greengrass.
2075//
2076// Deletes a group.
2077//
2078// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2079// with awserr.Error's Code and Message methods to get detailed information about
2080// the error.
2081//
2082// See the AWS API reference guide for AWS Greengrass's
2083// API operation DeleteGroup for usage and error information.
2084//
2085// Returned Error Codes:
2086//   * ErrCodeBadRequestException "BadRequestException"
2087//   General error information.
2088//
2089// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/DeleteGroup
2090func (c *Greengrass) DeleteGroup(input *DeleteGroupInput) (*DeleteGroupOutput, error) {
2091	req, out := c.DeleteGroupRequest(input)
2092	return out, req.Send()
2093}
2094
2095// DeleteGroupWithContext is the same as DeleteGroup with the addition of
2096// the ability to pass a context and additional request options.
2097//
2098// See DeleteGroup for details on how to use this API operation.
2099//
2100// The context must be non-nil and will be used for request cancellation. If
2101// the context is nil a panic will occur. In the future the SDK may create
2102// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2103// for more information on using Contexts.
2104func (c *Greengrass) DeleteGroupWithContext(ctx aws.Context, input *DeleteGroupInput, opts ...request.Option) (*DeleteGroupOutput, error) {
2105	req, out := c.DeleteGroupRequest(input)
2106	req.SetContext(ctx)
2107	req.ApplyOptions(opts...)
2108	return out, req.Send()
2109}
2110
2111const opDeleteLoggerDefinition = "DeleteLoggerDefinition"
2112
2113// DeleteLoggerDefinitionRequest generates a "aws/request.Request" representing the
2114// client's request for the DeleteLoggerDefinition operation. The "output" return
2115// value will be populated with the request's response once the request completes
2116// successfully.
2117//
2118// Use "Send" method on the returned Request to send the API call to the service.
2119// the "output" return value is not valid until after Send returns without error.
2120//
2121// See DeleteLoggerDefinition for more information on using the DeleteLoggerDefinition
2122// API call, and error handling.
2123//
2124// This method is useful when you want to inject custom logic or configuration
2125// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2126//
2127//
2128//    // Example sending a request using the DeleteLoggerDefinitionRequest method.
2129//    req, resp := client.DeleteLoggerDefinitionRequest(params)
2130//
2131//    err := req.Send()
2132//    if err == nil { // resp is now filled
2133//        fmt.Println(resp)
2134//    }
2135//
2136// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/DeleteLoggerDefinition
2137func (c *Greengrass) DeleteLoggerDefinitionRequest(input *DeleteLoggerDefinitionInput) (req *request.Request, output *DeleteLoggerDefinitionOutput) {
2138	op := &request.Operation{
2139		Name:       opDeleteLoggerDefinition,
2140		HTTPMethod: "DELETE",
2141		HTTPPath:   "/greengrass/definition/loggers/{LoggerDefinitionId}",
2142	}
2143
2144	if input == nil {
2145		input = &DeleteLoggerDefinitionInput{}
2146	}
2147
2148	output = &DeleteLoggerDefinitionOutput{}
2149	req = c.newRequest(op, input, output)
2150	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2151	return
2152}
2153
2154// DeleteLoggerDefinition API operation for AWS Greengrass.
2155//
2156// Deletes a logger definition.
2157//
2158// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2159// with awserr.Error's Code and Message methods to get detailed information about
2160// the error.
2161//
2162// See the AWS API reference guide for AWS Greengrass's
2163// API operation DeleteLoggerDefinition for usage and error information.
2164//
2165// Returned Error Codes:
2166//   * ErrCodeBadRequestException "BadRequestException"
2167//   General error information.
2168//
2169// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/DeleteLoggerDefinition
2170func (c *Greengrass) DeleteLoggerDefinition(input *DeleteLoggerDefinitionInput) (*DeleteLoggerDefinitionOutput, error) {
2171	req, out := c.DeleteLoggerDefinitionRequest(input)
2172	return out, req.Send()
2173}
2174
2175// DeleteLoggerDefinitionWithContext is the same as DeleteLoggerDefinition with the addition of
2176// the ability to pass a context and additional request options.
2177//
2178// See DeleteLoggerDefinition for details on how to use this API operation.
2179//
2180// The context must be non-nil and will be used for request cancellation. If
2181// the context is nil a panic will occur. In the future the SDK may create
2182// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2183// for more information on using Contexts.
2184func (c *Greengrass) DeleteLoggerDefinitionWithContext(ctx aws.Context, input *DeleteLoggerDefinitionInput, opts ...request.Option) (*DeleteLoggerDefinitionOutput, error) {
2185	req, out := c.DeleteLoggerDefinitionRequest(input)
2186	req.SetContext(ctx)
2187	req.ApplyOptions(opts...)
2188	return out, req.Send()
2189}
2190
2191const opDeleteResourceDefinition = "DeleteResourceDefinition"
2192
2193// DeleteResourceDefinitionRequest generates a "aws/request.Request" representing the
2194// client's request for the DeleteResourceDefinition operation. The "output" return
2195// value will be populated with the request's response once the request completes
2196// successfully.
2197//
2198// Use "Send" method on the returned Request to send the API call to the service.
2199// the "output" return value is not valid until after Send returns without error.
2200//
2201// See DeleteResourceDefinition for more information on using the DeleteResourceDefinition
2202// API call, and error handling.
2203//
2204// This method is useful when you want to inject custom logic or configuration
2205// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2206//
2207//
2208//    // Example sending a request using the DeleteResourceDefinitionRequest method.
2209//    req, resp := client.DeleteResourceDefinitionRequest(params)
2210//
2211//    err := req.Send()
2212//    if err == nil { // resp is now filled
2213//        fmt.Println(resp)
2214//    }
2215//
2216// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/DeleteResourceDefinition
2217func (c *Greengrass) DeleteResourceDefinitionRequest(input *DeleteResourceDefinitionInput) (req *request.Request, output *DeleteResourceDefinitionOutput) {
2218	op := &request.Operation{
2219		Name:       opDeleteResourceDefinition,
2220		HTTPMethod: "DELETE",
2221		HTTPPath:   "/greengrass/definition/resources/{ResourceDefinitionId}",
2222	}
2223
2224	if input == nil {
2225		input = &DeleteResourceDefinitionInput{}
2226	}
2227
2228	output = &DeleteResourceDefinitionOutput{}
2229	req = c.newRequest(op, input, output)
2230	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2231	return
2232}
2233
2234// DeleteResourceDefinition API operation for AWS Greengrass.
2235//
2236// Deletes a resource definition.
2237//
2238// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2239// with awserr.Error's Code and Message methods to get detailed information about
2240// the error.
2241//
2242// See the AWS API reference guide for AWS Greengrass's
2243// API operation DeleteResourceDefinition for usage and error information.
2244//
2245// Returned Error Codes:
2246//   * ErrCodeBadRequestException "BadRequestException"
2247//   General error information.
2248//
2249// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/DeleteResourceDefinition
2250func (c *Greengrass) DeleteResourceDefinition(input *DeleteResourceDefinitionInput) (*DeleteResourceDefinitionOutput, error) {
2251	req, out := c.DeleteResourceDefinitionRequest(input)
2252	return out, req.Send()
2253}
2254
2255// DeleteResourceDefinitionWithContext is the same as DeleteResourceDefinition with the addition of
2256// the ability to pass a context and additional request options.
2257//
2258// See DeleteResourceDefinition for details on how to use this API operation.
2259//
2260// The context must be non-nil and will be used for request cancellation. If
2261// the context is nil a panic will occur. In the future the SDK may create
2262// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2263// for more information on using Contexts.
2264func (c *Greengrass) DeleteResourceDefinitionWithContext(ctx aws.Context, input *DeleteResourceDefinitionInput, opts ...request.Option) (*DeleteResourceDefinitionOutput, error) {
2265	req, out := c.DeleteResourceDefinitionRequest(input)
2266	req.SetContext(ctx)
2267	req.ApplyOptions(opts...)
2268	return out, req.Send()
2269}
2270
2271const opDeleteSubscriptionDefinition = "DeleteSubscriptionDefinition"
2272
2273// DeleteSubscriptionDefinitionRequest generates a "aws/request.Request" representing the
2274// client's request for the DeleteSubscriptionDefinition operation. The "output" return
2275// value will be populated with the request's response once the request completes
2276// successfully.
2277//
2278// Use "Send" method on the returned Request to send the API call to the service.
2279// the "output" return value is not valid until after Send returns without error.
2280//
2281// See DeleteSubscriptionDefinition for more information on using the DeleteSubscriptionDefinition
2282// API call, and error handling.
2283//
2284// This method is useful when you want to inject custom logic or configuration
2285// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2286//
2287//
2288//    // Example sending a request using the DeleteSubscriptionDefinitionRequest method.
2289//    req, resp := client.DeleteSubscriptionDefinitionRequest(params)
2290//
2291//    err := req.Send()
2292//    if err == nil { // resp is now filled
2293//        fmt.Println(resp)
2294//    }
2295//
2296// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/DeleteSubscriptionDefinition
2297func (c *Greengrass) DeleteSubscriptionDefinitionRequest(input *DeleteSubscriptionDefinitionInput) (req *request.Request, output *DeleteSubscriptionDefinitionOutput) {
2298	op := &request.Operation{
2299		Name:       opDeleteSubscriptionDefinition,
2300		HTTPMethod: "DELETE",
2301		HTTPPath:   "/greengrass/definition/subscriptions/{SubscriptionDefinitionId}",
2302	}
2303
2304	if input == nil {
2305		input = &DeleteSubscriptionDefinitionInput{}
2306	}
2307
2308	output = &DeleteSubscriptionDefinitionOutput{}
2309	req = c.newRequest(op, input, output)
2310	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2311	return
2312}
2313
2314// DeleteSubscriptionDefinition API operation for AWS Greengrass.
2315//
2316// Deletes a subscription definition.
2317//
2318// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2319// with awserr.Error's Code and Message methods to get detailed information about
2320// the error.
2321//
2322// See the AWS API reference guide for AWS Greengrass's
2323// API operation DeleteSubscriptionDefinition for usage and error information.
2324//
2325// Returned Error Codes:
2326//   * ErrCodeBadRequestException "BadRequestException"
2327//   General error information.
2328//
2329// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/DeleteSubscriptionDefinition
2330func (c *Greengrass) DeleteSubscriptionDefinition(input *DeleteSubscriptionDefinitionInput) (*DeleteSubscriptionDefinitionOutput, error) {
2331	req, out := c.DeleteSubscriptionDefinitionRequest(input)
2332	return out, req.Send()
2333}
2334
2335// DeleteSubscriptionDefinitionWithContext is the same as DeleteSubscriptionDefinition with the addition of
2336// the ability to pass a context and additional request options.
2337//
2338// See DeleteSubscriptionDefinition for details on how to use this API operation.
2339//
2340// The context must be non-nil and will be used for request cancellation. If
2341// the context is nil a panic will occur. In the future the SDK may create
2342// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2343// for more information on using Contexts.
2344func (c *Greengrass) DeleteSubscriptionDefinitionWithContext(ctx aws.Context, input *DeleteSubscriptionDefinitionInput, opts ...request.Option) (*DeleteSubscriptionDefinitionOutput, error) {
2345	req, out := c.DeleteSubscriptionDefinitionRequest(input)
2346	req.SetContext(ctx)
2347	req.ApplyOptions(opts...)
2348	return out, req.Send()
2349}
2350
2351const opDisassociateRoleFromGroup = "DisassociateRoleFromGroup"
2352
2353// DisassociateRoleFromGroupRequest generates a "aws/request.Request" representing the
2354// client's request for the DisassociateRoleFromGroup operation. The "output" return
2355// value will be populated with the request's response once the request completes
2356// successfully.
2357//
2358// Use "Send" method on the returned Request to send the API call to the service.
2359// the "output" return value is not valid until after Send returns without error.
2360//
2361// See DisassociateRoleFromGroup for more information on using the DisassociateRoleFromGroup
2362// API call, and error handling.
2363//
2364// This method is useful when you want to inject custom logic or configuration
2365// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2366//
2367//
2368//    // Example sending a request using the DisassociateRoleFromGroupRequest method.
2369//    req, resp := client.DisassociateRoleFromGroupRequest(params)
2370//
2371//    err := req.Send()
2372//    if err == nil { // resp is now filled
2373//        fmt.Println(resp)
2374//    }
2375//
2376// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/DisassociateRoleFromGroup
2377func (c *Greengrass) DisassociateRoleFromGroupRequest(input *DisassociateRoleFromGroupInput) (req *request.Request, output *DisassociateRoleFromGroupOutput) {
2378	op := &request.Operation{
2379		Name:       opDisassociateRoleFromGroup,
2380		HTTPMethod: "DELETE",
2381		HTTPPath:   "/greengrass/groups/{GroupId}/role",
2382	}
2383
2384	if input == nil {
2385		input = &DisassociateRoleFromGroupInput{}
2386	}
2387
2388	output = &DisassociateRoleFromGroupOutput{}
2389	req = c.newRequest(op, input, output)
2390	return
2391}
2392
2393// DisassociateRoleFromGroup API operation for AWS Greengrass.
2394//
2395// Disassociates the role from a group.
2396//
2397// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2398// with awserr.Error's Code and Message methods to get detailed information about
2399// the error.
2400//
2401// See the AWS API reference guide for AWS Greengrass's
2402// API operation DisassociateRoleFromGroup for usage and error information.
2403//
2404// Returned Error Codes:
2405//   * ErrCodeBadRequestException "BadRequestException"
2406//   General error information.
2407//
2408//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2409//   General error information.
2410//
2411// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/DisassociateRoleFromGroup
2412func (c *Greengrass) DisassociateRoleFromGroup(input *DisassociateRoleFromGroupInput) (*DisassociateRoleFromGroupOutput, error) {
2413	req, out := c.DisassociateRoleFromGroupRequest(input)
2414	return out, req.Send()
2415}
2416
2417// DisassociateRoleFromGroupWithContext is the same as DisassociateRoleFromGroup with the addition of
2418// the ability to pass a context and additional request options.
2419//
2420// See DisassociateRoleFromGroup for details on how to use this API operation.
2421//
2422// The context must be non-nil and will be used for request cancellation. If
2423// the context is nil a panic will occur. In the future the SDK may create
2424// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2425// for more information on using Contexts.
2426func (c *Greengrass) DisassociateRoleFromGroupWithContext(ctx aws.Context, input *DisassociateRoleFromGroupInput, opts ...request.Option) (*DisassociateRoleFromGroupOutput, error) {
2427	req, out := c.DisassociateRoleFromGroupRequest(input)
2428	req.SetContext(ctx)
2429	req.ApplyOptions(opts...)
2430	return out, req.Send()
2431}
2432
2433const opDisassociateServiceRoleFromAccount = "DisassociateServiceRoleFromAccount"
2434
2435// DisassociateServiceRoleFromAccountRequest generates a "aws/request.Request" representing the
2436// client's request for the DisassociateServiceRoleFromAccount operation. The "output" return
2437// value will be populated with the request's response once the request completes
2438// successfully.
2439//
2440// Use "Send" method on the returned Request to send the API call to the service.
2441// the "output" return value is not valid until after Send returns without error.
2442//
2443// See DisassociateServiceRoleFromAccount for more information on using the DisassociateServiceRoleFromAccount
2444// API call, and error handling.
2445//
2446// This method is useful when you want to inject custom logic or configuration
2447// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2448//
2449//
2450//    // Example sending a request using the DisassociateServiceRoleFromAccountRequest method.
2451//    req, resp := client.DisassociateServiceRoleFromAccountRequest(params)
2452//
2453//    err := req.Send()
2454//    if err == nil { // resp is now filled
2455//        fmt.Println(resp)
2456//    }
2457//
2458// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/DisassociateServiceRoleFromAccount
2459func (c *Greengrass) DisassociateServiceRoleFromAccountRequest(input *DisassociateServiceRoleFromAccountInput) (req *request.Request, output *DisassociateServiceRoleFromAccountOutput) {
2460	op := &request.Operation{
2461		Name:       opDisassociateServiceRoleFromAccount,
2462		HTTPMethod: "DELETE",
2463		HTTPPath:   "/greengrass/servicerole",
2464	}
2465
2466	if input == nil {
2467		input = &DisassociateServiceRoleFromAccountInput{}
2468	}
2469
2470	output = &DisassociateServiceRoleFromAccountOutput{}
2471	req = c.newRequest(op, input, output)
2472	return
2473}
2474
2475// DisassociateServiceRoleFromAccount API operation for AWS Greengrass.
2476//
2477// Disassociates the service role from your account. Without a service role,
2478// deployments will not work.
2479//
2480// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2481// with awserr.Error's Code and Message methods to get detailed information about
2482// the error.
2483//
2484// See the AWS API reference guide for AWS Greengrass's
2485// API operation DisassociateServiceRoleFromAccount for usage and error information.
2486//
2487// Returned Error Codes:
2488//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2489//   General error information.
2490//
2491// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/DisassociateServiceRoleFromAccount
2492func (c *Greengrass) DisassociateServiceRoleFromAccount(input *DisassociateServiceRoleFromAccountInput) (*DisassociateServiceRoleFromAccountOutput, error) {
2493	req, out := c.DisassociateServiceRoleFromAccountRequest(input)
2494	return out, req.Send()
2495}
2496
2497// DisassociateServiceRoleFromAccountWithContext is the same as DisassociateServiceRoleFromAccount with the addition of
2498// the ability to pass a context and additional request options.
2499//
2500// See DisassociateServiceRoleFromAccount for details on how to use this API operation.
2501//
2502// The context must be non-nil and will be used for request cancellation. If
2503// the context is nil a panic will occur. In the future the SDK may create
2504// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2505// for more information on using Contexts.
2506func (c *Greengrass) DisassociateServiceRoleFromAccountWithContext(ctx aws.Context, input *DisassociateServiceRoleFromAccountInput, opts ...request.Option) (*DisassociateServiceRoleFromAccountOutput, error) {
2507	req, out := c.DisassociateServiceRoleFromAccountRequest(input)
2508	req.SetContext(ctx)
2509	req.ApplyOptions(opts...)
2510	return out, req.Send()
2511}
2512
2513const opGetAssociatedRole = "GetAssociatedRole"
2514
2515// GetAssociatedRoleRequest generates a "aws/request.Request" representing the
2516// client's request for the GetAssociatedRole operation. The "output" return
2517// value will be populated with the request's response once the request completes
2518// successfully.
2519//
2520// Use "Send" method on the returned Request to send the API call to the service.
2521// the "output" return value is not valid until after Send returns without error.
2522//
2523// See GetAssociatedRole for more information on using the GetAssociatedRole
2524// API call, and error handling.
2525//
2526// This method is useful when you want to inject custom logic or configuration
2527// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2528//
2529//
2530//    // Example sending a request using the GetAssociatedRoleRequest method.
2531//    req, resp := client.GetAssociatedRoleRequest(params)
2532//
2533//    err := req.Send()
2534//    if err == nil { // resp is now filled
2535//        fmt.Println(resp)
2536//    }
2537//
2538// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetAssociatedRole
2539func (c *Greengrass) GetAssociatedRoleRequest(input *GetAssociatedRoleInput) (req *request.Request, output *GetAssociatedRoleOutput) {
2540	op := &request.Operation{
2541		Name:       opGetAssociatedRole,
2542		HTTPMethod: "GET",
2543		HTTPPath:   "/greengrass/groups/{GroupId}/role",
2544	}
2545
2546	if input == nil {
2547		input = &GetAssociatedRoleInput{}
2548	}
2549
2550	output = &GetAssociatedRoleOutput{}
2551	req = c.newRequest(op, input, output)
2552	return
2553}
2554
2555// GetAssociatedRole API operation for AWS Greengrass.
2556//
2557// Retrieves the role associated with a particular group.
2558//
2559// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2560// with awserr.Error's Code and Message methods to get detailed information about
2561// the error.
2562//
2563// See the AWS API reference guide for AWS Greengrass's
2564// API operation GetAssociatedRole for usage and error information.
2565//
2566// Returned Error Codes:
2567//   * ErrCodeBadRequestException "BadRequestException"
2568//   General error information.
2569//
2570//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2571//   General error information.
2572//
2573// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetAssociatedRole
2574func (c *Greengrass) GetAssociatedRole(input *GetAssociatedRoleInput) (*GetAssociatedRoleOutput, error) {
2575	req, out := c.GetAssociatedRoleRequest(input)
2576	return out, req.Send()
2577}
2578
2579// GetAssociatedRoleWithContext is the same as GetAssociatedRole with the addition of
2580// the ability to pass a context and additional request options.
2581//
2582// See GetAssociatedRole for details on how to use this API operation.
2583//
2584// The context must be non-nil and will be used for request cancellation. If
2585// the context is nil a panic will occur. In the future the SDK may create
2586// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2587// for more information on using Contexts.
2588func (c *Greengrass) GetAssociatedRoleWithContext(ctx aws.Context, input *GetAssociatedRoleInput, opts ...request.Option) (*GetAssociatedRoleOutput, error) {
2589	req, out := c.GetAssociatedRoleRequest(input)
2590	req.SetContext(ctx)
2591	req.ApplyOptions(opts...)
2592	return out, req.Send()
2593}
2594
2595const opGetBulkDeploymentStatus = "GetBulkDeploymentStatus"
2596
2597// GetBulkDeploymentStatusRequest generates a "aws/request.Request" representing the
2598// client's request for the GetBulkDeploymentStatus operation. The "output" return
2599// value will be populated with the request's response once the request completes
2600// successfully.
2601//
2602// Use "Send" method on the returned Request to send the API call to the service.
2603// the "output" return value is not valid until after Send returns without error.
2604//
2605// See GetBulkDeploymentStatus for more information on using the GetBulkDeploymentStatus
2606// API call, and error handling.
2607//
2608// This method is useful when you want to inject custom logic or configuration
2609// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2610//
2611//
2612//    // Example sending a request using the GetBulkDeploymentStatusRequest method.
2613//    req, resp := client.GetBulkDeploymentStatusRequest(params)
2614//
2615//    err := req.Send()
2616//    if err == nil { // resp is now filled
2617//        fmt.Println(resp)
2618//    }
2619//
2620// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetBulkDeploymentStatus
2621func (c *Greengrass) GetBulkDeploymentStatusRequest(input *GetBulkDeploymentStatusInput) (req *request.Request, output *GetBulkDeploymentStatusOutput) {
2622	op := &request.Operation{
2623		Name:       opGetBulkDeploymentStatus,
2624		HTTPMethod: "GET",
2625		HTTPPath:   "/greengrass/bulk/deployments/{BulkDeploymentId}/status",
2626	}
2627
2628	if input == nil {
2629		input = &GetBulkDeploymentStatusInput{}
2630	}
2631
2632	output = &GetBulkDeploymentStatusOutput{}
2633	req = c.newRequest(op, input, output)
2634	return
2635}
2636
2637// GetBulkDeploymentStatus API operation for AWS Greengrass.
2638//
2639// Returns the status of a bulk deployment.
2640//
2641// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2642// with awserr.Error's Code and Message methods to get detailed information about
2643// the error.
2644//
2645// See the AWS API reference guide for AWS Greengrass's
2646// API operation GetBulkDeploymentStatus for usage and error information.
2647//
2648// Returned Error Codes:
2649//   * ErrCodeBadRequestException "BadRequestException"
2650//   General error information.
2651//
2652// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetBulkDeploymentStatus
2653func (c *Greengrass) GetBulkDeploymentStatus(input *GetBulkDeploymentStatusInput) (*GetBulkDeploymentStatusOutput, error) {
2654	req, out := c.GetBulkDeploymentStatusRequest(input)
2655	return out, req.Send()
2656}
2657
2658// GetBulkDeploymentStatusWithContext is the same as GetBulkDeploymentStatus with the addition of
2659// the ability to pass a context and additional request options.
2660//
2661// See GetBulkDeploymentStatus for details on how to use this API operation.
2662//
2663// The context must be non-nil and will be used for request cancellation. If
2664// the context is nil a panic will occur. In the future the SDK may create
2665// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2666// for more information on using Contexts.
2667func (c *Greengrass) GetBulkDeploymentStatusWithContext(ctx aws.Context, input *GetBulkDeploymentStatusInput, opts ...request.Option) (*GetBulkDeploymentStatusOutput, error) {
2668	req, out := c.GetBulkDeploymentStatusRequest(input)
2669	req.SetContext(ctx)
2670	req.ApplyOptions(opts...)
2671	return out, req.Send()
2672}
2673
2674const opGetConnectivityInfo = "GetConnectivityInfo"
2675
2676// GetConnectivityInfoRequest generates a "aws/request.Request" representing the
2677// client's request for the GetConnectivityInfo operation. The "output" return
2678// value will be populated with the request's response once the request completes
2679// successfully.
2680//
2681// Use "Send" method on the returned Request to send the API call to the service.
2682// the "output" return value is not valid until after Send returns without error.
2683//
2684// See GetConnectivityInfo for more information on using the GetConnectivityInfo
2685// API call, and error handling.
2686//
2687// This method is useful when you want to inject custom logic or configuration
2688// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2689//
2690//
2691//    // Example sending a request using the GetConnectivityInfoRequest method.
2692//    req, resp := client.GetConnectivityInfoRequest(params)
2693//
2694//    err := req.Send()
2695//    if err == nil { // resp is now filled
2696//        fmt.Println(resp)
2697//    }
2698//
2699// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetConnectivityInfo
2700func (c *Greengrass) GetConnectivityInfoRequest(input *GetConnectivityInfoInput) (req *request.Request, output *GetConnectivityInfoOutput) {
2701	op := &request.Operation{
2702		Name:       opGetConnectivityInfo,
2703		HTTPMethod: "GET",
2704		HTTPPath:   "/greengrass/things/{ThingName}/connectivityInfo",
2705	}
2706
2707	if input == nil {
2708		input = &GetConnectivityInfoInput{}
2709	}
2710
2711	output = &GetConnectivityInfoOutput{}
2712	req = c.newRequest(op, input, output)
2713	return
2714}
2715
2716// GetConnectivityInfo API operation for AWS Greengrass.
2717//
2718// Retrieves the connectivity information for a core.
2719//
2720// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2721// with awserr.Error's Code and Message methods to get detailed information about
2722// the error.
2723//
2724// See the AWS API reference guide for AWS Greengrass's
2725// API operation GetConnectivityInfo for usage and error information.
2726//
2727// Returned Error Codes:
2728//   * ErrCodeBadRequestException "BadRequestException"
2729//   General error information.
2730//
2731//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2732//   General error information.
2733//
2734// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetConnectivityInfo
2735func (c *Greengrass) GetConnectivityInfo(input *GetConnectivityInfoInput) (*GetConnectivityInfoOutput, error) {
2736	req, out := c.GetConnectivityInfoRequest(input)
2737	return out, req.Send()
2738}
2739
2740// GetConnectivityInfoWithContext is the same as GetConnectivityInfo with the addition of
2741// the ability to pass a context and additional request options.
2742//
2743// See GetConnectivityInfo for details on how to use this API operation.
2744//
2745// The context must be non-nil and will be used for request cancellation. If
2746// the context is nil a panic will occur. In the future the SDK may create
2747// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2748// for more information on using Contexts.
2749func (c *Greengrass) GetConnectivityInfoWithContext(ctx aws.Context, input *GetConnectivityInfoInput, opts ...request.Option) (*GetConnectivityInfoOutput, error) {
2750	req, out := c.GetConnectivityInfoRequest(input)
2751	req.SetContext(ctx)
2752	req.ApplyOptions(opts...)
2753	return out, req.Send()
2754}
2755
2756const opGetConnectorDefinition = "GetConnectorDefinition"
2757
2758// GetConnectorDefinitionRequest generates a "aws/request.Request" representing the
2759// client's request for the GetConnectorDefinition operation. The "output" return
2760// value will be populated with the request's response once the request completes
2761// successfully.
2762//
2763// Use "Send" method on the returned Request to send the API call to the service.
2764// the "output" return value is not valid until after Send returns without error.
2765//
2766// See GetConnectorDefinition for more information on using the GetConnectorDefinition
2767// API call, and error handling.
2768//
2769// This method is useful when you want to inject custom logic or configuration
2770// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2771//
2772//
2773//    // Example sending a request using the GetConnectorDefinitionRequest method.
2774//    req, resp := client.GetConnectorDefinitionRequest(params)
2775//
2776//    err := req.Send()
2777//    if err == nil { // resp is now filled
2778//        fmt.Println(resp)
2779//    }
2780//
2781// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetConnectorDefinition
2782func (c *Greengrass) GetConnectorDefinitionRequest(input *GetConnectorDefinitionInput) (req *request.Request, output *GetConnectorDefinitionOutput) {
2783	op := &request.Operation{
2784		Name:       opGetConnectorDefinition,
2785		HTTPMethod: "GET",
2786		HTTPPath:   "/greengrass/definition/connectors/{ConnectorDefinitionId}",
2787	}
2788
2789	if input == nil {
2790		input = &GetConnectorDefinitionInput{}
2791	}
2792
2793	output = &GetConnectorDefinitionOutput{}
2794	req = c.newRequest(op, input, output)
2795	return
2796}
2797
2798// GetConnectorDefinition API operation for AWS Greengrass.
2799//
2800// Retrieves information about a connector definition.
2801//
2802// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2803// with awserr.Error's Code and Message methods to get detailed information about
2804// the error.
2805//
2806// See the AWS API reference guide for AWS Greengrass's
2807// API operation GetConnectorDefinition for usage and error information.
2808//
2809// Returned Error Codes:
2810//   * ErrCodeBadRequestException "BadRequestException"
2811//   General error information.
2812//
2813// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetConnectorDefinition
2814func (c *Greengrass) GetConnectorDefinition(input *GetConnectorDefinitionInput) (*GetConnectorDefinitionOutput, error) {
2815	req, out := c.GetConnectorDefinitionRequest(input)
2816	return out, req.Send()
2817}
2818
2819// GetConnectorDefinitionWithContext is the same as GetConnectorDefinition with the addition of
2820// the ability to pass a context and additional request options.
2821//
2822// See GetConnectorDefinition for details on how to use this API operation.
2823//
2824// The context must be non-nil and will be used for request cancellation. If
2825// the context is nil a panic will occur. In the future the SDK may create
2826// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2827// for more information on using Contexts.
2828func (c *Greengrass) GetConnectorDefinitionWithContext(ctx aws.Context, input *GetConnectorDefinitionInput, opts ...request.Option) (*GetConnectorDefinitionOutput, error) {
2829	req, out := c.GetConnectorDefinitionRequest(input)
2830	req.SetContext(ctx)
2831	req.ApplyOptions(opts...)
2832	return out, req.Send()
2833}
2834
2835const opGetConnectorDefinitionVersion = "GetConnectorDefinitionVersion"
2836
2837// GetConnectorDefinitionVersionRequest generates a "aws/request.Request" representing the
2838// client's request for the GetConnectorDefinitionVersion operation. The "output" return
2839// value will be populated with the request's response once the request completes
2840// successfully.
2841//
2842// Use "Send" method on the returned Request to send the API call to the service.
2843// the "output" return value is not valid until after Send returns without error.
2844//
2845// See GetConnectorDefinitionVersion for more information on using the GetConnectorDefinitionVersion
2846// API call, and error handling.
2847//
2848// This method is useful when you want to inject custom logic or configuration
2849// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2850//
2851//
2852//    // Example sending a request using the GetConnectorDefinitionVersionRequest method.
2853//    req, resp := client.GetConnectorDefinitionVersionRequest(params)
2854//
2855//    err := req.Send()
2856//    if err == nil { // resp is now filled
2857//        fmt.Println(resp)
2858//    }
2859//
2860// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetConnectorDefinitionVersion
2861func (c *Greengrass) GetConnectorDefinitionVersionRequest(input *GetConnectorDefinitionVersionInput) (req *request.Request, output *GetConnectorDefinitionVersionOutput) {
2862	op := &request.Operation{
2863		Name:       opGetConnectorDefinitionVersion,
2864		HTTPMethod: "GET",
2865		HTTPPath:   "/greengrass/definition/connectors/{ConnectorDefinitionId}/versions/{ConnectorDefinitionVersionId}",
2866	}
2867
2868	if input == nil {
2869		input = &GetConnectorDefinitionVersionInput{}
2870	}
2871
2872	output = &GetConnectorDefinitionVersionOutput{}
2873	req = c.newRequest(op, input, output)
2874	return
2875}
2876
2877// GetConnectorDefinitionVersion API operation for AWS Greengrass.
2878//
2879// Retrieves information about a connector definition version, including the
2880// connectors that the version contains. Connectors are prebuilt modules that
2881// interact with local infrastructure, device protocols, AWS, and other cloud
2882// services.
2883//
2884// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2885// with awserr.Error's Code and Message methods to get detailed information about
2886// the error.
2887//
2888// See the AWS API reference guide for AWS Greengrass's
2889// API operation GetConnectorDefinitionVersion for usage and error information.
2890//
2891// Returned Error Codes:
2892//   * ErrCodeBadRequestException "BadRequestException"
2893//   General error information.
2894//
2895// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetConnectorDefinitionVersion
2896func (c *Greengrass) GetConnectorDefinitionVersion(input *GetConnectorDefinitionVersionInput) (*GetConnectorDefinitionVersionOutput, error) {
2897	req, out := c.GetConnectorDefinitionVersionRequest(input)
2898	return out, req.Send()
2899}
2900
2901// GetConnectorDefinitionVersionWithContext is the same as GetConnectorDefinitionVersion with the addition of
2902// the ability to pass a context and additional request options.
2903//
2904// See GetConnectorDefinitionVersion for details on how to use this API operation.
2905//
2906// The context must be non-nil and will be used for request cancellation. If
2907// the context is nil a panic will occur. In the future the SDK may create
2908// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2909// for more information on using Contexts.
2910func (c *Greengrass) GetConnectorDefinitionVersionWithContext(ctx aws.Context, input *GetConnectorDefinitionVersionInput, opts ...request.Option) (*GetConnectorDefinitionVersionOutput, error) {
2911	req, out := c.GetConnectorDefinitionVersionRequest(input)
2912	req.SetContext(ctx)
2913	req.ApplyOptions(opts...)
2914	return out, req.Send()
2915}
2916
2917const opGetCoreDefinition = "GetCoreDefinition"
2918
2919// GetCoreDefinitionRequest generates a "aws/request.Request" representing the
2920// client's request for the GetCoreDefinition operation. The "output" return
2921// value will be populated with the request's response once the request completes
2922// successfully.
2923//
2924// Use "Send" method on the returned Request to send the API call to the service.
2925// the "output" return value is not valid until after Send returns without error.
2926//
2927// See GetCoreDefinition for more information on using the GetCoreDefinition
2928// API call, and error handling.
2929//
2930// This method is useful when you want to inject custom logic or configuration
2931// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2932//
2933//
2934//    // Example sending a request using the GetCoreDefinitionRequest method.
2935//    req, resp := client.GetCoreDefinitionRequest(params)
2936//
2937//    err := req.Send()
2938//    if err == nil { // resp is now filled
2939//        fmt.Println(resp)
2940//    }
2941//
2942// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetCoreDefinition
2943func (c *Greengrass) GetCoreDefinitionRequest(input *GetCoreDefinitionInput) (req *request.Request, output *GetCoreDefinitionOutput) {
2944	op := &request.Operation{
2945		Name:       opGetCoreDefinition,
2946		HTTPMethod: "GET",
2947		HTTPPath:   "/greengrass/definition/cores/{CoreDefinitionId}",
2948	}
2949
2950	if input == nil {
2951		input = &GetCoreDefinitionInput{}
2952	}
2953
2954	output = &GetCoreDefinitionOutput{}
2955	req = c.newRequest(op, input, output)
2956	return
2957}
2958
2959// GetCoreDefinition API operation for AWS Greengrass.
2960//
2961// Retrieves information about a core definition version.
2962//
2963// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2964// with awserr.Error's Code and Message methods to get detailed information about
2965// the error.
2966//
2967// See the AWS API reference guide for AWS Greengrass's
2968// API operation GetCoreDefinition for usage and error information.
2969//
2970// Returned Error Codes:
2971//   * ErrCodeBadRequestException "BadRequestException"
2972//   General error information.
2973//
2974// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetCoreDefinition
2975func (c *Greengrass) GetCoreDefinition(input *GetCoreDefinitionInput) (*GetCoreDefinitionOutput, error) {
2976	req, out := c.GetCoreDefinitionRequest(input)
2977	return out, req.Send()
2978}
2979
2980// GetCoreDefinitionWithContext is the same as GetCoreDefinition with the addition of
2981// the ability to pass a context and additional request options.
2982//
2983// See GetCoreDefinition for details on how to use this API operation.
2984//
2985// The context must be non-nil and will be used for request cancellation. If
2986// the context is nil a panic will occur. In the future the SDK may create
2987// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2988// for more information on using Contexts.
2989func (c *Greengrass) GetCoreDefinitionWithContext(ctx aws.Context, input *GetCoreDefinitionInput, opts ...request.Option) (*GetCoreDefinitionOutput, error) {
2990	req, out := c.GetCoreDefinitionRequest(input)
2991	req.SetContext(ctx)
2992	req.ApplyOptions(opts...)
2993	return out, req.Send()
2994}
2995
2996const opGetCoreDefinitionVersion = "GetCoreDefinitionVersion"
2997
2998// GetCoreDefinitionVersionRequest generates a "aws/request.Request" representing the
2999// client's request for the GetCoreDefinitionVersion operation. The "output" return
3000// value will be populated with the request's response once the request completes
3001// successfully.
3002//
3003// Use "Send" method on the returned Request to send the API call to the service.
3004// the "output" return value is not valid until after Send returns without error.
3005//
3006// See GetCoreDefinitionVersion for more information on using the GetCoreDefinitionVersion
3007// API call, and error handling.
3008//
3009// This method is useful when you want to inject custom logic or configuration
3010// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3011//
3012//
3013//    // Example sending a request using the GetCoreDefinitionVersionRequest method.
3014//    req, resp := client.GetCoreDefinitionVersionRequest(params)
3015//
3016//    err := req.Send()
3017//    if err == nil { // resp is now filled
3018//        fmt.Println(resp)
3019//    }
3020//
3021// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetCoreDefinitionVersion
3022func (c *Greengrass) GetCoreDefinitionVersionRequest(input *GetCoreDefinitionVersionInput) (req *request.Request, output *GetCoreDefinitionVersionOutput) {
3023	op := &request.Operation{
3024		Name:       opGetCoreDefinitionVersion,
3025		HTTPMethod: "GET",
3026		HTTPPath:   "/greengrass/definition/cores/{CoreDefinitionId}/versions/{CoreDefinitionVersionId}",
3027	}
3028
3029	if input == nil {
3030		input = &GetCoreDefinitionVersionInput{}
3031	}
3032
3033	output = &GetCoreDefinitionVersionOutput{}
3034	req = c.newRequest(op, input, output)
3035	return
3036}
3037
3038// GetCoreDefinitionVersion API operation for AWS Greengrass.
3039//
3040// Retrieves information about a core definition version.
3041//
3042// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3043// with awserr.Error's Code and Message methods to get detailed information about
3044// the error.
3045//
3046// See the AWS API reference guide for AWS Greengrass's
3047// API operation GetCoreDefinitionVersion for usage and error information.
3048//
3049// Returned Error Codes:
3050//   * ErrCodeBadRequestException "BadRequestException"
3051//   General error information.
3052//
3053// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetCoreDefinitionVersion
3054func (c *Greengrass) GetCoreDefinitionVersion(input *GetCoreDefinitionVersionInput) (*GetCoreDefinitionVersionOutput, error) {
3055	req, out := c.GetCoreDefinitionVersionRequest(input)
3056	return out, req.Send()
3057}
3058
3059// GetCoreDefinitionVersionWithContext is the same as GetCoreDefinitionVersion with the addition of
3060// the ability to pass a context and additional request options.
3061//
3062// See GetCoreDefinitionVersion for details on how to use this API operation.
3063//
3064// The context must be non-nil and will be used for request cancellation. If
3065// the context is nil a panic will occur. In the future the SDK may create
3066// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3067// for more information on using Contexts.
3068func (c *Greengrass) GetCoreDefinitionVersionWithContext(ctx aws.Context, input *GetCoreDefinitionVersionInput, opts ...request.Option) (*GetCoreDefinitionVersionOutput, error) {
3069	req, out := c.GetCoreDefinitionVersionRequest(input)
3070	req.SetContext(ctx)
3071	req.ApplyOptions(opts...)
3072	return out, req.Send()
3073}
3074
3075const opGetDeploymentStatus = "GetDeploymentStatus"
3076
3077// GetDeploymentStatusRequest generates a "aws/request.Request" representing the
3078// client's request for the GetDeploymentStatus operation. The "output" return
3079// value will be populated with the request's response once the request completes
3080// successfully.
3081//
3082// Use "Send" method on the returned Request to send the API call to the service.
3083// the "output" return value is not valid until after Send returns without error.
3084//
3085// See GetDeploymentStatus for more information on using the GetDeploymentStatus
3086// API call, and error handling.
3087//
3088// This method is useful when you want to inject custom logic or configuration
3089// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3090//
3091//
3092//    // Example sending a request using the GetDeploymentStatusRequest method.
3093//    req, resp := client.GetDeploymentStatusRequest(params)
3094//
3095//    err := req.Send()
3096//    if err == nil { // resp is now filled
3097//        fmt.Println(resp)
3098//    }
3099//
3100// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetDeploymentStatus
3101func (c *Greengrass) GetDeploymentStatusRequest(input *GetDeploymentStatusInput) (req *request.Request, output *GetDeploymentStatusOutput) {
3102	op := &request.Operation{
3103		Name:       opGetDeploymentStatus,
3104		HTTPMethod: "GET",
3105		HTTPPath:   "/greengrass/groups/{GroupId}/deployments/{DeploymentId}/status",
3106	}
3107
3108	if input == nil {
3109		input = &GetDeploymentStatusInput{}
3110	}
3111
3112	output = &GetDeploymentStatusOutput{}
3113	req = c.newRequest(op, input, output)
3114	return
3115}
3116
3117// GetDeploymentStatus API operation for AWS Greengrass.
3118//
3119// Returns the status of a deployment.
3120//
3121// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3122// with awserr.Error's Code and Message methods to get detailed information about
3123// the error.
3124//
3125// See the AWS API reference guide for AWS Greengrass's
3126// API operation GetDeploymentStatus for usage and error information.
3127//
3128// Returned Error Codes:
3129//   * ErrCodeBadRequestException "BadRequestException"
3130//   General error information.
3131//
3132// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetDeploymentStatus
3133func (c *Greengrass) GetDeploymentStatus(input *GetDeploymentStatusInput) (*GetDeploymentStatusOutput, error) {
3134	req, out := c.GetDeploymentStatusRequest(input)
3135	return out, req.Send()
3136}
3137
3138// GetDeploymentStatusWithContext is the same as GetDeploymentStatus with the addition of
3139// the ability to pass a context and additional request options.
3140//
3141// See GetDeploymentStatus for details on how to use this API operation.
3142//
3143// The context must be non-nil and will be used for request cancellation. If
3144// the context is nil a panic will occur. In the future the SDK may create
3145// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3146// for more information on using Contexts.
3147func (c *Greengrass) GetDeploymentStatusWithContext(ctx aws.Context, input *GetDeploymentStatusInput, opts ...request.Option) (*GetDeploymentStatusOutput, error) {
3148	req, out := c.GetDeploymentStatusRequest(input)
3149	req.SetContext(ctx)
3150	req.ApplyOptions(opts...)
3151	return out, req.Send()
3152}
3153
3154const opGetDeviceDefinition = "GetDeviceDefinition"
3155
3156// GetDeviceDefinitionRequest generates a "aws/request.Request" representing the
3157// client's request for the GetDeviceDefinition operation. The "output" return
3158// value will be populated with the request's response once the request completes
3159// successfully.
3160//
3161// Use "Send" method on the returned Request to send the API call to the service.
3162// the "output" return value is not valid until after Send returns without error.
3163//
3164// See GetDeviceDefinition for more information on using the GetDeviceDefinition
3165// API call, and error handling.
3166//
3167// This method is useful when you want to inject custom logic or configuration
3168// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3169//
3170//
3171//    // Example sending a request using the GetDeviceDefinitionRequest method.
3172//    req, resp := client.GetDeviceDefinitionRequest(params)
3173//
3174//    err := req.Send()
3175//    if err == nil { // resp is now filled
3176//        fmt.Println(resp)
3177//    }
3178//
3179// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetDeviceDefinition
3180func (c *Greengrass) GetDeviceDefinitionRequest(input *GetDeviceDefinitionInput) (req *request.Request, output *GetDeviceDefinitionOutput) {
3181	op := &request.Operation{
3182		Name:       opGetDeviceDefinition,
3183		HTTPMethod: "GET",
3184		HTTPPath:   "/greengrass/definition/devices/{DeviceDefinitionId}",
3185	}
3186
3187	if input == nil {
3188		input = &GetDeviceDefinitionInput{}
3189	}
3190
3191	output = &GetDeviceDefinitionOutput{}
3192	req = c.newRequest(op, input, output)
3193	return
3194}
3195
3196// GetDeviceDefinition API operation for AWS Greengrass.
3197//
3198// Retrieves information about a device definition.
3199//
3200// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3201// with awserr.Error's Code and Message methods to get detailed information about
3202// the error.
3203//
3204// See the AWS API reference guide for AWS Greengrass's
3205// API operation GetDeviceDefinition for usage and error information.
3206//
3207// Returned Error Codes:
3208//   * ErrCodeBadRequestException "BadRequestException"
3209//   General error information.
3210//
3211// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetDeviceDefinition
3212func (c *Greengrass) GetDeviceDefinition(input *GetDeviceDefinitionInput) (*GetDeviceDefinitionOutput, error) {
3213	req, out := c.GetDeviceDefinitionRequest(input)
3214	return out, req.Send()
3215}
3216
3217// GetDeviceDefinitionWithContext is the same as GetDeviceDefinition with the addition of
3218// the ability to pass a context and additional request options.
3219//
3220// See GetDeviceDefinition for details on how to use this API operation.
3221//
3222// The context must be non-nil and will be used for request cancellation. If
3223// the context is nil a panic will occur. In the future the SDK may create
3224// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3225// for more information on using Contexts.
3226func (c *Greengrass) GetDeviceDefinitionWithContext(ctx aws.Context, input *GetDeviceDefinitionInput, opts ...request.Option) (*GetDeviceDefinitionOutput, error) {
3227	req, out := c.GetDeviceDefinitionRequest(input)
3228	req.SetContext(ctx)
3229	req.ApplyOptions(opts...)
3230	return out, req.Send()
3231}
3232
3233const opGetDeviceDefinitionVersion = "GetDeviceDefinitionVersion"
3234
3235// GetDeviceDefinitionVersionRequest generates a "aws/request.Request" representing the
3236// client's request for the GetDeviceDefinitionVersion operation. The "output" return
3237// value will be populated with the request's response once the request completes
3238// successfully.
3239//
3240// Use "Send" method on the returned Request to send the API call to the service.
3241// the "output" return value is not valid until after Send returns without error.
3242//
3243// See GetDeviceDefinitionVersion for more information on using the GetDeviceDefinitionVersion
3244// API call, and error handling.
3245//
3246// This method is useful when you want to inject custom logic or configuration
3247// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3248//
3249//
3250//    // Example sending a request using the GetDeviceDefinitionVersionRequest method.
3251//    req, resp := client.GetDeviceDefinitionVersionRequest(params)
3252//
3253//    err := req.Send()
3254//    if err == nil { // resp is now filled
3255//        fmt.Println(resp)
3256//    }
3257//
3258// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetDeviceDefinitionVersion
3259func (c *Greengrass) GetDeviceDefinitionVersionRequest(input *GetDeviceDefinitionVersionInput) (req *request.Request, output *GetDeviceDefinitionVersionOutput) {
3260	op := &request.Operation{
3261		Name:       opGetDeviceDefinitionVersion,
3262		HTTPMethod: "GET",
3263		HTTPPath:   "/greengrass/definition/devices/{DeviceDefinitionId}/versions/{DeviceDefinitionVersionId}",
3264	}
3265
3266	if input == nil {
3267		input = &GetDeviceDefinitionVersionInput{}
3268	}
3269
3270	output = &GetDeviceDefinitionVersionOutput{}
3271	req = c.newRequest(op, input, output)
3272	return
3273}
3274
3275// GetDeviceDefinitionVersion API operation for AWS Greengrass.
3276//
3277// Retrieves information about a device definition version.
3278//
3279// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3280// with awserr.Error's Code and Message methods to get detailed information about
3281// the error.
3282//
3283// See the AWS API reference guide for AWS Greengrass's
3284// API operation GetDeviceDefinitionVersion for usage and error information.
3285//
3286// Returned Error Codes:
3287//   * ErrCodeBadRequestException "BadRequestException"
3288//   General error information.
3289//
3290// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetDeviceDefinitionVersion
3291func (c *Greengrass) GetDeviceDefinitionVersion(input *GetDeviceDefinitionVersionInput) (*GetDeviceDefinitionVersionOutput, error) {
3292	req, out := c.GetDeviceDefinitionVersionRequest(input)
3293	return out, req.Send()
3294}
3295
3296// GetDeviceDefinitionVersionWithContext is the same as GetDeviceDefinitionVersion with the addition of
3297// the ability to pass a context and additional request options.
3298//
3299// See GetDeviceDefinitionVersion for details on how to use this API operation.
3300//
3301// The context must be non-nil and will be used for request cancellation. If
3302// the context is nil a panic will occur. In the future the SDK may create
3303// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3304// for more information on using Contexts.
3305func (c *Greengrass) GetDeviceDefinitionVersionWithContext(ctx aws.Context, input *GetDeviceDefinitionVersionInput, opts ...request.Option) (*GetDeviceDefinitionVersionOutput, error) {
3306	req, out := c.GetDeviceDefinitionVersionRequest(input)
3307	req.SetContext(ctx)
3308	req.ApplyOptions(opts...)
3309	return out, req.Send()
3310}
3311
3312const opGetFunctionDefinition = "GetFunctionDefinition"
3313
3314// GetFunctionDefinitionRequest generates a "aws/request.Request" representing the
3315// client's request for the GetFunctionDefinition operation. The "output" return
3316// value will be populated with the request's response once the request completes
3317// successfully.
3318//
3319// Use "Send" method on the returned Request to send the API call to the service.
3320// the "output" return value is not valid until after Send returns without error.
3321//
3322// See GetFunctionDefinition for more information on using the GetFunctionDefinition
3323// API call, and error handling.
3324//
3325// This method is useful when you want to inject custom logic or configuration
3326// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3327//
3328//
3329//    // Example sending a request using the GetFunctionDefinitionRequest method.
3330//    req, resp := client.GetFunctionDefinitionRequest(params)
3331//
3332//    err := req.Send()
3333//    if err == nil { // resp is now filled
3334//        fmt.Println(resp)
3335//    }
3336//
3337// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetFunctionDefinition
3338func (c *Greengrass) GetFunctionDefinitionRequest(input *GetFunctionDefinitionInput) (req *request.Request, output *GetFunctionDefinitionOutput) {
3339	op := &request.Operation{
3340		Name:       opGetFunctionDefinition,
3341		HTTPMethod: "GET",
3342		HTTPPath:   "/greengrass/definition/functions/{FunctionDefinitionId}",
3343	}
3344
3345	if input == nil {
3346		input = &GetFunctionDefinitionInput{}
3347	}
3348
3349	output = &GetFunctionDefinitionOutput{}
3350	req = c.newRequest(op, input, output)
3351	return
3352}
3353
3354// GetFunctionDefinition API operation for AWS Greengrass.
3355//
3356// Retrieves information about a Lambda function definition, including its creation
3357// time and latest version.
3358//
3359// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3360// with awserr.Error's Code and Message methods to get detailed information about
3361// the error.
3362//
3363// See the AWS API reference guide for AWS Greengrass's
3364// API operation GetFunctionDefinition for usage and error information.
3365//
3366// Returned Error Codes:
3367//   * ErrCodeBadRequestException "BadRequestException"
3368//   General error information.
3369//
3370// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetFunctionDefinition
3371func (c *Greengrass) GetFunctionDefinition(input *GetFunctionDefinitionInput) (*GetFunctionDefinitionOutput, error) {
3372	req, out := c.GetFunctionDefinitionRequest(input)
3373	return out, req.Send()
3374}
3375
3376// GetFunctionDefinitionWithContext is the same as GetFunctionDefinition with the addition of
3377// the ability to pass a context and additional request options.
3378//
3379// See GetFunctionDefinition for details on how to use this API operation.
3380//
3381// The context must be non-nil and will be used for request cancellation. If
3382// the context is nil a panic will occur. In the future the SDK may create
3383// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3384// for more information on using Contexts.
3385func (c *Greengrass) GetFunctionDefinitionWithContext(ctx aws.Context, input *GetFunctionDefinitionInput, opts ...request.Option) (*GetFunctionDefinitionOutput, error) {
3386	req, out := c.GetFunctionDefinitionRequest(input)
3387	req.SetContext(ctx)
3388	req.ApplyOptions(opts...)
3389	return out, req.Send()
3390}
3391
3392const opGetFunctionDefinitionVersion = "GetFunctionDefinitionVersion"
3393
3394// GetFunctionDefinitionVersionRequest generates a "aws/request.Request" representing the
3395// client's request for the GetFunctionDefinitionVersion operation. The "output" return
3396// value will be populated with the request's response once the request completes
3397// successfully.
3398//
3399// Use "Send" method on the returned Request to send the API call to the service.
3400// the "output" return value is not valid until after Send returns without error.
3401//
3402// See GetFunctionDefinitionVersion for more information on using the GetFunctionDefinitionVersion
3403// API call, and error handling.
3404//
3405// This method is useful when you want to inject custom logic or configuration
3406// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3407//
3408//
3409//    // Example sending a request using the GetFunctionDefinitionVersionRequest method.
3410//    req, resp := client.GetFunctionDefinitionVersionRequest(params)
3411//
3412//    err := req.Send()
3413//    if err == nil { // resp is now filled
3414//        fmt.Println(resp)
3415//    }
3416//
3417// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetFunctionDefinitionVersion
3418func (c *Greengrass) GetFunctionDefinitionVersionRequest(input *GetFunctionDefinitionVersionInput) (req *request.Request, output *GetFunctionDefinitionVersionOutput) {
3419	op := &request.Operation{
3420		Name:       opGetFunctionDefinitionVersion,
3421		HTTPMethod: "GET",
3422		HTTPPath:   "/greengrass/definition/functions/{FunctionDefinitionId}/versions/{FunctionDefinitionVersionId}",
3423	}
3424
3425	if input == nil {
3426		input = &GetFunctionDefinitionVersionInput{}
3427	}
3428
3429	output = &GetFunctionDefinitionVersionOutput{}
3430	req = c.newRequest(op, input, output)
3431	return
3432}
3433
3434// GetFunctionDefinitionVersion API operation for AWS Greengrass.
3435//
3436// Retrieves information about a Lambda function definition version, including
3437// which Lambda functions are included in the version and their configurations.
3438//
3439// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3440// with awserr.Error's Code and Message methods to get detailed information about
3441// the error.
3442//
3443// See the AWS API reference guide for AWS Greengrass's
3444// API operation GetFunctionDefinitionVersion for usage and error information.
3445//
3446// Returned Error Codes:
3447//   * ErrCodeBadRequestException "BadRequestException"
3448//   General error information.
3449//
3450// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetFunctionDefinitionVersion
3451func (c *Greengrass) GetFunctionDefinitionVersion(input *GetFunctionDefinitionVersionInput) (*GetFunctionDefinitionVersionOutput, error) {
3452	req, out := c.GetFunctionDefinitionVersionRequest(input)
3453	return out, req.Send()
3454}
3455
3456// GetFunctionDefinitionVersionWithContext is the same as GetFunctionDefinitionVersion with the addition of
3457// the ability to pass a context and additional request options.
3458//
3459// See GetFunctionDefinitionVersion for details on how to use this API operation.
3460//
3461// The context must be non-nil and will be used for request cancellation. If
3462// the context is nil a panic will occur. In the future the SDK may create
3463// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3464// for more information on using Contexts.
3465func (c *Greengrass) GetFunctionDefinitionVersionWithContext(ctx aws.Context, input *GetFunctionDefinitionVersionInput, opts ...request.Option) (*GetFunctionDefinitionVersionOutput, error) {
3466	req, out := c.GetFunctionDefinitionVersionRequest(input)
3467	req.SetContext(ctx)
3468	req.ApplyOptions(opts...)
3469	return out, req.Send()
3470}
3471
3472const opGetGroup = "GetGroup"
3473
3474// GetGroupRequest generates a "aws/request.Request" representing the
3475// client's request for the GetGroup operation. The "output" return
3476// value will be populated with the request's response once the request completes
3477// successfully.
3478//
3479// Use "Send" method on the returned Request to send the API call to the service.
3480// the "output" return value is not valid until after Send returns without error.
3481//
3482// See GetGroup for more information on using the GetGroup
3483// API call, and error handling.
3484//
3485// This method is useful when you want to inject custom logic or configuration
3486// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3487//
3488//
3489//    // Example sending a request using the GetGroupRequest method.
3490//    req, resp := client.GetGroupRequest(params)
3491//
3492//    err := req.Send()
3493//    if err == nil { // resp is now filled
3494//        fmt.Println(resp)
3495//    }
3496//
3497// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetGroup
3498func (c *Greengrass) GetGroupRequest(input *GetGroupInput) (req *request.Request, output *GetGroupOutput) {
3499	op := &request.Operation{
3500		Name:       opGetGroup,
3501		HTTPMethod: "GET",
3502		HTTPPath:   "/greengrass/groups/{GroupId}",
3503	}
3504
3505	if input == nil {
3506		input = &GetGroupInput{}
3507	}
3508
3509	output = &GetGroupOutput{}
3510	req = c.newRequest(op, input, output)
3511	return
3512}
3513
3514// GetGroup API operation for AWS Greengrass.
3515//
3516// Retrieves information about a group.
3517//
3518// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3519// with awserr.Error's Code and Message methods to get detailed information about
3520// the error.
3521//
3522// See the AWS API reference guide for AWS Greengrass's
3523// API operation GetGroup for usage and error information.
3524//
3525// Returned Error Codes:
3526//   * ErrCodeBadRequestException "BadRequestException"
3527//   General error information.
3528//
3529// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetGroup
3530func (c *Greengrass) GetGroup(input *GetGroupInput) (*GetGroupOutput, error) {
3531	req, out := c.GetGroupRequest(input)
3532	return out, req.Send()
3533}
3534
3535// GetGroupWithContext is the same as GetGroup with the addition of
3536// the ability to pass a context and additional request options.
3537//
3538// See GetGroup for details on how to use this API operation.
3539//
3540// The context must be non-nil and will be used for request cancellation. If
3541// the context is nil a panic will occur. In the future the SDK may create
3542// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3543// for more information on using Contexts.
3544func (c *Greengrass) GetGroupWithContext(ctx aws.Context, input *GetGroupInput, opts ...request.Option) (*GetGroupOutput, error) {
3545	req, out := c.GetGroupRequest(input)
3546	req.SetContext(ctx)
3547	req.ApplyOptions(opts...)
3548	return out, req.Send()
3549}
3550
3551const opGetGroupCertificateAuthority = "GetGroupCertificateAuthority"
3552
3553// GetGroupCertificateAuthorityRequest generates a "aws/request.Request" representing the
3554// client's request for the GetGroupCertificateAuthority operation. The "output" return
3555// value will be populated with the request's response once the request completes
3556// successfully.
3557//
3558// Use "Send" method on the returned Request to send the API call to the service.
3559// the "output" return value is not valid until after Send returns without error.
3560//
3561// See GetGroupCertificateAuthority for more information on using the GetGroupCertificateAuthority
3562// API call, and error handling.
3563//
3564// This method is useful when you want to inject custom logic or configuration
3565// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3566//
3567//
3568//    // Example sending a request using the GetGroupCertificateAuthorityRequest method.
3569//    req, resp := client.GetGroupCertificateAuthorityRequest(params)
3570//
3571//    err := req.Send()
3572//    if err == nil { // resp is now filled
3573//        fmt.Println(resp)
3574//    }
3575//
3576// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetGroupCertificateAuthority
3577func (c *Greengrass) GetGroupCertificateAuthorityRequest(input *GetGroupCertificateAuthorityInput) (req *request.Request, output *GetGroupCertificateAuthorityOutput) {
3578	op := &request.Operation{
3579		Name:       opGetGroupCertificateAuthority,
3580		HTTPMethod: "GET",
3581		HTTPPath:   "/greengrass/groups/{GroupId}/certificateauthorities/{CertificateAuthorityId}",
3582	}
3583
3584	if input == nil {
3585		input = &GetGroupCertificateAuthorityInput{}
3586	}
3587
3588	output = &GetGroupCertificateAuthorityOutput{}
3589	req = c.newRequest(op, input, output)
3590	return
3591}
3592
3593// GetGroupCertificateAuthority API operation for AWS Greengrass.
3594//
3595// Retreives the CA associated with a group. Returns the public key of the CA.
3596//
3597// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3598// with awserr.Error's Code and Message methods to get detailed information about
3599// the error.
3600//
3601// See the AWS API reference guide for AWS Greengrass's
3602// API operation GetGroupCertificateAuthority for usage and error information.
3603//
3604// Returned Error Codes:
3605//   * ErrCodeBadRequestException "BadRequestException"
3606//   General error information.
3607//
3608//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
3609//   General error information.
3610//
3611// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetGroupCertificateAuthority
3612func (c *Greengrass) GetGroupCertificateAuthority(input *GetGroupCertificateAuthorityInput) (*GetGroupCertificateAuthorityOutput, error) {
3613	req, out := c.GetGroupCertificateAuthorityRequest(input)
3614	return out, req.Send()
3615}
3616
3617// GetGroupCertificateAuthorityWithContext is the same as GetGroupCertificateAuthority with the addition of
3618// the ability to pass a context and additional request options.
3619//
3620// See GetGroupCertificateAuthority for details on how to use this API operation.
3621//
3622// The context must be non-nil and will be used for request cancellation. If
3623// the context is nil a panic will occur. In the future the SDK may create
3624// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3625// for more information on using Contexts.
3626func (c *Greengrass) GetGroupCertificateAuthorityWithContext(ctx aws.Context, input *GetGroupCertificateAuthorityInput, opts ...request.Option) (*GetGroupCertificateAuthorityOutput, error) {
3627	req, out := c.GetGroupCertificateAuthorityRequest(input)
3628	req.SetContext(ctx)
3629	req.ApplyOptions(opts...)
3630	return out, req.Send()
3631}
3632
3633const opGetGroupCertificateConfiguration = "GetGroupCertificateConfiguration"
3634
3635// GetGroupCertificateConfigurationRequest generates a "aws/request.Request" representing the
3636// client's request for the GetGroupCertificateConfiguration operation. The "output" return
3637// value will be populated with the request's response once the request completes
3638// successfully.
3639//
3640// Use "Send" method on the returned Request to send the API call to the service.
3641// the "output" return value is not valid until after Send returns without error.
3642//
3643// See GetGroupCertificateConfiguration for more information on using the GetGroupCertificateConfiguration
3644// API call, and error handling.
3645//
3646// This method is useful when you want to inject custom logic or configuration
3647// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3648//
3649//
3650//    // Example sending a request using the GetGroupCertificateConfigurationRequest method.
3651//    req, resp := client.GetGroupCertificateConfigurationRequest(params)
3652//
3653//    err := req.Send()
3654//    if err == nil { // resp is now filled
3655//        fmt.Println(resp)
3656//    }
3657//
3658// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetGroupCertificateConfiguration
3659func (c *Greengrass) GetGroupCertificateConfigurationRequest(input *GetGroupCertificateConfigurationInput) (req *request.Request, output *GetGroupCertificateConfigurationOutput) {
3660	op := &request.Operation{
3661		Name:       opGetGroupCertificateConfiguration,
3662		HTTPMethod: "GET",
3663		HTTPPath:   "/greengrass/groups/{GroupId}/certificateauthorities/configuration/expiry",
3664	}
3665
3666	if input == nil {
3667		input = &GetGroupCertificateConfigurationInput{}
3668	}
3669
3670	output = &GetGroupCertificateConfigurationOutput{}
3671	req = c.newRequest(op, input, output)
3672	return
3673}
3674
3675// GetGroupCertificateConfiguration API operation for AWS Greengrass.
3676//
3677// Retrieves the current configuration for the CA used by the group.
3678//
3679// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3680// with awserr.Error's Code and Message methods to get detailed information about
3681// the error.
3682//
3683// See the AWS API reference guide for AWS Greengrass's
3684// API operation GetGroupCertificateConfiguration for usage and error information.
3685//
3686// Returned Error Codes:
3687//   * ErrCodeBadRequestException "BadRequestException"
3688//   General error information.
3689//
3690//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
3691//   General error information.
3692//
3693// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetGroupCertificateConfiguration
3694func (c *Greengrass) GetGroupCertificateConfiguration(input *GetGroupCertificateConfigurationInput) (*GetGroupCertificateConfigurationOutput, error) {
3695	req, out := c.GetGroupCertificateConfigurationRequest(input)
3696	return out, req.Send()
3697}
3698
3699// GetGroupCertificateConfigurationWithContext is the same as GetGroupCertificateConfiguration with the addition of
3700// the ability to pass a context and additional request options.
3701//
3702// See GetGroupCertificateConfiguration for details on how to use this API operation.
3703//
3704// The context must be non-nil and will be used for request cancellation. If
3705// the context is nil a panic will occur. In the future the SDK may create
3706// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3707// for more information on using Contexts.
3708func (c *Greengrass) GetGroupCertificateConfigurationWithContext(ctx aws.Context, input *GetGroupCertificateConfigurationInput, opts ...request.Option) (*GetGroupCertificateConfigurationOutput, error) {
3709	req, out := c.GetGroupCertificateConfigurationRequest(input)
3710	req.SetContext(ctx)
3711	req.ApplyOptions(opts...)
3712	return out, req.Send()
3713}
3714
3715const opGetGroupVersion = "GetGroupVersion"
3716
3717// GetGroupVersionRequest generates a "aws/request.Request" representing the
3718// client's request for the GetGroupVersion operation. The "output" return
3719// value will be populated with the request's response once the request completes
3720// successfully.
3721//
3722// Use "Send" method on the returned Request to send the API call to the service.
3723// the "output" return value is not valid until after Send returns without error.
3724//
3725// See GetGroupVersion for more information on using the GetGroupVersion
3726// API call, and error handling.
3727//
3728// This method is useful when you want to inject custom logic or configuration
3729// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3730//
3731//
3732//    // Example sending a request using the GetGroupVersionRequest method.
3733//    req, resp := client.GetGroupVersionRequest(params)
3734//
3735//    err := req.Send()
3736//    if err == nil { // resp is now filled
3737//        fmt.Println(resp)
3738//    }
3739//
3740// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetGroupVersion
3741func (c *Greengrass) GetGroupVersionRequest(input *GetGroupVersionInput) (req *request.Request, output *GetGroupVersionOutput) {
3742	op := &request.Operation{
3743		Name:       opGetGroupVersion,
3744		HTTPMethod: "GET",
3745		HTTPPath:   "/greengrass/groups/{GroupId}/versions/{GroupVersionId}",
3746	}
3747
3748	if input == nil {
3749		input = &GetGroupVersionInput{}
3750	}
3751
3752	output = &GetGroupVersionOutput{}
3753	req = c.newRequest(op, input, output)
3754	return
3755}
3756
3757// GetGroupVersion API operation for AWS Greengrass.
3758//
3759// Retrieves information about a group version.
3760//
3761// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3762// with awserr.Error's Code and Message methods to get detailed information about
3763// the error.
3764//
3765// See the AWS API reference guide for AWS Greengrass's
3766// API operation GetGroupVersion for usage and error information.
3767//
3768// Returned Error Codes:
3769//   * ErrCodeBadRequestException "BadRequestException"
3770//   General error information.
3771//
3772// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetGroupVersion
3773func (c *Greengrass) GetGroupVersion(input *GetGroupVersionInput) (*GetGroupVersionOutput, error) {
3774	req, out := c.GetGroupVersionRequest(input)
3775	return out, req.Send()
3776}
3777
3778// GetGroupVersionWithContext is the same as GetGroupVersion with the addition of
3779// the ability to pass a context and additional request options.
3780//
3781// See GetGroupVersion for details on how to use this API operation.
3782//
3783// The context must be non-nil and will be used for request cancellation. If
3784// the context is nil a panic will occur. In the future the SDK may create
3785// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3786// for more information on using Contexts.
3787func (c *Greengrass) GetGroupVersionWithContext(ctx aws.Context, input *GetGroupVersionInput, opts ...request.Option) (*GetGroupVersionOutput, error) {
3788	req, out := c.GetGroupVersionRequest(input)
3789	req.SetContext(ctx)
3790	req.ApplyOptions(opts...)
3791	return out, req.Send()
3792}
3793
3794const opGetLoggerDefinition = "GetLoggerDefinition"
3795
3796// GetLoggerDefinitionRequest generates a "aws/request.Request" representing the
3797// client's request for the GetLoggerDefinition operation. The "output" return
3798// value will be populated with the request's response once the request completes
3799// successfully.
3800//
3801// Use "Send" method on the returned Request to send the API call to the service.
3802// the "output" return value is not valid until after Send returns without error.
3803//
3804// See GetLoggerDefinition for more information on using the GetLoggerDefinition
3805// API call, and error handling.
3806//
3807// This method is useful when you want to inject custom logic or configuration
3808// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3809//
3810//
3811//    // Example sending a request using the GetLoggerDefinitionRequest method.
3812//    req, resp := client.GetLoggerDefinitionRequest(params)
3813//
3814//    err := req.Send()
3815//    if err == nil { // resp is now filled
3816//        fmt.Println(resp)
3817//    }
3818//
3819// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetLoggerDefinition
3820func (c *Greengrass) GetLoggerDefinitionRequest(input *GetLoggerDefinitionInput) (req *request.Request, output *GetLoggerDefinitionOutput) {
3821	op := &request.Operation{
3822		Name:       opGetLoggerDefinition,
3823		HTTPMethod: "GET",
3824		HTTPPath:   "/greengrass/definition/loggers/{LoggerDefinitionId}",
3825	}
3826
3827	if input == nil {
3828		input = &GetLoggerDefinitionInput{}
3829	}
3830
3831	output = &GetLoggerDefinitionOutput{}
3832	req = c.newRequest(op, input, output)
3833	return
3834}
3835
3836// GetLoggerDefinition API operation for AWS Greengrass.
3837//
3838// Retrieves information about a logger definition.
3839//
3840// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3841// with awserr.Error's Code and Message methods to get detailed information about
3842// the error.
3843//
3844// See the AWS API reference guide for AWS Greengrass's
3845// API operation GetLoggerDefinition for usage and error information.
3846//
3847// Returned Error Codes:
3848//   * ErrCodeBadRequestException "BadRequestException"
3849//   General error information.
3850//
3851// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetLoggerDefinition
3852func (c *Greengrass) GetLoggerDefinition(input *GetLoggerDefinitionInput) (*GetLoggerDefinitionOutput, error) {
3853	req, out := c.GetLoggerDefinitionRequest(input)
3854	return out, req.Send()
3855}
3856
3857// GetLoggerDefinitionWithContext is the same as GetLoggerDefinition with the addition of
3858// the ability to pass a context and additional request options.
3859//
3860// See GetLoggerDefinition for details on how to use this API operation.
3861//
3862// The context must be non-nil and will be used for request cancellation. If
3863// the context is nil a panic will occur. In the future the SDK may create
3864// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3865// for more information on using Contexts.
3866func (c *Greengrass) GetLoggerDefinitionWithContext(ctx aws.Context, input *GetLoggerDefinitionInput, opts ...request.Option) (*GetLoggerDefinitionOutput, error) {
3867	req, out := c.GetLoggerDefinitionRequest(input)
3868	req.SetContext(ctx)
3869	req.ApplyOptions(opts...)
3870	return out, req.Send()
3871}
3872
3873const opGetLoggerDefinitionVersion = "GetLoggerDefinitionVersion"
3874
3875// GetLoggerDefinitionVersionRequest generates a "aws/request.Request" representing the
3876// client's request for the GetLoggerDefinitionVersion operation. The "output" return
3877// value will be populated with the request's response once the request completes
3878// successfully.
3879//
3880// Use "Send" method on the returned Request to send the API call to the service.
3881// the "output" return value is not valid until after Send returns without error.
3882//
3883// See GetLoggerDefinitionVersion for more information on using the GetLoggerDefinitionVersion
3884// API call, and error handling.
3885//
3886// This method is useful when you want to inject custom logic or configuration
3887// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3888//
3889//
3890//    // Example sending a request using the GetLoggerDefinitionVersionRequest method.
3891//    req, resp := client.GetLoggerDefinitionVersionRequest(params)
3892//
3893//    err := req.Send()
3894//    if err == nil { // resp is now filled
3895//        fmt.Println(resp)
3896//    }
3897//
3898// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetLoggerDefinitionVersion
3899func (c *Greengrass) GetLoggerDefinitionVersionRequest(input *GetLoggerDefinitionVersionInput) (req *request.Request, output *GetLoggerDefinitionVersionOutput) {
3900	op := &request.Operation{
3901		Name:       opGetLoggerDefinitionVersion,
3902		HTTPMethod: "GET",
3903		HTTPPath:   "/greengrass/definition/loggers/{LoggerDefinitionId}/versions/{LoggerDefinitionVersionId}",
3904	}
3905
3906	if input == nil {
3907		input = &GetLoggerDefinitionVersionInput{}
3908	}
3909
3910	output = &GetLoggerDefinitionVersionOutput{}
3911	req = c.newRequest(op, input, output)
3912	return
3913}
3914
3915// GetLoggerDefinitionVersion API operation for AWS Greengrass.
3916//
3917// Retrieves information about a logger definition version.
3918//
3919// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3920// with awserr.Error's Code and Message methods to get detailed information about
3921// the error.
3922//
3923// See the AWS API reference guide for AWS Greengrass's
3924// API operation GetLoggerDefinitionVersion for usage and error information.
3925//
3926// Returned Error Codes:
3927//   * ErrCodeBadRequestException "BadRequestException"
3928//   General error information.
3929//
3930// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetLoggerDefinitionVersion
3931func (c *Greengrass) GetLoggerDefinitionVersion(input *GetLoggerDefinitionVersionInput) (*GetLoggerDefinitionVersionOutput, error) {
3932	req, out := c.GetLoggerDefinitionVersionRequest(input)
3933	return out, req.Send()
3934}
3935
3936// GetLoggerDefinitionVersionWithContext is the same as GetLoggerDefinitionVersion with the addition of
3937// the ability to pass a context and additional request options.
3938//
3939// See GetLoggerDefinitionVersion for details on how to use this API operation.
3940//
3941// The context must be non-nil and will be used for request cancellation. If
3942// the context is nil a panic will occur. In the future the SDK may create
3943// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3944// for more information on using Contexts.
3945func (c *Greengrass) GetLoggerDefinitionVersionWithContext(ctx aws.Context, input *GetLoggerDefinitionVersionInput, opts ...request.Option) (*GetLoggerDefinitionVersionOutput, error) {
3946	req, out := c.GetLoggerDefinitionVersionRequest(input)
3947	req.SetContext(ctx)
3948	req.ApplyOptions(opts...)
3949	return out, req.Send()
3950}
3951
3952const opGetResourceDefinition = "GetResourceDefinition"
3953
3954// GetResourceDefinitionRequest generates a "aws/request.Request" representing the
3955// client's request for the GetResourceDefinition operation. The "output" return
3956// value will be populated with the request's response once the request completes
3957// successfully.
3958//
3959// Use "Send" method on the returned Request to send the API call to the service.
3960// the "output" return value is not valid until after Send returns without error.
3961//
3962// See GetResourceDefinition for more information on using the GetResourceDefinition
3963// API call, and error handling.
3964//
3965// This method is useful when you want to inject custom logic or configuration
3966// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3967//
3968//
3969//    // Example sending a request using the GetResourceDefinitionRequest method.
3970//    req, resp := client.GetResourceDefinitionRequest(params)
3971//
3972//    err := req.Send()
3973//    if err == nil { // resp is now filled
3974//        fmt.Println(resp)
3975//    }
3976//
3977// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetResourceDefinition
3978func (c *Greengrass) GetResourceDefinitionRequest(input *GetResourceDefinitionInput) (req *request.Request, output *GetResourceDefinitionOutput) {
3979	op := &request.Operation{
3980		Name:       opGetResourceDefinition,
3981		HTTPMethod: "GET",
3982		HTTPPath:   "/greengrass/definition/resources/{ResourceDefinitionId}",
3983	}
3984
3985	if input == nil {
3986		input = &GetResourceDefinitionInput{}
3987	}
3988
3989	output = &GetResourceDefinitionOutput{}
3990	req = c.newRequest(op, input, output)
3991	return
3992}
3993
3994// GetResourceDefinition API operation for AWS Greengrass.
3995//
3996// Retrieves information about a resource definition, including its creation
3997// time and latest version.
3998//
3999// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4000// with awserr.Error's Code and Message methods to get detailed information about
4001// the error.
4002//
4003// See the AWS API reference guide for AWS Greengrass's
4004// API operation GetResourceDefinition for usage and error information.
4005//
4006// Returned Error Codes:
4007//   * ErrCodeBadRequestException "BadRequestException"
4008//   General error information.
4009//
4010// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetResourceDefinition
4011func (c *Greengrass) GetResourceDefinition(input *GetResourceDefinitionInput) (*GetResourceDefinitionOutput, error) {
4012	req, out := c.GetResourceDefinitionRequest(input)
4013	return out, req.Send()
4014}
4015
4016// GetResourceDefinitionWithContext is the same as GetResourceDefinition with the addition of
4017// the ability to pass a context and additional request options.
4018//
4019// See GetResourceDefinition for details on how to use this API operation.
4020//
4021// The context must be non-nil and will be used for request cancellation. If
4022// the context is nil a panic will occur. In the future the SDK may create
4023// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4024// for more information on using Contexts.
4025func (c *Greengrass) GetResourceDefinitionWithContext(ctx aws.Context, input *GetResourceDefinitionInput, opts ...request.Option) (*GetResourceDefinitionOutput, error) {
4026	req, out := c.GetResourceDefinitionRequest(input)
4027	req.SetContext(ctx)
4028	req.ApplyOptions(opts...)
4029	return out, req.Send()
4030}
4031
4032const opGetResourceDefinitionVersion = "GetResourceDefinitionVersion"
4033
4034// GetResourceDefinitionVersionRequest generates a "aws/request.Request" representing the
4035// client's request for the GetResourceDefinitionVersion operation. The "output" return
4036// value will be populated with the request's response once the request completes
4037// successfully.
4038//
4039// Use "Send" method on the returned Request to send the API call to the service.
4040// the "output" return value is not valid until after Send returns without error.
4041//
4042// See GetResourceDefinitionVersion for more information on using the GetResourceDefinitionVersion
4043// API call, and error handling.
4044//
4045// This method is useful when you want to inject custom logic or configuration
4046// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4047//
4048//
4049//    // Example sending a request using the GetResourceDefinitionVersionRequest method.
4050//    req, resp := client.GetResourceDefinitionVersionRequest(params)
4051//
4052//    err := req.Send()
4053//    if err == nil { // resp is now filled
4054//        fmt.Println(resp)
4055//    }
4056//
4057// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetResourceDefinitionVersion
4058func (c *Greengrass) GetResourceDefinitionVersionRequest(input *GetResourceDefinitionVersionInput) (req *request.Request, output *GetResourceDefinitionVersionOutput) {
4059	op := &request.Operation{
4060		Name:       opGetResourceDefinitionVersion,
4061		HTTPMethod: "GET",
4062		HTTPPath:   "/greengrass/definition/resources/{ResourceDefinitionId}/versions/{ResourceDefinitionVersionId}",
4063	}
4064
4065	if input == nil {
4066		input = &GetResourceDefinitionVersionInput{}
4067	}
4068
4069	output = &GetResourceDefinitionVersionOutput{}
4070	req = c.newRequest(op, input, output)
4071	return
4072}
4073
4074// GetResourceDefinitionVersion API operation for AWS Greengrass.
4075//
4076// Retrieves information about a resource definition version, including which
4077// resources are included in the version.
4078//
4079// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4080// with awserr.Error's Code and Message methods to get detailed information about
4081// the error.
4082//
4083// See the AWS API reference guide for AWS Greengrass's
4084// API operation GetResourceDefinitionVersion for usage and error information.
4085//
4086// Returned Error Codes:
4087//   * ErrCodeBadRequestException "BadRequestException"
4088//   General error information.
4089//
4090// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetResourceDefinitionVersion
4091func (c *Greengrass) GetResourceDefinitionVersion(input *GetResourceDefinitionVersionInput) (*GetResourceDefinitionVersionOutput, error) {
4092	req, out := c.GetResourceDefinitionVersionRequest(input)
4093	return out, req.Send()
4094}
4095
4096// GetResourceDefinitionVersionWithContext is the same as GetResourceDefinitionVersion with the addition of
4097// the ability to pass a context and additional request options.
4098//
4099// See GetResourceDefinitionVersion for details on how to use this API operation.
4100//
4101// The context must be non-nil and will be used for request cancellation. If
4102// the context is nil a panic will occur. In the future the SDK may create
4103// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4104// for more information on using Contexts.
4105func (c *Greengrass) GetResourceDefinitionVersionWithContext(ctx aws.Context, input *GetResourceDefinitionVersionInput, opts ...request.Option) (*GetResourceDefinitionVersionOutput, error) {
4106	req, out := c.GetResourceDefinitionVersionRequest(input)
4107	req.SetContext(ctx)
4108	req.ApplyOptions(opts...)
4109	return out, req.Send()
4110}
4111
4112const opGetServiceRoleForAccount = "GetServiceRoleForAccount"
4113
4114// GetServiceRoleForAccountRequest generates a "aws/request.Request" representing the
4115// client's request for the GetServiceRoleForAccount operation. The "output" return
4116// value will be populated with the request's response once the request completes
4117// successfully.
4118//
4119// Use "Send" method on the returned Request to send the API call to the service.
4120// the "output" return value is not valid until after Send returns without error.
4121//
4122// See GetServiceRoleForAccount for more information on using the GetServiceRoleForAccount
4123// API call, and error handling.
4124//
4125// This method is useful when you want to inject custom logic or configuration
4126// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4127//
4128//
4129//    // Example sending a request using the GetServiceRoleForAccountRequest method.
4130//    req, resp := client.GetServiceRoleForAccountRequest(params)
4131//
4132//    err := req.Send()
4133//    if err == nil { // resp is now filled
4134//        fmt.Println(resp)
4135//    }
4136//
4137// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetServiceRoleForAccount
4138func (c *Greengrass) GetServiceRoleForAccountRequest(input *GetServiceRoleForAccountInput) (req *request.Request, output *GetServiceRoleForAccountOutput) {
4139	op := &request.Operation{
4140		Name:       opGetServiceRoleForAccount,
4141		HTTPMethod: "GET",
4142		HTTPPath:   "/greengrass/servicerole",
4143	}
4144
4145	if input == nil {
4146		input = &GetServiceRoleForAccountInput{}
4147	}
4148
4149	output = &GetServiceRoleForAccountOutput{}
4150	req = c.newRequest(op, input, output)
4151	return
4152}
4153
4154// GetServiceRoleForAccount API operation for AWS Greengrass.
4155//
4156// Retrieves the service role that is attached to your account.
4157//
4158// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4159// with awserr.Error's Code and Message methods to get detailed information about
4160// the error.
4161//
4162// See the AWS API reference guide for AWS Greengrass's
4163// API operation GetServiceRoleForAccount for usage and error information.
4164//
4165// Returned Error Codes:
4166//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
4167//   General error information.
4168//
4169// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetServiceRoleForAccount
4170func (c *Greengrass) GetServiceRoleForAccount(input *GetServiceRoleForAccountInput) (*GetServiceRoleForAccountOutput, error) {
4171	req, out := c.GetServiceRoleForAccountRequest(input)
4172	return out, req.Send()
4173}
4174
4175// GetServiceRoleForAccountWithContext is the same as GetServiceRoleForAccount with the addition of
4176// the ability to pass a context and additional request options.
4177//
4178// See GetServiceRoleForAccount for details on how to use this API operation.
4179//
4180// The context must be non-nil and will be used for request cancellation. If
4181// the context is nil a panic will occur. In the future the SDK may create
4182// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4183// for more information on using Contexts.
4184func (c *Greengrass) GetServiceRoleForAccountWithContext(ctx aws.Context, input *GetServiceRoleForAccountInput, opts ...request.Option) (*GetServiceRoleForAccountOutput, error) {
4185	req, out := c.GetServiceRoleForAccountRequest(input)
4186	req.SetContext(ctx)
4187	req.ApplyOptions(opts...)
4188	return out, req.Send()
4189}
4190
4191const opGetSubscriptionDefinition = "GetSubscriptionDefinition"
4192
4193// GetSubscriptionDefinitionRequest generates a "aws/request.Request" representing the
4194// client's request for the GetSubscriptionDefinition operation. The "output" return
4195// value will be populated with the request's response once the request completes
4196// successfully.
4197//
4198// Use "Send" method on the returned Request to send the API call to the service.
4199// the "output" return value is not valid until after Send returns without error.
4200//
4201// See GetSubscriptionDefinition for more information on using the GetSubscriptionDefinition
4202// API call, and error handling.
4203//
4204// This method is useful when you want to inject custom logic or configuration
4205// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4206//
4207//
4208//    // Example sending a request using the GetSubscriptionDefinitionRequest method.
4209//    req, resp := client.GetSubscriptionDefinitionRequest(params)
4210//
4211//    err := req.Send()
4212//    if err == nil { // resp is now filled
4213//        fmt.Println(resp)
4214//    }
4215//
4216// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetSubscriptionDefinition
4217func (c *Greengrass) GetSubscriptionDefinitionRequest(input *GetSubscriptionDefinitionInput) (req *request.Request, output *GetSubscriptionDefinitionOutput) {
4218	op := &request.Operation{
4219		Name:       opGetSubscriptionDefinition,
4220		HTTPMethod: "GET",
4221		HTTPPath:   "/greengrass/definition/subscriptions/{SubscriptionDefinitionId}",
4222	}
4223
4224	if input == nil {
4225		input = &GetSubscriptionDefinitionInput{}
4226	}
4227
4228	output = &GetSubscriptionDefinitionOutput{}
4229	req = c.newRequest(op, input, output)
4230	return
4231}
4232
4233// GetSubscriptionDefinition API operation for AWS Greengrass.
4234//
4235// Retrieves information about a subscription definition.
4236//
4237// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4238// with awserr.Error's Code and Message methods to get detailed information about
4239// the error.
4240//
4241// See the AWS API reference guide for AWS Greengrass's
4242// API operation GetSubscriptionDefinition for usage and error information.
4243//
4244// Returned Error Codes:
4245//   * ErrCodeBadRequestException "BadRequestException"
4246//   General error information.
4247//
4248// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetSubscriptionDefinition
4249func (c *Greengrass) GetSubscriptionDefinition(input *GetSubscriptionDefinitionInput) (*GetSubscriptionDefinitionOutput, error) {
4250	req, out := c.GetSubscriptionDefinitionRequest(input)
4251	return out, req.Send()
4252}
4253
4254// GetSubscriptionDefinitionWithContext is the same as GetSubscriptionDefinition with the addition of
4255// the ability to pass a context and additional request options.
4256//
4257// See GetSubscriptionDefinition for details on how to use this API operation.
4258//
4259// The context must be non-nil and will be used for request cancellation. If
4260// the context is nil a panic will occur. In the future the SDK may create
4261// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4262// for more information on using Contexts.
4263func (c *Greengrass) GetSubscriptionDefinitionWithContext(ctx aws.Context, input *GetSubscriptionDefinitionInput, opts ...request.Option) (*GetSubscriptionDefinitionOutput, error) {
4264	req, out := c.GetSubscriptionDefinitionRequest(input)
4265	req.SetContext(ctx)
4266	req.ApplyOptions(opts...)
4267	return out, req.Send()
4268}
4269
4270const opGetSubscriptionDefinitionVersion = "GetSubscriptionDefinitionVersion"
4271
4272// GetSubscriptionDefinitionVersionRequest generates a "aws/request.Request" representing the
4273// client's request for the GetSubscriptionDefinitionVersion operation. The "output" return
4274// value will be populated with the request's response once the request completes
4275// successfully.
4276//
4277// Use "Send" method on the returned Request to send the API call to the service.
4278// the "output" return value is not valid until after Send returns without error.
4279//
4280// See GetSubscriptionDefinitionVersion for more information on using the GetSubscriptionDefinitionVersion
4281// API call, and error handling.
4282//
4283// This method is useful when you want to inject custom logic or configuration
4284// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4285//
4286//
4287//    // Example sending a request using the GetSubscriptionDefinitionVersionRequest method.
4288//    req, resp := client.GetSubscriptionDefinitionVersionRequest(params)
4289//
4290//    err := req.Send()
4291//    if err == nil { // resp is now filled
4292//        fmt.Println(resp)
4293//    }
4294//
4295// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetSubscriptionDefinitionVersion
4296func (c *Greengrass) GetSubscriptionDefinitionVersionRequest(input *GetSubscriptionDefinitionVersionInput) (req *request.Request, output *GetSubscriptionDefinitionVersionOutput) {
4297	op := &request.Operation{
4298		Name:       opGetSubscriptionDefinitionVersion,
4299		HTTPMethod: "GET",
4300		HTTPPath:   "/greengrass/definition/subscriptions/{SubscriptionDefinitionId}/versions/{SubscriptionDefinitionVersionId}",
4301	}
4302
4303	if input == nil {
4304		input = &GetSubscriptionDefinitionVersionInput{}
4305	}
4306
4307	output = &GetSubscriptionDefinitionVersionOutput{}
4308	req = c.newRequest(op, input, output)
4309	return
4310}
4311
4312// GetSubscriptionDefinitionVersion API operation for AWS Greengrass.
4313//
4314// Retrieves information about a subscription definition version.
4315//
4316// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4317// with awserr.Error's Code and Message methods to get detailed information about
4318// the error.
4319//
4320// See the AWS API reference guide for AWS Greengrass's
4321// API operation GetSubscriptionDefinitionVersion for usage and error information.
4322//
4323// Returned Error Codes:
4324//   * ErrCodeBadRequestException "BadRequestException"
4325//   General error information.
4326//
4327// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/GetSubscriptionDefinitionVersion
4328func (c *Greengrass) GetSubscriptionDefinitionVersion(input *GetSubscriptionDefinitionVersionInput) (*GetSubscriptionDefinitionVersionOutput, error) {
4329	req, out := c.GetSubscriptionDefinitionVersionRequest(input)
4330	return out, req.Send()
4331}
4332
4333// GetSubscriptionDefinitionVersionWithContext is the same as GetSubscriptionDefinitionVersion with the addition of
4334// the ability to pass a context and additional request options.
4335//
4336// See GetSubscriptionDefinitionVersion for details on how to use this API operation.
4337//
4338// The context must be non-nil and will be used for request cancellation. If
4339// the context is nil a panic will occur. In the future the SDK may create
4340// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4341// for more information on using Contexts.
4342func (c *Greengrass) GetSubscriptionDefinitionVersionWithContext(ctx aws.Context, input *GetSubscriptionDefinitionVersionInput, opts ...request.Option) (*GetSubscriptionDefinitionVersionOutput, error) {
4343	req, out := c.GetSubscriptionDefinitionVersionRequest(input)
4344	req.SetContext(ctx)
4345	req.ApplyOptions(opts...)
4346	return out, req.Send()
4347}
4348
4349const opListBulkDeploymentDetailedReports = "ListBulkDeploymentDetailedReports"
4350
4351// ListBulkDeploymentDetailedReportsRequest generates a "aws/request.Request" representing the
4352// client's request for the ListBulkDeploymentDetailedReports operation. The "output" return
4353// value will be populated with the request's response once the request completes
4354// successfully.
4355//
4356// Use "Send" method on the returned Request to send the API call to the service.
4357// the "output" return value is not valid until after Send returns without error.
4358//
4359// See ListBulkDeploymentDetailedReports for more information on using the ListBulkDeploymentDetailedReports
4360// API call, and error handling.
4361//
4362// This method is useful when you want to inject custom logic or configuration
4363// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4364//
4365//
4366//    // Example sending a request using the ListBulkDeploymentDetailedReportsRequest method.
4367//    req, resp := client.ListBulkDeploymentDetailedReportsRequest(params)
4368//
4369//    err := req.Send()
4370//    if err == nil { // resp is now filled
4371//        fmt.Println(resp)
4372//    }
4373//
4374// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListBulkDeploymentDetailedReports
4375func (c *Greengrass) ListBulkDeploymentDetailedReportsRequest(input *ListBulkDeploymentDetailedReportsInput) (req *request.Request, output *ListBulkDeploymentDetailedReportsOutput) {
4376	op := &request.Operation{
4377		Name:       opListBulkDeploymentDetailedReports,
4378		HTTPMethod: "GET",
4379		HTTPPath:   "/greengrass/bulk/deployments/{BulkDeploymentId}/detailed-reports",
4380	}
4381
4382	if input == nil {
4383		input = &ListBulkDeploymentDetailedReportsInput{}
4384	}
4385
4386	output = &ListBulkDeploymentDetailedReportsOutput{}
4387	req = c.newRequest(op, input, output)
4388	return
4389}
4390
4391// ListBulkDeploymentDetailedReports API operation for AWS Greengrass.
4392//
4393// Gets a paginated list of the deployments that have been started in a bulk
4394// deployment operation, and their current deployment status.
4395//
4396// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4397// with awserr.Error's Code and Message methods to get detailed information about
4398// the error.
4399//
4400// See the AWS API reference guide for AWS Greengrass's
4401// API operation ListBulkDeploymentDetailedReports for usage and error information.
4402//
4403// Returned Error Codes:
4404//   * ErrCodeBadRequestException "BadRequestException"
4405//   General error information.
4406//
4407// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListBulkDeploymentDetailedReports
4408func (c *Greengrass) ListBulkDeploymentDetailedReports(input *ListBulkDeploymentDetailedReportsInput) (*ListBulkDeploymentDetailedReportsOutput, error) {
4409	req, out := c.ListBulkDeploymentDetailedReportsRequest(input)
4410	return out, req.Send()
4411}
4412
4413// ListBulkDeploymentDetailedReportsWithContext is the same as ListBulkDeploymentDetailedReports with the addition of
4414// the ability to pass a context and additional request options.
4415//
4416// See ListBulkDeploymentDetailedReports for details on how to use this API operation.
4417//
4418// The context must be non-nil and will be used for request cancellation. If
4419// the context is nil a panic will occur. In the future the SDK may create
4420// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4421// for more information on using Contexts.
4422func (c *Greengrass) ListBulkDeploymentDetailedReportsWithContext(ctx aws.Context, input *ListBulkDeploymentDetailedReportsInput, opts ...request.Option) (*ListBulkDeploymentDetailedReportsOutput, error) {
4423	req, out := c.ListBulkDeploymentDetailedReportsRequest(input)
4424	req.SetContext(ctx)
4425	req.ApplyOptions(opts...)
4426	return out, req.Send()
4427}
4428
4429const opListBulkDeployments = "ListBulkDeployments"
4430
4431// ListBulkDeploymentsRequest generates a "aws/request.Request" representing the
4432// client's request for the ListBulkDeployments operation. The "output" return
4433// value will be populated with the request's response once the request completes
4434// successfully.
4435//
4436// Use "Send" method on the returned Request to send the API call to the service.
4437// the "output" return value is not valid until after Send returns without error.
4438//
4439// See ListBulkDeployments for more information on using the ListBulkDeployments
4440// API call, and error handling.
4441//
4442// This method is useful when you want to inject custom logic or configuration
4443// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4444//
4445//
4446//    // Example sending a request using the ListBulkDeploymentsRequest method.
4447//    req, resp := client.ListBulkDeploymentsRequest(params)
4448//
4449//    err := req.Send()
4450//    if err == nil { // resp is now filled
4451//        fmt.Println(resp)
4452//    }
4453//
4454// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListBulkDeployments
4455func (c *Greengrass) ListBulkDeploymentsRequest(input *ListBulkDeploymentsInput) (req *request.Request, output *ListBulkDeploymentsOutput) {
4456	op := &request.Operation{
4457		Name:       opListBulkDeployments,
4458		HTTPMethod: "GET",
4459		HTTPPath:   "/greengrass/bulk/deployments",
4460	}
4461
4462	if input == nil {
4463		input = &ListBulkDeploymentsInput{}
4464	}
4465
4466	output = &ListBulkDeploymentsOutput{}
4467	req = c.newRequest(op, input, output)
4468	return
4469}
4470
4471// ListBulkDeployments API operation for AWS Greengrass.
4472//
4473// Returns a list of bulk deployments.
4474//
4475// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4476// with awserr.Error's Code and Message methods to get detailed information about
4477// the error.
4478//
4479// See the AWS API reference guide for AWS Greengrass's
4480// API operation ListBulkDeployments for usage and error information.
4481//
4482// Returned Error Codes:
4483//   * ErrCodeBadRequestException "BadRequestException"
4484//   General error information.
4485//
4486// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListBulkDeployments
4487func (c *Greengrass) ListBulkDeployments(input *ListBulkDeploymentsInput) (*ListBulkDeploymentsOutput, error) {
4488	req, out := c.ListBulkDeploymentsRequest(input)
4489	return out, req.Send()
4490}
4491
4492// ListBulkDeploymentsWithContext is the same as ListBulkDeployments with the addition of
4493// the ability to pass a context and additional request options.
4494//
4495// See ListBulkDeployments for details on how to use this API operation.
4496//
4497// The context must be non-nil and will be used for request cancellation. If
4498// the context is nil a panic will occur. In the future the SDK may create
4499// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4500// for more information on using Contexts.
4501func (c *Greengrass) ListBulkDeploymentsWithContext(ctx aws.Context, input *ListBulkDeploymentsInput, opts ...request.Option) (*ListBulkDeploymentsOutput, error) {
4502	req, out := c.ListBulkDeploymentsRequest(input)
4503	req.SetContext(ctx)
4504	req.ApplyOptions(opts...)
4505	return out, req.Send()
4506}
4507
4508const opListConnectorDefinitionVersions = "ListConnectorDefinitionVersions"
4509
4510// ListConnectorDefinitionVersionsRequest generates a "aws/request.Request" representing the
4511// client's request for the ListConnectorDefinitionVersions operation. The "output" return
4512// value will be populated with the request's response once the request completes
4513// successfully.
4514//
4515// Use "Send" method on the returned Request to send the API call to the service.
4516// the "output" return value is not valid until after Send returns without error.
4517//
4518// See ListConnectorDefinitionVersions for more information on using the ListConnectorDefinitionVersions
4519// API call, and error handling.
4520//
4521// This method is useful when you want to inject custom logic or configuration
4522// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4523//
4524//
4525//    // Example sending a request using the ListConnectorDefinitionVersionsRequest method.
4526//    req, resp := client.ListConnectorDefinitionVersionsRequest(params)
4527//
4528//    err := req.Send()
4529//    if err == nil { // resp is now filled
4530//        fmt.Println(resp)
4531//    }
4532//
4533// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListConnectorDefinitionVersions
4534func (c *Greengrass) ListConnectorDefinitionVersionsRequest(input *ListConnectorDefinitionVersionsInput) (req *request.Request, output *ListConnectorDefinitionVersionsOutput) {
4535	op := &request.Operation{
4536		Name:       opListConnectorDefinitionVersions,
4537		HTTPMethod: "GET",
4538		HTTPPath:   "/greengrass/definition/connectors/{ConnectorDefinitionId}/versions",
4539	}
4540
4541	if input == nil {
4542		input = &ListConnectorDefinitionVersionsInput{}
4543	}
4544
4545	output = &ListConnectorDefinitionVersionsOutput{}
4546	req = c.newRequest(op, input, output)
4547	return
4548}
4549
4550// ListConnectorDefinitionVersions API operation for AWS Greengrass.
4551//
4552// Lists the versions of a connector definition, which are containers for connectors.
4553// Connectors run on the Greengrass core and contain built-in integration with
4554// local infrastructure, device protocols, AWS, and other cloud services.
4555//
4556// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4557// with awserr.Error's Code and Message methods to get detailed information about
4558// the error.
4559//
4560// See the AWS API reference guide for AWS Greengrass's
4561// API operation ListConnectorDefinitionVersions for usage and error information.
4562//
4563// Returned Error Codes:
4564//   * ErrCodeBadRequestException "BadRequestException"
4565//   General error information.
4566//
4567// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListConnectorDefinitionVersions
4568func (c *Greengrass) ListConnectorDefinitionVersions(input *ListConnectorDefinitionVersionsInput) (*ListConnectorDefinitionVersionsOutput, error) {
4569	req, out := c.ListConnectorDefinitionVersionsRequest(input)
4570	return out, req.Send()
4571}
4572
4573// ListConnectorDefinitionVersionsWithContext is the same as ListConnectorDefinitionVersions with the addition of
4574// the ability to pass a context and additional request options.
4575//
4576// See ListConnectorDefinitionVersions for details on how to use this API operation.
4577//
4578// The context must be non-nil and will be used for request cancellation. If
4579// the context is nil a panic will occur. In the future the SDK may create
4580// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4581// for more information on using Contexts.
4582func (c *Greengrass) ListConnectorDefinitionVersionsWithContext(ctx aws.Context, input *ListConnectorDefinitionVersionsInput, opts ...request.Option) (*ListConnectorDefinitionVersionsOutput, error) {
4583	req, out := c.ListConnectorDefinitionVersionsRequest(input)
4584	req.SetContext(ctx)
4585	req.ApplyOptions(opts...)
4586	return out, req.Send()
4587}
4588
4589const opListConnectorDefinitions = "ListConnectorDefinitions"
4590
4591// ListConnectorDefinitionsRequest generates a "aws/request.Request" representing the
4592// client's request for the ListConnectorDefinitions operation. The "output" return
4593// value will be populated with the request's response once the request completes
4594// successfully.
4595//
4596// Use "Send" method on the returned Request to send the API call to the service.
4597// the "output" return value is not valid until after Send returns without error.
4598//
4599// See ListConnectorDefinitions for more information on using the ListConnectorDefinitions
4600// API call, and error handling.
4601//
4602// This method is useful when you want to inject custom logic or configuration
4603// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4604//
4605//
4606//    // Example sending a request using the ListConnectorDefinitionsRequest method.
4607//    req, resp := client.ListConnectorDefinitionsRequest(params)
4608//
4609//    err := req.Send()
4610//    if err == nil { // resp is now filled
4611//        fmt.Println(resp)
4612//    }
4613//
4614// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListConnectorDefinitions
4615func (c *Greengrass) ListConnectorDefinitionsRequest(input *ListConnectorDefinitionsInput) (req *request.Request, output *ListConnectorDefinitionsOutput) {
4616	op := &request.Operation{
4617		Name:       opListConnectorDefinitions,
4618		HTTPMethod: "GET",
4619		HTTPPath:   "/greengrass/definition/connectors",
4620	}
4621
4622	if input == nil {
4623		input = &ListConnectorDefinitionsInput{}
4624	}
4625
4626	output = &ListConnectorDefinitionsOutput{}
4627	req = c.newRequest(op, input, output)
4628	return
4629}
4630
4631// ListConnectorDefinitions API operation for AWS Greengrass.
4632//
4633// Retrieves a list of connector definitions.
4634//
4635// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4636// with awserr.Error's Code and Message methods to get detailed information about
4637// the error.
4638//
4639// See the AWS API reference guide for AWS Greengrass's
4640// API operation ListConnectorDefinitions for usage and error information.
4641// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListConnectorDefinitions
4642func (c *Greengrass) ListConnectorDefinitions(input *ListConnectorDefinitionsInput) (*ListConnectorDefinitionsOutput, error) {
4643	req, out := c.ListConnectorDefinitionsRequest(input)
4644	return out, req.Send()
4645}
4646
4647// ListConnectorDefinitionsWithContext is the same as ListConnectorDefinitions with the addition of
4648// the ability to pass a context and additional request options.
4649//
4650// See ListConnectorDefinitions for details on how to use this API operation.
4651//
4652// The context must be non-nil and will be used for request cancellation. If
4653// the context is nil a panic will occur. In the future the SDK may create
4654// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4655// for more information on using Contexts.
4656func (c *Greengrass) ListConnectorDefinitionsWithContext(ctx aws.Context, input *ListConnectorDefinitionsInput, opts ...request.Option) (*ListConnectorDefinitionsOutput, error) {
4657	req, out := c.ListConnectorDefinitionsRequest(input)
4658	req.SetContext(ctx)
4659	req.ApplyOptions(opts...)
4660	return out, req.Send()
4661}
4662
4663const opListCoreDefinitionVersions = "ListCoreDefinitionVersions"
4664
4665// ListCoreDefinitionVersionsRequest generates a "aws/request.Request" representing the
4666// client's request for the ListCoreDefinitionVersions operation. The "output" return
4667// value will be populated with the request's response once the request completes
4668// successfully.
4669//
4670// Use "Send" method on the returned Request to send the API call to the service.
4671// the "output" return value is not valid until after Send returns without error.
4672//
4673// See ListCoreDefinitionVersions for more information on using the ListCoreDefinitionVersions
4674// API call, and error handling.
4675//
4676// This method is useful when you want to inject custom logic or configuration
4677// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4678//
4679//
4680//    // Example sending a request using the ListCoreDefinitionVersionsRequest method.
4681//    req, resp := client.ListCoreDefinitionVersionsRequest(params)
4682//
4683//    err := req.Send()
4684//    if err == nil { // resp is now filled
4685//        fmt.Println(resp)
4686//    }
4687//
4688// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListCoreDefinitionVersions
4689func (c *Greengrass) ListCoreDefinitionVersionsRequest(input *ListCoreDefinitionVersionsInput) (req *request.Request, output *ListCoreDefinitionVersionsOutput) {
4690	op := &request.Operation{
4691		Name:       opListCoreDefinitionVersions,
4692		HTTPMethod: "GET",
4693		HTTPPath:   "/greengrass/definition/cores/{CoreDefinitionId}/versions",
4694	}
4695
4696	if input == nil {
4697		input = &ListCoreDefinitionVersionsInput{}
4698	}
4699
4700	output = &ListCoreDefinitionVersionsOutput{}
4701	req = c.newRequest(op, input, output)
4702	return
4703}
4704
4705// ListCoreDefinitionVersions API operation for AWS Greengrass.
4706//
4707// Lists the versions of a core definition.
4708//
4709// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4710// with awserr.Error's Code and Message methods to get detailed information about
4711// the error.
4712//
4713// See the AWS API reference guide for AWS Greengrass's
4714// API operation ListCoreDefinitionVersions for usage and error information.
4715//
4716// Returned Error Codes:
4717//   * ErrCodeBadRequestException "BadRequestException"
4718//   General error information.
4719//
4720// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListCoreDefinitionVersions
4721func (c *Greengrass) ListCoreDefinitionVersions(input *ListCoreDefinitionVersionsInput) (*ListCoreDefinitionVersionsOutput, error) {
4722	req, out := c.ListCoreDefinitionVersionsRequest(input)
4723	return out, req.Send()
4724}
4725
4726// ListCoreDefinitionVersionsWithContext is the same as ListCoreDefinitionVersions with the addition of
4727// the ability to pass a context and additional request options.
4728//
4729// See ListCoreDefinitionVersions for details on how to use this API operation.
4730//
4731// The context must be non-nil and will be used for request cancellation. If
4732// the context is nil a panic will occur. In the future the SDK may create
4733// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4734// for more information on using Contexts.
4735func (c *Greengrass) ListCoreDefinitionVersionsWithContext(ctx aws.Context, input *ListCoreDefinitionVersionsInput, opts ...request.Option) (*ListCoreDefinitionVersionsOutput, error) {
4736	req, out := c.ListCoreDefinitionVersionsRequest(input)
4737	req.SetContext(ctx)
4738	req.ApplyOptions(opts...)
4739	return out, req.Send()
4740}
4741
4742const opListCoreDefinitions = "ListCoreDefinitions"
4743
4744// ListCoreDefinitionsRequest generates a "aws/request.Request" representing the
4745// client's request for the ListCoreDefinitions operation. The "output" return
4746// value will be populated with the request's response once the request completes
4747// successfully.
4748//
4749// Use "Send" method on the returned Request to send the API call to the service.
4750// the "output" return value is not valid until after Send returns without error.
4751//
4752// See ListCoreDefinitions for more information on using the ListCoreDefinitions
4753// API call, and error handling.
4754//
4755// This method is useful when you want to inject custom logic or configuration
4756// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4757//
4758//
4759//    // Example sending a request using the ListCoreDefinitionsRequest method.
4760//    req, resp := client.ListCoreDefinitionsRequest(params)
4761//
4762//    err := req.Send()
4763//    if err == nil { // resp is now filled
4764//        fmt.Println(resp)
4765//    }
4766//
4767// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListCoreDefinitions
4768func (c *Greengrass) ListCoreDefinitionsRequest(input *ListCoreDefinitionsInput) (req *request.Request, output *ListCoreDefinitionsOutput) {
4769	op := &request.Operation{
4770		Name:       opListCoreDefinitions,
4771		HTTPMethod: "GET",
4772		HTTPPath:   "/greengrass/definition/cores",
4773	}
4774
4775	if input == nil {
4776		input = &ListCoreDefinitionsInput{}
4777	}
4778
4779	output = &ListCoreDefinitionsOutput{}
4780	req = c.newRequest(op, input, output)
4781	return
4782}
4783
4784// ListCoreDefinitions API operation for AWS Greengrass.
4785//
4786// Retrieves a list of core definitions.
4787//
4788// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4789// with awserr.Error's Code and Message methods to get detailed information about
4790// the error.
4791//
4792// See the AWS API reference guide for AWS Greengrass's
4793// API operation ListCoreDefinitions for usage and error information.
4794// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListCoreDefinitions
4795func (c *Greengrass) ListCoreDefinitions(input *ListCoreDefinitionsInput) (*ListCoreDefinitionsOutput, error) {
4796	req, out := c.ListCoreDefinitionsRequest(input)
4797	return out, req.Send()
4798}
4799
4800// ListCoreDefinitionsWithContext is the same as ListCoreDefinitions with the addition of
4801// the ability to pass a context and additional request options.
4802//
4803// See ListCoreDefinitions for details on how to use this API operation.
4804//
4805// The context must be non-nil and will be used for request cancellation. If
4806// the context is nil a panic will occur. In the future the SDK may create
4807// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4808// for more information on using Contexts.
4809func (c *Greengrass) ListCoreDefinitionsWithContext(ctx aws.Context, input *ListCoreDefinitionsInput, opts ...request.Option) (*ListCoreDefinitionsOutput, error) {
4810	req, out := c.ListCoreDefinitionsRequest(input)
4811	req.SetContext(ctx)
4812	req.ApplyOptions(opts...)
4813	return out, req.Send()
4814}
4815
4816const opListDeployments = "ListDeployments"
4817
4818// ListDeploymentsRequest generates a "aws/request.Request" representing the
4819// client's request for the ListDeployments operation. The "output" return
4820// value will be populated with the request's response once the request completes
4821// successfully.
4822//
4823// Use "Send" method on the returned Request to send the API call to the service.
4824// the "output" return value is not valid until after Send returns without error.
4825//
4826// See ListDeployments for more information on using the ListDeployments
4827// API call, and error handling.
4828//
4829// This method is useful when you want to inject custom logic or configuration
4830// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4831//
4832//
4833//    // Example sending a request using the ListDeploymentsRequest method.
4834//    req, resp := client.ListDeploymentsRequest(params)
4835//
4836//    err := req.Send()
4837//    if err == nil { // resp is now filled
4838//        fmt.Println(resp)
4839//    }
4840//
4841// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListDeployments
4842func (c *Greengrass) ListDeploymentsRequest(input *ListDeploymentsInput) (req *request.Request, output *ListDeploymentsOutput) {
4843	op := &request.Operation{
4844		Name:       opListDeployments,
4845		HTTPMethod: "GET",
4846		HTTPPath:   "/greengrass/groups/{GroupId}/deployments",
4847	}
4848
4849	if input == nil {
4850		input = &ListDeploymentsInput{}
4851	}
4852
4853	output = &ListDeploymentsOutput{}
4854	req = c.newRequest(op, input, output)
4855	return
4856}
4857
4858// ListDeployments API operation for AWS Greengrass.
4859//
4860// Returns a history of deployments for the group.
4861//
4862// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4863// with awserr.Error's Code and Message methods to get detailed information about
4864// the error.
4865//
4866// See the AWS API reference guide for AWS Greengrass's
4867// API operation ListDeployments for usage and error information.
4868//
4869// Returned Error Codes:
4870//   * ErrCodeBadRequestException "BadRequestException"
4871//   General error information.
4872//
4873// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListDeployments
4874func (c *Greengrass) ListDeployments(input *ListDeploymentsInput) (*ListDeploymentsOutput, error) {
4875	req, out := c.ListDeploymentsRequest(input)
4876	return out, req.Send()
4877}
4878
4879// ListDeploymentsWithContext is the same as ListDeployments with the addition of
4880// the ability to pass a context and additional request options.
4881//
4882// See ListDeployments for details on how to use this API operation.
4883//
4884// The context must be non-nil and will be used for request cancellation. If
4885// the context is nil a panic will occur. In the future the SDK may create
4886// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4887// for more information on using Contexts.
4888func (c *Greengrass) ListDeploymentsWithContext(ctx aws.Context, input *ListDeploymentsInput, opts ...request.Option) (*ListDeploymentsOutput, error) {
4889	req, out := c.ListDeploymentsRequest(input)
4890	req.SetContext(ctx)
4891	req.ApplyOptions(opts...)
4892	return out, req.Send()
4893}
4894
4895const opListDeviceDefinitionVersions = "ListDeviceDefinitionVersions"
4896
4897// ListDeviceDefinitionVersionsRequest generates a "aws/request.Request" representing the
4898// client's request for the ListDeviceDefinitionVersions operation. The "output" return
4899// value will be populated with the request's response once the request completes
4900// successfully.
4901//
4902// Use "Send" method on the returned Request to send the API call to the service.
4903// the "output" return value is not valid until after Send returns without error.
4904//
4905// See ListDeviceDefinitionVersions for more information on using the ListDeviceDefinitionVersions
4906// API call, and error handling.
4907//
4908// This method is useful when you want to inject custom logic or configuration
4909// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4910//
4911//
4912//    // Example sending a request using the ListDeviceDefinitionVersionsRequest method.
4913//    req, resp := client.ListDeviceDefinitionVersionsRequest(params)
4914//
4915//    err := req.Send()
4916//    if err == nil { // resp is now filled
4917//        fmt.Println(resp)
4918//    }
4919//
4920// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListDeviceDefinitionVersions
4921func (c *Greengrass) ListDeviceDefinitionVersionsRequest(input *ListDeviceDefinitionVersionsInput) (req *request.Request, output *ListDeviceDefinitionVersionsOutput) {
4922	op := &request.Operation{
4923		Name:       opListDeviceDefinitionVersions,
4924		HTTPMethod: "GET",
4925		HTTPPath:   "/greengrass/definition/devices/{DeviceDefinitionId}/versions",
4926	}
4927
4928	if input == nil {
4929		input = &ListDeviceDefinitionVersionsInput{}
4930	}
4931
4932	output = &ListDeviceDefinitionVersionsOutput{}
4933	req = c.newRequest(op, input, output)
4934	return
4935}
4936
4937// ListDeviceDefinitionVersions API operation for AWS Greengrass.
4938//
4939// Lists the versions of a device definition.
4940//
4941// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4942// with awserr.Error's Code and Message methods to get detailed information about
4943// the error.
4944//
4945// See the AWS API reference guide for AWS Greengrass's
4946// API operation ListDeviceDefinitionVersions for usage and error information.
4947//
4948// Returned Error Codes:
4949//   * ErrCodeBadRequestException "BadRequestException"
4950//   General error information.
4951//
4952// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListDeviceDefinitionVersions
4953func (c *Greengrass) ListDeviceDefinitionVersions(input *ListDeviceDefinitionVersionsInput) (*ListDeviceDefinitionVersionsOutput, error) {
4954	req, out := c.ListDeviceDefinitionVersionsRequest(input)
4955	return out, req.Send()
4956}
4957
4958// ListDeviceDefinitionVersionsWithContext is the same as ListDeviceDefinitionVersions with the addition of
4959// the ability to pass a context and additional request options.
4960//
4961// See ListDeviceDefinitionVersions for details on how to use this API operation.
4962//
4963// The context must be non-nil and will be used for request cancellation. If
4964// the context is nil a panic will occur. In the future the SDK may create
4965// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4966// for more information on using Contexts.
4967func (c *Greengrass) ListDeviceDefinitionVersionsWithContext(ctx aws.Context, input *ListDeviceDefinitionVersionsInput, opts ...request.Option) (*ListDeviceDefinitionVersionsOutput, error) {
4968	req, out := c.ListDeviceDefinitionVersionsRequest(input)
4969	req.SetContext(ctx)
4970	req.ApplyOptions(opts...)
4971	return out, req.Send()
4972}
4973
4974const opListDeviceDefinitions = "ListDeviceDefinitions"
4975
4976// ListDeviceDefinitionsRequest generates a "aws/request.Request" representing the
4977// client's request for the ListDeviceDefinitions operation. The "output" return
4978// value will be populated with the request's response once the request completes
4979// successfully.
4980//
4981// Use "Send" method on the returned Request to send the API call to the service.
4982// the "output" return value is not valid until after Send returns without error.
4983//
4984// See ListDeviceDefinitions for more information on using the ListDeviceDefinitions
4985// API call, and error handling.
4986//
4987// This method is useful when you want to inject custom logic or configuration
4988// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4989//
4990//
4991//    // Example sending a request using the ListDeviceDefinitionsRequest method.
4992//    req, resp := client.ListDeviceDefinitionsRequest(params)
4993//
4994//    err := req.Send()
4995//    if err == nil { // resp is now filled
4996//        fmt.Println(resp)
4997//    }
4998//
4999// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListDeviceDefinitions
5000func (c *Greengrass) ListDeviceDefinitionsRequest(input *ListDeviceDefinitionsInput) (req *request.Request, output *ListDeviceDefinitionsOutput) {
5001	op := &request.Operation{
5002		Name:       opListDeviceDefinitions,
5003		HTTPMethod: "GET",
5004		HTTPPath:   "/greengrass/definition/devices",
5005	}
5006
5007	if input == nil {
5008		input = &ListDeviceDefinitionsInput{}
5009	}
5010
5011	output = &ListDeviceDefinitionsOutput{}
5012	req = c.newRequest(op, input, output)
5013	return
5014}
5015
5016// ListDeviceDefinitions API operation for AWS Greengrass.
5017//
5018// Retrieves a list of device definitions.
5019//
5020// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5021// with awserr.Error's Code and Message methods to get detailed information about
5022// the error.
5023//
5024// See the AWS API reference guide for AWS Greengrass's
5025// API operation ListDeviceDefinitions for usage and error information.
5026// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListDeviceDefinitions
5027func (c *Greengrass) ListDeviceDefinitions(input *ListDeviceDefinitionsInput) (*ListDeviceDefinitionsOutput, error) {
5028	req, out := c.ListDeviceDefinitionsRequest(input)
5029	return out, req.Send()
5030}
5031
5032// ListDeviceDefinitionsWithContext is the same as ListDeviceDefinitions with the addition of
5033// the ability to pass a context and additional request options.
5034//
5035// See ListDeviceDefinitions for details on how to use this API operation.
5036//
5037// The context must be non-nil and will be used for request cancellation. If
5038// the context is nil a panic will occur. In the future the SDK may create
5039// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5040// for more information on using Contexts.
5041func (c *Greengrass) ListDeviceDefinitionsWithContext(ctx aws.Context, input *ListDeviceDefinitionsInput, opts ...request.Option) (*ListDeviceDefinitionsOutput, error) {
5042	req, out := c.ListDeviceDefinitionsRequest(input)
5043	req.SetContext(ctx)
5044	req.ApplyOptions(opts...)
5045	return out, req.Send()
5046}
5047
5048const opListFunctionDefinitionVersions = "ListFunctionDefinitionVersions"
5049
5050// ListFunctionDefinitionVersionsRequest generates a "aws/request.Request" representing the
5051// client's request for the ListFunctionDefinitionVersions operation. The "output" return
5052// value will be populated with the request's response once the request completes
5053// successfully.
5054//
5055// Use "Send" method on the returned Request to send the API call to the service.
5056// the "output" return value is not valid until after Send returns without error.
5057//
5058// See ListFunctionDefinitionVersions for more information on using the ListFunctionDefinitionVersions
5059// API call, and error handling.
5060//
5061// This method is useful when you want to inject custom logic or configuration
5062// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5063//
5064//
5065//    // Example sending a request using the ListFunctionDefinitionVersionsRequest method.
5066//    req, resp := client.ListFunctionDefinitionVersionsRequest(params)
5067//
5068//    err := req.Send()
5069//    if err == nil { // resp is now filled
5070//        fmt.Println(resp)
5071//    }
5072//
5073// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListFunctionDefinitionVersions
5074func (c *Greengrass) ListFunctionDefinitionVersionsRequest(input *ListFunctionDefinitionVersionsInput) (req *request.Request, output *ListFunctionDefinitionVersionsOutput) {
5075	op := &request.Operation{
5076		Name:       opListFunctionDefinitionVersions,
5077		HTTPMethod: "GET",
5078		HTTPPath:   "/greengrass/definition/functions/{FunctionDefinitionId}/versions",
5079	}
5080
5081	if input == nil {
5082		input = &ListFunctionDefinitionVersionsInput{}
5083	}
5084
5085	output = &ListFunctionDefinitionVersionsOutput{}
5086	req = c.newRequest(op, input, output)
5087	return
5088}
5089
5090// ListFunctionDefinitionVersions API operation for AWS Greengrass.
5091//
5092// Lists the versions of a Lambda function definition.
5093//
5094// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5095// with awserr.Error's Code and Message methods to get detailed information about
5096// the error.
5097//
5098// See the AWS API reference guide for AWS Greengrass's
5099// API operation ListFunctionDefinitionVersions for usage and error information.
5100//
5101// Returned Error Codes:
5102//   * ErrCodeBadRequestException "BadRequestException"
5103//   General error information.
5104//
5105// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListFunctionDefinitionVersions
5106func (c *Greengrass) ListFunctionDefinitionVersions(input *ListFunctionDefinitionVersionsInput) (*ListFunctionDefinitionVersionsOutput, error) {
5107	req, out := c.ListFunctionDefinitionVersionsRequest(input)
5108	return out, req.Send()
5109}
5110
5111// ListFunctionDefinitionVersionsWithContext is the same as ListFunctionDefinitionVersions with the addition of
5112// the ability to pass a context and additional request options.
5113//
5114// See ListFunctionDefinitionVersions for details on how to use this API operation.
5115//
5116// The context must be non-nil and will be used for request cancellation. If
5117// the context is nil a panic will occur. In the future the SDK may create
5118// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5119// for more information on using Contexts.
5120func (c *Greengrass) ListFunctionDefinitionVersionsWithContext(ctx aws.Context, input *ListFunctionDefinitionVersionsInput, opts ...request.Option) (*ListFunctionDefinitionVersionsOutput, error) {
5121	req, out := c.ListFunctionDefinitionVersionsRequest(input)
5122	req.SetContext(ctx)
5123	req.ApplyOptions(opts...)
5124	return out, req.Send()
5125}
5126
5127const opListFunctionDefinitions = "ListFunctionDefinitions"
5128
5129// ListFunctionDefinitionsRequest generates a "aws/request.Request" representing the
5130// client's request for the ListFunctionDefinitions operation. The "output" return
5131// value will be populated with the request's response once the request completes
5132// successfully.
5133//
5134// Use "Send" method on the returned Request to send the API call to the service.
5135// the "output" return value is not valid until after Send returns without error.
5136//
5137// See ListFunctionDefinitions for more information on using the ListFunctionDefinitions
5138// API call, and error handling.
5139//
5140// This method is useful when you want to inject custom logic or configuration
5141// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5142//
5143//
5144//    // Example sending a request using the ListFunctionDefinitionsRequest method.
5145//    req, resp := client.ListFunctionDefinitionsRequest(params)
5146//
5147//    err := req.Send()
5148//    if err == nil { // resp is now filled
5149//        fmt.Println(resp)
5150//    }
5151//
5152// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListFunctionDefinitions
5153func (c *Greengrass) ListFunctionDefinitionsRequest(input *ListFunctionDefinitionsInput) (req *request.Request, output *ListFunctionDefinitionsOutput) {
5154	op := &request.Operation{
5155		Name:       opListFunctionDefinitions,
5156		HTTPMethod: "GET",
5157		HTTPPath:   "/greengrass/definition/functions",
5158	}
5159
5160	if input == nil {
5161		input = &ListFunctionDefinitionsInput{}
5162	}
5163
5164	output = &ListFunctionDefinitionsOutput{}
5165	req = c.newRequest(op, input, output)
5166	return
5167}
5168
5169// ListFunctionDefinitions API operation for AWS Greengrass.
5170//
5171// Retrieves a list of Lambda function definitions.
5172//
5173// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5174// with awserr.Error's Code and Message methods to get detailed information about
5175// the error.
5176//
5177// See the AWS API reference guide for AWS Greengrass's
5178// API operation ListFunctionDefinitions for usage and error information.
5179// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListFunctionDefinitions
5180func (c *Greengrass) ListFunctionDefinitions(input *ListFunctionDefinitionsInput) (*ListFunctionDefinitionsOutput, error) {
5181	req, out := c.ListFunctionDefinitionsRequest(input)
5182	return out, req.Send()
5183}
5184
5185// ListFunctionDefinitionsWithContext is the same as ListFunctionDefinitions with the addition of
5186// the ability to pass a context and additional request options.
5187//
5188// See ListFunctionDefinitions for details on how to use this API operation.
5189//
5190// The context must be non-nil and will be used for request cancellation. If
5191// the context is nil a panic will occur. In the future the SDK may create
5192// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5193// for more information on using Contexts.
5194func (c *Greengrass) ListFunctionDefinitionsWithContext(ctx aws.Context, input *ListFunctionDefinitionsInput, opts ...request.Option) (*ListFunctionDefinitionsOutput, error) {
5195	req, out := c.ListFunctionDefinitionsRequest(input)
5196	req.SetContext(ctx)
5197	req.ApplyOptions(opts...)
5198	return out, req.Send()
5199}
5200
5201const opListGroupCertificateAuthorities = "ListGroupCertificateAuthorities"
5202
5203// ListGroupCertificateAuthoritiesRequest generates a "aws/request.Request" representing the
5204// client's request for the ListGroupCertificateAuthorities operation. The "output" return
5205// value will be populated with the request's response once the request completes
5206// successfully.
5207//
5208// Use "Send" method on the returned Request to send the API call to the service.
5209// the "output" return value is not valid until after Send returns without error.
5210//
5211// See ListGroupCertificateAuthorities for more information on using the ListGroupCertificateAuthorities
5212// API call, and error handling.
5213//
5214// This method is useful when you want to inject custom logic or configuration
5215// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5216//
5217//
5218//    // Example sending a request using the ListGroupCertificateAuthoritiesRequest method.
5219//    req, resp := client.ListGroupCertificateAuthoritiesRequest(params)
5220//
5221//    err := req.Send()
5222//    if err == nil { // resp is now filled
5223//        fmt.Println(resp)
5224//    }
5225//
5226// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListGroupCertificateAuthorities
5227func (c *Greengrass) ListGroupCertificateAuthoritiesRequest(input *ListGroupCertificateAuthoritiesInput) (req *request.Request, output *ListGroupCertificateAuthoritiesOutput) {
5228	op := &request.Operation{
5229		Name:       opListGroupCertificateAuthorities,
5230		HTTPMethod: "GET",
5231		HTTPPath:   "/greengrass/groups/{GroupId}/certificateauthorities",
5232	}
5233
5234	if input == nil {
5235		input = &ListGroupCertificateAuthoritiesInput{}
5236	}
5237
5238	output = &ListGroupCertificateAuthoritiesOutput{}
5239	req = c.newRequest(op, input, output)
5240	return
5241}
5242
5243// ListGroupCertificateAuthorities API operation for AWS Greengrass.
5244//
5245// Retrieves the current CAs for a group.
5246//
5247// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5248// with awserr.Error's Code and Message methods to get detailed information about
5249// the error.
5250//
5251// See the AWS API reference guide for AWS Greengrass's
5252// API operation ListGroupCertificateAuthorities for usage and error information.
5253//
5254// Returned Error Codes:
5255//   * ErrCodeBadRequestException "BadRequestException"
5256//   General error information.
5257//
5258//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
5259//   General error information.
5260//
5261// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListGroupCertificateAuthorities
5262func (c *Greengrass) ListGroupCertificateAuthorities(input *ListGroupCertificateAuthoritiesInput) (*ListGroupCertificateAuthoritiesOutput, error) {
5263	req, out := c.ListGroupCertificateAuthoritiesRequest(input)
5264	return out, req.Send()
5265}
5266
5267// ListGroupCertificateAuthoritiesWithContext is the same as ListGroupCertificateAuthorities with the addition of
5268// the ability to pass a context and additional request options.
5269//
5270// See ListGroupCertificateAuthorities for details on how to use this API operation.
5271//
5272// The context must be non-nil and will be used for request cancellation. If
5273// the context is nil a panic will occur. In the future the SDK may create
5274// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5275// for more information on using Contexts.
5276func (c *Greengrass) ListGroupCertificateAuthoritiesWithContext(ctx aws.Context, input *ListGroupCertificateAuthoritiesInput, opts ...request.Option) (*ListGroupCertificateAuthoritiesOutput, error) {
5277	req, out := c.ListGroupCertificateAuthoritiesRequest(input)
5278	req.SetContext(ctx)
5279	req.ApplyOptions(opts...)
5280	return out, req.Send()
5281}
5282
5283const opListGroupVersions = "ListGroupVersions"
5284
5285// ListGroupVersionsRequest generates a "aws/request.Request" representing the
5286// client's request for the ListGroupVersions operation. The "output" return
5287// value will be populated with the request's response once the request completes
5288// successfully.
5289//
5290// Use "Send" method on the returned Request to send the API call to the service.
5291// the "output" return value is not valid until after Send returns without error.
5292//
5293// See ListGroupVersions for more information on using the ListGroupVersions
5294// API call, and error handling.
5295//
5296// This method is useful when you want to inject custom logic or configuration
5297// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5298//
5299//
5300//    // Example sending a request using the ListGroupVersionsRequest method.
5301//    req, resp := client.ListGroupVersionsRequest(params)
5302//
5303//    err := req.Send()
5304//    if err == nil { // resp is now filled
5305//        fmt.Println(resp)
5306//    }
5307//
5308// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListGroupVersions
5309func (c *Greengrass) ListGroupVersionsRequest(input *ListGroupVersionsInput) (req *request.Request, output *ListGroupVersionsOutput) {
5310	op := &request.Operation{
5311		Name:       opListGroupVersions,
5312		HTTPMethod: "GET",
5313		HTTPPath:   "/greengrass/groups/{GroupId}/versions",
5314	}
5315
5316	if input == nil {
5317		input = &ListGroupVersionsInput{}
5318	}
5319
5320	output = &ListGroupVersionsOutput{}
5321	req = c.newRequest(op, input, output)
5322	return
5323}
5324
5325// ListGroupVersions API operation for AWS Greengrass.
5326//
5327// Lists the versions of a group.
5328//
5329// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5330// with awserr.Error's Code and Message methods to get detailed information about
5331// the error.
5332//
5333// See the AWS API reference guide for AWS Greengrass's
5334// API operation ListGroupVersions for usage and error information.
5335//
5336// Returned Error Codes:
5337//   * ErrCodeBadRequestException "BadRequestException"
5338//   General error information.
5339//
5340// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListGroupVersions
5341func (c *Greengrass) ListGroupVersions(input *ListGroupVersionsInput) (*ListGroupVersionsOutput, error) {
5342	req, out := c.ListGroupVersionsRequest(input)
5343	return out, req.Send()
5344}
5345
5346// ListGroupVersionsWithContext is the same as ListGroupVersions with the addition of
5347// the ability to pass a context and additional request options.
5348//
5349// See ListGroupVersions for details on how to use this API operation.
5350//
5351// The context must be non-nil and will be used for request cancellation. If
5352// the context is nil a panic will occur. In the future the SDK may create
5353// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5354// for more information on using Contexts.
5355func (c *Greengrass) ListGroupVersionsWithContext(ctx aws.Context, input *ListGroupVersionsInput, opts ...request.Option) (*ListGroupVersionsOutput, error) {
5356	req, out := c.ListGroupVersionsRequest(input)
5357	req.SetContext(ctx)
5358	req.ApplyOptions(opts...)
5359	return out, req.Send()
5360}
5361
5362const opListGroups = "ListGroups"
5363
5364// ListGroupsRequest generates a "aws/request.Request" representing the
5365// client's request for the ListGroups operation. The "output" return
5366// value will be populated with the request's response once the request completes
5367// successfully.
5368//
5369// Use "Send" method on the returned Request to send the API call to the service.
5370// the "output" return value is not valid until after Send returns without error.
5371//
5372// See ListGroups for more information on using the ListGroups
5373// API call, and error handling.
5374//
5375// This method is useful when you want to inject custom logic or configuration
5376// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5377//
5378//
5379//    // Example sending a request using the ListGroupsRequest method.
5380//    req, resp := client.ListGroupsRequest(params)
5381//
5382//    err := req.Send()
5383//    if err == nil { // resp is now filled
5384//        fmt.Println(resp)
5385//    }
5386//
5387// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListGroups
5388func (c *Greengrass) ListGroupsRequest(input *ListGroupsInput) (req *request.Request, output *ListGroupsOutput) {
5389	op := &request.Operation{
5390		Name:       opListGroups,
5391		HTTPMethod: "GET",
5392		HTTPPath:   "/greengrass/groups",
5393	}
5394
5395	if input == nil {
5396		input = &ListGroupsInput{}
5397	}
5398
5399	output = &ListGroupsOutput{}
5400	req = c.newRequest(op, input, output)
5401	return
5402}
5403
5404// ListGroups API operation for AWS Greengrass.
5405//
5406// Retrieves a list of groups.
5407//
5408// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5409// with awserr.Error's Code and Message methods to get detailed information about
5410// the error.
5411//
5412// See the AWS API reference guide for AWS Greengrass's
5413// API operation ListGroups for usage and error information.
5414// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListGroups
5415func (c *Greengrass) ListGroups(input *ListGroupsInput) (*ListGroupsOutput, error) {
5416	req, out := c.ListGroupsRequest(input)
5417	return out, req.Send()
5418}
5419
5420// ListGroupsWithContext is the same as ListGroups with the addition of
5421// the ability to pass a context and additional request options.
5422//
5423// See ListGroups for details on how to use this API operation.
5424//
5425// The context must be non-nil and will be used for request cancellation. If
5426// the context is nil a panic will occur. In the future the SDK may create
5427// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5428// for more information on using Contexts.
5429func (c *Greengrass) ListGroupsWithContext(ctx aws.Context, input *ListGroupsInput, opts ...request.Option) (*ListGroupsOutput, error) {
5430	req, out := c.ListGroupsRequest(input)
5431	req.SetContext(ctx)
5432	req.ApplyOptions(opts...)
5433	return out, req.Send()
5434}
5435
5436const opListLoggerDefinitionVersions = "ListLoggerDefinitionVersions"
5437
5438// ListLoggerDefinitionVersionsRequest generates a "aws/request.Request" representing the
5439// client's request for the ListLoggerDefinitionVersions operation. The "output" return
5440// value will be populated with the request's response once the request completes
5441// successfully.
5442//
5443// Use "Send" method on the returned Request to send the API call to the service.
5444// the "output" return value is not valid until after Send returns without error.
5445//
5446// See ListLoggerDefinitionVersions for more information on using the ListLoggerDefinitionVersions
5447// API call, and error handling.
5448//
5449// This method is useful when you want to inject custom logic or configuration
5450// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5451//
5452//
5453//    // Example sending a request using the ListLoggerDefinitionVersionsRequest method.
5454//    req, resp := client.ListLoggerDefinitionVersionsRequest(params)
5455//
5456//    err := req.Send()
5457//    if err == nil { // resp is now filled
5458//        fmt.Println(resp)
5459//    }
5460//
5461// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListLoggerDefinitionVersions
5462func (c *Greengrass) ListLoggerDefinitionVersionsRequest(input *ListLoggerDefinitionVersionsInput) (req *request.Request, output *ListLoggerDefinitionVersionsOutput) {
5463	op := &request.Operation{
5464		Name:       opListLoggerDefinitionVersions,
5465		HTTPMethod: "GET",
5466		HTTPPath:   "/greengrass/definition/loggers/{LoggerDefinitionId}/versions",
5467	}
5468
5469	if input == nil {
5470		input = &ListLoggerDefinitionVersionsInput{}
5471	}
5472
5473	output = &ListLoggerDefinitionVersionsOutput{}
5474	req = c.newRequest(op, input, output)
5475	return
5476}
5477
5478// ListLoggerDefinitionVersions API operation for AWS Greengrass.
5479//
5480// Lists the versions of a logger definition.
5481//
5482// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5483// with awserr.Error's Code and Message methods to get detailed information about
5484// the error.
5485//
5486// See the AWS API reference guide for AWS Greengrass's
5487// API operation ListLoggerDefinitionVersions for usage and error information.
5488//
5489// Returned Error Codes:
5490//   * ErrCodeBadRequestException "BadRequestException"
5491//   General error information.
5492//
5493// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListLoggerDefinitionVersions
5494func (c *Greengrass) ListLoggerDefinitionVersions(input *ListLoggerDefinitionVersionsInput) (*ListLoggerDefinitionVersionsOutput, error) {
5495	req, out := c.ListLoggerDefinitionVersionsRequest(input)
5496	return out, req.Send()
5497}
5498
5499// ListLoggerDefinitionVersionsWithContext is the same as ListLoggerDefinitionVersions with the addition of
5500// the ability to pass a context and additional request options.
5501//
5502// See ListLoggerDefinitionVersions for details on how to use this API operation.
5503//
5504// The context must be non-nil and will be used for request cancellation. If
5505// the context is nil a panic will occur. In the future the SDK may create
5506// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5507// for more information on using Contexts.
5508func (c *Greengrass) ListLoggerDefinitionVersionsWithContext(ctx aws.Context, input *ListLoggerDefinitionVersionsInput, opts ...request.Option) (*ListLoggerDefinitionVersionsOutput, error) {
5509	req, out := c.ListLoggerDefinitionVersionsRequest(input)
5510	req.SetContext(ctx)
5511	req.ApplyOptions(opts...)
5512	return out, req.Send()
5513}
5514
5515const opListLoggerDefinitions = "ListLoggerDefinitions"
5516
5517// ListLoggerDefinitionsRequest generates a "aws/request.Request" representing the
5518// client's request for the ListLoggerDefinitions operation. The "output" return
5519// value will be populated with the request's response once the request completes
5520// successfully.
5521//
5522// Use "Send" method on the returned Request to send the API call to the service.
5523// the "output" return value is not valid until after Send returns without error.
5524//
5525// See ListLoggerDefinitions for more information on using the ListLoggerDefinitions
5526// API call, and error handling.
5527//
5528// This method is useful when you want to inject custom logic or configuration
5529// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5530//
5531//
5532//    // Example sending a request using the ListLoggerDefinitionsRequest method.
5533//    req, resp := client.ListLoggerDefinitionsRequest(params)
5534//
5535//    err := req.Send()
5536//    if err == nil { // resp is now filled
5537//        fmt.Println(resp)
5538//    }
5539//
5540// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListLoggerDefinitions
5541func (c *Greengrass) ListLoggerDefinitionsRequest(input *ListLoggerDefinitionsInput) (req *request.Request, output *ListLoggerDefinitionsOutput) {
5542	op := &request.Operation{
5543		Name:       opListLoggerDefinitions,
5544		HTTPMethod: "GET",
5545		HTTPPath:   "/greengrass/definition/loggers",
5546	}
5547
5548	if input == nil {
5549		input = &ListLoggerDefinitionsInput{}
5550	}
5551
5552	output = &ListLoggerDefinitionsOutput{}
5553	req = c.newRequest(op, input, output)
5554	return
5555}
5556
5557// ListLoggerDefinitions API operation for AWS Greengrass.
5558//
5559// Retrieves a list of logger definitions.
5560//
5561// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5562// with awserr.Error's Code and Message methods to get detailed information about
5563// the error.
5564//
5565// See the AWS API reference guide for AWS Greengrass's
5566// API operation ListLoggerDefinitions for usage and error information.
5567// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListLoggerDefinitions
5568func (c *Greengrass) ListLoggerDefinitions(input *ListLoggerDefinitionsInput) (*ListLoggerDefinitionsOutput, error) {
5569	req, out := c.ListLoggerDefinitionsRequest(input)
5570	return out, req.Send()
5571}
5572
5573// ListLoggerDefinitionsWithContext is the same as ListLoggerDefinitions with the addition of
5574// the ability to pass a context and additional request options.
5575//
5576// See ListLoggerDefinitions for details on how to use this API operation.
5577//
5578// The context must be non-nil and will be used for request cancellation. If
5579// the context is nil a panic will occur. In the future the SDK may create
5580// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5581// for more information on using Contexts.
5582func (c *Greengrass) ListLoggerDefinitionsWithContext(ctx aws.Context, input *ListLoggerDefinitionsInput, opts ...request.Option) (*ListLoggerDefinitionsOutput, error) {
5583	req, out := c.ListLoggerDefinitionsRequest(input)
5584	req.SetContext(ctx)
5585	req.ApplyOptions(opts...)
5586	return out, req.Send()
5587}
5588
5589const opListResourceDefinitionVersions = "ListResourceDefinitionVersions"
5590
5591// ListResourceDefinitionVersionsRequest generates a "aws/request.Request" representing the
5592// client's request for the ListResourceDefinitionVersions operation. The "output" return
5593// value will be populated with the request's response once the request completes
5594// successfully.
5595//
5596// Use "Send" method on the returned Request to send the API call to the service.
5597// the "output" return value is not valid until after Send returns without error.
5598//
5599// See ListResourceDefinitionVersions for more information on using the ListResourceDefinitionVersions
5600// API call, and error handling.
5601//
5602// This method is useful when you want to inject custom logic or configuration
5603// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5604//
5605//
5606//    // Example sending a request using the ListResourceDefinitionVersionsRequest method.
5607//    req, resp := client.ListResourceDefinitionVersionsRequest(params)
5608//
5609//    err := req.Send()
5610//    if err == nil { // resp is now filled
5611//        fmt.Println(resp)
5612//    }
5613//
5614// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListResourceDefinitionVersions
5615func (c *Greengrass) ListResourceDefinitionVersionsRequest(input *ListResourceDefinitionVersionsInput) (req *request.Request, output *ListResourceDefinitionVersionsOutput) {
5616	op := &request.Operation{
5617		Name:       opListResourceDefinitionVersions,
5618		HTTPMethod: "GET",
5619		HTTPPath:   "/greengrass/definition/resources/{ResourceDefinitionId}/versions",
5620	}
5621
5622	if input == nil {
5623		input = &ListResourceDefinitionVersionsInput{}
5624	}
5625
5626	output = &ListResourceDefinitionVersionsOutput{}
5627	req = c.newRequest(op, input, output)
5628	return
5629}
5630
5631// ListResourceDefinitionVersions API operation for AWS Greengrass.
5632//
5633// Lists the versions of a resource definition.
5634//
5635// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5636// with awserr.Error's Code and Message methods to get detailed information about
5637// the error.
5638//
5639// See the AWS API reference guide for AWS Greengrass's
5640// API operation ListResourceDefinitionVersions for usage and error information.
5641//
5642// Returned Error Codes:
5643//   * ErrCodeBadRequestException "BadRequestException"
5644//   General error information.
5645//
5646// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListResourceDefinitionVersions
5647func (c *Greengrass) ListResourceDefinitionVersions(input *ListResourceDefinitionVersionsInput) (*ListResourceDefinitionVersionsOutput, error) {
5648	req, out := c.ListResourceDefinitionVersionsRequest(input)
5649	return out, req.Send()
5650}
5651
5652// ListResourceDefinitionVersionsWithContext is the same as ListResourceDefinitionVersions with the addition of
5653// the ability to pass a context and additional request options.
5654//
5655// See ListResourceDefinitionVersions for details on how to use this API operation.
5656//
5657// The context must be non-nil and will be used for request cancellation. If
5658// the context is nil a panic will occur. In the future the SDK may create
5659// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5660// for more information on using Contexts.
5661func (c *Greengrass) ListResourceDefinitionVersionsWithContext(ctx aws.Context, input *ListResourceDefinitionVersionsInput, opts ...request.Option) (*ListResourceDefinitionVersionsOutput, error) {
5662	req, out := c.ListResourceDefinitionVersionsRequest(input)
5663	req.SetContext(ctx)
5664	req.ApplyOptions(opts...)
5665	return out, req.Send()
5666}
5667
5668const opListResourceDefinitions = "ListResourceDefinitions"
5669
5670// ListResourceDefinitionsRequest generates a "aws/request.Request" representing the
5671// client's request for the ListResourceDefinitions operation. The "output" return
5672// value will be populated with the request's response once the request completes
5673// successfully.
5674//
5675// Use "Send" method on the returned Request to send the API call to the service.
5676// the "output" return value is not valid until after Send returns without error.
5677//
5678// See ListResourceDefinitions for more information on using the ListResourceDefinitions
5679// API call, and error handling.
5680//
5681// This method is useful when you want to inject custom logic or configuration
5682// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5683//
5684//
5685//    // Example sending a request using the ListResourceDefinitionsRequest method.
5686//    req, resp := client.ListResourceDefinitionsRequest(params)
5687//
5688//    err := req.Send()
5689//    if err == nil { // resp is now filled
5690//        fmt.Println(resp)
5691//    }
5692//
5693// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListResourceDefinitions
5694func (c *Greengrass) ListResourceDefinitionsRequest(input *ListResourceDefinitionsInput) (req *request.Request, output *ListResourceDefinitionsOutput) {
5695	op := &request.Operation{
5696		Name:       opListResourceDefinitions,
5697		HTTPMethod: "GET",
5698		HTTPPath:   "/greengrass/definition/resources",
5699	}
5700
5701	if input == nil {
5702		input = &ListResourceDefinitionsInput{}
5703	}
5704
5705	output = &ListResourceDefinitionsOutput{}
5706	req = c.newRequest(op, input, output)
5707	return
5708}
5709
5710// ListResourceDefinitions API operation for AWS Greengrass.
5711//
5712// Retrieves a list of resource definitions.
5713//
5714// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5715// with awserr.Error's Code and Message methods to get detailed information about
5716// the error.
5717//
5718// See the AWS API reference guide for AWS Greengrass's
5719// API operation ListResourceDefinitions for usage and error information.
5720// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListResourceDefinitions
5721func (c *Greengrass) ListResourceDefinitions(input *ListResourceDefinitionsInput) (*ListResourceDefinitionsOutput, error) {
5722	req, out := c.ListResourceDefinitionsRequest(input)
5723	return out, req.Send()
5724}
5725
5726// ListResourceDefinitionsWithContext is the same as ListResourceDefinitions with the addition of
5727// the ability to pass a context and additional request options.
5728//
5729// See ListResourceDefinitions for details on how to use this API operation.
5730//
5731// The context must be non-nil and will be used for request cancellation. If
5732// the context is nil a panic will occur. In the future the SDK may create
5733// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5734// for more information on using Contexts.
5735func (c *Greengrass) ListResourceDefinitionsWithContext(ctx aws.Context, input *ListResourceDefinitionsInput, opts ...request.Option) (*ListResourceDefinitionsOutput, error) {
5736	req, out := c.ListResourceDefinitionsRequest(input)
5737	req.SetContext(ctx)
5738	req.ApplyOptions(opts...)
5739	return out, req.Send()
5740}
5741
5742const opListSubscriptionDefinitionVersions = "ListSubscriptionDefinitionVersions"
5743
5744// ListSubscriptionDefinitionVersionsRequest generates a "aws/request.Request" representing the
5745// client's request for the ListSubscriptionDefinitionVersions operation. The "output" return
5746// value will be populated with the request's response once the request completes
5747// successfully.
5748//
5749// Use "Send" method on the returned Request to send the API call to the service.
5750// the "output" return value is not valid until after Send returns without error.
5751//
5752// See ListSubscriptionDefinitionVersions for more information on using the ListSubscriptionDefinitionVersions
5753// API call, and error handling.
5754//
5755// This method is useful when you want to inject custom logic or configuration
5756// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5757//
5758//
5759//    // Example sending a request using the ListSubscriptionDefinitionVersionsRequest method.
5760//    req, resp := client.ListSubscriptionDefinitionVersionsRequest(params)
5761//
5762//    err := req.Send()
5763//    if err == nil { // resp is now filled
5764//        fmt.Println(resp)
5765//    }
5766//
5767// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListSubscriptionDefinitionVersions
5768func (c *Greengrass) ListSubscriptionDefinitionVersionsRequest(input *ListSubscriptionDefinitionVersionsInput) (req *request.Request, output *ListSubscriptionDefinitionVersionsOutput) {
5769	op := &request.Operation{
5770		Name:       opListSubscriptionDefinitionVersions,
5771		HTTPMethod: "GET",
5772		HTTPPath:   "/greengrass/definition/subscriptions/{SubscriptionDefinitionId}/versions",
5773	}
5774
5775	if input == nil {
5776		input = &ListSubscriptionDefinitionVersionsInput{}
5777	}
5778
5779	output = &ListSubscriptionDefinitionVersionsOutput{}
5780	req = c.newRequest(op, input, output)
5781	return
5782}
5783
5784// ListSubscriptionDefinitionVersions API operation for AWS Greengrass.
5785//
5786// Lists the versions of a subscription definition.
5787//
5788// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5789// with awserr.Error's Code and Message methods to get detailed information about
5790// the error.
5791//
5792// See the AWS API reference guide for AWS Greengrass's
5793// API operation ListSubscriptionDefinitionVersions for usage and error information.
5794//
5795// Returned Error Codes:
5796//   * ErrCodeBadRequestException "BadRequestException"
5797//   General error information.
5798//
5799// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListSubscriptionDefinitionVersions
5800func (c *Greengrass) ListSubscriptionDefinitionVersions(input *ListSubscriptionDefinitionVersionsInput) (*ListSubscriptionDefinitionVersionsOutput, error) {
5801	req, out := c.ListSubscriptionDefinitionVersionsRequest(input)
5802	return out, req.Send()
5803}
5804
5805// ListSubscriptionDefinitionVersionsWithContext is the same as ListSubscriptionDefinitionVersions with the addition of
5806// the ability to pass a context and additional request options.
5807//
5808// See ListSubscriptionDefinitionVersions for details on how to use this API operation.
5809//
5810// The context must be non-nil and will be used for request cancellation. If
5811// the context is nil a panic will occur. In the future the SDK may create
5812// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5813// for more information on using Contexts.
5814func (c *Greengrass) ListSubscriptionDefinitionVersionsWithContext(ctx aws.Context, input *ListSubscriptionDefinitionVersionsInput, opts ...request.Option) (*ListSubscriptionDefinitionVersionsOutput, error) {
5815	req, out := c.ListSubscriptionDefinitionVersionsRequest(input)
5816	req.SetContext(ctx)
5817	req.ApplyOptions(opts...)
5818	return out, req.Send()
5819}
5820
5821const opListSubscriptionDefinitions = "ListSubscriptionDefinitions"
5822
5823// ListSubscriptionDefinitionsRequest generates a "aws/request.Request" representing the
5824// client's request for the ListSubscriptionDefinitions operation. The "output" return
5825// value will be populated with the request's response once the request completes
5826// successfully.
5827//
5828// Use "Send" method on the returned Request to send the API call to the service.
5829// the "output" return value is not valid until after Send returns without error.
5830//
5831// See ListSubscriptionDefinitions for more information on using the ListSubscriptionDefinitions
5832// API call, and error handling.
5833//
5834// This method is useful when you want to inject custom logic or configuration
5835// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5836//
5837//
5838//    // Example sending a request using the ListSubscriptionDefinitionsRequest method.
5839//    req, resp := client.ListSubscriptionDefinitionsRequest(params)
5840//
5841//    err := req.Send()
5842//    if err == nil { // resp is now filled
5843//        fmt.Println(resp)
5844//    }
5845//
5846// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListSubscriptionDefinitions
5847func (c *Greengrass) ListSubscriptionDefinitionsRequest(input *ListSubscriptionDefinitionsInput) (req *request.Request, output *ListSubscriptionDefinitionsOutput) {
5848	op := &request.Operation{
5849		Name:       opListSubscriptionDefinitions,
5850		HTTPMethod: "GET",
5851		HTTPPath:   "/greengrass/definition/subscriptions",
5852	}
5853
5854	if input == nil {
5855		input = &ListSubscriptionDefinitionsInput{}
5856	}
5857
5858	output = &ListSubscriptionDefinitionsOutput{}
5859	req = c.newRequest(op, input, output)
5860	return
5861}
5862
5863// ListSubscriptionDefinitions API operation for AWS Greengrass.
5864//
5865// Retrieves a list of subscription definitions.
5866//
5867// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5868// with awserr.Error's Code and Message methods to get detailed information about
5869// the error.
5870//
5871// See the AWS API reference guide for AWS Greengrass's
5872// API operation ListSubscriptionDefinitions for usage and error information.
5873// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListSubscriptionDefinitions
5874func (c *Greengrass) ListSubscriptionDefinitions(input *ListSubscriptionDefinitionsInput) (*ListSubscriptionDefinitionsOutput, error) {
5875	req, out := c.ListSubscriptionDefinitionsRequest(input)
5876	return out, req.Send()
5877}
5878
5879// ListSubscriptionDefinitionsWithContext is the same as ListSubscriptionDefinitions with the addition of
5880// the ability to pass a context and additional request options.
5881//
5882// See ListSubscriptionDefinitions for details on how to use this API operation.
5883//
5884// The context must be non-nil and will be used for request cancellation. If
5885// the context is nil a panic will occur. In the future the SDK may create
5886// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5887// for more information on using Contexts.
5888func (c *Greengrass) ListSubscriptionDefinitionsWithContext(ctx aws.Context, input *ListSubscriptionDefinitionsInput, opts ...request.Option) (*ListSubscriptionDefinitionsOutput, error) {
5889	req, out := c.ListSubscriptionDefinitionsRequest(input)
5890	req.SetContext(ctx)
5891	req.ApplyOptions(opts...)
5892	return out, req.Send()
5893}
5894
5895const opListTagsForResource = "ListTagsForResource"
5896
5897// ListTagsForResourceRequest generates a "aws/request.Request" representing the
5898// client's request for the ListTagsForResource operation. The "output" return
5899// value will be populated with the request's response once the request completes
5900// successfully.
5901//
5902// Use "Send" method on the returned Request to send the API call to the service.
5903// the "output" return value is not valid until after Send returns without error.
5904//
5905// See ListTagsForResource for more information on using the ListTagsForResource
5906// API call, and error handling.
5907//
5908// This method is useful when you want to inject custom logic or configuration
5909// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5910//
5911//
5912//    // Example sending a request using the ListTagsForResourceRequest method.
5913//    req, resp := client.ListTagsForResourceRequest(params)
5914//
5915//    err := req.Send()
5916//    if err == nil { // resp is now filled
5917//        fmt.Println(resp)
5918//    }
5919//
5920// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListTagsForResource
5921func (c *Greengrass) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
5922	op := &request.Operation{
5923		Name:       opListTagsForResource,
5924		HTTPMethod: "GET",
5925		HTTPPath:   "/tags/{resource-arn}",
5926	}
5927
5928	if input == nil {
5929		input = &ListTagsForResourceInput{}
5930	}
5931
5932	output = &ListTagsForResourceOutput{}
5933	req = c.newRequest(op, input, output)
5934	return
5935}
5936
5937// ListTagsForResource API operation for AWS Greengrass.
5938//
5939// Retrieves a list of resource tags for a resource arn.
5940//
5941// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5942// with awserr.Error's Code and Message methods to get detailed information about
5943// the error.
5944//
5945// See the AWS API reference guide for AWS Greengrass's
5946// API operation ListTagsForResource for usage and error information.
5947//
5948// Returned Error Codes:
5949//   * ErrCodeBadRequestException "BadRequestException"
5950//   General error information.
5951//
5952// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ListTagsForResource
5953func (c *Greengrass) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
5954	req, out := c.ListTagsForResourceRequest(input)
5955	return out, req.Send()
5956}
5957
5958// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
5959// the ability to pass a context and additional request options.
5960//
5961// See ListTagsForResource for details on how to use this API operation.
5962//
5963// The context must be non-nil and will be used for request cancellation. If
5964// the context is nil a panic will occur. In the future the SDK may create
5965// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5966// for more information on using Contexts.
5967func (c *Greengrass) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
5968	req, out := c.ListTagsForResourceRequest(input)
5969	req.SetContext(ctx)
5970	req.ApplyOptions(opts...)
5971	return out, req.Send()
5972}
5973
5974const opResetDeployments = "ResetDeployments"
5975
5976// ResetDeploymentsRequest generates a "aws/request.Request" representing the
5977// client's request for the ResetDeployments operation. The "output" return
5978// value will be populated with the request's response once the request completes
5979// successfully.
5980//
5981// Use "Send" method on the returned Request to send the API call to the service.
5982// the "output" return value is not valid until after Send returns without error.
5983//
5984// See ResetDeployments for more information on using the ResetDeployments
5985// API call, and error handling.
5986//
5987// This method is useful when you want to inject custom logic or configuration
5988// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5989//
5990//
5991//    // Example sending a request using the ResetDeploymentsRequest method.
5992//    req, resp := client.ResetDeploymentsRequest(params)
5993//
5994//    err := req.Send()
5995//    if err == nil { // resp is now filled
5996//        fmt.Println(resp)
5997//    }
5998//
5999// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ResetDeployments
6000func (c *Greengrass) ResetDeploymentsRequest(input *ResetDeploymentsInput) (req *request.Request, output *ResetDeploymentsOutput) {
6001	op := &request.Operation{
6002		Name:       opResetDeployments,
6003		HTTPMethod: "POST",
6004		HTTPPath:   "/greengrass/groups/{GroupId}/deployments/$reset",
6005	}
6006
6007	if input == nil {
6008		input = &ResetDeploymentsInput{}
6009	}
6010
6011	output = &ResetDeploymentsOutput{}
6012	req = c.newRequest(op, input, output)
6013	return
6014}
6015
6016// ResetDeployments API operation for AWS Greengrass.
6017//
6018// Resets a group's deployments.
6019//
6020// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6021// with awserr.Error's Code and Message methods to get detailed information about
6022// the error.
6023//
6024// See the AWS API reference guide for AWS Greengrass's
6025// API operation ResetDeployments for usage and error information.
6026//
6027// Returned Error Codes:
6028//   * ErrCodeBadRequestException "BadRequestException"
6029//   General error information.
6030//
6031// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/ResetDeployments
6032func (c *Greengrass) ResetDeployments(input *ResetDeploymentsInput) (*ResetDeploymentsOutput, error) {
6033	req, out := c.ResetDeploymentsRequest(input)
6034	return out, req.Send()
6035}
6036
6037// ResetDeploymentsWithContext is the same as ResetDeployments with the addition of
6038// the ability to pass a context and additional request options.
6039//
6040// See ResetDeployments for details on how to use this API operation.
6041//
6042// The context must be non-nil and will be used for request cancellation. If
6043// the context is nil a panic will occur. In the future the SDK may create
6044// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6045// for more information on using Contexts.
6046func (c *Greengrass) ResetDeploymentsWithContext(ctx aws.Context, input *ResetDeploymentsInput, opts ...request.Option) (*ResetDeploymentsOutput, error) {
6047	req, out := c.ResetDeploymentsRequest(input)
6048	req.SetContext(ctx)
6049	req.ApplyOptions(opts...)
6050	return out, req.Send()
6051}
6052
6053const opStartBulkDeployment = "StartBulkDeployment"
6054
6055// StartBulkDeploymentRequest generates a "aws/request.Request" representing the
6056// client's request for the StartBulkDeployment operation. The "output" return
6057// value will be populated with the request's response once the request completes
6058// successfully.
6059//
6060// Use "Send" method on the returned Request to send the API call to the service.
6061// the "output" return value is not valid until after Send returns without error.
6062//
6063// See StartBulkDeployment for more information on using the StartBulkDeployment
6064// API call, and error handling.
6065//
6066// This method is useful when you want to inject custom logic or configuration
6067// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6068//
6069//
6070//    // Example sending a request using the StartBulkDeploymentRequest method.
6071//    req, resp := client.StartBulkDeploymentRequest(params)
6072//
6073//    err := req.Send()
6074//    if err == nil { // resp is now filled
6075//        fmt.Println(resp)
6076//    }
6077//
6078// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/StartBulkDeployment
6079func (c *Greengrass) StartBulkDeploymentRequest(input *StartBulkDeploymentInput) (req *request.Request, output *StartBulkDeploymentOutput) {
6080	op := &request.Operation{
6081		Name:       opStartBulkDeployment,
6082		HTTPMethod: "POST",
6083		HTTPPath:   "/greengrass/bulk/deployments",
6084	}
6085
6086	if input == nil {
6087		input = &StartBulkDeploymentInput{}
6088	}
6089
6090	output = &StartBulkDeploymentOutput{}
6091	req = c.newRequest(op, input, output)
6092	return
6093}
6094
6095// StartBulkDeployment API operation for AWS Greengrass.
6096//
6097// Deploys multiple groups in one operation. This action starts the bulk deployment
6098// of a specified set of group versions. Each group version deployment will
6099// be triggered with an adaptive rate that has a fixed upper limit. We recommend
6100// that you include an ''X-Amzn-Client-Token'' token in every ''StartBulkDeployment''
6101// request. These requests are idempotent with respect to the token and the
6102// request parameters.
6103//
6104// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6105// with awserr.Error's Code and Message methods to get detailed information about
6106// the error.
6107//
6108// See the AWS API reference guide for AWS Greengrass's
6109// API operation StartBulkDeployment for usage and error information.
6110//
6111// Returned Error Codes:
6112//   * ErrCodeBadRequestException "BadRequestException"
6113//   General error information.
6114//
6115// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/StartBulkDeployment
6116func (c *Greengrass) StartBulkDeployment(input *StartBulkDeploymentInput) (*StartBulkDeploymentOutput, error) {
6117	req, out := c.StartBulkDeploymentRequest(input)
6118	return out, req.Send()
6119}
6120
6121// StartBulkDeploymentWithContext is the same as StartBulkDeployment with the addition of
6122// the ability to pass a context and additional request options.
6123//
6124// See StartBulkDeployment for details on how to use this API operation.
6125//
6126// The context must be non-nil and will be used for request cancellation. If
6127// the context is nil a panic will occur. In the future the SDK may create
6128// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6129// for more information on using Contexts.
6130func (c *Greengrass) StartBulkDeploymentWithContext(ctx aws.Context, input *StartBulkDeploymentInput, opts ...request.Option) (*StartBulkDeploymentOutput, error) {
6131	req, out := c.StartBulkDeploymentRequest(input)
6132	req.SetContext(ctx)
6133	req.ApplyOptions(opts...)
6134	return out, req.Send()
6135}
6136
6137const opStopBulkDeployment = "StopBulkDeployment"
6138
6139// StopBulkDeploymentRequest generates a "aws/request.Request" representing the
6140// client's request for the StopBulkDeployment operation. The "output" return
6141// value will be populated with the request's response once the request completes
6142// successfully.
6143//
6144// Use "Send" method on the returned Request to send the API call to the service.
6145// the "output" return value is not valid until after Send returns without error.
6146//
6147// See StopBulkDeployment for more information on using the StopBulkDeployment
6148// API call, and error handling.
6149//
6150// This method is useful when you want to inject custom logic or configuration
6151// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6152//
6153//
6154//    // Example sending a request using the StopBulkDeploymentRequest method.
6155//    req, resp := client.StopBulkDeploymentRequest(params)
6156//
6157//    err := req.Send()
6158//    if err == nil { // resp is now filled
6159//        fmt.Println(resp)
6160//    }
6161//
6162// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/StopBulkDeployment
6163func (c *Greengrass) StopBulkDeploymentRequest(input *StopBulkDeploymentInput) (req *request.Request, output *StopBulkDeploymentOutput) {
6164	op := &request.Operation{
6165		Name:       opStopBulkDeployment,
6166		HTTPMethod: "PUT",
6167		HTTPPath:   "/greengrass/bulk/deployments/{BulkDeploymentId}/$stop",
6168	}
6169
6170	if input == nil {
6171		input = &StopBulkDeploymentInput{}
6172	}
6173
6174	output = &StopBulkDeploymentOutput{}
6175	req = c.newRequest(op, input, output)
6176	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6177	return
6178}
6179
6180// StopBulkDeployment API operation for AWS Greengrass.
6181//
6182// Stops the execution of a bulk deployment. This action returns a status of
6183// ''Stopping'' until the deployment is stopped. You cannot start a new bulk
6184// deployment while a previous deployment is in the ''Stopping'' state. This
6185// action doesn't rollback completed deployments or cancel pending deployments.
6186//
6187// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6188// with awserr.Error's Code and Message methods to get detailed information about
6189// the error.
6190//
6191// See the AWS API reference guide for AWS Greengrass's
6192// API operation StopBulkDeployment for usage and error information.
6193//
6194// Returned Error Codes:
6195//   * ErrCodeBadRequestException "BadRequestException"
6196//   General error information.
6197//
6198// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/StopBulkDeployment
6199func (c *Greengrass) StopBulkDeployment(input *StopBulkDeploymentInput) (*StopBulkDeploymentOutput, error) {
6200	req, out := c.StopBulkDeploymentRequest(input)
6201	return out, req.Send()
6202}
6203
6204// StopBulkDeploymentWithContext is the same as StopBulkDeployment with the addition of
6205// the ability to pass a context and additional request options.
6206//
6207// See StopBulkDeployment for details on how to use this API operation.
6208//
6209// The context must be non-nil and will be used for request cancellation. If
6210// the context is nil a panic will occur. In the future the SDK may create
6211// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6212// for more information on using Contexts.
6213func (c *Greengrass) StopBulkDeploymentWithContext(ctx aws.Context, input *StopBulkDeploymentInput, opts ...request.Option) (*StopBulkDeploymentOutput, error) {
6214	req, out := c.StopBulkDeploymentRequest(input)
6215	req.SetContext(ctx)
6216	req.ApplyOptions(opts...)
6217	return out, req.Send()
6218}
6219
6220const opTagResource = "TagResource"
6221
6222// TagResourceRequest generates a "aws/request.Request" representing the
6223// client's request for the TagResource operation. The "output" return
6224// value will be populated with the request's response once the request completes
6225// successfully.
6226//
6227// Use "Send" method on the returned Request to send the API call to the service.
6228// the "output" return value is not valid until after Send returns without error.
6229//
6230// See TagResource for more information on using the TagResource
6231// API call, and error handling.
6232//
6233// This method is useful when you want to inject custom logic or configuration
6234// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6235//
6236//
6237//    // Example sending a request using the TagResourceRequest method.
6238//    req, resp := client.TagResourceRequest(params)
6239//
6240//    err := req.Send()
6241//    if err == nil { // resp is now filled
6242//        fmt.Println(resp)
6243//    }
6244//
6245// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/TagResource
6246func (c *Greengrass) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
6247	op := &request.Operation{
6248		Name:       opTagResource,
6249		HTTPMethod: "POST",
6250		HTTPPath:   "/tags/{resource-arn}",
6251	}
6252
6253	if input == nil {
6254		input = &TagResourceInput{}
6255	}
6256
6257	output = &TagResourceOutput{}
6258	req = c.newRequest(op, input, output)
6259	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6260	return
6261}
6262
6263// TagResource API operation for AWS Greengrass.
6264//
6265// Add resource tags to a Greengrass Resource. Valid resources are Group, Connector,
6266// Core, Device, Function, Logger, Subscription, and Resource Defintions, and
6267// also BulkDeploymentIds.
6268//
6269// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6270// with awserr.Error's Code and Message methods to get detailed information about
6271// the error.
6272//
6273// See the AWS API reference guide for AWS Greengrass's
6274// API operation TagResource for usage and error information.
6275//
6276// Returned Error Codes:
6277//   * ErrCodeBadRequestException "BadRequestException"
6278//   General error information.
6279//
6280// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/TagResource
6281func (c *Greengrass) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
6282	req, out := c.TagResourceRequest(input)
6283	return out, req.Send()
6284}
6285
6286// TagResourceWithContext is the same as TagResource with the addition of
6287// the ability to pass a context and additional request options.
6288//
6289// See TagResource for details on how to use this API operation.
6290//
6291// The context must be non-nil and will be used for request cancellation. If
6292// the context is nil a panic will occur. In the future the SDK may create
6293// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6294// for more information on using Contexts.
6295func (c *Greengrass) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
6296	req, out := c.TagResourceRequest(input)
6297	req.SetContext(ctx)
6298	req.ApplyOptions(opts...)
6299	return out, req.Send()
6300}
6301
6302const opUntagResource = "UntagResource"
6303
6304// UntagResourceRequest generates a "aws/request.Request" representing the
6305// client's request for the UntagResource operation. The "output" return
6306// value will be populated with the request's response once the request completes
6307// successfully.
6308//
6309// Use "Send" method on the returned Request to send the API call to the service.
6310// the "output" return value is not valid until after Send returns without error.
6311//
6312// See UntagResource for more information on using the UntagResource
6313// API call, and error handling.
6314//
6315// This method is useful when you want to inject custom logic or configuration
6316// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6317//
6318//
6319//    // Example sending a request using the UntagResourceRequest method.
6320//    req, resp := client.UntagResourceRequest(params)
6321//
6322//    err := req.Send()
6323//    if err == nil { // resp is now filled
6324//        fmt.Println(resp)
6325//    }
6326//
6327// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/UntagResource
6328func (c *Greengrass) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
6329	op := &request.Operation{
6330		Name:       opUntagResource,
6331		HTTPMethod: "DELETE",
6332		HTTPPath:   "/tags/{resource-arn}",
6333	}
6334
6335	if input == nil {
6336		input = &UntagResourceInput{}
6337	}
6338
6339	output = &UntagResourceOutput{}
6340	req = c.newRequest(op, input, output)
6341	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6342	return
6343}
6344
6345// UntagResource API operation for AWS Greengrass.
6346//
6347// Remove resource tags from a Greengrass Resource.
6348//
6349// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6350// with awserr.Error's Code and Message methods to get detailed information about
6351// the error.
6352//
6353// See the AWS API reference guide for AWS Greengrass's
6354// API operation UntagResource for usage and error information.
6355//
6356// Returned Error Codes:
6357//   * ErrCodeBadRequestException "BadRequestException"
6358//   General error information.
6359//
6360// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/UntagResource
6361func (c *Greengrass) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
6362	req, out := c.UntagResourceRequest(input)
6363	return out, req.Send()
6364}
6365
6366// UntagResourceWithContext is the same as UntagResource with the addition of
6367// the ability to pass a context and additional request options.
6368//
6369// See UntagResource for details on how to use this API operation.
6370//
6371// The context must be non-nil and will be used for request cancellation. If
6372// the context is nil a panic will occur. In the future the SDK may create
6373// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6374// for more information on using Contexts.
6375func (c *Greengrass) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
6376	req, out := c.UntagResourceRequest(input)
6377	req.SetContext(ctx)
6378	req.ApplyOptions(opts...)
6379	return out, req.Send()
6380}
6381
6382const opUpdateConnectivityInfo = "UpdateConnectivityInfo"
6383
6384// UpdateConnectivityInfoRequest generates a "aws/request.Request" representing the
6385// client's request for the UpdateConnectivityInfo operation. The "output" return
6386// value will be populated with the request's response once the request completes
6387// successfully.
6388//
6389// Use "Send" method on the returned Request to send the API call to the service.
6390// the "output" return value is not valid until after Send returns without error.
6391//
6392// See UpdateConnectivityInfo for more information on using the UpdateConnectivityInfo
6393// API call, and error handling.
6394//
6395// This method is useful when you want to inject custom logic or configuration
6396// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6397//
6398//
6399//    // Example sending a request using the UpdateConnectivityInfoRequest method.
6400//    req, resp := client.UpdateConnectivityInfoRequest(params)
6401//
6402//    err := req.Send()
6403//    if err == nil { // resp is now filled
6404//        fmt.Println(resp)
6405//    }
6406//
6407// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/UpdateConnectivityInfo
6408func (c *Greengrass) UpdateConnectivityInfoRequest(input *UpdateConnectivityInfoInput) (req *request.Request, output *UpdateConnectivityInfoOutput) {
6409	op := &request.Operation{
6410		Name:       opUpdateConnectivityInfo,
6411		HTTPMethod: "PUT",
6412		HTTPPath:   "/greengrass/things/{ThingName}/connectivityInfo",
6413	}
6414
6415	if input == nil {
6416		input = &UpdateConnectivityInfoInput{}
6417	}
6418
6419	output = &UpdateConnectivityInfoOutput{}
6420	req = c.newRequest(op, input, output)
6421	return
6422}
6423
6424// UpdateConnectivityInfo API operation for AWS Greengrass.
6425//
6426// Updates the connectivity information for the core. Any devices that belong
6427// to the group which has this core will receive this information in order to
6428// find the location of the core and connect to it.
6429//
6430// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6431// with awserr.Error's Code and Message methods to get detailed information about
6432// the error.
6433//
6434// See the AWS API reference guide for AWS Greengrass's
6435// API operation UpdateConnectivityInfo for usage and error information.
6436//
6437// Returned Error Codes:
6438//   * ErrCodeBadRequestException "BadRequestException"
6439//   General error information.
6440//
6441//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
6442//   General error information.
6443//
6444// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/UpdateConnectivityInfo
6445func (c *Greengrass) UpdateConnectivityInfo(input *UpdateConnectivityInfoInput) (*UpdateConnectivityInfoOutput, error) {
6446	req, out := c.UpdateConnectivityInfoRequest(input)
6447	return out, req.Send()
6448}
6449
6450// UpdateConnectivityInfoWithContext is the same as UpdateConnectivityInfo with the addition of
6451// the ability to pass a context and additional request options.
6452//
6453// See UpdateConnectivityInfo for details on how to use this API operation.
6454//
6455// The context must be non-nil and will be used for request cancellation. If
6456// the context is nil a panic will occur. In the future the SDK may create
6457// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6458// for more information on using Contexts.
6459func (c *Greengrass) UpdateConnectivityInfoWithContext(ctx aws.Context, input *UpdateConnectivityInfoInput, opts ...request.Option) (*UpdateConnectivityInfoOutput, error) {
6460	req, out := c.UpdateConnectivityInfoRequest(input)
6461	req.SetContext(ctx)
6462	req.ApplyOptions(opts...)
6463	return out, req.Send()
6464}
6465
6466const opUpdateConnectorDefinition = "UpdateConnectorDefinition"
6467
6468// UpdateConnectorDefinitionRequest generates a "aws/request.Request" representing the
6469// client's request for the UpdateConnectorDefinition operation. The "output" return
6470// value will be populated with the request's response once the request completes
6471// successfully.
6472//
6473// Use "Send" method on the returned Request to send the API call to the service.
6474// the "output" return value is not valid until after Send returns without error.
6475//
6476// See UpdateConnectorDefinition for more information on using the UpdateConnectorDefinition
6477// API call, and error handling.
6478//
6479// This method is useful when you want to inject custom logic or configuration
6480// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6481//
6482//
6483//    // Example sending a request using the UpdateConnectorDefinitionRequest method.
6484//    req, resp := client.UpdateConnectorDefinitionRequest(params)
6485//
6486//    err := req.Send()
6487//    if err == nil { // resp is now filled
6488//        fmt.Println(resp)
6489//    }
6490//
6491// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/UpdateConnectorDefinition
6492func (c *Greengrass) UpdateConnectorDefinitionRequest(input *UpdateConnectorDefinitionInput) (req *request.Request, output *UpdateConnectorDefinitionOutput) {
6493	op := &request.Operation{
6494		Name:       opUpdateConnectorDefinition,
6495		HTTPMethod: "PUT",
6496		HTTPPath:   "/greengrass/definition/connectors/{ConnectorDefinitionId}",
6497	}
6498
6499	if input == nil {
6500		input = &UpdateConnectorDefinitionInput{}
6501	}
6502
6503	output = &UpdateConnectorDefinitionOutput{}
6504	req = c.newRequest(op, input, output)
6505	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6506	return
6507}
6508
6509// UpdateConnectorDefinition API operation for AWS Greengrass.
6510//
6511// Updates a connector definition.
6512//
6513// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6514// with awserr.Error's Code and Message methods to get detailed information about
6515// the error.
6516//
6517// See the AWS API reference guide for AWS Greengrass's
6518// API operation UpdateConnectorDefinition for usage and error information.
6519//
6520// Returned Error Codes:
6521//   * ErrCodeBadRequestException "BadRequestException"
6522//   General error information.
6523//
6524// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/UpdateConnectorDefinition
6525func (c *Greengrass) UpdateConnectorDefinition(input *UpdateConnectorDefinitionInput) (*UpdateConnectorDefinitionOutput, error) {
6526	req, out := c.UpdateConnectorDefinitionRequest(input)
6527	return out, req.Send()
6528}
6529
6530// UpdateConnectorDefinitionWithContext is the same as UpdateConnectorDefinition with the addition of
6531// the ability to pass a context and additional request options.
6532//
6533// See UpdateConnectorDefinition for details on how to use this API operation.
6534//
6535// The context must be non-nil and will be used for request cancellation. If
6536// the context is nil a panic will occur. In the future the SDK may create
6537// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6538// for more information on using Contexts.
6539func (c *Greengrass) UpdateConnectorDefinitionWithContext(ctx aws.Context, input *UpdateConnectorDefinitionInput, opts ...request.Option) (*UpdateConnectorDefinitionOutput, error) {
6540	req, out := c.UpdateConnectorDefinitionRequest(input)
6541	req.SetContext(ctx)
6542	req.ApplyOptions(opts...)
6543	return out, req.Send()
6544}
6545
6546const opUpdateCoreDefinition = "UpdateCoreDefinition"
6547
6548// UpdateCoreDefinitionRequest generates a "aws/request.Request" representing the
6549// client's request for the UpdateCoreDefinition operation. The "output" return
6550// value will be populated with the request's response once the request completes
6551// successfully.
6552//
6553// Use "Send" method on the returned Request to send the API call to the service.
6554// the "output" return value is not valid until after Send returns without error.
6555//
6556// See UpdateCoreDefinition for more information on using the UpdateCoreDefinition
6557// API call, and error handling.
6558//
6559// This method is useful when you want to inject custom logic or configuration
6560// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6561//
6562//
6563//    // Example sending a request using the UpdateCoreDefinitionRequest method.
6564//    req, resp := client.UpdateCoreDefinitionRequest(params)
6565//
6566//    err := req.Send()
6567//    if err == nil { // resp is now filled
6568//        fmt.Println(resp)
6569//    }
6570//
6571// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/UpdateCoreDefinition
6572func (c *Greengrass) UpdateCoreDefinitionRequest(input *UpdateCoreDefinitionInput) (req *request.Request, output *UpdateCoreDefinitionOutput) {
6573	op := &request.Operation{
6574		Name:       opUpdateCoreDefinition,
6575		HTTPMethod: "PUT",
6576		HTTPPath:   "/greengrass/definition/cores/{CoreDefinitionId}",
6577	}
6578
6579	if input == nil {
6580		input = &UpdateCoreDefinitionInput{}
6581	}
6582
6583	output = &UpdateCoreDefinitionOutput{}
6584	req = c.newRequest(op, input, output)
6585	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6586	return
6587}
6588
6589// UpdateCoreDefinition API operation for AWS Greengrass.
6590//
6591// Updates a core definition.
6592//
6593// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6594// with awserr.Error's Code and Message methods to get detailed information about
6595// the error.
6596//
6597// See the AWS API reference guide for AWS Greengrass's
6598// API operation UpdateCoreDefinition for usage and error information.
6599//
6600// Returned Error Codes:
6601//   * ErrCodeBadRequestException "BadRequestException"
6602//   General error information.
6603//
6604// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/UpdateCoreDefinition
6605func (c *Greengrass) UpdateCoreDefinition(input *UpdateCoreDefinitionInput) (*UpdateCoreDefinitionOutput, error) {
6606	req, out := c.UpdateCoreDefinitionRequest(input)
6607	return out, req.Send()
6608}
6609
6610// UpdateCoreDefinitionWithContext is the same as UpdateCoreDefinition with the addition of
6611// the ability to pass a context and additional request options.
6612//
6613// See UpdateCoreDefinition for details on how to use this API operation.
6614//
6615// The context must be non-nil and will be used for request cancellation. If
6616// the context is nil a panic will occur. In the future the SDK may create
6617// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6618// for more information on using Contexts.
6619func (c *Greengrass) UpdateCoreDefinitionWithContext(ctx aws.Context, input *UpdateCoreDefinitionInput, opts ...request.Option) (*UpdateCoreDefinitionOutput, error) {
6620	req, out := c.UpdateCoreDefinitionRequest(input)
6621	req.SetContext(ctx)
6622	req.ApplyOptions(opts...)
6623	return out, req.Send()
6624}
6625
6626const opUpdateDeviceDefinition = "UpdateDeviceDefinition"
6627
6628// UpdateDeviceDefinitionRequest generates a "aws/request.Request" representing the
6629// client's request for the UpdateDeviceDefinition operation. The "output" return
6630// value will be populated with the request's response once the request completes
6631// successfully.
6632//
6633// Use "Send" method on the returned Request to send the API call to the service.
6634// the "output" return value is not valid until after Send returns without error.
6635//
6636// See UpdateDeviceDefinition for more information on using the UpdateDeviceDefinition
6637// API call, and error handling.
6638//
6639// This method is useful when you want to inject custom logic or configuration
6640// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6641//
6642//
6643//    // Example sending a request using the UpdateDeviceDefinitionRequest method.
6644//    req, resp := client.UpdateDeviceDefinitionRequest(params)
6645//
6646//    err := req.Send()
6647//    if err == nil { // resp is now filled
6648//        fmt.Println(resp)
6649//    }
6650//
6651// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/UpdateDeviceDefinition
6652func (c *Greengrass) UpdateDeviceDefinitionRequest(input *UpdateDeviceDefinitionInput) (req *request.Request, output *UpdateDeviceDefinitionOutput) {
6653	op := &request.Operation{
6654		Name:       opUpdateDeviceDefinition,
6655		HTTPMethod: "PUT",
6656		HTTPPath:   "/greengrass/definition/devices/{DeviceDefinitionId}",
6657	}
6658
6659	if input == nil {
6660		input = &UpdateDeviceDefinitionInput{}
6661	}
6662
6663	output = &UpdateDeviceDefinitionOutput{}
6664	req = c.newRequest(op, input, output)
6665	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6666	return
6667}
6668
6669// UpdateDeviceDefinition API operation for AWS Greengrass.
6670//
6671// Updates a device definition.
6672//
6673// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6674// with awserr.Error's Code and Message methods to get detailed information about
6675// the error.
6676//
6677// See the AWS API reference guide for AWS Greengrass's
6678// API operation UpdateDeviceDefinition for usage and error information.
6679//
6680// Returned Error Codes:
6681//   * ErrCodeBadRequestException "BadRequestException"
6682//   General error information.
6683//
6684// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/UpdateDeviceDefinition
6685func (c *Greengrass) UpdateDeviceDefinition(input *UpdateDeviceDefinitionInput) (*UpdateDeviceDefinitionOutput, error) {
6686	req, out := c.UpdateDeviceDefinitionRequest(input)
6687	return out, req.Send()
6688}
6689
6690// UpdateDeviceDefinitionWithContext is the same as UpdateDeviceDefinition with the addition of
6691// the ability to pass a context and additional request options.
6692//
6693// See UpdateDeviceDefinition for details on how to use this API operation.
6694//
6695// The context must be non-nil and will be used for request cancellation. If
6696// the context is nil a panic will occur. In the future the SDK may create
6697// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6698// for more information on using Contexts.
6699func (c *Greengrass) UpdateDeviceDefinitionWithContext(ctx aws.Context, input *UpdateDeviceDefinitionInput, opts ...request.Option) (*UpdateDeviceDefinitionOutput, error) {
6700	req, out := c.UpdateDeviceDefinitionRequest(input)
6701	req.SetContext(ctx)
6702	req.ApplyOptions(opts...)
6703	return out, req.Send()
6704}
6705
6706const opUpdateFunctionDefinition = "UpdateFunctionDefinition"
6707
6708// UpdateFunctionDefinitionRequest generates a "aws/request.Request" representing the
6709// client's request for the UpdateFunctionDefinition operation. The "output" return
6710// value will be populated with the request's response once the request completes
6711// successfully.
6712//
6713// Use "Send" method on the returned Request to send the API call to the service.
6714// the "output" return value is not valid until after Send returns without error.
6715//
6716// See UpdateFunctionDefinition for more information on using the UpdateFunctionDefinition
6717// API call, and error handling.
6718//
6719// This method is useful when you want to inject custom logic or configuration
6720// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6721//
6722//
6723//    // Example sending a request using the UpdateFunctionDefinitionRequest method.
6724//    req, resp := client.UpdateFunctionDefinitionRequest(params)
6725//
6726//    err := req.Send()
6727//    if err == nil { // resp is now filled
6728//        fmt.Println(resp)
6729//    }
6730//
6731// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/UpdateFunctionDefinition
6732func (c *Greengrass) UpdateFunctionDefinitionRequest(input *UpdateFunctionDefinitionInput) (req *request.Request, output *UpdateFunctionDefinitionOutput) {
6733	op := &request.Operation{
6734		Name:       opUpdateFunctionDefinition,
6735		HTTPMethod: "PUT",
6736		HTTPPath:   "/greengrass/definition/functions/{FunctionDefinitionId}",
6737	}
6738
6739	if input == nil {
6740		input = &UpdateFunctionDefinitionInput{}
6741	}
6742
6743	output = &UpdateFunctionDefinitionOutput{}
6744	req = c.newRequest(op, input, output)
6745	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6746	return
6747}
6748
6749// UpdateFunctionDefinition API operation for AWS Greengrass.
6750//
6751// Updates a Lambda function definition.
6752//
6753// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6754// with awserr.Error's Code and Message methods to get detailed information about
6755// the error.
6756//
6757// See the AWS API reference guide for AWS Greengrass's
6758// API operation UpdateFunctionDefinition for usage and error information.
6759//
6760// Returned Error Codes:
6761//   * ErrCodeBadRequestException "BadRequestException"
6762//   General error information.
6763//
6764// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/UpdateFunctionDefinition
6765func (c *Greengrass) UpdateFunctionDefinition(input *UpdateFunctionDefinitionInput) (*UpdateFunctionDefinitionOutput, error) {
6766	req, out := c.UpdateFunctionDefinitionRequest(input)
6767	return out, req.Send()
6768}
6769
6770// UpdateFunctionDefinitionWithContext is the same as UpdateFunctionDefinition with the addition of
6771// the ability to pass a context and additional request options.
6772//
6773// See UpdateFunctionDefinition for details on how to use this API operation.
6774//
6775// The context must be non-nil and will be used for request cancellation. If
6776// the context is nil a panic will occur. In the future the SDK may create
6777// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6778// for more information on using Contexts.
6779func (c *Greengrass) UpdateFunctionDefinitionWithContext(ctx aws.Context, input *UpdateFunctionDefinitionInput, opts ...request.Option) (*UpdateFunctionDefinitionOutput, error) {
6780	req, out := c.UpdateFunctionDefinitionRequest(input)
6781	req.SetContext(ctx)
6782	req.ApplyOptions(opts...)
6783	return out, req.Send()
6784}
6785
6786const opUpdateGroup = "UpdateGroup"
6787
6788// UpdateGroupRequest generates a "aws/request.Request" representing the
6789// client's request for the UpdateGroup operation. The "output" return
6790// value will be populated with the request's response once the request completes
6791// successfully.
6792//
6793// Use "Send" method on the returned Request to send the API call to the service.
6794// the "output" return value is not valid until after Send returns without error.
6795//
6796// See UpdateGroup for more information on using the UpdateGroup
6797// API call, and error handling.
6798//
6799// This method is useful when you want to inject custom logic or configuration
6800// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6801//
6802//
6803//    // Example sending a request using the UpdateGroupRequest method.
6804//    req, resp := client.UpdateGroupRequest(params)
6805//
6806//    err := req.Send()
6807//    if err == nil { // resp is now filled
6808//        fmt.Println(resp)
6809//    }
6810//
6811// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/UpdateGroup
6812func (c *Greengrass) UpdateGroupRequest(input *UpdateGroupInput) (req *request.Request, output *UpdateGroupOutput) {
6813	op := &request.Operation{
6814		Name:       opUpdateGroup,
6815		HTTPMethod: "PUT",
6816		HTTPPath:   "/greengrass/groups/{GroupId}",
6817	}
6818
6819	if input == nil {
6820		input = &UpdateGroupInput{}
6821	}
6822
6823	output = &UpdateGroupOutput{}
6824	req = c.newRequest(op, input, output)
6825	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6826	return
6827}
6828
6829// UpdateGroup API operation for AWS Greengrass.
6830//
6831// Updates a group.
6832//
6833// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6834// with awserr.Error's Code and Message methods to get detailed information about
6835// the error.
6836//
6837// See the AWS API reference guide for AWS Greengrass's
6838// API operation UpdateGroup for usage and error information.
6839//
6840// Returned Error Codes:
6841//   * ErrCodeBadRequestException "BadRequestException"
6842//   General error information.
6843//
6844// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/UpdateGroup
6845func (c *Greengrass) UpdateGroup(input *UpdateGroupInput) (*UpdateGroupOutput, error) {
6846	req, out := c.UpdateGroupRequest(input)
6847	return out, req.Send()
6848}
6849
6850// UpdateGroupWithContext is the same as UpdateGroup with the addition of
6851// the ability to pass a context and additional request options.
6852//
6853// See UpdateGroup for details on how to use this API operation.
6854//
6855// The context must be non-nil and will be used for request cancellation. If
6856// the context is nil a panic will occur. In the future the SDK may create
6857// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6858// for more information on using Contexts.
6859func (c *Greengrass) UpdateGroupWithContext(ctx aws.Context, input *UpdateGroupInput, opts ...request.Option) (*UpdateGroupOutput, error) {
6860	req, out := c.UpdateGroupRequest(input)
6861	req.SetContext(ctx)
6862	req.ApplyOptions(opts...)
6863	return out, req.Send()
6864}
6865
6866const opUpdateGroupCertificateConfiguration = "UpdateGroupCertificateConfiguration"
6867
6868// UpdateGroupCertificateConfigurationRequest generates a "aws/request.Request" representing the
6869// client's request for the UpdateGroupCertificateConfiguration operation. The "output" return
6870// value will be populated with the request's response once the request completes
6871// successfully.
6872//
6873// Use "Send" method on the returned Request to send the API call to the service.
6874// the "output" return value is not valid until after Send returns without error.
6875//
6876// See UpdateGroupCertificateConfiguration for more information on using the UpdateGroupCertificateConfiguration
6877// API call, and error handling.
6878//
6879// This method is useful when you want to inject custom logic or configuration
6880// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6881//
6882//
6883//    // Example sending a request using the UpdateGroupCertificateConfigurationRequest method.
6884//    req, resp := client.UpdateGroupCertificateConfigurationRequest(params)
6885//
6886//    err := req.Send()
6887//    if err == nil { // resp is now filled
6888//        fmt.Println(resp)
6889//    }
6890//
6891// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/UpdateGroupCertificateConfiguration
6892func (c *Greengrass) UpdateGroupCertificateConfigurationRequest(input *UpdateGroupCertificateConfigurationInput) (req *request.Request, output *UpdateGroupCertificateConfigurationOutput) {
6893	op := &request.Operation{
6894		Name:       opUpdateGroupCertificateConfiguration,
6895		HTTPMethod: "PUT",
6896		HTTPPath:   "/greengrass/groups/{GroupId}/certificateauthorities/configuration/expiry",
6897	}
6898
6899	if input == nil {
6900		input = &UpdateGroupCertificateConfigurationInput{}
6901	}
6902
6903	output = &UpdateGroupCertificateConfigurationOutput{}
6904	req = c.newRequest(op, input, output)
6905	return
6906}
6907
6908// UpdateGroupCertificateConfiguration API operation for AWS Greengrass.
6909//
6910// Updates the Certificate expiry time for a group.
6911//
6912// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6913// with awserr.Error's Code and Message methods to get detailed information about
6914// the error.
6915//
6916// See the AWS API reference guide for AWS Greengrass's
6917// API operation UpdateGroupCertificateConfiguration for usage and error information.
6918//
6919// Returned Error Codes:
6920//   * ErrCodeBadRequestException "BadRequestException"
6921//   General error information.
6922//
6923//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
6924//   General error information.
6925//
6926// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/UpdateGroupCertificateConfiguration
6927func (c *Greengrass) UpdateGroupCertificateConfiguration(input *UpdateGroupCertificateConfigurationInput) (*UpdateGroupCertificateConfigurationOutput, error) {
6928	req, out := c.UpdateGroupCertificateConfigurationRequest(input)
6929	return out, req.Send()
6930}
6931
6932// UpdateGroupCertificateConfigurationWithContext is the same as UpdateGroupCertificateConfiguration with the addition of
6933// the ability to pass a context and additional request options.
6934//
6935// See UpdateGroupCertificateConfiguration for details on how to use this API operation.
6936//
6937// The context must be non-nil and will be used for request cancellation. If
6938// the context is nil a panic will occur. In the future the SDK may create
6939// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6940// for more information on using Contexts.
6941func (c *Greengrass) UpdateGroupCertificateConfigurationWithContext(ctx aws.Context, input *UpdateGroupCertificateConfigurationInput, opts ...request.Option) (*UpdateGroupCertificateConfigurationOutput, error) {
6942	req, out := c.UpdateGroupCertificateConfigurationRequest(input)
6943	req.SetContext(ctx)
6944	req.ApplyOptions(opts...)
6945	return out, req.Send()
6946}
6947
6948const opUpdateLoggerDefinition = "UpdateLoggerDefinition"
6949
6950// UpdateLoggerDefinitionRequest generates a "aws/request.Request" representing the
6951// client's request for the UpdateLoggerDefinition operation. The "output" return
6952// value will be populated with the request's response once the request completes
6953// successfully.
6954//
6955// Use "Send" method on the returned Request to send the API call to the service.
6956// the "output" return value is not valid until after Send returns without error.
6957//
6958// See UpdateLoggerDefinition for more information on using the UpdateLoggerDefinition
6959// API call, and error handling.
6960//
6961// This method is useful when you want to inject custom logic or configuration
6962// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6963//
6964//
6965//    // Example sending a request using the UpdateLoggerDefinitionRequest method.
6966//    req, resp := client.UpdateLoggerDefinitionRequest(params)
6967//
6968//    err := req.Send()
6969//    if err == nil { // resp is now filled
6970//        fmt.Println(resp)
6971//    }
6972//
6973// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/UpdateLoggerDefinition
6974func (c *Greengrass) UpdateLoggerDefinitionRequest(input *UpdateLoggerDefinitionInput) (req *request.Request, output *UpdateLoggerDefinitionOutput) {
6975	op := &request.Operation{
6976		Name:       opUpdateLoggerDefinition,
6977		HTTPMethod: "PUT",
6978		HTTPPath:   "/greengrass/definition/loggers/{LoggerDefinitionId}",
6979	}
6980
6981	if input == nil {
6982		input = &UpdateLoggerDefinitionInput{}
6983	}
6984
6985	output = &UpdateLoggerDefinitionOutput{}
6986	req = c.newRequest(op, input, output)
6987	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6988	return
6989}
6990
6991// UpdateLoggerDefinition API operation for AWS Greengrass.
6992//
6993// Updates a logger definition.
6994//
6995// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6996// with awserr.Error's Code and Message methods to get detailed information about
6997// the error.
6998//
6999// See the AWS API reference guide for AWS Greengrass's
7000// API operation UpdateLoggerDefinition for usage and error information.
7001//
7002// Returned Error Codes:
7003//   * ErrCodeBadRequestException "BadRequestException"
7004//   General error information.
7005//
7006// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/UpdateLoggerDefinition
7007func (c *Greengrass) UpdateLoggerDefinition(input *UpdateLoggerDefinitionInput) (*UpdateLoggerDefinitionOutput, error) {
7008	req, out := c.UpdateLoggerDefinitionRequest(input)
7009	return out, req.Send()
7010}
7011
7012// UpdateLoggerDefinitionWithContext is the same as UpdateLoggerDefinition with the addition of
7013// the ability to pass a context and additional request options.
7014//
7015// See UpdateLoggerDefinition for details on how to use this API operation.
7016//
7017// The context must be non-nil and will be used for request cancellation. If
7018// the context is nil a panic will occur. In the future the SDK may create
7019// sub-contexts for http.Requests. See https://golang.org/pkg/context/
7020// for more information on using Contexts.
7021func (c *Greengrass) UpdateLoggerDefinitionWithContext(ctx aws.Context, input *UpdateLoggerDefinitionInput, opts ...request.Option) (*UpdateLoggerDefinitionOutput, error) {
7022	req, out := c.UpdateLoggerDefinitionRequest(input)
7023	req.SetContext(ctx)
7024	req.ApplyOptions(opts...)
7025	return out, req.Send()
7026}
7027
7028const opUpdateResourceDefinition = "UpdateResourceDefinition"
7029
7030// UpdateResourceDefinitionRequest generates a "aws/request.Request" representing the
7031// client's request for the UpdateResourceDefinition operation. The "output" return
7032// value will be populated with the request's response once the request completes
7033// successfully.
7034//
7035// Use "Send" method on the returned Request to send the API call to the service.
7036// the "output" return value is not valid until after Send returns without error.
7037//
7038// See UpdateResourceDefinition for more information on using the UpdateResourceDefinition
7039// API call, and error handling.
7040//
7041// This method is useful when you want to inject custom logic or configuration
7042// into the SDK's request lifecycle. Such as custom headers, or retry logic.
7043//
7044//
7045//    // Example sending a request using the UpdateResourceDefinitionRequest method.
7046//    req, resp := client.UpdateResourceDefinitionRequest(params)
7047//
7048//    err := req.Send()
7049//    if err == nil { // resp is now filled
7050//        fmt.Println(resp)
7051//    }
7052//
7053// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/UpdateResourceDefinition
7054func (c *Greengrass) UpdateResourceDefinitionRequest(input *UpdateResourceDefinitionInput) (req *request.Request, output *UpdateResourceDefinitionOutput) {
7055	op := &request.Operation{
7056		Name:       opUpdateResourceDefinition,
7057		HTTPMethod: "PUT",
7058		HTTPPath:   "/greengrass/definition/resources/{ResourceDefinitionId}",
7059	}
7060
7061	if input == nil {
7062		input = &UpdateResourceDefinitionInput{}
7063	}
7064
7065	output = &UpdateResourceDefinitionOutput{}
7066	req = c.newRequest(op, input, output)
7067	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
7068	return
7069}
7070
7071// UpdateResourceDefinition API operation for AWS Greengrass.
7072//
7073// Updates a resource definition.
7074//
7075// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
7076// with awserr.Error's Code and Message methods to get detailed information about
7077// the error.
7078//
7079// See the AWS API reference guide for AWS Greengrass's
7080// API operation UpdateResourceDefinition for usage and error information.
7081//
7082// Returned Error Codes:
7083//   * ErrCodeBadRequestException "BadRequestException"
7084//   General error information.
7085//
7086// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/UpdateResourceDefinition
7087func (c *Greengrass) UpdateResourceDefinition(input *UpdateResourceDefinitionInput) (*UpdateResourceDefinitionOutput, error) {
7088	req, out := c.UpdateResourceDefinitionRequest(input)
7089	return out, req.Send()
7090}
7091
7092// UpdateResourceDefinitionWithContext is the same as UpdateResourceDefinition with the addition of
7093// the ability to pass a context and additional request options.
7094//
7095// See UpdateResourceDefinition for details on how to use this API operation.
7096//
7097// The context must be non-nil and will be used for request cancellation. If
7098// the context is nil a panic will occur. In the future the SDK may create
7099// sub-contexts for http.Requests. See https://golang.org/pkg/context/
7100// for more information on using Contexts.
7101func (c *Greengrass) UpdateResourceDefinitionWithContext(ctx aws.Context, input *UpdateResourceDefinitionInput, opts ...request.Option) (*UpdateResourceDefinitionOutput, error) {
7102	req, out := c.UpdateResourceDefinitionRequest(input)
7103	req.SetContext(ctx)
7104	req.ApplyOptions(opts...)
7105	return out, req.Send()
7106}
7107
7108const opUpdateSubscriptionDefinition = "UpdateSubscriptionDefinition"
7109
7110// UpdateSubscriptionDefinitionRequest generates a "aws/request.Request" representing the
7111// client's request for the UpdateSubscriptionDefinition operation. The "output" return
7112// value will be populated with the request's response once the request completes
7113// successfully.
7114//
7115// Use "Send" method on the returned Request to send the API call to the service.
7116// the "output" return value is not valid until after Send returns without error.
7117//
7118// See UpdateSubscriptionDefinition for more information on using the UpdateSubscriptionDefinition
7119// API call, and error handling.
7120//
7121// This method is useful when you want to inject custom logic or configuration
7122// into the SDK's request lifecycle. Such as custom headers, or retry logic.
7123//
7124//
7125//    // Example sending a request using the UpdateSubscriptionDefinitionRequest method.
7126//    req, resp := client.UpdateSubscriptionDefinitionRequest(params)
7127//
7128//    err := req.Send()
7129//    if err == nil { // resp is now filled
7130//        fmt.Println(resp)
7131//    }
7132//
7133// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/UpdateSubscriptionDefinition
7134func (c *Greengrass) UpdateSubscriptionDefinitionRequest(input *UpdateSubscriptionDefinitionInput) (req *request.Request, output *UpdateSubscriptionDefinitionOutput) {
7135	op := &request.Operation{
7136		Name:       opUpdateSubscriptionDefinition,
7137		HTTPMethod: "PUT",
7138		HTTPPath:   "/greengrass/definition/subscriptions/{SubscriptionDefinitionId}",
7139	}
7140
7141	if input == nil {
7142		input = &UpdateSubscriptionDefinitionInput{}
7143	}
7144
7145	output = &UpdateSubscriptionDefinitionOutput{}
7146	req = c.newRequest(op, input, output)
7147	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
7148	return
7149}
7150
7151// UpdateSubscriptionDefinition API operation for AWS Greengrass.
7152//
7153// Updates a subscription definition.
7154//
7155// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
7156// with awserr.Error's Code and Message methods to get detailed information about
7157// the error.
7158//
7159// See the AWS API reference guide for AWS Greengrass's
7160// API operation UpdateSubscriptionDefinition for usage and error information.
7161//
7162// Returned Error Codes:
7163//   * ErrCodeBadRequestException "BadRequestException"
7164//   General error information.
7165//
7166// See also, https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/UpdateSubscriptionDefinition
7167func (c *Greengrass) UpdateSubscriptionDefinition(input *UpdateSubscriptionDefinitionInput) (*UpdateSubscriptionDefinitionOutput, error) {
7168	req, out := c.UpdateSubscriptionDefinitionRequest(input)
7169	return out, req.Send()
7170}
7171
7172// UpdateSubscriptionDefinitionWithContext is the same as UpdateSubscriptionDefinition with the addition of
7173// the ability to pass a context and additional request options.
7174//
7175// See UpdateSubscriptionDefinition for details on how to use this API operation.
7176//
7177// The context must be non-nil and will be used for request cancellation. If
7178// the context is nil a panic will occur. In the future the SDK may create
7179// sub-contexts for http.Requests. See https://golang.org/pkg/context/
7180// for more information on using Contexts.
7181func (c *Greengrass) UpdateSubscriptionDefinitionWithContext(ctx aws.Context, input *UpdateSubscriptionDefinitionInput, opts ...request.Option) (*UpdateSubscriptionDefinitionOutput, error) {
7182	req, out := c.UpdateSubscriptionDefinitionRequest(input)
7183	req.SetContext(ctx)
7184	req.ApplyOptions(opts...)
7185	return out, req.Send()
7186}
7187
7188type AssociateRoleToGroupInput struct {
7189	_ struct{} `type:"structure"`
7190
7191	// GroupId is a required field
7192	GroupId *string `location:"uri" locationName:"GroupId" type:"string" required:"true"`
7193
7194	// The ARN of the role you wish to associate with this group.
7195	RoleArn *string `type:"string"`
7196}
7197
7198// String returns the string representation
7199func (s AssociateRoleToGroupInput) String() string {
7200	return awsutil.Prettify(s)
7201}
7202
7203// GoString returns the string representation
7204func (s AssociateRoleToGroupInput) GoString() string {
7205	return s.String()
7206}
7207
7208// Validate inspects the fields of the type to determine if they are valid.
7209func (s *AssociateRoleToGroupInput) Validate() error {
7210	invalidParams := request.ErrInvalidParams{Context: "AssociateRoleToGroupInput"}
7211	if s.GroupId == nil {
7212		invalidParams.Add(request.NewErrParamRequired("GroupId"))
7213	}
7214	if s.GroupId != nil && len(*s.GroupId) < 1 {
7215		invalidParams.Add(request.NewErrParamMinLen("GroupId", 1))
7216	}
7217
7218	if invalidParams.Len() > 0 {
7219		return invalidParams
7220	}
7221	return nil
7222}
7223
7224// SetGroupId sets the GroupId field's value.
7225func (s *AssociateRoleToGroupInput) SetGroupId(v string) *AssociateRoleToGroupInput {
7226	s.GroupId = &v
7227	return s
7228}
7229
7230// SetRoleArn sets the RoleArn field's value.
7231func (s *AssociateRoleToGroupInput) SetRoleArn(v string) *AssociateRoleToGroupInput {
7232	s.RoleArn = &v
7233	return s
7234}
7235
7236type AssociateRoleToGroupOutput struct {
7237	_ struct{} `type:"structure"`
7238
7239	// The time, in milliseconds since the epoch, when the role ARN was associated
7240	// with the group.
7241	AssociatedAt *string `type:"string"`
7242}
7243
7244// String returns the string representation
7245func (s AssociateRoleToGroupOutput) String() string {
7246	return awsutil.Prettify(s)
7247}
7248
7249// GoString returns the string representation
7250func (s AssociateRoleToGroupOutput) GoString() string {
7251	return s.String()
7252}
7253
7254// SetAssociatedAt sets the AssociatedAt field's value.
7255func (s *AssociateRoleToGroupOutput) SetAssociatedAt(v string) *AssociateRoleToGroupOutput {
7256	s.AssociatedAt = &v
7257	return s
7258}
7259
7260type AssociateServiceRoleToAccountInput struct {
7261	_ struct{} `type:"structure"`
7262
7263	// The ARN of the service role you wish to associate with your account.
7264	RoleArn *string `type:"string"`
7265}
7266
7267// String returns the string representation
7268func (s AssociateServiceRoleToAccountInput) String() string {
7269	return awsutil.Prettify(s)
7270}
7271
7272// GoString returns the string representation
7273func (s AssociateServiceRoleToAccountInput) GoString() string {
7274	return s.String()
7275}
7276
7277// SetRoleArn sets the RoleArn field's value.
7278func (s *AssociateServiceRoleToAccountInput) SetRoleArn(v string) *AssociateServiceRoleToAccountInput {
7279	s.RoleArn = &v
7280	return s
7281}
7282
7283type AssociateServiceRoleToAccountOutput struct {
7284	_ struct{} `type:"structure"`
7285
7286	// The time when the service role was associated with the account.
7287	AssociatedAt *string `type:"string"`
7288}
7289
7290// String returns the string representation
7291func (s AssociateServiceRoleToAccountOutput) String() string {
7292	return awsutil.Prettify(s)
7293}
7294
7295// GoString returns the string representation
7296func (s AssociateServiceRoleToAccountOutput) GoString() string {
7297	return s.String()
7298}
7299
7300// SetAssociatedAt sets the AssociatedAt field's value.
7301func (s *AssociateServiceRoleToAccountOutput) SetAssociatedAt(v string) *AssociateServiceRoleToAccountOutput {
7302	s.AssociatedAt = &v
7303	return s
7304}
7305
7306// Information about a bulk deployment. You cannot start a new bulk deployment
7307// while another one is still running or in a non-terminal state.
7308type BulkDeployment struct {
7309	_ struct{} `type:"structure"`
7310
7311	// The ARN of the bulk deployment.
7312	BulkDeploymentArn *string `type:"string"`
7313
7314	// The ID of the bulk deployment.
7315	BulkDeploymentId *string `type:"string"`
7316
7317	// The time, in ISO format, when the deployment was created.
7318	CreatedAt *string `type:"string"`
7319}
7320
7321// String returns the string representation
7322func (s BulkDeployment) String() string {
7323	return awsutil.Prettify(s)
7324}
7325
7326// GoString returns the string representation
7327func (s BulkDeployment) GoString() string {
7328	return s.String()
7329}
7330
7331// SetBulkDeploymentArn sets the BulkDeploymentArn field's value.
7332func (s *BulkDeployment) SetBulkDeploymentArn(v string) *BulkDeployment {
7333	s.BulkDeploymentArn = &v
7334	return s
7335}
7336
7337// SetBulkDeploymentId sets the BulkDeploymentId field's value.
7338func (s *BulkDeployment) SetBulkDeploymentId(v string) *BulkDeployment {
7339	s.BulkDeploymentId = &v
7340	return s
7341}
7342
7343// SetCreatedAt sets the CreatedAt field's value.
7344func (s *BulkDeployment) SetCreatedAt(v string) *BulkDeployment {
7345	s.CreatedAt = &v
7346	return s
7347}
7348
7349// Relevant metrics on input records processed during bulk deployment.
7350type BulkDeploymentMetrics struct {
7351	_ struct{} `type:"structure"`
7352
7353	// The total number of records that returned a non-retryable error. For example,
7354	// this can occur if a group record from the input file uses an invalid format
7355	// or specifies a nonexistent group version, or if the execution role doesn't
7356	// grant permission to deploy a group or group version.
7357	InvalidInputRecords *int64 `type:"integer"`
7358
7359	// The total number of group records from the input file that have been processed
7360	// so far, or attempted.
7361	RecordsProcessed *int64 `type:"integer"`
7362
7363	// The total number of deployment attempts that returned a retryable error.
7364	// For example, a retry is triggered if the attempt to deploy a group returns
7365	// a throttling error. ''StartBulkDeployment'' retries a group deployment up
7366	// to five times.
7367	RetryAttempts *int64 `type:"integer"`
7368}
7369
7370// String returns the string representation
7371func (s BulkDeploymentMetrics) String() string {
7372	return awsutil.Prettify(s)
7373}
7374
7375// GoString returns the string representation
7376func (s BulkDeploymentMetrics) GoString() string {
7377	return s.String()
7378}
7379
7380// SetInvalidInputRecords sets the InvalidInputRecords field's value.
7381func (s *BulkDeploymentMetrics) SetInvalidInputRecords(v int64) *BulkDeploymentMetrics {
7382	s.InvalidInputRecords = &v
7383	return s
7384}
7385
7386// SetRecordsProcessed sets the RecordsProcessed field's value.
7387func (s *BulkDeploymentMetrics) SetRecordsProcessed(v int64) *BulkDeploymentMetrics {
7388	s.RecordsProcessed = &v
7389	return s
7390}
7391
7392// SetRetryAttempts sets the RetryAttempts field's value.
7393func (s *BulkDeploymentMetrics) SetRetryAttempts(v int64) *BulkDeploymentMetrics {
7394	s.RetryAttempts = &v
7395	return s
7396}
7397
7398// Information about an individual group deployment in a bulk deployment operation.
7399type BulkDeploymentResult struct {
7400	_ struct{} `type:"structure"`
7401
7402	// The time, in ISO format, when the deployment was created.
7403	CreatedAt *string `type:"string"`
7404
7405	// The ARN of the group deployment.
7406	DeploymentArn *string `type:"string"`
7407
7408	// The ID of the group deployment.
7409	DeploymentId *string `type:"string"`
7410
7411	// The current status of the group deployment: ''InProgress'', ''Building'',
7412	// ''Success'', or ''Failure''.
7413	DeploymentStatus *string `type:"string"`
7414
7415	// The type of the deployment.
7416	DeploymentType *string `type:"string" enum:"DeploymentType"`
7417
7418	// Details about the error.
7419	ErrorDetails []*ErrorDetail `type:"list"`
7420
7421	// The error message for a failed deployment
7422	ErrorMessage *string `type:"string"`
7423
7424	// The ARN of the Greengrass group.
7425	GroupArn *string `type:"string"`
7426}
7427
7428// String returns the string representation
7429func (s BulkDeploymentResult) String() string {
7430	return awsutil.Prettify(s)
7431}
7432
7433// GoString returns the string representation
7434func (s BulkDeploymentResult) GoString() string {
7435	return s.String()
7436}
7437
7438// SetCreatedAt sets the CreatedAt field's value.
7439func (s *BulkDeploymentResult) SetCreatedAt(v string) *BulkDeploymentResult {
7440	s.CreatedAt = &v
7441	return s
7442}
7443
7444// SetDeploymentArn sets the DeploymentArn field's value.
7445func (s *BulkDeploymentResult) SetDeploymentArn(v string) *BulkDeploymentResult {
7446	s.DeploymentArn = &v
7447	return s
7448}
7449
7450// SetDeploymentId sets the DeploymentId field's value.
7451func (s *BulkDeploymentResult) SetDeploymentId(v string) *BulkDeploymentResult {
7452	s.DeploymentId = &v
7453	return s
7454}
7455
7456// SetDeploymentStatus sets the DeploymentStatus field's value.
7457func (s *BulkDeploymentResult) SetDeploymentStatus(v string) *BulkDeploymentResult {
7458	s.DeploymentStatus = &v
7459	return s
7460}
7461
7462// SetDeploymentType sets the DeploymentType field's value.
7463func (s *BulkDeploymentResult) SetDeploymentType(v string) *BulkDeploymentResult {
7464	s.DeploymentType = &v
7465	return s
7466}
7467
7468// SetErrorDetails sets the ErrorDetails field's value.
7469func (s *BulkDeploymentResult) SetErrorDetails(v []*ErrorDetail) *BulkDeploymentResult {
7470	s.ErrorDetails = v
7471	return s
7472}
7473
7474// SetErrorMessage sets the ErrorMessage field's value.
7475func (s *BulkDeploymentResult) SetErrorMessage(v string) *BulkDeploymentResult {
7476	s.ErrorMessage = &v
7477	return s
7478}
7479
7480// SetGroupArn sets the GroupArn field's value.
7481func (s *BulkDeploymentResult) SetGroupArn(v string) *BulkDeploymentResult {
7482	s.GroupArn = &v
7483	return s
7484}
7485
7486// Information about a Greengrass core's connectivity.
7487type ConnectivityInfo struct {
7488	_ struct{} `type:"structure"`
7489
7490	// The endpoint for the Greengrass core. Can be an IP address or DNS.
7491	HostAddress *string `type:"string"`
7492
7493	// The ID of the connectivity information.
7494	Id *string `type:"string"`
7495
7496	// Metadata for this endpoint.
7497	Metadata *string `type:"string"`
7498
7499	// The port of the Greengrass core. Usually 8883.
7500	PortNumber *int64 `type:"integer"`
7501}
7502
7503// String returns the string representation
7504func (s ConnectivityInfo) String() string {
7505	return awsutil.Prettify(s)
7506}
7507
7508// GoString returns the string representation
7509func (s ConnectivityInfo) GoString() string {
7510	return s.String()
7511}
7512
7513// SetHostAddress sets the HostAddress field's value.
7514func (s *ConnectivityInfo) SetHostAddress(v string) *ConnectivityInfo {
7515	s.HostAddress = &v
7516	return s
7517}
7518
7519// SetId sets the Id field's value.
7520func (s *ConnectivityInfo) SetId(v string) *ConnectivityInfo {
7521	s.Id = &v
7522	return s
7523}
7524
7525// SetMetadata sets the Metadata field's value.
7526func (s *ConnectivityInfo) SetMetadata(v string) *ConnectivityInfo {
7527	s.Metadata = &v
7528	return s
7529}
7530
7531// SetPortNumber sets the PortNumber field's value.
7532func (s *ConnectivityInfo) SetPortNumber(v int64) *ConnectivityInfo {
7533	s.PortNumber = &v
7534	return s
7535}
7536
7537// Information about a connector. Connectors run on the Greengrass core and
7538// contain built-in integration with local infrastructure, device protocols,
7539// AWS, and other cloud services.
7540type Connector struct {
7541	_ struct{} `type:"structure"`
7542
7543	// The ARN of the connector.
7544	ConnectorArn *string `type:"string"`
7545
7546	// A descriptive or arbitrary ID for the connector. This value must be unique
7547	// within the connector definition version. Max length is 128 characters with
7548	// pattern [a-zA-Z0-9:_-]+.
7549	Id *string `type:"string"`
7550
7551	// The parameters or configuration that the connector uses.
7552	Parameters map[string]*string `type:"map"`
7553}
7554
7555// String returns the string representation
7556func (s Connector) String() string {
7557	return awsutil.Prettify(s)
7558}
7559
7560// GoString returns the string representation
7561func (s Connector) GoString() string {
7562	return s.String()
7563}
7564
7565// SetConnectorArn sets the ConnectorArn field's value.
7566func (s *Connector) SetConnectorArn(v string) *Connector {
7567	s.ConnectorArn = &v
7568	return s
7569}
7570
7571// SetId sets the Id field's value.
7572func (s *Connector) SetId(v string) *Connector {
7573	s.Id = &v
7574	return s
7575}
7576
7577// SetParameters sets the Parameters field's value.
7578func (s *Connector) SetParameters(v map[string]*string) *Connector {
7579	s.Parameters = v
7580	return s
7581}
7582
7583// Information about the connector definition version, which is a container
7584// for connectors.
7585type ConnectorDefinitionVersion struct {
7586	_ struct{} `type:"structure"`
7587
7588	// A list of references to connectors in this version, with their corresponding
7589	// configuration settings.
7590	Connectors []*Connector `type:"list"`
7591}
7592
7593// String returns the string representation
7594func (s ConnectorDefinitionVersion) String() string {
7595	return awsutil.Prettify(s)
7596}
7597
7598// GoString returns the string representation
7599func (s ConnectorDefinitionVersion) GoString() string {
7600	return s.String()
7601}
7602
7603// SetConnectors sets the Connectors field's value.
7604func (s *ConnectorDefinitionVersion) SetConnectors(v []*Connector) *ConnectorDefinitionVersion {
7605	s.Connectors = v
7606	return s
7607}
7608
7609// Information about a core.
7610type Core struct {
7611	_ struct{} `type:"structure"`
7612
7613	// The ARN of the certificate associated with the core.
7614	CertificateArn *string `type:"string"`
7615
7616	// A descriptive or arbitrary ID for the core. This value must be unique within
7617	// the core definition version. Max length is 128 characters with pattern ''[a-zA-Z0-9:_-]+''.
7618	Id *string `type:"string"`
7619
7620	// If true, the core's local shadow is automatically synced with the cloud.
7621	SyncShadow *bool `type:"boolean"`
7622
7623	// The ARN of the thing which is the core.
7624	ThingArn *string `type:"string"`
7625}
7626
7627// String returns the string representation
7628func (s Core) String() string {
7629	return awsutil.Prettify(s)
7630}
7631
7632// GoString returns the string representation
7633func (s Core) GoString() string {
7634	return s.String()
7635}
7636
7637// SetCertificateArn sets the CertificateArn field's value.
7638func (s *Core) SetCertificateArn(v string) *Core {
7639	s.CertificateArn = &v
7640	return s
7641}
7642
7643// SetId sets the Id field's value.
7644func (s *Core) SetId(v string) *Core {
7645	s.Id = &v
7646	return s
7647}
7648
7649// SetSyncShadow sets the SyncShadow field's value.
7650func (s *Core) SetSyncShadow(v bool) *Core {
7651	s.SyncShadow = &v
7652	return s
7653}
7654
7655// SetThingArn sets the ThingArn field's value.
7656func (s *Core) SetThingArn(v string) *Core {
7657	s.ThingArn = &v
7658	return s
7659}
7660
7661// Information about a core definition version.
7662type CoreDefinitionVersion struct {
7663	_ struct{} `type:"structure"`
7664
7665	// A list of cores in the core definition version.
7666	Cores []*Core `type:"list"`
7667}
7668
7669// String returns the string representation
7670func (s CoreDefinitionVersion) String() string {
7671	return awsutil.Prettify(s)
7672}
7673
7674// GoString returns the string representation
7675func (s CoreDefinitionVersion) GoString() string {
7676	return s.String()
7677}
7678
7679// SetCores sets the Cores field's value.
7680func (s *CoreDefinitionVersion) SetCores(v []*Core) *CoreDefinitionVersion {
7681	s.Cores = v
7682	return s
7683}
7684
7685type CreateConnectorDefinitionInput struct {
7686	_ struct{} `type:"structure"`
7687
7688	AmznClientToken *string `location:"header" locationName:"X-Amzn-Client-Token" type:"string"`
7689
7690	// Information about the connector definition version, which is a container
7691	// for connectors.
7692	InitialVersion *ConnectorDefinitionVersion `type:"structure"`
7693
7694	Name *string `type:"string"`
7695
7696	Tags map[string]*string `locationName:"tags" type:"map"`
7697}
7698
7699// String returns the string representation
7700func (s CreateConnectorDefinitionInput) String() string {
7701	return awsutil.Prettify(s)
7702}
7703
7704// GoString returns the string representation
7705func (s CreateConnectorDefinitionInput) GoString() string {
7706	return s.String()
7707}
7708
7709// SetAmznClientToken sets the AmznClientToken field's value.
7710func (s *CreateConnectorDefinitionInput) SetAmznClientToken(v string) *CreateConnectorDefinitionInput {
7711	s.AmznClientToken = &v
7712	return s
7713}
7714
7715// SetInitialVersion sets the InitialVersion field's value.
7716func (s *CreateConnectorDefinitionInput) SetInitialVersion(v *ConnectorDefinitionVersion) *CreateConnectorDefinitionInput {
7717	s.InitialVersion = v
7718	return s
7719}
7720
7721// SetName sets the Name field's value.
7722func (s *CreateConnectorDefinitionInput) SetName(v string) *CreateConnectorDefinitionInput {
7723	s.Name = &v
7724	return s
7725}
7726
7727// SetTags sets the Tags field's value.
7728func (s *CreateConnectorDefinitionInput) SetTags(v map[string]*string) *CreateConnectorDefinitionInput {
7729	s.Tags = v
7730	return s
7731}
7732
7733type CreateConnectorDefinitionOutput struct {
7734	_ struct{} `type:"structure"`
7735
7736	Arn *string `type:"string"`
7737
7738	CreationTimestamp *string `type:"string"`
7739
7740	Id *string `type:"string"`
7741
7742	LastUpdatedTimestamp *string `type:"string"`
7743
7744	LatestVersion *string `type:"string"`
7745
7746	LatestVersionArn *string `type:"string"`
7747
7748	Name *string `type:"string"`
7749}
7750
7751// String returns the string representation
7752func (s CreateConnectorDefinitionOutput) String() string {
7753	return awsutil.Prettify(s)
7754}
7755
7756// GoString returns the string representation
7757func (s CreateConnectorDefinitionOutput) GoString() string {
7758	return s.String()
7759}
7760
7761// SetArn sets the Arn field's value.
7762func (s *CreateConnectorDefinitionOutput) SetArn(v string) *CreateConnectorDefinitionOutput {
7763	s.Arn = &v
7764	return s
7765}
7766
7767// SetCreationTimestamp sets the CreationTimestamp field's value.
7768func (s *CreateConnectorDefinitionOutput) SetCreationTimestamp(v string) *CreateConnectorDefinitionOutput {
7769	s.CreationTimestamp = &v
7770	return s
7771}
7772
7773// SetId sets the Id field's value.
7774func (s *CreateConnectorDefinitionOutput) SetId(v string) *CreateConnectorDefinitionOutput {
7775	s.Id = &v
7776	return s
7777}
7778
7779// SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value.
7780func (s *CreateConnectorDefinitionOutput) SetLastUpdatedTimestamp(v string) *CreateConnectorDefinitionOutput {
7781	s.LastUpdatedTimestamp = &v
7782	return s
7783}
7784
7785// SetLatestVersion sets the LatestVersion field's value.
7786func (s *CreateConnectorDefinitionOutput) SetLatestVersion(v string) *CreateConnectorDefinitionOutput {
7787	s.LatestVersion = &v
7788	return s
7789}
7790
7791// SetLatestVersionArn sets the LatestVersionArn field's value.
7792func (s *CreateConnectorDefinitionOutput) SetLatestVersionArn(v string) *CreateConnectorDefinitionOutput {
7793	s.LatestVersionArn = &v
7794	return s
7795}
7796
7797// SetName sets the Name field's value.
7798func (s *CreateConnectorDefinitionOutput) SetName(v string) *CreateConnectorDefinitionOutput {
7799	s.Name = &v
7800	return s
7801}
7802
7803type CreateConnectorDefinitionVersionInput struct {
7804	_ struct{} `type:"structure"`
7805
7806	AmznClientToken *string `location:"header" locationName:"X-Amzn-Client-Token" type:"string"`
7807
7808	// ConnectorDefinitionId is a required field
7809	ConnectorDefinitionId *string `location:"uri" locationName:"ConnectorDefinitionId" type:"string" required:"true"`
7810
7811	Connectors []*Connector `type:"list"`
7812}
7813
7814// String returns the string representation
7815func (s CreateConnectorDefinitionVersionInput) String() string {
7816	return awsutil.Prettify(s)
7817}
7818
7819// GoString returns the string representation
7820func (s CreateConnectorDefinitionVersionInput) GoString() string {
7821	return s.String()
7822}
7823
7824// Validate inspects the fields of the type to determine if they are valid.
7825func (s *CreateConnectorDefinitionVersionInput) Validate() error {
7826	invalidParams := request.ErrInvalidParams{Context: "CreateConnectorDefinitionVersionInput"}
7827	if s.ConnectorDefinitionId == nil {
7828		invalidParams.Add(request.NewErrParamRequired("ConnectorDefinitionId"))
7829	}
7830	if s.ConnectorDefinitionId != nil && len(*s.ConnectorDefinitionId) < 1 {
7831		invalidParams.Add(request.NewErrParamMinLen("ConnectorDefinitionId", 1))
7832	}
7833
7834	if invalidParams.Len() > 0 {
7835		return invalidParams
7836	}
7837	return nil
7838}
7839
7840// SetAmznClientToken sets the AmznClientToken field's value.
7841func (s *CreateConnectorDefinitionVersionInput) SetAmznClientToken(v string) *CreateConnectorDefinitionVersionInput {
7842	s.AmznClientToken = &v
7843	return s
7844}
7845
7846// SetConnectorDefinitionId sets the ConnectorDefinitionId field's value.
7847func (s *CreateConnectorDefinitionVersionInput) SetConnectorDefinitionId(v string) *CreateConnectorDefinitionVersionInput {
7848	s.ConnectorDefinitionId = &v
7849	return s
7850}
7851
7852// SetConnectors sets the Connectors field's value.
7853func (s *CreateConnectorDefinitionVersionInput) SetConnectors(v []*Connector) *CreateConnectorDefinitionVersionInput {
7854	s.Connectors = v
7855	return s
7856}
7857
7858type CreateConnectorDefinitionVersionOutput struct {
7859	_ struct{} `type:"structure"`
7860
7861	Arn *string `type:"string"`
7862
7863	CreationTimestamp *string `type:"string"`
7864
7865	Id *string `type:"string"`
7866
7867	Version *string `type:"string"`
7868}
7869
7870// String returns the string representation
7871func (s CreateConnectorDefinitionVersionOutput) String() string {
7872	return awsutil.Prettify(s)
7873}
7874
7875// GoString returns the string representation
7876func (s CreateConnectorDefinitionVersionOutput) GoString() string {
7877	return s.String()
7878}
7879
7880// SetArn sets the Arn field's value.
7881func (s *CreateConnectorDefinitionVersionOutput) SetArn(v string) *CreateConnectorDefinitionVersionOutput {
7882	s.Arn = &v
7883	return s
7884}
7885
7886// SetCreationTimestamp sets the CreationTimestamp field's value.
7887func (s *CreateConnectorDefinitionVersionOutput) SetCreationTimestamp(v string) *CreateConnectorDefinitionVersionOutput {
7888	s.CreationTimestamp = &v
7889	return s
7890}
7891
7892// SetId sets the Id field's value.
7893func (s *CreateConnectorDefinitionVersionOutput) SetId(v string) *CreateConnectorDefinitionVersionOutput {
7894	s.Id = &v
7895	return s
7896}
7897
7898// SetVersion sets the Version field's value.
7899func (s *CreateConnectorDefinitionVersionOutput) SetVersion(v string) *CreateConnectorDefinitionVersionOutput {
7900	s.Version = &v
7901	return s
7902}
7903
7904type CreateCoreDefinitionInput struct {
7905	_ struct{} `type:"structure"`
7906
7907	AmznClientToken *string `location:"header" locationName:"X-Amzn-Client-Token" type:"string"`
7908
7909	// Information about a core definition version.
7910	InitialVersion *CoreDefinitionVersion `type:"structure"`
7911
7912	Name *string `type:"string"`
7913
7914	Tags map[string]*string `locationName:"tags" type:"map"`
7915}
7916
7917// String returns the string representation
7918func (s CreateCoreDefinitionInput) String() string {
7919	return awsutil.Prettify(s)
7920}
7921
7922// GoString returns the string representation
7923func (s CreateCoreDefinitionInput) GoString() string {
7924	return s.String()
7925}
7926
7927// SetAmznClientToken sets the AmznClientToken field's value.
7928func (s *CreateCoreDefinitionInput) SetAmznClientToken(v string) *CreateCoreDefinitionInput {
7929	s.AmznClientToken = &v
7930	return s
7931}
7932
7933// SetInitialVersion sets the InitialVersion field's value.
7934func (s *CreateCoreDefinitionInput) SetInitialVersion(v *CoreDefinitionVersion) *CreateCoreDefinitionInput {
7935	s.InitialVersion = v
7936	return s
7937}
7938
7939// SetName sets the Name field's value.
7940func (s *CreateCoreDefinitionInput) SetName(v string) *CreateCoreDefinitionInput {
7941	s.Name = &v
7942	return s
7943}
7944
7945// SetTags sets the Tags field's value.
7946func (s *CreateCoreDefinitionInput) SetTags(v map[string]*string) *CreateCoreDefinitionInput {
7947	s.Tags = v
7948	return s
7949}
7950
7951type CreateCoreDefinitionOutput struct {
7952	_ struct{} `type:"structure"`
7953
7954	Arn *string `type:"string"`
7955
7956	CreationTimestamp *string `type:"string"`
7957
7958	Id *string `type:"string"`
7959
7960	LastUpdatedTimestamp *string `type:"string"`
7961
7962	LatestVersion *string `type:"string"`
7963
7964	LatestVersionArn *string `type:"string"`
7965
7966	Name *string `type:"string"`
7967}
7968
7969// String returns the string representation
7970func (s CreateCoreDefinitionOutput) String() string {
7971	return awsutil.Prettify(s)
7972}
7973
7974// GoString returns the string representation
7975func (s CreateCoreDefinitionOutput) GoString() string {
7976	return s.String()
7977}
7978
7979// SetArn sets the Arn field's value.
7980func (s *CreateCoreDefinitionOutput) SetArn(v string) *CreateCoreDefinitionOutput {
7981	s.Arn = &v
7982	return s
7983}
7984
7985// SetCreationTimestamp sets the CreationTimestamp field's value.
7986func (s *CreateCoreDefinitionOutput) SetCreationTimestamp(v string) *CreateCoreDefinitionOutput {
7987	s.CreationTimestamp = &v
7988	return s
7989}
7990
7991// SetId sets the Id field's value.
7992func (s *CreateCoreDefinitionOutput) SetId(v string) *CreateCoreDefinitionOutput {
7993	s.Id = &v
7994	return s
7995}
7996
7997// SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value.
7998func (s *CreateCoreDefinitionOutput) SetLastUpdatedTimestamp(v string) *CreateCoreDefinitionOutput {
7999	s.LastUpdatedTimestamp = &v
8000	return s
8001}
8002
8003// SetLatestVersion sets the LatestVersion field's value.
8004func (s *CreateCoreDefinitionOutput) SetLatestVersion(v string) *CreateCoreDefinitionOutput {
8005	s.LatestVersion = &v
8006	return s
8007}
8008
8009// SetLatestVersionArn sets the LatestVersionArn field's value.
8010func (s *CreateCoreDefinitionOutput) SetLatestVersionArn(v string) *CreateCoreDefinitionOutput {
8011	s.LatestVersionArn = &v
8012	return s
8013}
8014
8015// SetName sets the Name field's value.
8016func (s *CreateCoreDefinitionOutput) SetName(v string) *CreateCoreDefinitionOutput {
8017	s.Name = &v
8018	return s
8019}
8020
8021type CreateCoreDefinitionVersionInput struct {
8022	_ struct{} `type:"structure"`
8023
8024	AmznClientToken *string `location:"header" locationName:"X-Amzn-Client-Token" type:"string"`
8025
8026	// CoreDefinitionId is a required field
8027	CoreDefinitionId *string `location:"uri" locationName:"CoreDefinitionId" type:"string" required:"true"`
8028
8029	Cores []*Core `type:"list"`
8030}
8031
8032// String returns the string representation
8033func (s CreateCoreDefinitionVersionInput) String() string {
8034	return awsutil.Prettify(s)
8035}
8036
8037// GoString returns the string representation
8038func (s CreateCoreDefinitionVersionInput) GoString() string {
8039	return s.String()
8040}
8041
8042// Validate inspects the fields of the type to determine if they are valid.
8043func (s *CreateCoreDefinitionVersionInput) Validate() error {
8044	invalidParams := request.ErrInvalidParams{Context: "CreateCoreDefinitionVersionInput"}
8045	if s.CoreDefinitionId == nil {
8046		invalidParams.Add(request.NewErrParamRequired("CoreDefinitionId"))
8047	}
8048	if s.CoreDefinitionId != nil && len(*s.CoreDefinitionId) < 1 {
8049		invalidParams.Add(request.NewErrParamMinLen("CoreDefinitionId", 1))
8050	}
8051
8052	if invalidParams.Len() > 0 {
8053		return invalidParams
8054	}
8055	return nil
8056}
8057
8058// SetAmznClientToken sets the AmznClientToken field's value.
8059func (s *CreateCoreDefinitionVersionInput) SetAmznClientToken(v string) *CreateCoreDefinitionVersionInput {
8060	s.AmznClientToken = &v
8061	return s
8062}
8063
8064// SetCoreDefinitionId sets the CoreDefinitionId field's value.
8065func (s *CreateCoreDefinitionVersionInput) SetCoreDefinitionId(v string) *CreateCoreDefinitionVersionInput {
8066	s.CoreDefinitionId = &v
8067	return s
8068}
8069
8070// SetCores sets the Cores field's value.
8071func (s *CreateCoreDefinitionVersionInput) SetCores(v []*Core) *CreateCoreDefinitionVersionInput {
8072	s.Cores = v
8073	return s
8074}
8075
8076type CreateCoreDefinitionVersionOutput struct {
8077	_ struct{} `type:"structure"`
8078
8079	Arn *string `type:"string"`
8080
8081	CreationTimestamp *string `type:"string"`
8082
8083	Id *string `type:"string"`
8084
8085	Version *string `type:"string"`
8086}
8087
8088// String returns the string representation
8089func (s CreateCoreDefinitionVersionOutput) String() string {
8090	return awsutil.Prettify(s)
8091}
8092
8093// GoString returns the string representation
8094func (s CreateCoreDefinitionVersionOutput) GoString() string {
8095	return s.String()
8096}
8097
8098// SetArn sets the Arn field's value.
8099func (s *CreateCoreDefinitionVersionOutput) SetArn(v string) *CreateCoreDefinitionVersionOutput {
8100	s.Arn = &v
8101	return s
8102}
8103
8104// SetCreationTimestamp sets the CreationTimestamp field's value.
8105func (s *CreateCoreDefinitionVersionOutput) SetCreationTimestamp(v string) *CreateCoreDefinitionVersionOutput {
8106	s.CreationTimestamp = &v
8107	return s
8108}
8109
8110// SetId sets the Id field's value.
8111func (s *CreateCoreDefinitionVersionOutput) SetId(v string) *CreateCoreDefinitionVersionOutput {
8112	s.Id = &v
8113	return s
8114}
8115
8116// SetVersion sets the Version field's value.
8117func (s *CreateCoreDefinitionVersionOutput) SetVersion(v string) *CreateCoreDefinitionVersionOutput {
8118	s.Version = &v
8119	return s
8120}
8121
8122// Information about a deployment.
8123type CreateDeploymentInput struct {
8124	_ struct{} `type:"structure"`
8125
8126	AmznClientToken *string `location:"header" locationName:"X-Amzn-Client-Token" type:"string"`
8127
8128	// The ID of the deployment if you wish to redeploy a previous deployment.
8129	DeploymentId *string `type:"string"`
8130
8131	// The type of deployment. When used for ''CreateDeployment'', only ''NewDeployment''
8132	// and ''Redeployment'' are valid.
8133	DeploymentType *string `type:"string" enum:"DeploymentType"`
8134
8135	// GroupId is a required field
8136	GroupId *string `location:"uri" locationName:"GroupId" type:"string" required:"true"`
8137
8138	// The ID of the group version to be deployed.
8139	GroupVersionId *string `type:"string"`
8140}
8141
8142// String returns the string representation
8143func (s CreateDeploymentInput) String() string {
8144	return awsutil.Prettify(s)
8145}
8146
8147// GoString returns the string representation
8148func (s CreateDeploymentInput) GoString() string {
8149	return s.String()
8150}
8151
8152// Validate inspects the fields of the type to determine if they are valid.
8153func (s *CreateDeploymentInput) Validate() error {
8154	invalidParams := request.ErrInvalidParams{Context: "CreateDeploymentInput"}
8155	if s.GroupId == nil {
8156		invalidParams.Add(request.NewErrParamRequired("GroupId"))
8157	}
8158	if s.GroupId != nil && len(*s.GroupId) < 1 {
8159		invalidParams.Add(request.NewErrParamMinLen("GroupId", 1))
8160	}
8161
8162	if invalidParams.Len() > 0 {
8163		return invalidParams
8164	}
8165	return nil
8166}
8167
8168// SetAmznClientToken sets the AmznClientToken field's value.
8169func (s *CreateDeploymentInput) SetAmznClientToken(v string) *CreateDeploymentInput {
8170	s.AmznClientToken = &v
8171	return s
8172}
8173
8174// SetDeploymentId sets the DeploymentId field's value.
8175func (s *CreateDeploymentInput) SetDeploymentId(v string) *CreateDeploymentInput {
8176	s.DeploymentId = &v
8177	return s
8178}
8179
8180// SetDeploymentType sets the DeploymentType field's value.
8181func (s *CreateDeploymentInput) SetDeploymentType(v string) *CreateDeploymentInput {
8182	s.DeploymentType = &v
8183	return s
8184}
8185
8186// SetGroupId sets the GroupId field's value.
8187func (s *CreateDeploymentInput) SetGroupId(v string) *CreateDeploymentInput {
8188	s.GroupId = &v
8189	return s
8190}
8191
8192// SetGroupVersionId sets the GroupVersionId field's value.
8193func (s *CreateDeploymentInput) SetGroupVersionId(v string) *CreateDeploymentInput {
8194	s.GroupVersionId = &v
8195	return s
8196}
8197
8198type CreateDeploymentOutput struct {
8199	_ struct{} `type:"structure"`
8200
8201	// The ARN of the deployment.
8202	DeploymentArn *string `type:"string"`
8203
8204	// The ID of the deployment.
8205	DeploymentId *string `type:"string"`
8206}
8207
8208// String returns the string representation
8209func (s CreateDeploymentOutput) String() string {
8210	return awsutil.Prettify(s)
8211}
8212
8213// GoString returns the string representation
8214func (s CreateDeploymentOutput) GoString() string {
8215	return s.String()
8216}
8217
8218// SetDeploymentArn sets the DeploymentArn field's value.
8219func (s *CreateDeploymentOutput) SetDeploymentArn(v string) *CreateDeploymentOutput {
8220	s.DeploymentArn = &v
8221	return s
8222}
8223
8224// SetDeploymentId sets the DeploymentId field's value.
8225func (s *CreateDeploymentOutput) SetDeploymentId(v string) *CreateDeploymentOutput {
8226	s.DeploymentId = &v
8227	return s
8228}
8229
8230type CreateDeviceDefinitionInput struct {
8231	_ struct{} `type:"structure"`
8232
8233	AmznClientToken *string `location:"header" locationName:"X-Amzn-Client-Token" type:"string"`
8234
8235	// Information about a device definition version.
8236	InitialVersion *DeviceDefinitionVersion `type:"structure"`
8237
8238	Name *string `type:"string"`
8239
8240	Tags map[string]*string `locationName:"tags" type:"map"`
8241}
8242
8243// String returns the string representation
8244func (s CreateDeviceDefinitionInput) String() string {
8245	return awsutil.Prettify(s)
8246}
8247
8248// GoString returns the string representation
8249func (s CreateDeviceDefinitionInput) GoString() string {
8250	return s.String()
8251}
8252
8253// SetAmznClientToken sets the AmznClientToken field's value.
8254func (s *CreateDeviceDefinitionInput) SetAmznClientToken(v string) *CreateDeviceDefinitionInput {
8255	s.AmznClientToken = &v
8256	return s
8257}
8258
8259// SetInitialVersion sets the InitialVersion field's value.
8260func (s *CreateDeviceDefinitionInput) SetInitialVersion(v *DeviceDefinitionVersion) *CreateDeviceDefinitionInput {
8261	s.InitialVersion = v
8262	return s
8263}
8264
8265// SetName sets the Name field's value.
8266func (s *CreateDeviceDefinitionInput) SetName(v string) *CreateDeviceDefinitionInput {
8267	s.Name = &v
8268	return s
8269}
8270
8271// SetTags sets the Tags field's value.
8272func (s *CreateDeviceDefinitionInput) SetTags(v map[string]*string) *CreateDeviceDefinitionInput {
8273	s.Tags = v
8274	return s
8275}
8276
8277type CreateDeviceDefinitionOutput struct {
8278	_ struct{} `type:"structure"`
8279
8280	Arn *string `type:"string"`
8281
8282	CreationTimestamp *string `type:"string"`
8283
8284	Id *string `type:"string"`
8285
8286	LastUpdatedTimestamp *string `type:"string"`
8287
8288	LatestVersion *string `type:"string"`
8289
8290	LatestVersionArn *string `type:"string"`
8291
8292	Name *string `type:"string"`
8293}
8294
8295// String returns the string representation
8296func (s CreateDeviceDefinitionOutput) String() string {
8297	return awsutil.Prettify(s)
8298}
8299
8300// GoString returns the string representation
8301func (s CreateDeviceDefinitionOutput) GoString() string {
8302	return s.String()
8303}
8304
8305// SetArn sets the Arn field's value.
8306func (s *CreateDeviceDefinitionOutput) SetArn(v string) *CreateDeviceDefinitionOutput {
8307	s.Arn = &v
8308	return s
8309}
8310
8311// SetCreationTimestamp sets the CreationTimestamp field's value.
8312func (s *CreateDeviceDefinitionOutput) SetCreationTimestamp(v string) *CreateDeviceDefinitionOutput {
8313	s.CreationTimestamp = &v
8314	return s
8315}
8316
8317// SetId sets the Id field's value.
8318func (s *CreateDeviceDefinitionOutput) SetId(v string) *CreateDeviceDefinitionOutput {
8319	s.Id = &v
8320	return s
8321}
8322
8323// SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value.
8324func (s *CreateDeviceDefinitionOutput) SetLastUpdatedTimestamp(v string) *CreateDeviceDefinitionOutput {
8325	s.LastUpdatedTimestamp = &v
8326	return s
8327}
8328
8329// SetLatestVersion sets the LatestVersion field's value.
8330func (s *CreateDeviceDefinitionOutput) SetLatestVersion(v string) *CreateDeviceDefinitionOutput {
8331	s.LatestVersion = &v
8332	return s
8333}
8334
8335// SetLatestVersionArn sets the LatestVersionArn field's value.
8336func (s *CreateDeviceDefinitionOutput) SetLatestVersionArn(v string) *CreateDeviceDefinitionOutput {
8337	s.LatestVersionArn = &v
8338	return s
8339}
8340
8341// SetName sets the Name field's value.
8342func (s *CreateDeviceDefinitionOutput) SetName(v string) *CreateDeviceDefinitionOutput {
8343	s.Name = &v
8344	return s
8345}
8346
8347type CreateDeviceDefinitionVersionInput struct {
8348	_ struct{} `type:"structure"`
8349
8350	AmznClientToken *string `location:"header" locationName:"X-Amzn-Client-Token" type:"string"`
8351
8352	// DeviceDefinitionId is a required field
8353	DeviceDefinitionId *string `location:"uri" locationName:"DeviceDefinitionId" type:"string" required:"true"`
8354
8355	Devices []*Device `type:"list"`
8356}
8357
8358// String returns the string representation
8359func (s CreateDeviceDefinitionVersionInput) String() string {
8360	return awsutil.Prettify(s)
8361}
8362
8363// GoString returns the string representation
8364func (s CreateDeviceDefinitionVersionInput) GoString() string {
8365	return s.String()
8366}
8367
8368// Validate inspects the fields of the type to determine if they are valid.
8369func (s *CreateDeviceDefinitionVersionInput) Validate() error {
8370	invalidParams := request.ErrInvalidParams{Context: "CreateDeviceDefinitionVersionInput"}
8371	if s.DeviceDefinitionId == nil {
8372		invalidParams.Add(request.NewErrParamRequired("DeviceDefinitionId"))
8373	}
8374	if s.DeviceDefinitionId != nil && len(*s.DeviceDefinitionId) < 1 {
8375		invalidParams.Add(request.NewErrParamMinLen("DeviceDefinitionId", 1))
8376	}
8377
8378	if invalidParams.Len() > 0 {
8379		return invalidParams
8380	}
8381	return nil
8382}
8383
8384// SetAmznClientToken sets the AmznClientToken field's value.
8385func (s *CreateDeviceDefinitionVersionInput) SetAmznClientToken(v string) *CreateDeviceDefinitionVersionInput {
8386	s.AmznClientToken = &v
8387	return s
8388}
8389
8390// SetDeviceDefinitionId sets the DeviceDefinitionId field's value.
8391func (s *CreateDeviceDefinitionVersionInput) SetDeviceDefinitionId(v string) *CreateDeviceDefinitionVersionInput {
8392	s.DeviceDefinitionId = &v
8393	return s
8394}
8395
8396// SetDevices sets the Devices field's value.
8397func (s *CreateDeviceDefinitionVersionInput) SetDevices(v []*Device) *CreateDeviceDefinitionVersionInput {
8398	s.Devices = v
8399	return s
8400}
8401
8402type CreateDeviceDefinitionVersionOutput struct {
8403	_ struct{} `type:"structure"`
8404
8405	Arn *string `type:"string"`
8406
8407	CreationTimestamp *string `type:"string"`
8408
8409	Id *string `type:"string"`
8410
8411	Version *string `type:"string"`
8412}
8413
8414// String returns the string representation
8415func (s CreateDeviceDefinitionVersionOutput) String() string {
8416	return awsutil.Prettify(s)
8417}
8418
8419// GoString returns the string representation
8420func (s CreateDeviceDefinitionVersionOutput) GoString() string {
8421	return s.String()
8422}
8423
8424// SetArn sets the Arn field's value.
8425func (s *CreateDeviceDefinitionVersionOutput) SetArn(v string) *CreateDeviceDefinitionVersionOutput {
8426	s.Arn = &v
8427	return s
8428}
8429
8430// SetCreationTimestamp sets the CreationTimestamp field's value.
8431func (s *CreateDeviceDefinitionVersionOutput) SetCreationTimestamp(v string) *CreateDeviceDefinitionVersionOutput {
8432	s.CreationTimestamp = &v
8433	return s
8434}
8435
8436// SetId sets the Id field's value.
8437func (s *CreateDeviceDefinitionVersionOutput) SetId(v string) *CreateDeviceDefinitionVersionOutput {
8438	s.Id = &v
8439	return s
8440}
8441
8442// SetVersion sets the Version field's value.
8443func (s *CreateDeviceDefinitionVersionOutput) SetVersion(v string) *CreateDeviceDefinitionVersionOutput {
8444	s.Version = &v
8445	return s
8446}
8447
8448type CreateFunctionDefinitionInput struct {
8449	_ struct{} `type:"structure"`
8450
8451	AmznClientToken *string `location:"header" locationName:"X-Amzn-Client-Token" type:"string"`
8452
8453	// Information about a function definition version.
8454	InitialVersion *FunctionDefinitionVersion `type:"structure"`
8455
8456	Name *string `type:"string"`
8457
8458	Tags map[string]*string `locationName:"tags" type:"map"`
8459}
8460
8461// String returns the string representation
8462func (s CreateFunctionDefinitionInput) String() string {
8463	return awsutil.Prettify(s)
8464}
8465
8466// GoString returns the string representation
8467func (s CreateFunctionDefinitionInput) GoString() string {
8468	return s.String()
8469}
8470
8471// SetAmznClientToken sets the AmznClientToken field's value.
8472func (s *CreateFunctionDefinitionInput) SetAmznClientToken(v string) *CreateFunctionDefinitionInput {
8473	s.AmznClientToken = &v
8474	return s
8475}
8476
8477// SetInitialVersion sets the InitialVersion field's value.
8478func (s *CreateFunctionDefinitionInput) SetInitialVersion(v *FunctionDefinitionVersion) *CreateFunctionDefinitionInput {
8479	s.InitialVersion = v
8480	return s
8481}
8482
8483// SetName sets the Name field's value.
8484func (s *CreateFunctionDefinitionInput) SetName(v string) *CreateFunctionDefinitionInput {
8485	s.Name = &v
8486	return s
8487}
8488
8489// SetTags sets the Tags field's value.
8490func (s *CreateFunctionDefinitionInput) SetTags(v map[string]*string) *CreateFunctionDefinitionInput {
8491	s.Tags = v
8492	return s
8493}
8494
8495type CreateFunctionDefinitionOutput struct {
8496	_ struct{} `type:"structure"`
8497
8498	Arn *string `type:"string"`
8499
8500	CreationTimestamp *string `type:"string"`
8501
8502	Id *string `type:"string"`
8503
8504	LastUpdatedTimestamp *string `type:"string"`
8505
8506	LatestVersion *string `type:"string"`
8507
8508	LatestVersionArn *string `type:"string"`
8509
8510	Name *string `type:"string"`
8511}
8512
8513// String returns the string representation
8514func (s CreateFunctionDefinitionOutput) String() string {
8515	return awsutil.Prettify(s)
8516}
8517
8518// GoString returns the string representation
8519func (s CreateFunctionDefinitionOutput) GoString() string {
8520	return s.String()
8521}
8522
8523// SetArn sets the Arn field's value.
8524func (s *CreateFunctionDefinitionOutput) SetArn(v string) *CreateFunctionDefinitionOutput {
8525	s.Arn = &v
8526	return s
8527}
8528
8529// SetCreationTimestamp sets the CreationTimestamp field's value.
8530func (s *CreateFunctionDefinitionOutput) SetCreationTimestamp(v string) *CreateFunctionDefinitionOutput {
8531	s.CreationTimestamp = &v
8532	return s
8533}
8534
8535// SetId sets the Id field's value.
8536func (s *CreateFunctionDefinitionOutput) SetId(v string) *CreateFunctionDefinitionOutput {
8537	s.Id = &v
8538	return s
8539}
8540
8541// SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value.
8542func (s *CreateFunctionDefinitionOutput) SetLastUpdatedTimestamp(v string) *CreateFunctionDefinitionOutput {
8543	s.LastUpdatedTimestamp = &v
8544	return s
8545}
8546
8547// SetLatestVersion sets the LatestVersion field's value.
8548func (s *CreateFunctionDefinitionOutput) SetLatestVersion(v string) *CreateFunctionDefinitionOutput {
8549	s.LatestVersion = &v
8550	return s
8551}
8552
8553// SetLatestVersionArn sets the LatestVersionArn field's value.
8554func (s *CreateFunctionDefinitionOutput) SetLatestVersionArn(v string) *CreateFunctionDefinitionOutput {
8555	s.LatestVersionArn = &v
8556	return s
8557}
8558
8559// SetName sets the Name field's value.
8560func (s *CreateFunctionDefinitionOutput) SetName(v string) *CreateFunctionDefinitionOutput {
8561	s.Name = &v
8562	return s
8563}
8564
8565type CreateFunctionDefinitionVersionInput struct {
8566	_ struct{} `type:"structure"`
8567
8568	AmznClientToken *string `location:"header" locationName:"X-Amzn-Client-Token" type:"string"`
8569
8570	// The default configuration that applies to all Lambda functions in the group.
8571	// Individual Lambda functions can override these settings.
8572	DefaultConfig *FunctionDefaultConfig `type:"structure"`
8573
8574	// FunctionDefinitionId is a required field
8575	FunctionDefinitionId *string `location:"uri" locationName:"FunctionDefinitionId" type:"string" required:"true"`
8576
8577	Functions []*Function `type:"list"`
8578}
8579
8580// String returns the string representation
8581func (s CreateFunctionDefinitionVersionInput) String() string {
8582	return awsutil.Prettify(s)
8583}
8584
8585// GoString returns the string representation
8586func (s CreateFunctionDefinitionVersionInput) GoString() string {
8587	return s.String()
8588}
8589
8590// Validate inspects the fields of the type to determine if they are valid.
8591func (s *CreateFunctionDefinitionVersionInput) Validate() error {
8592	invalidParams := request.ErrInvalidParams{Context: "CreateFunctionDefinitionVersionInput"}
8593	if s.FunctionDefinitionId == nil {
8594		invalidParams.Add(request.NewErrParamRequired("FunctionDefinitionId"))
8595	}
8596	if s.FunctionDefinitionId != nil && len(*s.FunctionDefinitionId) < 1 {
8597		invalidParams.Add(request.NewErrParamMinLen("FunctionDefinitionId", 1))
8598	}
8599
8600	if invalidParams.Len() > 0 {
8601		return invalidParams
8602	}
8603	return nil
8604}
8605
8606// SetAmznClientToken sets the AmznClientToken field's value.
8607func (s *CreateFunctionDefinitionVersionInput) SetAmznClientToken(v string) *CreateFunctionDefinitionVersionInput {
8608	s.AmznClientToken = &v
8609	return s
8610}
8611
8612// SetDefaultConfig sets the DefaultConfig field's value.
8613func (s *CreateFunctionDefinitionVersionInput) SetDefaultConfig(v *FunctionDefaultConfig) *CreateFunctionDefinitionVersionInput {
8614	s.DefaultConfig = v
8615	return s
8616}
8617
8618// SetFunctionDefinitionId sets the FunctionDefinitionId field's value.
8619func (s *CreateFunctionDefinitionVersionInput) SetFunctionDefinitionId(v string) *CreateFunctionDefinitionVersionInput {
8620	s.FunctionDefinitionId = &v
8621	return s
8622}
8623
8624// SetFunctions sets the Functions field's value.
8625func (s *CreateFunctionDefinitionVersionInput) SetFunctions(v []*Function) *CreateFunctionDefinitionVersionInput {
8626	s.Functions = v
8627	return s
8628}
8629
8630type CreateFunctionDefinitionVersionOutput struct {
8631	_ struct{} `type:"structure"`
8632
8633	Arn *string `type:"string"`
8634
8635	CreationTimestamp *string `type:"string"`
8636
8637	Id *string `type:"string"`
8638
8639	Version *string `type:"string"`
8640}
8641
8642// String returns the string representation
8643func (s CreateFunctionDefinitionVersionOutput) String() string {
8644	return awsutil.Prettify(s)
8645}
8646
8647// GoString returns the string representation
8648func (s CreateFunctionDefinitionVersionOutput) GoString() string {
8649	return s.String()
8650}
8651
8652// SetArn sets the Arn field's value.
8653func (s *CreateFunctionDefinitionVersionOutput) SetArn(v string) *CreateFunctionDefinitionVersionOutput {
8654	s.Arn = &v
8655	return s
8656}
8657
8658// SetCreationTimestamp sets the CreationTimestamp field's value.
8659func (s *CreateFunctionDefinitionVersionOutput) SetCreationTimestamp(v string) *CreateFunctionDefinitionVersionOutput {
8660	s.CreationTimestamp = &v
8661	return s
8662}
8663
8664// SetId sets the Id field's value.
8665func (s *CreateFunctionDefinitionVersionOutput) SetId(v string) *CreateFunctionDefinitionVersionOutput {
8666	s.Id = &v
8667	return s
8668}
8669
8670// SetVersion sets the Version field's value.
8671func (s *CreateFunctionDefinitionVersionOutput) SetVersion(v string) *CreateFunctionDefinitionVersionOutput {
8672	s.Version = &v
8673	return s
8674}
8675
8676type CreateGroupCertificateAuthorityInput struct {
8677	_ struct{} `type:"structure"`
8678
8679	AmznClientToken *string `location:"header" locationName:"X-Amzn-Client-Token" type:"string"`
8680
8681	// GroupId is a required field
8682	GroupId *string `location:"uri" locationName:"GroupId" type:"string" required:"true"`
8683}
8684
8685// String returns the string representation
8686func (s CreateGroupCertificateAuthorityInput) String() string {
8687	return awsutil.Prettify(s)
8688}
8689
8690// GoString returns the string representation
8691func (s CreateGroupCertificateAuthorityInput) GoString() string {
8692	return s.String()
8693}
8694
8695// Validate inspects the fields of the type to determine if they are valid.
8696func (s *CreateGroupCertificateAuthorityInput) Validate() error {
8697	invalidParams := request.ErrInvalidParams{Context: "CreateGroupCertificateAuthorityInput"}
8698	if s.GroupId == nil {
8699		invalidParams.Add(request.NewErrParamRequired("GroupId"))
8700	}
8701	if s.GroupId != nil && len(*s.GroupId) < 1 {
8702		invalidParams.Add(request.NewErrParamMinLen("GroupId", 1))
8703	}
8704
8705	if invalidParams.Len() > 0 {
8706		return invalidParams
8707	}
8708	return nil
8709}
8710
8711// SetAmznClientToken sets the AmznClientToken field's value.
8712func (s *CreateGroupCertificateAuthorityInput) SetAmznClientToken(v string) *CreateGroupCertificateAuthorityInput {
8713	s.AmznClientToken = &v
8714	return s
8715}
8716
8717// SetGroupId sets the GroupId field's value.
8718func (s *CreateGroupCertificateAuthorityInput) SetGroupId(v string) *CreateGroupCertificateAuthorityInput {
8719	s.GroupId = &v
8720	return s
8721}
8722
8723type CreateGroupCertificateAuthorityOutput struct {
8724	_ struct{} `type:"structure"`
8725
8726	// The ARN of the group certificate authority.
8727	GroupCertificateAuthorityArn *string `type:"string"`
8728}
8729
8730// String returns the string representation
8731func (s CreateGroupCertificateAuthorityOutput) String() string {
8732	return awsutil.Prettify(s)
8733}
8734
8735// GoString returns the string representation
8736func (s CreateGroupCertificateAuthorityOutput) GoString() string {
8737	return s.String()
8738}
8739
8740// SetGroupCertificateAuthorityArn sets the GroupCertificateAuthorityArn field's value.
8741func (s *CreateGroupCertificateAuthorityOutput) SetGroupCertificateAuthorityArn(v string) *CreateGroupCertificateAuthorityOutput {
8742	s.GroupCertificateAuthorityArn = &v
8743	return s
8744}
8745
8746type CreateGroupInput struct {
8747	_ struct{} `type:"structure"`
8748
8749	AmznClientToken *string `location:"header" locationName:"X-Amzn-Client-Token" type:"string"`
8750
8751	// Information about a group version.
8752	InitialVersion *GroupVersion `type:"structure"`
8753
8754	Name *string `type:"string"`
8755
8756	Tags map[string]*string `locationName:"tags" type:"map"`
8757}
8758
8759// String returns the string representation
8760func (s CreateGroupInput) String() string {
8761	return awsutil.Prettify(s)
8762}
8763
8764// GoString returns the string representation
8765func (s CreateGroupInput) GoString() string {
8766	return s.String()
8767}
8768
8769// SetAmznClientToken sets the AmznClientToken field's value.
8770func (s *CreateGroupInput) SetAmznClientToken(v string) *CreateGroupInput {
8771	s.AmznClientToken = &v
8772	return s
8773}
8774
8775// SetInitialVersion sets the InitialVersion field's value.
8776func (s *CreateGroupInput) SetInitialVersion(v *GroupVersion) *CreateGroupInput {
8777	s.InitialVersion = v
8778	return s
8779}
8780
8781// SetName sets the Name field's value.
8782func (s *CreateGroupInput) SetName(v string) *CreateGroupInput {
8783	s.Name = &v
8784	return s
8785}
8786
8787// SetTags sets the Tags field's value.
8788func (s *CreateGroupInput) SetTags(v map[string]*string) *CreateGroupInput {
8789	s.Tags = v
8790	return s
8791}
8792
8793type CreateGroupOutput struct {
8794	_ struct{} `type:"structure"`
8795
8796	Arn *string `type:"string"`
8797
8798	CreationTimestamp *string `type:"string"`
8799
8800	Id *string `type:"string"`
8801
8802	LastUpdatedTimestamp *string `type:"string"`
8803
8804	LatestVersion *string `type:"string"`
8805
8806	LatestVersionArn *string `type:"string"`
8807
8808	Name *string `type:"string"`
8809}
8810
8811// String returns the string representation
8812func (s CreateGroupOutput) String() string {
8813	return awsutil.Prettify(s)
8814}
8815
8816// GoString returns the string representation
8817func (s CreateGroupOutput) GoString() string {
8818	return s.String()
8819}
8820
8821// SetArn sets the Arn field's value.
8822func (s *CreateGroupOutput) SetArn(v string) *CreateGroupOutput {
8823	s.Arn = &v
8824	return s
8825}
8826
8827// SetCreationTimestamp sets the CreationTimestamp field's value.
8828func (s *CreateGroupOutput) SetCreationTimestamp(v string) *CreateGroupOutput {
8829	s.CreationTimestamp = &v
8830	return s
8831}
8832
8833// SetId sets the Id field's value.
8834func (s *CreateGroupOutput) SetId(v string) *CreateGroupOutput {
8835	s.Id = &v
8836	return s
8837}
8838
8839// SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value.
8840func (s *CreateGroupOutput) SetLastUpdatedTimestamp(v string) *CreateGroupOutput {
8841	s.LastUpdatedTimestamp = &v
8842	return s
8843}
8844
8845// SetLatestVersion sets the LatestVersion field's value.
8846func (s *CreateGroupOutput) SetLatestVersion(v string) *CreateGroupOutput {
8847	s.LatestVersion = &v
8848	return s
8849}
8850
8851// SetLatestVersionArn sets the LatestVersionArn field's value.
8852func (s *CreateGroupOutput) SetLatestVersionArn(v string) *CreateGroupOutput {
8853	s.LatestVersionArn = &v
8854	return s
8855}
8856
8857// SetName sets the Name field's value.
8858func (s *CreateGroupOutput) SetName(v string) *CreateGroupOutput {
8859	s.Name = &v
8860	return s
8861}
8862
8863type CreateGroupVersionInput struct {
8864	_ struct{} `type:"structure"`
8865
8866	AmznClientToken *string `location:"header" locationName:"X-Amzn-Client-Token" type:"string"`
8867
8868	ConnectorDefinitionVersionArn *string `type:"string"`
8869
8870	CoreDefinitionVersionArn *string `type:"string"`
8871
8872	DeviceDefinitionVersionArn *string `type:"string"`
8873
8874	FunctionDefinitionVersionArn *string `type:"string"`
8875
8876	// GroupId is a required field
8877	GroupId *string `location:"uri" locationName:"GroupId" type:"string" required:"true"`
8878
8879	LoggerDefinitionVersionArn *string `type:"string"`
8880
8881	ResourceDefinitionVersionArn *string `type:"string"`
8882
8883	SubscriptionDefinitionVersionArn *string `type:"string"`
8884}
8885
8886// String returns the string representation
8887func (s CreateGroupVersionInput) String() string {
8888	return awsutil.Prettify(s)
8889}
8890
8891// GoString returns the string representation
8892func (s CreateGroupVersionInput) GoString() string {
8893	return s.String()
8894}
8895
8896// Validate inspects the fields of the type to determine if they are valid.
8897func (s *CreateGroupVersionInput) Validate() error {
8898	invalidParams := request.ErrInvalidParams{Context: "CreateGroupVersionInput"}
8899	if s.GroupId == nil {
8900		invalidParams.Add(request.NewErrParamRequired("GroupId"))
8901	}
8902	if s.GroupId != nil && len(*s.GroupId) < 1 {
8903		invalidParams.Add(request.NewErrParamMinLen("GroupId", 1))
8904	}
8905
8906	if invalidParams.Len() > 0 {
8907		return invalidParams
8908	}
8909	return nil
8910}
8911
8912// SetAmznClientToken sets the AmznClientToken field's value.
8913func (s *CreateGroupVersionInput) SetAmznClientToken(v string) *CreateGroupVersionInput {
8914	s.AmznClientToken = &v
8915	return s
8916}
8917
8918// SetConnectorDefinitionVersionArn sets the ConnectorDefinitionVersionArn field's value.
8919func (s *CreateGroupVersionInput) SetConnectorDefinitionVersionArn(v string) *CreateGroupVersionInput {
8920	s.ConnectorDefinitionVersionArn = &v
8921	return s
8922}
8923
8924// SetCoreDefinitionVersionArn sets the CoreDefinitionVersionArn field's value.
8925func (s *CreateGroupVersionInput) SetCoreDefinitionVersionArn(v string) *CreateGroupVersionInput {
8926	s.CoreDefinitionVersionArn = &v
8927	return s
8928}
8929
8930// SetDeviceDefinitionVersionArn sets the DeviceDefinitionVersionArn field's value.
8931func (s *CreateGroupVersionInput) SetDeviceDefinitionVersionArn(v string) *CreateGroupVersionInput {
8932	s.DeviceDefinitionVersionArn = &v
8933	return s
8934}
8935
8936// SetFunctionDefinitionVersionArn sets the FunctionDefinitionVersionArn field's value.
8937func (s *CreateGroupVersionInput) SetFunctionDefinitionVersionArn(v string) *CreateGroupVersionInput {
8938	s.FunctionDefinitionVersionArn = &v
8939	return s
8940}
8941
8942// SetGroupId sets the GroupId field's value.
8943func (s *CreateGroupVersionInput) SetGroupId(v string) *CreateGroupVersionInput {
8944	s.GroupId = &v
8945	return s
8946}
8947
8948// SetLoggerDefinitionVersionArn sets the LoggerDefinitionVersionArn field's value.
8949func (s *CreateGroupVersionInput) SetLoggerDefinitionVersionArn(v string) *CreateGroupVersionInput {
8950	s.LoggerDefinitionVersionArn = &v
8951	return s
8952}
8953
8954// SetResourceDefinitionVersionArn sets the ResourceDefinitionVersionArn field's value.
8955func (s *CreateGroupVersionInput) SetResourceDefinitionVersionArn(v string) *CreateGroupVersionInput {
8956	s.ResourceDefinitionVersionArn = &v
8957	return s
8958}
8959
8960// SetSubscriptionDefinitionVersionArn sets the SubscriptionDefinitionVersionArn field's value.
8961func (s *CreateGroupVersionInput) SetSubscriptionDefinitionVersionArn(v string) *CreateGroupVersionInput {
8962	s.SubscriptionDefinitionVersionArn = &v
8963	return s
8964}
8965
8966type CreateGroupVersionOutput struct {
8967	_ struct{} `type:"structure"`
8968
8969	Arn *string `type:"string"`
8970
8971	CreationTimestamp *string `type:"string"`
8972
8973	Id *string `type:"string"`
8974
8975	Version *string `type:"string"`
8976}
8977
8978// String returns the string representation
8979func (s CreateGroupVersionOutput) String() string {
8980	return awsutil.Prettify(s)
8981}
8982
8983// GoString returns the string representation
8984func (s CreateGroupVersionOutput) GoString() string {
8985	return s.String()
8986}
8987
8988// SetArn sets the Arn field's value.
8989func (s *CreateGroupVersionOutput) SetArn(v string) *CreateGroupVersionOutput {
8990	s.Arn = &v
8991	return s
8992}
8993
8994// SetCreationTimestamp sets the CreationTimestamp field's value.
8995func (s *CreateGroupVersionOutput) SetCreationTimestamp(v string) *CreateGroupVersionOutput {
8996	s.CreationTimestamp = &v
8997	return s
8998}
8999
9000// SetId sets the Id field's value.
9001func (s *CreateGroupVersionOutput) SetId(v string) *CreateGroupVersionOutput {
9002	s.Id = &v
9003	return s
9004}
9005
9006// SetVersion sets the Version field's value.
9007func (s *CreateGroupVersionOutput) SetVersion(v string) *CreateGroupVersionOutput {
9008	s.Version = &v
9009	return s
9010}
9011
9012type CreateLoggerDefinitionInput struct {
9013	_ struct{} `type:"structure"`
9014
9015	AmznClientToken *string `location:"header" locationName:"X-Amzn-Client-Token" type:"string"`
9016
9017	// Information about a logger definition version.
9018	InitialVersion *LoggerDefinitionVersion `type:"structure"`
9019
9020	Name *string `type:"string"`
9021
9022	Tags map[string]*string `locationName:"tags" type:"map"`
9023}
9024
9025// String returns the string representation
9026func (s CreateLoggerDefinitionInput) String() string {
9027	return awsutil.Prettify(s)
9028}
9029
9030// GoString returns the string representation
9031func (s CreateLoggerDefinitionInput) GoString() string {
9032	return s.String()
9033}
9034
9035// SetAmznClientToken sets the AmznClientToken field's value.
9036func (s *CreateLoggerDefinitionInput) SetAmznClientToken(v string) *CreateLoggerDefinitionInput {
9037	s.AmznClientToken = &v
9038	return s
9039}
9040
9041// SetInitialVersion sets the InitialVersion field's value.
9042func (s *CreateLoggerDefinitionInput) SetInitialVersion(v *LoggerDefinitionVersion) *CreateLoggerDefinitionInput {
9043	s.InitialVersion = v
9044	return s
9045}
9046
9047// SetName sets the Name field's value.
9048func (s *CreateLoggerDefinitionInput) SetName(v string) *CreateLoggerDefinitionInput {
9049	s.Name = &v
9050	return s
9051}
9052
9053// SetTags sets the Tags field's value.
9054func (s *CreateLoggerDefinitionInput) SetTags(v map[string]*string) *CreateLoggerDefinitionInput {
9055	s.Tags = v
9056	return s
9057}
9058
9059type CreateLoggerDefinitionOutput struct {
9060	_ struct{} `type:"structure"`
9061
9062	Arn *string `type:"string"`
9063
9064	CreationTimestamp *string `type:"string"`
9065
9066	Id *string `type:"string"`
9067
9068	LastUpdatedTimestamp *string `type:"string"`
9069
9070	LatestVersion *string `type:"string"`
9071
9072	LatestVersionArn *string `type:"string"`
9073
9074	Name *string `type:"string"`
9075}
9076
9077// String returns the string representation
9078func (s CreateLoggerDefinitionOutput) String() string {
9079	return awsutil.Prettify(s)
9080}
9081
9082// GoString returns the string representation
9083func (s CreateLoggerDefinitionOutput) GoString() string {
9084	return s.String()
9085}
9086
9087// SetArn sets the Arn field's value.
9088func (s *CreateLoggerDefinitionOutput) SetArn(v string) *CreateLoggerDefinitionOutput {
9089	s.Arn = &v
9090	return s
9091}
9092
9093// SetCreationTimestamp sets the CreationTimestamp field's value.
9094func (s *CreateLoggerDefinitionOutput) SetCreationTimestamp(v string) *CreateLoggerDefinitionOutput {
9095	s.CreationTimestamp = &v
9096	return s
9097}
9098
9099// SetId sets the Id field's value.
9100func (s *CreateLoggerDefinitionOutput) SetId(v string) *CreateLoggerDefinitionOutput {
9101	s.Id = &v
9102	return s
9103}
9104
9105// SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value.
9106func (s *CreateLoggerDefinitionOutput) SetLastUpdatedTimestamp(v string) *CreateLoggerDefinitionOutput {
9107	s.LastUpdatedTimestamp = &v
9108	return s
9109}
9110
9111// SetLatestVersion sets the LatestVersion field's value.
9112func (s *CreateLoggerDefinitionOutput) SetLatestVersion(v string) *CreateLoggerDefinitionOutput {
9113	s.LatestVersion = &v
9114	return s
9115}
9116
9117// SetLatestVersionArn sets the LatestVersionArn field's value.
9118func (s *CreateLoggerDefinitionOutput) SetLatestVersionArn(v string) *CreateLoggerDefinitionOutput {
9119	s.LatestVersionArn = &v
9120	return s
9121}
9122
9123// SetName sets the Name field's value.
9124func (s *CreateLoggerDefinitionOutput) SetName(v string) *CreateLoggerDefinitionOutput {
9125	s.Name = &v
9126	return s
9127}
9128
9129type CreateLoggerDefinitionVersionInput struct {
9130	_ struct{} `type:"structure"`
9131
9132	AmznClientToken *string `location:"header" locationName:"X-Amzn-Client-Token" type:"string"`
9133
9134	// LoggerDefinitionId is a required field
9135	LoggerDefinitionId *string `location:"uri" locationName:"LoggerDefinitionId" type:"string" required:"true"`
9136
9137	Loggers []*Logger `type:"list"`
9138}
9139
9140// String returns the string representation
9141func (s CreateLoggerDefinitionVersionInput) String() string {
9142	return awsutil.Prettify(s)
9143}
9144
9145// GoString returns the string representation
9146func (s CreateLoggerDefinitionVersionInput) GoString() string {
9147	return s.String()
9148}
9149
9150// Validate inspects the fields of the type to determine if they are valid.
9151func (s *CreateLoggerDefinitionVersionInput) Validate() error {
9152	invalidParams := request.ErrInvalidParams{Context: "CreateLoggerDefinitionVersionInput"}
9153	if s.LoggerDefinitionId == nil {
9154		invalidParams.Add(request.NewErrParamRequired("LoggerDefinitionId"))
9155	}
9156	if s.LoggerDefinitionId != nil && len(*s.LoggerDefinitionId) < 1 {
9157		invalidParams.Add(request.NewErrParamMinLen("LoggerDefinitionId", 1))
9158	}
9159
9160	if invalidParams.Len() > 0 {
9161		return invalidParams
9162	}
9163	return nil
9164}
9165
9166// SetAmznClientToken sets the AmznClientToken field's value.
9167func (s *CreateLoggerDefinitionVersionInput) SetAmznClientToken(v string) *CreateLoggerDefinitionVersionInput {
9168	s.AmznClientToken = &v
9169	return s
9170}
9171
9172// SetLoggerDefinitionId sets the LoggerDefinitionId field's value.
9173func (s *CreateLoggerDefinitionVersionInput) SetLoggerDefinitionId(v string) *CreateLoggerDefinitionVersionInput {
9174	s.LoggerDefinitionId = &v
9175	return s
9176}
9177
9178// SetLoggers sets the Loggers field's value.
9179func (s *CreateLoggerDefinitionVersionInput) SetLoggers(v []*Logger) *CreateLoggerDefinitionVersionInput {
9180	s.Loggers = v
9181	return s
9182}
9183
9184type CreateLoggerDefinitionVersionOutput struct {
9185	_ struct{} `type:"structure"`
9186
9187	Arn *string `type:"string"`
9188
9189	CreationTimestamp *string `type:"string"`
9190
9191	Id *string `type:"string"`
9192
9193	Version *string `type:"string"`
9194}
9195
9196// String returns the string representation
9197func (s CreateLoggerDefinitionVersionOutput) String() string {
9198	return awsutil.Prettify(s)
9199}
9200
9201// GoString returns the string representation
9202func (s CreateLoggerDefinitionVersionOutput) GoString() string {
9203	return s.String()
9204}
9205
9206// SetArn sets the Arn field's value.
9207func (s *CreateLoggerDefinitionVersionOutput) SetArn(v string) *CreateLoggerDefinitionVersionOutput {
9208	s.Arn = &v
9209	return s
9210}
9211
9212// SetCreationTimestamp sets the CreationTimestamp field's value.
9213func (s *CreateLoggerDefinitionVersionOutput) SetCreationTimestamp(v string) *CreateLoggerDefinitionVersionOutput {
9214	s.CreationTimestamp = &v
9215	return s
9216}
9217
9218// SetId sets the Id field's value.
9219func (s *CreateLoggerDefinitionVersionOutput) SetId(v string) *CreateLoggerDefinitionVersionOutput {
9220	s.Id = &v
9221	return s
9222}
9223
9224// SetVersion sets the Version field's value.
9225func (s *CreateLoggerDefinitionVersionOutput) SetVersion(v string) *CreateLoggerDefinitionVersionOutput {
9226	s.Version = &v
9227	return s
9228}
9229
9230type CreateResourceDefinitionInput struct {
9231	_ struct{} `type:"structure"`
9232
9233	AmznClientToken *string `location:"header" locationName:"X-Amzn-Client-Token" type:"string"`
9234
9235	// Information about a resource definition version.
9236	InitialVersion *ResourceDefinitionVersion `type:"structure"`
9237
9238	Name *string `type:"string"`
9239
9240	Tags map[string]*string `locationName:"tags" type:"map"`
9241}
9242
9243// String returns the string representation
9244func (s CreateResourceDefinitionInput) String() string {
9245	return awsutil.Prettify(s)
9246}
9247
9248// GoString returns the string representation
9249func (s CreateResourceDefinitionInput) GoString() string {
9250	return s.String()
9251}
9252
9253// SetAmznClientToken sets the AmznClientToken field's value.
9254func (s *CreateResourceDefinitionInput) SetAmznClientToken(v string) *CreateResourceDefinitionInput {
9255	s.AmznClientToken = &v
9256	return s
9257}
9258
9259// SetInitialVersion sets the InitialVersion field's value.
9260func (s *CreateResourceDefinitionInput) SetInitialVersion(v *ResourceDefinitionVersion) *CreateResourceDefinitionInput {
9261	s.InitialVersion = v
9262	return s
9263}
9264
9265// SetName sets the Name field's value.
9266func (s *CreateResourceDefinitionInput) SetName(v string) *CreateResourceDefinitionInput {
9267	s.Name = &v
9268	return s
9269}
9270
9271// SetTags sets the Tags field's value.
9272func (s *CreateResourceDefinitionInput) SetTags(v map[string]*string) *CreateResourceDefinitionInput {
9273	s.Tags = v
9274	return s
9275}
9276
9277type CreateResourceDefinitionOutput struct {
9278	_ struct{} `type:"structure"`
9279
9280	Arn *string `type:"string"`
9281
9282	CreationTimestamp *string `type:"string"`
9283
9284	Id *string `type:"string"`
9285
9286	LastUpdatedTimestamp *string `type:"string"`
9287
9288	LatestVersion *string `type:"string"`
9289
9290	LatestVersionArn *string `type:"string"`
9291
9292	Name *string `type:"string"`
9293}
9294
9295// String returns the string representation
9296func (s CreateResourceDefinitionOutput) String() string {
9297	return awsutil.Prettify(s)
9298}
9299
9300// GoString returns the string representation
9301func (s CreateResourceDefinitionOutput) GoString() string {
9302	return s.String()
9303}
9304
9305// SetArn sets the Arn field's value.
9306func (s *CreateResourceDefinitionOutput) SetArn(v string) *CreateResourceDefinitionOutput {
9307	s.Arn = &v
9308	return s
9309}
9310
9311// SetCreationTimestamp sets the CreationTimestamp field's value.
9312func (s *CreateResourceDefinitionOutput) SetCreationTimestamp(v string) *CreateResourceDefinitionOutput {
9313	s.CreationTimestamp = &v
9314	return s
9315}
9316
9317// SetId sets the Id field's value.
9318func (s *CreateResourceDefinitionOutput) SetId(v string) *CreateResourceDefinitionOutput {
9319	s.Id = &v
9320	return s
9321}
9322
9323// SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value.
9324func (s *CreateResourceDefinitionOutput) SetLastUpdatedTimestamp(v string) *CreateResourceDefinitionOutput {
9325	s.LastUpdatedTimestamp = &v
9326	return s
9327}
9328
9329// SetLatestVersion sets the LatestVersion field's value.
9330func (s *CreateResourceDefinitionOutput) SetLatestVersion(v string) *CreateResourceDefinitionOutput {
9331	s.LatestVersion = &v
9332	return s
9333}
9334
9335// SetLatestVersionArn sets the LatestVersionArn field's value.
9336func (s *CreateResourceDefinitionOutput) SetLatestVersionArn(v string) *CreateResourceDefinitionOutput {
9337	s.LatestVersionArn = &v
9338	return s
9339}
9340
9341// SetName sets the Name field's value.
9342func (s *CreateResourceDefinitionOutput) SetName(v string) *CreateResourceDefinitionOutput {
9343	s.Name = &v
9344	return s
9345}
9346
9347type CreateResourceDefinitionVersionInput struct {
9348	_ struct{} `type:"structure"`
9349
9350	AmznClientToken *string `location:"header" locationName:"X-Amzn-Client-Token" type:"string"`
9351
9352	// ResourceDefinitionId is a required field
9353	ResourceDefinitionId *string `location:"uri" locationName:"ResourceDefinitionId" type:"string" required:"true"`
9354
9355	Resources []*Resource `type:"list"`
9356}
9357
9358// String returns the string representation
9359func (s CreateResourceDefinitionVersionInput) String() string {
9360	return awsutil.Prettify(s)
9361}
9362
9363// GoString returns the string representation
9364func (s CreateResourceDefinitionVersionInput) GoString() string {
9365	return s.String()
9366}
9367
9368// Validate inspects the fields of the type to determine if they are valid.
9369func (s *CreateResourceDefinitionVersionInput) Validate() error {
9370	invalidParams := request.ErrInvalidParams{Context: "CreateResourceDefinitionVersionInput"}
9371	if s.ResourceDefinitionId == nil {
9372		invalidParams.Add(request.NewErrParamRequired("ResourceDefinitionId"))
9373	}
9374	if s.ResourceDefinitionId != nil && len(*s.ResourceDefinitionId) < 1 {
9375		invalidParams.Add(request.NewErrParamMinLen("ResourceDefinitionId", 1))
9376	}
9377
9378	if invalidParams.Len() > 0 {
9379		return invalidParams
9380	}
9381	return nil
9382}
9383
9384// SetAmznClientToken sets the AmznClientToken field's value.
9385func (s *CreateResourceDefinitionVersionInput) SetAmznClientToken(v string) *CreateResourceDefinitionVersionInput {
9386	s.AmznClientToken = &v
9387	return s
9388}
9389
9390// SetResourceDefinitionId sets the ResourceDefinitionId field's value.
9391func (s *CreateResourceDefinitionVersionInput) SetResourceDefinitionId(v string) *CreateResourceDefinitionVersionInput {
9392	s.ResourceDefinitionId = &v
9393	return s
9394}
9395
9396// SetResources sets the Resources field's value.
9397func (s *CreateResourceDefinitionVersionInput) SetResources(v []*Resource) *CreateResourceDefinitionVersionInput {
9398	s.Resources = v
9399	return s
9400}
9401
9402type CreateResourceDefinitionVersionOutput struct {
9403	_ struct{} `type:"structure"`
9404
9405	Arn *string `type:"string"`
9406
9407	CreationTimestamp *string `type:"string"`
9408
9409	Id *string `type:"string"`
9410
9411	Version *string `type:"string"`
9412}
9413
9414// String returns the string representation
9415func (s CreateResourceDefinitionVersionOutput) String() string {
9416	return awsutil.Prettify(s)
9417}
9418
9419// GoString returns the string representation
9420func (s CreateResourceDefinitionVersionOutput) GoString() string {
9421	return s.String()
9422}
9423
9424// SetArn sets the Arn field's value.
9425func (s *CreateResourceDefinitionVersionOutput) SetArn(v string) *CreateResourceDefinitionVersionOutput {
9426	s.Arn = &v
9427	return s
9428}
9429
9430// SetCreationTimestamp sets the CreationTimestamp field's value.
9431func (s *CreateResourceDefinitionVersionOutput) SetCreationTimestamp(v string) *CreateResourceDefinitionVersionOutput {
9432	s.CreationTimestamp = &v
9433	return s
9434}
9435
9436// SetId sets the Id field's value.
9437func (s *CreateResourceDefinitionVersionOutput) SetId(v string) *CreateResourceDefinitionVersionOutput {
9438	s.Id = &v
9439	return s
9440}
9441
9442// SetVersion sets the Version field's value.
9443func (s *CreateResourceDefinitionVersionOutput) SetVersion(v string) *CreateResourceDefinitionVersionOutput {
9444	s.Version = &v
9445	return s
9446}
9447
9448// Request for the CreateSoftwareUpdateJob API.
9449type CreateSoftwareUpdateJobInput struct {
9450	_ struct{} `type:"structure"`
9451
9452	AmznClientToken *string `location:"header" locationName:"X-Amzn-Client-Token" type:"string"`
9453
9454	// The IAM Role that Greengrass will use to create pre-signed URLs pointing
9455	// towards the update artifact.
9456	S3UrlSignerRole *string `type:"string"`
9457
9458	// The piece of software on the Greengrass core that will be updated.
9459	SoftwareToUpdate *string `type:"string" enum:"SoftwareToUpdate"`
9460
9461	// The minimum level of log statements that should be logged by the OTA Agent
9462	// during an update.
9463	UpdateAgentLogLevel *string `type:"string" enum:"UpdateAgentLogLevel"`
9464
9465	// The ARNs of the targets (IoT things or IoT thing groups) that this update
9466	// will be applied to.
9467	UpdateTargets []*string `type:"list"`
9468
9469	// The architecture of the cores which are the targets of an update.
9470	UpdateTargetsArchitecture *string `type:"string" enum:"UpdateTargetsArchitecture"`
9471
9472	// The operating system of the cores which are the targets of an update.
9473	UpdateTargetsOperatingSystem *string `type:"string" enum:"UpdateTargetsOperatingSystem"`
9474}
9475
9476// String returns the string representation
9477func (s CreateSoftwareUpdateJobInput) String() string {
9478	return awsutil.Prettify(s)
9479}
9480
9481// GoString returns the string representation
9482func (s CreateSoftwareUpdateJobInput) GoString() string {
9483	return s.String()
9484}
9485
9486// SetAmznClientToken sets the AmznClientToken field's value.
9487func (s *CreateSoftwareUpdateJobInput) SetAmznClientToken(v string) *CreateSoftwareUpdateJobInput {
9488	s.AmznClientToken = &v
9489	return s
9490}
9491
9492// SetS3UrlSignerRole sets the S3UrlSignerRole field's value.
9493func (s *CreateSoftwareUpdateJobInput) SetS3UrlSignerRole(v string) *CreateSoftwareUpdateJobInput {
9494	s.S3UrlSignerRole = &v
9495	return s
9496}
9497
9498// SetSoftwareToUpdate sets the SoftwareToUpdate field's value.
9499func (s *CreateSoftwareUpdateJobInput) SetSoftwareToUpdate(v string) *CreateSoftwareUpdateJobInput {
9500	s.SoftwareToUpdate = &v
9501	return s
9502}
9503
9504// SetUpdateAgentLogLevel sets the UpdateAgentLogLevel field's value.
9505func (s *CreateSoftwareUpdateJobInput) SetUpdateAgentLogLevel(v string) *CreateSoftwareUpdateJobInput {
9506	s.UpdateAgentLogLevel = &v
9507	return s
9508}
9509
9510// SetUpdateTargets sets the UpdateTargets field's value.
9511func (s *CreateSoftwareUpdateJobInput) SetUpdateTargets(v []*string) *CreateSoftwareUpdateJobInput {
9512	s.UpdateTargets = v
9513	return s
9514}
9515
9516// SetUpdateTargetsArchitecture sets the UpdateTargetsArchitecture field's value.
9517func (s *CreateSoftwareUpdateJobInput) SetUpdateTargetsArchitecture(v string) *CreateSoftwareUpdateJobInput {
9518	s.UpdateTargetsArchitecture = &v
9519	return s
9520}
9521
9522// SetUpdateTargetsOperatingSystem sets the UpdateTargetsOperatingSystem field's value.
9523func (s *CreateSoftwareUpdateJobInput) SetUpdateTargetsOperatingSystem(v string) *CreateSoftwareUpdateJobInput {
9524	s.UpdateTargetsOperatingSystem = &v
9525	return s
9526}
9527
9528type CreateSoftwareUpdateJobOutput struct {
9529	_ struct{} `type:"structure"`
9530
9531	// The IoT Job ARN corresponding to this update.
9532	IotJobArn *string `type:"string"`
9533
9534	// The IoT Job Id corresponding to this update.
9535	IotJobId *string `type:"string"`
9536}
9537
9538// String returns the string representation
9539func (s CreateSoftwareUpdateJobOutput) String() string {
9540	return awsutil.Prettify(s)
9541}
9542
9543// GoString returns the string representation
9544func (s CreateSoftwareUpdateJobOutput) GoString() string {
9545	return s.String()
9546}
9547
9548// SetIotJobArn sets the IotJobArn field's value.
9549func (s *CreateSoftwareUpdateJobOutput) SetIotJobArn(v string) *CreateSoftwareUpdateJobOutput {
9550	s.IotJobArn = &v
9551	return s
9552}
9553
9554// SetIotJobId sets the IotJobId field's value.
9555func (s *CreateSoftwareUpdateJobOutput) SetIotJobId(v string) *CreateSoftwareUpdateJobOutput {
9556	s.IotJobId = &v
9557	return s
9558}
9559
9560type CreateSubscriptionDefinitionInput struct {
9561	_ struct{} `type:"structure"`
9562
9563	AmznClientToken *string `location:"header" locationName:"X-Amzn-Client-Token" type:"string"`
9564
9565	// Information about a subscription definition version.
9566	InitialVersion *SubscriptionDefinitionVersion `type:"structure"`
9567
9568	Name *string `type:"string"`
9569
9570	Tags map[string]*string `locationName:"tags" type:"map"`
9571}
9572
9573// String returns the string representation
9574func (s CreateSubscriptionDefinitionInput) String() string {
9575	return awsutil.Prettify(s)
9576}
9577
9578// GoString returns the string representation
9579func (s CreateSubscriptionDefinitionInput) GoString() string {
9580	return s.String()
9581}
9582
9583// SetAmznClientToken sets the AmznClientToken field's value.
9584func (s *CreateSubscriptionDefinitionInput) SetAmznClientToken(v string) *CreateSubscriptionDefinitionInput {
9585	s.AmznClientToken = &v
9586	return s
9587}
9588
9589// SetInitialVersion sets the InitialVersion field's value.
9590func (s *CreateSubscriptionDefinitionInput) SetInitialVersion(v *SubscriptionDefinitionVersion) *CreateSubscriptionDefinitionInput {
9591	s.InitialVersion = v
9592	return s
9593}
9594
9595// SetName sets the Name field's value.
9596func (s *CreateSubscriptionDefinitionInput) SetName(v string) *CreateSubscriptionDefinitionInput {
9597	s.Name = &v
9598	return s
9599}
9600
9601// SetTags sets the Tags field's value.
9602func (s *CreateSubscriptionDefinitionInput) SetTags(v map[string]*string) *CreateSubscriptionDefinitionInput {
9603	s.Tags = v
9604	return s
9605}
9606
9607type CreateSubscriptionDefinitionOutput struct {
9608	_ struct{} `type:"structure"`
9609
9610	Arn *string `type:"string"`
9611
9612	CreationTimestamp *string `type:"string"`
9613
9614	Id *string `type:"string"`
9615
9616	LastUpdatedTimestamp *string `type:"string"`
9617
9618	LatestVersion *string `type:"string"`
9619
9620	LatestVersionArn *string `type:"string"`
9621
9622	Name *string `type:"string"`
9623}
9624
9625// String returns the string representation
9626func (s CreateSubscriptionDefinitionOutput) String() string {
9627	return awsutil.Prettify(s)
9628}
9629
9630// GoString returns the string representation
9631func (s CreateSubscriptionDefinitionOutput) GoString() string {
9632	return s.String()
9633}
9634
9635// SetArn sets the Arn field's value.
9636func (s *CreateSubscriptionDefinitionOutput) SetArn(v string) *CreateSubscriptionDefinitionOutput {
9637	s.Arn = &v
9638	return s
9639}
9640
9641// SetCreationTimestamp sets the CreationTimestamp field's value.
9642func (s *CreateSubscriptionDefinitionOutput) SetCreationTimestamp(v string) *CreateSubscriptionDefinitionOutput {
9643	s.CreationTimestamp = &v
9644	return s
9645}
9646
9647// SetId sets the Id field's value.
9648func (s *CreateSubscriptionDefinitionOutput) SetId(v string) *CreateSubscriptionDefinitionOutput {
9649	s.Id = &v
9650	return s
9651}
9652
9653// SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value.
9654func (s *CreateSubscriptionDefinitionOutput) SetLastUpdatedTimestamp(v string) *CreateSubscriptionDefinitionOutput {
9655	s.LastUpdatedTimestamp = &v
9656	return s
9657}
9658
9659// SetLatestVersion sets the LatestVersion field's value.
9660func (s *CreateSubscriptionDefinitionOutput) SetLatestVersion(v string) *CreateSubscriptionDefinitionOutput {
9661	s.LatestVersion = &v
9662	return s
9663}
9664
9665// SetLatestVersionArn sets the LatestVersionArn field's value.
9666func (s *CreateSubscriptionDefinitionOutput) SetLatestVersionArn(v string) *CreateSubscriptionDefinitionOutput {
9667	s.LatestVersionArn = &v
9668	return s
9669}
9670
9671// SetName sets the Name field's value.
9672func (s *CreateSubscriptionDefinitionOutput) SetName(v string) *CreateSubscriptionDefinitionOutput {
9673	s.Name = &v
9674	return s
9675}
9676
9677type CreateSubscriptionDefinitionVersionInput struct {
9678	_ struct{} `type:"structure"`
9679
9680	AmznClientToken *string `location:"header" locationName:"X-Amzn-Client-Token" type:"string"`
9681
9682	// SubscriptionDefinitionId is a required field
9683	SubscriptionDefinitionId *string `location:"uri" locationName:"SubscriptionDefinitionId" type:"string" required:"true"`
9684
9685	Subscriptions []*Subscription `type:"list"`
9686}
9687
9688// String returns the string representation
9689func (s CreateSubscriptionDefinitionVersionInput) String() string {
9690	return awsutil.Prettify(s)
9691}
9692
9693// GoString returns the string representation
9694func (s CreateSubscriptionDefinitionVersionInput) GoString() string {
9695	return s.String()
9696}
9697
9698// Validate inspects the fields of the type to determine if they are valid.
9699func (s *CreateSubscriptionDefinitionVersionInput) Validate() error {
9700	invalidParams := request.ErrInvalidParams{Context: "CreateSubscriptionDefinitionVersionInput"}
9701	if s.SubscriptionDefinitionId == nil {
9702		invalidParams.Add(request.NewErrParamRequired("SubscriptionDefinitionId"))
9703	}
9704	if s.SubscriptionDefinitionId != nil && len(*s.SubscriptionDefinitionId) < 1 {
9705		invalidParams.Add(request.NewErrParamMinLen("SubscriptionDefinitionId", 1))
9706	}
9707
9708	if invalidParams.Len() > 0 {
9709		return invalidParams
9710	}
9711	return nil
9712}
9713
9714// SetAmznClientToken sets the AmznClientToken field's value.
9715func (s *CreateSubscriptionDefinitionVersionInput) SetAmznClientToken(v string) *CreateSubscriptionDefinitionVersionInput {
9716	s.AmznClientToken = &v
9717	return s
9718}
9719
9720// SetSubscriptionDefinitionId sets the SubscriptionDefinitionId field's value.
9721func (s *CreateSubscriptionDefinitionVersionInput) SetSubscriptionDefinitionId(v string) *CreateSubscriptionDefinitionVersionInput {
9722	s.SubscriptionDefinitionId = &v
9723	return s
9724}
9725
9726// SetSubscriptions sets the Subscriptions field's value.
9727func (s *CreateSubscriptionDefinitionVersionInput) SetSubscriptions(v []*Subscription) *CreateSubscriptionDefinitionVersionInput {
9728	s.Subscriptions = v
9729	return s
9730}
9731
9732type CreateSubscriptionDefinitionVersionOutput struct {
9733	_ struct{} `type:"structure"`
9734
9735	Arn *string `type:"string"`
9736
9737	CreationTimestamp *string `type:"string"`
9738
9739	Id *string `type:"string"`
9740
9741	Version *string `type:"string"`
9742}
9743
9744// String returns the string representation
9745func (s CreateSubscriptionDefinitionVersionOutput) String() string {
9746	return awsutil.Prettify(s)
9747}
9748
9749// GoString returns the string representation
9750func (s CreateSubscriptionDefinitionVersionOutput) GoString() string {
9751	return s.String()
9752}
9753
9754// SetArn sets the Arn field's value.
9755func (s *CreateSubscriptionDefinitionVersionOutput) SetArn(v string) *CreateSubscriptionDefinitionVersionOutput {
9756	s.Arn = &v
9757	return s
9758}
9759
9760// SetCreationTimestamp sets the CreationTimestamp field's value.
9761func (s *CreateSubscriptionDefinitionVersionOutput) SetCreationTimestamp(v string) *CreateSubscriptionDefinitionVersionOutput {
9762	s.CreationTimestamp = &v
9763	return s
9764}
9765
9766// SetId sets the Id field's value.
9767func (s *CreateSubscriptionDefinitionVersionOutput) SetId(v string) *CreateSubscriptionDefinitionVersionOutput {
9768	s.Id = &v
9769	return s
9770}
9771
9772// SetVersion sets the Version field's value.
9773func (s *CreateSubscriptionDefinitionVersionOutput) SetVersion(v string) *CreateSubscriptionDefinitionVersionOutput {
9774	s.Version = &v
9775	return s
9776}
9777
9778// Information about a definition.
9779type DefinitionInformation struct {
9780	_ struct{} `type:"structure"`
9781
9782	// The ARN of the definition.
9783	Arn *string `type:"string"`
9784
9785	// The time, in milliseconds since the epoch, when the definition was created.
9786	CreationTimestamp *string `type:"string"`
9787
9788	// The ID of the definition.
9789	Id *string `type:"string"`
9790
9791	// The time, in milliseconds since the epoch, when the definition was last updated.
9792	LastUpdatedTimestamp *string `type:"string"`
9793
9794	// The latest version of the definition.
9795	LatestVersion *string `type:"string"`
9796
9797	// The ARN of the latest version of the definition.
9798	LatestVersionArn *string `type:"string"`
9799
9800	// The name of the definition.
9801	Name *string `type:"string"`
9802
9803	Tags map[string]*string `locationName:"tags" type:"map"`
9804}
9805
9806// String returns the string representation
9807func (s DefinitionInformation) String() string {
9808	return awsutil.Prettify(s)
9809}
9810
9811// GoString returns the string representation
9812func (s DefinitionInformation) GoString() string {
9813	return s.String()
9814}
9815
9816// SetArn sets the Arn field's value.
9817func (s *DefinitionInformation) SetArn(v string) *DefinitionInformation {
9818	s.Arn = &v
9819	return s
9820}
9821
9822// SetCreationTimestamp sets the CreationTimestamp field's value.
9823func (s *DefinitionInformation) SetCreationTimestamp(v string) *DefinitionInformation {
9824	s.CreationTimestamp = &v
9825	return s
9826}
9827
9828// SetId sets the Id field's value.
9829func (s *DefinitionInformation) SetId(v string) *DefinitionInformation {
9830	s.Id = &v
9831	return s
9832}
9833
9834// SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value.
9835func (s *DefinitionInformation) SetLastUpdatedTimestamp(v string) *DefinitionInformation {
9836	s.LastUpdatedTimestamp = &v
9837	return s
9838}
9839
9840// SetLatestVersion sets the LatestVersion field's value.
9841func (s *DefinitionInformation) SetLatestVersion(v string) *DefinitionInformation {
9842	s.LatestVersion = &v
9843	return s
9844}
9845
9846// SetLatestVersionArn sets the LatestVersionArn field's value.
9847func (s *DefinitionInformation) SetLatestVersionArn(v string) *DefinitionInformation {
9848	s.LatestVersionArn = &v
9849	return s
9850}
9851
9852// SetName sets the Name field's value.
9853func (s *DefinitionInformation) SetName(v string) *DefinitionInformation {
9854	s.Name = &v
9855	return s
9856}
9857
9858// SetTags sets the Tags field's value.
9859func (s *DefinitionInformation) SetTags(v map[string]*string) *DefinitionInformation {
9860	s.Tags = v
9861	return s
9862}
9863
9864type DeleteConnectorDefinitionInput struct {
9865	_ struct{} `type:"structure"`
9866
9867	// ConnectorDefinitionId is a required field
9868	ConnectorDefinitionId *string `location:"uri" locationName:"ConnectorDefinitionId" type:"string" required:"true"`
9869}
9870
9871// String returns the string representation
9872func (s DeleteConnectorDefinitionInput) String() string {
9873	return awsutil.Prettify(s)
9874}
9875
9876// GoString returns the string representation
9877func (s DeleteConnectorDefinitionInput) GoString() string {
9878	return s.String()
9879}
9880
9881// Validate inspects the fields of the type to determine if they are valid.
9882func (s *DeleteConnectorDefinitionInput) Validate() error {
9883	invalidParams := request.ErrInvalidParams{Context: "DeleteConnectorDefinitionInput"}
9884	if s.ConnectorDefinitionId == nil {
9885		invalidParams.Add(request.NewErrParamRequired("ConnectorDefinitionId"))
9886	}
9887	if s.ConnectorDefinitionId != nil && len(*s.ConnectorDefinitionId) < 1 {
9888		invalidParams.Add(request.NewErrParamMinLen("ConnectorDefinitionId", 1))
9889	}
9890
9891	if invalidParams.Len() > 0 {
9892		return invalidParams
9893	}
9894	return nil
9895}
9896
9897// SetConnectorDefinitionId sets the ConnectorDefinitionId field's value.
9898func (s *DeleteConnectorDefinitionInput) SetConnectorDefinitionId(v string) *DeleteConnectorDefinitionInput {
9899	s.ConnectorDefinitionId = &v
9900	return s
9901}
9902
9903type DeleteConnectorDefinitionOutput struct {
9904	_ struct{} `type:"structure"`
9905}
9906
9907// String returns the string representation
9908func (s DeleteConnectorDefinitionOutput) String() string {
9909	return awsutil.Prettify(s)
9910}
9911
9912// GoString returns the string representation
9913func (s DeleteConnectorDefinitionOutput) GoString() string {
9914	return s.String()
9915}
9916
9917type DeleteCoreDefinitionInput struct {
9918	_ struct{} `type:"structure"`
9919
9920	// CoreDefinitionId is a required field
9921	CoreDefinitionId *string `location:"uri" locationName:"CoreDefinitionId" type:"string" required:"true"`
9922}
9923
9924// String returns the string representation
9925func (s DeleteCoreDefinitionInput) String() string {
9926	return awsutil.Prettify(s)
9927}
9928
9929// GoString returns the string representation
9930func (s DeleteCoreDefinitionInput) GoString() string {
9931	return s.String()
9932}
9933
9934// Validate inspects the fields of the type to determine if they are valid.
9935func (s *DeleteCoreDefinitionInput) Validate() error {
9936	invalidParams := request.ErrInvalidParams{Context: "DeleteCoreDefinitionInput"}
9937	if s.CoreDefinitionId == nil {
9938		invalidParams.Add(request.NewErrParamRequired("CoreDefinitionId"))
9939	}
9940	if s.CoreDefinitionId != nil && len(*s.CoreDefinitionId) < 1 {
9941		invalidParams.Add(request.NewErrParamMinLen("CoreDefinitionId", 1))
9942	}
9943
9944	if invalidParams.Len() > 0 {
9945		return invalidParams
9946	}
9947	return nil
9948}
9949
9950// SetCoreDefinitionId sets the CoreDefinitionId field's value.
9951func (s *DeleteCoreDefinitionInput) SetCoreDefinitionId(v string) *DeleteCoreDefinitionInput {
9952	s.CoreDefinitionId = &v
9953	return s
9954}
9955
9956type DeleteCoreDefinitionOutput struct {
9957	_ struct{} `type:"structure"`
9958}
9959
9960// String returns the string representation
9961func (s DeleteCoreDefinitionOutput) String() string {
9962	return awsutil.Prettify(s)
9963}
9964
9965// GoString returns the string representation
9966func (s DeleteCoreDefinitionOutput) GoString() string {
9967	return s.String()
9968}
9969
9970type DeleteDeviceDefinitionInput struct {
9971	_ struct{} `type:"structure"`
9972
9973	// DeviceDefinitionId is a required field
9974	DeviceDefinitionId *string `location:"uri" locationName:"DeviceDefinitionId" type:"string" required:"true"`
9975}
9976
9977// String returns the string representation
9978func (s DeleteDeviceDefinitionInput) String() string {
9979	return awsutil.Prettify(s)
9980}
9981
9982// GoString returns the string representation
9983func (s DeleteDeviceDefinitionInput) GoString() string {
9984	return s.String()
9985}
9986
9987// Validate inspects the fields of the type to determine if they are valid.
9988func (s *DeleteDeviceDefinitionInput) Validate() error {
9989	invalidParams := request.ErrInvalidParams{Context: "DeleteDeviceDefinitionInput"}
9990	if s.DeviceDefinitionId == nil {
9991		invalidParams.Add(request.NewErrParamRequired("DeviceDefinitionId"))
9992	}
9993	if s.DeviceDefinitionId != nil && len(*s.DeviceDefinitionId) < 1 {
9994		invalidParams.Add(request.NewErrParamMinLen("DeviceDefinitionId", 1))
9995	}
9996
9997	if invalidParams.Len() > 0 {
9998		return invalidParams
9999	}
10000	return nil
10001}
10002
10003// SetDeviceDefinitionId sets the DeviceDefinitionId field's value.
10004func (s *DeleteDeviceDefinitionInput) SetDeviceDefinitionId(v string) *DeleteDeviceDefinitionInput {
10005	s.DeviceDefinitionId = &v
10006	return s
10007}
10008
10009type DeleteDeviceDefinitionOutput struct {
10010	_ struct{} `type:"structure"`
10011}
10012
10013// String returns the string representation
10014func (s DeleteDeviceDefinitionOutput) String() string {
10015	return awsutil.Prettify(s)
10016}
10017
10018// GoString returns the string representation
10019func (s DeleteDeviceDefinitionOutput) GoString() string {
10020	return s.String()
10021}
10022
10023type DeleteFunctionDefinitionInput struct {
10024	_ struct{} `type:"structure"`
10025
10026	// FunctionDefinitionId is a required field
10027	FunctionDefinitionId *string `location:"uri" locationName:"FunctionDefinitionId" type:"string" required:"true"`
10028}
10029
10030// String returns the string representation
10031func (s DeleteFunctionDefinitionInput) String() string {
10032	return awsutil.Prettify(s)
10033}
10034
10035// GoString returns the string representation
10036func (s DeleteFunctionDefinitionInput) GoString() string {
10037	return s.String()
10038}
10039
10040// Validate inspects the fields of the type to determine if they are valid.
10041func (s *DeleteFunctionDefinitionInput) Validate() error {
10042	invalidParams := request.ErrInvalidParams{Context: "DeleteFunctionDefinitionInput"}
10043	if s.FunctionDefinitionId == nil {
10044		invalidParams.Add(request.NewErrParamRequired("FunctionDefinitionId"))
10045	}
10046	if s.FunctionDefinitionId != nil && len(*s.FunctionDefinitionId) < 1 {
10047		invalidParams.Add(request.NewErrParamMinLen("FunctionDefinitionId", 1))
10048	}
10049
10050	if invalidParams.Len() > 0 {
10051		return invalidParams
10052	}
10053	return nil
10054}
10055
10056// SetFunctionDefinitionId sets the FunctionDefinitionId field's value.
10057func (s *DeleteFunctionDefinitionInput) SetFunctionDefinitionId(v string) *DeleteFunctionDefinitionInput {
10058	s.FunctionDefinitionId = &v
10059	return s
10060}
10061
10062type DeleteFunctionDefinitionOutput struct {
10063	_ struct{} `type:"structure"`
10064}
10065
10066// String returns the string representation
10067func (s DeleteFunctionDefinitionOutput) String() string {
10068	return awsutil.Prettify(s)
10069}
10070
10071// GoString returns the string representation
10072func (s DeleteFunctionDefinitionOutput) GoString() string {
10073	return s.String()
10074}
10075
10076type DeleteGroupInput struct {
10077	_ struct{} `type:"structure"`
10078
10079	// GroupId is a required field
10080	GroupId *string `location:"uri" locationName:"GroupId" type:"string" required:"true"`
10081}
10082
10083// String returns the string representation
10084func (s DeleteGroupInput) String() string {
10085	return awsutil.Prettify(s)
10086}
10087
10088// GoString returns the string representation
10089func (s DeleteGroupInput) GoString() string {
10090	return s.String()
10091}
10092
10093// Validate inspects the fields of the type to determine if they are valid.
10094func (s *DeleteGroupInput) Validate() error {
10095	invalidParams := request.ErrInvalidParams{Context: "DeleteGroupInput"}
10096	if s.GroupId == nil {
10097		invalidParams.Add(request.NewErrParamRequired("GroupId"))
10098	}
10099	if s.GroupId != nil && len(*s.GroupId) < 1 {
10100		invalidParams.Add(request.NewErrParamMinLen("GroupId", 1))
10101	}
10102
10103	if invalidParams.Len() > 0 {
10104		return invalidParams
10105	}
10106	return nil
10107}
10108
10109// SetGroupId sets the GroupId field's value.
10110func (s *DeleteGroupInput) SetGroupId(v string) *DeleteGroupInput {
10111	s.GroupId = &v
10112	return s
10113}
10114
10115type DeleteGroupOutput struct {
10116	_ struct{} `type:"structure"`
10117}
10118
10119// String returns the string representation
10120func (s DeleteGroupOutput) String() string {
10121	return awsutil.Prettify(s)
10122}
10123
10124// GoString returns the string representation
10125func (s DeleteGroupOutput) GoString() string {
10126	return s.String()
10127}
10128
10129type DeleteLoggerDefinitionInput struct {
10130	_ struct{} `type:"structure"`
10131
10132	// LoggerDefinitionId is a required field
10133	LoggerDefinitionId *string `location:"uri" locationName:"LoggerDefinitionId" type:"string" required:"true"`
10134}
10135
10136// String returns the string representation
10137func (s DeleteLoggerDefinitionInput) String() string {
10138	return awsutil.Prettify(s)
10139}
10140
10141// GoString returns the string representation
10142func (s DeleteLoggerDefinitionInput) GoString() string {
10143	return s.String()
10144}
10145
10146// Validate inspects the fields of the type to determine if they are valid.
10147func (s *DeleteLoggerDefinitionInput) Validate() error {
10148	invalidParams := request.ErrInvalidParams{Context: "DeleteLoggerDefinitionInput"}
10149	if s.LoggerDefinitionId == nil {
10150		invalidParams.Add(request.NewErrParamRequired("LoggerDefinitionId"))
10151	}
10152	if s.LoggerDefinitionId != nil && len(*s.LoggerDefinitionId) < 1 {
10153		invalidParams.Add(request.NewErrParamMinLen("LoggerDefinitionId", 1))
10154	}
10155
10156	if invalidParams.Len() > 0 {
10157		return invalidParams
10158	}
10159	return nil
10160}
10161
10162// SetLoggerDefinitionId sets the LoggerDefinitionId field's value.
10163func (s *DeleteLoggerDefinitionInput) SetLoggerDefinitionId(v string) *DeleteLoggerDefinitionInput {
10164	s.LoggerDefinitionId = &v
10165	return s
10166}
10167
10168type DeleteLoggerDefinitionOutput struct {
10169	_ struct{} `type:"structure"`
10170}
10171
10172// String returns the string representation
10173func (s DeleteLoggerDefinitionOutput) String() string {
10174	return awsutil.Prettify(s)
10175}
10176
10177// GoString returns the string representation
10178func (s DeleteLoggerDefinitionOutput) GoString() string {
10179	return s.String()
10180}
10181
10182type DeleteResourceDefinitionInput struct {
10183	_ struct{} `type:"structure"`
10184
10185	// ResourceDefinitionId is a required field
10186	ResourceDefinitionId *string `location:"uri" locationName:"ResourceDefinitionId" type:"string" required:"true"`
10187}
10188
10189// String returns the string representation
10190func (s DeleteResourceDefinitionInput) String() string {
10191	return awsutil.Prettify(s)
10192}
10193
10194// GoString returns the string representation
10195func (s DeleteResourceDefinitionInput) GoString() string {
10196	return s.String()
10197}
10198
10199// Validate inspects the fields of the type to determine if they are valid.
10200func (s *DeleteResourceDefinitionInput) Validate() error {
10201	invalidParams := request.ErrInvalidParams{Context: "DeleteResourceDefinitionInput"}
10202	if s.ResourceDefinitionId == nil {
10203		invalidParams.Add(request.NewErrParamRequired("ResourceDefinitionId"))
10204	}
10205	if s.ResourceDefinitionId != nil && len(*s.ResourceDefinitionId) < 1 {
10206		invalidParams.Add(request.NewErrParamMinLen("ResourceDefinitionId", 1))
10207	}
10208
10209	if invalidParams.Len() > 0 {
10210		return invalidParams
10211	}
10212	return nil
10213}
10214
10215// SetResourceDefinitionId sets the ResourceDefinitionId field's value.
10216func (s *DeleteResourceDefinitionInput) SetResourceDefinitionId(v string) *DeleteResourceDefinitionInput {
10217	s.ResourceDefinitionId = &v
10218	return s
10219}
10220
10221type DeleteResourceDefinitionOutput struct {
10222	_ struct{} `type:"structure"`
10223}
10224
10225// String returns the string representation
10226func (s DeleteResourceDefinitionOutput) String() string {
10227	return awsutil.Prettify(s)
10228}
10229
10230// GoString returns the string representation
10231func (s DeleteResourceDefinitionOutput) GoString() string {
10232	return s.String()
10233}
10234
10235type DeleteSubscriptionDefinitionInput struct {
10236	_ struct{} `type:"structure"`
10237
10238	// SubscriptionDefinitionId is a required field
10239	SubscriptionDefinitionId *string `location:"uri" locationName:"SubscriptionDefinitionId" type:"string" required:"true"`
10240}
10241
10242// String returns the string representation
10243func (s DeleteSubscriptionDefinitionInput) String() string {
10244	return awsutil.Prettify(s)
10245}
10246
10247// GoString returns the string representation
10248func (s DeleteSubscriptionDefinitionInput) GoString() string {
10249	return s.String()
10250}
10251
10252// Validate inspects the fields of the type to determine if they are valid.
10253func (s *DeleteSubscriptionDefinitionInput) Validate() error {
10254	invalidParams := request.ErrInvalidParams{Context: "DeleteSubscriptionDefinitionInput"}
10255	if s.SubscriptionDefinitionId == nil {
10256		invalidParams.Add(request.NewErrParamRequired("SubscriptionDefinitionId"))
10257	}
10258	if s.SubscriptionDefinitionId != nil && len(*s.SubscriptionDefinitionId) < 1 {
10259		invalidParams.Add(request.NewErrParamMinLen("SubscriptionDefinitionId", 1))
10260	}
10261
10262	if invalidParams.Len() > 0 {
10263		return invalidParams
10264	}
10265	return nil
10266}
10267
10268// SetSubscriptionDefinitionId sets the SubscriptionDefinitionId field's value.
10269func (s *DeleteSubscriptionDefinitionInput) SetSubscriptionDefinitionId(v string) *DeleteSubscriptionDefinitionInput {
10270	s.SubscriptionDefinitionId = &v
10271	return s
10272}
10273
10274type DeleteSubscriptionDefinitionOutput struct {
10275	_ struct{} `type:"structure"`
10276}
10277
10278// String returns the string representation
10279func (s DeleteSubscriptionDefinitionOutput) String() string {
10280	return awsutil.Prettify(s)
10281}
10282
10283// GoString returns the string representation
10284func (s DeleteSubscriptionDefinitionOutput) GoString() string {
10285	return s.String()
10286}
10287
10288// Information about a deployment.
10289type Deployment struct {
10290	_ struct{} `type:"structure"`
10291
10292	// The time, in milliseconds since the epoch, when the deployment was created.
10293	CreatedAt *string `type:"string"`
10294
10295	// The ARN of the deployment.
10296	DeploymentArn *string `type:"string"`
10297
10298	// The ID of the deployment.
10299	DeploymentId *string `type:"string"`
10300
10301	// The type of the deployment.
10302	DeploymentType *string `type:"string" enum:"DeploymentType"`
10303
10304	// The ARN of the group for this deployment.
10305	GroupArn *string `type:"string"`
10306}
10307
10308// String returns the string representation
10309func (s Deployment) String() string {
10310	return awsutil.Prettify(s)
10311}
10312
10313// GoString returns the string representation
10314func (s Deployment) GoString() string {
10315	return s.String()
10316}
10317
10318// SetCreatedAt sets the CreatedAt field's value.
10319func (s *Deployment) SetCreatedAt(v string) *Deployment {
10320	s.CreatedAt = &v
10321	return s
10322}
10323
10324// SetDeploymentArn sets the DeploymentArn field's value.
10325func (s *Deployment) SetDeploymentArn(v string) *Deployment {
10326	s.DeploymentArn = &v
10327	return s
10328}
10329
10330// SetDeploymentId sets the DeploymentId field's value.
10331func (s *Deployment) SetDeploymentId(v string) *Deployment {
10332	s.DeploymentId = &v
10333	return s
10334}
10335
10336// SetDeploymentType sets the DeploymentType field's value.
10337func (s *Deployment) SetDeploymentType(v string) *Deployment {
10338	s.DeploymentType = &v
10339	return s
10340}
10341
10342// SetGroupArn sets the GroupArn field's value.
10343func (s *Deployment) SetGroupArn(v string) *Deployment {
10344	s.GroupArn = &v
10345	return s
10346}
10347
10348// Information about a device.
10349type Device struct {
10350	_ struct{} `type:"structure"`
10351
10352	// The ARN of the certificate associated with the device.
10353	CertificateArn *string `type:"string"`
10354
10355	// A descriptive or arbitrary ID for the device. This value must be unique within
10356	// the device definition version. Max length is 128 characters with pattern
10357	// ''[a-zA-Z0-9:_-]+''.
10358	Id *string `type:"string"`
10359
10360	// If true, the device's local shadow will be automatically synced with the
10361	// cloud.
10362	SyncShadow *bool `type:"boolean"`
10363
10364	// The thing ARN of the device.
10365	ThingArn *string `type:"string"`
10366}
10367
10368// String returns the string representation
10369func (s Device) String() string {
10370	return awsutil.Prettify(s)
10371}
10372
10373// GoString returns the string representation
10374func (s Device) GoString() string {
10375	return s.String()
10376}
10377
10378// SetCertificateArn sets the CertificateArn field's value.
10379func (s *Device) SetCertificateArn(v string) *Device {
10380	s.CertificateArn = &v
10381	return s
10382}
10383
10384// SetId sets the Id field's value.
10385func (s *Device) SetId(v string) *Device {
10386	s.Id = &v
10387	return s
10388}
10389
10390// SetSyncShadow sets the SyncShadow field's value.
10391func (s *Device) SetSyncShadow(v bool) *Device {
10392	s.SyncShadow = &v
10393	return s
10394}
10395
10396// SetThingArn sets the ThingArn field's value.
10397func (s *Device) SetThingArn(v string) *Device {
10398	s.ThingArn = &v
10399	return s
10400}
10401
10402// Information about a device definition version.
10403type DeviceDefinitionVersion struct {
10404	_ struct{} `type:"structure"`
10405
10406	// A list of devices in the definition version.
10407	Devices []*Device `type:"list"`
10408}
10409
10410// String returns the string representation
10411func (s DeviceDefinitionVersion) String() string {
10412	return awsutil.Prettify(s)
10413}
10414
10415// GoString returns the string representation
10416func (s DeviceDefinitionVersion) GoString() string {
10417	return s.String()
10418}
10419
10420// SetDevices sets the Devices field's value.
10421func (s *DeviceDefinitionVersion) SetDevices(v []*Device) *DeviceDefinitionVersion {
10422	s.Devices = v
10423	return s
10424}
10425
10426type DisassociateRoleFromGroupInput struct {
10427	_ struct{} `type:"structure"`
10428
10429	// GroupId is a required field
10430	GroupId *string `location:"uri" locationName:"GroupId" type:"string" required:"true"`
10431}
10432
10433// String returns the string representation
10434func (s DisassociateRoleFromGroupInput) String() string {
10435	return awsutil.Prettify(s)
10436}
10437
10438// GoString returns the string representation
10439func (s DisassociateRoleFromGroupInput) GoString() string {
10440	return s.String()
10441}
10442
10443// Validate inspects the fields of the type to determine if they are valid.
10444func (s *DisassociateRoleFromGroupInput) Validate() error {
10445	invalidParams := request.ErrInvalidParams{Context: "DisassociateRoleFromGroupInput"}
10446	if s.GroupId == nil {
10447		invalidParams.Add(request.NewErrParamRequired("GroupId"))
10448	}
10449	if s.GroupId != nil && len(*s.GroupId) < 1 {
10450		invalidParams.Add(request.NewErrParamMinLen("GroupId", 1))
10451	}
10452
10453	if invalidParams.Len() > 0 {
10454		return invalidParams
10455	}
10456	return nil
10457}
10458
10459// SetGroupId sets the GroupId field's value.
10460func (s *DisassociateRoleFromGroupInput) SetGroupId(v string) *DisassociateRoleFromGroupInput {
10461	s.GroupId = &v
10462	return s
10463}
10464
10465type DisassociateRoleFromGroupOutput struct {
10466	_ struct{} `type:"structure"`
10467
10468	// The time, in milliseconds since the epoch, when the role was disassociated
10469	// from the group.
10470	DisassociatedAt *string `type:"string"`
10471}
10472
10473// String returns the string representation
10474func (s DisassociateRoleFromGroupOutput) String() string {
10475	return awsutil.Prettify(s)
10476}
10477
10478// GoString returns the string representation
10479func (s DisassociateRoleFromGroupOutput) GoString() string {
10480	return s.String()
10481}
10482
10483// SetDisassociatedAt sets the DisassociatedAt field's value.
10484func (s *DisassociateRoleFromGroupOutput) SetDisassociatedAt(v string) *DisassociateRoleFromGroupOutput {
10485	s.DisassociatedAt = &v
10486	return s
10487}
10488
10489type DisassociateServiceRoleFromAccountInput struct {
10490	_ struct{} `type:"structure"`
10491}
10492
10493// String returns the string representation
10494func (s DisassociateServiceRoleFromAccountInput) String() string {
10495	return awsutil.Prettify(s)
10496}
10497
10498// GoString returns the string representation
10499func (s DisassociateServiceRoleFromAccountInput) GoString() string {
10500	return s.String()
10501}
10502
10503type DisassociateServiceRoleFromAccountOutput struct {
10504	_ struct{} `type:"structure"`
10505
10506	// The time when the service role was disassociated from the account.
10507	DisassociatedAt *string `type:"string"`
10508}
10509
10510// String returns the string representation
10511func (s DisassociateServiceRoleFromAccountOutput) String() string {
10512	return awsutil.Prettify(s)
10513}
10514
10515// GoString returns the string representation
10516func (s DisassociateServiceRoleFromAccountOutput) GoString() string {
10517	return s.String()
10518}
10519
10520// SetDisassociatedAt sets the DisassociatedAt field's value.
10521func (s *DisassociateServiceRoleFromAccountOutput) SetDisassociatedAt(v string) *DisassociateServiceRoleFromAccountOutput {
10522	s.DisassociatedAt = &v
10523	return s
10524}
10525
10526// Details about the error.
10527type ErrorDetail struct {
10528	_ struct{} `type:"structure"`
10529
10530	// A detailed error code.
10531	DetailedErrorCode *string `type:"string"`
10532
10533	// A detailed error message.
10534	DetailedErrorMessage *string `type:"string"`
10535}
10536
10537// String returns the string representation
10538func (s ErrorDetail) String() string {
10539	return awsutil.Prettify(s)
10540}
10541
10542// GoString returns the string representation
10543func (s ErrorDetail) GoString() string {
10544	return s.String()
10545}
10546
10547// SetDetailedErrorCode sets the DetailedErrorCode field's value.
10548func (s *ErrorDetail) SetDetailedErrorCode(v string) *ErrorDetail {
10549	s.DetailedErrorCode = &v
10550	return s
10551}
10552
10553// SetDetailedErrorMessage sets the DetailedErrorMessage field's value.
10554func (s *ErrorDetail) SetDetailedErrorMessage(v string) *ErrorDetail {
10555	s.DetailedErrorMessage = &v
10556	return s
10557}
10558
10559// Information about a Lambda function.
10560type Function struct {
10561	_ struct{} `type:"structure"`
10562
10563	// The ARN of the Lambda function.
10564	FunctionArn *string `type:"string"`
10565
10566	// The configuration of the Lambda function.
10567	FunctionConfiguration *FunctionConfiguration `type:"structure"`
10568
10569	// A descriptive or arbitrary ID for the function. This value must be unique
10570	// within the function definition version. Max length is 128 characters with
10571	// pattern ''[a-zA-Z0-9:_-]+''.
10572	Id *string `type:"string"`
10573}
10574
10575// String returns the string representation
10576func (s Function) String() string {
10577	return awsutil.Prettify(s)
10578}
10579
10580// GoString returns the string representation
10581func (s Function) GoString() string {
10582	return s.String()
10583}
10584
10585// SetFunctionArn sets the FunctionArn field's value.
10586func (s *Function) SetFunctionArn(v string) *Function {
10587	s.FunctionArn = &v
10588	return s
10589}
10590
10591// SetFunctionConfiguration sets the FunctionConfiguration field's value.
10592func (s *Function) SetFunctionConfiguration(v *FunctionConfiguration) *Function {
10593	s.FunctionConfiguration = v
10594	return s
10595}
10596
10597// SetId sets the Id field's value.
10598func (s *Function) SetId(v string) *Function {
10599	s.Id = &v
10600	return s
10601}
10602
10603// The configuration of the Lambda function.
10604type FunctionConfiguration struct {
10605	_ struct{} `type:"structure"`
10606
10607	// The expected encoding type of the input payload for the function. The default
10608	// is ''json''.
10609	EncodingType *string `type:"string" enum:"EncodingType"`
10610
10611	// The environment configuration of the function.
10612	Environment *FunctionConfigurationEnvironment `type:"structure"`
10613
10614	// The execution arguments.
10615	ExecArgs *string `type:"string"`
10616
10617	// The name of the function executable.
10618	Executable *string `type:"string"`
10619
10620	// The memory size, in KB, which the function requires. This setting is not
10621	// applicable and should be cleared when you run the Lambda function without
10622	// containerization.
10623	MemorySize *int64 `type:"integer"`
10624
10625	// True if the function is pinned. Pinned means the function is long-lived and
10626	// starts when the core starts.
10627	Pinned *bool `type:"boolean"`
10628
10629	// The allowed function execution time, after which Lambda should terminate
10630	// the function. This timeout still applies to pinned Lambda functions for each
10631	// request.
10632	Timeout *int64 `type:"integer"`
10633}
10634
10635// String returns the string representation
10636func (s FunctionConfiguration) String() string {
10637	return awsutil.Prettify(s)
10638}
10639
10640// GoString returns the string representation
10641func (s FunctionConfiguration) GoString() string {
10642	return s.String()
10643}
10644
10645// SetEncodingType sets the EncodingType field's value.
10646func (s *FunctionConfiguration) SetEncodingType(v string) *FunctionConfiguration {
10647	s.EncodingType = &v
10648	return s
10649}
10650
10651// SetEnvironment sets the Environment field's value.
10652func (s *FunctionConfiguration) SetEnvironment(v *FunctionConfigurationEnvironment) *FunctionConfiguration {
10653	s.Environment = v
10654	return s
10655}
10656
10657// SetExecArgs sets the ExecArgs field's value.
10658func (s *FunctionConfiguration) SetExecArgs(v string) *FunctionConfiguration {
10659	s.ExecArgs = &v
10660	return s
10661}
10662
10663// SetExecutable sets the Executable field's value.
10664func (s *FunctionConfiguration) SetExecutable(v string) *FunctionConfiguration {
10665	s.Executable = &v
10666	return s
10667}
10668
10669// SetMemorySize sets the MemorySize field's value.
10670func (s *FunctionConfiguration) SetMemorySize(v int64) *FunctionConfiguration {
10671	s.MemorySize = &v
10672	return s
10673}
10674
10675// SetPinned sets the Pinned field's value.
10676func (s *FunctionConfiguration) SetPinned(v bool) *FunctionConfiguration {
10677	s.Pinned = &v
10678	return s
10679}
10680
10681// SetTimeout sets the Timeout field's value.
10682func (s *FunctionConfiguration) SetTimeout(v int64) *FunctionConfiguration {
10683	s.Timeout = &v
10684	return s
10685}
10686
10687// The environment configuration of the function.
10688type FunctionConfigurationEnvironment struct {
10689	_ struct{} `type:"structure"`
10690
10691	// If true, the Lambda function is allowed to access the host's /sys folder.
10692	// Use this when the Lambda function needs to read device information from /sys.
10693	// This setting applies only when you run the Lambda function in a Greengrass
10694	// container.
10695	AccessSysfs *bool `type:"boolean"`
10696
10697	// Configuration related to executing the Lambda function
10698	Execution *FunctionExecutionConfig `type:"structure"`
10699
10700	// A list of the resources, with their permissions, to which the Lambda function
10701	// will be granted access. A Lambda function can have at most 10 resources.
10702	// ResourceAccessPolicies apply only when you run the Lambda function in a Greengrass
10703	// container.
10704	ResourceAccessPolicies []*ResourceAccessPolicy `type:"list"`
10705
10706	// Environment variables for the Lambda function's configuration.
10707	Variables map[string]*string `type:"map"`
10708}
10709
10710// String returns the string representation
10711func (s FunctionConfigurationEnvironment) String() string {
10712	return awsutil.Prettify(s)
10713}
10714
10715// GoString returns the string representation
10716func (s FunctionConfigurationEnvironment) GoString() string {
10717	return s.String()
10718}
10719
10720// SetAccessSysfs sets the AccessSysfs field's value.
10721func (s *FunctionConfigurationEnvironment) SetAccessSysfs(v bool) *FunctionConfigurationEnvironment {
10722	s.AccessSysfs = &v
10723	return s
10724}
10725
10726// SetExecution sets the Execution field's value.
10727func (s *FunctionConfigurationEnvironment) SetExecution(v *FunctionExecutionConfig) *FunctionConfigurationEnvironment {
10728	s.Execution = v
10729	return s
10730}
10731
10732// SetResourceAccessPolicies sets the ResourceAccessPolicies field's value.
10733func (s *FunctionConfigurationEnvironment) SetResourceAccessPolicies(v []*ResourceAccessPolicy) *FunctionConfigurationEnvironment {
10734	s.ResourceAccessPolicies = v
10735	return s
10736}
10737
10738// SetVariables sets the Variables field's value.
10739func (s *FunctionConfigurationEnvironment) SetVariables(v map[string]*string) *FunctionConfigurationEnvironment {
10740	s.Variables = v
10741	return s
10742}
10743
10744// The default configuration that applies to all Lambda functions in the group.
10745// Individual Lambda functions can override these settings.
10746type FunctionDefaultConfig struct {
10747	_ struct{} `type:"structure"`
10748
10749	// Configuration information that specifies how a Lambda function runs.
10750	Execution *FunctionDefaultExecutionConfig `type:"structure"`
10751}
10752
10753// String returns the string representation
10754func (s FunctionDefaultConfig) String() string {
10755	return awsutil.Prettify(s)
10756}
10757
10758// GoString returns the string representation
10759func (s FunctionDefaultConfig) GoString() string {
10760	return s.String()
10761}
10762
10763// SetExecution sets the Execution field's value.
10764func (s *FunctionDefaultConfig) SetExecution(v *FunctionDefaultExecutionConfig) *FunctionDefaultConfig {
10765	s.Execution = v
10766	return s
10767}
10768
10769// Configuration information that specifies how a Lambda function runs.
10770type FunctionDefaultExecutionConfig struct {
10771	_ struct{} `type:"structure"`
10772
10773	// Specifies whether the Lambda function runs in a Greengrass container (default)
10774	// or without containerization. Unless your scenario requires that you run without
10775	// containerization, we recommend that you run in a Greengrass container. Omit
10776	// this value to run the Lambda function with the default containerization for
10777	// the group.
10778	IsolationMode *string `type:"string" enum:"FunctionIsolationMode"`
10779
10780	// Specifies the user and group whose permissions are used when running the
10781	// Lambda function. You can specify one or both values to override the default
10782	// values. We recommend that you avoid running as root unless absolutely necessary
10783	// to minimize the risk of unintended changes or malicious attacks. To run as
10784	// root, you must set ''IsolationMode'' to ''NoContainer'' and update config.json
10785	// in ''greengrass-root/config'' to set ''allowFunctionsToRunAsRoot'' to ''yes''.
10786	RunAs *FunctionRunAsConfig `type:"structure"`
10787}
10788
10789// String returns the string representation
10790func (s FunctionDefaultExecutionConfig) String() string {
10791	return awsutil.Prettify(s)
10792}
10793
10794// GoString returns the string representation
10795func (s FunctionDefaultExecutionConfig) GoString() string {
10796	return s.String()
10797}
10798
10799// SetIsolationMode sets the IsolationMode field's value.
10800func (s *FunctionDefaultExecutionConfig) SetIsolationMode(v string) *FunctionDefaultExecutionConfig {
10801	s.IsolationMode = &v
10802	return s
10803}
10804
10805// SetRunAs sets the RunAs field's value.
10806func (s *FunctionDefaultExecutionConfig) SetRunAs(v *FunctionRunAsConfig) *FunctionDefaultExecutionConfig {
10807	s.RunAs = v
10808	return s
10809}
10810
10811// Information about a function definition version.
10812type FunctionDefinitionVersion struct {
10813	_ struct{} `type:"structure"`
10814
10815	// The default configuration that applies to all Lambda functions in this function
10816	// definition version. Individual Lambda functions can override these settings.
10817	DefaultConfig *FunctionDefaultConfig `type:"structure"`
10818
10819	// A list of Lambda functions in this function definition version.
10820	Functions []*Function `type:"list"`
10821}
10822
10823// String returns the string representation
10824func (s FunctionDefinitionVersion) String() string {
10825	return awsutil.Prettify(s)
10826}
10827
10828// GoString returns the string representation
10829func (s FunctionDefinitionVersion) GoString() string {
10830	return s.String()
10831}
10832
10833// SetDefaultConfig sets the DefaultConfig field's value.
10834func (s *FunctionDefinitionVersion) SetDefaultConfig(v *FunctionDefaultConfig) *FunctionDefinitionVersion {
10835	s.DefaultConfig = v
10836	return s
10837}
10838
10839// SetFunctions sets the Functions field's value.
10840func (s *FunctionDefinitionVersion) SetFunctions(v []*Function) *FunctionDefinitionVersion {
10841	s.Functions = v
10842	return s
10843}
10844
10845// Configuration information that specifies how a Lambda function runs.
10846type FunctionExecutionConfig struct {
10847	_ struct{} `type:"structure"`
10848
10849	// Specifies whether the Lambda function runs in a Greengrass container (default)
10850	// or without containerization. Unless your scenario requires that you run without
10851	// containerization, we recommend that you run in a Greengrass container. Omit
10852	// this value to run the Lambda function with the default containerization for
10853	// the group.
10854	IsolationMode *string `type:"string" enum:"FunctionIsolationMode"`
10855
10856	// Specifies the user and group whose permissions are used when running the
10857	// Lambda function. You can specify one or both values to override the default
10858	// values. We recommend that you avoid running as root unless absolutely necessary
10859	// to minimize the risk of unintended changes or malicious attacks. To run as
10860	// root, you must set ''IsolationMode'' to ''NoContainer'' and update config.json
10861	// in ''greengrass-root/config'' to set ''allowFunctionsToRunAsRoot'' to ''yes''.
10862	RunAs *FunctionRunAsConfig `type:"structure"`
10863}
10864
10865// String returns the string representation
10866func (s FunctionExecutionConfig) String() string {
10867	return awsutil.Prettify(s)
10868}
10869
10870// GoString returns the string representation
10871func (s FunctionExecutionConfig) GoString() string {
10872	return s.String()
10873}
10874
10875// SetIsolationMode sets the IsolationMode field's value.
10876func (s *FunctionExecutionConfig) SetIsolationMode(v string) *FunctionExecutionConfig {
10877	s.IsolationMode = &v
10878	return s
10879}
10880
10881// SetRunAs sets the RunAs field's value.
10882func (s *FunctionExecutionConfig) SetRunAs(v *FunctionRunAsConfig) *FunctionExecutionConfig {
10883	s.RunAs = v
10884	return s
10885}
10886
10887// Specifies the user and group whose permissions are used when running the
10888// Lambda function. You can specify one or both values to override the default
10889// values. We recommend that you avoid running as root unless absolutely necessary
10890// to minimize the risk of unintended changes or malicious attacks. To run as
10891// root, you must set ''IsolationMode'' to ''NoContainer'' and update config.json
10892// in ''greengrass-root/config'' to set ''allowFunctionsToRunAsRoot'' to ''yes''.
10893type FunctionRunAsConfig struct {
10894	_ struct{} `type:"structure"`
10895
10896	// The group ID whose permissions are used to run a Lambda function.
10897	Gid *int64 `type:"integer"`
10898
10899	// The user ID whose permissions are used to run a Lambda function.
10900	Uid *int64 `type:"integer"`
10901}
10902
10903// String returns the string representation
10904func (s FunctionRunAsConfig) String() string {
10905	return awsutil.Prettify(s)
10906}
10907
10908// GoString returns the string representation
10909func (s FunctionRunAsConfig) GoString() string {
10910	return s.String()
10911}
10912
10913// SetGid sets the Gid field's value.
10914func (s *FunctionRunAsConfig) SetGid(v int64) *FunctionRunAsConfig {
10915	s.Gid = &v
10916	return s
10917}
10918
10919// SetUid sets the Uid field's value.
10920func (s *FunctionRunAsConfig) SetUid(v int64) *FunctionRunAsConfig {
10921	s.Uid = &v
10922	return s
10923}
10924
10925type GetAssociatedRoleInput struct {
10926	_ struct{} `type:"structure"`
10927
10928	// GroupId is a required field
10929	GroupId *string `location:"uri" locationName:"GroupId" type:"string" required:"true"`
10930}
10931
10932// String returns the string representation
10933func (s GetAssociatedRoleInput) String() string {
10934	return awsutil.Prettify(s)
10935}
10936
10937// GoString returns the string representation
10938func (s GetAssociatedRoleInput) GoString() string {
10939	return s.String()
10940}
10941
10942// Validate inspects the fields of the type to determine if they are valid.
10943func (s *GetAssociatedRoleInput) Validate() error {
10944	invalidParams := request.ErrInvalidParams{Context: "GetAssociatedRoleInput"}
10945	if s.GroupId == nil {
10946		invalidParams.Add(request.NewErrParamRequired("GroupId"))
10947	}
10948	if s.GroupId != nil && len(*s.GroupId) < 1 {
10949		invalidParams.Add(request.NewErrParamMinLen("GroupId", 1))
10950	}
10951
10952	if invalidParams.Len() > 0 {
10953		return invalidParams
10954	}
10955	return nil
10956}
10957
10958// SetGroupId sets the GroupId field's value.
10959func (s *GetAssociatedRoleInput) SetGroupId(v string) *GetAssociatedRoleInput {
10960	s.GroupId = &v
10961	return s
10962}
10963
10964type GetAssociatedRoleOutput struct {
10965	_ struct{} `type:"structure"`
10966
10967	// The time when the role was associated with the group.
10968	AssociatedAt *string `type:"string"`
10969
10970	// The ARN of the role that is associated with the group.
10971	RoleArn *string `type:"string"`
10972}
10973
10974// String returns the string representation
10975func (s GetAssociatedRoleOutput) String() string {
10976	return awsutil.Prettify(s)
10977}
10978
10979// GoString returns the string representation
10980func (s GetAssociatedRoleOutput) GoString() string {
10981	return s.String()
10982}
10983
10984// SetAssociatedAt sets the AssociatedAt field's value.
10985func (s *GetAssociatedRoleOutput) SetAssociatedAt(v string) *GetAssociatedRoleOutput {
10986	s.AssociatedAt = &v
10987	return s
10988}
10989
10990// SetRoleArn sets the RoleArn field's value.
10991func (s *GetAssociatedRoleOutput) SetRoleArn(v string) *GetAssociatedRoleOutput {
10992	s.RoleArn = &v
10993	return s
10994}
10995
10996type GetBulkDeploymentStatusInput struct {
10997	_ struct{} `type:"structure"`
10998
10999	// BulkDeploymentId is a required field
11000	BulkDeploymentId *string `location:"uri" locationName:"BulkDeploymentId" type:"string" required:"true"`
11001}
11002
11003// String returns the string representation
11004func (s GetBulkDeploymentStatusInput) String() string {
11005	return awsutil.Prettify(s)
11006}
11007
11008// GoString returns the string representation
11009func (s GetBulkDeploymentStatusInput) GoString() string {
11010	return s.String()
11011}
11012
11013// Validate inspects the fields of the type to determine if they are valid.
11014func (s *GetBulkDeploymentStatusInput) Validate() error {
11015	invalidParams := request.ErrInvalidParams{Context: "GetBulkDeploymentStatusInput"}
11016	if s.BulkDeploymentId == nil {
11017		invalidParams.Add(request.NewErrParamRequired("BulkDeploymentId"))
11018	}
11019	if s.BulkDeploymentId != nil && len(*s.BulkDeploymentId) < 1 {
11020		invalidParams.Add(request.NewErrParamMinLen("BulkDeploymentId", 1))
11021	}
11022
11023	if invalidParams.Len() > 0 {
11024		return invalidParams
11025	}
11026	return nil
11027}
11028
11029// SetBulkDeploymentId sets the BulkDeploymentId field's value.
11030func (s *GetBulkDeploymentStatusInput) SetBulkDeploymentId(v string) *GetBulkDeploymentStatusInput {
11031	s.BulkDeploymentId = &v
11032	return s
11033}
11034
11035// Information about the status of a bulk deployment at the time of the request.
11036type GetBulkDeploymentStatusOutput struct {
11037	_ struct{} `type:"structure"`
11038
11039	// Relevant metrics on input records processed during bulk deployment.
11040	BulkDeploymentMetrics *BulkDeploymentMetrics `type:"structure"`
11041
11042	// The status of the bulk deployment.
11043	BulkDeploymentStatus *string `type:"string" enum:"BulkDeploymentStatus"`
11044
11045	// The time, in ISO format, when the deployment was created.
11046	CreatedAt *string `type:"string"`
11047
11048	// Error details
11049	ErrorDetails []*ErrorDetail `type:"list"`
11050
11051	// Error message
11052	ErrorMessage *string `type:"string"`
11053
11054	Tags map[string]*string `locationName:"tags" type:"map"`
11055}
11056
11057// String returns the string representation
11058func (s GetBulkDeploymentStatusOutput) String() string {
11059	return awsutil.Prettify(s)
11060}
11061
11062// GoString returns the string representation
11063func (s GetBulkDeploymentStatusOutput) GoString() string {
11064	return s.String()
11065}
11066
11067// SetBulkDeploymentMetrics sets the BulkDeploymentMetrics field's value.
11068func (s *GetBulkDeploymentStatusOutput) SetBulkDeploymentMetrics(v *BulkDeploymentMetrics) *GetBulkDeploymentStatusOutput {
11069	s.BulkDeploymentMetrics = v
11070	return s
11071}
11072
11073// SetBulkDeploymentStatus sets the BulkDeploymentStatus field's value.
11074func (s *GetBulkDeploymentStatusOutput) SetBulkDeploymentStatus(v string) *GetBulkDeploymentStatusOutput {
11075	s.BulkDeploymentStatus = &v
11076	return s
11077}
11078
11079// SetCreatedAt sets the CreatedAt field's value.
11080func (s *GetBulkDeploymentStatusOutput) SetCreatedAt(v string) *GetBulkDeploymentStatusOutput {
11081	s.CreatedAt = &v
11082	return s
11083}
11084
11085// SetErrorDetails sets the ErrorDetails field's value.
11086func (s *GetBulkDeploymentStatusOutput) SetErrorDetails(v []*ErrorDetail) *GetBulkDeploymentStatusOutput {
11087	s.ErrorDetails = v
11088	return s
11089}
11090
11091// SetErrorMessage sets the ErrorMessage field's value.
11092func (s *GetBulkDeploymentStatusOutput) SetErrorMessage(v string) *GetBulkDeploymentStatusOutput {
11093	s.ErrorMessage = &v
11094	return s
11095}
11096
11097// SetTags sets the Tags field's value.
11098func (s *GetBulkDeploymentStatusOutput) SetTags(v map[string]*string) *GetBulkDeploymentStatusOutput {
11099	s.Tags = v
11100	return s
11101}
11102
11103type GetConnectivityInfoInput struct {
11104	_ struct{} `type:"structure"`
11105
11106	// ThingName is a required field
11107	ThingName *string `location:"uri" locationName:"ThingName" type:"string" required:"true"`
11108}
11109
11110// String returns the string representation
11111func (s GetConnectivityInfoInput) String() string {
11112	return awsutil.Prettify(s)
11113}
11114
11115// GoString returns the string representation
11116func (s GetConnectivityInfoInput) GoString() string {
11117	return s.String()
11118}
11119
11120// Validate inspects the fields of the type to determine if they are valid.
11121func (s *GetConnectivityInfoInput) Validate() error {
11122	invalidParams := request.ErrInvalidParams{Context: "GetConnectivityInfoInput"}
11123	if s.ThingName == nil {
11124		invalidParams.Add(request.NewErrParamRequired("ThingName"))
11125	}
11126	if s.ThingName != nil && len(*s.ThingName) < 1 {
11127		invalidParams.Add(request.NewErrParamMinLen("ThingName", 1))
11128	}
11129
11130	if invalidParams.Len() > 0 {
11131		return invalidParams
11132	}
11133	return nil
11134}
11135
11136// SetThingName sets the ThingName field's value.
11137func (s *GetConnectivityInfoInput) SetThingName(v string) *GetConnectivityInfoInput {
11138	s.ThingName = &v
11139	return s
11140}
11141
11142// Information about a Greengrass core's connectivity.
11143type GetConnectivityInfoOutput struct {
11144	_ struct{} `type:"structure"`
11145
11146	// Connectivity info list.
11147	ConnectivityInfo []*ConnectivityInfo `type:"list"`
11148
11149	// A message about the connectivity info request.
11150	Message *string `locationName:"message" type:"string"`
11151}
11152
11153// String returns the string representation
11154func (s GetConnectivityInfoOutput) String() string {
11155	return awsutil.Prettify(s)
11156}
11157
11158// GoString returns the string representation
11159func (s GetConnectivityInfoOutput) GoString() string {
11160	return s.String()
11161}
11162
11163// SetConnectivityInfo sets the ConnectivityInfo field's value.
11164func (s *GetConnectivityInfoOutput) SetConnectivityInfo(v []*ConnectivityInfo) *GetConnectivityInfoOutput {
11165	s.ConnectivityInfo = v
11166	return s
11167}
11168
11169// SetMessage sets the Message field's value.
11170func (s *GetConnectivityInfoOutput) SetMessage(v string) *GetConnectivityInfoOutput {
11171	s.Message = &v
11172	return s
11173}
11174
11175type GetConnectorDefinitionInput struct {
11176	_ struct{} `type:"structure"`
11177
11178	// ConnectorDefinitionId is a required field
11179	ConnectorDefinitionId *string `location:"uri" locationName:"ConnectorDefinitionId" type:"string" required:"true"`
11180}
11181
11182// String returns the string representation
11183func (s GetConnectorDefinitionInput) String() string {
11184	return awsutil.Prettify(s)
11185}
11186
11187// GoString returns the string representation
11188func (s GetConnectorDefinitionInput) GoString() string {
11189	return s.String()
11190}
11191
11192// Validate inspects the fields of the type to determine if they are valid.
11193func (s *GetConnectorDefinitionInput) Validate() error {
11194	invalidParams := request.ErrInvalidParams{Context: "GetConnectorDefinitionInput"}
11195	if s.ConnectorDefinitionId == nil {
11196		invalidParams.Add(request.NewErrParamRequired("ConnectorDefinitionId"))
11197	}
11198	if s.ConnectorDefinitionId != nil && len(*s.ConnectorDefinitionId) < 1 {
11199		invalidParams.Add(request.NewErrParamMinLen("ConnectorDefinitionId", 1))
11200	}
11201
11202	if invalidParams.Len() > 0 {
11203		return invalidParams
11204	}
11205	return nil
11206}
11207
11208// SetConnectorDefinitionId sets the ConnectorDefinitionId field's value.
11209func (s *GetConnectorDefinitionInput) SetConnectorDefinitionId(v string) *GetConnectorDefinitionInput {
11210	s.ConnectorDefinitionId = &v
11211	return s
11212}
11213
11214type GetConnectorDefinitionOutput struct {
11215	_ struct{} `type:"structure"`
11216
11217	Arn *string `type:"string"`
11218
11219	CreationTimestamp *string `type:"string"`
11220
11221	Id *string `type:"string"`
11222
11223	LastUpdatedTimestamp *string `type:"string"`
11224
11225	LatestVersion *string `type:"string"`
11226
11227	LatestVersionArn *string `type:"string"`
11228
11229	Name *string `type:"string"`
11230
11231	Tags map[string]*string `locationName:"tags" type:"map"`
11232}
11233
11234// String returns the string representation
11235func (s GetConnectorDefinitionOutput) String() string {
11236	return awsutil.Prettify(s)
11237}
11238
11239// GoString returns the string representation
11240func (s GetConnectorDefinitionOutput) GoString() string {
11241	return s.String()
11242}
11243
11244// SetArn sets the Arn field's value.
11245func (s *GetConnectorDefinitionOutput) SetArn(v string) *GetConnectorDefinitionOutput {
11246	s.Arn = &v
11247	return s
11248}
11249
11250// SetCreationTimestamp sets the CreationTimestamp field's value.
11251func (s *GetConnectorDefinitionOutput) SetCreationTimestamp(v string) *GetConnectorDefinitionOutput {
11252	s.CreationTimestamp = &v
11253	return s
11254}
11255
11256// SetId sets the Id field's value.
11257func (s *GetConnectorDefinitionOutput) SetId(v string) *GetConnectorDefinitionOutput {
11258	s.Id = &v
11259	return s
11260}
11261
11262// SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value.
11263func (s *GetConnectorDefinitionOutput) SetLastUpdatedTimestamp(v string) *GetConnectorDefinitionOutput {
11264	s.LastUpdatedTimestamp = &v
11265	return s
11266}
11267
11268// SetLatestVersion sets the LatestVersion field's value.
11269func (s *GetConnectorDefinitionOutput) SetLatestVersion(v string) *GetConnectorDefinitionOutput {
11270	s.LatestVersion = &v
11271	return s
11272}
11273
11274// SetLatestVersionArn sets the LatestVersionArn field's value.
11275func (s *GetConnectorDefinitionOutput) SetLatestVersionArn(v string) *GetConnectorDefinitionOutput {
11276	s.LatestVersionArn = &v
11277	return s
11278}
11279
11280// SetName sets the Name field's value.
11281func (s *GetConnectorDefinitionOutput) SetName(v string) *GetConnectorDefinitionOutput {
11282	s.Name = &v
11283	return s
11284}
11285
11286// SetTags sets the Tags field's value.
11287func (s *GetConnectorDefinitionOutput) SetTags(v map[string]*string) *GetConnectorDefinitionOutput {
11288	s.Tags = v
11289	return s
11290}
11291
11292type GetConnectorDefinitionVersionInput struct {
11293	_ struct{} `type:"structure"`
11294
11295	// ConnectorDefinitionId is a required field
11296	ConnectorDefinitionId *string `location:"uri" locationName:"ConnectorDefinitionId" type:"string" required:"true"`
11297
11298	// ConnectorDefinitionVersionId is a required field
11299	ConnectorDefinitionVersionId *string `location:"uri" locationName:"ConnectorDefinitionVersionId" type:"string" required:"true"`
11300
11301	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
11302}
11303
11304// String returns the string representation
11305func (s GetConnectorDefinitionVersionInput) String() string {
11306	return awsutil.Prettify(s)
11307}
11308
11309// GoString returns the string representation
11310func (s GetConnectorDefinitionVersionInput) GoString() string {
11311	return s.String()
11312}
11313
11314// Validate inspects the fields of the type to determine if they are valid.
11315func (s *GetConnectorDefinitionVersionInput) Validate() error {
11316	invalidParams := request.ErrInvalidParams{Context: "GetConnectorDefinitionVersionInput"}
11317	if s.ConnectorDefinitionId == nil {
11318		invalidParams.Add(request.NewErrParamRequired("ConnectorDefinitionId"))
11319	}
11320	if s.ConnectorDefinitionId != nil && len(*s.ConnectorDefinitionId) < 1 {
11321		invalidParams.Add(request.NewErrParamMinLen("ConnectorDefinitionId", 1))
11322	}
11323	if s.ConnectorDefinitionVersionId == nil {
11324		invalidParams.Add(request.NewErrParamRequired("ConnectorDefinitionVersionId"))
11325	}
11326	if s.ConnectorDefinitionVersionId != nil && len(*s.ConnectorDefinitionVersionId) < 1 {
11327		invalidParams.Add(request.NewErrParamMinLen("ConnectorDefinitionVersionId", 1))
11328	}
11329
11330	if invalidParams.Len() > 0 {
11331		return invalidParams
11332	}
11333	return nil
11334}
11335
11336// SetConnectorDefinitionId sets the ConnectorDefinitionId field's value.
11337func (s *GetConnectorDefinitionVersionInput) SetConnectorDefinitionId(v string) *GetConnectorDefinitionVersionInput {
11338	s.ConnectorDefinitionId = &v
11339	return s
11340}
11341
11342// SetConnectorDefinitionVersionId sets the ConnectorDefinitionVersionId field's value.
11343func (s *GetConnectorDefinitionVersionInput) SetConnectorDefinitionVersionId(v string) *GetConnectorDefinitionVersionInput {
11344	s.ConnectorDefinitionVersionId = &v
11345	return s
11346}
11347
11348// SetNextToken sets the NextToken field's value.
11349func (s *GetConnectorDefinitionVersionInput) SetNextToken(v string) *GetConnectorDefinitionVersionInput {
11350	s.NextToken = &v
11351	return s
11352}
11353
11354// Information about a connector definition version.
11355type GetConnectorDefinitionVersionOutput struct {
11356	_ struct{} `type:"structure"`
11357
11358	// The ARN of the connector definition version.
11359	Arn *string `type:"string"`
11360
11361	// The time, in milliseconds since the epoch, when the connector definition
11362	// version was created.
11363	CreationTimestamp *string `type:"string"`
11364
11365	// Information about the connector definition version.
11366	Definition *ConnectorDefinitionVersion `type:"structure"`
11367
11368	// The ID of the connector definition version.
11369	Id *string `type:"string"`
11370
11371	// The token for the next set of results, or ''null'' if there are no additional
11372	// results.
11373	NextToken *string `type:"string"`
11374
11375	// The version of the connector definition version.
11376	Version *string `type:"string"`
11377}
11378
11379// String returns the string representation
11380func (s GetConnectorDefinitionVersionOutput) String() string {
11381	return awsutil.Prettify(s)
11382}
11383
11384// GoString returns the string representation
11385func (s GetConnectorDefinitionVersionOutput) GoString() string {
11386	return s.String()
11387}
11388
11389// SetArn sets the Arn field's value.
11390func (s *GetConnectorDefinitionVersionOutput) SetArn(v string) *GetConnectorDefinitionVersionOutput {
11391	s.Arn = &v
11392	return s
11393}
11394
11395// SetCreationTimestamp sets the CreationTimestamp field's value.
11396func (s *GetConnectorDefinitionVersionOutput) SetCreationTimestamp(v string) *GetConnectorDefinitionVersionOutput {
11397	s.CreationTimestamp = &v
11398	return s
11399}
11400
11401// SetDefinition sets the Definition field's value.
11402func (s *GetConnectorDefinitionVersionOutput) SetDefinition(v *ConnectorDefinitionVersion) *GetConnectorDefinitionVersionOutput {
11403	s.Definition = v
11404	return s
11405}
11406
11407// SetId sets the Id field's value.
11408func (s *GetConnectorDefinitionVersionOutput) SetId(v string) *GetConnectorDefinitionVersionOutput {
11409	s.Id = &v
11410	return s
11411}
11412
11413// SetNextToken sets the NextToken field's value.
11414func (s *GetConnectorDefinitionVersionOutput) SetNextToken(v string) *GetConnectorDefinitionVersionOutput {
11415	s.NextToken = &v
11416	return s
11417}
11418
11419// SetVersion sets the Version field's value.
11420func (s *GetConnectorDefinitionVersionOutput) SetVersion(v string) *GetConnectorDefinitionVersionOutput {
11421	s.Version = &v
11422	return s
11423}
11424
11425type GetCoreDefinitionInput struct {
11426	_ struct{} `type:"structure"`
11427
11428	// CoreDefinitionId is a required field
11429	CoreDefinitionId *string `location:"uri" locationName:"CoreDefinitionId" type:"string" required:"true"`
11430}
11431
11432// String returns the string representation
11433func (s GetCoreDefinitionInput) String() string {
11434	return awsutil.Prettify(s)
11435}
11436
11437// GoString returns the string representation
11438func (s GetCoreDefinitionInput) GoString() string {
11439	return s.String()
11440}
11441
11442// Validate inspects the fields of the type to determine if they are valid.
11443func (s *GetCoreDefinitionInput) Validate() error {
11444	invalidParams := request.ErrInvalidParams{Context: "GetCoreDefinitionInput"}
11445	if s.CoreDefinitionId == nil {
11446		invalidParams.Add(request.NewErrParamRequired("CoreDefinitionId"))
11447	}
11448	if s.CoreDefinitionId != nil && len(*s.CoreDefinitionId) < 1 {
11449		invalidParams.Add(request.NewErrParamMinLen("CoreDefinitionId", 1))
11450	}
11451
11452	if invalidParams.Len() > 0 {
11453		return invalidParams
11454	}
11455	return nil
11456}
11457
11458// SetCoreDefinitionId sets the CoreDefinitionId field's value.
11459func (s *GetCoreDefinitionInput) SetCoreDefinitionId(v string) *GetCoreDefinitionInput {
11460	s.CoreDefinitionId = &v
11461	return s
11462}
11463
11464type GetCoreDefinitionOutput struct {
11465	_ struct{} `type:"structure"`
11466
11467	Arn *string `type:"string"`
11468
11469	CreationTimestamp *string `type:"string"`
11470
11471	Id *string `type:"string"`
11472
11473	LastUpdatedTimestamp *string `type:"string"`
11474
11475	LatestVersion *string `type:"string"`
11476
11477	LatestVersionArn *string `type:"string"`
11478
11479	Name *string `type:"string"`
11480
11481	Tags map[string]*string `locationName:"tags" type:"map"`
11482}
11483
11484// String returns the string representation
11485func (s GetCoreDefinitionOutput) String() string {
11486	return awsutil.Prettify(s)
11487}
11488
11489// GoString returns the string representation
11490func (s GetCoreDefinitionOutput) GoString() string {
11491	return s.String()
11492}
11493
11494// SetArn sets the Arn field's value.
11495func (s *GetCoreDefinitionOutput) SetArn(v string) *GetCoreDefinitionOutput {
11496	s.Arn = &v
11497	return s
11498}
11499
11500// SetCreationTimestamp sets the CreationTimestamp field's value.
11501func (s *GetCoreDefinitionOutput) SetCreationTimestamp(v string) *GetCoreDefinitionOutput {
11502	s.CreationTimestamp = &v
11503	return s
11504}
11505
11506// SetId sets the Id field's value.
11507func (s *GetCoreDefinitionOutput) SetId(v string) *GetCoreDefinitionOutput {
11508	s.Id = &v
11509	return s
11510}
11511
11512// SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value.
11513func (s *GetCoreDefinitionOutput) SetLastUpdatedTimestamp(v string) *GetCoreDefinitionOutput {
11514	s.LastUpdatedTimestamp = &v
11515	return s
11516}
11517
11518// SetLatestVersion sets the LatestVersion field's value.
11519func (s *GetCoreDefinitionOutput) SetLatestVersion(v string) *GetCoreDefinitionOutput {
11520	s.LatestVersion = &v
11521	return s
11522}
11523
11524// SetLatestVersionArn sets the LatestVersionArn field's value.
11525func (s *GetCoreDefinitionOutput) SetLatestVersionArn(v string) *GetCoreDefinitionOutput {
11526	s.LatestVersionArn = &v
11527	return s
11528}
11529
11530// SetName sets the Name field's value.
11531func (s *GetCoreDefinitionOutput) SetName(v string) *GetCoreDefinitionOutput {
11532	s.Name = &v
11533	return s
11534}
11535
11536// SetTags sets the Tags field's value.
11537func (s *GetCoreDefinitionOutput) SetTags(v map[string]*string) *GetCoreDefinitionOutput {
11538	s.Tags = v
11539	return s
11540}
11541
11542type GetCoreDefinitionVersionInput struct {
11543	_ struct{} `type:"structure"`
11544
11545	// CoreDefinitionId is a required field
11546	CoreDefinitionId *string `location:"uri" locationName:"CoreDefinitionId" type:"string" required:"true"`
11547
11548	// CoreDefinitionVersionId is a required field
11549	CoreDefinitionVersionId *string `location:"uri" locationName:"CoreDefinitionVersionId" type:"string" required:"true"`
11550}
11551
11552// String returns the string representation
11553func (s GetCoreDefinitionVersionInput) String() string {
11554	return awsutil.Prettify(s)
11555}
11556
11557// GoString returns the string representation
11558func (s GetCoreDefinitionVersionInput) GoString() string {
11559	return s.String()
11560}
11561
11562// Validate inspects the fields of the type to determine if they are valid.
11563func (s *GetCoreDefinitionVersionInput) Validate() error {
11564	invalidParams := request.ErrInvalidParams{Context: "GetCoreDefinitionVersionInput"}
11565	if s.CoreDefinitionId == nil {
11566		invalidParams.Add(request.NewErrParamRequired("CoreDefinitionId"))
11567	}
11568	if s.CoreDefinitionId != nil && len(*s.CoreDefinitionId) < 1 {
11569		invalidParams.Add(request.NewErrParamMinLen("CoreDefinitionId", 1))
11570	}
11571	if s.CoreDefinitionVersionId == nil {
11572		invalidParams.Add(request.NewErrParamRequired("CoreDefinitionVersionId"))
11573	}
11574	if s.CoreDefinitionVersionId != nil && len(*s.CoreDefinitionVersionId) < 1 {
11575		invalidParams.Add(request.NewErrParamMinLen("CoreDefinitionVersionId", 1))
11576	}
11577
11578	if invalidParams.Len() > 0 {
11579		return invalidParams
11580	}
11581	return nil
11582}
11583
11584// SetCoreDefinitionId sets the CoreDefinitionId field's value.
11585func (s *GetCoreDefinitionVersionInput) SetCoreDefinitionId(v string) *GetCoreDefinitionVersionInput {
11586	s.CoreDefinitionId = &v
11587	return s
11588}
11589
11590// SetCoreDefinitionVersionId sets the CoreDefinitionVersionId field's value.
11591func (s *GetCoreDefinitionVersionInput) SetCoreDefinitionVersionId(v string) *GetCoreDefinitionVersionInput {
11592	s.CoreDefinitionVersionId = &v
11593	return s
11594}
11595
11596type GetCoreDefinitionVersionOutput struct {
11597	_ struct{} `type:"structure"`
11598
11599	// The ARN of the core definition version.
11600	Arn *string `type:"string"`
11601
11602	// The time, in milliseconds since the epoch, when the core definition version
11603	// was created.
11604	CreationTimestamp *string `type:"string"`
11605
11606	// Information about the core definition version.
11607	Definition *CoreDefinitionVersion `type:"structure"`
11608
11609	// The ID of the core definition version.
11610	Id *string `type:"string"`
11611
11612	// The token for the next set of results, or ''null'' if there are no additional
11613	// results.
11614	NextToken *string `type:"string"`
11615
11616	// The version of the core definition version.
11617	Version *string `type:"string"`
11618}
11619
11620// String returns the string representation
11621func (s GetCoreDefinitionVersionOutput) String() string {
11622	return awsutil.Prettify(s)
11623}
11624
11625// GoString returns the string representation
11626func (s GetCoreDefinitionVersionOutput) GoString() string {
11627	return s.String()
11628}
11629
11630// SetArn sets the Arn field's value.
11631func (s *GetCoreDefinitionVersionOutput) SetArn(v string) *GetCoreDefinitionVersionOutput {
11632	s.Arn = &v
11633	return s
11634}
11635
11636// SetCreationTimestamp sets the CreationTimestamp field's value.
11637func (s *GetCoreDefinitionVersionOutput) SetCreationTimestamp(v string) *GetCoreDefinitionVersionOutput {
11638	s.CreationTimestamp = &v
11639	return s
11640}
11641
11642// SetDefinition sets the Definition field's value.
11643func (s *GetCoreDefinitionVersionOutput) SetDefinition(v *CoreDefinitionVersion) *GetCoreDefinitionVersionOutput {
11644	s.Definition = v
11645	return s
11646}
11647
11648// SetId sets the Id field's value.
11649func (s *GetCoreDefinitionVersionOutput) SetId(v string) *GetCoreDefinitionVersionOutput {
11650	s.Id = &v
11651	return s
11652}
11653
11654// SetNextToken sets the NextToken field's value.
11655func (s *GetCoreDefinitionVersionOutput) SetNextToken(v string) *GetCoreDefinitionVersionOutput {
11656	s.NextToken = &v
11657	return s
11658}
11659
11660// SetVersion sets the Version field's value.
11661func (s *GetCoreDefinitionVersionOutput) SetVersion(v string) *GetCoreDefinitionVersionOutput {
11662	s.Version = &v
11663	return s
11664}
11665
11666type GetDeploymentStatusInput struct {
11667	_ struct{} `type:"structure"`
11668
11669	// DeploymentId is a required field
11670	DeploymentId *string `location:"uri" locationName:"DeploymentId" type:"string" required:"true"`
11671
11672	// GroupId is a required field
11673	GroupId *string `location:"uri" locationName:"GroupId" type:"string" required:"true"`
11674}
11675
11676// String returns the string representation
11677func (s GetDeploymentStatusInput) String() string {
11678	return awsutil.Prettify(s)
11679}
11680
11681// GoString returns the string representation
11682func (s GetDeploymentStatusInput) GoString() string {
11683	return s.String()
11684}
11685
11686// Validate inspects the fields of the type to determine if they are valid.
11687func (s *GetDeploymentStatusInput) Validate() error {
11688	invalidParams := request.ErrInvalidParams{Context: "GetDeploymentStatusInput"}
11689	if s.DeploymentId == nil {
11690		invalidParams.Add(request.NewErrParamRequired("DeploymentId"))
11691	}
11692	if s.DeploymentId != nil && len(*s.DeploymentId) < 1 {
11693		invalidParams.Add(request.NewErrParamMinLen("DeploymentId", 1))
11694	}
11695	if s.GroupId == nil {
11696		invalidParams.Add(request.NewErrParamRequired("GroupId"))
11697	}
11698	if s.GroupId != nil && len(*s.GroupId) < 1 {
11699		invalidParams.Add(request.NewErrParamMinLen("GroupId", 1))
11700	}
11701
11702	if invalidParams.Len() > 0 {
11703		return invalidParams
11704	}
11705	return nil
11706}
11707
11708// SetDeploymentId sets the DeploymentId field's value.
11709func (s *GetDeploymentStatusInput) SetDeploymentId(v string) *GetDeploymentStatusInput {
11710	s.DeploymentId = &v
11711	return s
11712}
11713
11714// SetGroupId sets the GroupId field's value.
11715func (s *GetDeploymentStatusInput) SetGroupId(v string) *GetDeploymentStatusInput {
11716	s.GroupId = &v
11717	return s
11718}
11719
11720// Information about the status of a deployment for a group.
11721type GetDeploymentStatusOutput struct {
11722	_ struct{} `type:"structure"`
11723
11724	// The status of the deployment: ''InProgress'', ''Building'', ''Success'',
11725	// or ''Failure''.
11726	DeploymentStatus *string `type:"string"`
11727
11728	// The type of the deployment.
11729	DeploymentType *string `type:"string" enum:"DeploymentType"`
11730
11731	// Error details
11732	ErrorDetails []*ErrorDetail `type:"list"`
11733
11734	// Error message
11735	ErrorMessage *string `type:"string"`
11736
11737	// The time, in milliseconds since the epoch, when the deployment status was
11738	// updated.
11739	UpdatedAt *string `type:"string"`
11740}
11741
11742// String returns the string representation
11743func (s GetDeploymentStatusOutput) String() string {
11744	return awsutil.Prettify(s)
11745}
11746
11747// GoString returns the string representation
11748func (s GetDeploymentStatusOutput) GoString() string {
11749	return s.String()
11750}
11751
11752// SetDeploymentStatus sets the DeploymentStatus field's value.
11753func (s *GetDeploymentStatusOutput) SetDeploymentStatus(v string) *GetDeploymentStatusOutput {
11754	s.DeploymentStatus = &v
11755	return s
11756}
11757
11758// SetDeploymentType sets the DeploymentType field's value.
11759func (s *GetDeploymentStatusOutput) SetDeploymentType(v string) *GetDeploymentStatusOutput {
11760	s.DeploymentType = &v
11761	return s
11762}
11763
11764// SetErrorDetails sets the ErrorDetails field's value.
11765func (s *GetDeploymentStatusOutput) SetErrorDetails(v []*ErrorDetail) *GetDeploymentStatusOutput {
11766	s.ErrorDetails = v
11767	return s
11768}
11769
11770// SetErrorMessage sets the ErrorMessage field's value.
11771func (s *GetDeploymentStatusOutput) SetErrorMessage(v string) *GetDeploymentStatusOutput {
11772	s.ErrorMessage = &v
11773	return s
11774}
11775
11776// SetUpdatedAt sets the UpdatedAt field's value.
11777func (s *GetDeploymentStatusOutput) SetUpdatedAt(v string) *GetDeploymentStatusOutput {
11778	s.UpdatedAt = &v
11779	return s
11780}
11781
11782type GetDeviceDefinitionInput struct {
11783	_ struct{} `type:"structure"`
11784
11785	// DeviceDefinitionId is a required field
11786	DeviceDefinitionId *string `location:"uri" locationName:"DeviceDefinitionId" type:"string" required:"true"`
11787}
11788
11789// String returns the string representation
11790func (s GetDeviceDefinitionInput) String() string {
11791	return awsutil.Prettify(s)
11792}
11793
11794// GoString returns the string representation
11795func (s GetDeviceDefinitionInput) GoString() string {
11796	return s.String()
11797}
11798
11799// Validate inspects the fields of the type to determine if they are valid.
11800func (s *GetDeviceDefinitionInput) Validate() error {
11801	invalidParams := request.ErrInvalidParams{Context: "GetDeviceDefinitionInput"}
11802	if s.DeviceDefinitionId == nil {
11803		invalidParams.Add(request.NewErrParamRequired("DeviceDefinitionId"))
11804	}
11805	if s.DeviceDefinitionId != nil && len(*s.DeviceDefinitionId) < 1 {
11806		invalidParams.Add(request.NewErrParamMinLen("DeviceDefinitionId", 1))
11807	}
11808
11809	if invalidParams.Len() > 0 {
11810		return invalidParams
11811	}
11812	return nil
11813}
11814
11815// SetDeviceDefinitionId sets the DeviceDefinitionId field's value.
11816func (s *GetDeviceDefinitionInput) SetDeviceDefinitionId(v string) *GetDeviceDefinitionInput {
11817	s.DeviceDefinitionId = &v
11818	return s
11819}
11820
11821type GetDeviceDefinitionOutput struct {
11822	_ struct{} `type:"structure"`
11823
11824	Arn *string `type:"string"`
11825
11826	CreationTimestamp *string `type:"string"`
11827
11828	Id *string `type:"string"`
11829
11830	LastUpdatedTimestamp *string `type:"string"`
11831
11832	LatestVersion *string `type:"string"`
11833
11834	LatestVersionArn *string `type:"string"`
11835
11836	Name *string `type:"string"`
11837
11838	Tags map[string]*string `locationName:"tags" type:"map"`
11839}
11840
11841// String returns the string representation
11842func (s GetDeviceDefinitionOutput) String() string {
11843	return awsutil.Prettify(s)
11844}
11845
11846// GoString returns the string representation
11847func (s GetDeviceDefinitionOutput) GoString() string {
11848	return s.String()
11849}
11850
11851// SetArn sets the Arn field's value.
11852func (s *GetDeviceDefinitionOutput) SetArn(v string) *GetDeviceDefinitionOutput {
11853	s.Arn = &v
11854	return s
11855}
11856
11857// SetCreationTimestamp sets the CreationTimestamp field's value.
11858func (s *GetDeviceDefinitionOutput) SetCreationTimestamp(v string) *GetDeviceDefinitionOutput {
11859	s.CreationTimestamp = &v
11860	return s
11861}
11862
11863// SetId sets the Id field's value.
11864func (s *GetDeviceDefinitionOutput) SetId(v string) *GetDeviceDefinitionOutput {
11865	s.Id = &v
11866	return s
11867}
11868
11869// SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value.
11870func (s *GetDeviceDefinitionOutput) SetLastUpdatedTimestamp(v string) *GetDeviceDefinitionOutput {
11871	s.LastUpdatedTimestamp = &v
11872	return s
11873}
11874
11875// SetLatestVersion sets the LatestVersion field's value.
11876func (s *GetDeviceDefinitionOutput) SetLatestVersion(v string) *GetDeviceDefinitionOutput {
11877	s.LatestVersion = &v
11878	return s
11879}
11880
11881// SetLatestVersionArn sets the LatestVersionArn field's value.
11882func (s *GetDeviceDefinitionOutput) SetLatestVersionArn(v string) *GetDeviceDefinitionOutput {
11883	s.LatestVersionArn = &v
11884	return s
11885}
11886
11887// SetName sets the Name field's value.
11888func (s *GetDeviceDefinitionOutput) SetName(v string) *GetDeviceDefinitionOutput {
11889	s.Name = &v
11890	return s
11891}
11892
11893// SetTags sets the Tags field's value.
11894func (s *GetDeviceDefinitionOutput) SetTags(v map[string]*string) *GetDeviceDefinitionOutput {
11895	s.Tags = v
11896	return s
11897}
11898
11899type GetDeviceDefinitionVersionInput struct {
11900	_ struct{} `type:"structure"`
11901
11902	// DeviceDefinitionId is a required field
11903	DeviceDefinitionId *string `location:"uri" locationName:"DeviceDefinitionId" type:"string" required:"true"`
11904
11905	// DeviceDefinitionVersionId is a required field
11906	DeviceDefinitionVersionId *string `location:"uri" locationName:"DeviceDefinitionVersionId" type:"string" required:"true"`
11907
11908	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
11909}
11910
11911// String returns the string representation
11912func (s GetDeviceDefinitionVersionInput) String() string {
11913	return awsutil.Prettify(s)
11914}
11915
11916// GoString returns the string representation
11917func (s GetDeviceDefinitionVersionInput) GoString() string {
11918	return s.String()
11919}
11920
11921// Validate inspects the fields of the type to determine if they are valid.
11922func (s *GetDeviceDefinitionVersionInput) Validate() error {
11923	invalidParams := request.ErrInvalidParams{Context: "GetDeviceDefinitionVersionInput"}
11924	if s.DeviceDefinitionId == nil {
11925		invalidParams.Add(request.NewErrParamRequired("DeviceDefinitionId"))
11926	}
11927	if s.DeviceDefinitionId != nil && len(*s.DeviceDefinitionId) < 1 {
11928		invalidParams.Add(request.NewErrParamMinLen("DeviceDefinitionId", 1))
11929	}
11930	if s.DeviceDefinitionVersionId == nil {
11931		invalidParams.Add(request.NewErrParamRequired("DeviceDefinitionVersionId"))
11932	}
11933	if s.DeviceDefinitionVersionId != nil && len(*s.DeviceDefinitionVersionId) < 1 {
11934		invalidParams.Add(request.NewErrParamMinLen("DeviceDefinitionVersionId", 1))
11935	}
11936
11937	if invalidParams.Len() > 0 {
11938		return invalidParams
11939	}
11940	return nil
11941}
11942
11943// SetDeviceDefinitionId sets the DeviceDefinitionId field's value.
11944func (s *GetDeviceDefinitionVersionInput) SetDeviceDefinitionId(v string) *GetDeviceDefinitionVersionInput {
11945	s.DeviceDefinitionId = &v
11946	return s
11947}
11948
11949// SetDeviceDefinitionVersionId sets the DeviceDefinitionVersionId field's value.
11950func (s *GetDeviceDefinitionVersionInput) SetDeviceDefinitionVersionId(v string) *GetDeviceDefinitionVersionInput {
11951	s.DeviceDefinitionVersionId = &v
11952	return s
11953}
11954
11955// SetNextToken sets the NextToken field's value.
11956func (s *GetDeviceDefinitionVersionInput) SetNextToken(v string) *GetDeviceDefinitionVersionInput {
11957	s.NextToken = &v
11958	return s
11959}
11960
11961type GetDeviceDefinitionVersionOutput struct {
11962	_ struct{} `type:"structure"`
11963
11964	// The ARN of the device definition version.
11965	Arn *string `type:"string"`
11966
11967	// The time, in milliseconds since the epoch, when the device definition version
11968	// was created.
11969	CreationTimestamp *string `type:"string"`
11970
11971	// Information about the device definition version.
11972	Definition *DeviceDefinitionVersion `type:"structure"`
11973
11974	// The ID of the device definition version.
11975	Id *string `type:"string"`
11976
11977	// The token for the next set of results, or ''null'' if there are no additional
11978	// results.
11979	NextToken *string `type:"string"`
11980
11981	// The version of the device definition version.
11982	Version *string `type:"string"`
11983}
11984
11985// String returns the string representation
11986func (s GetDeviceDefinitionVersionOutput) String() string {
11987	return awsutil.Prettify(s)
11988}
11989
11990// GoString returns the string representation
11991func (s GetDeviceDefinitionVersionOutput) GoString() string {
11992	return s.String()
11993}
11994
11995// SetArn sets the Arn field's value.
11996func (s *GetDeviceDefinitionVersionOutput) SetArn(v string) *GetDeviceDefinitionVersionOutput {
11997	s.Arn = &v
11998	return s
11999}
12000
12001// SetCreationTimestamp sets the CreationTimestamp field's value.
12002func (s *GetDeviceDefinitionVersionOutput) SetCreationTimestamp(v string) *GetDeviceDefinitionVersionOutput {
12003	s.CreationTimestamp = &v
12004	return s
12005}
12006
12007// SetDefinition sets the Definition field's value.
12008func (s *GetDeviceDefinitionVersionOutput) SetDefinition(v *DeviceDefinitionVersion) *GetDeviceDefinitionVersionOutput {
12009	s.Definition = v
12010	return s
12011}
12012
12013// SetId sets the Id field's value.
12014func (s *GetDeviceDefinitionVersionOutput) SetId(v string) *GetDeviceDefinitionVersionOutput {
12015	s.Id = &v
12016	return s
12017}
12018
12019// SetNextToken sets the NextToken field's value.
12020func (s *GetDeviceDefinitionVersionOutput) SetNextToken(v string) *GetDeviceDefinitionVersionOutput {
12021	s.NextToken = &v
12022	return s
12023}
12024
12025// SetVersion sets the Version field's value.
12026func (s *GetDeviceDefinitionVersionOutput) SetVersion(v string) *GetDeviceDefinitionVersionOutput {
12027	s.Version = &v
12028	return s
12029}
12030
12031type GetFunctionDefinitionInput struct {
12032	_ struct{} `type:"structure"`
12033
12034	// FunctionDefinitionId is a required field
12035	FunctionDefinitionId *string `location:"uri" locationName:"FunctionDefinitionId" type:"string" required:"true"`
12036}
12037
12038// String returns the string representation
12039func (s GetFunctionDefinitionInput) String() string {
12040	return awsutil.Prettify(s)
12041}
12042
12043// GoString returns the string representation
12044func (s GetFunctionDefinitionInput) GoString() string {
12045	return s.String()
12046}
12047
12048// Validate inspects the fields of the type to determine if they are valid.
12049func (s *GetFunctionDefinitionInput) Validate() error {
12050	invalidParams := request.ErrInvalidParams{Context: "GetFunctionDefinitionInput"}
12051	if s.FunctionDefinitionId == nil {
12052		invalidParams.Add(request.NewErrParamRequired("FunctionDefinitionId"))
12053	}
12054	if s.FunctionDefinitionId != nil && len(*s.FunctionDefinitionId) < 1 {
12055		invalidParams.Add(request.NewErrParamMinLen("FunctionDefinitionId", 1))
12056	}
12057
12058	if invalidParams.Len() > 0 {
12059		return invalidParams
12060	}
12061	return nil
12062}
12063
12064// SetFunctionDefinitionId sets the FunctionDefinitionId field's value.
12065func (s *GetFunctionDefinitionInput) SetFunctionDefinitionId(v string) *GetFunctionDefinitionInput {
12066	s.FunctionDefinitionId = &v
12067	return s
12068}
12069
12070type GetFunctionDefinitionOutput struct {
12071	_ struct{} `type:"structure"`
12072
12073	Arn *string `type:"string"`
12074
12075	CreationTimestamp *string `type:"string"`
12076
12077	Id *string `type:"string"`
12078
12079	LastUpdatedTimestamp *string `type:"string"`
12080
12081	LatestVersion *string `type:"string"`
12082
12083	LatestVersionArn *string `type:"string"`
12084
12085	Name *string `type:"string"`
12086
12087	Tags map[string]*string `locationName:"tags" type:"map"`
12088}
12089
12090// String returns the string representation
12091func (s GetFunctionDefinitionOutput) String() string {
12092	return awsutil.Prettify(s)
12093}
12094
12095// GoString returns the string representation
12096func (s GetFunctionDefinitionOutput) GoString() string {
12097	return s.String()
12098}
12099
12100// SetArn sets the Arn field's value.
12101func (s *GetFunctionDefinitionOutput) SetArn(v string) *GetFunctionDefinitionOutput {
12102	s.Arn = &v
12103	return s
12104}
12105
12106// SetCreationTimestamp sets the CreationTimestamp field's value.
12107func (s *GetFunctionDefinitionOutput) SetCreationTimestamp(v string) *GetFunctionDefinitionOutput {
12108	s.CreationTimestamp = &v
12109	return s
12110}
12111
12112// SetId sets the Id field's value.
12113func (s *GetFunctionDefinitionOutput) SetId(v string) *GetFunctionDefinitionOutput {
12114	s.Id = &v
12115	return s
12116}
12117
12118// SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value.
12119func (s *GetFunctionDefinitionOutput) SetLastUpdatedTimestamp(v string) *GetFunctionDefinitionOutput {
12120	s.LastUpdatedTimestamp = &v
12121	return s
12122}
12123
12124// SetLatestVersion sets the LatestVersion field's value.
12125func (s *GetFunctionDefinitionOutput) SetLatestVersion(v string) *GetFunctionDefinitionOutput {
12126	s.LatestVersion = &v
12127	return s
12128}
12129
12130// SetLatestVersionArn sets the LatestVersionArn field's value.
12131func (s *GetFunctionDefinitionOutput) SetLatestVersionArn(v string) *GetFunctionDefinitionOutput {
12132	s.LatestVersionArn = &v
12133	return s
12134}
12135
12136// SetName sets the Name field's value.
12137func (s *GetFunctionDefinitionOutput) SetName(v string) *GetFunctionDefinitionOutput {
12138	s.Name = &v
12139	return s
12140}
12141
12142// SetTags sets the Tags field's value.
12143func (s *GetFunctionDefinitionOutput) SetTags(v map[string]*string) *GetFunctionDefinitionOutput {
12144	s.Tags = v
12145	return s
12146}
12147
12148type GetFunctionDefinitionVersionInput struct {
12149	_ struct{} `type:"structure"`
12150
12151	// FunctionDefinitionId is a required field
12152	FunctionDefinitionId *string `location:"uri" locationName:"FunctionDefinitionId" type:"string" required:"true"`
12153
12154	// FunctionDefinitionVersionId is a required field
12155	FunctionDefinitionVersionId *string `location:"uri" locationName:"FunctionDefinitionVersionId" type:"string" required:"true"`
12156
12157	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
12158}
12159
12160// String returns the string representation
12161func (s GetFunctionDefinitionVersionInput) String() string {
12162	return awsutil.Prettify(s)
12163}
12164
12165// GoString returns the string representation
12166func (s GetFunctionDefinitionVersionInput) GoString() string {
12167	return s.String()
12168}
12169
12170// Validate inspects the fields of the type to determine if they are valid.
12171func (s *GetFunctionDefinitionVersionInput) Validate() error {
12172	invalidParams := request.ErrInvalidParams{Context: "GetFunctionDefinitionVersionInput"}
12173	if s.FunctionDefinitionId == nil {
12174		invalidParams.Add(request.NewErrParamRequired("FunctionDefinitionId"))
12175	}
12176	if s.FunctionDefinitionId != nil && len(*s.FunctionDefinitionId) < 1 {
12177		invalidParams.Add(request.NewErrParamMinLen("FunctionDefinitionId", 1))
12178	}
12179	if s.FunctionDefinitionVersionId == nil {
12180		invalidParams.Add(request.NewErrParamRequired("FunctionDefinitionVersionId"))
12181	}
12182	if s.FunctionDefinitionVersionId != nil && len(*s.FunctionDefinitionVersionId) < 1 {
12183		invalidParams.Add(request.NewErrParamMinLen("FunctionDefinitionVersionId", 1))
12184	}
12185
12186	if invalidParams.Len() > 0 {
12187		return invalidParams
12188	}
12189	return nil
12190}
12191
12192// SetFunctionDefinitionId sets the FunctionDefinitionId field's value.
12193func (s *GetFunctionDefinitionVersionInput) SetFunctionDefinitionId(v string) *GetFunctionDefinitionVersionInput {
12194	s.FunctionDefinitionId = &v
12195	return s
12196}
12197
12198// SetFunctionDefinitionVersionId sets the FunctionDefinitionVersionId field's value.
12199func (s *GetFunctionDefinitionVersionInput) SetFunctionDefinitionVersionId(v string) *GetFunctionDefinitionVersionInput {
12200	s.FunctionDefinitionVersionId = &v
12201	return s
12202}
12203
12204// SetNextToken sets the NextToken field's value.
12205func (s *GetFunctionDefinitionVersionInput) SetNextToken(v string) *GetFunctionDefinitionVersionInput {
12206	s.NextToken = &v
12207	return s
12208}
12209
12210// Information about a function definition version.
12211type GetFunctionDefinitionVersionOutput struct {
12212	_ struct{} `type:"structure"`
12213
12214	// The ARN of the function definition version.
12215	Arn *string `type:"string"`
12216
12217	// The time, in milliseconds since the epoch, when the function definition version
12218	// was created.
12219	CreationTimestamp *string `type:"string"`
12220
12221	// Information on the definition.
12222	Definition *FunctionDefinitionVersion `type:"structure"`
12223
12224	// The ID of the function definition version.
12225	Id *string `type:"string"`
12226
12227	// The token for the next set of results, or ''null'' if there are no additional
12228	// results.
12229	NextToken *string `type:"string"`
12230
12231	// The version of the function definition version.
12232	Version *string `type:"string"`
12233}
12234
12235// String returns the string representation
12236func (s GetFunctionDefinitionVersionOutput) String() string {
12237	return awsutil.Prettify(s)
12238}
12239
12240// GoString returns the string representation
12241func (s GetFunctionDefinitionVersionOutput) GoString() string {
12242	return s.String()
12243}
12244
12245// SetArn sets the Arn field's value.
12246func (s *GetFunctionDefinitionVersionOutput) SetArn(v string) *GetFunctionDefinitionVersionOutput {
12247	s.Arn = &v
12248	return s
12249}
12250
12251// SetCreationTimestamp sets the CreationTimestamp field's value.
12252func (s *GetFunctionDefinitionVersionOutput) SetCreationTimestamp(v string) *GetFunctionDefinitionVersionOutput {
12253	s.CreationTimestamp = &v
12254	return s
12255}
12256
12257// SetDefinition sets the Definition field's value.
12258func (s *GetFunctionDefinitionVersionOutput) SetDefinition(v *FunctionDefinitionVersion) *GetFunctionDefinitionVersionOutput {
12259	s.Definition = v
12260	return s
12261}
12262
12263// SetId sets the Id field's value.
12264func (s *GetFunctionDefinitionVersionOutput) SetId(v string) *GetFunctionDefinitionVersionOutput {
12265	s.Id = &v
12266	return s
12267}
12268
12269// SetNextToken sets the NextToken field's value.
12270func (s *GetFunctionDefinitionVersionOutput) SetNextToken(v string) *GetFunctionDefinitionVersionOutput {
12271	s.NextToken = &v
12272	return s
12273}
12274
12275// SetVersion sets the Version field's value.
12276func (s *GetFunctionDefinitionVersionOutput) SetVersion(v string) *GetFunctionDefinitionVersionOutput {
12277	s.Version = &v
12278	return s
12279}
12280
12281type GetGroupCertificateAuthorityInput struct {
12282	_ struct{} `type:"structure"`
12283
12284	// CertificateAuthorityId is a required field
12285	CertificateAuthorityId *string `location:"uri" locationName:"CertificateAuthorityId" type:"string" required:"true"`
12286
12287	// GroupId is a required field
12288	GroupId *string `location:"uri" locationName:"GroupId" type:"string" required:"true"`
12289}
12290
12291// String returns the string representation
12292func (s GetGroupCertificateAuthorityInput) String() string {
12293	return awsutil.Prettify(s)
12294}
12295
12296// GoString returns the string representation
12297func (s GetGroupCertificateAuthorityInput) GoString() string {
12298	return s.String()
12299}
12300
12301// Validate inspects the fields of the type to determine if they are valid.
12302func (s *GetGroupCertificateAuthorityInput) Validate() error {
12303	invalidParams := request.ErrInvalidParams{Context: "GetGroupCertificateAuthorityInput"}
12304	if s.CertificateAuthorityId == nil {
12305		invalidParams.Add(request.NewErrParamRequired("CertificateAuthorityId"))
12306	}
12307	if s.CertificateAuthorityId != nil && len(*s.CertificateAuthorityId) < 1 {
12308		invalidParams.Add(request.NewErrParamMinLen("CertificateAuthorityId", 1))
12309	}
12310	if s.GroupId == nil {
12311		invalidParams.Add(request.NewErrParamRequired("GroupId"))
12312	}
12313	if s.GroupId != nil && len(*s.GroupId) < 1 {
12314		invalidParams.Add(request.NewErrParamMinLen("GroupId", 1))
12315	}
12316
12317	if invalidParams.Len() > 0 {
12318		return invalidParams
12319	}
12320	return nil
12321}
12322
12323// SetCertificateAuthorityId sets the CertificateAuthorityId field's value.
12324func (s *GetGroupCertificateAuthorityInput) SetCertificateAuthorityId(v string) *GetGroupCertificateAuthorityInput {
12325	s.CertificateAuthorityId = &v
12326	return s
12327}
12328
12329// SetGroupId sets the GroupId field's value.
12330func (s *GetGroupCertificateAuthorityInput) SetGroupId(v string) *GetGroupCertificateAuthorityInput {
12331	s.GroupId = &v
12332	return s
12333}
12334
12335// Information about a certificate authority for a group.
12336type GetGroupCertificateAuthorityOutput struct {
12337	_ struct{} `type:"structure"`
12338
12339	// The ARN of the certificate authority for the group.
12340	GroupCertificateAuthorityArn *string `type:"string"`
12341
12342	// The ID of the certificate authority for the group.
12343	GroupCertificateAuthorityId *string `type:"string"`
12344
12345	// The PEM encoded certificate for the group.
12346	PemEncodedCertificate *string `type:"string"`
12347}
12348
12349// String returns the string representation
12350func (s GetGroupCertificateAuthorityOutput) String() string {
12351	return awsutil.Prettify(s)
12352}
12353
12354// GoString returns the string representation
12355func (s GetGroupCertificateAuthorityOutput) GoString() string {
12356	return s.String()
12357}
12358
12359// SetGroupCertificateAuthorityArn sets the GroupCertificateAuthorityArn field's value.
12360func (s *GetGroupCertificateAuthorityOutput) SetGroupCertificateAuthorityArn(v string) *GetGroupCertificateAuthorityOutput {
12361	s.GroupCertificateAuthorityArn = &v
12362	return s
12363}
12364
12365// SetGroupCertificateAuthorityId sets the GroupCertificateAuthorityId field's value.
12366func (s *GetGroupCertificateAuthorityOutput) SetGroupCertificateAuthorityId(v string) *GetGroupCertificateAuthorityOutput {
12367	s.GroupCertificateAuthorityId = &v
12368	return s
12369}
12370
12371// SetPemEncodedCertificate sets the PemEncodedCertificate field's value.
12372func (s *GetGroupCertificateAuthorityOutput) SetPemEncodedCertificate(v string) *GetGroupCertificateAuthorityOutput {
12373	s.PemEncodedCertificate = &v
12374	return s
12375}
12376
12377type GetGroupCertificateConfigurationInput struct {
12378	_ struct{} `type:"structure"`
12379
12380	// GroupId is a required field
12381	GroupId *string `location:"uri" locationName:"GroupId" type:"string" required:"true"`
12382}
12383
12384// String returns the string representation
12385func (s GetGroupCertificateConfigurationInput) String() string {
12386	return awsutil.Prettify(s)
12387}
12388
12389// GoString returns the string representation
12390func (s GetGroupCertificateConfigurationInput) GoString() string {
12391	return s.String()
12392}
12393
12394// Validate inspects the fields of the type to determine if they are valid.
12395func (s *GetGroupCertificateConfigurationInput) Validate() error {
12396	invalidParams := request.ErrInvalidParams{Context: "GetGroupCertificateConfigurationInput"}
12397	if s.GroupId == nil {
12398		invalidParams.Add(request.NewErrParamRequired("GroupId"))
12399	}
12400	if s.GroupId != nil && len(*s.GroupId) < 1 {
12401		invalidParams.Add(request.NewErrParamMinLen("GroupId", 1))
12402	}
12403
12404	if invalidParams.Len() > 0 {
12405		return invalidParams
12406	}
12407	return nil
12408}
12409
12410// SetGroupId sets the GroupId field's value.
12411func (s *GetGroupCertificateConfigurationInput) SetGroupId(v string) *GetGroupCertificateConfigurationInput {
12412	s.GroupId = &v
12413	return s
12414}
12415
12416type GetGroupCertificateConfigurationOutput struct {
12417	_ struct{} `type:"structure"`
12418
12419	CertificateAuthorityExpiryInMilliseconds *string `type:"string"`
12420
12421	CertificateExpiryInMilliseconds *string `type:"string"`
12422
12423	GroupId *string `type:"string"`
12424}
12425
12426// String returns the string representation
12427func (s GetGroupCertificateConfigurationOutput) String() string {
12428	return awsutil.Prettify(s)
12429}
12430
12431// GoString returns the string representation
12432func (s GetGroupCertificateConfigurationOutput) GoString() string {
12433	return s.String()
12434}
12435
12436// SetCertificateAuthorityExpiryInMilliseconds sets the CertificateAuthorityExpiryInMilliseconds field's value.
12437func (s *GetGroupCertificateConfigurationOutput) SetCertificateAuthorityExpiryInMilliseconds(v string) *GetGroupCertificateConfigurationOutput {
12438	s.CertificateAuthorityExpiryInMilliseconds = &v
12439	return s
12440}
12441
12442// SetCertificateExpiryInMilliseconds sets the CertificateExpiryInMilliseconds field's value.
12443func (s *GetGroupCertificateConfigurationOutput) SetCertificateExpiryInMilliseconds(v string) *GetGroupCertificateConfigurationOutput {
12444	s.CertificateExpiryInMilliseconds = &v
12445	return s
12446}
12447
12448// SetGroupId sets the GroupId field's value.
12449func (s *GetGroupCertificateConfigurationOutput) SetGroupId(v string) *GetGroupCertificateConfigurationOutput {
12450	s.GroupId = &v
12451	return s
12452}
12453
12454type GetGroupInput struct {
12455	_ struct{} `type:"structure"`
12456
12457	// GroupId is a required field
12458	GroupId *string `location:"uri" locationName:"GroupId" type:"string" required:"true"`
12459}
12460
12461// String returns the string representation
12462func (s GetGroupInput) String() string {
12463	return awsutil.Prettify(s)
12464}
12465
12466// GoString returns the string representation
12467func (s GetGroupInput) GoString() string {
12468	return s.String()
12469}
12470
12471// Validate inspects the fields of the type to determine if they are valid.
12472func (s *GetGroupInput) Validate() error {
12473	invalidParams := request.ErrInvalidParams{Context: "GetGroupInput"}
12474	if s.GroupId == nil {
12475		invalidParams.Add(request.NewErrParamRequired("GroupId"))
12476	}
12477	if s.GroupId != nil && len(*s.GroupId) < 1 {
12478		invalidParams.Add(request.NewErrParamMinLen("GroupId", 1))
12479	}
12480
12481	if invalidParams.Len() > 0 {
12482		return invalidParams
12483	}
12484	return nil
12485}
12486
12487// SetGroupId sets the GroupId field's value.
12488func (s *GetGroupInput) SetGroupId(v string) *GetGroupInput {
12489	s.GroupId = &v
12490	return s
12491}
12492
12493type GetGroupOutput struct {
12494	_ struct{} `type:"structure"`
12495
12496	Arn *string `type:"string"`
12497
12498	CreationTimestamp *string `type:"string"`
12499
12500	Id *string `type:"string"`
12501
12502	LastUpdatedTimestamp *string `type:"string"`
12503
12504	LatestVersion *string `type:"string"`
12505
12506	LatestVersionArn *string `type:"string"`
12507
12508	Name *string `type:"string"`
12509
12510	Tags map[string]*string `locationName:"tags" type:"map"`
12511}
12512
12513// String returns the string representation
12514func (s GetGroupOutput) String() string {
12515	return awsutil.Prettify(s)
12516}
12517
12518// GoString returns the string representation
12519func (s GetGroupOutput) GoString() string {
12520	return s.String()
12521}
12522
12523// SetArn sets the Arn field's value.
12524func (s *GetGroupOutput) SetArn(v string) *GetGroupOutput {
12525	s.Arn = &v
12526	return s
12527}
12528
12529// SetCreationTimestamp sets the CreationTimestamp field's value.
12530func (s *GetGroupOutput) SetCreationTimestamp(v string) *GetGroupOutput {
12531	s.CreationTimestamp = &v
12532	return s
12533}
12534
12535// SetId sets the Id field's value.
12536func (s *GetGroupOutput) SetId(v string) *GetGroupOutput {
12537	s.Id = &v
12538	return s
12539}
12540
12541// SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value.
12542func (s *GetGroupOutput) SetLastUpdatedTimestamp(v string) *GetGroupOutput {
12543	s.LastUpdatedTimestamp = &v
12544	return s
12545}
12546
12547// SetLatestVersion sets the LatestVersion field's value.
12548func (s *GetGroupOutput) SetLatestVersion(v string) *GetGroupOutput {
12549	s.LatestVersion = &v
12550	return s
12551}
12552
12553// SetLatestVersionArn sets the LatestVersionArn field's value.
12554func (s *GetGroupOutput) SetLatestVersionArn(v string) *GetGroupOutput {
12555	s.LatestVersionArn = &v
12556	return s
12557}
12558
12559// SetName sets the Name field's value.
12560func (s *GetGroupOutput) SetName(v string) *GetGroupOutput {
12561	s.Name = &v
12562	return s
12563}
12564
12565// SetTags sets the Tags field's value.
12566func (s *GetGroupOutput) SetTags(v map[string]*string) *GetGroupOutput {
12567	s.Tags = v
12568	return s
12569}
12570
12571type GetGroupVersionInput struct {
12572	_ struct{} `type:"structure"`
12573
12574	// GroupId is a required field
12575	GroupId *string `location:"uri" locationName:"GroupId" type:"string" required:"true"`
12576
12577	// GroupVersionId is a required field
12578	GroupVersionId *string `location:"uri" locationName:"GroupVersionId" type:"string" required:"true"`
12579}
12580
12581// String returns the string representation
12582func (s GetGroupVersionInput) String() string {
12583	return awsutil.Prettify(s)
12584}
12585
12586// GoString returns the string representation
12587func (s GetGroupVersionInput) GoString() string {
12588	return s.String()
12589}
12590
12591// Validate inspects the fields of the type to determine if they are valid.
12592func (s *GetGroupVersionInput) Validate() error {
12593	invalidParams := request.ErrInvalidParams{Context: "GetGroupVersionInput"}
12594	if s.GroupId == nil {
12595		invalidParams.Add(request.NewErrParamRequired("GroupId"))
12596	}
12597	if s.GroupId != nil && len(*s.GroupId) < 1 {
12598		invalidParams.Add(request.NewErrParamMinLen("GroupId", 1))
12599	}
12600	if s.GroupVersionId == nil {
12601		invalidParams.Add(request.NewErrParamRequired("GroupVersionId"))
12602	}
12603	if s.GroupVersionId != nil && len(*s.GroupVersionId) < 1 {
12604		invalidParams.Add(request.NewErrParamMinLen("GroupVersionId", 1))
12605	}
12606
12607	if invalidParams.Len() > 0 {
12608		return invalidParams
12609	}
12610	return nil
12611}
12612
12613// SetGroupId sets the GroupId field's value.
12614func (s *GetGroupVersionInput) SetGroupId(v string) *GetGroupVersionInput {
12615	s.GroupId = &v
12616	return s
12617}
12618
12619// SetGroupVersionId sets the GroupVersionId field's value.
12620func (s *GetGroupVersionInput) SetGroupVersionId(v string) *GetGroupVersionInput {
12621	s.GroupVersionId = &v
12622	return s
12623}
12624
12625// Information about a group version.
12626type GetGroupVersionOutput struct {
12627	_ struct{} `type:"structure"`
12628
12629	// The ARN of the group version.
12630	Arn *string `type:"string"`
12631
12632	// The time, in milliseconds since the epoch, when the group version was created.
12633	CreationTimestamp *string `type:"string"`
12634
12635	// Information about the group version definition.
12636	Definition *GroupVersion `type:"structure"`
12637
12638	// The ID of the group version.
12639	Id *string `type:"string"`
12640
12641	// The unique ID for the version of the group.
12642	Version *string `type:"string"`
12643}
12644
12645// String returns the string representation
12646func (s GetGroupVersionOutput) String() string {
12647	return awsutil.Prettify(s)
12648}
12649
12650// GoString returns the string representation
12651func (s GetGroupVersionOutput) GoString() string {
12652	return s.String()
12653}
12654
12655// SetArn sets the Arn field's value.
12656func (s *GetGroupVersionOutput) SetArn(v string) *GetGroupVersionOutput {
12657	s.Arn = &v
12658	return s
12659}
12660
12661// SetCreationTimestamp sets the CreationTimestamp field's value.
12662func (s *GetGroupVersionOutput) SetCreationTimestamp(v string) *GetGroupVersionOutput {
12663	s.CreationTimestamp = &v
12664	return s
12665}
12666
12667// SetDefinition sets the Definition field's value.
12668func (s *GetGroupVersionOutput) SetDefinition(v *GroupVersion) *GetGroupVersionOutput {
12669	s.Definition = v
12670	return s
12671}
12672
12673// SetId sets the Id field's value.
12674func (s *GetGroupVersionOutput) SetId(v string) *GetGroupVersionOutput {
12675	s.Id = &v
12676	return s
12677}
12678
12679// SetVersion sets the Version field's value.
12680func (s *GetGroupVersionOutput) SetVersion(v string) *GetGroupVersionOutput {
12681	s.Version = &v
12682	return s
12683}
12684
12685type GetLoggerDefinitionInput struct {
12686	_ struct{} `type:"structure"`
12687
12688	// LoggerDefinitionId is a required field
12689	LoggerDefinitionId *string `location:"uri" locationName:"LoggerDefinitionId" type:"string" required:"true"`
12690}
12691
12692// String returns the string representation
12693func (s GetLoggerDefinitionInput) String() string {
12694	return awsutil.Prettify(s)
12695}
12696
12697// GoString returns the string representation
12698func (s GetLoggerDefinitionInput) GoString() string {
12699	return s.String()
12700}
12701
12702// Validate inspects the fields of the type to determine if they are valid.
12703func (s *GetLoggerDefinitionInput) Validate() error {
12704	invalidParams := request.ErrInvalidParams{Context: "GetLoggerDefinitionInput"}
12705	if s.LoggerDefinitionId == nil {
12706		invalidParams.Add(request.NewErrParamRequired("LoggerDefinitionId"))
12707	}
12708	if s.LoggerDefinitionId != nil && len(*s.LoggerDefinitionId) < 1 {
12709		invalidParams.Add(request.NewErrParamMinLen("LoggerDefinitionId", 1))
12710	}
12711
12712	if invalidParams.Len() > 0 {
12713		return invalidParams
12714	}
12715	return nil
12716}
12717
12718// SetLoggerDefinitionId sets the LoggerDefinitionId field's value.
12719func (s *GetLoggerDefinitionInput) SetLoggerDefinitionId(v string) *GetLoggerDefinitionInput {
12720	s.LoggerDefinitionId = &v
12721	return s
12722}
12723
12724type GetLoggerDefinitionOutput struct {
12725	_ struct{} `type:"structure"`
12726
12727	Arn *string `type:"string"`
12728
12729	CreationTimestamp *string `type:"string"`
12730
12731	Id *string `type:"string"`
12732
12733	LastUpdatedTimestamp *string `type:"string"`
12734
12735	LatestVersion *string `type:"string"`
12736
12737	LatestVersionArn *string `type:"string"`
12738
12739	Name *string `type:"string"`
12740
12741	Tags map[string]*string `locationName:"tags" type:"map"`
12742}
12743
12744// String returns the string representation
12745func (s GetLoggerDefinitionOutput) String() string {
12746	return awsutil.Prettify(s)
12747}
12748
12749// GoString returns the string representation
12750func (s GetLoggerDefinitionOutput) GoString() string {
12751	return s.String()
12752}
12753
12754// SetArn sets the Arn field's value.
12755func (s *GetLoggerDefinitionOutput) SetArn(v string) *GetLoggerDefinitionOutput {
12756	s.Arn = &v
12757	return s
12758}
12759
12760// SetCreationTimestamp sets the CreationTimestamp field's value.
12761func (s *GetLoggerDefinitionOutput) SetCreationTimestamp(v string) *GetLoggerDefinitionOutput {
12762	s.CreationTimestamp = &v
12763	return s
12764}
12765
12766// SetId sets the Id field's value.
12767func (s *GetLoggerDefinitionOutput) SetId(v string) *GetLoggerDefinitionOutput {
12768	s.Id = &v
12769	return s
12770}
12771
12772// SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value.
12773func (s *GetLoggerDefinitionOutput) SetLastUpdatedTimestamp(v string) *GetLoggerDefinitionOutput {
12774	s.LastUpdatedTimestamp = &v
12775	return s
12776}
12777
12778// SetLatestVersion sets the LatestVersion field's value.
12779func (s *GetLoggerDefinitionOutput) SetLatestVersion(v string) *GetLoggerDefinitionOutput {
12780	s.LatestVersion = &v
12781	return s
12782}
12783
12784// SetLatestVersionArn sets the LatestVersionArn field's value.
12785func (s *GetLoggerDefinitionOutput) SetLatestVersionArn(v string) *GetLoggerDefinitionOutput {
12786	s.LatestVersionArn = &v
12787	return s
12788}
12789
12790// SetName sets the Name field's value.
12791func (s *GetLoggerDefinitionOutput) SetName(v string) *GetLoggerDefinitionOutput {
12792	s.Name = &v
12793	return s
12794}
12795
12796// SetTags sets the Tags field's value.
12797func (s *GetLoggerDefinitionOutput) SetTags(v map[string]*string) *GetLoggerDefinitionOutput {
12798	s.Tags = v
12799	return s
12800}
12801
12802type GetLoggerDefinitionVersionInput struct {
12803	_ struct{} `type:"structure"`
12804
12805	// LoggerDefinitionId is a required field
12806	LoggerDefinitionId *string `location:"uri" locationName:"LoggerDefinitionId" type:"string" required:"true"`
12807
12808	// LoggerDefinitionVersionId is a required field
12809	LoggerDefinitionVersionId *string `location:"uri" locationName:"LoggerDefinitionVersionId" type:"string" required:"true"`
12810
12811	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
12812}
12813
12814// String returns the string representation
12815func (s GetLoggerDefinitionVersionInput) String() string {
12816	return awsutil.Prettify(s)
12817}
12818
12819// GoString returns the string representation
12820func (s GetLoggerDefinitionVersionInput) GoString() string {
12821	return s.String()
12822}
12823
12824// Validate inspects the fields of the type to determine if they are valid.
12825func (s *GetLoggerDefinitionVersionInput) Validate() error {
12826	invalidParams := request.ErrInvalidParams{Context: "GetLoggerDefinitionVersionInput"}
12827	if s.LoggerDefinitionId == nil {
12828		invalidParams.Add(request.NewErrParamRequired("LoggerDefinitionId"))
12829	}
12830	if s.LoggerDefinitionId != nil && len(*s.LoggerDefinitionId) < 1 {
12831		invalidParams.Add(request.NewErrParamMinLen("LoggerDefinitionId", 1))
12832	}
12833	if s.LoggerDefinitionVersionId == nil {
12834		invalidParams.Add(request.NewErrParamRequired("LoggerDefinitionVersionId"))
12835	}
12836	if s.LoggerDefinitionVersionId != nil && len(*s.LoggerDefinitionVersionId) < 1 {
12837		invalidParams.Add(request.NewErrParamMinLen("LoggerDefinitionVersionId", 1))
12838	}
12839
12840	if invalidParams.Len() > 0 {
12841		return invalidParams
12842	}
12843	return nil
12844}
12845
12846// SetLoggerDefinitionId sets the LoggerDefinitionId field's value.
12847func (s *GetLoggerDefinitionVersionInput) SetLoggerDefinitionId(v string) *GetLoggerDefinitionVersionInput {
12848	s.LoggerDefinitionId = &v
12849	return s
12850}
12851
12852// SetLoggerDefinitionVersionId sets the LoggerDefinitionVersionId field's value.
12853func (s *GetLoggerDefinitionVersionInput) SetLoggerDefinitionVersionId(v string) *GetLoggerDefinitionVersionInput {
12854	s.LoggerDefinitionVersionId = &v
12855	return s
12856}
12857
12858// SetNextToken sets the NextToken field's value.
12859func (s *GetLoggerDefinitionVersionInput) SetNextToken(v string) *GetLoggerDefinitionVersionInput {
12860	s.NextToken = &v
12861	return s
12862}
12863
12864// Information about a logger definition version.
12865type GetLoggerDefinitionVersionOutput struct {
12866	_ struct{} `type:"structure"`
12867
12868	// The ARN of the logger definition version.
12869	Arn *string `type:"string"`
12870
12871	// The time, in milliseconds since the epoch, when the logger definition version
12872	// was created.
12873	CreationTimestamp *string `type:"string"`
12874
12875	// Information about the logger definition version.
12876	Definition *LoggerDefinitionVersion `type:"structure"`
12877
12878	// The ID of the logger definition version.
12879	Id *string `type:"string"`
12880
12881	// The version of the logger definition version.
12882	Version *string `type:"string"`
12883}
12884
12885// String returns the string representation
12886func (s GetLoggerDefinitionVersionOutput) String() string {
12887	return awsutil.Prettify(s)
12888}
12889
12890// GoString returns the string representation
12891func (s GetLoggerDefinitionVersionOutput) GoString() string {
12892	return s.String()
12893}
12894
12895// SetArn sets the Arn field's value.
12896func (s *GetLoggerDefinitionVersionOutput) SetArn(v string) *GetLoggerDefinitionVersionOutput {
12897	s.Arn = &v
12898	return s
12899}
12900
12901// SetCreationTimestamp sets the CreationTimestamp field's value.
12902func (s *GetLoggerDefinitionVersionOutput) SetCreationTimestamp(v string) *GetLoggerDefinitionVersionOutput {
12903	s.CreationTimestamp = &v
12904	return s
12905}
12906
12907// SetDefinition sets the Definition field's value.
12908func (s *GetLoggerDefinitionVersionOutput) SetDefinition(v *LoggerDefinitionVersion) *GetLoggerDefinitionVersionOutput {
12909	s.Definition = v
12910	return s
12911}
12912
12913// SetId sets the Id field's value.
12914func (s *GetLoggerDefinitionVersionOutput) SetId(v string) *GetLoggerDefinitionVersionOutput {
12915	s.Id = &v
12916	return s
12917}
12918
12919// SetVersion sets the Version field's value.
12920func (s *GetLoggerDefinitionVersionOutput) SetVersion(v string) *GetLoggerDefinitionVersionOutput {
12921	s.Version = &v
12922	return s
12923}
12924
12925type GetResourceDefinitionInput struct {
12926	_ struct{} `type:"structure"`
12927
12928	// ResourceDefinitionId is a required field
12929	ResourceDefinitionId *string `location:"uri" locationName:"ResourceDefinitionId" type:"string" required:"true"`
12930}
12931
12932// String returns the string representation
12933func (s GetResourceDefinitionInput) String() string {
12934	return awsutil.Prettify(s)
12935}
12936
12937// GoString returns the string representation
12938func (s GetResourceDefinitionInput) GoString() string {
12939	return s.String()
12940}
12941
12942// Validate inspects the fields of the type to determine if they are valid.
12943func (s *GetResourceDefinitionInput) Validate() error {
12944	invalidParams := request.ErrInvalidParams{Context: "GetResourceDefinitionInput"}
12945	if s.ResourceDefinitionId == nil {
12946		invalidParams.Add(request.NewErrParamRequired("ResourceDefinitionId"))
12947	}
12948	if s.ResourceDefinitionId != nil && len(*s.ResourceDefinitionId) < 1 {
12949		invalidParams.Add(request.NewErrParamMinLen("ResourceDefinitionId", 1))
12950	}
12951
12952	if invalidParams.Len() > 0 {
12953		return invalidParams
12954	}
12955	return nil
12956}
12957
12958// SetResourceDefinitionId sets the ResourceDefinitionId field's value.
12959func (s *GetResourceDefinitionInput) SetResourceDefinitionId(v string) *GetResourceDefinitionInput {
12960	s.ResourceDefinitionId = &v
12961	return s
12962}
12963
12964type GetResourceDefinitionOutput struct {
12965	_ struct{} `type:"structure"`
12966
12967	Arn *string `type:"string"`
12968
12969	CreationTimestamp *string `type:"string"`
12970
12971	Id *string `type:"string"`
12972
12973	LastUpdatedTimestamp *string `type:"string"`
12974
12975	LatestVersion *string `type:"string"`
12976
12977	LatestVersionArn *string `type:"string"`
12978
12979	Name *string `type:"string"`
12980
12981	Tags map[string]*string `locationName:"tags" type:"map"`
12982}
12983
12984// String returns the string representation
12985func (s GetResourceDefinitionOutput) String() string {
12986	return awsutil.Prettify(s)
12987}
12988
12989// GoString returns the string representation
12990func (s GetResourceDefinitionOutput) GoString() string {
12991	return s.String()
12992}
12993
12994// SetArn sets the Arn field's value.
12995func (s *GetResourceDefinitionOutput) SetArn(v string) *GetResourceDefinitionOutput {
12996	s.Arn = &v
12997	return s
12998}
12999
13000// SetCreationTimestamp sets the CreationTimestamp field's value.
13001func (s *GetResourceDefinitionOutput) SetCreationTimestamp(v string) *GetResourceDefinitionOutput {
13002	s.CreationTimestamp = &v
13003	return s
13004}
13005
13006// SetId sets the Id field's value.
13007func (s *GetResourceDefinitionOutput) SetId(v string) *GetResourceDefinitionOutput {
13008	s.Id = &v
13009	return s
13010}
13011
13012// SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value.
13013func (s *GetResourceDefinitionOutput) SetLastUpdatedTimestamp(v string) *GetResourceDefinitionOutput {
13014	s.LastUpdatedTimestamp = &v
13015	return s
13016}
13017
13018// SetLatestVersion sets the LatestVersion field's value.
13019func (s *GetResourceDefinitionOutput) SetLatestVersion(v string) *GetResourceDefinitionOutput {
13020	s.LatestVersion = &v
13021	return s
13022}
13023
13024// SetLatestVersionArn sets the LatestVersionArn field's value.
13025func (s *GetResourceDefinitionOutput) SetLatestVersionArn(v string) *GetResourceDefinitionOutput {
13026	s.LatestVersionArn = &v
13027	return s
13028}
13029
13030// SetName sets the Name field's value.
13031func (s *GetResourceDefinitionOutput) SetName(v string) *GetResourceDefinitionOutput {
13032	s.Name = &v
13033	return s
13034}
13035
13036// SetTags sets the Tags field's value.
13037func (s *GetResourceDefinitionOutput) SetTags(v map[string]*string) *GetResourceDefinitionOutput {
13038	s.Tags = v
13039	return s
13040}
13041
13042type GetResourceDefinitionVersionInput struct {
13043	_ struct{} `type:"structure"`
13044
13045	// ResourceDefinitionId is a required field
13046	ResourceDefinitionId *string `location:"uri" locationName:"ResourceDefinitionId" type:"string" required:"true"`
13047
13048	// ResourceDefinitionVersionId is a required field
13049	ResourceDefinitionVersionId *string `location:"uri" locationName:"ResourceDefinitionVersionId" type:"string" required:"true"`
13050}
13051
13052// String returns the string representation
13053func (s GetResourceDefinitionVersionInput) String() string {
13054	return awsutil.Prettify(s)
13055}
13056
13057// GoString returns the string representation
13058func (s GetResourceDefinitionVersionInput) GoString() string {
13059	return s.String()
13060}
13061
13062// Validate inspects the fields of the type to determine if they are valid.
13063func (s *GetResourceDefinitionVersionInput) Validate() error {
13064	invalidParams := request.ErrInvalidParams{Context: "GetResourceDefinitionVersionInput"}
13065	if s.ResourceDefinitionId == nil {
13066		invalidParams.Add(request.NewErrParamRequired("ResourceDefinitionId"))
13067	}
13068	if s.ResourceDefinitionId != nil && len(*s.ResourceDefinitionId) < 1 {
13069		invalidParams.Add(request.NewErrParamMinLen("ResourceDefinitionId", 1))
13070	}
13071	if s.ResourceDefinitionVersionId == nil {
13072		invalidParams.Add(request.NewErrParamRequired("ResourceDefinitionVersionId"))
13073	}
13074	if s.ResourceDefinitionVersionId != nil && len(*s.ResourceDefinitionVersionId) < 1 {
13075		invalidParams.Add(request.NewErrParamMinLen("ResourceDefinitionVersionId", 1))
13076	}
13077
13078	if invalidParams.Len() > 0 {
13079		return invalidParams
13080	}
13081	return nil
13082}
13083
13084// SetResourceDefinitionId sets the ResourceDefinitionId field's value.
13085func (s *GetResourceDefinitionVersionInput) SetResourceDefinitionId(v string) *GetResourceDefinitionVersionInput {
13086	s.ResourceDefinitionId = &v
13087	return s
13088}
13089
13090// SetResourceDefinitionVersionId sets the ResourceDefinitionVersionId field's value.
13091func (s *GetResourceDefinitionVersionInput) SetResourceDefinitionVersionId(v string) *GetResourceDefinitionVersionInput {
13092	s.ResourceDefinitionVersionId = &v
13093	return s
13094}
13095
13096// Information about a resource definition version.
13097type GetResourceDefinitionVersionOutput struct {
13098	_ struct{} `type:"structure"`
13099
13100	// Arn of the resource definition version.
13101	Arn *string `type:"string"`
13102
13103	// The time, in milliseconds since the epoch, when the resource definition version
13104	// was created.
13105	CreationTimestamp *string `type:"string"`
13106
13107	// Information about the definition.
13108	Definition *ResourceDefinitionVersion `type:"structure"`
13109
13110	// The ID of the resource definition version.
13111	Id *string `type:"string"`
13112
13113	// The version of the resource definition version.
13114	Version *string `type:"string"`
13115}
13116
13117// String returns the string representation
13118func (s GetResourceDefinitionVersionOutput) String() string {
13119	return awsutil.Prettify(s)
13120}
13121
13122// GoString returns the string representation
13123func (s GetResourceDefinitionVersionOutput) GoString() string {
13124	return s.String()
13125}
13126
13127// SetArn sets the Arn field's value.
13128func (s *GetResourceDefinitionVersionOutput) SetArn(v string) *GetResourceDefinitionVersionOutput {
13129	s.Arn = &v
13130	return s
13131}
13132
13133// SetCreationTimestamp sets the CreationTimestamp field's value.
13134func (s *GetResourceDefinitionVersionOutput) SetCreationTimestamp(v string) *GetResourceDefinitionVersionOutput {
13135	s.CreationTimestamp = &v
13136	return s
13137}
13138
13139// SetDefinition sets the Definition field's value.
13140func (s *GetResourceDefinitionVersionOutput) SetDefinition(v *ResourceDefinitionVersion) *GetResourceDefinitionVersionOutput {
13141	s.Definition = v
13142	return s
13143}
13144
13145// SetId sets the Id field's value.
13146func (s *GetResourceDefinitionVersionOutput) SetId(v string) *GetResourceDefinitionVersionOutput {
13147	s.Id = &v
13148	return s
13149}
13150
13151// SetVersion sets the Version field's value.
13152func (s *GetResourceDefinitionVersionOutput) SetVersion(v string) *GetResourceDefinitionVersionOutput {
13153	s.Version = &v
13154	return s
13155}
13156
13157type GetServiceRoleForAccountInput struct {
13158	_ struct{} `type:"structure"`
13159}
13160
13161// String returns the string representation
13162func (s GetServiceRoleForAccountInput) String() string {
13163	return awsutil.Prettify(s)
13164}
13165
13166// GoString returns the string representation
13167func (s GetServiceRoleForAccountInput) GoString() string {
13168	return s.String()
13169}
13170
13171type GetServiceRoleForAccountOutput struct {
13172	_ struct{} `type:"structure"`
13173
13174	// The time when the service role was associated with the account.
13175	AssociatedAt *string `type:"string"`
13176
13177	// The ARN of the role which is associated with the account.
13178	RoleArn *string `type:"string"`
13179}
13180
13181// String returns the string representation
13182func (s GetServiceRoleForAccountOutput) String() string {
13183	return awsutil.Prettify(s)
13184}
13185
13186// GoString returns the string representation
13187func (s GetServiceRoleForAccountOutput) GoString() string {
13188	return s.String()
13189}
13190
13191// SetAssociatedAt sets the AssociatedAt field's value.
13192func (s *GetServiceRoleForAccountOutput) SetAssociatedAt(v string) *GetServiceRoleForAccountOutput {
13193	s.AssociatedAt = &v
13194	return s
13195}
13196
13197// SetRoleArn sets the RoleArn field's value.
13198func (s *GetServiceRoleForAccountOutput) SetRoleArn(v string) *GetServiceRoleForAccountOutput {
13199	s.RoleArn = &v
13200	return s
13201}
13202
13203type GetSubscriptionDefinitionInput struct {
13204	_ struct{} `type:"structure"`
13205
13206	// SubscriptionDefinitionId is a required field
13207	SubscriptionDefinitionId *string `location:"uri" locationName:"SubscriptionDefinitionId" type:"string" required:"true"`
13208}
13209
13210// String returns the string representation
13211func (s GetSubscriptionDefinitionInput) String() string {
13212	return awsutil.Prettify(s)
13213}
13214
13215// GoString returns the string representation
13216func (s GetSubscriptionDefinitionInput) GoString() string {
13217	return s.String()
13218}
13219
13220// Validate inspects the fields of the type to determine if they are valid.
13221func (s *GetSubscriptionDefinitionInput) Validate() error {
13222	invalidParams := request.ErrInvalidParams{Context: "GetSubscriptionDefinitionInput"}
13223	if s.SubscriptionDefinitionId == nil {
13224		invalidParams.Add(request.NewErrParamRequired("SubscriptionDefinitionId"))
13225	}
13226	if s.SubscriptionDefinitionId != nil && len(*s.SubscriptionDefinitionId) < 1 {
13227		invalidParams.Add(request.NewErrParamMinLen("SubscriptionDefinitionId", 1))
13228	}
13229
13230	if invalidParams.Len() > 0 {
13231		return invalidParams
13232	}
13233	return nil
13234}
13235
13236// SetSubscriptionDefinitionId sets the SubscriptionDefinitionId field's value.
13237func (s *GetSubscriptionDefinitionInput) SetSubscriptionDefinitionId(v string) *GetSubscriptionDefinitionInput {
13238	s.SubscriptionDefinitionId = &v
13239	return s
13240}
13241
13242type GetSubscriptionDefinitionOutput struct {
13243	_ struct{} `type:"structure"`
13244
13245	Arn *string `type:"string"`
13246
13247	CreationTimestamp *string `type:"string"`
13248
13249	Id *string `type:"string"`
13250
13251	LastUpdatedTimestamp *string `type:"string"`
13252
13253	LatestVersion *string `type:"string"`
13254
13255	LatestVersionArn *string `type:"string"`
13256
13257	Name *string `type:"string"`
13258
13259	Tags map[string]*string `locationName:"tags" type:"map"`
13260}
13261
13262// String returns the string representation
13263func (s GetSubscriptionDefinitionOutput) String() string {
13264	return awsutil.Prettify(s)
13265}
13266
13267// GoString returns the string representation
13268func (s GetSubscriptionDefinitionOutput) GoString() string {
13269	return s.String()
13270}
13271
13272// SetArn sets the Arn field's value.
13273func (s *GetSubscriptionDefinitionOutput) SetArn(v string) *GetSubscriptionDefinitionOutput {
13274	s.Arn = &v
13275	return s
13276}
13277
13278// SetCreationTimestamp sets the CreationTimestamp field's value.
13279func (s *GetSubscriptionDefinitionOutput) SetCreationTimestamp(v string) *GetSubscriptionDefinitionOutput {
13280	s.CreationTimestamp = &v
13281	return s
13282}
13283
13284// SetId sets the Id field's value.
13285func (s *GetSubscriptionDefinitionOutput) SetId(v string) *GetSubscriptionDefinitionOutput {
13286	s.Id = &v
13287	return s
13288}
13289
13290// SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value.
13291func (s *GetSubscriptionDefinitionOutput) SetLastUpdatedTimestamp(v string) *GetSubscriptionDefinitionOutput {
13292	s.LastUpdatedTimestamp = &v
13293	return s
13294}
13295
13296// SetLatestVersion sets the LatestVersion field's value.
13297func (s *GetSubscriptionDefinitionOutput) SetLatestVersion(v string) *GetSubscriptionDefinitionOutput {
13298	s.LatestVersion = &v
13299	return s
13300}
13301
13302// SetLatestVersionArn sets the LatestVersionArn field's value.
13303func (s *GetSubscriptionDefinitionOutput) SetLatestVersionArn(v string) *GetSubscriptionDefinitionOutput {
13304	s.LatestVersionArn = &v
13305	return s
13306}
13307
13308// SetName sets the Name field's value.
13309func (s *GetSubscriptionDefinitionOutput) SetName(v string) *GetSubscriptionDefinitionOutput {
13310	s.Name = &v
13311	return s
13312}
13313
13314// SetTags sets the Tags field's value.
13315func (s *GetSubscriptionDefinitionOutput) SetTags(v map[string]*string) *GetSubscriptionDefinitionOutput {
13316	s.Tags = v
13317	return s
13318}
13319
13320type GetSubscriptionDefinitionVersionInput struct {
13321	_ struct{} `type:"structure"`
13322
13323	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
13324
13325	// SubscriptionDefinitionId is a required field
13326	SubscriptionDefinitionId *string `location:"uri" locationName:"SubscriptionDefinitionId" type:"string" required:"true"`
13327
13328	// SubscriptionDefinitionVersionId is a required field
13329	SubscriptionDefinitionVersionId *string `location:"uri" locationName:"SubscriptionDefinitionVersionId" type:"string" required:"true"`
13330}
13331
13332// String returns the string representation
13333func (s GetSubscriptionDefinitionVersionInput) String() string {
13334	return awsutil.Prettify(s)
13335}
13336
13337// GoString returns the string representation
13338func (s GetSubscriptionDefinitionVersionInput) GoString() string {
13339	return s.String()
13340}
13341
13342// Validate inspects the fields of the type to determine if they are valid.
13343func (s *GetSubscriptionDefinitionVersionInput) Validate() error {
13344	invalidParams := request.ErrInvalidParams{Context: "GetSubscriptionDefinitionVersionInput"}
13345	if s.SubscriptionDefinitionId == nil {
13346		invalidParams.Add(request.NewErrParamRequired("SubscriptionDefinitionId"))
13347	}
13348	if s.SubscriptionDefinitionId != nil && len(*s.SubscriptionDefinitionId) < 1 {
13349		invalidParams.Add(request.NewErrParamMinLen("SubscriptionDefinitionId", 1))
13350	}
13351	if s.SubscriptionDefinitionVersionId == nil {
13352		invalidParams.Add(request.NewErrParamRequired("SubscriptionDefinitionVersionId"))
13353	}
13354	if s.SubscriptionDefinitionVersionId != nil && len(*s.SubscriptionDefinitionVersionId) < 1 {
13355		invalidParams.Add(request.NewErrParamMinLen("SubscriptionDefinitionVersionId", 1))
13356	}
13357
13358	if invalidParams.Len() > 0 {
13359		return invalidParams
13360	}
13361	return nil
13362}
13363
13364// SetNextToken sets the NextToken field's value.
13365func (s *GetSubscriptionDefinitionVersionInput) SetNextToken(v string) *GetSubscriptionDefinitionVersionInput {
13366	s.NextToken = &v
13367	return s
13368}
13369
13370// SetSubscriptionDefinitionId sets the SubscriptionDefinitionId field's value.
13371func (s *GetSubscriptionDefinitionVersionInput) SetSubscriptionDefinitionId(v string) *GetSubscriptionDefinitionVersionInput {
13372	s.SubscriptionDefinitionId = &v
13373	return s
13374}
13375
13376// SetSubscriptionDefinitionVersionId sets the SubscriptionDefinitionVersionId field's value.
13377func (s *GetSubscriptionDefinitionVersionInput) SetSubscriptionDefinitionVersionId(v string) *GetSubscriptionDefinitionVersionInput {
13378	s.SubscriptionDefinitionVersionId = &v
13379	return s
13380}
13381
13382// Information about a subscription definition version.
13383type GetSubscriptionDefinitionVersionOutput struct {
13384	_ struct{} `type:"structure"`
13385
13386	// The ARN of the subscription definition version.
13387	Arn *string `type:"string"`
13388
13389	// The time, in milliseconds since the epoch, when the subscription definition
13390	// version was created.
13391	CreationTimestamp *string `type:"string"`
13392
13393	// Information about the subscription definition version.
13394	Definition *SubscriptionDefinitionVersion `type:"structure"`
13395
13396	// The ID of the subscription definition version.
13397	Id *string `type:"string"`
13398
13399	// The token for the next set of results, or ''null'' if there are no additional
13400	// results.
13401	NextToken *string `type:"string"`
13402
13403	// The version of the subscription definition version.
13404	Version *string `type:"string"`
13405}
13406
13407// String returns the string representation
13408func (s GetSubscriptionDefinitionVersionOutput) String() string {
13409	return awsutil.Prettify(s)
13410}
13411
13412// GoString returns the string representation
13413func (s GetSubscriptionDefinitionVersionOutput) GoString() string {
13414	return s.String()
13415}
13416
13417// SetArn sets the Arn field's value.
13418func (s *GetSubscriptionDefinitionVersionOutput) SetArn(v string) *GetSubscriptionDefinitionVersionOutput {
13419	s.Arn = &v
13420	return s
13421}
13422
13423// SetCreationTimestamp sets the CreationTimestamp field's value.
13424func (s *GetSubscriptionDefinitionVersionOutput) SetCreationTimestamp(v string) *GetSubscriptionDefinitionVersionOutput {
13425	s.CreationTimestamp = &v
13426	return s
13427}
13428
13429// SetDefinition sets the Definition field's value.
13430func (s *GetSubscriptionDefinitionVersionOutput) SetDefinition(v *SubscriptionDefinitionVersion) *GetSubscriptionDefinitionVersionOutput {
13431	s.Definition = v
13432	return s
13433}
13434
13435// SetId sets the Id field's value.
13436func (s *GetSubscriptionDefinitionVersionOutput) SetId(v string) *GetSubscriptionDefinitionVersionOutput {
13437	s.Id = &v
13438	return s
13439}
13440
13441// SetNextToken sets the NextToken field's value.
13442func (s *GetSubscriptionDefinitionVersionOutput) SetNextToken(v string) *GetSubscriptionDefinitionVersionOutput {
13443	s.NextToken = &v
13444	return s
13445}
13446
13447// SetVersion sets the Version field's value.
13448func (s *GetSubscriptionDefinitionVersionOutput) SetVersion(v string) *GetSubscriptionDefinitionVersionOutput {
13449	s.Version = &v
13450	return s
13451}
13452
13453// Information about a certificate authority for a group.
13454type GroupCertificateAuthorityProperties struct {
13455	_ struct{} `type:"structure"`
13456
13457	// The ARN of the certificate authority for the group.
13458	GroupCertificateAuthorityArn *string `type:"string"`
13459
13460	// The ID of the certificate authority for the group.
13461	GroupCertificateAuthorityId *string `type:"string"`
13462}
13463
13464// String returns the string representation
13465func (s GroupCertificateAuthorityProperties) String() string {
13466	return awsutil.Prettify(s)
13467}
13468
13469// GoString returns the string representation
13470func (s GroupCertificateAuthorityProperties) GoString() string {
13471	return s.String()
13472}
13473
13474// SetGroupCertificateAuthorityArn sets the GroupCertificateAuthorityArn field's value.
13475func (s *GroupCertificateAuthorityProperties) SetGroupCertificateAuthorityArn(v string) *GroupCertificateAuthorityProperties {
13476	s.GroupCertificateAuthorityArn = &v
13477	return s
13478}
13479
13480// SetGroupCertificateAuthorityId sets the GroupCertificateAuthorityId field's value.
13481func (s *GroupCertificateAuthorityProperties) SetGroupCertificateAuthorityId(v string) *GroupCertificateAuthorityProperties {
13482	s.GroupCertificateAuthorityId = &v
13483	return s
13484}
13485
13486// Information about a group.
13487type GroupInformation struct {
13488	_ struct{} `type:"structure"`
13489
13490	// The ARN of the group.
13491	Arn *string `type:"string"`
13492
13493	// The time, in milliseconds since the epoch, when the group was created.
13494	CreationTimestamp *string `type:"string"`
13495
13496	// The ID of the group.
13497	Id *string `type:"string"`
13498
13499	// The time, in milliseconds since the epoch, when the group was last updated.
13500	LastUpdatedTimestamp *string `type:"string"`
13501
13502	// The latest version of the group.
13503	LatestVersion *string `type:"string"`
13504
13505	// The ARN of the latest version of the group.
13506	LatestVersionArn *string `type:"string"`
13507
13508	// The name of the group.
13509	Name *string `type:"string"`
13510}
13511
13512// String returns the string representation
13513func (s GroupInformation) String() string {
13514	return awsutil.Prettify(s)
13515}
13516
13517// GoString returns the string representation
13518func (s GroupInformation) GoString() string {
13519	return s.String()
13520}
13521
13522// SetArn sets the Arn field's value.
13523func (s *GroupInformation) SetArn(v string) *GroupInformation {
13524	s.Arn = &v
13525	return s
13526}
13527
13528// SetCreationTimestamp sets the CreationTimestamp field's value.
13529func (s *GroupInformation) SetCreationTimestamp(v string) *GroupInformation {
13530	s.CreationTimestamp = &v
13531	return s
13532}
13533
13534// SetId sets the Id field's value.
13535func (s *GroupInformation) SetId(v string) *GroupInformation {
13536	s.Id = &v
13537	return s
13538}
13539
13540// SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value.
13541func (s *GroupInformation) SetLastUpdatedTimestamp(v string) *GroupInformation {
13542	s.LastUpdatedTimestamp = &v
13543	return s
13544}
13545
13546// SetLatestVersion sets the LatestVersion field's value.
13547func (s *GroupInformation) SetLatestVersion(v string) *GroupInformation {
13548	s.LatestVersion = &v
13549	return s
13550}
13551
13552// SetLatestVersionArn sets the LatestVersionArn field's value.
13553func (s *GroupInformation) SetLatestVersionArn(v string) *GroupInformation {
13554	s.LatestVersionArn = &v
13555	return s
13556}
13557
13558// SetName sets the Name field's value.
13559func (s *GroupInformation) SetName(v string) *GroupInformation {
13560	s.Name = &v
13561	return s
13562}
13563
13564// Group owner related settings for local resources.
13565type GroupOwnerSetting struct {
13566	_ struct{} `type:"structure"`
13567
13568	// If true, AWS IoT Greengrass automatically adds the specified Linux OS group
13569	// owner of the resource to the Lambda process privileges. Thus the Lambda process
13570	// will have the file access permissions of the added Linux group.
13571	AutoAddGroupOwner *bool `type:"boolean"`
13572
13573	// The name of the Linux OS group whose privileges will be added to the Lambda
13574	// process. This field is optional.
13575	GroupOwner *string `type:"string"`
13576}
13577
13578// String returns the string representation
13579func (s GroupOwnerSetting) String() string {
13580	return awsutil.Prettify(s)
13581}
13582
13583// GoString returns the string representation
13584func (s GroupOwnerSetting) GoString() string {
13585	return s.String()
13586}
13587
13588// SetAutoAddGroupOwner sets the AutoAddGroupOwner field's value.
13589func (s *GroupOwnerSetting) SetAutoAddGroupOwner(v bool) *GroupOwnerSetting {
13590	s.AutoAddGroupOwner = &v
13591	return s
13592}
13593
13594// SetGroupOwner sets the GroupOwner field's value.
13595func (s *GroupOwnerSetting) SetGroupOwner(v string) *GroupOwnerSetting {
13596	s.GroupOwner = &v
13597	return s
13598}
13599
13600// Information about a group version.
13601type GroupVersion struct {
13602	_ struct{} `type:"structure"`
13603
13604	// The ARN of the connector definition version for this group.
13605	ConnectorDefinitionVersionArn *string `type:"string"`
13606
13607	// The ARN of the core definition version for this group.
13608	CoreDefinitionVersionArn *string `type:"string"`
13609
13610	// The ARN of the device definition version for this group.
13611	DeviceDefinitionVersionArn *string `type:"string"`
13612
13613	// The ARN of the function definition version for this group.
13614	FunctionDefinitionVersionArn *string `type:"string"`
13615
13616	// The ARN of the logger definition version for this group.
13617	LoggerDefinitionVersionArn *string `type:"string"`
13618
13619	// The ARN of the resource definition version for this group.
13620	ResourceDefinitionVersionArn *string `type:"string"`
13621
13622	// The ARN of the subscription definition version for this group.
13623	SubscriptionDefinitionVersionArn *string `type:"string"`
13624}
13625
13626// String returns the string representation
13627func (s GroupVersion) String() string {
13628	return awsutil.Prettify(s)
13629}
13630
13631// GoString returns the string representation
13632func (s GroupVersion) GoString() string {
13633	return s.String()
13634}
13635
13636// SetConnectorDefinitionVersionArn sets the ConnectorDefinitionVersionArn field's value.
13637func (s *GroupVersion) SetConnectorDefinitionVersionArn(v string) *GroupVersion {
13638	s.ConnectorDefinitionVersionArn = &v
13639	return s
13640}
13641
13642// SetCoreDefinitionVersionArn sets the CoreDefinitionVersionArn field's value.
13643func (s *GroupVersion) SetCoreDefinitionVersionArn(v string) *GroupVersion {
13644	s.CoreDefinitionVersionArn = &v
13645	return s
13646}
13647
13648// SetDeviceDefinitionVersionArn sets the DeviceDefinitionVersionArn field's value.
13649func (s *GroupVersion) SetDeviceDefinitionVersionArn(v string) *GroupVersion {
13650	s.DeviceDefinitionVersionArn = &v
13651	return s
13652}
13653
13654// SetFunctionDefinitionVersionArn sets the FunctionDefinitionVersionArn field's value.
13655func (s *GroupVersion) SetFunctionDefinitionVersionArn(v string) *GroupVersion {
13656	s.FunctionDefinitionVersionArn = &v
13657	return s
13658}
13659
13660// SetLoggerDefinitionVersionArn sets the LoggerDefinitionVersionArn field's value.
13661func (s *GroupVersion) SetLoggerDefinitionVersionArn(v string) *GroupVersion {
13662	s.LoggerDefinitionVersionArn = &v
13663	return s
13664}
13665
13666// SetResourceDefinitionVersionArn sets the ResourceDefinitionVersionArn field's value.
13667func (s *GroupVersion) SetResourceDefinitionVersionArn(v string) *GroupVersion {
13668	s.ResourceDefinitionVersionArn = &v
13669	return s
13670}
13671
13672// SetSubscriptionDefinitionVersionArn sets the SubscriptionDefinitionVersionArn field's value.
13673func (s *GroupVersion) SetSubscriptionDefinitionVersionArn(v string) *GroupVersion {
13674	s.SubscriptionDefinitionVersionArn = &v
13675	return s
13676}
13677
13678type ListBulkDeploymentDetailedReportsInput struct {
13679	_ struct{} `type:"structure"`
13680
13681	// BulkDeploymentId is a required field
13682	BulkDeploymentId *string `location:"uri" locationName:"BulkDeploymentId" type:"string" required:"true"`
13683
13684	MaxResults *string `location:"querystring" locationName:"MaxResults" type:"string"`
13685
13686	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
13687}
13688
13689// String returns the string representation
13690func (s ListBulkDeploymentDetailedReportsInput) String() string {
13691	return awsutil.Prettify(s)
13692}
13693
13694// GoString returns the string representation
13695func (s ListBulkDeploymentDetailedReportsInput) GoString() string {
13696	return s.String()
13697}
13698
13699// Validate inspects the fields of the type to determine if they are valid.
13700func (s *ListBulkDeploymentDetailedReportsInput) Validate() error {
13701	invalidParams := request.ErrInvalidParams{Context: "ListBulkDeploymentDetailedReportsInput"}
13702	if s.BulkDeploymentId == nil {
13703		invalidParams.Add(request.NewErrParamRequired("BulkDeploymentId"))
13704	}
13705	if s.BulkDeploymentId != nil && len(*s.BulkDeploymentId) < 1 {
13706		invalidParams.Add(request.NewErrParamMinLen("BulkDeploymentId", 1))
13707	}
13708
13709	if invalidParams.Len() > 0 {
13710		return invalidParams
13711	}
13712	return nil
13713}
13714
13715// SetBulkDeploymentId sets the BulkDeploymentId field's value.
13716func (s *ListBulkDeploymentDetailedReportsInput) SetBulkDeploymentId(v string) *ListBulkDeploymentDetailedReportsInput {
13717	s.BulkDeploymentId = &v
13718	return s
13719}
13720
13721// SetMaxResults sets the MaxResults field's value.
13722func (s *ListBulkDeploymentDetailedReportsInput) SetMaxResults(v string) *ListBulkDeploymentDetailedReportsInput {
13723	s.MaxResults = &v
13724	return s
13725}
13726
13727// SetNextToken sets the NextToken field's value.
13728func (s *ListBulkDeploymentDetailedReportsInput) SetNextToken(v string) *ListBulkDeploymentDetailedReportsInput {
13729	s.NextToken = &v
13730	return s
13731}
13732
13733type ListBulkDeploymentDetailedReportsOutput struct {
13734	_ struct{} `type:"structure"`
13735
13736	// A list of the individual group deployments in the bulk deployment operation.
13737	Deployments []*BulkDeploymentResult `type:"list"`
13738
13739	// The token for the next set of results, or ''null'' if there are no additional
13740	// results.
13741	NextToken *string `type:"string"`
13742}
13743
13744// String returns the string representation
13745func (s ListBulkDeploymentDetailedReportsOutput) String() string {
13746	return awsutil.Prettify(s)
13747}
13748
13749// GoString returns the string representation
13750func (s ListBulkDeploymentDetailedReportsOutput) GoString() string {
13751	return s.String()
13752}
13753
13754// SetDeployments sets the Deployments field's value.
13755func (s *ListBulkDeploymentDetailedReportsOutput) SetDeployments(v []*BulkDeploymentResult) *ListBulkDeploymentDetailedReportsOutput {
13756	s.Deployments = v
13757	return s
13758}
13759
13760// SetNextToken sets the NextToken field's value.
13761func (s *ListBulkDeploymentDetailedReportsOutput) SetNextToken(v string) *ListBulkDeploymentDetailedReportsOutput {
13762	s.NextToken = &v
13763	return s
13764}
13765
13766type ListBulkDeploymentsInput struct {
13767	_ struct{} `type:"structure"`
13768
13769	MaxResults *string `location:"querystring" locationName:"MaxResults" type:"string"`
13770
13771	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
13772}
13773
13774// String returns the string representation
13775func (s ListBulkDeploymentsInput) String() string {
13776	return awsutil.Prettify(s)
13777}
13778
13779// GoString returns the string representation
13780func (s ListBulkDeploymentsInput) GoString() string {
13781	return s.String()
13782}
13783
13784// SetMaxResults sets the MaxResults field's value.
13785func (s *ListBulkDeploymentsInput) SetMaxResults(v string) *ListBulkDeploymentsInput {
13786	s.MaxResults = &v
13787	return s
13788}
13789
13790// SetNextToken sets the NextToken field's value.
13791func (s *ListBulkDeploymentsInput) SetNextToken(v string) *ListBulkDeploymentsInput {
13792	s.NextToken = &v
13793	return s
13794}
13795
13796type ListBulkDeploymentsOutput struct {
13797	_ struct{} `type:"structure"`
13798
13799	// A list of bulk deployments.
13800	BulkDeployments []*BulkDeployment `type:"list"`
13801
13802	// The token for the next set of results, or ''null'' if there are no additional
13803	// results.
13804	NextToken *string `type:"string"`
13805}
13806
13807// String returns the string representation
13808func (s ListBulkDeploymentsOutput) String() string {
13809	return awsutil.Prettify(s)
13810}
13811
13812// GoString returns the string representation
13813func (s ListBulkDeploymentsOutput) GoString() string {
13814	return s.String()
13815}
13816
13817// SetBulkDeployments sets the BulkDeployments field's value.
13818func (s *ListBulkDeploymentsOutput) SetBulkDeployments(v []*BulkDeployment) *ListBulkDeploymentsOutput {
13819	s.BulkDeployments = v
13820	return s
13821}
13822
13823// SetNextToken sets the NextToken field's value.
13824func (s *ListBulkDeploymentsOutput) SetNextToken(v string) *ListBulkDeploymentsOutput {
13825	s.NextToken = &v
13826	return s
13827}
13828
13829type ListConnectorDefinitionVersionsInput struct {
13830	_ struct{} `type:"structure"`
13831
13832	// ConnectorDefinitionId is a required field
13833	ConnectorDefinitionId *string `location:"uri" locationName:"ConnectorDefinitionId" type:"string" required:"true"`
13834
13835	MaxResults *string `location:"querystring" locationName:"MaxResults" type:"string"`
13836
13837	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
13838}
13839
13840// String returns the string representation
13841func (s ListConnectorDefinitionVersionsInput) String() string {
13842	return awsutil.Prettify(s)
13843}
13844
13845// GoString returns the string representation
13846func (s ListConnectorDefinitionVersionsInput) GoString() string {
13847	return s.String()
13848}
13849
13850// Validate inspects the fields of the type to determine if they are valid.
13851func (s *ListConnectorDefinitionVersionsInput) Validate() error {
13852	invalidParams := request.ErrInvalidParams{Context: "ListConnectorDefinitionVersionsInput"}
13853	if s.ConnectorDefinitionId == nil {
13854		invalidParams.Add(request.NewErrParamRequired("ConnectorDefinitionId"))
13855	}
13856	if s.ConnectorDefinitionId != nil && len(*s.ConnectorDefinitionId) < 1 {
13857		invalidParams.Add(request.NewErrParamMinLen("ConnectorDefinitionId", 1))
13858	}
13859
13860	if invalidParams.Len() > 0 {
13861		return invalidParams
13862	}
13863	return nil
13864}
13865
13866// SetConnectorDefinitionId sets the ConnectorDefinitionId field's value.
13867func (s *ListConnectorDefinitionVersionsInput) SetConnectorDefinitionId(v string) *ListConnectorDefinitionVersionsInput {
13868	s.ConnectorDefinitionId = &v
13869	return s
13870}
13871
13872// SetMaxResults sets the MaxResults field's value.
13873func (s *ListConnectorDefinitionVersionsInput) SetMaxResults(v string) *ListConnectorDefinitionVersionsInput {
13874	s.MaxResults = &v
13875	return s
13876}
13877
13878// SetNextToken sets the NextToken field's value.
13879func (s *ListConnectorDefinitionVersionsInput) SetNextToken(v string) *ListConnectorDefinitionVersionsInput {
13880	s.NextToken = &v
13881	return s
13882}
13883
13884type ListConnectorDefinitionVersionsOutput struct {
13885	_ struct{} `type:"structure"`
13886
13887	NextToken *string `type:"string"`
13888
13889	Versions []*VersionInformation `type:"list"`
13890}
13891
13892// String returns the string representation
13893func (s ListConnectorDefinitionVersionsOutput) String() string {
13894	return awsutil.Prettify(s)
13895}
13896
13897// GoString returns the string representation
13898func (s ListConnectorDefinitionVersionsOutput) GoString() string {
13899	return s.String()
13900}
13901
13902// SetNextToken sets the NextToken field's value.
13903func (s *ListConnectorDefinitionVersionsOutput) SetNextToken(v string) *ListConnectorDefinitionVersionsOutput {
13904	s.NextToken = &v
13905	return s
13906}
13907
13908// SetVersions sets the Versions field's value.
13909func (s *ListConnectorDefinitionVersionsOutput) SetVersions(v []*VersionInformation) *ListConnectorDefinitionVersionsOutput {
13910	s.Versions = v
13911	return s
13912}
13913
13914type ListConnectorDefinitionsInput struct {
13915	_ struct{} `type:"structure"`
13916
13917	MaxResults *string `location:"querystring" locationName:"MaxResults" type:"string"`
13918
13919	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
13920}
13921
13922// String returns the string representation
13923func (s ListConnectorDefinitionsInput) String() string {
13924	return awsutil.Prettify(s)
13925}
13926
13927// GoString returns the string representation
13928func (s ListConnectorDefinitionsInput) GoString() string {
13929	return s.String()
13930}
13931
13932// SetMaxResults sets the MaxResults field's value.
13933func (s *ListConnectorDefinitionsInput) SetMaxResults(v string) *ListConnectorDefinitionsInput {
13934	s.MaxResults = &v
13935	return s
13936}
13937
13938// SetNextToken sets the NextToken field's value.
13939func (s *ListConnectorDefinitionsInput) SetNextToken(v string) *ListConnectorDefinitionsInput {
13940	s.NextToken = &v
13941	return s
13942}
13943
13944type ListConnectorDefinitionsOutput struct {
13945	_ struct{} `type:"structure"`
13946
13947	Definitions []*DefinitionInformation `type:"list"`
13948
13949	NextToken *string `type:"string"`
13950}
13951
13952// String returns the string representation
13953func (s ListConnectorDefinitionsOutput) String() string {
13954	return awsutil.Prettify(s)
13955}
13956
13957// GoString returns the string representation
13958func (s ListConnectorDefinitionsOutput) GoString() string {
13959	return s.String()
13960}
13961
13962// SetDefinitions sets the Definitions field's value.
13963func (s *ListConnectorDefinitionsOutput) SetDefinitions(v []*DefinitionInformation) *ListConnectorDefinitionsOutput {
13964	s.Definitions = v
13965	return s
13966}
13967
13968// SetNextToken sets the NextToken field's value.
13969func (s *ListConnectorDefinitionsOutput) SetNextToken(v string) *ListConnectorDefinitionsOutput {
13970	s.NextToken = &v
13971	return s
13972}
13973
13974type ListCoreDefinitionVersionsInput struct {
13975	_ struct{} `type:"structure"`
13976
13977	// CoreDefinitionId is a required field
13978	CoreDefinitionId *string `location:"uri" locationName:"CoreDefinitionId" type:"string" required:"true"`
13979
13980	MaxResults *string `location:"querystring" locationName:"MaxResults" type:"string"`
13981
13982	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
13983}
13984
13985// String returns the string representation
13986func (s ListCoreDefinitionVersionsInput) String() string {
13987	return awsutil.Prettify(s)
13988}
13989
13990// GoString returns the string representation
13991func (s ListCoreDefinitionVersionsInput) GoString() string {
13992	return s.String()
13993}
13994
13995// Validate inspects the fields of the type to determine if they are valid.
13996func (s *ListCoreDefinitionVersionsInput) Validate() error {
13997	invalidParams := request.ErrInvalidParams{Context: "ListCoreDefinitionVersionsInput"}
13998	if s.CoreDefinitionId == nil {
13999		invalidParams.Add(request.NewErrParamRequired("CoreDefinitionId"))
14000	}
14001	if s.CoreDefinitionId != nil && len(*s.CoreDefinitionId) < 1 {
14002		invalidParams.Add(request.NewErrParamMinLen("CoreDefinitionId", 1))
14003	}
14004
14005	if invalidParams.Len() > 0 {
14006		return invalidParams
14007	}
14008	return nil
14009}
14010
14011// SetCoreDefinitionId sets the CoreDefinitionId field's value.
14012func (s *ListCoreDefinitionVersionsInput) SetCoreDefinitionId(v string) *ListCoreDefinitionVersionsInput {
14013	s.CoreDefinitionId = &v
14014	return s
14015}
14016
14017// SetMaxResults sets the MaxResults field's value.
14018func (s *ListCoreDefinitionVersionsInput) SetMaxResults(v string) *ListCoreDefinitionVersionsInput {
14019	s.MaxResults = &v
14020	return s
14021}
14022
14023// SetNextToken sets the NextToken field's value.
14024func (s *ListCoreDefinitionVersionsInput) SetNextToken(v string) *ListCoreDefinitionVersionsInput {
14025	s.NextToken = &v
14026	return s
14027}
14028
14029type ListCoreDefinitionVersionsOutput struct {
14030	_ struct{} `type:"structure"`
14031
14032	NextToken *string `type:"string"`
14033
14034	Versions []*VersionInformation `type:"list"`
14035}
14036
14037// String returns the string representation
14038func (s ListCoreDefinitionVersionsOutput) String() string {
14039	return awsutil.Prettify(s)
14040}
14041
14042// GoString returns the string representation
14043func (s ListCoreDefinitionVersionsOutput) GoString() string {
14044	return s.String()
14045}
14046
14047// SetNextToken sets the NextToken field's value.
14048func (s *ListCoreDefinitionVersionsOutput) SetNextToken(v string) *ListCoreDefinitionVersionsOutput {
14049	s.NextToken = &v
14050	return s
14051}
14052
14053// SetVersions sets the Versions field's value.
14054func (s *ListCoreDefinitionVersionsOutput) SetVersions(v []*VersionInformation) *ListCoreDefinitionVersionsOutput {
14055	s.Versions = v
14056	return s
14057}
14058
14059type ListCoreDefinitionsInput struct {
14060	_ struct{} `type:"structure"`
14061
14062	MaxResults *string `location:"querystring" locationName:"MaxResults" type:"string"`
14063
14064	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
14065}
14066
14067// String returns the string representation
14068func (s ListCoreDefinitionsInput) String() string {
14069	return awsutil.Prettify(s)
14070}
14071
14072// GoString returns the string representation
14073func (s ListCoreDefinitionsInput) GoString() string {
14074	return s.String()
14075}
14076
14077// SetMaxResults sets the MaxResults field's value.
14078func (s *ListCoreDefinitionsInput) SetMaxResults(v string) *ListCoreDefinitionsInput {
14079	s.MaxResults = &v
14080	return s
14081}
14082
14083// SetNextToken sets the NextToken field's value.
14084func (s *ListCoreDefinitionsInput) SetNextToken(v string) *ListCoreDefinitionsInput {
14085	s.NextToken = &v
14086	return s
14087}
14088
14089type ListCoreDefinitionsOutput struct {
14090	_ struct{} `type:"structure"`
14091
14092	Definitions []*DefinitionInformation `type:"list"`
14093
14094	NextToken *string `type:"string"`
14095}
14096
14097// String returns the string representation
14098func (s ListCoreDefinitionsOutput) String() string {
14099	return awsutil.Prettify(s)
14100}
14101
14102// GoString returns the string representation
14103func (s ListCoreDefinitionsOutput) GoString() string {
14104	return s.String()
14105}
14106
14107// SetDefinitions sets the Definitions field's value.
14108func (s *ListCoreDefinitionsOutput) SetDefinitions(v []*DefinitionInformation) *ListCoreDefinitionsOutput {
14109	s.Definitions = v
14110	return s
14111}
14112
14113// SetNextToken sets the NextToken field's value.
14114func (s *ListCoreDefinitionsOutput) SetNextToken(v string) *ListCoreDefinitionsOutput {
14115	s.NextToken = &v
14116	return s
14117}
14118
14119type ListDeploymentsInput struct {
14120	_ struct{} `type:"structure"`
14121
14122	// GroupId is a required field
14123	GroupId *string `location:"uri" locationName:"GroupId" type:"string" required:"true"`
14124
14125	MaxResults *string `location:"querystring" locationName:"MaxResults" type:"string"`
14126
14127	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
14128}
14129
14130// String returns the string representation
14131func (s ListDeploymentsInput) String() string {
14132	return awsutil.Prettify(s)
14133}
14134
14135// GoString returns the string representation
14136func (s ListDeploymentsInput) GoString() string {
14137	return s.String()
14138}
14139
14140// Validate inspects the fields of the type to determine if they are valid.
14141func (s *ListDeploymentsInput) Validate() error {
14142	invalidParams := request.ErrInvalidParams{Context: "ListDeploymentsInput"}
14143	if s.GroupId == nil {
14144		invalidParams.Add(request.NewErrParamRequired("GroupId"))
14145	}
14146	if s.GroupId != nil && len(*s.GroupId) < 1 {
14147		invalidParams.Add(request.NewErrParamMinLen("GroupId", 1))
14148	}
14149
14150	if invalidParams.Len() > 0 {
14151		return invalidParams
14152	}
14153	return nil
14154}
14155
14156// SetGroupId sets the GroupId field's value.
14157func (s *ListDeploymentsInput) SetGroupId(v string) *ListDeploymentsInput {
14158	s.GroupId = &v
14159	return s
14160}
14161
14162// SetMaxResults sets the MaxResults field's value.
14163func (s *ListDeploymentsInput) SetMaxResults(v string) *ListDeploymentsInput {
14164	s.MaxResults = &v
14165	return s
14166}
14167
14168// SetNextToken sets the NextToken field's value.
14169func (s *ListDeploymentsInput) SetNextToken(v string) *ListDeploymentsInput {
14170	s.NextToken = &v
14171	return s
14172}
14173
14174type ListDeploymentsOutput struct {
14175	_ struct{} `type:"structure"`
14176
14177	// A list of deployments for the requested groups.
14178	Deployments []*Deployment `type:"list"`
14179
14180	// The token for the next set of results, or ''null'' if there are no additional
14181	// results.
14182	NextToken *string `type:"string"`
14183}
14184
14185// String returns the string representation
14186func (s ListDeploymentsOutput) String() string {
14187	return awsutil.Prettify(s)
14188}
14189
14190// GoString returns the string representation
14191func (s ListDeploymentsOutput) GoString() string {
14192	return s.String()
14193}
14194
14195// SetDeployments sets the Deployments field's value.
14196func (s *ListDeploymentsOutput) SetDeployments(v []*Deployment) *ListDeploymentsOutput {
14197	s.Deployments = v
14198	return s
14199}
14200
14201// SetNextToken sets the NextToken field's value.
14202func (s *ListDeploymentsOutput) SetNextToken(v string) *ListDeploymentsOutput {
14203	s.NextToken = &v
14204	return s
14205}
14206
14207type ListDeviceDefinitionVersionsInput struct {
14208	_ struct{} `type:"structure"`
14209
14210	// DeviceDefinitionId is a required field
14211	DeviceDefinitionId *string `location:"uri" locationName:"DeviceDefinitionId" type:"string" required:"true"`
14212
14213	MaxResults *string `location:"querystring" locationName:"MaxResults" type:"string"`
14214
14215	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
14216}
14217
14218// String returns the string representation
14219func (s ListDeviceDefinitionVersionsInput) String() string {
14220	return awsutil.Prettify(s)
14221}
14222
14223// GoString returns the string representation
14224func (s ListDeviceDefinitionVersionsInput) GoString() string {
14225	return s.String()
14226}
14227
14228// Validate inspects the fields of the type to determine if they are valid.
14229func (s *ListDeviceDefinitionVersionsInput) Validate() error {
14230	invalidParams := request.ErrInvalidParams{Context: "ListDeviceDefinitionVersionsInput"}
14231	if s.DeviceDefinitionId == nil {
14232		invalidParams.Add(request.NewErrParamRequired("DeviceDefinitionId"))
14233	}
14234	if s.DeviceDefinitionId != nil && len(*s.DeviceDefinitionId) < 1 {
14235		invalidParams.Add(request.NewErrParamMinLen("DeviceDefinitionId", 1))
14236	}
14237
14238	if invalidParams.Len() > 0 {
14239		return invalidParams
14240	}
14241	return nil
14242}
14243
14244// SetDeviceDefinitionId sets the DeviceDefinitionId field's value.
14245func (s *ListDeviceDefinitionVersionsInput) SetDeviceDefinitionId(v string) *ListDeviceDefinitionVersionsInput {
14246	s.DeviceDefinitionId = &v
14247	return s
14248}
14249
14250// SetMaxResults sets the MaxResults field's value.
14251func (s *ListDeviceDefinitionVersionsInput) SetMaxResults(v string) *ListDeviceDefinitionVersionsInput {
14252	s.MaxResults = &v
14253	return s
14254}
14255
14256// SetNextToken sets the NextToken field's value.
14257func (s *ListDeviceDefinitionVersionsInput) SetNextToken(v string) *ListDeviceDefinitionVersionsInput {
14258	s.NextToken = &v
14259	return s
14260}
14261
14262type ListDeviceDefinitionVersionsOutput struct {
14263	_ struct{} `type:"structure"`
14264
14265	NextToken *string `type:"string"`
14266
14267	Versions []*VersionInformation `type:"list"`
14268}
14269
14270// String returns the string representation
14271func (s ListDeviceDefinitionVersionsOutput) String() string {
14272	return awsutil.Prettify(s)
14273}
14274
14275// GoString returns the string representation
14276func (s ListDeviceDefinitionVersionsOutput) GoString() string {
14277	return s.String()
14278}
14279
14280// SetNextToken sets the NextToken field's value.
14281func (s *ListDeviceDefinitionVersionsOutput) SetNextToken(v string) *ListDeviceDefinitionVersionsOutput {
14282	s.NextToken = &v
14283	return s
14284}
14285
14286// SetVersions sets the Versions field's value.
14287func (s *ListDeviceDefinitionVersionsOutput) SetVersions(v []*VersionInformation) *ListDeviceDefinitionVersionsOutput {
14288	s.Versions = v
14289	return s
14290}
14291
14292type ListDeviceDefinitionsInput struct {
14293	_ struct{} `type:"structure"`
14294
14295	MaxResults *string `location:"querystring" locationName:"MaxResults" type:"string"`
14296
14297	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
14298}
14299
14300// String returns the string representation
14301func (s ListDeviceDefinitionsInput) String() string {
14302	return awsutil.Prettify(s)
14303}
14304
14305// GoString returns the string representation
14306func (s ListDeviceDefinitionsInput) GoString() string {
14307	return s.String()
14308}
14309
14310// SetMaxResults sets the MaxResults field's value.
14311func (s *ListDeviceDefinitionsInput) SetMaxResults(v string) *ListDeviceDefinitionsInput {
14312	s.MaxResults = &v
14313	return s
14314}
14315
14316// SetNextToken sets the NextToken field's value.
14317func (s *ListDeviceDefinitionsInput) SetNextToken(v string) *ListDeviceDefinitionsInput {
14318	s.NextToken = &v
14319	return s
14320}
14321
14322type ListDeviceDefinitionsOutput struct {
14323	_ struct{} `type:"structure"`
14324
14325	Definitions []*DefinitionInformation `type:"list"`
14326
14327	NextToken *string `type:"string"`
14328}
14329
14330// String returns the string representation
14331func (s ListDeviceDefinitionsOutput) String() string {
14332	return awsutil.Prettify(s)
14333}
14334
14335// GoString returns the string representation
14336func (s ListDeviceDefinitionsOutput) GoString() string {
14337	return s.String()
14338}
14339
14340// SetDefinitions sets the Definitions field's value.
14341func (s *ListDeviceDefinitionsOutput) SetDefinitions(v []*DefinitionInformation) *ListDeviceDefinitionsOutput {
14342	s.Definitions = v
14343	return s
14344}
14345
14346// SetNextToken sets the NextToken field's value.
14347func (s *ListDeviceDefinitionsOutput) SetNextToken(v string) *ListDeviceDefinitionsOutput {
14348	s.NextToken = &v
14349	return s
14350}
14351
14352type ListFunctionDefinitionVersionsInput struct {
14353	_ struct{} `type:"structure"`
14354
14355	// FunctionDefinitionId is a required field
14356	FunctionDefinitionId *string `location:"uri" locationName:"FunctionDefinitionId" type:"string" required:"true"`
14357
14358	MaxResults *string `location:"querystring" locationName:"MaxResults" type:"string"`
14359
14360	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
14361}
14362
14363// String returns the string representation
14364func (s ListFunctionDefinitionVersionsInput) String() string {
14365	return awsutil.Prettify(s)
14366}
14367
14368// GoString returns the string representation
14369func (s ListFunctionDefinitionVersionsInput) GoString() string {
14370	return s.String()
14371}
14372
14373// Validate inspects the fields of the type to determine if they are valid.
14374func (s *ListFunctionDefinitionVersionsInput) Validate() error {
14375	invalidParams := request.ErrInvalidParams{Context: "ListFunctionDefinitionVersionsInput"}
14376	if s.FunctionDefinitionId == nil {
14377		invalidParams.Add(request.NewErrParamRequired("FunctionDefinitionId"))
14378	}
14379	if s.FunctionDefinitionId != nil && len(*s.FunctionDefinitionId) < 1 {
14380		invalidParams.Add(request.NewErrParamMinLen("FunctionDefinitionId", 1))
14381	}
14382
14383	if invalidParams.Len() > 0 {
14384		return invalidParams
14385	}
14386	return nil
14387}
14388
14389// SetFunctionDefinitionId sets the FunctionDefinitionId field's value.
14390func (s *ListFunctionDefinitionVersionsInput) SetFunctionDefinitionId(v string) *ListFunctionDefinitionVersionsInput {
14391	s.FunctionDefinitionId = &v
14392	return s
14393}
14394
14395// SetMaxResults sets the MaxResults field's value.
14396func (s *ListFunctionDefinitionVersionsInput) SetMaxResults(v string) *ListFunctionDefinitionVersionsInput {
14397	s.MaxResults = &v
14398	return s
14399}
14400
14401// SetNextToken sets the NextToken field's value.
14402func (s *ListFunctionDefinitionVersionsInput) SetNextToken(v string) *ListFunctionDefinitionVersionsInput {
14403	s.NextToken = &v
14404	return s
14405}
14406
14407type ListFunctionDefinitionVersionsOutput struct {
14408	_ struct{} `type:"structure"`
14409
14410	NextToken *string `type:"string"`
14411
14412	Versions []*VersionInformation `type:"list"`
14413}
14414
14415// String returns the string representation
14416func (s ListFunctionDefinitionVersionsOutput) String() string {
14417	return awsutil.Prettify(s)
14418}
14419
14420// GoString returns the string representation
14421func (s ListFunctionDefinitionVersionsOutput) GoString() string {
14422	return s.String()
14423}
14424
14425// SetNextToken sets the NextToken field's value.
14426func (s *ListFunctionDefinitionVersionsOutput) SetNextToken(v string) *ListFunctionDefinitionVersionsOutput {
14427	s.NextToken = &v
14428	return s
14429}
14430
14431// SetVersions sets the Versions field's value.
14432func (s *ListFunctionDefinitionVersionsOutput) SetVersions(v []*VersionInformation) *ListFunctionDefinitionVersionsOutput {
14433	s.Versions = v
14434	return s
14435}
14436
14437type ListFunctionDefinitionsInput struct {
14438	_ struct{} `type:"structure"`
14439
14440	MaxResults *string `location:"querystring" locationName:"MaxResults" type:"string"`
14441
14442	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
14443}
14444
14445// String returns the string representation
14446func (s ListFunctionDefinitionsInput) String() string {
14447	return awsutil.Prettify(s)
14448}
14449
14450// GoString returns the string representation
14451func (s ListFunctionDefinitionsInput) GoString() string {
14452	return s.String()
14453}
14454
14455// SetMaxResults sets the MaxResults field's value.
14456func (s *ListFunctionDefinitionsInput) SetMaxResults(v string) *ListFunctionDefinitionsInput {
14457	s.MaxResults = &v
14458	return s
14459}
14460
14461// SetNextToken sets the NextToken field's value.
14462func (s *ListFunctionDefinitionsInput) SetNextToken(v string) *ListFunctionDefinitionsInput {
14463	s.NextToken = &v
14464	return s
14465}
14466
14467type ListFunctionDefinitionsOutput struct {
14468	_ struct{} `type:"structure"`
14469
14470	Definitions []*DefinitionInformation `type:"list"`
14471
14472	NextToken *string `type:"string"`
14473}
14474
14475// String returns the string representation
14476func (s ListFunctionDefinitionsOutput) String() string {
14477	return awsutil.Prettify(s)
14478}
14479
14480// GoString returns the string representation
14481func (s ListFunctionDefinitionsOutput) GoString() string {
14482	return s.String()
14483}
14484
14485// SetDefinitions sets the Definitions field's value.
14486func (s *ListFunctionDefinitionsOutput) SetDefinitions(v []*DefinitionInformation) *ListFunctionDefinitionsOutput {
14487	s.Definitions = v
14488	return s
14489}
14490
14491// SetNextToken sets the NextToken field's value.
14492func (s *ListFunctionDefinitionsOutput) SetNextToken(v string) *ListFunctionDefinitionsOutput {
14493	s.NextToken = &v
14494	return s
14495}
14496
14497type ListGroupCertificateAuthoritiesInput struct {
14498	_ struct{} `type:"structure"`
14499
14500	// GroupId is a required field
14501	GroupId *string `location:"uri" locationName:"GroupId" type:"string" required:"true"`
14502}
14503
14504// String returns the string representation
14505func (s ListGroupCertificateAuthoritiesInput) String() string {
14506	return awsutil.Prettify(s)
14507}
14508
14509// GoString returns the string representation
14510func (s ListGroupCertificateAuthoritiesInput) GoString() string {
14511	return s.String()
14512}
14513
14514// Validate inspects the fields of the type to determine if they are valid.
14515func (s *ListGroupCertificateAuthoritiesInput) Validate() error {
14516	invalidParams := request.ErrInvalidParams{Context: "ListGroupCertificateAuthoritiesInput"}
14517	if s.GroupId == nil {
14518		invalidParams.Add(request.NewErrParamRequired("GroupId"))
14519	}
14520	if s.GroupId != nil && len(*s.GroupId) < 1 {
14521		invalidParams.Add(request.NewErrParamMinLen("GroupId", 1))
14522	}
14523
14524	if invalidParams.Len() > 0 {
14525		return invalidParams
14526	}
14527	return nil
14528}
14529
14530// SetGroupId sets the GroupId field's value.
14531func (s *ListGroupCertificateAuthoritiesInput) SetGroupId(v string) *ListGroupCertificateAuthoritiesInput {
14532	s.GroupId = &v
14533	return s
14534}
14535
14536type ListGroupCertificateAuthoritiesOutput struct {
14537	_ struct{} `type:"structure"`
14538
14539	// A list of certificate authorities associated with the group.
14540	GroupCertificateAuthorities []*GroupCertificateAuthorityProperties `type:"list"`
14541}
14542
14543// String returns the string representation
14544func (s ListGroupCertificateAuthoritiesOutput) String() string {
14545	return awsutil.Prettify(s)
14546}
14547
14548// GoString returns the string representation
14549func (s ListGroupCertificateAuthoritiesOutput) GoString() string {
14550	return s.String()
14551}
14552
14553// SetGroupCertificateAuthorities sets the GroupCertificateAuthorities field's value.
14554func (s *ListGroupCertificateAuthoritiesOutput) SetGroupCertificateAuthorities(v []*GroupCertificateAuthorityProperties) *ListGroupCertificateAuthoritiesOutput {
14555	s.GroupCertificateAuthorities = v
14556	return s
14557}
14558
14559type ListGroupVersionsInput struct {
14560	_ struct{} `type:"structure"`
14561
14562	// GroupId is a required field
14563	GroupId *string `location:"uri" locationName:"GroupId" type:"string" required:"true"`
14564
14565	MaxResults *string `location:"querystring" locationName:"MaxResults" type:"string"`
14566
14567	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
14568}
14569
14570// String returns the string representation
14571func (s ListGroupVersionsInput) String() string {
14572	return awsutil.Prettify(s)
14573}
14574
14575// GoString returns the string representation
14576func (s ListGroupVersionsInput) GoString() string {
14577	return s.String()
14578}
14579
14580// Validate inspects the fields of the type to determine if they are valid.
14581func (s *ListGroupVersionsInput) Validate() error {
14582	invalidParams := request.ErrInvalidParams{Context: "ListGroupVersionsInput"}
14583	if s.GroupId == nil {
14584		invalidParams.Add(request.NewErrParamRequired("GroupId"))
14585	}
14586	if s.GroupId != nil && len(*s.GroupId) < 1 {
14587		invalidParams.Add(request.NewErrParamMinLen("GroupId", 1))
14588	}
14589
14590	if invalidParams.Len() > 0 {
14591		return invalidParams
14592	}
14593	return nil
14594}
14595
14596// SetGroupId sets the GroupId field's value.
14597func (s *ListGroupVersionsInput) SetGroupId(v string) *ListGroupVersionsInput {
14598	s.GroupId = &v
14599	return s
14600}
14601
14602// SetMaxResults sets the MaxResults field's value.
14603func (s *ListGroupVersionsInput) SetMaxResults(v string) *ListGroupVersionsInput {
14604	s.MaxResults = &v
14605	return s
14606}
14607
14608// SetNextToken sets the NextToken field's value.
14609func (s *ListGroupVersionsInput) SetNextToken(v string) *ListGroupVersionsInput {
14610	s.NextToken = &v
14611	return s
14612}
14613
14614type ListGroupVersionsOutput struct {
14615	_ struct{} `type:"structure"`
14616
14617	NextToken *string `type:"string"`
14618
14619	Versions []*VersionInformation `type:"list"`
14620}
14621
14622// String returns the string representation
14623func (s ListGroupVersionsOutput) String() string {
14624	return awsutil.Prettify(s)
14625}
14626
14627// GoString returns the string representation
14628func (s ListGroupVersionsOutput) GoString() string {
14629	return s.String()
14630}
14631
14632// SetNextToken sets the NextToken field's value.
14633func (s *ListGroupVersionsOutput) SetNextToken(v string) *ListGroupVersionsOutput {
14634	s.NextToken = &v
14635	return s
14636}
14637
14638// SetVersions sets the Versions field's value.
14639func (s *ListGroupVersionsOutput) SetVersions(v []*VersionInformation) *ListGroupVersionsOutput {
14640	s.Versions = v
14641	return s
14642}
14643
14644type ListGroupsInput struct {
14645	_ struct{} `type:"structure"`
14646
14647	MaxResults *string `location:"querystring" locationName:"MaxResults" type:"string"`
14648
14649	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
14650}
14651
14652// String returns the string representation
14653func (s ListGroupsInput) String() string {
14654	return awsutil.Prettify(s)
14655}
14656
14657// GoString returns the string representation
14658func (s ListGroupsInput) GoString() string {
14659	return s.String()
14660}
14661
14662// SetMaxResults sets the MaxResults field's value.
14663func (s *ListGroupsInput) SetMaxResults(v string) *ListGroupsInput {
14664	s.MaxResults = &v
14665	return s
14666}
14667
14668// SetNextToken sets the NextToken field's value.
14669func (s *ListGroupsInput) SetNextToken(v string) *ListGroupsInput {
14670	s.NextToken = &v
14671	return s
14672}
14673
14674type ListGroupsOutput struct {
14675	_ struct{} `type:"structure"`
14676
14677	// Information about a group.
14678	Groups []*GroupInformation `type:"list"`
14679
14680	// The token for the next set of results, or ''null'' if there are no additional
14681	// results.
14682	NextToken *string `type:"string"`
14683}
14684
14685// String returns the string representation
14686func (s ListGroupsOutput) String() string {
14687	return awsutil.Prettify(s)
14688}
14689
14690// GoString returns the string representation
14691func (s ListGroupsOutput) GoString() string {
14692	return s.String()
14693}
14694
14695// SetGroups sets the Groups field's value.
14696func (s *ListGroupsOutput) SetGroups(v []*GroupInformation) *ListGroupsOutput {
14697	s.Groups = v
14698	return s
14699}
14700
14701// SetNextToken sets the NextToken field's value.
14702func (s *ListGroupsOutput) SetNextToken(v string) *ListGroupsOutput {
14703	s.NextToken = &v
14704	return s
14705}
14706
14707type ListLoggerDefinitionVersionsInput struct {
14708	_ struct{} `type:"structure"`
14709
14710	// LoggerDefinitionId is a required field
14711	LoggerDefinitionId *string `location:"uri" locationName:"LoggerDefinitionId" type:"string" required:"true"`
14712
14713	MaxResults *string `location:"querystring" locationName:"MaxResults" type:"string"`
14714
14715	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
14716}
14717
14718// String returns the string representation
14719func (s ListLoggerDefinitionVersionsInput) String() string {
14720	return awsutil.Prettify(s)
14721}
14722
14723// GoString returns the string representation
14724func (s ListLoggerDefinitionVersionsInput) GoString() string {
14725	return s.String()
14726}
14727
14728// Validate inspects the fields of the type to determine if they are valid.
14729func (s *ListLoggerDefinitionVersionsInput) Validate() error {
14730	invalidParams := request.ErrInvalidParams{Context: "ListLoggerDefinitionVersionsInput"}
14731	if s.LoggerDefinitionId == nil {
14732		invalidParams.Add(request.NewErrParamRequired("LoggerDefinitionId"))
14733	}
14734	if s.LoggerDefinitionId != nil && len(*s.LoggerDefinitionId) < 1 {
14735		invalidParams.Add(request.NewErrParamMinLen("LoggerDefinitionId", 1))
14736	}
14737
14738	if invalidParams.Len() > 0 {
14739		return invalidParams
14740	}
14741	return nil
14742}
14743
14744// SetLoggerDefinitionId sets the LoggerDefinitionId field's value.
14745func (s *ListLoggerDefinitionVersionsInput) SetLoggerDefinitionId(v string) *ListLoggerDefinitionVersionsInput {
14746	s.LoggerDefinitionId = &v
14747	return s
14748}
14749
14750// SetMaxResults sets the MaxResults field's value.
14751func (s *ListLoggerDefinitionVersionsInput) SetMaxResults(v string) *ListLoggerDefinitionVersionsInput {
14752	s.MaxResults = &v
14753	return s
14754}
14755
14756// SetNextToken sets the NextToken field's value.
14757func (s *ListLoggerDefinitionVersionsInput) SetNextToken(v string) *ListLoggerDefinitionVersionsInput {
14758	s.NextToken = &v
14759	return s
14760}
14761
14762type ListLoggerDefinitionVersionsOutput struct {
14763	_ struct{} `type:"structure"`
14764
14765	NextToken *string `type:"string"`
14766
14767	Versions []*VersionInformation `type:"list"`
14768}
14769
14770// String returns the string representation
14771func (s ListLoggerDefinitionVersionsOutput) String() string {
14772	return awsutil.Prettify(s)
14773}
14774
14775// GoString returns the string representation
14776func (s ListLoggerDefinitionVersionsOutput) GoString() string {
14777	return s.String()
14778}
14779
14780// SetNextToken sets the NextToken field's value.
14781func (s *ListLoggerDefinitionVersionsOutput) SetNextToken(v string) *ListLoggerDefinitionVersionsOutput {
14782	s.NextToken = &v
14783	return s
14784}
14785
14786// SetVersions sets the Versions field's value.
14787func (s *ListLoggerDefinitionVersionsOutput) SetVersions(v []*VersionInformation) *ListLoggerDefinitionVersionsOutput {
14788	s.Versions = v
14789	return s
14790}
14791
14792type ListLoggerDefinitionsInput struct {
14793	_ struct{} `type:"structure"`
14794
14795	MaxResults *string `location:"querystring" locationName:"MaxResults" type:"string"`
14796
14797	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
14798}
14799
14800// String returns the string representation
14801func (s ListLoggerDefinitionsInput) String() string {
14802	return awsutil.Prettify(s)
14803}
14804
14805// GoString returns the string representation
14806func (s ListLoggerDefinitionsInput) GoString() string {
14807	return s.String()
14808}
14809
14810// SetMaxResults sets the MaxResults field's value.
14811func (s *ListLoggerDefinitionsInput) SetMaxResults(v string) *ListLoggerDefinitionsInput {
14812	s.MaxResults = &v
14813	return s
14814}
14815
14816// SetNextToken sets the NextToken field's value.
14817func (s *ListLoggerDefinitionsInput) SetNextToken(v string) *ListLoggerDefinitionsInput {
14818	s.NextToken = &v
14819	return s
14820}
14821
14822type ListLoggerDefinitionsOutput struct {
14823	_ struct{} `type:"structure"`
14824
14825	Definitions []*DefinitionInformation `type:"list"`
14826
14827	NextToken *string `type:"string"`
14828}
14829
14830// String returns the string representation
14831func (s ListLoggerDefinitionsOutput) String() string {
14832	return awsutil.Prettify(s)
14833}
14834
14835// GoString returns the string representation
14836func (s ListLoggerDefinitionsOutput) GoString() string {
14837	return s.String()
14838}
14839
14840// SetDefinitions sets the Definitions field's value.
14841func (s *ListLoggerDefinitionsOutput) SetDefinitions(v []*DefinitionInformation) *ListLoggerDefinitionsOutput {
14842	s.Definitions = v
14843	return s
14844}
14845
14846// SetNextToken sets the NextToken field's value.
14847func (s *ListLoggerDefinitionsOutput) SetNextToken(v string) *ListLoggerDefinitionsOutput {
14848	s.NextToken = &v
14849	return s
14850}
14851
14852type ListResourceDefinitionVersionsInput struct {
14853	_ struct{} `type:"structure"`
14854
14855	MaxResults *string `location:"querystring" locationName:"MaxResults" type:"string"`
14856
14857	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
14858
14859	// ResourceDefinitionId is a required field
14860	ResourceDefinitionId *string `location:"uri" locationName:"ResourceDefinitionId" type:"string" required:"true"`
14861}
14862
14863// String returns the string representation
14864func (s ListResourceDefinitionVersionsInput) String() string {
14865	return awsutil.Prettify(s)
14866}
14867
14868// GoString returns the string representation
14869func (s ListResourceDefinitionVersionsInput) GoString() string {
14870	return s.String()
14871}
14872
14873// Validate inspects the fields of the type to determine if they are valid.
14874func (s *ListResourceDefinitionVersionsInput) Validate() error {
14875	invalidParams := request.ErrInvalidParams{Context: "ListResourceDefinitionVersionsInput"}
14876	if s.ResourceDefinitionId == nil {
14877		invalidParams.Add(request.NewErrParamRequired("ResourceDefinitionId"))
14878	}
14879	if s.ResourceDefinitionId != nil && len(*s.ResourceDefinitionId) < 1 {
14880		invalidParams.Add(request.NewErrParamMinLen("ResourceDefinitionId", 1))
14881	}
14882
14883	if invalidParams.Len() > 0 {
14884		return invalidParams
14885	}
14886	return nil
14887}
14888
14889// SetMaxResults sets the MaxResults field's value.
14890func (s *ListResourceDefinitionVersionsInput) SetMaxResults(v string) *ListResourceDefinitionVersionsInput {
14891	s.MaxResults = &v
14892	return s
14893}
14894
14895// SetNextToken sets the NextToken field's value.
14896func (s *ListResourceDefinitionVersionsInput) SetNextToken(v string) *ListResourceDefinitionVersionsInput {
14897	s.NextToken = &v
14898	return s
14899}
14900
14901// SetResourceDefinitionId sets the ResourceDefinitionId field's value.
14902func (s *ListResourceDefinitionVersionsInput) SetResourceDefinitionId(v string) *ListResourceDefinitionVersionsInput {
14903	s.ResourceDefinitionId = &v
14904	return s
14905}
14906
14907type ListResourceDefinitionVersionsOutput struct {
14908	_ struct{} `type:"structure"`
14909
14910	NextToken *string `type:"string"`
14911
14912	Versions []*VersionInformation `type:"list"`
14913}
14914
14915// String returns the string representation
14916func (s ListResourceDefinitionVersionsOutput) String() string {
14917	return awsutil.Prettify(s)
14918}
14919
14920// GoString returns the string representation
14921func (s ListResourceDefinitionVersionsOutput) GoString() string {
14922	return s.String()
14923}
14924
14925// SetNextToken sets the NextToken field's value.
14926func (s *ListResourceDefinitionVersionsOutput) SetNextToken(v string) *ListResourceDefinitionVersionsOutput {
14927	s.NextToken = &v
14928	return s
14929}
14930
14931// SetVersions sets the Versions field's value.
14932func (s *ListResourceDefinitionVersionsOutput) SetVersions(v []*VersionInformation) *ListResourceDefinitionVersionsOutput {
14933	s.Versions = v
14934	return s
14935}
14936
14937type ListResourceDefinitionsInput struct {
14938	_ struct{} `type:"structure"`
14939
14940	MaxResults *string `location:"querystring" locationName:"MaxResults" type:"string"`
14941
14942	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
14943}
14944
14945// String returns the string representation
14946func (s ListResourceDefinitionsInput) String() string {
14947	return awsutil.Prettify(s)
14948}
14949
14950// GoString returns the string representation
14951func (s ListResourceDefinitionsInput) GoString() string {
14952	return s.String()
14953}
14954
14955// SetMaxResults sets the MaxResults field's value.
14956func (s *ListResourceDefinitionsInput) SetMaxResults(v string) *ListResourceDefinitionsInput {
14957	s.MaxResults = &v
14958	return s
14959}
14960
14961// SetNextToken sets the NextToken field's value.
14962func (s *ListResourceDefinitionsInput) SetNextToken(v string) *ListResourceDefinitionsInput {
14963	s.NextToken = &v
14964	return s
14965}
14966
14967type ListResourceDefinitionsOutput struct {
14968	_ struct{} `type:"structure"`
14969
14970	Definitions []*DefinitionInformation `type:"list"`
14971
14972	NextToken *string `type:"string"`
14973}
14974
14975// String returns the string representation
14976func (s ListResourceDefinitionsOutput) String() string {
14977	return awsutil.Prettify(s)
14978}
14979
14980// GoString returns the string representation
14981func (s ListResourceDefinitionsOutput) GoString() string {
14982	return s.String()
14983}
14984
14985// SetDefinitions sets the Definitions field's value.
14986func (s *ListResourceDefinitionsOutput) SetDefinitions(v []*DefinitionInformation) *ListResourceDefinitionsOutput {
14987	s.Definitions = v
14988	return s
14989}
14990
14991// SetNextToken sets the NextToken field's value.
14992func (s *ListResourceDefinitionsOutput) SetNextToken(v string) *ListResourceDefinitionsOutput {
14993	s.NextToken = &v
14994	return s
14995}
14996
14997type ListSubscriptionDefinitionVersionsInput struct {
14998	_ struct{} `type:"structure"`
14999
15000	MaxResults *string `location:"querystring" locationName:"MaxResults" type:"string"`
15001
15002	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
15003
15004	// SubscriptionDefinitionId is a required field
15005	SubscriptionDefinitionId *string `location:"uri" locationName:"SubscriptionDefinitionId" type:"string" required:"true"`
15006}
15007
15008// String returns the string representation
15009func (s ListSubscriptionDefinitionVersionsInput) String() string {
15010	return awsutil.Prettify(s)
15011}
15012
15013// GoString returns the string representation
15014func (s ListSubscriptionDefinitionVersionsInput) GoString() string {
15015	return s.String()
15016}
15017
15018// Validate inspects the fields of the type to determine if they are valid.
15019func (s *ListSubscriptionDefinitionVersionsInput) Validate() error {
15020	invalidParams := request.ErrInvalidParams{Context: "ListSubscriptionDefinitionVersionsInput"}
15021	if s.SubscriptionDefinitionId == nil {
15022		invalidParams.Add(request.NewErrParamRequired("SubscriptionDefinitionId"))
15023	}
15024	if s.SubscriptionDefinitionId != nil && len(*s.SubscriptionDefinitionId) < 1 {
15025		invalidParams.Add(request.NewErrParamMinLen("SubscriptionDefinitionId", 1))
15026	}
15027
15028	if invalidParams.Len() > 0 {
15029		return invalidParams
15030	}
15031	return nil
15032}
15033
15034// SetMaxResults sets the MaxResults field's value.
15035func (s *ListSubscriptionDefinitionVersionsInput) SetMaxResults(v string) *ListSubscriptionDefinitionVersionsInput {
15036	s.MaxResults = &v
15037	return s
15038}
15039
15040// SetNextToken sets the NextToken field's value.
15041func (s *ListSubscriptionDefinitionVersionsInput) SetNextToken(v string) *ListSubscriptionDefinitionVersionsInput {
15042	s.NextToken = &v
15043	return s
15044}
15045
15046// SetSubscriptionDefinitionId sets the SubscriptionDefinitionId field's value.
15047func (s *ListSubscriptionDefinitionVersionsInput) SetSubscriptionDefinitionId(v string) *ListSubscriptionDefinitionVersionsInput {
15048	s.SubscriptionDefinitionId = &v
15049	return s
15050}
15051
15052type ListSubscriptionDefinitionVersionsOutput struct {
15053	_ struct{} `type:"structure"`
15054
15055	NextToken *string `type:"string"`
15056
15057	Versions []*VersionInformation `type:"list"`
15058}
15059
15060// String returns the string representation
15061func (s ListSubscriptionDefinitionVersionsOutput) String() string {
15062	return awsutil.Prettify(s)
15063}
15064
15065// GoString returns the string representation
15066func (s ListSubscriptionDefinitionVersionsOutput) GoString() string {
15067	return s.String()
15068}
15069
15070// SetNextToken sets the NextToken field's value.
15071func (s *ListSubscriptionDefinitionVersionsOutput) SetNextToken(v string) *ListSubscriptionDefinitionVersionsOutput {
15072	s.NextToken = &v
15073	return s
15074}
15075
15076// SetVersions sets the Versions field's value.
15077func (s *ListSubscriptionDefinitionVersionsOutput) SetVersions(v []*VersionInformation) *ListSubscriptionDefinitionVersionsOutput {
15078	s.Versions = v
15079	return s
15080}
15081
15082type ListSubscriptionDefinitionsInput struct {
15083	_ struct{} `type:"structure"`
15084
15085	MaxResults *string `location:"querystring" locationName:"MaxResults" type:"string"`
15086
15087	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
15088}
15089
15090// String returns the string representation
15091func (s ListSubscriptionDefinitionsInput) String() string {
15092	return awsutil.Prettify(s)
15093}
15094
15095// GoString returns the string representation
15096func (s ListSubscriptionDefinitionsInput) GoString() string {
15097	return s.String()
15098}
15099
15100// SetMaxResults sets the MaxResults field's value.
15101func (s *ListSubscriptionDefinitionsInput) SetMaxResults(v string) *ListSubscriptionDefinitionsInput {
15102	s.MaxResults = &v
15103	return s
15104}
15105
15106// SetNextToken sets the NextToken field's value.
15107func (s *ListSubscriptionDefinitionsInput) SetNextToken(v string) *ListSubscriptionDefinitionsInput {
15108	s.NextToken = &v
15109	return s
15110}
15111
15112type ListSubscriptionDefinitionsOutput struct {
15113	_ struct{} `type:"structure"`
15114
15115	Definitions []*DefinitionInformation `type:"list"`
15116
15117	NextToken *string `type:"string"`
15118}
15119
15120// String returns the string representation
15121func (s ListSubscriptionDefinitionsOutput) String() string {
15122	return awsutil.Prettify(s)
15123}
15124
15125// GoString returns the string representation
15126func (s ListSubscriptionDefinitionsOutput) GoString() string {
15127	return s.String()
15128}
15129
15130// SetDefinitions sets the Definitions field's value.
15131func (s *ListSubscriptionDefinitionsOutput) SetDefinitions(v []*DefinitionInformation) *ListSubscriptionDefinitionsOutput {
15132	s.Definitions = v
15133	return s
15134}
15135
15136// SetNextToken sets the NextToken field's value.
15137func (s *ListSubscriptionDefinitionsOutput) SetNextToken(v string) *ListSubscriptionDefinitionsOutput {
15138	s.NextToken = &v
15139	return s
15140}
15141
15142type ListTagsForResourceInput struct {
15143	_ struct{} `type:"structure"`
15144
15145	// ResourceArn is a required field
15146	ResourceArn *string `location:"uri" locationName:"resource-arn" type:"string" required:"true"`
15147}
15148
15149// String returns the string representation
15150func (s ListTagsForResourceInput) String() string {
15151	return awsutil.Prettify(s)
15152}
15153
15154// GoString returns the string representation
15155func (s ListTagsForResourceInput) GoString() string {
15156	return s.String()
15157}
15158
15159// Validate inspects the fields of the type to determine if they are valid.
15160func (s *ListTagsForResourceInput) Validate() error {
15161	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
15162	if s.ResourceArn == nil {
15163		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
15164	}
15165	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
15166		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
15167	}
15168
15169	if invalidParams.Len() > 0 {
15170		return invalidParams
15171	}
15172	return nil
15173}
15174
15175// SetResourceArn sets the ResourceArn field's value.
15176func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
15177	s.ResourceArn = &v
15178	return s
15179}
15180
15181type ListTagsForResourceOutput struct {
15182	_ struct{} `type:"structure"`
15183
15184	Tags map[string]*string `type:"map"`
15185}
15186
15187// String returns the string representation
15188func (s ListTagsForResourceOutput) String() string {
15189	return awsutil.Prettify(s)
15190}
15191
15192// GoString returns the string representation
15193func (s ListTagsForResourceOutput) GoString() string {
15194	return s.String()
15195}
15196
15197// SetTags sets the Tags field's value.
15198func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput {
15199	s.Tags = v
15200	return s
15201}
15202
15203// Attributes that define a local device resource.
15204type LocalDeviceResourceData struct {
15205	_ struct{} `type:"structure"`
15206
15207	// Group/owner related settings for local resources.
15208	GroupOwnerSetting *GroupOwnerSetting `type:"structure"`
15209
15210	// The local absolute path of the device resource. The source path for a device
15211	// resource can refer only to a character device or block device under ''/dev''.
15212	SourcePath *string `type:"string"`
15213}
15214
15215// String returns the string representation
15216func (s LocalDeviceResourceData) String() string {
15217	return awsutil.Prettify(s)
15218}
15219
15220// GoString returns the string representation
15221func (s LocalDeviceResourceData) GoString() string {
15222	return s.String()
15223}
15224
15225// SetGroupOwnerSetting sets the GroupOwnerSetting field's value.
15226func (s *LocalDeviceResourceData) SetGroupOwnerSetting(v *GroupOwnerSetting) *LocalDeviceResourceData {
15227	s.GroupOwnerSetting = v
15228	return s
15229}
15230
15231// SetSourcePath sets the SourcePath field's value.
15232func (s *LocalDeviceResourceData) SetSourcePath(v string) *LocalDeviceResourceData {
15233	s.SourcePath = &v
15234	return s
15235}
15236
15237// Attributes that define a local volume resource.
15238type LocalVolumeResourceData struct {
15239	_ struct{} `type:"structure"`
15240
15241	// The absolute local path of the resource inside the Lambda environment.
15242	DestinationPath *string `type:"string"`
15243
15244	// Allows you to configure additional group privileges for the Lambda process.
15245	// This field is optional.
15246	GroupOwnerSetting *GroupOwnerSetting `type:"structure"`
15247
15248	// The local absolute path of the volume resource on the host. The source path
15249	// for a volume resource type cannot start with ''/sys''.
15250	SourcePath *string `type:"string"`
15251}
15252
15253// String returns the string representation
15254func (s LocalVolumeResourceData) String() string {
15255	return awsutil.Prettify(s)
15256}
15257
15258// GoString returns the string representation
15259func (s LocalVolumeResourceData) GoString() string {
15260	return s.String()
15261}
15262
15263// SetDestinationPath sets the DestinationPath field's value.
15264func (s *LocalVolumeResourceData) SetDestinationPath(v string) *LocalVolumeResourceData {
15265	s.DestinationPath = &v
15266	return s
15267}
15268
15269// SetGroupOwnerSetting sets the GroupOwnerSetting field's value.
15270func (s *LocalVolumeResourceData) SetGroupOwnerSetting(v *GroupOwnerSetting) *LocalVolumeResourceData {
15271	s.GroupOwnerSetting = v
15272	return s
15273}
15274
15275// SetSourcePath sets the SourcePath field's value.
15276func (s *LocalVolumeResourceData) SetSourcePath(v string) *LocalVolumeResourceData {
15277	s.SourcePath = &v
15278	return s
15279}
15280
15281// Information about a logger
15282type Logger struct {
15283	_ struct{} `type:"structure"`
15284
15285	// The component that will be subject to logging.
15286	Component *string `type:"string" enum:"LoggerComponent"`
15287
15288	// A descriptive or arbitrary ID for the logger. This value must be unique within
15289	// the logger definition version. Max length is 128 characters with pattern
15290	// ''[a-zA-Z0-9:_-]+''.
15291	Id *string `type:"string"`
15292
15293	// The level of the logs.
15294	Level *string `type:"string" enum:"LoggerLevel"`
15295
15296	// The amount of file space, in KB, to use if the local file system is used
15297	// for logging purposes.
15298	Space *int64 `type:"integer"`
15299
15300	// The type of log output which will be used.
15301	Type *string `type:"string" enum:"LoggerType"`
15302}
15303
15304// String returns the string representation
15305func (s Logger) String() string {
15306	return awsutil.Prettify(s)
15307}
15308
15309// GoString returns the string representation
15310func (s Logger) GoString() string {
15311	return s.String()
15312}
15313
15314// SetComponent sets the Component field's value.
15315func (s *Logger) SetComponent(v string) *Logger {
15316	s.Component = &v
15317	return s
15318}
15319
15320// SetId sets the Id field's value.
15321func (s *Logger) SetId(v string) *Logger {
15322	s.Id = &v
15323	return s
15324}
15325
15326// SetLevel sets the Level field's value.
15327func (s *Logger) SetLevel(v string) *Logger {
15328	s.Level = &v
15329	return s
15330}
15331
15332// SetSpace sets the Space field's value.
15333func (s *Logger) SetSpace(v int64) *Logger {
15334	s.Space = &v
15335	return s
15336}
15337
15338// SetType sets the Type field's value.
15339func (s *Logger) SetType(v string) *Logger {
15340	s.Type = &v
15341	return s
15342}
15343
15344// Information about a logger definition version.
15345type LoggerDefinitionVersion struct {
15346	_ struct{} `type:"structure"`
15347
15348	// A list of loggers.
15349	Loggers []*Logger `type:"list"`
15350}
15351
15352// String returns the string representation
15353func (s LoggerDefinitionVersion) String() string {
15354	return awsutil.Prettify(s)
15355}
15356
15357// GoString returns the string representation
15358func (s LoggerDefinitionVersion) GoString() string {
15359	return s.String()
15360}
15361
15362// SetLoggers sets the Loggers field's value.
15363func (s *LoggerDefinitionVersion) SetLoggers(v []*Logger) *LoggerDefinitionVersion {
15364	s.Loggers = v
15365	return s
15366}
15367
15368// Information about a group reset request.
15369type ResetDeploymentsInput struct {
15370	_ struct{} `type:"structure"`
15371
15372	AmznClientToken *string `location:"header" locationName:"X-Amzn-Client-Token" type:"string"`
15373
15374	// If true, performs a best-effort only core reset.
15375	Force *bool `type:"boolean"`
15376
15377	// GroupId is a required field
15378	GroupId *string `location:"uri" locationName:"GroupId" type:"string" required:"true"`
15379}
15380
15381// String returns the string representation
15382func (s ResetDeploymentsInput) String() string {
15383	return awsutil.Prettify(s)
15384}
15385
15386// GoString returns the string representation
15387func (s ResetDeploymentsInput) GoString() string {
15388	return s.String()
15389}
15390
15391// Validate inspects the fields of the type to determine if they are valid.
15392func (s *ResetDeploymentsInput) Validate() error {
15393	invalidParams := request.ErrInvalidParams{Context: "ResetDeploymentsInput"}
15394	if s.GroupId == nil {
15395		invalidParams.Add(request.NewErrParamRequired("GroupId"))
15396	}
15397	if s.GroupId != nil && len(*s.GroupId) < 1 {
15398		invalidParams.Add(request.NewErrParamMinLen("GroupId", 1))
15399	}
15400
15401	if invalidParams.Len() > 0 {
15402		return invalidParams
15403	}
15404	return nil
15405}
15406
15407// SetAmznClientToken sets the AmznClientToken field's value.
15408func (s *ResetDeploymentsInput) SetAmznClientToken(v string) *ResetDeploymentsInput {
15409	s.AmznClientToken = &v
15410	return s
15411}
15412
15413// SetForce sets the Force field's value.
15414func (s *ResetDeploymentsInput) SetForce(v bool) *ResetDeploymentsInput {
15415	s.Force = &v
15416	return s
15417}
15418
15419// SetGroupId sets the GroupId field's value.
15420func (s *ResetDeploymentsInput) SetGroupId(v string) *ResetDeploymentsInput {
15421	s.GroupId = &v
15422	return s
15423}
15424
15425type ResetDeploymentsOutput struct {
15426	_ struct{} `type:"structure"`
15427
15428	// The ARN of the deployment.
15429	DeploymentArn *string `type:"string"`
15430
15431	// The ID of the deployment.
15432	DeploymentId *string `type:"string"`
15433}
15434
15435// String returns the string representation
15436func (s ResetDeploymentsOutput) String() string {
15437	return awsutil.Prettify(s)
15438}
15439
15440// GoString returns the string representation
15441func (s ResetDeploymentsOutput) GoString() string {
15442	return s.String()
15443}
15444
15445// SetDeploymentArn sets the DeploymentArn field's value.
15446func (s *ResetDeploymentsOutput) SetDeploymentArn(v string) *ResetDeploymentsOutput {
15447	s.DeploymentArn = &v
15448	return s
15449}
15450
15451// SetDeploymentId sets the DeploymentId field's value.
15452func (s *ResetDeploymentsOutput) SetDeploymentId(v string) *ResetDeploymentsOutput {
15453	s.DeploymentId = &v
15454	return s
15455}
15456
15457// Information about a resource.
15458type Resource struct {
15459	_ struct{} `type:"structure"`
15460
15461	// The resource ID, used to refer to a resource in the Lambda function configuration.
15462	// Max length is 128 characters with pattern ''[a-zA-Z0-9:_-]+''. This must
15463	// be unique within a Greengrass group.
15464	Id *string `type:"string"`
15465
15466	// The descriptive resource name, which is displayed on the AWS IoT Greengrass
15467	// console. Max length 128 characters with pattern ''[a-zA-Z0-9:_-]+''. This
15468	// must be unique within a Greengrass group.
15469	Name *string `type:"string"`
15470
15471	// A container of data for all resource types.
15472	ResourceDataContainer *ResourceDataContainer `type:"structure"`
15473}
15474
15475// String returns the string representation
15476func (s Resource) String() string {
15477	return awsutil.Prettify(s)
15478}
15479
15480// GoString returns the string representation
15481func (s Resource) GoString() string {
15482	return s.String()
15483}
15484
15485// SetId sets the Id field's value.
15486func (s *Resource) SetId(v string) *Resource {
15487	s.Id = &v
15488	return s
15489}
15490
15491// SetName sets the Name field's value.
15492func (s *Resource) SetName(v string) *Resource {
15493	s.Name = &v
15494	return s
15495}
15496
15497// SetResourceDataContainer sets the ResourceDataContainer field's value.
15498func (s *Resource) SetResourceDataContainer(v *ResourceDataContainer) *Resource {
15499	s.ResourceDataContainer = v
15500	return s
15501}
15502
15503// A policy used by the function to access a resource.
15504type ResourceAccessPolicy struct {
15505	_ struct{} `type:"structure"`
15506
15507	// The permissions that the Lambda function has to the resource. Can be one
15508	// of ''rw'' (read/write) or ''ro'' (read-only).
15509	Permission *string `type:"string" enum:"Permission"`
15510
15511	// The ID of the resource. (This ID is assigned to the resource when you create
15512	// the resource definiton.)
15513	ResourceId *string `type:"string"`
15514}
15515
15516// String returns the string representation
15517func (s ResourceAccessPolicy) String() string {
15518	return awsutil.Prettify(s)
15519}
15520
15521// GoString returns the string representation
15522func (s ResourceAccessPolicy) GoString() string {
15523	return s.String()
15524}
15525
15526// SetPermission sets the Permission field's value.
15527func (s *ResourceAccessPolicy) SetPermission(v string) *ResourceAccessPolicy {
15528	s.Permission = &v
15529	return s
15530}
15531
15532// SetResourceId sets the ResourceId field's value.
15533func (s *ResourceAccessPolicy) SetResourceId(v string) *ResourceAccessPolicy {
15534	s.ResourceId = &v
15535	return s
15536}
15537
15538// A container for resource data. The container takes only one of the following
15539// supported resource data types: ''LocalDeviceResourceData'', ''LocalVolumeResourceData'',
15540// ''SageMakerMachineLearningModelResourceData'', ''S3MachineLearningModelResourceData'',
15541// ''SecretsManagerSecretResourceData''.
15542type ResourceDataContainer struct {
15543	_ struct{} `type:"structure"`
15544
15545	// Attributes that define the local device resource.
15546	LocalDeviceResourceData *LocalDeviceResourceData `type:"structure"`
15547
15548	// Attributes that define the local volume resource.
15549	LocalVolumeResourceData *LocalVolumeResourceData `type:"structure"`
15550
15551	// Attributes that define an Amazon S3 machine learning resource.
15552	S3MachineLearningModelResourceData *S3MachineLearningModelResourceData `type:"structure"`
15553
15554	// Attributes that define an Amazon SageMaker machine learning resource.
15555	SageMakerMachineLearningModelResourceData *SageMakerMachineLearningModelResourceData `type:"structure"`
15556
15557	// Attributes that define a secret resource, which references a secret from
15558	// AWS Secrets Manager.
15559	SecretsManagerSecretResourceData *SecretsManagerSecretResourceData `type:"structure"`
15560}
15561
15562// String returns the string representation
15563func (s ResourceDataContainer) String() string {
15564	return awsutil.Prettify(s)
15565}
15566
15567// GoString returns the string representation
15568func (s ResourceDataContainer) GoString() string {
15569	return s.String()
15570}
15571
15572// SetLocalDeviceResourceData sets the LocalDeviceResourceData field's value.
15573func (s *ResourceDataContainer) SetLocalDeviceResourceData(v *LocalDeviceResourceData) *ResourceDataContainer {
15574	s.LocalDeviceResourceData = v
15575	return s
15576}
15577
15578// SetLocalVolumeResourceData sets the LocalVolumeResourceData field's value.
15579func (s *ResourceDataContainer) SetLocalVolumeResourceData(v *LocalVolumeResourceData) *ResourceDataContainer {
15580	s.LocalVolumeResourceData = v
15581	return s
15582}
15583
15584// SetS3MachineLearningModelResourceData sets the S3MachineLearningModelResourceData field's value.
15585func (s *ResourceDataContainer) SetS3MachineLearningModelResourceData(v *S3MachineLearningModelResourceData) *ResourceDataContainer {
15586	s.S3MachineLearningModelResourceData = v
15587	return s
15588}
15589
15590// SetSageMakerMachineLearningModelResourceData sets the SageMakerMachineLearningModelResourceData field's value.
15591func (s *ResourceDataContainer) SetSageMakerMachineLearningModelResourceData(v *SageMakerMachineLearningModelResourceData) *ResourceDataContainer {
15592	s.SageMakerMachineLearningModelResourceData = v
15593	return s
15594}
15595
15596// SetSecretsManagerSecretResourceData sets the SecretsManagerSecretResourceData field's value.
15597func (s *ResourceDataContainer) SetSecretsManagerSecretResourceData(v *SecretsManagerSecretResourceData) *ResourceDataContainer {
15598	s.SecretsManagerSecretResourceData = v
15599	return s
15600}
15601
15602// Information about a resource definition version.
15603type ResourceDefinitionVersion struct {
15604	_ struct{} `type:"structure"`
15605
15606	// A list of resources.
15607	Resources []*Resource `type:"list"`
15608}
15609
15610// String returns the string representation
15611func (s ResourceDefinitionVersion) String() string {
15612	return awsutil.Prettify(s)
15613}
15614
15615// GoString returns the string representation
15616func (s ResourceDefinitionVersion) GoString() string {
15617	return s.String()
15618}
15619
15620// SetResources sets the Resources field's value.
15621func (s *ResourceDefinitionVersion) SetResources(v []*Resource) *ResourceDefinitionVersion {
15622	s.Resources = v
15623	return s
15624}
15625
15626// Attributes that define an Amazon S3 machine learning resource.
15627type S3MachineLearningModelResourceData struct {
15628	_ struct{} `type:"structure"`
15629
15630	// The absolute local path of the resource inside the Lambda environment.
15631	DestinationPath *string `type:"string"`
15632
15633	// The URI of the source model in an S3 bucket. The model package must be in
15634	// tar.gz or .zip format.
15635	S3Uri *string `type:"string"`
15636}
15637
15638// String returns the string representation
15639func (s S3MachineLearningModelResourceData) String() string {
15640	return awsutil.Prettify(s)
15641}
15642
15643// GoString returns the string representation
15644func (s S3MachineLearningModelResourceData) GoString() string {
15645	return s.String()
15646}
15647
15648// SetDestinationPath sets the DestinationPath field's value.
15649func (s *S3MachineLearningModelResourceData) SetDestinationPath(v string) *S3MachineLearningModelResourceData {
15650	s.DestinationPath = &v
15651	return s
15652}
15653
15654// SetS3Uri sets the S3Uri field's value.
15655func (s *S3MachineLearningModelResourceData) SetS3Uri(v string) *S3MachineLearningModelResourceData {
15656	s.S3Uri = &v
15657	return s
15658}
15659
15660// Attributes that define an Amazon SageMaker machine learning resource.
15661type SageMakerMachineLearningModelResourceData struct {
15662	_ struct{} `type:"structure"`
15663
15664	// The absolute local path of the resource inside the Lambda environment.
15665	DestinationPath *string `type:"string"`
15666
15667	// The ARN of the Amazon SageMaker training job that represents the source model.
15668	SageMakerJobArn *string `type:"string"`
15669}
15670
15671// String returns the string representation
15672func (s SageMakerMachineLearningModelResourceData) String() string {
15673	return awsutil.Prettify(s)
15674}
15675
15676// GoString returns the string representation
15677func (s SageMakerMachineLearningModelResourceData) GoString() string {
15678	return s.String()
15679}
15680
15681// SetDestinationPath sets the DestinationPath field's value.
15682func (s *SageMakerMachineLearningModelResourceData) SetDestinationPath(v string) *SageMakerMachineLearningModelResourceData {
15683	s.DestinationPath = &v
15684	return s
15685}
15686
15687// SetSageMakerJobArn sets the SageMakerJobArn field's value.
15688func (s *SageMakerMachineLearningModelResourceData) SetSageMakerJobArn(v string) *SageMakerMachineLearningModelResourceData {
15689	s.SageMakerJobArn = &v
15690	return s
15691}
15692
15693// Attributes that define a secret resource, which references a secret from
15694// AWS Secrets Manager. AWS IoT Greengrass stores a local, encrypted copy of
15695// the secret on the Greengrass core, where it can be securely accessed by connectors
15696// and Lambda functions.
15697type SecretsManagerSecretResourceData struct {
15698	_ struct{} `type:"structure"`
15699
15700	// The ARN of the Secrets Manager secret to make available on the core. The
15701	// value of the secret's latest version (represented by the ''AWSCURRENT'' staging
15702	// label) is included by default.
15703	ARN *string `type:"string"`
15704
15705	// Optional. The staging labels whose values you want to make available on the
15706	// core, in addition to ''AWSCURRENT''.
15707	AdditionalStagingLabelsToDownload []*string `type:"list"`
15708}
15709
15710// String returns the string representation
15711func (s SecretsManagerSecretResourceData) String() string {
15712	return awsutil.Prettify(s)
15713}
15714
15715// GoString returns the string representation
15716func (s SecretsManagerSecretResourceData) GoString() string {
15717	return s.String()
15718}
15719
15720// SetARN sets the ARN field's value.
15721func (s *SecretsManagerSecretResourceData) SetARN(v string) *SecretsManagerSecretResourceData {
15722	s.ARN = &v
15723	return s
15724}
15725
15726// SetAdditionalStagingLabelsToDownload sets the AdditionalStagingLabelsToDownload field's value.
15727func (s *SecretsManagerSecretResourceData) SetAdditionalStagingLabelsToDownload(v []*string) *SecretsManagerSecretResourceData {
15728	s.AdditionalStagingLabelsToDownload = v
15729	return s
15730}
15731
15732// Information about a bulk deployment. You cannot start a new bulk deployment
15733// while another one is still running or in a non-terminal state.
15734type StartBulkDeploymentInput struct {
15735	_ struct{} `type:"structure"`
15736
15737	AmznClientToken *string `location:"header" locationName:"X-Amzn-Client-Token" type:"string"`
15738
15739	// The ARN of the execution role to associate with the bulk deployment operation.
15740	// This IAM role must allow the ''greengrass:CreateDeployment'' action for all
15741	// group versions that are listed in the input file. This IAM role must have
15742	// access to the S3 bucket containing the input file.
15743	ExecutionRoleArn *string `type:"string"`
15744
15745	// The URI of the input file contained in the S3 bucket. The execution role
15746	// must have ''getObject'' permissions on this bucket to access the input file.
15747	// The input file is a JSON-serialized, line delimited file with UTF-8 encoding
15748	// that provides a list of group and version IDs and the deployment type. This
15749	// file must be less than 100 MB. Currently, AWS IoT Greengrass supports only
15750	// ''NewDeployment'' deployment types.
15751	InputFileUri *string `type:"string"`
15752
15753	Tags map[string]*string `locationName:"tags" type:"map"`
15754}
15755
15756// String returns the string representation
15757func (s StartBulkDeploymentInput) String() string {
15758	return awsutil.Prettify(s)
15759}
15760
15761// GoString returns the string representation
15762func (s StartBulkDeploymentInput) GoString() string {
15763	return s.String()
15764}
15765
15766// SetAmznClientToken sets the AmznClientToken field's value.
15767func (s *StartBulkDeploymentInput) SetAmznClientToken(v string) *StartBulkDeploymentInput {
15768	s.AmznClientToken = &v
15769	return s
15770}
15771
15772// SetExecutionRoleArn sets the ExecutionRoleArn field's value.
15773func (s *StartBulkDeploymentInput) SetExecutionRoleArn(v string) *StartBulkDeploymentInput {
15774	s.ExecutionRoleArn = &v
15775	return s
15776}
15777
15778// SetInputFileUri sets the InputFileUri field's value.
15779func (s *StartBulkDeploymentInput) SetInputFileUri(v string) *StartBulkDeploymentInput {
15780	s.InputFileUri = &v
15781	return s
15782}
15783
15784// SetTags sets the Tags field's value.
15785func (s *StartBulkDeploymentInput) SetTags(v map[string]*string) *StartBulkDeploymentInput {
15786	s.Tags = v
15787	return s
15788}
15789
15790type StartBulkDeploymentOutput struct {
15791	_ struct{} `type:"structure"`
15792
15793	// The ARN of the bulk deployment.
15794	BulkDeploymentArn *string `type:"string"`
15795
15796	// The ID of the bulk deployment.
15797	BulkDeploymentId *string `type:"string"`
15798}
15799
15800// String returns the string representation
15801func (s StartBulkDeploymentOutput) String() string {
15802	return awsutil.Prettify(s)
15803}
15804
15805// GoString returns the string representation
15806func (s StartBulkDeploymentOutput) GoString() string {
15807	return s.String()
15808}
15809
15810// SetBulkDeploymentArn sets the BulkDeploymentArn field's value.
15811func (s *StartBulkDeploymentOutput) SetBulkDeploymentArn(v string) *StartBulkDeploymentOutput {
15812	s.BulkDeploymentArn = &v
15813	return s
15814}
15815
15816// SetBulkDeploymentId sets the BulkDeploymentId field's value.
15817func (s *StartBulkDeploymentOutput) SetBulkDeploymentId(v string) *StartBulkDeploymentOutput {
15818	s.BulkDeploymentId = &v
15819	return s
15820}
15821
15822type StopBulkDeploymentInput struct {
15823	_ struct{} `type:"structure"`
15824
15825	// BulkDeploymentId is a required field
15826	BulkDeploymentId *string `location:"uri" locationName:"BulkDeploymentId" type:"string" required:"true"`
15827}
15828
15829// String returns the string representation
15830func (s StopBulkDeploymentInput) String() string {
15831	return awsutil.Prettify(s)
15832}
15833
15834// GoString returns the string representation
15835func (s StopBulkDeploymentInput) GoString() string {
15836	return s.String()
15837}
15838
15839// Validate inspects the fields of the type to determine if they are valid.
15840func (s *StopBulkDeploymentInput) Validate() error {
15841	invalidParams := request.ErrInvalidParams{Context: "StopBulkDeploymentInput"}
15842	if s.BulkDeploymentId == nil {
15843		invalidParams.Add(request.NewErrParamRequired("BulkDeploymentId"))
15844	}
15845	if s.BulkDeploymentId != nil && len(*s.BulkDeploymentId) < 1 {
15846		invalidParams.Add(request.NewErrParamMinLen("BulkDeploymentId", 1))
15847	}
15848
15849	if invalidParams.Len() > 0 {
15850		return invalidParams
15851	}
15852	return nil
15853}
15854
15855// SetBulkDeploymentId sets the BulkDeploymentId field's value.
15856func (s *StopBulkDeploymentInput) SetBulkDeploymentId(v string) *StopBulkDeploymentInput {
15857	s.BulkDeploymentId = &v
15858	return s
15859}
15860
15861type StopBulkDeploymentOutput struct {
15862	_ struct{} `type:"structure"`
15863}
15864
15865// String returns the string representation
15866func (s StopBulkDeploymentOutput) String() string {
15867	return awsutil.Prettify(s)
15868}
15869
15870// GoString returns the string representation
15871func (s StopBulkDeploymentOutput) GoString() string {
15872	return s.String()
15873}
15874
15875// Information about a subscription.
15876type Subscription struct {
15877	_ struct{} `type:"structure"`
15878
15879	// A descriptive or arbitrary ID for the subscription. This value must be unique
15880	// within the subscription definition version. Max length is 128 characters
15881	// with pattern ''[a-zA-Z0-9:_-]+''.
15882	Id *string `type:"string"`
15883
15884	// The source of the subscription. Can be a thing ARN, a Lambda function ARN,
15885	// a connector ARN, 'cloud' (which represents the AWS IoT cloud), or 'GGShadowService'.
15886	Source *string `type:"string"`
15887
15888	// The MQTT topic used to route the message.
15889	Subject *string `type:"string"`
15890
15891	// Where the message is sent to. Can be a thing ARN, a Lambda function ARN,
15892	// a connector ARN, 'cloud' (which represents the AWS IoT cloud), or 'GGShadowService'.
15893	Target *string `type:"string"`
15894}
15895
15896// String returns the string representation
15897func (s Subscription) String() string {
15898	return awsutil.Prettify(s)
15899}
15900
15901// GoString returns the string representation
15902func (s Subscription) GoString() string {
15903	return s.String()
15904}
15905
15906// SetId sets the Id field's value.
15907func (s *Subscription) SetId(v string) *Subscription {
15908	s.Id = &v
15909	return s
15910}
15911
15912// SetSource sets the Source field's value.
15913func (s *Subscription) SetSource(v string) *Subscription {
15914	s.Source = &v
15915	return s
15916}
15917
15918// SetSubject sets the Subject field's value.
15919func (s *Subscription) SetSubject(v string) *Subscription {
15920	s.Subject = &v
15921	return s
15922}
15923
15924// SetTarget sets the Target field's value.
15925func (s *Subscription) SetTarget(v string) *Subscription {
15926	s.Target = &v
15927	return s
15928}
15929
15930// Information about a subscription definition version.
15931type SubscriptionDefinitionVersion struct {
15932	_ struct{} `type:"structure"`
15933
15934	// A list of subscriptions.
15935	Subscriptions []*Subscription `type:"list"`
15936}
15937
15938// String returns the string representation
15939func (s SubscriptionDefinitionVersion) String() string {
15940	return awsutil.Prettify(s)
15941}
15942
15943// GoString returns the string representation
15944func (s SubscriptionDefinitionVersion) GoString() string {
15945	return s.String()
15946}
15947
15948// SetSubscriptions sets the Subscriptions field's value.
15949func (s *SubscriptionDefinitionVersion) SetSubscriptions(v []*Subscription) *SubscriptionDefinitionVersion {
15950	s.Subscriptions = v
15951	return s
15952}
15953
15954type TagResourceInput struct {
15955	_ struct{} `type:"structure"`
15956
15957	// ResourceArn is a required field
15958	ResourceArn *string `location:"uri" locationName:"resource-arn" type:"string" required:"true"`
15959
15960	// Tags is a required field
15961	Tags map[string]*string `locationName:"tags" type:"map" required:"true"`
15962}
15963
15964// String returns the string representation
15965func (s TagResourceInput) String() string {
15966	return awsutil.Prettify(s)
15967}
15968
15969// GoString returns the string representation
15970func (s TagResourceInput) GoString() string {
15971	return s.String()
15972}
15973
15974// Validate inspects the fields of the type to determine if they are valid.
15975func (s *TagResourceInput) Validate() error {
15976	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
15977	if s.ResourceArn == nil {
15978		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
15979	}
15980	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
15981		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
15982	}
15983	if s.Tags == nil {
15984		invalidParams.Add(request.NewErrParamRequired("Tags"))
15985	}
15986
15987	if invalidParams.Len() > 0 {
15988		return invalidParams
15989	}
15990	return nil
15991}
15992
15993// SetResourceArn sets the ResourceArn field's value.
15994func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
15995	s.ResourceArn = &v
15996	return s
15997}
15998
15999// SetTags sets the Tags field's value.
16000func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput {
16001	s.Tags = v
16002	return s
16003}
16004
16005type TagResourceOutput struct {
16006	_ struct{} `type:"structure"`
16007}
16008
16009// String returns the string representation
16010func (s TagResourceOutput) String() string {
16011	return awsutil.Prettify(s)
16012}
16013
16014// GoString returns the string representation
16015func (s TagResourceOutput) GoString() string {
16016	return s.String()
16017}
16018
16019type UntagResourceInput struct {
16020	_ struct{} `type:"structure"`
16021
16022	// ResourceArn is a required field
16023	ResourceArn *string `location:"uri" locationName:"resource-arn" type:"string" required:"true"`
16024
16025	// TagKeys is a required field
16026	TagKeys []*string `location:"querystring" locationName:"tagKeys" type:"list" required:"true"`
16027}
16028
16029// String returns the string representation
16030func (s UntagResourceInput) String() string {
16031	return awsutil.Prettify(s)
16032}
16033
16034// GoString returns the string representation
16035func (s UntagResourceInput) GoString() string {
16036	return s.String()
16037}
16038
16039// Validate inspects the fields of the type to determine if they are valid.
16040func (s *UntagResourceInput) Validate() error {
16041	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
16042	if s.ResourceArn == nil {
16043		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
16044	}
16045	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
16046		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
16047	}
16048	if s.TagKeys == nil {
16049		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
16050	}
16051
16052	if invalidParams.Len() > 0 {
16053		return invalidParams
16054	}
16055	return nil
16056}
16057
16058// SetResourceArn sets the ResourceArn field's value.
16059func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
16060	s.ResourceArn = &v
16061	return s
16062}
16063
16064// SetTagKeys sets the TagKeys field's value.
16065func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
16066	s.TagKeys = v
16067	return s
16068}
16069
16070type UntagResourceOutput struct {
16071	_ struct{} `type:"structure"`
16072}
16073
16074// String returns the string representation
16075func (s UntagResourceOutput) String() string {
16076	return awsutil.Prettify(s)
16077}
16078
16079// GoString returns the string representation
16080func (s UntagResourceOutput) GoString() string {
16081	return s.String()
16082}
16083
16084// Information required to update a Greengrass core's connectivity.
16085type UpdateConnectivityInfoInput struct {
16086	_ struct{} `type:"structure"`
16087
16088	// A list of connectivity info.
16089	ConnectivityInfo []*ConnectivityInfo `type:"list"`
16090
16091	// ThingName is a required field
16092	ThingName *string `location:"uri" locationName:"ThingName" type:"string" required:"true"`
16093}
16094
16095// String returns the string representation
16096func (s UpdateConnectivityInfoInput) String() string {
16097	return awsutil.Prettify(s)
16098}
16099
16100// GoString returns the string representation
16101func (s UpdateConnectivityInfoInput) GoString() string {
16102	return s.String()
16103}
16104
16105// Validate inspects the fields of the type to determine if they are valid.
16106func (s *UpdateConnectivityInfoInput) Validate() error {
16107	invalidParams := request.ErrInvalidParams{Context: "UpdateConnectivityInfoInput"}
16108	if s.ThingName == nil {
16109		invalidParams.Add(request.NewErrParamRequired("ThingName"))
16110	}
16111	if s.ThingName != nil && len(*s.ThingName) < 1 {
16112		invalidParams.Add(request.NewErrParamMinLen("ThingName", 1))
16113	}
16114
16115	if invalidParams.Len() > 0 {
16116		return invalidParams
16117	}
16118	return nil
16119}
16120
16121// SetConnectivityInfo sets the ConnectivityInfo field's value.
16122func (s *UpdateConnectivityInfoInput) SetConnectivityInfo(v []*ConnectivityInfo) *UpdateConnectivityInfoInput {
16123	s.ConnectivityInfo = v
16124	return s
16125}
16126
16127// SetThingName sets the ThingName field's value.
16128func (s *UpdateConnectivityInfoInput) SetThingName(v string) *UpdateConnectivityInfoInput {
16129	s.ThingName = &v
16130	return s
16131}
16132
16133type UpdateConnectivityInfoOutput struct {
16134	_ struct{} `type:"structure"`
16135
16136	// A message about the connectivity info update request.
16137	Message *string `locationName:"message" type:"string"`
16138
16139	// The new version of the connectivity info.
16140	Version *string `type:"string"`
16141}
16142
16143// String returns the string representation
16144func (s UpdateConnectivityInfoOutput) String() string {
16145	return awsutil.Prettify(s)
16146}
16147
16148// GoString returns the string representation
16149func (s UpdateConnectivityInfoOutput) GoString() string {
16150	return s.String()
16151}
16152
16153// SetMessage sets the Message field's value.
16154func (s *UpdateConnectivityInfoOutput) SetMessage(v string) *UpdateConnectivityInfoOutput {
16155	s.Message = &v
16156	return s
16157}
16158
16159// SetVersion sets the Version field's value.
16160func (s *UpdateConnectivityInfoOutput) SetVersion(v string) *UpdateConnectivityInfoOutput {
16161	s.Version = &v
16162	return s
16163}
16164
16165type UpdateConnectorDefinitionInput struct {
16166	_ struct{} `type:"structure"`
16167
16168	// ConnectorDefinitionId is a required field
16169	ConnectorDefinitionId *string `location:"uri" locationName:"ConnectorDefinitionId" type:"string" required:"true"`
16170
16171	Name *string `type:"string"`
16172}
16173
16174// String returns the string representation
16175func (s UpdateConnectorDefinitionInput) String() string {
16176	return awsutil.Prettify(s)
16177}
16178
16179// GoString returns the string representation
16180func (s UpdateConnectorDefinitionInput) GoString() string {
16181	return s.String()
16182}
16183
16184// Validate inspects the fields of the type to determine if they are valid.
16185func (s *UpdateConnectorDefinitionInput) Validate() error {
16186	invalidParams := request.ErrInvalidParams{Context: "UpdateConnectorDefinitionInput"}
16187	if s.ConnectorDefinitionId == nil {
16188		invalidParams.Add(request.NewErrParamRequired("ConnectorDefinitionId"))
16189	}
16190	if s.ConnectorDefinitionId != nil && len(*s.ConnectorDefinitionId) < 1 {
16191		invalidParams.Add(request.NewErrParamMinLen("ConnectorDefinitionId", 1))
16192	}
16193
16194	if invalidParams.Len() > 0 {
16195		return invalidParams
16196	}
16197	return nil
16198}
16199
16200// SetConnectorDefinitionId sets the ConnectorDefinitionId field's value.
16201func (s *UpdateConnectorDefinitionInput) SetConnectorDefinitionId(v string) *UpdateConnectorDefinitionInput {
16202	s.ConnectorDefinitionId = &v
16203	return s
16204}
16205
16206// SetName sets the Name field's value.
16207func (s *UpdateConnectorDefinitionInput) SetName(v string) *UpdateConnectorDefinitionInput {
16208	s.Name = &v
16209	return s
16210}
16211
16212type UpdateConnectorDefinitionOutput struct {
16213	_ struct{} `type:"structure"`
16214}
16215
16216// String returns the string representation
16217func (s UpdateConnectorDefinitionOutput) String() string {
16218	return awsutil.Prettify(s)
16219}
16220
16221// GoString returns the string representation
16222func (s UpdateConnectorDefinitionOutput) GoString() string {
16223	return s.String()
16224}
16225
16226type UpdateCoreDefinitionInput struct {
16227	_ struct{} `type:"structure"`
16228
16229	// CoreDefinitionId is a required field
16230	CoreDefinitionId *string `location:"uri" locationName:"CoreDefinitionId" type:"string" required:"true"`
16231
16232	Name *string `type:"string"`
16233}
16234
16235// String returns the string representation
16236func (s UpdateCoreDefinitionInput) String() string {
16237	return awsutil.Prettify(s)
16238}
16239
16240// GoString returns the string representation
16241func (s UpdateCoreDefinitionInput) GoString() string {
16242	return s.String()
16243}
16244
16245// Validate inspects the fields of the type to determine if they are valid.
16246func (s *UpdateCoreDefinitionInput) Validate() error {
16247	invalidParams := request.ErrInvalidParams{Context: "UpdateCoreDefinitionInput"}
16248	if s.CoreDefinitionId == nil {
16249		invalidParams.Add(request.NewErrParamRequired("CoreDefinitionId"))
16250	}
16251	if s.CoreDefinitionId != nil && len(*s.CoreDefinitionId) < 1 {
16252		invalidParams.Add(request.NewErrParamMinLen("CoreDefinitionId", 1))
16253	}
16254
16255	if invalidParams.Len() > 0 {
16256		return invalidParams
16257	}
16258	return nil
16259}
16260
16261// SetCoreDefinitionId sets the CoreDefinitionId field's value.
16262func (s *UpdateCoreDefinitionInput) SetCoreDefinitionId(v string) *UpdateCoreDefinitionInput {
16263	s.CoreDefinitionId = &v
16264	return s
16265}
16266
16267// SetName sets the Name field's value.
16268func (s *UpdateCoreDefinitionInput) SetName(v string) *UpdateCoreDefinitionInput {
16269	s.Name = &v
16270	return s
16271}
16272
16273type UpdateCoreDefinitionOutput struct {
16274	_ struct{} `type:"structure"`
16275}
16276
16277// String returns the string representation
16278func (s UpdateCoreDefinitionOutput) String() string {
16279	return awsutil.Prettify(s)
16280}
16281
16282// GoString returns the string representation
16283func (s UpdateCoreDefinitionOutput) GoString() string {
16284	return s.String()
16285}
16286
16287type UpdateDeviceDefinitionInput struct {
16288	_ struct{} `type:"structure"`
16289
16290	// DeviceDefinitionId is a required field
16291	DeviceDefinitionId *string `location:"uri" locationName:"DeviceDefinitionId" type:"string" required:"true"`
16292
16293	Name *string `type:"string"`
16294}
16295
16296// String returns the string representation
16297func (s UpdateDeviceDefinitionInput) String() string {
16298	return awsutil.Prettify(s)
16299}
16300
16301// GoString returns the string representation
16302func (s UpdateDeviceDefinitionInput) GoString() string {
16303	return s.String()
16304}
16305
16306// Validate inspects the fields of the type to determine if they are valid.
16307func (s *UpdateDeviceDefinitionInput) Validate() error {
16308	invalidParams := request.ErrInvalidParams{Context: "UpdateDeviceDefinitionInput"}
16309	if s.DeviceDefinitionId == nil {
16310		invalidParams.Add(request.NewErrParamRequired("DeviceDefinitionId"))
16311	}
16312	if s.DeviceDefinitionId != nil && len(*s.DeviceDefinitionId) < 1 {
16313		invalidParams.Add(request.NewErrParamMinLen("DeviceDefinitionId", 1))
16314	}
16315
16316	if invalidParams.Len() > 0 {
16317		return invalidParams
16318	}
16319	return nil
16320}
16321
16322// SetDeviceDefinitionId sets the DeviceDefinitionId field's value.
16323func (s *UpdateDeviceDefinitionInput) SetDeviceDefinitionId(v string) *UpdateDeviceDefinitionInput {
16324	s.DeviceDefinitionId = &v
16325	return s
16326}
16327
16328// SetName sets the Name field's value.
16329func (s *UpdateDeviceDefinitionInput) SetName(v string) *UpdateDeviceDefinitionInput {
16330	s.Name = &v
16331	return s
16332}
16333
16334type UpdateDeviceDefinitionOutput struct {
16335	_ struct{} `type:"structure"`
16336}
16337
16338// String returns the string representation
16339func (s UpdateDeviceDefinitionOutput) String() string {
16340	return awsutil.Prettify(s)
16341}
16342
16343// GoString returns the string representation
16344func (s UpdateDeviceDefinitionOutput) GoString() string {
16345	return s.String()
16346}
16347
16348type UpdateFunctionDefinitionInput struct {
16349	_ struct{} `type:"structure"`
16350
16351	// FunctionDefinitionId is a required field
16352	FunctionDefinitionId *string `location:"uri" locationName:"FunctionDefinitionId" type:"string" required:"true"`
16353
16354	Name *string `type:"string"`
16355}
16356
16357// String returns the string representation
16358func (s UpdateFunctionDefinitionInput) String() string {
16359	return awsutil.Prettify(s)
16360}
16361
16362// GoString returns the string representation
16363func (s UpdateFunctionDefinitionInput) GoString() string {
16364	return s.String()
16365}
16366
16367// Validate inspects the fields of the type to determine if they are valid.
16368func (s *UpdateFunctionDefinitionInput) Validate() error {
16369	invalidParams := request.ErrInvalidParams{Context: "UpdateFunctionDefinitionInput"}
16370	if s.FunctionDefinitionId == nil {
16371		invalidParams.Add(request.NewErrParamRequired("FunctionDefinitionId"))
16372	}
16373	if s.FunctionDefinitionId != nil && len(*s.FunctionDefinitionId) < 1 {
16374		invalidParams.Add(request.NewErrParamMinLen("FunctionDefinitionId", 1))
16375	}
16376
16377	if invalidParams.Len() > 0 {
16378		return invalidParams
16379	}
16380	return nil
16381}
16382
16383// SetFunctionDefinitionId sets the FunctionDefinitionId field's value.
16384func (s *UpdateFunctionDefinitionInput) SetFunctionDefinitionId(v string) *UpdateFunctionDefinitionInput {
16385	s.FunctionDefinitionId = &v
16386	return s
16387}
16388
16389// SetName sets the Name field's value.
16390func (s *UpdateFunctionDefinitionInput) SetName(v string) *UpdateFunctionDefinitionInput {
16391	s.Name = &v
16392	return s
16393}
16394
16395type UpdateFunctionDefinitionOutput struct {
16396	_ struct{} `type:"structure"`
16397}
16398
16399// String returns the string representation
16400func (s UpdateFunctionDefinitionOutput) String() string {
16401	return awsutil.Prettify(s)
16402}
16403
16404// GoString returns the string representation
16405func (s UpdateFunctionDefinitionOutput) GoString() string {
16406	return s.String()
16407}
16408
16409type UpdateGroupCertificateConfigurationInput struct {
16410	_ struct{} `type:"structure"`
16411
16412	// The amount of time remaining before the certificate expires, in milliseconds.
16413	CertificateExpiryInMilliseconds *string `type:"string"`
16414
16415	// GroupId is a required field
16416	GroupId *string `location:"uri" locationName:"GroupId" type:"string" required:"true"`
16417}
16418
16419// String returns the string representation
16420func (s UpdateGroupCertificateConfigurationInput) String() string {
16421	return awsutil.Prettify(s)
16422}
16423
16424// GoString returns the string representation
16425func (s UpdateGroupCertificateConfigurationInput) GoString() string {
16426	return s.String()
16427}
16428
16429// Validate inspects the fields of the type to determine if they are valid.
16430func (s *UpdateGroupCertificateConfigurationInput) Validate() error {
16431	invalidParams := request.ErrInvalidParams{Context: "UpdateGroupCertificateConfigurationInput"}
16432	if s.GroupId == nil {
16433		invalidParams.Add(request.NewErrParamRequired("GroupId"))
16434	}
16435	if s.GroupId != nil && len(*s.GroupId) < 1 {
16436		invalidParams.Add(request.NewErrParamMinLen("GroupId", 1))
16437	}
16438
16439	if invalidParams.Len() > 0 {
16440		return invalidParams
16441	}
16442	return nil
16443}
16444
16445// SetCertificateExpiryInMilliseconds sets the CertificateExpiryInMilliseconds field's value.
16446func (s *UpdateGroupCertificateConfigurationInput) SetCertificateExpiryInMilliseconds(v string) *UpdateGroupCertificateConfigurationInput {
16447	s.CertificateExpiryInMilliseconds = &v
16448	return s
16449}
16450
16451// SetGroupId sets the GroupId field's value.
16452func (s *UpdateGroupCertificateConfigurationInput) SetGroupId(v string) *UpdateGroupCertificateConfigurationInput {
16453	s.GroupId = &v
16454	return s
16455}
16456
16457type UpdateGroupCertificateConfigurationOutput struct {
16458	_ struct{} `type:"structure"`
16459
16460	CertificateAuthorityExpiryInMilliseconds *string `type:"string"`
16461
16462	CertificateExpiryInMilliseconds *string `type:"string"`
16463
16464	GroupId *string `type:"string"`
16465}
16466
16467// String returns the string representation
16468func (s UpdateGroupCertificateConfigurationOutput) String() string {
16469	return awsutil.Prettify(s)
16470}
16471
16472// GoString returns the string representation
16473func (s UpdateGroupCertificateConfigurationOutput) GoString() string {
16474	return s.String()
16475}
16476
16477// SetCertificateAuthorityExpiryInMilliseconds sets the CertificateAuthorityExpiryInMilliseconds field's value.
16478func (s *UpdateGroupCertificateConfigurationOutput) SetCertificateAuthorityExpiryInMilliseconds(v string) *UpdateGroupCertificateConfigurationOutput {
16479	s.CertificateAuthorityExpiryInMilliseconds = &v
16480	return s
16481}
16482
16483// SetCertificateExpiryInMilliseconds sets the CertificateExpiryInMilliseconds field's value.
16484func (s *UpdateGroupCertificateConfigurationOutput) SetCertificateExpiryInMilliseconds(v string) *UpdateGroupCertificateConfigurationOutput {
16485	s.CertificateExpiryInMilliseconds = &v
16486	return s
16487}
16488
16489// SetGroupId sets the GroupId field's value.
16490func (s *UpdateGroupCertificateConfigurationOutput) SetGroupId(v string) *UpdateGroupCertificateConfigurationOutput {
16491	s.GroupId = &v
16492	return s
16493}
16494
16495type UpdateGroupInput struct {
16496	_ struct{} `type:"structure"`
16497
16498	// GroupId is a required field
16499	GroupId *string `location:"uri" locationName:"GroupId" type:"string" required:"true"`
16500
16501	Name *string `type:"string"`
16502}
16503
16504// String returns the string representation
16505func (s UpdateGroupInput) String() string {
16506	return awsutil.Prettify(s)
16507}
16508
16509// GoString returns the string representation
16510func (s UpdateGroupInput) GoString() string {
16511	return s.String()
16512}
16513
16514// Validate inspects the fields of the type to determine if they are valid.
16515func (s *UpdateGroupInput) Validate() error {
16516	invalidParams := request.ErrInvalidParams{Context: "UpdateGroupInput"}
16517	if s.GroupId == nil {
16518		invalidParams.Add(request.NewErrParamRequired("GroupId"))
16519	}
16520	if s.GroupId != nil && len(*s.GroupId) < 1 {
16521		invalidParams.Add(request.NewErrParamMinLen("GroupId", 1))
16522	}
16523
16524	if invalidParams.Len() > 0 {
16525		return invalidParams
16526	}
16527	return nil
16528}
16529
16530// SetGroupId sets the GroupId field's value.
16531func (s *UpdateGroupInput) SetGroupId(v string) *UpdateGroupInput {
16532	s.GroupId = &v
16533	return s
16534}
16535
16536// SetName sets the Name field's value.
16537func (s *UpdateGroupInput) SetName(v string) *UpdateGroupInput {
16538	s.Name = &v
16539	return s
16540}
16541
16542type UpdateGroupOutput struct {
16543	_ struct{} `type:"structure"`
16544}
16545
16546// String returns the string representation
16547func (s UpdateGroupOutput) String() string {
16548	return awsutil.Prettify(s)
16549}
16550
16551// GoString returns the string representation
16552func (s UpdateGroupOutput) GoString() string {
16553	return s.String()
16554}
16555
16556type UpdateLoggerDefinitionInput struct {
16557	_ struct{} `type:"structure"`
16558
16559	// LoggerDefinitionId is a required field
16560	LoggerDefinitionId *string `location:"uri" locationName:"LoggerDefinitionId" type:"string" required:"true"`
16561
16562	Name *string `type:"string"`
16563}
16564
16565// String returns the string representation
16566func (s UpdateLoggerDefinitionInput) String() string {
16567	return awsutil.Prettify(s)
16568}
16569
16570// GoString returns the string representation
16571func (s UpdateLoggerDefinitionInput) GoString() string {
16572	return s.String()
16573}
16574
16575// Validate inspects the fields of the type to determine if they are valid.
16576func (s *UpdateLoggerDefinitionInput) Validate() error {
16577	invalidParams := request.ErrInvalidParams{Context: "UpdateLoggerDefinitionInput"}
16578	if s.LoggerDefinitionId == nil {
16579		invalidParams.Add(request.NewErrParamRequired("LoggerDefinitionId"))
16580	}
16581	if s.LoggerDefinitionId != nil && len(*s.LoggerDefinitionId) < 1 {
16582		invalidParams.Add(request.NewErrParamMinLen("LoggerDefinitionId", 1))
16583	}
16584
16585	if invalidParams.Len() > 0 {
16586		return invalidParams
16587	}
16588	return nil
16589}
16590
16591// SetLoggerDefinitionId sets the LoggerDefinitionId field's value.
16592func (s *UpdateLoggerDefinitionInput) SetLoggerDefinitionId(v string) *UpdateLoggerDefinitionInput {
16593	s.LoggerDefinitionId = &v
16594	return s
16595}
16596
16597// SetName sets the Name field's value.
16598func (s *UpdateLoggerDefinitionInput) SetName(v string) *UpdateLoggerDefinitionInput {
16599	s.Name = &v
16600	return s
16601}
16602
16603type UpdateLoggerDefinitionOutput struct {
16604	_ struct{} `type:"structure"`
16605}
16606
16607// String returns the string representation
16608func (s UpdateLoggerDefinitionOutput) String() string {
16609	return awsutil.Prettify(s)
16610}
16611
16612// GoString returns the string representation
16613func (s UpdateLoggerDefinitionOutput) GoString() string {
16614	return s.String()
16615}
16616
16617type UpdateResourceDefinitionInput struct {
16618	_ struct{} `type:"structure"`
16619
16620	Name *string `type:"string"`
16621
16622	// ResourceDefinitionId is a required field
16623	ResourceDefinitionId *string `location:"uri" locationName:"ResourceDefinitionId" type:"string" required:"true"`
16624}
16625
16626// String returns the string representation
16627func (s UpdateResourceDefinitionInput) String() string {
16628	return awsutil.Prettify(s)
16629}
16630
16631// GoString returns the string representation
16632func (s UpdateResourceDefinitionInput) GoString() string {
16633	return s.String()
16634}
16635
16636// Validate inspects the fields of the type to determine if they are valid.
16637func (s *UpdateResourceDefinitionInput) Validate() error {
16638	invalidParams := request.ErrInvalidParams{Context: "UpdateResourceDefinitionInput"}
16639	if s.ResourceDefinitionId == nil {
16640		invalidParams.Add(request.NewErrParamRequired("ResourceDefinitionId"))
16641	}
16642	if s.ResourceDefinitionId != nil && len(*s.ResourceDefinitionId) < 1 {
16643		invalidParams.Add(request.NewErrParamMinLen("ResourceDefinitionId", 1))
16644	}
16645
16646	if invalidParams.Len() > 0 {
16647		return invalidParams
16648	}
16649	return nil
16650}
16651
16652// SetName sets the Name field's value.
16653func (s *UpdateResourceDefinitionInput) SetName(v string) *UpdateResourceDefinitionInput {
16654	s.Name = &v
16655	return s
16656}
16657
16658// SetResourceDefinitionId sets the ResourceDefinitionId field's value.
16659func (s *UpdateResourceDefinitionInput) SetResourceDefinitionId(v string) *UpdateResourceDefinitionInput {
16660	s.ResourceDefinitionId = &v
16661	return s
16662}
16663
16664type UpdateResourceDefinitionOutput struct {
16665	_ struct{} `type:"structure"`
16666}
16667
16668// String returns the string representation
16669func (s UpdateResourceDefinitionOutput) String() string {
16670	return awsutil.Prettify(s)
16671}
16672
16673// GoString returns the string representation
16674func (s UpdateResourceDefinitionOutput) GoString() string {
16675	return s.String()
16676}
16677
16678type UpdateSubscriptionDefinitionInput struct {
16679	_ struct{} `type:"structure"`
16680
16681	Name *string `type:"string"`
16682
16683	// SubscriptionDefinitionId is a required field
16684	SubscriptionDefinitionId *string `location:"uri" locationName:"SubscriptionDefinitionId" type:"string" required:"true"`
16685}
16686
16687// String returns the string representation
16688func (s UpdateSubscriptionDefinitionInput) String() string {
16689	return awsutil.Prettify(s)
16690}
16691
16692// GoString returns the string representation
16693func (s UpdateSubscriptionDefinitionInput) GoString() string {
16694	return s.String()
16695}
16696
16697// Validate inspects the fields of the type to determine if they are valid.
16698func (s *UpdateSubscriptionDefinitionInput) Validate() error {
16699	invalidParams := request.ErrInvalidParams{Context: "UpdateSubscriptionDefinitionInput"}
16700	if s.SubscriptionDefinitionId == nil {
16701		invalidParams.Add(request.NewErrParamRequired("SubscriptionDefinitionId"))
16702	}
16703	if s.SubscriptionDefinitionId != nil && len(*s.SubscriptionDefinitionId) < 1 {
16704		invalidParams.Add(request.NewErrParamMinLen("SubscriptionDefinitionId", 1))
16705	}
16706
16707	if invalidParams.Len() > 0 {
16708		return invalidParams
16709	}
16710	return nil
16711}
16712
16713// SetName sets the Name field's value.
16714func (s *UpdateSubscriptionDefinitionInput) SetName(v string) *UpdateSubscriptionDefinitionInput {
16715	s.Name = &v
16716	return s
16717}
16718
16719// SetSubscriptionDefinitionId sets the SubscriptionDefinitionId field's value.
16720func (s *UpdateSubscriptionDefinitionInput) SetSubscriptionDefinitionId(v string) *UpdateSubscriptionDefinitionInput {
16721	s.SubscriptionDefinitionId = &v
16722	return s
16723}
16724
16725type UpdateSubscriptionDefinitionOutput struct {
16726	_ struct{} `type:"structure"`
16727}
16728
16729// String returns the string representation
16730func (s UpdateSubscriptionDefinitionOutput) String() string {
16731	return awsutil.Prettify(s)
16732}
16733
16734// GoString returns the string representation
16735func (s UpdateSubscriptionDefinitionOutput) GoString() string {
16736	return s.String()
16737}
16738
16739// Information about a version.
16740type VersionInformation struct {
16741	_ struct{} `type:"structure"`
16742
16743	// The ARN of the version.
16744	Arn *string `type:"string"`
16745
16746	// The time, in milliseconds since the epoch, when the version was created.
16747	CreationTimestamp *string `type:"string"`
16748
16749	// The ID of the version.
16750	Id *string `type:"string"`
16751
16752	// The unique ID of the version.
16753	Version *string `type:"string"`
16754}
16755
16756// String returns the string representation
16757func (s VersionInformation) String() string {
16758	return awsutil.Prettify(s)
16759}
16760
16761// GoString returns the string representation
16762func (s VersionInformation) GoString() string {
16763	return s.String()
16764}
16765
16766// SetArn sets the Arn field's value.
16767func (s *VersionInformation) SetArn(v string) *VersionInformation {
16768	s.Arn = &v
16769	return s
16770}
16771
16772// SetCreationTimestamp sets the CreationTimestamp field's value.
16773func (s *VersionInformation) SetCreationTimestamp(v string) *VersionInformation {
16774	s.CreationTimestamp = &v
16775	return s
16776}
16777
16778// SetId sets the Id field's value.
16779func (s *VersionInformation) SetId(v string) *VersionInformation {
16780	s.Id = &v
16781	return s
16782}
16783
16784// SetVersion sets the Version field's value.
16785func (s *VersionInformation) SetVersion(v string) *VersionInformation {
16786	s.Version = &v
16787	return s
16788}
16789
16790// The current status of the bulk deployment.
16791const (
16792	// BulkDeploymentStatusInitializing is a BulkDeploymentStatus enum value
16793	BulkDeploymentStatusInitializing = "Initializing"
16794
16795	// BulkDeploymentStatusRunning is a BulkDeploymentStatus enum value
16796	BulkDeploymentStatusRunning = "Running"
16797
16798	// BulkDeploymentStatusCompleted is a BulkDeploymentStatus enum value
16799	BulkDeploymentStatusCompleted = "Completed"
16800
16801	// BulkDeploymentStatusStopping is a BulkDeploymentStatus enum value
16802	BulkDeploymentStatusStopping = "Stopping"
16803
16804	// BulkDeploymentStatusStopped is a BulkDeploymentStatus enum value
16805	BulkDeploymentStatusStopped = "Stopped"
16806
16807	// BulkDeploymentStatusFailed is a BulkDeploymentStatus enum value
16808	BulkDeploymentStatusFailed = "Failed"
16809)
16810
16811// The type of deployment. When used for ''CreateDeployment'', only ''NewDeployment''
16812// and ''Redeployment'' are valid.
16813const (
16814	// DeploymentTypeNewDeployment is a DeploymentType enum value
16815	DeploymentTypeNewDeployment = "NewDeployment"
16816
16817	// DeploymentTypeRedeployment is a DeploymentType enum value
16818	DeploymentTypeRedeployment = "Redeployment"
16819
16820	// DeploymentTypeResetDeployment is a DeploymentType enum value
16821	DeploymentTypeResetDeployment = "ResetDeployment"
16822
16823	// DeploymentTypeForceResetDeployment is a DeploymentType enum value
16824	DeploymentTypeForceResetDeployment = "ForceResetDeployment"
16825)
16826
16827const (
16828	// EncodingTypeBinary is a EncodingType enum value
16829	EncodingTypeBinary = "binary"
16830
16831	// EncodingTypeJson is a EncodingType enum value
16832	EncodingTypeJson = "json"
16833)
16834
16835// Specifies whether the Lambda function runs in a Greengrass container (default)
16836// or without containerization. Unless your scenario requires that you run without
16837// containerization, we recommend that you run in a Greengrass container. Omit
16838// this value to run the Lambda function with the default containerization for
16839// the group.
16840const (
16841	// FunctionIsolationModeGreengrassContainer is a FunctionIsolationMode enum value
16842	FunctionIsolationModeGreengrassContainer = "GreengrassContainer"
16843
16844	// FunctionIsolationModeNoContainer is a FunctionIsolationMode enum value
16845	FunctionIsolationModeNoContainer = "NoContainer"
16846)
16847
16848const (
16849	// LoggerComponentGreengrassSystem is a LoggerComponent enum value
16850	LoggerComponentGreengrassSystem = "GreengrassSystem"
16851
16852	// LoggerComponentLambda is a LoggerComponent enum value
16853	LoggerComponentLambda = "Lambda"
16854)
16855
16856const (
16857	// LoggerLevelDebug is a LoggerLevel enum value
16858	LoggerLevelDebug = "DEBUG"
16859
16860	// LoggerLevelInfo is a LoggerLevel enum value
16861	LoggerLevelInfo = "INFO"
16862
16863	// LoggerLevelWarn is a LoggerLevel enum value
16864	LoggerLevelWarn = "WARN"
16865
16866	// LoggerLevelError is a LoggerLevel enum value
16867	LoggerLevelError = "ERROR"
16868
16869	// LoggerLevelFatal is a LoggerLevel enum value
16870	LoggerLevelFatal = "FATAL"
16871)
16872
16873const (
16874	// LoggerTypeFileSystem is a LoggerType enum value
16875	LoggerTypeFileSystem = "FileSystem"
16876
16877	// LoggerTypeAwscloudWatch is a LoggerType enum value
16878	LoggerTypeAwscloudWatch = "AWSCloudWatch"
16879)
16880
16881// The type of permission a function has to access a resource.
16882const (
16883	// PermissionRo is a Permission enum value
16884	PermissionRo = "ro"
16885
16886	// PermissionRw is a Permission enum value
16887	PermissionRw = "rw"
16888)
16889
16890// The piece of software on the Greengrass core that will be updated.
16891const (
16892	// SoftwareToUpdateCore is a SoftwareToUpdate enum value
16893	SoftwareToUpdateCore = "core"
16894
16895	// SoftwareToUpdateOtaAgent is a SoftwareToUpdate enum value
16896	SoftwareToUpdateOtaAgent = "ota_agent"
16897)
16898
16899// The minimum level of log statements that should be logged by the OTA Agent
16900// during an update.
16901const (
16902	// UpdateAgentLogLevelNone is a UpdateAgentLogLevel enum value
16903	UpdateAgentLogLevelNone = "NONE"
16904
16905	// UpdateAgentLogLevelTrace is a UpdateAgentLogLevel enum value
16906	UpdateAgentLogLevelTrace = "TRACE"
16907
16908	// UpdateAgentLogLevelDebug is a UpdateAgentLogLevel enum value
16909	UpdateAgentLogLevelDebug = "DEBUG"
16910
16911	// UpdateAgentLogLevelVerbose is a UpdateAgentLogLevel enum value
16912	UpdateAgentLogLevelVerbose = "VERBOSE"
16913
16914	// UpdateAgentLogLevelInfo is a UpdateAgentLogLevel enum value
16915	UpdateAgentLogLevelInfo = "INFO"
16916
16917	// UpdateAgentLogLevelWarn is a UpdateAgentLogLevel enum value
16918	UpdateAgentLogLevelWarn = "WARN"
16919
16920	// UpdateAgentLogLevelError is a UpdateAgentLogLevel enum value
16921	UpdateAgentLogLevelError = "ERROR"
16922
16923	// UpdateAgentLogLevelFatal is a UpdateAgentLogLevel enum value
16924	UpdateAgentLogLevelFatal = "FATAL"
16925)
16926
16927// The architecture of the cores which are the targets of an update.
16928const (
16929	// UpdateTargetsArchitectureArmv7l is a UpdateTargetsArchitecture enum value
16930	UpdateTargetsArchitectureArmv7l = "armv7l"
16931
16932	// UpdateTargetsArchitectureX8664 is a UpdateTargetsArchitecture enum value
16933	UpdateTargetsArchitectureX8664 = "x86_64"
16934
16935	// UpdateTargetsArchitectureAarch64 is a UpdateTargetsArchitecture enum value
16936	UpdateTargetsArchitectureAarch64 = "aarch64"
16937)
16938
16939// The operating system of the cores which are the targets of an update.
16940const (
16941	// UpdateTargetsOperatingSystemUbuntu is a UpdateTargetsOperatingSystem enum value
16942	UpdateTargetsOperatingSystemUbuntu = "ubuntu"
16943
16944	// UpdateTargetsOperatingSystemRaspbian is a UpdateTargetsOperatingSystem enum value
16945	UpdateTargetsOperatingSystemRaspbian = "raspbian"
16946
16947	// UpdateTargetsOperatingSystemAmazonLinux is a UpdateTargetsOperatingSystem enum value
16948	UpdateTargetsOperatingSystemAmazonLinux = "amazon_linux"
16949)
16950