1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package licensemanager
4
5import (
6	"fmt"
7	"time"
8
9	"github.com/aws/aws-sdk-go/aws"
10	"github.com/aws/aws-sdk-go/aws/awsutil"
11	"github.com/aws/aws-sdk-go/aws/request"
12	"github.com/aws/aws-sdk-go/private/protocol"
13	"github.com/aws/aws-sdk-go/private/protocol/jsonrpc"
14)
15
16const opAcceptGrant = "AcceptGrant"
17
18// AcceptGrantRequest generates a "aws/request.Request" representing the
19// client's request for the AcceptGrant operation. The "output" return
20// value will be populated with the request's response once the request completes
21// successfully.
22//
23// Use "Send" method on the returned Request to send the API call to the service.
24// the "output" return value is not valid until after Send returns without error.
25//
26// See AcceptGrant for more information on using the AcceptGrant
27// API call, and error handling.
28//
29// This method is useful when you want to inject custom logic or configuration
30// into the SDK's request lifecycle. Such as custom headers, or retry logic.
31//
32//
33//    // Example sending a request using the AcceptGrantRequest method.
34//    req, resp := client.AcceptGrantRequest(params)
35//
36//    err := req.Send()
37//    if err == nil { // resp is now filled
38//        fmt.Println(resp)
39//    }
40//
41// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/AcceptGrant
42func (c *LicenseManager) AcceptGrantRequest(input *AcceptGrantInput) (req *request.Request, output *AcceptGrantOutput) {
43	op := &request.Operation{
44		Name:       opAcceptGrant,
45		HTTPMethod: "POST",
46		HTTPPath:   "/",
47	}
48
49	if input == nil {
50		input = &AcceptGrantInput{}
51	}
52
53	output = &AcceptGrantOutput{}
54	req = c.newRequest(op, input, output)
55	return
56}
57
58// AcceptGrant API operation for AWS License Manager.
59//
60// Accepts the specified grant.
61//
62// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
63// with awserr.Error's Code and Message methods to get detailed information about
64// the error.
65//
66// See the AWS API reference guide for AWS License Manager's
67// API operation AcceptGrant for usage and error information.
68//
69// Returned Error Types:
70//   * ValidationException
71//   The provided input is not valid. Try your request again.
72//
73//   * InvalidParameterValueException
74//   One or more parameter values are not valid.
75//
76//   * AuthorizationException
77//   The Amazon Web Services user account does not have permission to perform
78//   the action. Check the IAM policy associated with this account.
79//
80//   * AccessDeniedException
81//   Access to resource denied.
82//
83//   * RateLimitExceededException
84//   Too many requests have been submitted. Try again after a brief wait.
85//
86//   * ResourceLimitExceededException
87//   Your resource limits have been exceeded.
88//
89//   * ServerInternalException
90//   The server experienced an internal error. Try again.
91//
92// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/AcceptGrant
93func (c *LicenseManager) AcceptGrant(input *AcceptGrantInput) (*AcceptGrantOutput, error) {
94	req, out := c.AcceptGrantRequest(input)
95	return out, req.Send()
96}
97
98// AcceptGrantWithContext is the same as AcceptGrant with the addition of
99// the ability to pass a context and additional request options.
100//
101// See AcceptGrant for details on how to use this API operation.
102//
103// The context must be non-nil and will be used for request cancellation. If
104// the context is nil a panic will occur. In the future the SDK may create
105// sub-contexts for http.Requests. See https://golang.org/pkg/context/
106// for more information on using Contexts.
107func (c *LicenseManager) AcceptGrantWithContext(ctx aws.Context, input *AcceptGrantInput, opts ...request.Option) (*AcceptGrantOutput, error) {
108	req, out := c.AcceptGrantRequest(input)
109	req.SetContext(ctx)
110	req.ApplyOptions(opts...)
111	return out, req.Send()
112}
113
114const opCheckInLicense = "CheckInLicense"
115
116// CheckInLicenseRequest generates a "aws/request.Request" representing the
117// client's request for the CheckInLicense operation. The "output" return
118// value will be populated with the request's response once the request completes
119// successfully.
120//
121// Use "Send" method on the returned Request to send the API call to the service.
122// the "output" return value is not valid until after Send returns without error.
123//
124// See CheckInLicense for more information on using the CheckInLicense
125// API call, and error handling.
126//
127// This method is useful when you want to inject custom logic or configuration
128// into the SDK's request lifecycle. Such as custom headers, or retry logic.
129//
130//
131//    // Example sending a request using the CheckInLicenseRequest method.
132//    req, resp := client.CheckInLicenseRequest(params)
133//
134//    err := req.Send()
135//    if err == nil { // resp is now filled
136//        fmt.Println(resp)
137//    }
138//
139// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CheckInLicense
140func (c *LicenseManager) CheckInLicenseRequest(input *CheckInLicenseInput) (req *request.Request, output *CheckInLicenseOutput) {
141	op := &request.Operation{
142		Name:       opCheckInLicense,
143		HTTPMethod: "POST",
144		HTTPPath:   "/",
145	}
146
147	if input == nil {
148		input = &CheckInLicenseInput{}
149	}
150
151	output = &CheckInLicenseOutput{}
152	req = c.newRequest(op, input, output)
153	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
154	return
155}
156
157// CheckInLicense API operation for AWS License Manager.
158//
159// Checks in the specified license. Check in a license when it is no longer
160// in use.
161//
162// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
163// with awserr.Error's Code and Message methods to get detailed information about
164// the error.
165//
166// See the AWS API reference guide for AWS License Manager's
167// API operation CheckInLicense for usage and error information.
168//
169// Returned Error Types:
170//   * ValidationException
171//   The provided input is not valid. Try your request again.
172//
173//   * InvalidParameterValueException
174//   One or more parameter values are not valid.
175//
176//   * ResourceNotFoundException
177//   The resource cannot be found.
178//
179//   * ConflictException
180//   There was a conflict processing the request. Try your request again.
181//
182//   * AuthorizationException
183//   The Amazon Web Services user account does not have permission to perform
184//   the action. Check the IAM policy associated with this account.
185//
186//   * AccessDeniedException
187//   Access to resource denied.
188//
189//   * RateLimitExceededException
190//   Too many requests have been submitted. Try again after a brief wait.
191//
192//   * ServerInternalException
193//   The server experienced an internal error. Try again.
194//
195// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CheckInLicense
196func (c *LicenseManager) CheckInLicense(input *CheckInLicenseInput) (*CheckInLicenseOutput, error) {
197	req, out := c.CheckInLicenseRequest(input)
198	return out, req.Send()
199}
200
201// CheckInLicenseWithContext is the same as CheckInLicense with the addition of
202// the ability to pass a context and additional request options.
203//
204// See CheckInLicense for details on how to use this API operation.
205//
206// The context must be non-nil and will be used for request cancellation. If
207// the context is nil a panic will occur. In the future the SDK may create
208// sub-contexts for http.Requests. See https://golang.org/pkg/context/
209// for more information on using Contexts.
210func (c *LicenseManager) CheckInLicenseWithContext(ctx aws.Context, input *CheckInLicenseInput, opts ...request.Option) (*CheckInLicenseOutput, error) {
211	req, out := c.CheckInLicenseRequest(input)
212	req.SetContext(ctx)
213	req.ApplyOptions(opts...)
214	return out, req.Send()
215}
216
217const opCheckoutBorrowLicense = "CheckoutBorrowLicense"
218
219// CheckoutBorrowLicenseRequest generates a "aws/request.Request" representing the
220// client's request for the CheckoutBorrowLicense operation. The "output" return
221// value will be populated with the request's response once the request completes
222// successfully.
223//
224// Use "Send" method on the returned Request to send the API call to the service.
225// the "output" return value is not valid until after Send returns without error.
226//
227// See CheckoutBorrowLicense for more information on using the CheckoutBorrowLicense
228// API call, and error handling.
229//
230// This method is useful when you want to inject custom logic or configuration
231// into the SDK's request lifecycle. Such as custom headers, or retry logic.
232//
233//
234//    // Example sending a request using the CheckoutBorrowLicenseRequest method.
235//    req, resp := client.CheckoutBorrowLicenseRequest(params)
236//
237//    err := req.Send()
238//    if err == nil { // resp is now filled
239//        fmt.Println(resp)
240//    }
241//
242// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CheckoutBorrowLicense
243func (c *LicenseManager) CheckoutBorrowLicenseRequest(input *CheckoutBorrowLicenseInput) (req *request.Request, output *CheckoutBorrowLicenseOutput) {
244	op := &request.Operation{
245		Name:       opCheckoutBorrowLicense,
246		HTTPMethod: "POST",
247		HTTPPath:   "/",
248	}
249
250	if input == nil {
251		input = &CheckoutBorrowLicenseInput{}
252	}
253
254	output = &CheckoutBorrowLicenseOutput{}
255	req = c.newRequest(op, input, output)
256	return
257}
258
259// CheckoutBorrowLicense API operation for AWS License Manager.
260//
261// Checks out the specified license for offline use.
262//
263// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
264// with awserr.Error's Code and Message methods to get detailed information about
265// the error.
266//
267// See the AWS API reference guide for AWS License Manager's
268// API operation CheckoutBorrowLicense for usage and error information.
269//
270// Returned Error Types:
271//   * ValidationException
272//   The provided input is not valid. Try your request again.
273//
274//   * InvalidParameterValueException
275//   One or more parameter values are not valid.
276//
277//   * ResourceNotFoundException
278//   The resource cannot be found.
279//
280//   * NoEntitlementsAllowedException
281//   There are no entitlements found for this license, or the entitlement maximum
282//   count is reached.
283//
284//   * EntitlementNotAllowedException
285//   The entitlement is not allowed.
286//
287//   * UnsupportedDigitalSignatureMethodException
288//   The digital signature method is unsupported. Try your request again.
289//
290//   * RedirectException
291//   This is not the correct Region for the resource. Try again.
292//
293//   * AuthorizationException
294//   The Amazon Web Services user account does not have permission to perform
295//   the action. Check the IAM policy associated with this account.
296//
297//   * AccessDeniedException
298//   Access to resource denied.
299//
300//   * RateLimitExceededException
301//   Too many requests have been submitted. Try again after a brief wait.
302//
303//   * ServerInternalException
304//   The server experienced an internal error. Try again.
305//
306// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CheckoutBorrowLicense
307func (c *LicenseManager) CheckoutBorrowLicense(input *CheckoutBorrowLicenseInput) (*CheckoutBorrowLicenseOutput, error) {
308	req, out := c.CheckoutBorrowLicenseRequest(input)
309	return out, req.Send()
310}
311
312// CheckoutBorrowLicenseWithContext is the same as CheckoutBorrowLicense with the addition of
313// the ability to pass a context and additional request options.
314//
315// See CheckoutBorrowLicense for details on how to use this API operation.
316//
317// The context must be non-nil and will be used for request cancellation. If
318// the context is nil a panic will occur. In the future the SDK may create
319// sub-contexts for http.Requests. See https://golang.org/pkg/context/
320// for more information on using Contexts.
321func (c *LicenseManager) CheckoutBorrowLicenseWithContext(ctx aws.Context, input *CheckoutBorrowLicenseInput, opts ...request.Option) (*CheckoutBorrowLicenseOutput, error) {
322	req, out := c.CheckoutBorrowLicenseRequest(input)
323	req.SetContext(ctx)
324	req.ApplyOptions(opts...)
325	return out, req.Send()
326}
327
328const opCheckoutLicense = "CheckoutLicense"
329
330// CheckoutLicenseRequest generates a "aws/request.Request" representing the
331// client's request for the CheckoutLicense operation. The "output" return
332// value will be populated with the request's response once the request completes
333// successfully.
334//
335// Use "Send" method on the returned Request to send the API call to the service.
336// the "output" return value is not valid until after Send returns without error.
337//
338// See CheckoutLicense for more information on using the CheckoutLicense
339// API call, and error handling.
340//
341// This method is useful when you want to inject custom logic or configuration
342// into the SDK's request lifecycle. Such as custom headers, or retry logic.
343//
344//
345//    // Example sending a request using the CheckoutLicenseRequest method.
346//    req, resp := client.CheckoutLicenseRequest(params)
347//
348//    err := req.Send()
349//    if err == nil { // resp is now filled
350//        fmt.Println(resp)
351//    }
352//
353// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CheckoutLicense
354func (c *LicenseManager) CheckoutLicenseRequest(input *CheckoutLicenseInput) (req *request.Request, output *CheckoutLicenseOutput) {
355	op := &request.Operation{
356		Name:       opCheckoutLicense,
357		HTTPMethod: "POST",
358		HTTPPath:   "/",
359	}
360
361	if input == nil {
362		input = &CheckoutLicenseInput{}
363	}
364
365	output = &CheckoutLicenseOutput{}
366	req = c.newRequest(op, input, output)
367	return
368}
369
370// CheckoutLicense API operation for AWS License Manager.
371//
372// Checks out the specified license.
373//
374// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
375// with awserr.Error's Code and Message methods to get detailed information about
376// the error.
377//
378// See the AWS API reference guide for AWS License Manager's
379// API operation CheckoutLicense for usage and error information.
380//
381// Returned Error Types:
382//   * ValidationException
383//   The provided input is not valid. Try your request again.
384//
385//   * InvalidParameterValueException
386//   One or more parameter values are not valid.
387//
388//   * ResourceNotFoundException
389//   The resource cannot be found.
390//
391//   * NoEntitlementsAllowedException
392//   There are no entitlements found for this license, or the entitlement maximum
393//   count is reached.
394//
395//   * UnsupportedDigitalSignatureMethodException
396//   The digital signature method is unsupported. Try your request again.
397//
398//   * RedirectException
399//   This is not the correct Region for the resource. Try again.
400//
401//   * AuthorizationException
402//   The Amazon Web Services user account does not have permission to perform
403//   the action. Check the IAM policy associated with this account.
404//
405//   * AccessDeniedException
406//   Access to resource denied.
407//
408//   * RateLimitExceededException
409//   Too many requests have been submitted. Try again after a brief wait.
410//
411//   * ServerInternalException
412//   The server experienced an internal error. Try again.
413//
414// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CheckoutLicense
415func (c *LicenseManager) CheckoutLicense(input *CheckoutLicenseInput) (*CheckoutLicenseOutput, error) {
416	req, out := c.CheckoutLicenseRequest(input)
417	return out, req.Send()
418}
419
420// CheckoutLicenseWithContext is the same as CheckoutLicense with the addition of
421// the ability to pass a context and additional request options.
422//
423// See CheckoutLicense for details on how to use this API operation.
424//
425// The context must be non-nil and will be used for request cancellation. If
426// the context is nil a panic will occur. In the future the SDK may create
427// sub-contexts for http.Requests. See https://golang.org/pkg/context/
428// for more information on using Contexts.
429func (c *LicenseManager) CheckoutLicenseWithContext(ctx aws.Context, input *CheckoutLicenseInput, opts ...request.Option) (*CheckoutLicenseOutput, error) {
430	req, out := c.CheckoutLicenseRequest(input)
431	req.SetContext(ctx)
432	req.ApplyOptions(opts...)
433	return out, req.Send()
434}
435
436const opCreateGrant = "CreateGrant"
437
438// CreateGrantRequest generates a "aws/request.Request" representing the
439// client's request for the CreateGrant operation. The "output" return
440// value will be populated with the request's response once the request completes
441// successfully.
442//
443// Use "Send" method on the returned Request to send the API call to the service.
444// the "output" return value is not valid until after Send returns without error.
445//
446// See CreateGrant for more information on using the CreateGrant
447// API call, and error handling.
448//
449// This method is useful when you want to inject custom logic or configuration
450// into the SDK's request lifecycle. Such as custom headers, or retry logic.
451//
452//
453//    // Example sending a request using the CreateGrantRequest method.
454//    req, resp := client.CreateGrantRequest(params)
455//
456//    err := req.Send()
457//    if err == nil { // resp is now filled
458//        fmt.Println(resp)
459//    }
460//
461// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateGrant
462func (c *LicenseManager) CreateGrantRequest(input *CreateGrantInput) (req *request.Request, output *CreateGrantOutput) {
463	op := &request.Operation{
464		Name:       opCreateGrant,
465		HTTPMethod: "POST",
466		HTTPPath:   "/",
467	}
468
469	if input == nil {
470		input = &CreateGrantInput{}
471	}
472
473	output = &CreateGrantOutput{}
474	req = c.newRequest(op, input, output)
475	return
476}
477
478// CreateGrant API operation for AWS License Manager.
479//
480// Creates a grant for the specified license. A grant shares the use of license
481// entitlements with specific Amazon Web Services accounts.
482//
483// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
484// with awserr.Error's Code and Message methods to get detailed information about
485// the error.
486//
487// See the AWS API reference guide for AWS License Manager's
488// API operation CreateGrant for usage and error information.
489//
490// Returned Error Types:
491//   * ValidationException
492//   The provided input is not valid. Try your request again.
493//
494//   * InvalidParameterValueException
495//   One or more parameter values are not valid.
496//
497//   * ResourceLimitExceededException
498//   Your resource limits have been exceeded.
499//
500//   * ServerInternalException
501//   The server experienced an internal error. Try again.
502//
503//   * AuthorizationException
504//   The Amazon Web Services user account does not have permission to perform
505//   the action. Check the IAM policy associated with this account.
506//
507//   * RateLimitExceededException
508//   Too many requests have been submitted. Try again after a brief wait.
509//
510//   * AccessDeniedException
511//   Access to resource denied.
512//
513// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateGrant
514func (c *LicenseManager) CreateGrant(input *CreateGrantInput) (*CreateGrantOutput, error) {
515	req, out := c.CreateGrantRequest(input)
516	return out, req.Send()
517}
518
519// CreateGrantWithContext is the same as CreateGrant with the addition of
520// the ability to pass a context and additional request options.
521//
522// See CreateGrant for details on how to use this API operation.
523//
524// The context must be non-nil and will be used for request cancellation. If
525// the context is nil a panic will occur. In the future the SDK may create
526// sub-contexts for http.Requests. See https://golang.org/pkg/context/
527// for more information on using Contexts.
528func (c *LicenseManager) CreateGrantWithContext(ctx aws.Context, input *CreateGrantInput, opts ...request.Option) (*CreateGrantOutput, error) {
529	req, out := c.CreateGrantRequest(input)
530	req.SetContext(ctx)
531	req.ApplyOptions(opts...)
532	return out, req.Send()
533}
534
535const opCreateGrantVersion = "CreateGrantVersion"
536
537// CreateGrantVersionRequest generates a "aws/request.Request" representing the
538// client's request for the CreateGrantVersion operation. The "output" return
539// value will be populated with the request's response once the request completes
540// successfully.
541//
542// Use "Send" method on the returned Request to send the API call to the service.
543// the "output" return value is not valid until after Send returns without error.
544//
545// See CreateGrantVersion for more information on using the CreateGrantVersion
546// API call, and error handling.
547//
548// This method is useful when you want to inject custom logic or configuration
549// into the SDK's request lifecycle. Such as custom headers, or retry logic.
550//
551//
552//    // Example sending a request using the CreateGrantVersionRequest method.
553//    req, resp := client.CreateGrantVersionRequest(params)
554//
555//    err := req.Send()
556//    if err == nil { // resp is now filled
557//        fmt.Println(resp)
558//    }
559//
560// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateGrantVersion
561func (c *LicenseManager) CreateGrantVersionRequest(input *CreateGrantVersionInput) (req *request.Request, output *CreateGrantVersionOutput) {
562	op := &request.Operation{
563		Name:       opCreateGrantVersion,
564		HTTPMethod: "POST",
565		HTTPPath:   "/",
566	}
567
568	if input == nil {
569		input = &CreateGrantVersionInput{}
570	}
571
572	output = &CreateGrantVersionOutput{}
573	req = c.newRequest(op, input, output)
574	return
575}
576
577// CreateGrantVersion API operation for AWS License Manager.
578//
579// Creates a new version of the specified grant.
580//
581// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
582// with awserr.Error's Code and Message methods to get detailed information about
583// the error.
584//
585// See the AWS API reference guide for AWS License Manager's
586// API operation CreateGrantVersion for usage and error information.
587//
588// Returned Error Types:
589//   * ValidationException
590//   The provided input is not valid. Try your request again.
591//
592//   * InvalidParameterValueException
593//   One or more parameter values are not valid.
594//
595//   * ResourceLimitExceededException
596//   Your resource limits have been exceeded.
597//
598//   * ServerInternalException
599//   The server experienced an internal error. Try again.
600//
601//   * AuthorizationException
602//   The Amazon Web Services user account does not have permission to perform
603//   the action. Check the IAM policy associated with this account.
604//
605//   * AccessDeniedException
606//   Access to resource denied.
607//
608//   * RateLimitExceededException
609//   Too many requests have been submitted. Try again after a brief wait.
610//
611// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateGrantVersion
612func (c *LicenseManager) CreateGrantVersion(input *CreateGrantVersionInput) (*CreateGrantVersionOutput, error) {
613	req, out := c.CreateGrantVersionRequest(input)
614	return out, req.Send()
615}
616
617// CreateGrantVersionWithContext is the same as CreateGrantVersion with the addition of
618// the ability to pass a context and additional request options.
619//
620// See CreateGrantVersion for details on how to use this API operation.
621//
622// The context must be non-nil and will be used for request cancellation. If
623// the context is nil a panic will occur. In the future the SDK may create
624// sub-contexts for http.Requests. See https://golang.org/pkg/context/
625// for more information on using Contexts.
626func (c *LicenseManager) CreateGrantVersionWithContext(ctx aws.Context, input *CreateGrantVersionInput, opts ...request.Option) (*CreateGrantVersionOutput, error) {
627	req, out := c.CreateGrantVersionRequest(input)
628	req.SetContext(ctx)
629	req.ApplyOptions(opts...)
630	return out, req.Send()
631}
632
633const opCreateLicense = "CreateLicense"
634
635// CreateLicenseRequest generates a "aws/request.Request" representing the
636// client's request for the CreateLicense operation. The "output" return
637// value will be populated with the request's response once the request completes
638// successfully.
639//
640// Use "Send" method on the returned Request to send the API call to the service.
641// the "output" return value is not valid until after Send returns without error.
642//
643// See CreateLicense for more information on using the CreateLicense
644// API call, and error handling.
645//
646// This method is useful when you want to inject custom logic or configuration
647// into the SDK's request lifecycle. Such as custom headers, or retry logic.
648//
649//
650//    // Example sending a request using the CreateLicenseRequest method.
651//    req, resp := client.CreateLicenseRequest(params)
652//
653//    err := req.Send()
654//    if err == nil { // resp is now filled
655//        fmt.Println(resp)
656//    }
657//
658// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateLicense
659func (c *LicenseManager) CreateLicenseRequest(input *CreateLicenseInput) (req *request.Request, output *CreateLicenseOutput) {
660	op := &request.Operation{
661		Name:       opCreateLicense,
662		HTTPMethod: "POST",
663		HTTPPath:   "/",
664	}
665
666	if input == nil {
667		input = &CreateLicenseInput{}
668	}
669
670	output = &CreateLicenseOutput{}
671	req = c.newRequest(op, input, output)
672	return
673}
674
675// CreateLicense API operation for AWS License Manager.
676//
677// Creates a license.
678//
679// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
680// with awserr.Error's Code and Message methods to get detailed information about
681// the error.
682//
683// See the AWS API reference guide for AWS License Manager's
684// API operation CreateLicense for usage and error information.
685//
686// Returned Error Types:
687//   * ValidationException
688//   The provided input is not valid. Try your request again.
689//
690//   * InvalidParameterValueException
691//   One or more parameter values are not valid.
692//
693//   * RedirectException
694//   This is not the correct Region for the resource. Try again.
695//
696//   * AuthorizationException
697//   The Amazon Web Services user account does not have permission to perform
698//   the action. Check the IAM policy associated with this account.
699//
700//   * AccessDeniedException
701//   Access to resource denied.
702//
703//   * RateLimitExceededException
704//   Too many requests have been submitted. Try again after a brief wait.
705//
706//   * ServerInternalException
707//   The server experienced an internal error. Try again.
708//
709// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateLicense
710func (c *LicenseManager) CreateLicense(input *CreateLicenseInput) (*CreateLicenseOutput, error) {
711	req, out := c.CreateLicenseRequest(input)
712	return out, req.Send()
713}
714
715// CreateLicenseWithContext is the same as CreateLicense with the addition of
716// the ability to pass a context and additional request options.
717//
718// See CreateLicense for details on how to use this API operation.
719//
720// The context must be non-nil and will be used for request cancellation. If
721// the context is nil a panic will occur. In the future the SDK may create
722// sub-contexts for http.Requests. See https://golang.org/pkg/context/
723// for more information on using Contexts.
724func (c *LicenseManager) CreateLicenseWithContext(ctx aws.Context, input *CreateLicenseInput, opts ...request.Option) (*CreateLicenseOutput, error) {
725	req, out := c.CreateLicenseRequest(input)
726	req.SetContext(ctx)
727	req.ApplyOptions(opts...)
728	return out, req.Send()
729}
730
731const opCreateLicenseConfiguration = "CreateLicenseConfiguration"
732
733// CreateLicenseConfigurationRequest generates a "aws/request.Request" representing the
734// client's request for the CreateLicenseConfiguration operation. The "output" return
735// value will be populated with the request's response once the request completes
736// successfully.
737//
738// Use "Send" method on the returned Request to send the API call to the service.
739// the "output" return value is not valid until after Send returns without error.
740//
741// See CreateLicenseConfiguration for more information on using the CreateLicenseConfiguration
742// API call, and error handling.
743//
744// This method is useful when you want to inject custom logic or configuration
745// into the SDK's request lifecycle. Such as custom headers, or retry logic.
746//
747//
748//    // Example sending a request using the CreateLicenseConfigurationRequest method.
749//    req, resp := client.CreateLicenseConfigurationRequest(params)
750//
751//    err := req.Send()
752//    if err == nil { // resp is now filled
753//        fmt.Println(resp)
754//    }
755//
756// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateLicenseConfiguration
757func (c *LicenseManager) CreateLicenseConfigurationRequest(input *CreateLicenseConfigurationInput) (req *request.Request, output *CreateLicenseConfigurationOutput) {
758	op := &request.Operation{
759		Name:       opCreateLicenseConfiguration,
760		HTTPMethod: "POST",
761		HTTPPath:   "/",
762	}
763
764	if input == nil {
765		input = &CreateLicenseConfigurationInput{}
766	}
767
768	output = &CreateLicenseConfigurationOutput{}
769	req = c.newRequest(op, input, output)
770	return
771}
772
773// CreateLicenseConfiguration API operation for AWS License Manager.
774//
775// Creates a license configuration.
776//
777// A license configuration is an abstraction of a customer license agreement
778// that can be consumed and enforced by License Manager. Components include
779// specifications for the license type (licensing by instance, socket, CPU,
780// or vCPU), allowed tenancy (shared tenancy, Dedicated Instance, Dedicated
781// Host, or all of these), license affinity to host (how long a license must
782// be associated with a host), and the number of licenses purchased and used.
783//
784// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
785// with awserr.Error's Code and Message methods to get detailed information about
786// the error.
787//
788// See the AWS API reference guide for AWS License Manager's
789// API operation CreateLicenseConfiguration for usage and error information.
790//
791// Returned Error Types:
792//   * InvalidParameterValueException
793//   One or more parameter values are not valid.
794//
795//   * ServerInternalException
796//   The server experienced an internal error. Try again.
797//
798//   * ResourceLimitExceededException
799//   Your resource limits have been exceeded.
800//
801//   * AuthorizationException
802//   The Amazon Web Services user account does not have permission to perform
803//   the action. Check the IAM policy associated with this account.
804//
805//   * AccessDeniedException
806//   Access to resource denied.
807//
808//   * RateLimitExceededException
809//   Too many requests have been submitted. Try again after a brief wait.
810//
811// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateLicenseConfiguration
812func (c *LicenseManager) CreateLicenseConfiguration(input *CreateLicenseConfigurationInput) (*CreateLicenseConfigurationOutput, error) {
813	req, out := c.CreateLicenseConfigurationRequest(input)
814	return out, req.Send()
815}
816
817// CreateLicenseConfigurationWithContext is the same as CreateLicenseConfiguration with the addition of
818// the ability to pass a context and additional request options.
819//
820// See CreateLicenseConfiguration for details on how to use this API operation.
821//
822// The context must be non-nil and will be used for request cancellation. If
823// the context is nil a panic will occur. In the future the SDK may create
824// sub-contexts for http.Requests. See https://golang.org/pkg/context/
825// for more information on using Contexts.
826func (c *LicenseManager) CreateLicenseConfigurationWithContext(ctx aws.Context, input *CreateLicenseConfigurationInput, opts ...request.Option) (*CreateLicenseConfigurationOutput, error) {
827	req, out := c.CreateLicenseConfigurationRequest(input)
828	req.SetContext(ctx)
829	req.ApplyOptions(opts...)
830	return out, req.Send()
831}
832
833const opCreateLicenseConversionTaskForResource = "CreateLicenseConversionTaskForResource"
834
835// CreateLicenseConversionTaskForResourceRequest generates a "aws/request.Request" representing the
836// client's request for the CreateLicenseConversionTaskForResource operation. The "output" return
837// value will be populated with the request's response once the request completes
838// successfully.
839//
840// Use "Send" method on the returned Request to send the API call to the service.
841// the "output" return value is not valid until after Send returns without error.
842//
843// See CreateLicenseConversionTaskForResource for more information on using the CreateLicenseConversionTaskForResource
844// API call, and error handling.
845//
846// This method is useful when you want to inject custom logic or configuration
847// into the SDK's request lifecycle. Such as custom headers, or retry logic.
848//
849//
850//    // Example sending a request using the CreateLicenseConversionTaskForResourceRequest method.
851//    req, resp := client.CreateLicenseConversionTaskForResourceRequest(params)
852//
853//    err := req.Send()
854//    if err == nil { // resp is now filled
855//        fmt.Println(resp)
856//    }
857//
858// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateLicenseConversionTaskForResource
859func (c *LicenseManager) CreateLicenseConversionTaskForResourceRequest(input *CreateLicenseConversionTaskForResourceInput) (req *request.Request, output *CreateLicenseConversionTaskForResourceOutput) {
860	op := &request.Operation{
861		Name:       opCreateLicenseConversionTaskForResource,
862		HTTPMethod: "POST",
863		HTTPPath:   "/",
864	}
865
866	if input == nil {
867		input = &CreateLicenseConversionTaskForResourceInput{}
868	}
869
870	output = &CreateLicenseConversionTaskForResourceOutput{}
871	req = c.newRequest(op, input, output)
872	return
873}
874
875// CreateLicenseConversionTaskForResource API operation for AWS License Manager.
876//
877// Creates a new license conversion task.
878//
879// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
880// with awserr.Error's Code and Message methods to get detailed information about
881// the error.
882//
883// See the AWS API reference guide for AWS License Manager's
884// API operation CreateLicenseConversionTaskForResource for usage and error information.
885//
886// Returned Error Types:
887//   * InvalidParameterValueException
888//   One or more parameter values are not valid.
889//
890//   * ValidationException
891//   The provided input is not valid. Try your request again.
892//
893//   * ServerInternalException
894//   The server experienced an internal error. Try again.
895//
896//   * AuthorizationException
897//   The Amazon Web Services user account does not have permission to perform
898//   the action. Check the IAM policy associated with this account.
899//
900//   * AccessDeniedException
901//   Access to resource denied.
902//
903//   * RateLimitExceededException
904//   Too many requests have been submitted. Try again after a brief wait.
905//
906// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateLicenseConversionTaskForResource
907func (c *LicenseManager) CreateLicenseConversionTaskForResource(input *CreateLicenseConversionTaskForResourceInput) (*CreateLicenseConversionTaskForResourceOutput, error) {
908	req, out := c.CreateLicenseConversionTaskForResourceRequest(input)
909	return out, req.Send()
910}
911
912// CreateLicenseConversionTaskForResourceWithContext is the same as CreateLicenseConversionTaskForResource with the addition of
913// the ability to pass a context and additional request options.
914//
915// See CreateLicenseConversionTaskForResource for details on how to use this API operation.
916//
917// The context must be non-nil and will be used for request cancellation. If
918// the context is nil a panic will occur. In the future the SDK may create
919// sub-contexts for http.Requests. See https://golang.org/pkg/context/
920// for more information on using Contexts.
921func (c *LicenseManager) CreateLicenseConversionTaskForResourceWithContext(ctx aws.Context, input *CreateLicenseConversionTaskForResourceInput, opts ...request.Option) (*CreateLicenseConversionTaskForResourceOutput, error) {
922	req, out := c.CreateLicenseConversionTaskForResourceRequest(input)
923	req.SetContext(ctx)
924	req.ApplyOptions(opts...)
925	return out, req.Send()
926}
927
928const opCreateLicenseManagerReportGenerator = "CreateLicenseManagerReportGenerator"
929
930// CreateLicenseManagerReportGeneratorRequest generates a "aws/request.Request" representing the
931// client's request for the CreateLicenseManagerReportGenerator operation. The "output" return
932// value will be populated with the request's response once the request completes
933// successfully.
934//
935// Use "Send" method on the returned Request to send the API call to the service.
936// the "output" return value is not valid until after Send returns without error.
937//
938// See CreateLicenseManagerReportGenerator for more information on using the CreateLicenseManagerReportGenerator
939// API call, and error handling.
940//
941// This method is useful when you want to inject custom logic or configuration
942// into the SDK's request lifecycle. Such as custom headers, or retry logic.
943//
944//
945//    // Example sending a request using the CreateLicenseManagerReportGeneratorRequest method.
946//    req, resp := client.CreateLicenseManagerReportGeneratorRequest(params)
947//
948//    err := req.Send()
949//    if err == nil { // resp is now filled
950//        fmt.Println(resp)
951//    }
952//
953// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateLicenseManagerReportGenerator
954func (c *LicenseManager) CreateLicenseManagerReportGeneratorRequest(input *CreateLicenseManagerReportGeneratorInput) (req *request.Request, output *CreateLicenseManagerReportGeneratorOutput) {
955	op := &request.Operation{
956		Name:       opCreateLicenseManagerReportGenerator,
957		HTTPMethod: "POST",
958		HTTPPath:   "/",
959	}
960
961	if input == nil {
962		input = &CreateLicenseManagerReportGeneratorInput{}
963	}
964
965	output = &CreateLicenseManagerReportGeneratorOutput{}
966	req = c.newRequest(op, input, output)
967	return
968}
969
970// CreateLicenseManagerReportGenerator API operation for AWS License Manager.
971//
972// Creates a report generator.
973//
974// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
975// with awserr.Error's Code and Message methods to get detailed information about
976// the error.
977//
978// See the AWS API reference guide for AWS License Manager's
979// API operation CreateLicenseManagerReportGenerator for usage and error information.
980//
981// Returned Error Types:
982//   * ValidationException
983//   The provided input is not valid. Try your request again.
984//
985//   * InvalidParameterValueException
986//   One or more parameter values are not valid.
987//
988//   * ResourceLimitExceededException
989//   Your resource limits have been exceeded.
990//
991//   * ServerInternalException
992//   The server experienced an internal error. Try again.
993//
994//   * AuthorizationException
995//   The Amazon Web Services user account does not have permission to perform
996//   the action. Check the IAM policy associated with this account.
997//
998//   * RateLimitExceededException
999//   Too many requests have been submitted. Try again after a brief wait.
1000//
1001//   * AccessDeniedException
1002//   Access to resource denied.
1003//
1004//   * ResourceNotFoundException
1005//   The resource cannot be found.
1006//
1007// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateLicenseManagerReportGenerator
1008func (c *LicenseManager) CreateLicenseManagerReportGenerator(input *CreateLicenseManagerReportGeneratorInput) (*CreateLicenseManagerReportGeneratorOutput, error) {
1009	req, out := c.CreateLicenseManagerReportGeneratorRequest(input)
1010	return out, req.Send()
1011}
1012
1013// CreateLicenseManagerReportGeneratorWithContext is the same as CreateLicenseManagerReportGenerator with the addition of
1014// the ability to pass a context and additional request options.
1015//
1016// See CreateLicenseManagerReportGenerator for details on how to use this API operation.
1017//
1018// The context must be non-nil and will be used for request cancellation. If
1019// the context is nil a panic will occur. In the future the SDK may create
1020// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1021// for more information on using Contexts.
1022func (c *LicenseManager) CreateLicenseManagerReportGeneratorWithContext(ctx aws.Context, input *CreateLicenseManagerReportGeneratorInput, opts ...request.Option) (*CreateLicenseManagerReportGeneratorOutput, error) {
1023	req, out := c.CreateLicenseManagerReportGeneratorRequest(input)
1024	req.SetContext(ctx)
1025	req.ApplyOptions(opts...)
1026	return out, req.Send()
1027}
1028
1029const opCreateLicenseVersion = "CreateLicenseVersion"
1030
1031// CreateLicenseVersionRequest generates a "aws/request.Request" representing the
1032// client's request for the CreateLicenseVersion operation. The "output" return
1033// value will be populated with the request's response once the request completes
1034// successfully.
1035//
1036// Use "Send" method on the returned Request to send the API call to the service.
1037// the "output" return value is not valid until after Send returns without error.
1038//
1039// See CreateLicenseVersion for more information on using the CreateLicenseVersion
1040// API call, and error handling.
1041//
1042// This method is useful when you want to inject custom logic or configuration
1043// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1044//
1045//
1046//    // Example sending a request using the CreateLicenseVersionRequest method.
1047//    req, resp := client.CreateLicenseVersionRequest(params)
1048//
1049//    err := req.Send()
1050//    if err == nil { // resp is now filled
1051//        fmt.Println(resp)
1052//    }
1053//
1054// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateLicenseVersion
1055func (c *LicenseManager) CreateLicenseVersionRequest(input *CreateLicenseVersionInput) (req *request.Request, output *CreateLicenseVersionOutput) {
1056	op := &request.Operation{
1057		Name:       opCreateLicenseVersion,
1058		HTTPMethod: "POST",
1059		HTTPPath:   "/",
1060	}
1061
1062	if input == nil {
1063		input = &CreateLicenseVersionInput{}
1064	}
1065
1066	output = &CreateLicenseVersionOutput{}
1067	req = c.newRequest(op, input, output)
1068	return
1069}
1070
1071// CreateLicenseVersion API operation for AWS License Manager.
1072//
1073// Creates a new version of the specified license.
1074//
1075// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1076// with awserr.Error's Code and Message methods to get detailed information about
1077// the error.
1078//
1079// See the AWS API reference guide for AWS License Manager's
1080// API operation CreateLicenseVersion for usage and error information.
1081//
1082// Returned Error Types:
1083//   * ValidationException
1084//   The provided input is not valid. Try your request again.
1085//
1086//   * AccessDeniedException
1087//   Access to resource denied.
1088//
1089//   * ResourceNotFoundException
1090//   The resource cannot be found.
1091//
1092//   * RedirectException
1093//   This is not the correct Region for the resource. Try again.
1094//
1095//   * ConflictException
1096//   There was a conflict processing the request. Try your request again.
1097//
1098//   * ServerInternalException
1099//   The server experienced an internal error. Try again.
1100//
1101//   * AuthorizationException
1102//   The Amazon Web Services user account does not have permission to perform
1103//   the action. Check the IAM policy associated with this account.
1104//
1105//   * RateLimitExceededException
1106//   Too many requests have been submitted. Try again after a brief wait.
1107//
1108// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateLicenseVersion
1109func (c *LicenseManager) CreateLicenseVersion(input *CreateLicenseVersionInput) (*CreateLicenseVersionOutput, error) {
1110	req, out := c.CreateLicenseVersionRequest(input)
1111	return out, req.Send()
1112}
1113
1114// CreateLicenseVersionWithContext is the same as CreateLicenseVersion with the addition of
1115// the ability to pass a context and additional request options.
1116//
1117// See CreateLicenseVersion for details on how to use this API operation.
1118//
1119// The context must be non-nil and will be used for request cancellation. If
1120// the context is nil a panic will occur. In the future the SDK may create
1121// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1122// for more information on using Contexts.
1123func (c *LicenseManager) CreateLicenseVersionWithContext(ctx aws.Context, input *CreateLicenseVersionInput, opts ...request.Option) (*CreateLicenseVersionOutput, error) {
1124	req, out := c.CreateLicenseVersionRequest(input)
1125	req.SetContext(ctx)
1126	req.ApplyOptions(opts...)
1127	return out, req.Send()
1128}
1129
1130const opCreateToken = "CreateToken"
1131
1132// CreateTokenRequest generates a "aws/request.Request" representing the
1133// client's request for the CreateToken operation. The "output" return
1134// value will be populated with the request's response once the request completes
1135// successfully.
1136//
1137// Use "Send" method on the returned Request to send the API call to the service.
1138// the "output" return value is not valid until after Send returns without error.
1139//
1140// See CreateToken for more information on using the CreateToken
1141// API call, and error handling.
1142//
1143// This method is useful when you want to inject custom logic or configuration
1144// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1145//
1146//
1147//    // Example sending a request using the CreateTokenRequest method.
1148//    req, resp := client.CreateTokenRequest(params)
1149//
1150//    err := req.Send()
1151//    if err == nil { // resp is now filled
1152//        fmt.Println(resp)
1153//    }
1154//
1155// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateToken
1156func (c *LicenseManager) CreateTokenRequest(input *CreateTokenInput) (req *request.Request, output *CreateTokenOutput) {
1157	op := &request.Operation{
1158		Name:       opCreateToken,
1159		HTTPMethod: "POST",
1160		HTTPPath:   "/",
1161	}
1162
1163	if input == nil {
1164		input = &CreateTokenInput{}
1165	}
1166
1167	output = &CreateTokenOutput{}
1168	req = c.newRequest(op, input, output)
1169	return
1170}
1171
1172// CreateToken API operation for AWS License Manager.
1173//
1174// Creates a long-lived token.
1175//
1176// A refresh token is a JWT token used to get an access token. With an access
1177// token, you can call AssumeRoleWithWebIdentity to get role credentials that
1178// you can use to call License Manager to manage the specified license.
1179//
1180// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1181// with awserr.Error's Code and Message methods to get detailed information about
1182// the error.
1183//
1184// See the AWS API reference guide for AWS License Manager's
1185// API operation CreateToken for usage and error information.
1186//
1187// Returned Error Types:
1188//   * ValidationException
1189//   The provided input is not valid. Try your request again.
1190//
1191//   * AuthorizationException
1192//   The Amazon Web Services user account does not have permission to perform
1193//   the action. Check the IAM policy associated with this account.
1194//
1195//   * AccessDeniedException
1196//   Access to resource denied.
1197//
1198//   * RateLimitExceededException
1199//   Too many requests have been submitted. Try again after a brief wait.
1200//
1201//   * ResourceLimitExceededException
1202//   Your resource limits have been exceeded.
1203//
1204//   * ServerInternalException
1205//   The server experienced an internal error. Try again.
1206//
1207//   * ResourceNotFoundException
1208//   The resource cannot be found.
1209//
1210//   * RedirectException
1211//   This is not the correct Region for the resource. Try again.
1212//
1213// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateToken
1214func (c *LicenseManager) CreateToken(input *CreateTokenInput) (*CreateTokenOutput, error) {
1215	req, out := c.CreateTokenRequest(input)
1216	return out, req.Send()
1217}
1218
1219// CreateTokenWithContext is the same as CreateToken with the addition of
1220// the ability to pass a context and additional request options.
1221//
1222// See CreateToken for details on how to use this API operation.
1223//
1224// The context must be non-nil and will be used for request cancellation. If
1225// the context is nil a panic will occur. In the future the SDK may create
1226// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1227// for more information on using Contexts.
1228func (c *LicenseManager) CreateTokenWithContext(ctx aws.Context, input *CreateTokenInput, opts ...request.Option) (*CreateTokenOutput, error) {
1229	req, out := c.CreateTokenRequest(input)
1230	req.SetContext(ctx)
1231	req.ApplyOptions(opts...)
1232	return out, req.Send()
1233}
1234
1235const opDeleteGrant = "DeleteGrant"
1236
1237// DeleteGrantRequest generates a "aws/request.Request" representing the
1238// client's request for the DeleteGrant operation. The "output" return
1239// value will be populated with the request's response once the request completes
1240// successfully.
1241//
1242// Use "Send" method on the returned Request to send the API call to the service.
1243// the "output" return value is not valid until after Send returns without error.
1244//
1245// See DeleteGrant for more information on using the DeleteGrant
1246// API call, and error handling.
1247//
1248// This method is useful when you want to inject custom logic or configuration
1249// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1250//
1251//
1252//    // Example sending a request using the DeleteGrantRequest method.
1253//    req, resp := client.DeleteGrantRequest(params)
1254//
1255//    err := req.Send()
1256//    if err == nil { // resp is now filled
1257//        fmt.Println(resp)
1258//    }
1259//
1260// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/DeleteGrant
1261func (c *LicenseManager) DeleteGrantRequest(input *DeleteGrantInput) (req *request.Request, output *DeleteGrantOutput) {
1262	op := &request.Operation{
1263		Name:       opDeleteGrant,
1264		HTTPMethod: "POST",
1265		HTTPPath:   "/",
1266	}
1267
1268	if input == nil {
1269		input = &DeleteGrantInput{}
1270	}
1271
1272	output = &DeleteGrantOutput{}
1273	req = c.newRequest(op, input, output)
1274	return
1275}
1276
1277// DeleteGrant API operation for AWS License Manager.
1278//
1279// Deletes the specified grant.
1280//
1281// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1282// with awserr.Error's Code and Message methods to get detailed information about
1283// the error.
1284//
1285// See the AWS API reference guide for AWS License Manager's
1286// API operation DeleteGrant for usage and error information.
1287//
1288// Returned Error Types:
1289//   * ValidationException
1290//   The provided input is not valid. Try your request again.
1291//
1292//   * InvalidParameterValueException
1293//   One or more parameter values are not valid.
1294//
1295//   * AuthorizationException
1296//   The Amazon Web Services user account does not have permission to perform
1297//   the action. Check the IAM policy associated with this account.
1298//
1299//   * AccessDeniedException
1300//   Access to resource denied.
1301//
1302//   * RateLimitExceededException
1303//   Too many requests have been submitted. Try again after a brief wait.
1304//
1305//   * ResourceLimitExceededException
1306//   Your resource limits have been exceeded.
1307//
1308//   * ServerInternalException
1309//   The server experienced an internal error. Try again.
1310//
1311// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/DeleteGrant
1312func (c *LicenseManager) DeleteGrant(input *DeleteGrantInput) (*DeleteGrantOutput, error) {
1313	req, out := c.DeleteGrantRequest(input)
1314	return out, req.Send()
1315}
1316
1317// DeleteGrantWithContext is the same as DeleteGrant with the addition of
1318// the ability to pass a context and additional request options.
1319//
1320// See DeleteGrant for details on how to use this API operation.
1321//
1322// The context must be non-nil and will be used for request cancellation. If
1323// the context is nil a panic will occur. In the future the SDK may create
1324// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1325// for more information on using Contexts.
1326func (c *LicenseManager) DeleteGrantWithContext(ctx aws.Context, input *DeleteGrantInput, opts ...request.Option) (*DeleteGrantOutput, error) {
1327	req, out := c.DeleteGrantRequest(input)
1328	req.SetContext(ctx)
1329	req.ApplyOptions(opts...)
1330	return out, req.Send()
1331}
1332
1333const opDeleteLicense = "DeleteLicense"
1334
1335// DeleteLicenseRequest generates a "aws/request.Request" representing the
1336// client's request for the DeleteLicense operation. The "output" return
1337// value will be populated with the request's response once the request completes
1338// successfully.
1339//
1340// Use "Send" method on the returned Request to send the API call to the service.
1341// the "output" return value is not valid until after Send returns without error.
1342//
1343// See DeleteLicense for more information on using the DeleteLicense
1344// API call, and error handling.
1345//
1346// This method is useful when you want to inject custom logic or configuration
1347// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1348//
1349//
1350//    // Example sending a request using the DeleteLicenseRequest method.
1351//    req, resp := client.DeleteLicenseRequest(params)
1352//
1353//    err := req.Send()
1354//    if err == nil { // resp is now filled
1355//        fmt.Println(resp)
1356//    }
1357//
1358// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/DeleteLicense
1359func (c *LicenseManager) DeleteLicenseRequest(input *DeleteLicenseInput) (req *request.Request, output *DeleteLicenseOutput) {
1360	op := &request.Operation{
1361		Name:       opDeleteLicense,
1362		HTTPMethod: "POST",
1363		HTTPPath:   "/",
1364	}
1365
1366	if input == nil {
1367		input = &DeleteLicenseInput{}
1368	}
1369
1370	output = &DeleteLicenseOutput{}
1371	req = c.newRequest(op, input, output)
1372	return
1373}
1374
1375// DeleteLicense API operation for AWS License Manager.
1376//
1377// Deletes the specified license.
1378//
1379// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1380// with awserr.Error's Code and Message methods to get detailed information about
1381// the error.
1382//
1383// See the AWS API reference guide for AWS License Manager's
1384// API operation DeleteLicense for usage and error information.
1385//
1386// Returned Error Types:
1387//   * ValidationException
1388//   The provided input is not valid. Try your request again.
1389//
1390//   * InvalidParameterValueException
1391//   One or more parameter values are not valid.
1392//
1393//   * RedirectException
1394//   This is not the correct Region for the resource. Try again.
1395//
1396//   * ConflictException
1397//   There was a conflict processing the request. Try your request again.
1398//
1399//   * ServerInternalException
1400//   The server experienced an internal error. Try again.
1401//
1402//   * AuthorizationException
1403//   The Amazon Web Services user account does not have permission to perform
1404//   the action. Check the IAM policy associated with this account.
1405//
1406//   * AccessDeniedException
1407//   Access to resource denied.
1408//
1409//   * RateLimitExceededException
1410//   Too many requests have been submitted. Try again after a brief wait.
1411//
1412// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/DeleteLicense
1413func (c *LicenseManager) DeleteLicense(input *DeleteLicenseInput) (*DeleteLicenseOutput, error) {
1414	req, out := c.DeleteLicenseRequest(input)
1415	return out, req.Send()
1416}
1417
1418// DeleteLicenseWithContext is the same as DeleteLicense with the addition of
1419// the ability to pass a context and additional request options.
1420//
1421// See DeleteLicense for details on how to use this API operation.
1422//
1423// The context must be non-nil and will be used for request cancellation. If
1424// the context is nil a panic will occur. In the future the SDK may create
1425// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1426// for more information on using Contexts.
1427func (c *LicenseManager) DeleteLicenseWithContext(ctx aws.Context, input *DeleteLicenseInput, opts ...request.Option) (*DeleteLicenseOutput, error) {
1428	req, out := c.DeleteLicenseRequest(input)
1429	req.SetContext(ctx)
1430	req.ApplyOptions(opts...)
1431	return out, req.Send()
1432}
1433
1434const opDeleteLicenseConfiguration = "DeleteLicenseConfiguration"
1435
1436// DeleteLicenseConfigurationRequest generates a "aws/request.Request" representing the
1437// client's request for the DeleteLicenseConfiguration operation. The "output" return
1438// value will be populated with the request's response once the request completes
1439// successfully.
1440//
1441// Use "Send" method on the returned Request to send the API call to the service.
1442// the "output" return value is not valid until after Send returns without error.
1443//
1444// See DeleteLicenseConfiguration for more information on using the DeleteLicenseConfiguration
1445// API call, and error handling.
1446//
1447// This method is useful when you want to inject custom logic or configuration
1448// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1449//
1450//
1451//    // Example sending a request using the DeleteLicenseConfigurationRequest method.
1452//    req, resp := client.DeleteLicenseConfigurationRequest(params)
1453//
1454//    err := req.Send()
1455//    if err == nil { // resp is now filled
1456//        fmt.Println(resp)
1457//    }
1458//
1459// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/DeleteLicenseConfiguration
1460func (c *LicenseManager) DeleteLicenseConfigurationRequest(input *DeleteLicenseConfigurationInput) (req *request.Request, output *DeleteLicenseConfigurationOutput) {
1461	op := &request.Operation{
1462		Name:       opDeleteLicenseConfiguration,
1463		HTTPMethod: "POST",
1464		HTTPPath:   "/",
1465	}
1466
1467	if input == nil {
1468		input = &DeleteLicenseConfigurationInput{}
1469	}
1470
1471	output = &DeleteLicenseConfigurationOutput{}
1472	req = c.newRequest(op, input, output)
1473	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1474	return
1475}
1476
1477// DeleteLicenseConfiguration API operation for AWS License Manager.
1478//
1479// Deletes the specified license configuration.
1480//
1481// You cannot delete a license configuration that is in use.
1482//
1483// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1484// with awserr.Error's Code and Message methods to get detailed information about
1485// the error.
1486//
1487// See the AWS API reference guide for AWS License Manager's
1488// API operation DeleteLicenseConfiguration for usage and error information.
1489//
1490// Returned Error Types:
1491//   * InvalidParameterValueException
1492//   One or more parameter values are not valid.
1493//
1494//   * ServerInternalException
1495//   The server experienced an internal error. Try again.
1496//
1497//   * AuthorizationException
1498//   The Amazon Web Services user account does not have permission to perform
1499//   the action. Check the IAM policy associated with this account.
1500//
1501//   * AccessDeniedException
1502//   Access to resource denied.
1503//
1504//   * RateLimitExceededException
1505//   Too many requests have been submitted. Try again after a brief wait.
1506//
1507// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/DeleteLicenseConfiguration
1508func (c *LicenseManager) DeleteLicenseConfiguration(input *DeleteLicenseConfigurationInput) (*DeleteLicenseConfigurationOutput, error) {
1509	req, out := c.DeleteLicenseConfigurationRequest(input)
1510	return out, req.Send()
1511}
1512
1513// DeleteLicenseConfigurationWithContext is the same as DeleteLicenseConfiguration with the addition of
1514// the ability to pass a context and additional request options.
1515//
1516// See DeleteLicenseConfiguration for details on how to use this API operation.
1517//
1518// The context must be non-nil and will be used for request cancellation. If
1519// the context is nil a panic will occur. In the future the SDK may create
1520// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1521// for more information on using Contexts.
1522func (c *LicenseManager) DeleteLicenseConfigurationWithContext(ctx aws.Context, input *DeleteLicenseConfigurationInput, opts ...request.Option) (*DeleteLicenseConfigurationOutput, error) {
1523	req, out := c.DeleteLicenseConfigurationRequest(input)
1524	req.SetContext(ctx)
1525	req.ApplyOptions(opts...)
1526	return out, req.Send()
1527}
1528
1529const opDeleteLicenseManagerReportGenerator = "DeleteLicenseManagerReportGenerator"
1530
1531// DeleteLicenseManagerReportGeneratorRequest generates a "aws/request.Request" representing the
1532// client's request for the DeleteLicenseManagerReportGenerator operation. The "output" return
1533// value will be populated with the request's response once the request completes
1534// successfully.
1535//
1536// Use "Send" method on the returned Request to send the API call to the service.
1537// the "output" return value is not valid until after Send returns without error.
1538//
1539// See DeleteLicenseManagerReportGenerator for more information on using the DeleteLicenseManagerReportGenerator
1540// API call, and error handling.
1541//
1542// This method is useful when you want to inject custom logic or configuration
1543// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1544//
1545//
1546//    // Example sending a request using the DeleteLicenseManagerReportGeneratorRequest method.
1547//    req, resp := client.DeleteLicenseManagerReportGeneratorRequest(params)
1548//
1549//    err := req.Send()
1550//    if err == nil { // resp is now filled
1551//        fmt.Println(resp)
1552//    }
1553//
1554// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/DeleteLicenseManagerReportGenerator
1555func (c *LicenseManager) DeleteLicenseManagerReportGeneratorRequest(input *DeleteLicenseManagerReportGeneratorInput) (req *request.Request, output *DeleteLicenseManagerReportGeneratorOutput) {
1556	op := &request.Operation{
1557		Name:       opDeleteLicenseManagerReportGenerator,
1558		HTTPMethod: "POST",
1559		HTTPPath:   "/",
1560	}
1561
1562	if input == nil {
1563		input = &DeleteLicenseManagerReportGeneratorInput{}
1564	}
1565
1566	output = &DeleteLicenseManagerReportGeneratorOutput{}
1567	req = c.newRequest(op, input, output)
1568	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1569	return
1570}
1571
1572// DeleteLicenseManagerReportGenerator API operation for AWS License Manager.
1573//
1574// Deletes the specified report generator.
1575//
1576// This action deletes the report generator, which stops it from generating
1577// future reports. The action cannot be reversed. It has no effect on the previous
1578// reports from this generator.
1579//
1580// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1581// with awserr.Error's Code and Message methods to get detailed information about
1582// the error.
1583//
1584// See the AWS API reference guide for AWS License Manager's
1585// API operation DeleteLicenseManagerReportGenerator for usage and error information.
1586//
1587// Returned Error Types:
1588//   * ValidationException
1589//   The provided input is not valid. Try your request again.
1590//
1591//   * InvalidParameterValueException
1592//   One or more parameter values are not valid.
1593//
1594//   * ResourceLimitExceededException
1595//   Your resource limits have been exceeded.
1596//
1597//   * ServerInternalException
1598//   The server experienced an internal error. Try again.
1599//
1600//   * AuthorizationException
1601//   The Amazon Web Services user account does not have permission to perform
1602//   the action. Check the IAM policy associated with this account.
1603//
1604//   * RateLimitExceededException
1605//   Too many requests have been submitted. Try again after a brief wait.
1606//
1607//   * AccessDeniedException
1608//   Access to resource denied.
1609//
1610//   * ResourceNotFoundException
1611//   The resource cannot be found.
1612//
1613// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/DeleteLicenseManagerReportGenerator
1614func (c *LicenseManager) DeleteLicenseManagerReportGenerator(input *DeleteLicenseManagerReportGeneratorInput) (*DeleteLicenseManagerReportGeneratorOutput, error) {
1615	req, out := c.DeleteLicenseManagerReportGeneratorRequest(input)
1616	return out, req.Send()
1617}
1618
1619// DeleteLicenseManagerReportGeneratorWithContext is the same as DeleteLicenseManagerReportGenerator with the addition of
1620// the ability to pass a context and additional request options.
1621//
1622// See DeleteLicenseManagerReportGenerator for details on how to use this API operation.
1623//
1624// The context must be non-nil and will be used for request cancellation. If
1625// the context is nil a panic will occur. In the future the SDK may create
1626// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1627// for more information on using Contexts.
1628func (c *LicenseManager) DeleteLicenseManagerReportGeneratorWithContext(ctx aws.Context, input *DeleteLicenseManagerReportGeneratorInput, opts ...request.Option) (*DeleteLicenseManagerReportGeneratorOutput, error) {
1629	req, out := c.DeleteLicenseManagerReportGeneratorRequest(input)
1630	req.SetContext(ctx)
1631	req.ApplyOptions(opts...)
1632	return out, req.Send()
1633}
1634
1635const opDeleteToken = "DeleteToken"
1636
1637// DeleteTokenRequest generates a "aws/request.Request" representing the
1638// client's request for the DeleteToken operation. The "output" return
1639// value will be populated with the request's response once the request completes
1640// successfully.
1641//
1642// Use "Send" method on the returned Request to send the API call to the service.
1643// the "output" return value is not valid until after Send returns without error.
1644//
1645// See DeleteToken for more information on using the DeleteToken
1646// API call, and error handling.
1647//
1648// This method is useful when you want to inject custom logic or configuration
1649// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1650//
1651//
1652//    // Example sending a request using the DeleteTokenRequest method.
1653//    req, resp := client.DeleteTokenRequest(params)
1654//
1655//    err := req.Send()
1656//    if err == nil { // resp is now filled
1657//        fmt.Println(resp)
1658//    }
1659//
1660// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/DeleteToken
1661func (c *LicenseManager) DeleteTokenRequest(input *DeleteTokenInput) (req *request.Request, output *DeleteTokenOutput) {
1662	op := &request.Operation{
1663		Name:       opDeleteToken,
1664		HTTPMethod: "POST",
1665		HTTPPath:   "/",
1666	}
1667
1668	if input == nil {
1669		input = &DeleteTokenInput{}
1670	}
1671
1672	output = &DeleteTokenOutput{}
1673	req = c.newRequest(op, input, output)
1674	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1675	return
1676}
1677
1678// DeleteToken API operation for AWS License Manager.
1679//
1680// Deletes the specified token. Must be called in the license home Region.
1681//
1682// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1683// with awserr.Error's Code and Message methods to get detailed information about
1684// the error.
1685//
1686// See the AWS API reference guide for AWS License Manager's
1687// API operation DeleteToken for usage and error information.
1688//
1689// Returned Error Types:
1690//   * ValidationException
1691//   The provided input is not valid. Try your request again.
1692//
1693//   * AuthorizationException
1694//   The Amazon Web Services user account does not have permission to perform
1695//   the action. Check the IAM policy associated with this account.
1696//
1697//   * AccessDeniedException
1698//   Access to resource denied.
1699//
1700//   * RateLimitExceededException
1701//   Too many requests have been submitted. Try again after a brief wait.
1702//
1703//   * ServerInternalException
1704//   The server experienced an internal error. Try again.
1705//
1706//   * ResourceNotFoundException
1707//   The resource cannot be found.
1708//
1709//   * RedirectException
1710//   This is not the correct Region for the resource. Try again.
1711//
1712// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/DeleteToken
1713func (c *LicenseManager) DeleteToken(input *DeleteTokenInput) (*DeleteTokenOutput, error) {
1714	req, out := c.DeleteTokenRequest(input)
1715	return out, req.Send()
1716}
1717
1718// DeleteTokenWithContext is the same as DeleteToken with the addition of
1719// the ability to pass a context and additional request options.
1720//
1721// See DeleteToken for details on how to use this API operation.
1722//
1723// The context must be non-nil and will be used for request cancellation. If
1724// the context is nil a panic will occur. In the future the SDK may create
1725// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1726// for more information on using Contexts.
1727func (c *LicenseManager) DeleteTokenWithContext(ctx aws.Context, input *DeleteTokenInput, opts ...request.Option) (*DeleteTokenOutput, error) {
1728	req, out := c.DeleteTokenRequest(input)
1729	req.SetContext(ctx)
1730	req.ApplyOptions(opts...)
1731	return out, req.Send()
1732}
1733
1734const opExtendLicenseConsumption = "ExtendLicenseConsumption"
1735
1736// ExtendLicenseConsumptionRequest generates a "aws/request.Request" representing the
1737// client's request for the ExtendLicenseConsumption operation. The "output" return
1738// value will be populated with the request's response once the request completes
1739// successfully.
1740//
1741// Use "Send" method on the returned Request to send the API call to the service.
1742// the "output" return value is not valid until after Send returns without error.
1743//
1744// See ExtendLicenseConsumption for more information on using the ExtendLicenseConsumption
1745// API call, and error handling.
1746//
1747// This method is useful when you want to inject custom logic or configuration
1748// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1749//
1750//
1751//    // Example sending a request using the ExtendLicenseConsumptionRequest method.
1752//    req, resp := client.ExtendLicenseConsumptionRequest(params)
1753//
1754//    err := req.Send()
1755//    if err == nil { // resp is now filled
1756//        fmt.Println(resp)
1757//    }
1758//
1759// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ExtendLicenseConsumption
1760func (c *LicenseManager) ExtendLicenseConsumptionRequest(input *ExtendLicenseConsumptionInput) (req *request.Request, output *ExtendLicenseConsumptionOutput) {
1761	op := &request.Operation{
1762		Name:       opExtendLicenseConsumption,
1763		HTTPMethod: "POST",
1764		HTTPPath:   "/",
1765	}
1766
1767	if input == nil {
1768		input = &ExtendLicenseConsumptionInput{}
1769	}
1770
1771	output = &ExtendLicenseConsumptionOutput{}
1772	req = c.newRequest(op, input, output)
1773	return
1774}
1775
1776// ExtendLicenseConsumption API operation for AWS License Manager.
1777//
1778// Extends the expiration date for license consumption.
1779//
1780// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1781// with awserr.Error's Code and Message methods to get detailed information about
1782// the error.
1783//
1784// See the AWS API reference guide for AWS License Manager's
1785// API operation ExtendLicenseConsumption for usage and error information.
1786//
1787// Returned Error Types:
1788//   * ValidationException
1789//   The provided input is not valid. Try your request again.
1790//
1791//   * InvalidParameterValueException
1792//   One or more parameter values are not valid.
1793//
1794//   * AuthorizationException
1795//   The Amazon Web Services user account does not have permission to perform
1796//   the action. Check the IAM policy associated with this account.
1797//
1798//   * AccessDeniedException
1799//   Access to resource denied.
1800//
1801//   * RateLimitExceededException
1802//   Too many requests have been submitted. Try again after a brief wait.
1803//
1804//   * ServerInternalException
1805//   The server experienced an internal error. Try again.
1806//
1807//   * ResourceNotFoundException
1808//   The resource cannot be found.
1809//
1810// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ExtendLicenseConsumption
1811func (c *LicenseManager) ExtendLicenseConsumption(input *ExtendLicenseConsumptionInput) (*ExtendLicenseConsumptionOutput, error) {
1812	req, out := c.ExtendLicenseConsumptionRequest(input)
1813	return out, req.Send()
1814}
1815
1816// ExtendLicenseConsumptionWithContext is the same as ExtendLicenseConsumption with the addition of
1817// the ability to pass a context and additional request options.
1818//
1819// See ExtendLicenseConsumption for details on how to use this API operation.
1820//
1821// The context must be non-nil and will be used for request cancellation. If
1822// the context is nil a panic will occur. In the future the SDK may create
1823// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1824// for more information on using Contexts.
1825func (c *LicenseManager) ExtendLicenseConsumptionWithContext(ctx aws.Context, input *ExtendLicenseConsumptionInput, opts ...request.Option) (*ExtendLicenseConsumptionOutput, error) {
1826	req, out := c.ExtendLicenseConsumptionRequest(input)
1827	req.SetContext(ctx)
1828	req.ApplyOptions(opts...)
1829	return out, req.Send()
1830}
1831
1832const opGetAccessToken = "GetAccessToken"
1833
1834// GetAccessTokenRequest generates a "aws/request.Request" representing the
1835// client's request for the GetAccessToken operation. The "output" return
1836// value will be populated with the request's response once the request completes
1837// successfully.
1838//
1839// Use "Send" method on the returned Request to send the API call to the service.
1840// the "output" return value is not valid until after Send returns without error.
1841//
1842// See GetAccessToken for more information on using the GetAccessToken
1843// API call, and error handling.
1844//
1845// This method is useful when you want to inject custom logic or configuration
1846// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1847//
1848//
1849//    // Example sending a request using the GetAccessTokenRequest method.
1850//    req, resp := client.GetAccessTokenRequest(params)
1851//
1852//    err := req.Send()
1853//    if err == nil { // resp is now filled
1854//        fmt.Println(resp)
1855//    }
1856//
1857// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetAccessToken
1858func (c *LicenseManager) GetAccessTokenRequest(input *GetAccessTokenInput) (req *request.Request, output *GetAccessTokenOutput) {
1859	op := &request.Operation{
1860		Name:       opGetAccessToken,
1861		HTTPMethod: "POST",
1862		HTTPPath:   "/",
1863	}
1864
1865	if input == nil {
1866		input = &GetAccessTokenInput{}
1867	}
1868
1869	output = &GetAccessTokenOutput{}
1870	req = c.newRequest(op, input, output)
1871	return
1872}
1873
1874// GetAccessToken API operation for AWS License Manager.
1875//
1876// Gets a temporary access token to use with AssumeRoleWithWebIdentity. Access
1877// tokens are valid for one hour.
1878//
1879// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1880// with awserr.Error's Code and Message methods to get detailed information about
1881// the error.
1882//
1883// See the AWS API reference guide for AWS License Manager's
1884// API operation GetAccessToken for usage and error information.
1885//
1886// Returned Error Types:
1887//   * ValidationException
1888//   The provided input is not valid. Try your request again.
1889//
1890//   * AuthorizationException
1891//   The Amazon Web Services user account does not have permission to perform
1892//   the action. Check the IAM policy associated with this account.
1893//
1894//   * AccessDeniedException
1895//   Access to resource denied.
1896//
1897//   * RateLimitExceededException
1898//   Too many requests have been submitted. Try again after a brief wait.
1899//
1900//   * ServerInternalException
1901//   The server experienced an internal error. Try again.
1902//
1903// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetAccessToken
1904func (c *LicenseManager) GetAccessToken(input *GetAccessTokenInput) (*GetAccessTokenOutput, error) {
1905	req, out := c.GetAccessTokenRequest(input)
1906	return out, req.Send()
1907}
1908
1909// GetAccessTokenWithContext is the same as GetAccessToken with the addition of
1910// the ability to pass a context and additional request options.
1911//
1912// See GetAccessToken for details on how to use this API operation.
1913//
1914// The context must be non-nil and will be used for request cancellation. If
1915// the context is nil a panic will occur. In the future the SDK may create
1916// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1917// for more information on using Contexts.
1918func (c *LicenseManager) GetAccessTokenWithContext(ctx aws.Context, input *GetAccessTokenInput, opts ...request.Option) (*GetAccessTokenOutput, error) {
1919	req, out := c.GetAccessTokenRequest(input)
1920	req.SetContext(ctx)
1921	req.ApplyOptions(opts...)
1922	return out, req.Send()
1923}
1924
1925const opGetGrant = "GetGrant"
1926
1927// GetGrantRequest generates a "aws/request.Request" representing the
1928// client's request for the GetGrant operation. The "output" return
1929// value will be populated with the request's response once the request completes
1930// successfully.
1931//
1932// Use "Send" method on the returned Request to send the API call to the service.
1933// the "output" return value is not valid until after Send returns without error.
1934//
1935// See GetGrant for more information on using the GetGrant
1936// API call, and error handling.
1937//
1938// This method is useful when you want to inject custom logic or configuration
1939// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1940//
1941//
1942//    // Example sending a request using the GetGrantRequest method.
1943//    req, resp := client.GetGrantRequest(params)
1944//
1945//    err := req.Send()
1946//    if err == nil { // resp is now filled
1947//        fmt.Println(resp)
1948//    }
1949//
1950// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetGrant
1951func (c *LicenseManager) GetGrantRequest(input *GetGrantInput) (req *request.Request, output *GetGrantOutput) {
1952	op := &request.Operation{
1953		Name:       opGetGrant,
1954		HTTPMethod: "POST",
1955		HTTPPath:   "/",
1956	}
1957
1958	if input == nil {
1959		input = &GetGrantInput{}
1960	}
1961
1962	output = &GetGrantOutput{}
1963	req = c.newRequest(op, input, output)
1964	return
1965}
1966
1967// GetGrant API operation for AWS License Manager.
1968//
1969// Gets detailed information about the specified grant.
1970//
1971// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1972// with awserr.Error's Code and Message methods to get detailed information about
1973// the error.
1974//
1975// See the AWS API reference guide for AWS License Manager's
1976// API operation GetGrant for usage and error information.
1977//
1978// Returned Error Types:
1979//   * ValidationException
1980//   The provided input is not valid. Try your request again.
1981//
1982//   * InvalidParameterValueException
1983//   One or more parameter values are not valid.
1984//
1985//   * ResourceLimitExceededException
1986//   Your resource limits have been exceeded.
1987//
1988//   * ServerInternalException
1989//   The server experienced an internal error. Try again.
1990//
1991//   * AuthorizationException
1992//   The Amazon Web Services user account does not have permission to perform
1993//   the action. Check the IAM policy associated with this account.
1994//
1995//   * AccessDeniedException
1996//   Access to resource denied.
1997//
1998//   * RateLimitExceededException
1999//   Too many requests have been submitted. Try again after a brief wait.
2000//
2001// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetGrant
2002func (c *LicenseManager) GetGrant(input *GetGrantInput) (*GetGrantOutput, error) {
2003	req, out := c.GetGrantRequest(input)
2004	return out, req.Send()
2005}
2006
2007// GetGrantWithContext is the same as GetGrant with the addition of
2008// the ability to pass a context and additional request options.
2009//
2010// See GetGrant for details on how to use this API operation.
2011//
2012// The context must be non-nil and will be used for request cancellation. If
2013// the context is nil a panic will occur. In the future the SDK may create
2014// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2015// for more information on using Contexts.
2016func (c *LicenseManager) GetGrantWithContext(ctx aws.Context, input *GetGrantInput, opts ...request.Option) (*GetGrantOutput, error) {
2017	req, out := c.GetGrantRequest(input)
2018	req.SetContext(ctx)
2019	req.ApplyOptions(opts...)
2020	return out, req.Send()
2021}
2022
2023const opGetLicense = "GetLicense"
2024
2025// GetLicenseRequest generates a "aws/request.Request" representing the
2026// client's request for the GetLicense operation. The "output" return
2027// value will be populated with the request's response once the request completes
2028// successfully.
2029//
2030// Use "Send" method on the returned Request to send the API call to the service.
2031// the "output" return value is not valid until after Send returns without error.
2032//
2033// See GetLicense for more information on using the GetLicense
2034// API call, and error handling.
2035//
2036// This method is useful when you want to inject custom logic or configuration
2037// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2038//
2039//
2040//    // Example sending a request using the GetLicenseRequest method.
2041//    req, resp := client.GetLicenseRequest(params)
2042//
2043//    err := req.Send()
2044//    if err == nil { // resp is now filled
2045//        fmt.Println(resp)
2046//    }
2047//
2048// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetLicense
2049func (c *LicenseManager) GetLicenseRequest(input *GetLicenseInput) (req *request.Request, output *GetLicenseOutput) {
2050	op := &request.Operation{
2051		Name:       opGetLicense,
2052		HTTPMethod: "POST",
2053		HTTPPath:   "/",
2054	}
2055
2056	if input == nil {
2057		input = &GetLicenseInput{}
2058	}
2059
2060	output = &GetLicenseOutput{}
2061	req = c.newRequest(op, input, output)
2062	return
2063}
2064
2065// GetLicense API operation for AWS License Manager.
2066//
2067// Gets detailed information about the specified license.
2068//
2069// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2070// with awserr.Error's Code and Message methods to get detailed information about
2071// the error.
2072//
2073// See the AWS API reference guide for AWS License Manager's
2074// API operation GetLicense for usage and error information.
2075//
2076// Returned Error Types:
2077//   * ValidationException
2078//   The provided input is not valid. Try your request again.
2079//
2080//   * InvalidParameterValueException
2081//   One or more parameter values are not valid.
2082//
2083//   * AuthorizationException
2084//   The Amazon Web Services user account does not have permission to perform
2085//   the action. Check the IAM policy associated with this account.
2086//
2087//   * AccessDeniedException
2088//   Access to resource denied.
2089//
2090//   * RateLimitExceededException
2091//   Too many requests have been submitted. Try again after a brief wait.
2092//
2093//   * ServerInternalException
2094//   The server experienced an internal error. Try again.
2095//
2096// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetLicense
2097func (c *LicenseManager) GetLicense(input *GetLicenseInput) (*GetLicenseOutput, error) {
2098	req, out := c.GetLicenseRequest(input)
2099	return out, req.Send()
2100}
2101
2102// GetLicenseWithContext is the same as GetLicense with the addition of
2103// the ability to pass a context and additional request options.
2104//
2105// See GetLicense for details on how to use this API operation.
2106//
2107// The context must be non-nil and will be used for request cancellation. If
2108// the context is nil a panic will occur. In the future the SDK may create
2109// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2110// for more information on using Contexts.
2111func (c *LicenseManager) GetLicenseWithContext(ctx aws.Context, input *GetLicenseInput, opts ...request.Option) (*GetLicenseOutput, error) {
2112	req, out := c.GetLicenseRequest(input)
2113	req.SetContext(ctx)
2114	req.ApplyOptions(opts...)
2115	return out, req.Send()
2116}
2117
2118const opGetLicenseConfiguration = "GetLicenseConfiguration"
2119
2120// GetLicenseConfigurationRequest generates a "aws/request.Request" representing the
2121// client's request for the GetLicenseConfiguration operation. The "output" return
2122// value will be populated with the request's response once the request completes
2123// successfully.
2124//
2125// Use "Send" method on the returned Request to send the API call to the service.
2126// the "output" return value is not valid until after Send returns without error.
2127//
2128// See GetLicenseConfiguration for more information on using the GetLicenseConfiguration
2129// API call, and error handling.
2130//
2131// This method is useful when you want to inject custom logic or configuration
2132// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2133//
2134//
2135//    // Example sending a request using the GetLicenseConfigurationRequest method.
2136//    req, resp := client.GetLicenseConfigurationRequest(params)
2137//
2138//    err := req.Send()
2139//    if err == nil { // resp is now filled
2140//        fmt.Println(resp)
2141//    }
2142//
2143// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetLicenseConfiguration
2144func (c *LicenseManager) GetLicenseConfigurationRequest(input *GetLicenseConfigurationInput) (req *request.Request, output *GetLicenseConfigurationOutput) {
2145	op := &request.Operation{
2146		Name:       opGetLicenseConfiguration,
2147		HTTPMethod: "POST",
2148		HTTPPath:   "/",
2149	}
2150
2151	if input == nil {
2152		input = &GetLicenseConfigurationInput{}
2153	}
2154
2155	output = &GetLicenseConfigurationOutput{}
2156	req = c.newRequest(op, input, output)
2157	return
2158}
2159
2160// GetLicenseConfiguration API operation for AWS License Manager.
2161//
2162// Gets detailed information about the specified license configuration.
2163//
2164// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2165// with awserr.Error's Code and Message methods to get detailed information about
2166// the error.
2167//
2168// See the AWS API reference guide for AWS License Manager's
2169// API operation GetLicenseConfiguration for usage and error information.
2170//
2171// Returned Error Types:
2172//   * InvalidParameterValueException
2173//   One or more parameter values are not valid.
2174//
2175//   * ServerInternalException
2176//   The server experienced an internal error. Try again.
2177//
2178//   * AuthorizationException
2179//   The Amazon Web Services user account does not have permission to perform
2180//   the action. Check the IAM policy associated with this account.
2181//
2182//   * AccessDeniedException
2183//   Access to resource denied.
2184//
2185//   * RateLimitExceededException
2186//   Too many requests have been submitted. Try again after a brief wait.
2187//
2188// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetLicenseConfiguration
2189func (c *LicenseManager) GetLicenseConfiguration(input *GetLicenseConfigurationInput) (*GetLicenseConfigurationOutput, error) {
2190	req, out := c.GetLicenseConfigurationRequest(input)
2191	return out, req.Send()
2192}
2193
2194// GetLicenseConfigurationWithContext is the same as GetLicenseConfiguration with the addition of
2195// the ability to pass a context and additional request options.
2196//
2197// See GetLicenseConfiguration for details on how to use this API operation.
2198//
2199// The context must be non-nil and will be used for request cancellation. If
2200// the context is nil a panic will occur. In the future the SDK may create
2201// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2202// for more information on using Contexts.
2203func (c *LicenseManager) GetLicenseConfigurationWithContext(ctx aws.Context, input *GetLicenseConfigurationInput, opts ...request.Option) (*GetLicenseConfigurationOutput, error) {
2204	req, out := c.GetLicenseConfigurationRequest(input)
2205	req.SetContext(ctx)
2206	req.ApplyOptions(opts...)
2207	return out, req.Send()
2208}
2209
2210const opGetLicenseConversionTask = "GetLicenseConversionTask"
2211
2212// GetLicenseConversionTaskRequest generates a "aws/request.Request" representing the
2213// client's request for the GetLicenseConversionTask operation. The "output" return
2214// value will be populated with the request's response once the request completes
2215// successfully.
2216//
2217// Use "Send" method on the returned Request to send the API call to the service.
2218// the "output" return value is not valid until after Send returns without error.
2219//
2220// See GetLicenseConversionTask for more information on using the GetLicenseConversionTask
2221// API call, and error handling.
2222//
2223// This method is useful when you want to inject custom logic or configuration
2224// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2225//
2226//
2227//    // Example sending a request using the GetLicenseConversionTaskRequest method.
2228//    req, resp := client.GetLicenseConversionTaskRequest(params)
2229//
2230//    err := req.Send()
2231//    if err == nil { // resp is now filled
2232//        fmt.Println(resp)
2233//    }
2234//
2235// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetLicenseConversionTask
2236func (c *LicenseManager) GetLicenseConversionTaskRequest(input *GetLicenseConversionTaskInput) (req *request.Request, output *GetLicenseConversionTaskOutput) {
2237	op := &request.Operation{
2238		Name:       opGetLicenseConversionTask,
2239		HTTPMethod: "POST",
2240		HTTPPath:   "/",
2241	}
2242
2243	if input == nil {
2244		input = &GetLicenseConversionTaskInput{}
2245	}
2246
2247	output = &GetLicenseConversionTaskOutput{}
2248	req = c.newRequest(op, input, output)
2249	return
2250}
2251
2252// GetLicenseConversionTask API operation for AWS License Manager.
2253//
2254// Gets information about the specified license type conversion task.
2255//
2256// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2257// with awserr.Error's Code and Message methods to get detailed information about
2258// the error.
2259//
2260// See the AWS API reference guide for AWS License Manager's
2261// API operation GetLicenseConversionTask for usage and error information.
2262//
2263// Returned Error Types:
2264//   * InvalidParameterValueException
2265//   One or more parameter values are not valid.
2266//
2267//   * ServerInternalException
2268//   The server experienced an internal error. Try again.
2269//
2270//   * AuthorizationException
2271//   The Amazon Web Services user account does not have permission to perform
2272//   the action. Check the IAM policy associated with this account.
2273//
2274//   * AccessDeniedException
2275//   Access to resource denied.
2276//
2277//   * RateLimitExceededException
2278//   Too many requests have been submitted. Try again after a brief wait.
2279//
2280// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetLicenseConversionTask
2281func (c *LicenseManager) GetLicenseConversionTask(input *GetLicenseConversionTaskInput) (*GetLicenseConversionTaskOutput, error) {
2282	req, out := c.GetLicenseConversionTaskRequest(input)
2283	return out, req.Send()
2284}
2285
2286// GetLicenseConversionTaskWithContext is the same as GetLicenseConversionTask with the addition of
2287// the ability to pass a context and additional request options.
2288//
2289// See GetLicenseConversionTask for details on how to use this API operation.
2290//
2291// The context must be non-nil and will be used for request cancellation. If
2292// the context is nil a panic will occur. In the future the SDK may create
2293// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2294// for more information on using Contexts.
2295func (c *LicenseManager) GetLicenseConversionTaskWithContext(ctx aws.Context, input *GetLicenseConversionTaskInput, opts ...request.Option) (*GetLicenseConversionTaskOutput, error) {
2296	req, out := c.GetLicenseConversionTaskRequest(input)
2297	req.SetContext(ctx)
2298	req.ApplyOptions(opts...)
2299	return out, req.Send()
2300}
2301
2302const opGetLicenseManagerReportGenerator = "GetLicenseManagerReportGenerator"
2303
2304// GetLicenseManagerReportGeneratorRequest generates a "aws/request.Request" representing the
2305// client's request for the GetLicenseManagerReportGenerator operation. The "output" return
2306// value will be populated with the request's response once the request completes
2307// successfully.
2308//
2309// Use "Send" method on the returned Request to send the API call to the service.
2310// the "output" return value is not valid until after Send returns without error.
2311//
2312// See GetLicenseManagerReportGenerator for more information on using the GetLicenseManagerReportGenerator
2313// API call, and error handling.
2314//
2315// This method is useful when you want to inject custom logic or configuration
2316// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2317//
2318//
2319//    // Example sending a request using the GetLicenseManagerReportGeneratorRequest method.
2320//    req, resp := client.GetLicenseManagerReportGeneratorRequest(params)
2321//
2322//    err := req.Send()
2323//    if err == nil { // resp is now filled
2324//        fmt.Println(resp)
2325//    }
2326//
2327// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetLicenseManagerReportGenerator
2328func (c *LicenseManager) GetLicenseManagerReportGeneratorRequest(input *GetLicenseManagerReportGeneratorInput) (req *request.Request, output *GetLicenseManagerReportGeneratorOutput) {
2329	op := &request.Operation{
2330		Name:       opGetLicenseManagerReportGenerator,
2331		HTTPMethod: "POST",
2332		HTTPPath:   "/",
2333	}
2334
2335	if input == nil {
2336		input = &GetLicenseManagerReportGeneratorInput{}
2337	}
2338
2339	output = &GetLicenseManagerReportGeneratorOutput{}
2340	req = c.newRequest(op, input, output)
2341	return
2342}
2343
2344// GetLicenseManagerReportGenerator API operation for AWS License Manager.
2345//
2346// Gets information about the specified report generator.
2347//
2348// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2349// with awserr.Error's Code and Message methods to get detailed information about
2350// the error.
2351//
2352// See the AWS API reference guide for AWS License Manager's
2353// API operation GetLicenseManagerReportGenerator for usage and error information.
2354//
2355// Returned Error Types:
2356//   * ValidationException
2357//   The provided input is not valid. Try your request again.
2358//
2359//   * InvalidParameterValueException
2360//   One or more parameter values are not valid.
2361//
2362//   * ResourceLimitExceededException
2363//   Your resource limits have been exceeded.
2364//
2365//   * ServerInternalException
2366//   The server experienced an internal error. Try again.
2367//
2368//   * AuthorizationException
2369//   The Amazon Web Services user account does not have permission to perform
2370//   the action. Check the IAM policy associated with this account.
2371//
2372//   * RateLimitExceededException
2373//   Too many requests have been submitted. Try again after a brief wait.
2374//
2375//   * AccessDeniedException
2376//   Access to resource denied.
2377//
2378//   * ResourceNotFoundException
2379//   The resource cannot be found.
2380//
2381// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetLicenseManagerReportGenerator
2382func (c *LicenseManager) GetLicenseManagerReportGenerator(input *GetLicenseManagerReportGeneratorInput) (*GetLicenseManagerReportGeneratorOutput, error) {
2383	req, out := c.GetLicenseManagerReportGeneratorRequest(input)
2384	return out, req.Send()
2385}
2386
2387// GetLicenseManagerReportGeneratorWithContext is the same as GetLicenseManagerReportGenerator with the addition of
2388// the ability to pass a context and additional request options.
2389//
2390// See GetLicenseManagerReportGenerator for details on how to use this API operation.
2391//
2392// The context must be non-nil and will be used for request cancellation. If
2393// the context is nil a panic will occur. In the future the SDK may create
2394// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2395// for more information on using Contexts.
2396func (c *LicenseManager) GetLicenseManagerReportGeneratorWithContext(ctx aws.Context, input *GetLicenseManagerReportGeneratorInput, opts ...request.Option) (*GetLicenseManagerReportGeneratorOutput, error) {
2397	req, out := c.GetLicenseManagerReportGeneratorRequest(input)
2398	req.SetContext(ctx)
2399	req.ApplyOptions(opts...)
2400	return out, req.Send()
2401}
2402
2403const opGetLicenseUsage = "GetLicenseUsage"
2404
2405// GetLicenseUsageRequest generates a "aws/request.Request" representing the
2406// client's request for the GetLicenseUsage operation. The "output" return
2407// value will be populated with the request's response once the request completes
2408// successfully.
2409//
2410// Use "Send" method on the returned Request to send the API call to the service.
2411// the "output" return value is not valid until after Send returns without error.
2412//
2413// See GetLicenseUsage for more information on using the GetLicenseUsage
2414// API call, and error handling.
2415//
2416// This method is useful when you want to inject custom logic or configuration
2417// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2418//
2419//
2420//    // Example sending a request using the GetLicenseUsageRequest method.
2421//    req, resp := client.GetLicenseUsageRequest(params)
2422//
2423//    err := req.Send()
2424//    if err == nil { // resp is now filled
2425//        fmt.Println(resp)
2426//    }
2427//
2428// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetLicenseUsage
2429func (c *LicenseManager) GetLicenseUsageRequest(input *GetLicenseUsageInput) (req *request.Request, output *GetLicenseUsageOutput) {
2430	op := &request.Operation{
2431		Name:       opGetLicenseUsage,
2432		HTTPMethod: "POST",
2433		HTTPPath:   "/",
2434	}
2435
2436	if input == nil {
2437		input = &GetLicenseUsageInput{}
2438	}
2439
2440	output = &GetLicenseUsageOutput{}
2441	req = c.newRequest(op, input, output)
2442	return
2443}
2444
2445// GetLicenseUsage API operation for AWS License Manager.
2446//
2447// Gets detailed information about the usage of the specified license.
2448//
2449// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2450// with awserr.Error's Code and Message methods to get detailed information about
2451// the error.
2452//
2453// See the AWS API reference guide for AWS License Manager's
2454// API operation GetLicenseUsage for usage and error information.
2455//
2456// Returned Error Types:
2457//   * ValidationException
2458//   The provided input is not valid. Try your request again.
2459//
2460//   * InvalidParameterValueException
2461//   One or more parameter values are not valid.
2462//
2463//   * AuthorizationException
2464//   The Amazon Web Services user account does not have permission to perform
2465//   the action. Check the IAM policy associated with this account.
2466//
2467//   * AccessDeniedException
2468//   Access to resource denied.
2469//
2470//   * RateLimitExceededException
2471//   Too many requests have been submitted. Try again after a brief wait.
2472//
2473//   * ServerInternalException
2474//   The server experienced an internal error. Try again.
2475//
2476// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetLicenseUsage
2477func (c *LicenseManager) GetLicenseUsage(input *GetLicenseUsageInput) (*GetLicenseUsageOutput, error) {
2478	req, out := c.GetLicenseUsageRequest(input)
2479	return out, req.Send()
2480}
2481
2482// GetLicenseUsageWithContext is the same as GetLicenseUsage with the addition of
2483// the ability to pass a context and additional request options.
2484//
2485// See GetLicenseUsage for details on how to use this API operation.
2486//
2487// The context must be non-nil and will be used for request cancellation. If
2488// the context is nil a panic will occur. In the future the SDK may create
2489// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2490// for more information on using Contexts.
2491func (c *LicenseManager) GetLicenseUsageWithContext(ctx aws.Context, input *GetLicenseUsageInput, opts ...request.Option) (*GetLicenseUsageOutput, error) {
2492	req, out := c.GetLicenseUsageRequest(input)
2493	req.SetContext(ctx)
2494	req.ApplyOptions(opts...)
2495	return out, req.Send()
2496}
2497
2498const opGetServiceSettings = "GetServiceSettings"
2499
2500// GetServiceSettingsRequest generates a "aws/request.Request" representing the
2501// client's request for the GetServiceSettings operation. The "output" return
2502// value will be populated with the request's response once the request completes
2503// successfully.
2504//
2505// Use "Send" method on the returned Request to send the API call to the service.
2506// the "output" return value is not valid until after Send returns without error.
2507//
2508// See GetServiceSettings for more information on using the GetServiceSettings
2509// API call, and error handling.
2510//
2511// This method is useful when you want to inject custom logic or configuration
2512// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2513//
2514//
2515//    // Example sending a request using the GetServiceSettingsRequest method.
2516//    req, resp := client.GetServiceSettingsRequest(params)
2517//
2518//    err := req.Send()
2519//    if err == nil { // resp is now filled
2520//        fmt.Println(resp)
2521//    }
2522//
2523// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetServiceSettings
2524func (c *LicenseManager) GetServiceSettingsRequest(input *GetServiceSettingsInput) (req *request.Request, output *GetServiceSettingsOutput) {
2525	op := &request.Operation{
2526		Name:       opGetServiceSettings,
2527		HTTPMethod: "POST",
2528		HTTPPath:   "/",
2529	}
2530
2531	if input == nil {
2532		input = &GetServiceSettingsInput{}
2533	}
2534
2535	output = &GetServiceSettingsOutput{}
2536	req = c.newRequest(op, input, output)
2537	return
2538}
2539
2540// GetServiceSettings API operation for AWS License Manager.
2541//
2542// Gets the License Manager settings for the current Region.
2543//
2544// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2545// with awserr.Error's Code and Message methods to get detailed information about
2546// the error.
2547//
2548// See the AWS API reference guide for AWS License Manager's
2549// API operation GetServiceSettings for usage and error information.
2550//
2551// Returned Error Types:
2552//   * ServerInternalException
2553//   The server experienced an internal error. Try again.
2554//
2555//   * AuthorizationException
2556//   The Amazon Web Services user account does not have permission to perform
2557//   the action. Check the IAM policy associated with this account.
2558//
2559//   * AccessDeniedException
2560//   Access to resource denied.
2561//
2562//   * RateLimitExceededException
2563//   Too many requests have been submitted. Try again after a brief wait.
2564//
2565// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetServiceSettings
2566func (c *LicenseManager) GetServiceSettings(input *GetServiceSettingsInput) (*GetServiceSettingsOutput, error) {
2567	req, out := c.GetServiceSettingsRequest(input)
2568	return out, req.Send()
2569}
2570
2571// GetServiceSettingsWithContext is the same as GetServiceSettings with the addition of
2572// the ability to pass a context and additional request options.
2573//
2574// See GetServiceSettings for details on how to use this API operation.
2575//
2576// The context must be non-nil and will be used for request cancellation. If
2577// the context is nil a panic will occur. In the future the SDK may create
2578// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2579// for more information on using Contexts.
2580func (c *LicenseManager) GetServiceSettingsWithContext(ctx aws.Context, input *GetServiceSettingsInput, opts ...request.Option) (*GetServiceSettingsOutput, error) {
2581	req, out := c.GetServiceSettingsRequest(input)
2582	req.SetContext(ctx)
2583	req.ApplyOptions(opts...)
2584	return out, req.Send()
2585}
2586
2587const opListAssociationsForLicenseConfiguration = "ListAssociationsForLicenseConfiguration"
2588
2589// ListAssociationsForLicenseConfigurationRequest generates a "aws/request.Request" representing the
2590// client's request for the ListAssociationsForLicenseConfiguration operation. The "output" return
2591// value will be populated with the request's response once the request completes
2592// successfully.
2593//
2594// Use "Send" method on the returned Request to send the API call to the service.
2595// the "output" return value is not valid until after Send returns without error.
2596//
2597// See ListAssociationsForLicenseConfiguration for more information on using the ListAssociationsForLicenseConfiguration
2598// API call, and error handling.
2599//
2600// This method is useful when you want to inject custom logic or configuration
2601// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2602//
2603//
2604//    // Example sending a request using the ListAssociationsForLicenseConfigurationRequest method.
2605//    req, resp := client.ListAssociationsForLicenseConfigurationRequest(params)
2606//
2607//    err := req.Send()
2608//    if err == nil { // resp is now filled
2609//        fmt.Println(resp)
2610//    }
2611//
2612// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListAssociationsForLicenseConfiguration
2613func (c *LicenseManager) ListAssociationsForLicenseConfigurationRequest(input *ListAssociationsForLicenseConfigurationInput) (req *request.Request, output *ListAssociationsForLicenseConfigurationOutput) {
2614	op := &request.Operation{
2615		Name:       opListAssociationsForLicenseConfiguration,
2616		HTTPMethod: "POST",
2617		HTTPPath:   "/",
2618	}
2619
2620	if input == nil {
2621		input = &ListAssociationsForLicenseConfigurationInput{}
2622	}
2623
2624	output = &ListAssociationsForLicenseConfigurationOutput{}
2625	req = c.newRequest(op, input, output)
2626	return
2627}
2628
2629// ListAssociationsForLicenseConfiguration API operation for AWS License Manager.
2630//
2631// Lists the resource associations for the specified license configuration.
2632//
2633// Resource associations need not consume licenses from a license configuration.
2634// For example, an AMI or a stopped instance might not consume a license (depending
2635// on the license rules).
2636//
2637// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2638// with awserr.Error's Code and Message methods to get detailed information about
2639// the error.
2640//
2641// See the AWS API reference guide for AWS License Manager's
2642// API operation ListAssociationsForLicenseConfiguration for usage and error information.
2643//
2644// Returned Error Types:
2645//   * InvalidParameterValueException
2646//   One or more parameter values are not valid.
2647//
2648//   * FilterLimitExceededException
2649//   The request uses too many filters or too many filter values.
2650//
2651//   * ServerInternalException
2652//   The server experienced an internal error. Try again.
2653//
2654//   * AuthorizationException
2655//   The Amazon Web Services user account does not have permission to perform
2656//   the action. Check the IAM policy associated with this account.
2657//
2658//   * AccessDeniedException
2659//   Access to resource denied.
2660//
2661//   * RateLimitExceededException
2662//   Too many requests have been submitted. Try again after a brief wait.
2663//
2664// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListAssociationsForLicenseConfiguration
2665func (c *LicenseManager) ListAssociationsForLicenseConfiguration(input *ListAssociationsForLicenseConfigurationInput) (*ListAssociationsForLicenseConfigurationOutput, error) {
2666	req, out := c.ListAssociationsForLicenseConfigurationRequest(input)
2667	return out, req.Send()
2668}
2669
2670// ListAssociationsForLicenseConfigurationWithContext is the same as ListAssociationsForLicenseConfiguration with the addition of
2671// the ability to pass a context and additional request options.
2672//
2673// See ListAssociationsForLicenseConfiguration for details on how to use this API operation.
2674//
2675// The context must be non-nil and will be used for request cancellation. If
2676// the context is nil a panic will occur. In the future the SDK may create
2677// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2678// for more information on using Contexts.
2679func (c *LicenseManager) ListAssociationsForLicenseConfigurationWithContext(ctx aws.Context, input *ListAssociationsForLicenseConfigurationInput, opts ...request.Option) (*ListAssociationsForLicenseConfigurationOutput, error) {
2680	req, out := c.ListAssociationsForLicenseConfigurationRequest(input)
2681	req.SetContext(ctx)
2682	req.ApplyOptions(opts...)
2683	return out, req.Send()
2684}
2685
2686const opListDistributedGrants = "ListDistributedGrants"
2687
2688// ListDistributedGrantsRequest generates a "aws/request.Request" representing the
2689// client's request for the ListDistributedGrants operation. The "output" return
2690// value will be populated with the request's response once the request completes
2691// successfully.
2692//
2693// Use "Send" method on the returned Request to send the API call to the service.
2694// the "output" return value is not valid until after Send returns without error.
2695//
2696// See ListDistributedGrants for more information on using the ListDistributedGrants
2697// API call, and error handling.
2698//
2699// This method is useful when you want to inject custom logic or configuration
2700// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2701//
2702//
2703//    // Example sending a request using the ListDistributedGrantsRequest method.
2704//    req, resp := client.ListDistributedGrantsRequest(params)
2705//
2706//    err := req.Send()
2707//    if err == nil { // resp is now filled
2708//        fmt.Println(resp)
2709//    }
2710//
2711// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListDistributedGrants
2712func (c *LicenseManager) ListDistributedGrantsRequest(input *ListDistributedGrantsInput) (req *request.Request, output *ListDistributedGrantsOutput) {
2713	op := &request.Operation{
2714		Name:       opListDistributedGrants,
2715		HTTPMethod: "POST",
2716		HTTPPath:   "/",
2717	}
2718
2719	if input == nil {
2720		input = &ListDistributedGrantsInput{}
2721	}
2722
2723	output = &ListDistributedGrantsOutput{}
2724	req = c.newRequest(op, input, output)
2725	return
2726}
2727
2728// ListDistributedGrants API operation for AWS License Manager.
2729//
2730// Lists the grants distributed for the specified license.
2731//
2732// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2733// with awserr.Error's Code and Message methods to get detailed information about
2734// the error.
2735//
2736// See the AWS API reference guide for AWS License Manager's
2737// API operation ListDistributedGrants for usage and error information.
2738//
2739// Returned Error Types:
2740//   * ValidationException
2741//   The provided input is not valid. Try your request again.
2742//
2743//   * InvalidParameterValueException
2744//   One or more parameter values are not valid.
2745//
2746//   * ResourceLimitExceededException
2747//   Your resource limits have been exceeded.
2748//
2749//   * ServerInternalException
2750//   The server experienced an internal error. Try again.
2751//
2752//   * AuthorizationException
2753//   The Amazon Web Services user account does not have permission to perform
2754//   the action. Check the IAM policy associated with this account.
2755//
2756//   * AccessDeniedException
2757//   Access to resource denied.
2758//
2759//   * RateLimitExceededException
2760//   Too many requests have been submitted. Try again after a brief wait.
2761//
2762// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListDistributedGrants
2763func (c *LicenseManager) ListDistributedGrants(input *ListDistributedGrantsInput) (*ListDistributedGrantsOutput, error) {
2764	req, out := c.ListDistributedGrantsRequest(input)
2765	return out, req.Send()
2766}
2767
2768// ListDistributedGrantsWithContext is the same as ListDistributedGrants with the addition of
2769// the ability to pass a context and additional request options.
2770//
2771// See ListDistributedGrants for details on how to use this API operation.
2772//
2773// The context must be non-nil and will be used for request cancellation. If
2774// the context is nil a panic will occur. In the future the SDK may create
2775// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2776// for more information on using Contexts.
2777func (c *LicenseManager) ListDistributedGrantsWithContext(ctx aws.Context, input *ListDistributedGrantsInput, opts ...request.Option) (*ListDistributedGrantsOutput, error) {
2778	req, out := c.ListDistributedGrantsRequest(input)
2779	req.SetContext(ctx)
2780	req.ApplyOptions(opts...)
2781	return out, req.Send()
2782}
2783
2784const opListFailuresForLicenseConfigurationOperations = "ListFailuresForLicenseConfigurationOperations"
2785
2786// ListFailuresForLicenseConfigurationOperationsRequest generates a "aws/request.Request" representing the
2787// client's request for the ListFailuresForLicenseConfigurationOperations operation. The "output" return
2788// value will be populated with the request's response once the request completes
2789// successfully.
2790//
2791// Use "Send" method on the returned Request to send the API call to the service.
2792// the "output" return value is not valid until after Send returns without error.
2793//
2794// See ListFailuresForLicenseConfigurationOperations for more information on using the ListFailuresForLicenseConfigurationOperations
2795// API call, and error handling.
2796//
2797// This method is useful when you want to inject custom logic or configuration
2798// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2799//
2800//
2801//    // Example sending a request using the ListFailuresForLicenseConfigurationOperationsRequest method.
2802//    req, resp := client.ListFailuresForLicenseConfigurationOperationsRequest(params)
2803//
2804//    err := req.Send()
2805//    if err == nil { // resp is now filled
2806//        fmt.Println(resp)
2807//    }
2808//
2809// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListFailuresForLicenseConfigurationOperations
2810func (c *LicenseManager) ListFailuresForLicenseConfigurationOperationsRequest(input *ListFailuresForLicenseConfigurationOperationsInput) (req *request.Request, output *ListFailuresForLicenseConfigurationOperationsOutput) {
2811	op := &request.Operation{
2812		Name:       opListFailuresForLicenseConfigurationOperations,
2813		HTTPMethod: "POST",
2814		HTTPPath:   "/",
2815	}
2816
2817	if input == nil {
2818		input = &ListFailuresForLicenseConfigurationOperationsInput{}
2819	}
2820
2821	output = &ListFailuresForLicenseConfigurationOperationsOutput{}
2822	req = c.newRequest(op, input, output)
2823	return
2824}
2825
2826// ListFailuresForLicenseConfigurationOperations API operation for AWS License Manager.
2827//
2828// Lists the license configuration operations that failed.
2829//
2830// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2831// with awserr.Error's Code and Message methods to get detailed information about
2832// the error.
2833//
2834// See the AWS API reference guide for AWS License Manager's
2835// API operation ListFailuresForLicenseConfigurationOperations for usage and error information.
2836//
2837// Returned Error Types:
2838//   * InvalidParameterValueException
2839//   One or more parameter values are not valid.
2840//
2841//   * ServerInternalException
2842//   The server experienced an internal error. Try again.
2843//
2844//   * AuthorizationException
2845//   The Amazon Web Services user account does not have permission to perform
2846//   the action. Check the IAM policy associated with this account.
2847//
2848//   * AccessDeniedException
2849//   Access to resource denied.
2850//
2851//   * RateLimitExceededException
2852//   Too many requests have been submitted. Try again after a brief wait.
2853//
2854// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListFailuresForLicenseConfigurationOperations
2855func (c *LicenseManager) ListFailuresForLicenseConfigurationOperations(input *ListFailuresForLicenseConfigurationOperationsInput) (*ListFailuresForLicenseConfigurationOperationsOutput, error) {
2856	req, out := c.ListFailuresForLicenseConfigurationOperationsRequest(input)
2857	return out, req.Send()
2858}
2859
2860// ListFailuresForLicenseConfigurationOperationsWithContext is the same as ListFailuresForLicenseConfigurationOperations with the addition of
2861// the ability to pass a context and additional request options.
2862//
2863// See ListFailuresForLicenseConfigurationOperations for details on how to use this API operation.
2864//
2865// The context must be non-nil and will be used for request cancellation. If
2866// the context is nil a panic will occur. In the future the SDK may create
2867// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2868// for more information on using Contexts.
2869func (c *LicenseManager) ListFailuresForLicenseConfigurationOperationsWithContext(ctx aws.Context, input *ListFailuresForLicenseConfigurationOperationsInput, opts ...request.Option) (*ListFailuresForLicenseConfigurationOperationsOutput, error) {
2870	req, out := c.ListFailuresForLicenseConfigurationOperationsRequest(input)
2871	req.SetContext(ctx)
2872	req.ApplyOptions(opts...)
2873	return out, req.Send()
2874}
2875
2876const opListLicenseConfigurations = "ListLicenseConfigurations"
2877
2878// ListLicenseConfigurationsRequest generates a "aws/request.Request" representing the
2879// client's request for the ListLicenseConfigurations operation. The "output" return
2880// value will be populated with the request's response once the request completes
2881// successfully.
2882//
2883// Use "Send" method on the returned Request to send the API call to the service.
2884// the "output" return value is not valid until after Send returns without error.
2885//
2886// See ListLicenseConfigurations for more information on using the ListLicenseConfigurations
2887// API call, and error handling.
2888//
2889// This method is useful when you want to inject custom logic or configuration
2890// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2891//
2892//
2893//    // Example sending a request using the ListLicenseConfigurationsRequest method.
2894//    req, resp := client.ListLicenseConfigurationsRequest(params)
2895//
2896//    err := req.Send()
2897//    if err == nil { // resp is now filled
2898//        fmt.Println(resp)
2899//    }
2900//
2901// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListLicenseConfigurations
2902func (c *LicenseManager) ListLicenseConfigurationsRequest(input *ListLicenseConfigurationsInput) (req *request.Request, output *ListLicenseConfigurationsOutput) {
2903	op := &request.Operation{
2904		Name:       opListLicenseConfigurations,
2905		HTTPMethod: "POST",
2906		HTTPPath:   "/",
2907	}
2908
2909	if input == nil {
2910		input = &ListLicenseConfigurationsInput{}
2911	}
2912
2913	output = &ListLicenseConfigurationsOutput{}
2914	req = c.newRequest(op, input, output)
2915	return
2916}
2917
2918// ListLicenseConfigurations API operation for AWS License Manager.
2919//
2920// Lists the license configurations for your account.
2921//
2922// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2923// with awserr.Error's Code and Message methods to get detailed information about
2924// the error.
2925//
2926// See the AWS API reference guide for AWS License Manager's
2927// API operation ListLicenseConfigurations for usage and error information.
2928//
2929// Returned Error Types:
2930//   * InvalidParameterValueException
2931//   One or more parameter values are not valid.
2932//
2933//   * ServerInternalException
2934//   The server experienced an internal error. Try again.
2935//
2936//   * FilterLimitExceededException
2937//   The request uses too many filters or too many filter values.
2938//
2939//   * AuthorizationException
2940//   The Amazon Web Services user account does not have permission to perform
2941//   the action. Check the IAM policy associated with this account.
2942//
2943//   * AccessDeniedException
2944//   Access to resource denied.
2945//
2946//   * RateLimitExceededException
2947//   Too many requests have been submitted. Try again after a brief wait.
2948//
2949// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListLicenseConfigurations
2950func (c *LicenseManager) ListLicenseConfigurations(input *ListLicenseConfigurationsInput) (*ListLicenseConfigurationsOutput, error) {
2951	req, out := c.ListLicenseConfigurationsRequest(input)
2952	return out, req.Send()
2953}
2954
2955// ListLicenseConfigurationsWithContext is the same as ListLicenseConfigurations with the addition of
2956// the ability to pass a context and additional request options.
2957//
2958// See ListLicenseConfigurations for details on how to use this API operation.
2959//
2960// The context must be non-nil and will be used for request cancellation. If
2961// the context is nil a panic will occur. In the future the SDK may create
2962// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2963// for more information on using Contexts.
2964func (c *LicenseManager) ListLicenseConfigurationsWithContext(ctx aws.Context, input *ListLicenseConfigurationsInput, opts ...request.Option) (*ListLicenseConfigurationsOutput, error) {
2965	req, out := c.ListLicenseConfigurationsRequest(input)
2966	req.SetContext(ctx)
2967	req.ApplyOptions(opts...)
2968	return out, req.Send()
2969}
2970
2971const opListLicenseConversionTasks = "ListLicenseConversionTasks"
2972
2973// ListLicenseConversionTasksRequest generates a "aws/request.Request" representing the
2974// client's request for the ListLicenseConversionTasks operation. The "output" return
2975// value will be populated with the request's response once the request completes
2976// successfully.
2977//
2978// Use "Send" method on the returned Request to send the API call to the service.
2979// the "output" return value is not valid until after Send returns without error.
2980//
2981// See ListLicenseConversionTasks for more information on using the ListLicenseConversionTasks
2982// API call, and error handling.
2983//
2984// This method is useful when you want to inject custom logic or configuration
2985// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2986//
2987//
2988//    // Example sending a request using the ListLicenseConversionTasksRequest method.
2989//    req, resp := client.ListLicenseConversionTasksRequest(params)
2990//
2991//    err := req.Send()
2992//    if err == nil { // resp is now filled
2993//        fmt.Println(resp)
2994//    }
2995//
2996// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListLicenseConversionTasks
2997func (c *LicenseManager) ListLicenseConversionTasksRequest(input *ListLicenseConversionTasksInput) (req *request.Request, output *ListLicenseConversionTasksOutput) {
2998	op := &request.Operation{
2999		Name:       opListLicenseConversionTasks,
3000		HTTPMethod: "POST",
3001		HTTPPath:   "/",
3002	}
3003
3004	if input == nil {
3005		input = &ListLicenseConversionTasksInput{}
3006	}
3007
3008	output = &ListLicenseConversionTasksOutput{}
3009	req = c.newRequest(op, input, output)
3010	return
3011}
3012
3013// ListLicenseConversionTasks API operation for AWS License Manager.
3014//
3015// Lists the license type conversion tasks for your account.
3016//
3017// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3018// with awserr.Error's Code and Message methods to get detailed information about
3019// the error.
3020//
3021// See the AWS API reference guide for AWS License Manager's
3022// API operation ListLicenseConversionTasks for usage and error information.
3023//
3024// Returned Error Types:
3025//   * InvalidParameterValueException
3026//   One or more parameter values are not valid.
3027//
3028//   * ServerInternalException
3029//   The server experienced an internal error. Try again.
3030//
3031//   * AuthorizationException
3032//   The Amazon Web Services user account does not have permission to perform
3033//   the action. Check the IAM policy associated with this account.
3034//
3035//   * AccessDeniedException
3036//   Access to resource denied.
3037//
3038//   * RateLimitExceededException
3039//   Too many requests have been submitted. Try again after a brief wait.
3040//
3041// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListLicenseConversionTasks
3042func (c *LicenseManager) ListLicenseConversionTasks(input *ListLicenseConversionTasksInput) (*ListLicenseConversionTasksOutput, error) {
3043	req, out := c.ListLicenseConversionTasksRequest(input)
3044	return out, req.Send()
3045}
3046
3047// ListLicenseConversionTasksWithContext is the same as ListLicenseConversionTasks with the addition of
3048// the ability to pass a context and additional request options.
3049//
3050// See ListLicenseConversionTasks for details on how to use this API operation.
3051//
3052// The context must be non-nil and will be used for request cancellation. If
3053// the context is nil a panic will occur. In the future the SDK may create
3054// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3055// for more information on using Contexts.
3056func (c *LicenseManager) ListLicenseConversionTasksWithContext(ctx aws.Context, input *ListLicenseConversionTasksInput, opts ...request.Option) (*ListLicenseConversionTasksOutput, error) {
3057	req, out := c.ListLicenseConversionTasksRequest(input)
3058	req.SetContext(ctx)
3059	req.ApplyOptions(opts...)
3060	return out, req.Send()
3061}
3062
3063const opListLicenseManagerReportGenerators = "ListLicenseManagerReportGenerators"
3064
3065// ListLicenseManagerReportGeneratorsRequest generates a "aws/request.Request" representing the
3066// client's request for the ListLicenseManagerReportGenerators operation. The "output" return
3067// value will be populated with the request's response once the request completes
3068// successfully.
3069//
3070// Use "Send" method on the returned Request to send the API call to the service.
3071// the "output" return value is not valid until after Send returns without error.
3072//
3073// See ListLicenseManagerReportGenerators for more information on using the ListLicenseManagerReportGenerators
3074// API call, and error handling.
3075//
3076// This method is useful when you want to inject custom logic or configuration
3077// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3078//
3079//
3080//    // Example sending a request using the ListLicenseManagerReportGeneratorsRequest method.
3081//    req, resp := client.ListLicenseManagerReportGeneratorsRequest(params)
3082//
3083//    err := req.Send()
3084//    if err == nil { // resp is now filled
3085//        fmt.Println(resp)
3086//    }
3087//
3088// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListLicenseManagerReportGenerators
3089func (c *LicenseManager) ListLicenseManagerReportGeneratorsRequest(input *ListLicenseManagerReportGeneratorsInput) (req *request.Request, output *ListLicenseManagerReportGeneratorsOutput) {
3090	op := &request.Operation{
3091		Name:       opListLicenseManagerReportGenerators,
3092		HTTPMethod: "POST",
3093		HTTPPath:   "/",
3094	}
3095
3096	if input == nil {
3097		input = &ListLicenseManagerReportGeneratorsInput{}
3098	}
3099
3100	output = &ListLicenseManagerReportGeneratorsOutput{}
3101	req = c.newRequest(op, input, output)
3102	return
3103}
3104
3105// ListLicenseManagerReportGenerators API operation for AWS License Manager.
3106//
3107// Lists the report generators for your account.
3108//
3109// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3110// with awserr.Error's Code and Message methods to get detailed information about
3111// the error.
3112//
3113// See the AWS API reference guide for AWS License Manager's
3114// API operation ListLicenseManagerReportGenerators for usage and error information.
3115//
3116// Returned Error Types:
3117//   * ValidationException
3118//   The provided input is not valid. Try your request again.
3119//
3120//   * InvalidParameterValueException
3121//   One or more parameter values are not valid.
3122//
3123//   * ResourceLimitExceededException
3124//   Your resource limits have been exceeded.
3125//
3126//   * ServerInternalException
3127//   The server experienced an internal error. Try again.
3128//
3129//   * AuthorizationException
3130//   The Amazon Web Services user account does not have permission to perform
3131//   the action. Check the IAM policy associated with this account.
3132//
3133//   * RateLimitExceededException
3134//   Too many requests have been submitted. Try again after a brief wait.
3135//
3136//   * AccessDeniedException
3137//   Access to resource denied.
3138//
3139//   * ResourceNotFoundException
3140//   The resource cannot be found.
3141//
3142// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListLicenseManagerReportGenerators
3143func (c *LicenseManager) ListLicenseManagerReportGenerators(input *ListLicenseManagerReportGeneratorsInput) (*ListLicenseManagerReportGeneratorsOutput, error) {
3144	req, out := c.ListLicenseManagerReportGeneratorsRequest(input)
3145	return out, req.Send()
3146}
3147
3148// ListLicenseManagerReportGeneratorsWithContext is the same as ListLicenseManagerReportGenerators with the addition of
3149// the ability to pass a context and additional request options.
3150//
3151// See ListLicenseManagerReportGenerators for details on how to use this API operation.
3152//
3153// The context must be non-nil and will be used for request cancellation. If
3154// the context is nil a panic will occur. In the future the SDK may create
3155// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3156// for more information on using Contexts.
3157func (c *LicenseManager) ListLicenseManagerReportGeneratorsWithContext(ctx aws.Context, input *ListLicenseManagerReportGeneratorsInput, opts ...request.Option) (*ListLicenseManagerReportGeneratorsOutput, error) {
3158	req, out := c.ListLicenseManagerReportGeneratorsRequest(input)
3159	req.SetContext(ctx)
3160	req.ApplyOptions(opts...)
3161	return out, req.Send()
3162}
3163
3164const opListLicenseSpecificationsForResource = "ListLicenseSpecificationsForResource"
3165
3166// ListLicenseSpecificationsForResourceRequest generates a "aws/request.Request" representing the
3167// client's request for the ListLicenseSpecificationsForResource operation. The "output" return
3168// value will be populated with the request's response once the request completes
3169// successfully.
3170//
3171// Use "Send" method on the returned Request to send the API call to the service.
3172// the "output" return value is not valid until after Send returns without error.
3173//
3174// See ListLicenseSpecificationsForResource for more information on using the ListLicenseSpecificationsForResource
3175// API call, and error handling.
3176//
3177// This method is useful when you want to inject custom logic or configuration
3178// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3179//
3180//
3181//    // Example sending a request using the ListLicenseSpecificationsForResourceRequest method.
3182//    req, resp := client.ListLicenseSpecificationsForResourceRequest(params)
3183//
3184//    err := req.Send()
3185//    if err == nil { // resp is now filled
3186//        fmt.Println(resp)
3187//    }
3188//
3189// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListLicenseSpecificationsForResource
3190func (c *LicenseManager) ListLicenseSpecificationsForResourceRequest(input *ListLicenseSpecificationsForResourceInput) (req *request.Request, output *ListLicenseSpecificationsForResourceOutput) {
3191	op := &request.Operation{
3192		Name:       opListLicenseSpecificationsForResource,
3193		HTTPMethod: "POST",
3194		HTTPPath:   "/",
3195	}
3196
3197	if input == nil {
3198		input = &ListLicenseSpecificationsForResourceInput{}
3199	}
3200
3201	output = &ListLicenseSpecificationsForResourceOutput{}
3202	req = c.newRequest(op, input, output)
3203	return
3204}
3205
3206// ListLicenseSpecificationsForResource API operation for AWS License Manager.
3207//
3208// Describes the license configurations for the specified resource.
3209//
3210// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3211// with awserr.Error's Code and Message methods to get detailed information about
3212// the error.
3213//
3214// See the AWS API reference guide for AWS License Manager's
3215// API operation ListLicenseSpecificationsForResource for usage and error information.
3216//
3217// Returned Error Types:
3218//   * InvalidParameterValueException
3219//   One or more parameter values are not valid.
3220//
3221//   * ServerInternalException
3222//   The server experienced an internal error. Try again.
3223//
3224//   * AuthorizationException
3225//   The Amazon Web Services user account does not have permission to perform
3226//   the action. Check the IAM policy associated with this account.
3227//
3228//   * AccessDeniedException
3229//   Access to resource denied.
3230//
3231//   * RateLimitExceededException
3232//   Too many requests have been submitted. Try again after a brief wait.
3233//
3234// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListLicenseSpecificationsForResource
3235func (c *LicenseManager) ListLicenseSpecificationsForResource(input *ListLicenseSpecificationsForResourceInput) (*ListLicenseSpecificationsForResourceOutput, error) {
3236	req, out := c.ListLicenseSpecificationsForResourceRequest(input)
3237	return out, req.Send()
3238}
3239
3240// ListLicenseSpecificationsForResourceWithContext is the same as ListLicenseSpecificationsForResource with the addition of
3241// the ability to pass a context and additional request options.
3242//
3243// See ListLicenseSpecificationsForResource for details on how to use this API operation.
3244//
3245// The context must be non-nil and will be used for request cancellation. If
3246// the context is nil a panic will occur. In the future the SDK may create
3247// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3248// for more information on using Contexts.
3249func (c *LicenseManager) ListLicenseSpecificationsForResourceWithContext(ctx aws.Context, input *ListLicenseSpecificationsForResourceInput, opts ...request.Option) (*ListLicenseSpecificationsForResourceOutput, error) {
3250	req, out := c.ListLicenseSpecificationsForResourceRequest(input)
3251	req.SetContext(ctx)
3252	req.ApplyOptions(opts...)
3253	return out, req.Send()
3254}
3255
3256const opListLicenseVersions = "ListLicenseVersions"
3257
3258// ListLicenseVersionsRequest generates a "aws/request.Request" representing the
3259// client's request for the ListLicenseVersions operation. The "output" return
3260// value will be populated with the request's response once the request completes
3261// successfully.
3262//
3263// Use "Send" method on the returned Request to send the API call to the service.
3264// the "output" return value is not valid until after Send returns without error.
3265//
3266// See ListLicenseVersions for more information on using the ListLicenseVersions
3267// API call, and error handling.
3268//
3269// This method is useful when you want to inject custom logic or configuration
3270// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3271//
3272//
3273//    // Example sending a request using the ListLicenseVersionsRequest method.
3274//    req, resp := client.ListLicenseVersionsRequest(params)
3275//
3276//    err := req.Send()
3277//    if err == nil { // resp is now filled
3278//        fmt.Println(resp)
3279//    }
3280//
3281// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListLicenseVersions
3282func (c *LicenseManager) ListLicenseVersionsRequest(input *ListLicenseVersionsInput) (req *request.Request, output *ListLicenseVersionsOutput) {
3283	op := &request.Operation{
3284		Name:       opListLicenseVersions,
3285		HTTPMethod: "POST",
3286		HTTPPath:   "/",
3287	}
3288
3289	if input == nil {
3290		input = &ListLicenseVersionsInput{}
3291	}
3292
3293	output = &ListLicenseVersionsOutput{}
3294	req = c.newRequest(op, input, output)
3295	return
3296}
3297
3298// ListLicenseVersions API operation for AWS License Manager.
3299//
3300// Lists all versions of the specified license.
3301//
3302// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3303// with awserr.Error's Code and Message methods to get detailed information about
3304// the error.
3305//
3306// See the AWS API reference guide for AWS License Manager's
3307// API operation ListLicenseVersions for usage and error information.
3308//
3309// Returned Error Types:
3310//   * InvalidParameterValueException
3311//   One or more parameter values are not valid.
3312//
3313//   * AuthorizationException
3314//   The Amazon Web Services user account does not have permission to perform
3315//   the action. Check the IAM policy associated with this account.
3316//
3317//   * AccessDeniedException
3318//   Access to resource denied.
3319//
3320//   * RateLimitExceededException
3321//   Too many requests have been submitted. Try again after a brief wait.
3322//
3323//   * ServerInternalException
3324//   The server experienced an internal error. Try again.
3325//
3326// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListLicenseVersions
3327func (c *LicenseManager) ListLicenseVersions(input *ListLicenseVersionsInput) (*ListLicenseVersionsOutput, error) {
3328	req, out := c.ListLicenseVersionsRequest(input)
3329	return out, req.Send()
3330}
3331
3332// ListLicenseVersionsWithContext is the same as ListLicenseVersions with the addition of
3333// the ability to pass a context and additional request options.
3334//
3335// See ListLicenseVersions for details on how to use this API operation.
3336//
3337// The context must be non-nil and will be used for request cancellation. If
3338// the context is nil a panic will occur. In the future the SDK may create
3339// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3340// for more information on using Contexts.
3341func (c *LicenseManager) ListLicenseVersionsWithContext(ctx aws.Context, input *ListLicenseVersionsInput, opts ...request.Option) (*ListLicenseVersionsOutput, error) {
3342	req, out := c.ListLicenseVersionsRequest(input)
3343	req.SetContext(ctx)
3344	req.ApplyOptions(opts...)
3345	return out, req.Send()
3346}
3347
3348const opListLicenses = "ListLicenses"
3349
3350// ListLicensesRequest generates a "aws/request.Request" representing the
3351// client's request for the ListLicenses operation. The "output" return
3352// value will be populated with the request's response once the request completes
3353// successfully.
3354//
3355// Use "Send" method on the returned Request to send the API call to the service.
3356// the "output" return value is not valid until after Send returns without error.
3357//
3358// See ListLicenses for more information on using the ListLicenses
3359// API call, and error handling.
3360//
3361// This method is useful when you want to inject custom logic or configuration
3362// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3363//
3364//
3365//    // Example sending a request using the ListLicensesRequest method.
3366//    req, resp := client.ListLicensesRequest(params)
3367//
3368//    err := req.Send()
3369//    if err == nil { // resp is now filled
3370//        fmt.Println(resp)
3371//    }
3372//
3373// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListLicenses
3374func (c *LicenseManager) ListLicensesRequest(input *ListLicensesInput) (req *request.Request, output *ListLicensesOutput) {
3375	op := &request.Operation{
3376		Name:       opListLicenses,
3377		HTTPMethod: "POST",
3378		HTTPPath:   "/",
3379	}
3380
3381	if input == nil {
3382		input = &ListLicensesInput{}
3383	}
3384
3385	output = &ListLicensesOutput{}
3386	req = c.newRequest(op, input, output)
3387	return
3388}
3389
3390// ListLicenses API operation for AWS License Manager.
3391//
3392// Lists the licenses for your account.
3393//
3394// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3395// with awserr.Error's Code and Message methods to get detailed information about
3396// the error.
3397//
3398// See the AWS API reference guide for AWS License Manager's
3399// API operation ListLicenses for usage and error information.
3400//
3401// Returned Error Types:
3402//   * ValidationException
3403//   The provided input is not valid. Try your request again.
3404//
3405//   * InvalidParameterValueException
3406//   One or more parameter values are not valid.
3407//
3408//   * AuthorizationException
3409//   The Amazon Web Services user account does not have permission to perform
3410//   the action. Check the IAM policy associated with this account.
3411//
3412//   * AccessDeniedException
3413//   Access to resource denied.
3414//
3415//   * RateLimitExceededException
3416//   Too many requests have been submitted. Try again after a brief wait.
3417//
3418//   * ServerInternalException
3419//   The server experienced an internal error. Try again.
3420//
3421// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListLicenses
3422func (c *LicenseManager) ListLicenses(input *ListLicensesInput) (*ListLicensesOutput, error) {
3423	req, out := c.ListLicensesRequest(input)
3424	return out, req.Send()
3425}
3426
3427// ListLicensesWithContext is the same as ListLicenses with the addition of
3428// the ability to pass a context and additional request options.
3429//
3430// See ListLicenses for details on how to use this API operation.
3431//
3432// The context must be non-nil and will be used for request cancellation. If
3433// the context is nil a panic will occur. In the future the SDK may create
3434// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3435// for more information on using Contexts.
3436func (c *LicenseManager) ListLicensesWithContext(ctx aws.Context, input *ListLicensesInput, opts ...request.Option) (*ListLicensesOutput, error) {
3437	req, out := c.ListLicensesRequest(input)
3438	req.SetContext(ctx)
3439	req.ApplyOptions(opts...)
3440	return out, req.Send()
3441}
3442
3443const opListReceivedGrants = "ListReceivedGrants"
3444
3445// ListReceivedGrantsRequest generates a "aws/request.Request" representing the
3446// client's request for the ListReceivedGrants operation. The "output" return
3447// value will be populated with the request's response once the request completes
3448// successfully.
3449//
3450// Use "Send" method on the returned Request to send the API call to the service.
3451// the "output" return value is not valid until after Send returns without error.
3452//
3453// See ListReceivedGrants for more information on using the ListReceivedGrants
3454// API call, and error handling.
3455//
3456// This method is useful when you want to inject custom logic or configuration
3457// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3458//
3459//
3460//    // Example sending a request using the ListReceivedGrantsRequest method.
3461//    req, resp := client.ListReceivedGrantsRequest(params)
3462//
3463//    err := req.Send()
3464//    if err == nil { // resp is now filled
3465//        fmt.Println(resp)
3466//    }
3467//
3468// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListReceivedGrants
3469func (c *LicenseManager) ListReceivedGrantsRequest(input *ListReceivedGrantsInput) (req *request.Request, output *ListReceivedGrantsOutput) {
3470	op := &request.Operation{
3471		Name:       opListReceivedGrants,
3472		HTTPMethod: "POST",
3473		HTTPPath:   "/",
3474	}
3475
3476	if input == nil {
3477		input = &ListReceivedGrantsInput{}
3478	}
3479
3480	output = &ListReceivedGrantsOutput{}
3481	req = c.newRequest(op, input, output)
3482	return
3483}
3484
3485// ListReceivedGrants API operation for AWS License Manager.
3486//
3487// Lists grants that are received but not accepted.
3488//
3489// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3490// with awserr.Error's Code and Message methods to get detailed information about
3491// the error.
3492//
3493// See the AWS API reference guide for AWS License Manager's
3494// API operation ListReceivedGrants for usage and error information.
3495//
3496// Returned Error Types:
3497//   * ValidationException
3498//   The provided input is not valid. Try your request again.
3499//
3500//   * InvalidParameterValueException
3501//   One or more parameter values are not valid.
3502//
3503//   * ResourceLimitExceededException
3504//   Your resource limits have been exceeded.
3505//
3506//   * ServerInternalException
3507//   The server experienced an internal error. Try again.
3508//
3509//   * AuthorizationException
3510//   The Amazon Web Services user account does not have permission to perform
3511//   the action. Check the IAM policy associated with this account.
3512//
3513//   * AccessDeniedException
3514//   Access to resource denied.
3515//
3516//   * RateLimitExceededException
3517//   Too many requests have been submitted. Try again after a brief wait.
3518//
3519// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListReceivedGrants
3520func (c *LicenseManager) ListReceivedGrants(input *ListReceivedGrantsInput) (*ListReceivedGrantsOutput, error) {
3521	req, out := c.ListReceivedGrantsRequest(input)
3522	return out, req.Send()
3523}
3524
3525// ListReceivedGrantsWithContext is the same as ListReceivedGrants with the addition of
3526// the ability to pass a context and additional request options.
3527//
3528// See ListReceivedGrants for details on how to use this API operation.
3529//
3530// The context must be non-nil and will be used for request cancellation. If
3531// the context is nil a panic will occur. In the future the SDK may create
3532// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3533// for more information on using Contexts.
3534func (c *LicenseManager) ListReceivedGrantsWithContext(ctx aws.Context, input *ListReceivedGrantsInput, opts ...request.Option) (*ListReceivedGrantsOutput, error) {
3535	req, out := c.ListReceivedGrantsRequest(input)
3536	req.SetContext(ctx)
3537	req.ApplyOptions(opts...)
3538	return out, req.Send()
3539}
3540
3541const opListReceivedLicenses = "ListReceivedLicenses"
3542
3543// ListReceivedLicensesRequest generates a "aws/request.Request" representing the
3544// client's request for the ListReceivedLicenses operation. The "output" return
3545// value will be populated with the request's response once the request completes
3546// successfully.
3547//
3548// Use "Send" method on the returned Request to send the API call to the service.
3549// the "output" return value is not valid until after Send returns without error.
3550//
3551// See ListReceivedLicenses for more information on using the ListReceivedLicenses
3552// API call, and error handling.
3553//
3554// This method is useful when you want to inject custom logic or configuration
3555// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3556//
3557//
3558//    // Example sending a request using the ListReceivedLicensesRequest method.
3559//    req, resp := client.ListReceivedLicensesRequest(params)
3560//
3561//    err := req.Send()
3562//    if err == nil { // resp is now filled
3563//        fmt.Println(resp)
3564//    }
3565//
3566// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListReceivedLicenses
3567func (c *LicenseManager) ListReceivedLicensesRequest(input *ListReceivedLicensesInput) (req *request.Request, output *ListReceivedLicensesOutput) {
3568	op := &request.Operation{
3569		Name:       opListReceivedLicenses,
3570		HTTPMethod: "POST",
3571		HTTPPath:   "/",
3572	}
3573
3574	if input == nil {
3575		input = &ListReceivedLicensesInput{}
3576	}
3577
3578	output = &ListReceivedLicensesOutput{}
3579	req = c.newRequest(op, input, output)
3580	return
3581}
3582
3583// ListReceivedLicenses API operation for AWS License Manager.
3584//
3585// Lists received licenses.
3586//
3587// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3588// with awserr.Error's Code and Message methods to get detailed information about
3589// the error.
3590//
3591// See the AWS API reference guide for AWS License Manager's
3592// API operation ListReceivedLicenses for usage and error information.
3593//
3594// Returned Error Types:
3595//   * ValidationException
3596//   The provided input is not valid. Try your request again.
3597//
3598//   * InvalidParameterValueException
3599//   One or more parameter values are not valid.
3600//
3601//   * ResourceLimitExceededException
3602//   Your resource limits have been exceeded.
3603//
3604//   * ServerInternalException
3605//   The server experienced an internal error. Try again.
3606//
3607//   * AuthorizationException
3608//   The Amazon Web Services user account does not have permission to perform
3609//   the action. Check the IAM policy associated with this account.
3610//
3611//   * AccessDeniedException
3612//   Access to resource denied.
3613//
3614//   * RateLimitExceededException
3615//   Too many requests have been submitted. Try again after a brief wait.
3616//
3617// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListReceivedLicenses
3618func (c *LicenseManager) ListReceivedLicenses(input *ListReceivedLicensesInput) (*ListReceivedLicensesOutput, error) {
3619	req, out := c.ListReceivedLicensesRequest(input)
3620	return out, req.Send()
3621}
3622
3623// ListReceivedLicensesWithContext is the same as ListReceivedLicenses with the addition of
3624// the ability to pass a context and additional request options.
3625//
3626// See ListReceivedLicenses for details on how to use this API operation.
3627//
3628// The context must be non-nil and will be used for request cancellation. If
3629// the context is nil a panic will occur. In the future the SDK may create
3630// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3631// for more information on using Contexts.
3632func (c *LicenseManager) ListReceivedLicensesWithContext(ctx aws.Context, input *ListReceivedLicensesInput, opts ...request.Option) (*ListReceivedLicensesOutput, error) {
3633	req, out := c.ListReceivedLicensesRequest(input)
3634	req.SetContext(ctx)
3635	req.ApplyOptions(opts...)
3636	return out, req.Send()
3637}
3638
3639const opListResourceInventory = "ListResourceInventory"
3640
3641// ListResourceInventoryRequest generates a "aws/request.Request" representing the
3642// client's request for the ListResourceInventory operation. The "output" return
3643// value will be populated with the request's response once the request completes
3644// successfully.
3645//
3646// Use "Send" method on the returned Request to send the API call to the service.
3647// the "output" return value is not valid until after Send returns without error.
3648//
3649// See ListResourceInventory for more information on using the ListResourceInventory
3650// API call, and error handling.
3651//
3652// This method is useful when you want to inject custom logic or configuration
3653// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3654//
3655//
3656//    // Example sending a request using the ListResourceInventoryRequest method.
3657//    req, resp := client.ListResourceInventoryRequest(params)
3658//
3659//    err := req.Send()
3660//    if err == nil { // resp is now filled
3661//        fmt.Println(resp)
3662//    }
3663//
3664// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListResourceInventory
3665func (c *LicenseManager) ListResourceInventoryRequest(input *ListResourceInventoryInput) (req *request.Request, output *ListResourceInventoryOutput) {
3666	op := &request.Operation{
3667		Name:       opListResourceInventory,
3668		HTTPMethod: "POST",
3669		HTTPPath:   "/",
3670	}
3671
3672	if input == nil {
3673		input = &ListResourceInventoryInput{}
3674	}
3675
3676	output = &ListResourceInventoryOutput{}
3677	req = c.newRequest(op, input, output)
3678	return
3679}
3680
3681// ListResourceInventory API operation for AWS License Manager.
3682//
3683// Lists resources managed using Systems Manager inventory.
3684//
3685// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3686// with awserr.Error's Code and Message methods to get detailed information about
3687// the error.
3688//
3689// See the AWS API reference guide for AWS License Manager's
3690// API operation ListResourceInventory for usage and error information.
3691//
3692// Returned Error Types:
3693//   * InvalidParameterValueException
3694//   One or more parameter values are not valid.
3695//
3696//   * ServerInternalException
3697//   The server experienced an internal error. Try again.
3698//
3699//   * FilterLimitExceededException
3700//   The request uses too many filters or too many filter values.
3701//
3702//   * FailedDependencyException
3703//   A dependency required to run the API is missing.
3704//
3705//   * AuthorizationException
3706//   The Amazon Web Services user account does not have permission to perform
3707//   the action. Check the IAM policy associated with this account.
3708//
3709//   * AccessDeniedException
3710//   Access to resource denied.
3711//
3712//   * RateLimitExceededException
3713//   Too many requests have been submitted. Try again after a brief wait.
3714//
3715// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListResourceInventory
3716func (c *LicenseManager) ListResourceInventory(input *ListResourceInventoryInput) (*ListResourceInventoryOutput, error) {
3717	req, out := c.ListResourceInventoryRequest(input)
3718	return out, req.Send()
3719}
3720
3721// ListResourceInventoryWithContext is the same as ListResourceInventory with the addition of
3722// the ability to pass a context and additional request options.
3723//
3724// See ListResourceInventory for details on how to use this API operation.
3725//
3726// The context must be non-nil and will be used for request cancellation. If
3727// the context is nil a panic will occur. In the future the SDK may create
3728// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3729// for more information on using Contexts.
3730func (c *LicenseManager) ListResourceInventoryWithContext(ctx aws.Context, input *ListResourceInventoryInput, opts ...request.Option) (*ListResourceInventoryOutput, error) {
3731	req, out := c.ListResourceInventoryRequest(input)
3732	req.SetContext(ctx)
3733	req.ApplyOptions(opts...)
3734	return out, req.Send()
3735}
3736
3737const opListTagsForResource = "ListTagsForResource"
3738
3739// ListTagsForResourceRequest generates a "aws/request.Request" representing the
3740// client's request for the ListTagsForResource operation. The "output" return
3741// value will be populated with the request's response once the request completes
3742// successfully.
3743//
3744// Use "Send" method on the returned Request to send the API call to the service.
3745// the "output" return value is not valid until after Send returns without error.
3746//
3747// See ListTagsForResource for more information on using the ListTagsForResource
3748// API call, and error handling.
3749//
3750// This method is useful when you want to inject custom logic or configuration
3751// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3752//
3753//
3754//    // Example sending a request using the ListTagsForResourceRequest method.
3755//    req, resp := client.ListTagsForResourceRequest(params)
3756//
3757//    err := req.Send()
3758//    if err == nil { // resp is now filled
3759//        fmt.Println(resp)
3760//    }
3761//
3762// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListTagsForResource
3763func (c *LicenseManager) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
3764	op := &request.Operation{
3765		Name:       opListTagsForResource,
3766		HTTPMethod: "POST",
3767		HTTPPath:   "/",
3768	}
3769
3770	if input == nil {
3771		input = &ListTagsForResourceInput{}
3772	}
3773
3774	output = &ListTagsForResourceOutput{}
3775	req = c.newRequest(op, input, output)
3776	return
3777}
3778
3779// ListTagsForResource API operation for AWS License Manager.
3780//
3781// Lists the tags for the specified license configuration.
3782//
3783// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3784// with awserr.Error's Code and Message methods to get detailed information about
3785// the error.
3786//
3787// See the AWS API reference guide for AWS License Manager's
3788// API operation ListTagsForResource for usage and error information.
3789//
3790// Returned Error Types:
3791//   * InvalidParameterValueException
3792//   One or more parameter values are not valid.
3793//
3794//   * ServerInternalException
3795//   The server experienced an internal error. Try again.
3796//
3797//   * AuthorizationException
3798//   The Amazon Web Services user account does not have permission to perform
3799//   the action. Check the IAM policy associated with this account.
3800//
3801//   * AccessDeniedException
3802//   Access to resource denied.
3803//
3804//   * RateLimitExceededException
3805//   Too many requests have been submitted. Try again after a brief wait.
3806//
3807// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListTagsForResource
3808func (c *LicenseManager) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
3809	req, out := c.ListTagsForResourceRequest(input)
3810	return out, req.Send()
3811}
3812
3813// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
3814// the ability to pass a context and additional request options.
3815//
3816// See ListTagsForResource for details on how to use this API operation.
3817//
3818// The context must be non-nil and will be used for request cancellation. If
3819// the context is nil a panic will occur. In the future the SDK may create
3820// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3821// for more information on using Contexts.
3822func (c *LicenseManager) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
3823	req, out := c.ListTagsForResourceRequest(input)
3824	req.SetContext(ctx)
3825	req.ApplyOptions(opts...)
3826	return out, req.Send()
3827}
3828
3829const opListTokens = "ListTokens"
3830
3831// ListTokensRequest generates a "aws/request.Request" representing the
3832// client's request for the ListTokens operation. The "output" return
3833// value will be populated with the request's response once the request completes
3834// successfully.
3835//
3836// Use "Send" method on the returned Request to send the API call to the service.
3837// the "output" return value is not valid until after Send returns without error.
3838//
3839// See ListTokens for more information on using the ListTokens
3840// API call, and error handling.
3841//
3842// This method is useful when you want to inject custom logic or configuration
3843// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3844//
3845//
3846//    // Example sending a request using the ListTokensRequest method.
3847//    req, resp := client.ListTokensRequest(params)
3848//
3849//    err := req.Send()
3850//    if err == nil { // resp is now filled
3851//        fmt.Println(resp)
3852//    }
3853//
3854// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListTokens
3855func (c *LicenseManager) ListTokensRequest(input *ListTokensInput) (req *request.Request, output *ListTokensOutput) {
3856	op := &request.Operation{
3857		Name:       opListTokens,
3858		HTTPMethod: "POST",
3859		HTTPPath:   "/",
3860	}
3861
3862	if input == nil {
3863		input = &ListTokensInput{}
3864	}
3865
3866	output = &ListTokensOutput{}
3867	req = c.newRequest(op, input, output)
3868	return
3869}
3870
3871// ListTokens API operation for AWS License Manager.
3872//
3873// Lists your tokens.
3874//
3875// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3876// with awserr.Error's Code and Message methods to get detailed information about
3877// the error.
3878//
3879// See the AWS API reference guide for AWS License Manager's
3880// API operation ListTokens for usage and error information.
3881//
3882// Returned Error Types:
3883//   * ValidationException
3884//   The provided input is not valid. Try your request again.
3885//
3886//   * AuthorizationException
3887//   The Amazon Web Services user account does not have permission to perform
3888//   the action. Check the IAM policy associated with this account.
3889//
3890//   * AccessDeniedException
3891//   Access to resource denied.
3892//
3893//   * RateLimitExceededException
3894//   Too many requests have been submitted. Try again after a brief wait.
3895//
3896//   * ServerInternalException
3897//   The server experienced an internal error. Try again.
3898//
3899// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListTokens
3900func (c *LicenseManager) ListTokens(input *ListTokensInput) (*ListTokensOutput, error) {
3901	req, out := c.ListTokensRequest(input)
3902	return out, req.Send()
3903}
3904
3905// ListTokensWithContext is the same as ListTokens with the addition of
3906// the ability to pass a context and additional request options.
3907//
3908// See ListTokens for details on how to use this API operation.
3909//
3910// The context must be non-nil and will be used for request cancellation. If
3911// the context is nil a panic will occur. In the future the SDK may create
3912// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3913// for more information on using Contexts.
3914func (c *LicenseManager) ListTokensWithContext(ctx aws.Context, input *ListTokensInput, opts ...request.Option) (*ListTokensOutput, error) {
3915	req, out := c.ListTokensRequest(input)
3916	req.SetContext(ctx)
3917	req.ApplyOptions(opts...)
3918	return out, req.Send()
3919}
3920
3921const opListUsageForLicenseConfiguration = "ListUsageForLicenseConfiguration"
3922
3923// ListUsageForLicenseConfigurationRequest generates a "aws/request.Request" representing the
3924// client's request for the ListUsageForLicenseConfiguration operation. The "output" return
3925// value will be populated with the request's response once the request completes
3926// successfully.
3927//
3928// Use "Send" method on the returned Request to send the API call to the service.
3929// the "output" return value is not valid until after Send returns without error.
3930//
3931// See ListUsageForLicenseConfiguration for more information on using the ListUsageForLicenseConfiguration
3932// API call, and error handling.
3933//
3934// This method is useful when you want to inject custom logic or configuration
3935// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3936//
3937//
3938//    // Example sending a request using the ListUsageForLicenseConfigurationRequest method.
3939//    req, resp := client.ListUsageForLicenseConfigurationRequest(params)
3940//
3941//    err := req.Send()
3942//    if err == nil { // resp is now filled
3943//        fmt.Println(resp)
3944//    }
3945//
3946// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListUsageForLicenseConfiguration
3947func (c *LicenseManager) ListUsageForLicenseConfigurationRequest(input *ListUsageForLicenseConfigurationInput) (req *request.Request, output *ListUsageForLicenseConfigurationOutput) {
3948	op := &request.Operation{
3949		Name:       opListUsageForLicenseConfiguration,
3950		HTTPMethod: "POST",
3951		HTTPPath:   "/",
3952	}
3953
3954	if input == nil {
3955		input = &ListUsageForLicenseConfigurationInput{}
3956	}
3957
3958	output = &ListUsageForLicenseConfigurationOutput{}
3959	req = c.newRequest(op, input, output)
3960	return
3961}
3962
3963// ListUsageForLicenseConfiguration API operation for AWS License Manager.
3964//
3965// Lists all license usage records for a license configuration, displaying license
3966// consumption details by resource at a selected point in time. Use this action
3967// to audit the current license consumption for any license inventory and configuration.
3968//
3969// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3970// with awserr.Error's Code and Message methods to get detailed information about
3971// the error.
3972//
3973// See the AWS API reference guide for AWS License Manager's
3974// API operation ListUsageForLicenseConfiguration for usage and error information.
3975//
3976// Returned Error Types:
3977//   * InvalidParameterValueException
3978//   One or more parameter values are not valid.
3979//
3980//   * FilterLimitExceededException
3981//   The request uses too many filters or too many filter values.
3982//
3983//   * ServerInternalException
3984//   The server experienced an internal error. Try again.
3985//
3986//   * AuthorizationException
3987//   The Amazon Web Services user account does not have permission to perform
3988//   the action. Check the IAM policy associated with this account.
3989//
3990//   * AccessDeniedException
3991//   Access to resource denied.
3992//
3993//   * RateLimitExceededException
3994//   Too many requests have been submitted. Try again after a brief wait.
3995//
3996// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListUsageForLicenseConfiguration
3997func (c *LicenseManager) ListUsageForLicenseConfiguration(input *ListUsageForLicenseConfigurationInput) (*ListUsageForLicenseConfigurationOutput, error) {
3998	req, out := c.ListUsageForLicenseConfigurationRequest(input)
3999	return out, req.Send()
4000}
4001
4002// ListUsageForLicenseConfigurationWithContext is the same as ListUsageForLicenseConfiguration with the addition of
4003// the ability to pass a context and additional request options.
4004//
4005// See ListUsageForLicenseConfiguration for details on how to use this API operation.
4006//
4007// The context must be non-nil and will be used for request cancellation. If
4008// the context is nil a panic will occur. In the future the SDK may create
4009// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4010// for more information on using Contexts.
4011func (c *LicenseManager) ListUsageForLicenseConfigurationWithContext(ctx aws.Context, input *ListUsageForLicenseConfigurationInput, opts ...request.Option) (*ListUsageForLicenseConfigurationOutput, error) {
4012	req, out := c.ListUsageForLicenseConfigurationRequest(input)
4013	req.SetContext(ctx)
4014	req.ApplyOptions(opts...)
4015	return out, req.Send()
4016}
4017
4018const opRejectGrant = "RejectGrant"
4019
4020// RejectGrantRequest generates a "aws/request.Request" representing the
4021// client's request for the RejectGrant operation. The "output" return
4022// value will be populated with the request's response once the request completes
4023// successfully.
4024//
4025// Use "Send" method on the returned Request to send the API call to the service.
4026// the "output" return value is not valid until after Send returns without error.
4027//
4028// See RejectGrant for more information on using the RejectGrant
4029// API call, and error handling.
4030//
4031// This method is useful when you want to inject custom logic or configuration
4032// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4033//
4034//
4035//    // Example sending a request using the RejectGrantRequest method.
4036//    req, resp := client.RejectGrantRequest(params)
4037//
4038//    err := req.Send()
4039//    if err == nil { // resp is now filled
4040//        fmt.Println(resp)
4041//    }
4042//
4043// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/RejectGrant
4044func (c *LicenseManager) RejectGrantRequest(input *RejectGrantInput) (req *request.Request, output *RejectGrantOutput) {
4045	op := &request.Operation{
4046		Name:       opRejectGrant,
4047		HTTPMethod: "POST",
4048		HTTPPath:   "/",
4049	}
4050
4051	if input == nil {
4052		input = &RejectGrantInput{}
4053	}
4054
4055	output = &RejectGrantOutput{}
4056	req = c.newRequest(op, input, output)
4057	return
4058}
4059
4060// RejectGrant API operation for AWS License Manager.
4061//
4062// Rejects the specified grant.
4063//
4064// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4065// with awserr.Error's Code and Message methods to get detailed information about
4066// the error.
4067//
4068// See the AWS API reference guide for AWS License Manager's
4069// API operation RejectGrant for usage and error information.
4070//
4071// Returned Error Types:
4072//   * ValidationException
4073//   The provided input is not valid. Try your request again.
4074//
4075//   * InvalidParameterValueException
4076//   One or more parameter values are not valid.
4077//
4078//   * AuthorizationException
4079//   The Amazon Web Services user account does not have permission to perform
4080//   the action. Check the IAM policy associated with this account.
4081//
4082//   * AccessDeniedException
4083//   Access to resource denied.
4084//
4085//   * RateLimitExceededException
4086//   Too many requests have been submitted. Try again after a brief wait.
4087//
4088//   * ResourceLimitExceededException
4089//   Your resource limits have been exceeded.
4090//
4091//   * ServerInternalException
4092//   The server experienced an internal error. Try again.
4093//
4094// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/RejectGrant
4095func (c *LicenseManager) RejectGrant(input *RejectGrantInput) (*RejectGrantOutput, error) {
4096	req, out := c.RejectGrantRequest(input)
4097	return out, req.Send()
4098}
4099
4100// RejectGrantWithContext is the same as RejectGrant with the addition of
4101// the ability to pass a context and additional request options.
4102//
4103// See RejectGrant for details on how to use this API operation.
4104//
4105// The context must be non-nil and will be used for request cancellation. If
4106// the context is nil a panic will occur. In the future the SDK may create
4107// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4108// for more information on using Contexts.
4109func (c *LicenseManager) RejectGrantWithContext(ctx aws.Context, input *RejectGrantInput, opts ...request.Option) (*RejectGrantOutput, error) {
4110	req, out := c.RejectGrantRequest(input)
4111	req.SetContext(ctx)
4112	req.ApplyOptions(opts...)
4113	return out, req.Send()
4114}
4115
4116const opTagResource = "TagResource"
4117
4118// TagResourceRequest generates a "aws/request.Request" representing the
4119// client's request for the TagResource operation. The "output" return
4120// value will be populated with the request's response once the request completes
4121// successfully.
4122//
4123// Use "Send" method on the returned Request to send the API call to the service.
4124// the "output" return value is not valid until after Send returns without error.
4125//
4126// See TagResource for more information on using the TagResource
4127// API call, and error handling.
4128//
4129// This method is useful when you want to inject custom logic or configuration
4130// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4131//
4132//
4133//    // Example sending a request using the TagResourceRequest method.
4134//    req, resp := client.TagResourceRequest(params)
4135//
4136//    err := req.Send()
4137//    if err == nil { // resp is now filled
4138//        fmt.Println(resp)
4139//    }
4140//
4141// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/TagResource
4142func (c *LicenseManager) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
4143	op := &request.Operation{
4144		Name:       opTagResource,
4145		HTTPMethod: "POST",
4146		HTTPPath:   "/",
4147	}
4148
4149	if input == nil {
4150		input = &TagResourceInput{}
4151	}
4152
4153	output = &TagResourceOutput{}
4154	req = c.newRequest(op, input, output)
4155	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4156	return
4157}
4158
4159// TagResource API operation for AWS License Manager.
4160//
4161// Adds the specified tags to the specified license configuration.
4162//
4163// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4164// with awserr.Error's Code and Message methods to get detailed information about
4165// the error.
4166//
4167// See the AWS API reference guide for AWS License Manager's
4168// API operation TagResource for usage and error information.
4169//
4170// Returned Error Types:
4171//   * InvalidParameterValueException
4172//   One or more parameter values are not valid.
4173//
4174//   * ServerInternalException
4175//   The server experienced an internal error. Try again.
4176//
4177//   * AuthorizationException
4178//   The Amazon Web Services user account does not have permission to perform
4179//   the action. Check the IAM policy associated with this account.
4180//
4181//   * AccessDeniedException
4182//   Access to resource denied.
4183//
4184//   * RateLimitExceededException
4185//   Too many requests have been submitted. Try again after a brief wait.
4186//
4187// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/TagResource
4188func (c *LicenseManager) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
4189	req, out := c.TagResourceRequest(input)
4190	return out, req.Send()
4191}
4192
4193// TagResourceWithContext is the same as TagResource with the addition of
4194// the ability to pass a context and additional request options.
4195//
4196// See TagResource for details on how to use this API operation.
4197//
4198// The context must be non-nil and will be used for request cancellation. If
4199// the context is nil a panic will occur. In the future the SDK may create
4200// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4201// for more information on using Contexts.
4202func (c *LicenseManager) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
4203	req, out := c.TagResourceRequest(input)
4204	req.SetContext(ctx)
4205	req.ApplyOptions(opts...)
4206	return out, req.Send()
4207}
4208
4209const opUntagResource = "UntagResource"
4210
4211// UntagResourceRequest generates a "aws/request.Request" representing the
4212// client's request for the UntagResource operation. The "output" return
4213// value will be populated with the request's response once the request completes
4214// successfully.
4215//
4216// Use "Send" method on the returned Request to send the API call to the service.
4217// the "output" return value is not valid until after Send returns without error.
4218//
4219// See UntagResource for more information on using the UntagResource
4220// API call, and error handling.
4221//
4222// This method is useful when you want to inject custom logic or configuration
4223// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4224//
4225//
4226//    // Example sending a request using the UntagResourceRequest method.
4227//    req, resp := client.UntagResourceRequest(params)
4228//
4229//    err := req.Send()
4230//    if err == nil { // resp is now filled
4231//        fmt.Println(resp)
4232//    }
4233//
4234// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UntagResource
4235func (c *LicenseManager) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
4236	op := &request.Operation{
4237		Name:       opUntagResource,
4238		HTTPMethod: "POST",
4239		HTTPPath:   "/",
4240	}
4241
4242	if input == nil {
4243		input = &UntagResourceInput{}
4244	}
4245
4246	output = &UntagResourceOutput{}
4247	req = c.newRequest(op, input, output)
4248	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4249	return
4250}
4251
4252// UntagResource API operation for AWS License Manager.
4253//
4254// Removes the specified tags from the specified license configuration.
4255//
4256// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4257// with awserr.Error's Code and Message methods to get detailed information about
4258// the error.
4259//
4260// See the AWS API reference guide for AWS License Manager's
4261// API operation UntagResource for usage and error information.
4262//
4263// Returned Error Types:
4264//   * InvalidParameterValueException
4265//   One or more parameter values are not valid.
4266//
4267//   * ServerInternalException
4268//   The server experienced an internal error. Try again.
4269//
4270//   * AuthorizationException
4271//   The Amazon Web Services user account does not have permission to perform
4272//   the action. Check the IAM policy associated with this account.
4273//
4274//   * AccessDeniedException
4275//   Access to resource denied.
4276//
4277//   * RateLimitExceededException
4278//   Too many requests have been submitted. Try again after a brief wait.
4279//
4280// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UntagResource
4281func (c *LicenseManager) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
4282	req, out := c.UntagResourceRequest(input)
4283	return out, req.Send()
4284}
4285
4286// UntagResourceWithContext is the same as UntagResource with the addition of
4287// the ability to pass a context and additional request options.
4288//
4289// See UntagResource for details on how to use this API operation.
4290//
4291// The context must be non-nil and will be used for request cancellation. If
4292// the context is nil a panic will occur. In the future the SDK may create
4293// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4294// for more information on using Contexts.
4295func (c *LicenseManager) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
4296	req, out := c.UntagResourceRequest(input)
4297	req.SetContext(ctx)
4298	req.ApplyOptions(opts...)
4299	return out, req.Send()
4300}
4301
4302const opUpdateLicenseConfiguration = "UpdateLicenseConfiguration"
4303
4304// UpdateLicenseConfigurationRequest generates a "aws/request.Request" representing the
4305// client's request for the UpdateLicenseConfiguration operation. The "output" return
4306// value will be populated with the request's response once the request completes
4307// successfully.
4308//
4309// Use "Send" method on the returned Request to send the API call to the service.
4310// the "output" return value is not valid until after Send returns without error.
4311//
4312// See UpdateLicenseConfiguration for more information on using the UpdateLicenseConfiguration
4313// API call, and error handling.
4314//
4315// This method is useful when you want to inject custom logic or configuration
4316// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4317//
4318//
4319//    // Example sending a request using the UpdateLicenseConfigurationRequest method.
4320//    req, resp := client.UpdateLicenseConfigurationRequest(params)
4321//
4322//    err := req.Send()
4323//    if err == nil { // resp is now filled
4324//        fmt.Println(resp)
4325//    }
4326//
4327// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UpdateLicenseConfiguration
4328func (c *LicenseManager) UpdateLicenseConfigurationRequest(input *UpdateLicenseConfigurationInput) (req *request.Request, output *UpdateLicenseConfigurationOutput) {
4329	op := &request.Operation{
4330		Name:       opUpdateLicenseConfiguration,
4331		HTTPMethod: "POST",
4332		HTTPPath:   "/",
4333	}
4334
4335	if input == nil {
4336		input = &UpdateLicenseConfigurationInput{}
4337	}
4338
4339	output = &UpdateLicenseConfigurationOutput{}
4340	req = c.newRequest(op, input, output)
4341	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4342	return
4343}
4344
4345// UpdateLicenseConfiguration API operation for AWS License Manager.
4346//
4347// Modifies the attributes of an existing license configuration.
4348//
4349// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4350// with awserr.Error's Code and Message methods to get detailed information about
4351// the error.
4352//
4353// See the AWS API reference guide for AWS License Manager's
4354// API operation UpdateLicenseConfiguration for usage and error information.
4355//
4356// Returned Error Types:
4357//   * InvalidParameterValueException
4358//   One or more parameter values are not valid.
4359//
4360//   * ServerInternalException
4361//   The server experienced an internal error. Try again.
4362//
4363//   * AuthorizationException
4364//   The Amazon Web Services user account does not have permission to perform
4365//   the action. Check the IAM policy associated with this account.
4366//
4367//   * AccessDeniedException
4368//   Access to resource denied.
4369//
4370//   * RateLimitExceededException
4371//   Too many requests have been submitted. Try again after a brief wait.
4372//
4373//   * ResourceLimitExceededException
4374//   Your resource limits have been exceeded.
4375//
4376// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UpdateLicenseConfiguration
4377func (c *LicenseManager) UpdateLicenseConfiguration(input *UpdateLicenseConfigurationInput) (*UpdateLicenseConfigurationOutput, error) {
4378	req, out := c.UpdateLicenseConfigurationRequest(input)
4379	return out, req.Send()
4380}
4381
4382// UpdateLicenseConfigurationWithContext is the same as UpdateLicenseConfiguration with the addition of
4383// the ability to pass a context and additional request options.
4384//
4385// See UpdateLicenseConfiguration for details on how to use this API operation.
4386//
4387// The context must be non-nil and will be used for request cancellation. If
4388// the context is nil a panic will occur. In the future the SDK may create
4389// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4390// for more information on using Contexts.
4391func (c *LicenseManager) UpdateLicenseConfigurationWithContext(ctx aws.Context, input *UpdateLicenseConfigurationInput, opts ...request.Option) (*UpdateLicenseConfigurationOutput, error) {
4392	req, out := c.UpdateLicenseConfigurationRequest(input)
4393	req.SetContext(ctx)
4394	req.ApplyOptions(opts...)
4395	return out, req.Send()
4396}
4397
4398const opUpdateLicenseManagerReportGenerator = "UpdateLicenseManagerReportGenerator"
4399
4400// UpdateLicenseManagerReportGeneratorRequest generates a "aws/request.Request" representing the
4401// client's request for the UpdateLicenseManagerReportGenerator operation. The "output" return
4402// value will be populated with the request's response once the request completes
4403// successfully.
4404//
4405// Use "Send" method on the returned Request to send the API call to the service.
4406// the "output" return value is not valid until after Send returns without error.
4407//
4408// See UpdateLicenseManagerReportGenerator for more information on using the UpdateLicenseManagerReportGenerator
4409// API call, and error handling.
4410//
4411// This method is useful when you want to inject custom logic or configuration
4412// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4413//
4414//
4415//    // Example sending a request using the UpdateLicenseManagerReportGeneratorRequest method.
4416//    req, resp := client.UpdateLicenseManagerReportGeneratorRequest(params)
4417//
4418//    err := req.Send()
4419//    if err == nil { // resp is now filled
4420//        fmt.Println(resp)
4421//    }
4422//
4423// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UpdateLicenseManagerReportGenerator
4424func (c *LicenseManager) UpdateLicenseManagerReportGeneratorRequest(input *UpdateLicenseManagerReportGeneratorInput) (req *request.Request, output *UpdateLicenseManagerReportGeneratorOutput) {
4425	op := &request.Operation{
4426		Name:       opUpdateLicenseManagerReportGenerator,
4427		HTTPMethod: "POST",
4428		HTTPPath:   "/",
4429	}
4430
4431	if input == nil {
4432		input = &UpdateLicenseManagerReportGeneratorInput{}
4433	}
4434
4435	output = &UpdateLicenseManagerReportGeneratorOutput{}
4436	req = c.newRequest(op, input, output)
4437	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4438	return
4439}
4440
4441// UpdateLicenseManagerReportGenerator API operation for AWS License Manager.
4442//
4443// Updates a report generator.
4444//
4445// After you make changes to a report generator, it starts generating new reports
4446// within 60 minutes of being updated.
4447//
4448// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4449// with awserr.Error's Code and Message methods to get detailed information about
4450// the error.
4451//
4452// See the AWS API reference guide for AWS License Manager's
4453// API operation UpdateLicenseManagerReportGenerator for usage and error information.
4454//
4455// Returned Error Types:
4456//   * ValidationException
4457//   The provided input is not valid. Try your request again.
4458//
4459//   * InvalidParameterValueException
4460//   One or more parameter values are not valid.
4461//
4462//   * RateLimitExceededException
4463//   Too many requests have been submitted. Try again after a brief wait.
4464//
4465//   * ServerInternalException
4466//   The server experienced an internal error. Try again.
4467//
4468//   * AuthorizationException
4469//   The Amazon Web Services user account does not have permission to perform
4470//   the action. Check the IAM policy associated with this account.
4471//
4472//   * AccessDeniedException
4473//   Access to resource denied.
4474//
4475//   * ResourceNotFoundException
4476//   The resource cannot be found.
4477//
4478//   * ResourceLimitExceededException
4479//   Your resource limits have been exceeded.
4480//
4481// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UpdateLicenseManagerReportGenerator
4482func (c *LicenseManager) UpdateLicenseManagerReportGenerator(input *UpdateLicenseManagerReportGeneratorInput) (*UpdateLicenseManagerReportGeneratorOutput, error) {
4483	req, out := c.UpdateLicenseManagerReportGeneratorRequest(input)
4484	return out, req.Send()
4485}
4486
4487// UpdateLicenseManagerReportGeneratorWithContext is the same as UpdateLicenseManagerReportGenerator with the addition of
4488// the ability to pass a context and additional request options.
4489//
4490// See UpdateLicenseManagerReportGenerator for details on how to use this API operation.
4491//
4492// The context must be non-nil and will be used for request cancellation. If
4493// the context is nil a panic will occur. In the future the SDK may create
4494// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4495// for more information on using Contexts.
4496func (c *LicenseManager) UpdateLicenseManagerReportGeneratorWithContext(ctx aws.Context, input *UpdateLicenseManagerReportGeneratorInput, opts ...request.Option) (*UpdateLicenseManagerReportGeneratorOutput, error) {
4497	req, out := c.UpdateLicenseManagerReportGeneratorRequest(input)
4498	req.SetContext(ctx)
4499	req.ApplyOptions(opts...)
4500	return out, req.Send()
4501}
4502
4503const opUpdateLicenseSpecificationsForResource = "UpdateLicenseSpecificationsForResource"
4504
4505// UpdateLicenseSpecificationsForResourceRequest generates a "aws/request.Request" representing the
4506// client's request for the UpdateLicenseSpecificationsForResource operation. The "output" return
4507// value will be populated with the request's response once the request completes
4508// successfully.
4509//
4510// Use "Send" method on the returned Request to send the API call to the service.
4511// the "output" return value is not valid until after Send returns without error.
4512//
4513// See UpdateLicenseSpecificationsForResource for more information on using the UpdateLicenseSpecificationsForResource
4514// API call, and error handling.
4515//
4516// This method is useful when you want to inject custom logic or configuration
4517// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4518//
4519//
4520//    // Example sending a request using the UpdateLicenseSpecificationsForResourceRequest method.
4521//    req, resp := client.UpdateLicenseSpecificationsForResourceRequest(params)
4522//
4523//    err := req.Send()
4524//    if err == nil { // resp is now filled
4525//        fmt.Println(resp)
4526//    }
4527//
4528// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UpdateLicenseSpecificationsForResource
4529func (c *LicenseManager) UpdateLicenseSpecificationsForResourceRequest(input *UpdateLicenseSpecificationsForResourceInput) (req *request.Request, output *UpdateLicenseSpecificationsForResourceOutput) {
4530	op := &request.Operation{
4531		Name:       opUpdateLicenseSpecificationsForResource,
4532		HTTPMethod: "POST",
4533		HTTPPath:   "/",
4534	}
4535
4536	if input == nil {
4537		input = &UpdateLicenseSpecificationsForResourceInput{}
4538	}
4539
4540	output = &UpdateLicenseSpecificationsForResourceOutput{}
4541	req = c.newRequest(op, input, output)
4542	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4543	return
4544}
4545
4546// UpdateLicenseSpecificationsForResource API operation for AWS License Manager.
4547//
4548// Adds or removes the specified license configurations for the specified Amazon
4549// Web Services resource.
4550//
4551// You can update the license specifications of AMIs, instances, and hosts.
4552// You cannot update the license specifications for launch templates and CloudFormation
4553// templates, as they send license configurations to the operation that creates
4554// the resource.
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 License Manager's
4561// API operation UpdateLicenseSpecificationsForResource for usage and error information.
4562//
4563// Returned Error Types:
4564//   * InvalidParameterValueException
4565//   One or more parameter values are not valid.
4566//
4567//   * InvalidResourceStateException
4568//   License Manager cannot allocate a license to a resource because of its state.
4569//
4570//   For example, you cannot allocate a license to an instance in the process
4571//   of shutting down.
4572//
4573//   * LicenseUsageException
4574//   You do not have enough licenses available to support a new resource launch.
4575//
4576//   * ServerInternalException
4577//   The server experienced an internal error. Try again.
4578//
4579//   * AuthorizationException
4580//   The Amazon Web Services user account does not have permission to perform
4581//   the action. Check the IAM policy associated with this account.
4582//
4583//   * AccessDeniedException
4584//   Access to resource denied.
4585//
4586//   * RateLimitExceededException
4587//   Too many requests have been submitted. Try again after a brief wait.
4588//
4589// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UpdateLicenseSpecificationsForResource
4590func (c *LicenseManager) UpdateLicenseSpecificationsForResource(input *UpdateLicenseSpecificationsForResourceInput) (*UpdateLicenseSpecificationsForResourceOutput, error) {
4591	req, out := c.UpdateLicenseSpecificationsForResourceRequest(input)
4592	return out, req.Send()
4593}
4594
4595// UpdateLicenseSpecificationsForResourceWithContext is the same as UpdateLicenseSpecificationsForResource with the addition of
4596// the ability to pass a context and additional request options.
4597//
4598// See UpdateLicenseSpecificationsForResource for details on how to use this API operation.
4599//
4600// The context must be non-nil and will be used for request cancellation. If
4601// the context is nil a panic will occur. In the future the SDK may create
4602// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4603// for more information on using Contexts.
4604func (c *LicenseManager) UpdateLicenseSpecificationsForResourceWithContext(ctx aws.Context, input *UpdateLicenseSpecificationsForResourceInput, opts ...request.Option) (*UpdateLicenseSpecificationsForResourceOutput, error) {
4605	req, out := c.UpdateLicenseSpecificationsForResourceRequest(input)
4606	req.SetContext(ctx)
4607	req.ApplyOptions(opts...)
4608	return out, req.Send()
4609}
4610
4611const opUpdateServiceSettings = "UpdateServiceSettings"
4612
4613// UpdateServiceSettingsRequest generates a "aws/request.Request" representing the
4614// client's request for the UpdateServiceSettings operation. The "output" return
4615// value will be populated with the request's response once the request completes
4616// successfully.
4617//
4618// Use "Send" method on the returned Request to send the API call to the service.
4619// the "output" return value is not valid until after Send returns without error.
4620//
4621// See UpdateServiceSettings for more information on using the UpdateServiceSettings
4622// API call, and error handling.
4623//
4624// This method is useful when you want to inject custom logic or configuration
4625// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4626//
4627//
4628//    // Example sending a request using the UpdateServiceSettingsRequest method.
4629//    req, resp := client.UpdateServiceSettingsRequest(params)
4630//
4631//    err := req.Send()
4632//    if err == nil { // resp is now filled
4633//        fmt.Println(resp)
4634//    }
4635//
4636// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UpdateServiceSettings
4637func (c *LicenseManager) UpdateServiceSettingsRequest(input *UpdateServiceSettingsInput) (req *request.Request, output *UpdateServiceSettingsOutput) {
4638	op := &request.Operation{
4639		Name:       opUpdateServiceSettings,
4640		HTTPMethod: "POST",
4641		HTTPPath:   "/",
4642	}
4643
4644	if input == nil {
4645		input = &UpdateServiceSettingsInput{}
4646	}
4647
4648	output = &UpdateServiceSettingsOutput{}
4649	req = c.newRequest(op, input, output)
4650	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4651	return
4652}
4653
4654// UpdateServiceSettings API operation for AWS License Manager.
4655//
4656// Updates License Manager settings for the current Region.
4657//
4658// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4659// with awserr.Error's Code and Message methods to get detailed information about
4660// the error.
4661//
4662// See the AWS API reference guide for AWS License Manager's
4663// API operation UpdateServiceSettings for usage and error information.
4664//
4665// Returned Error Types:
4666//   * InvalidParameterValueException
4667//   One or more parameter values are not valid.
4668//
4669//   * ServerInternalException
4670//   The server experienced an internal error. Try again.
4671//
4672//   * AuthorizationException
4673//   The Amazon Web Services user account does not have permission to perform
4674//   the action. Check the IAM policy associated with this account.
4675//
4676//   * AccessDeniedException
4677//   Access to resource denied.
4678//
4679//   * RateLimitExceededException
4680//   Too many requests have been submitted. Try again after a brief wait.
4681//
4682// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UpdateServiceSettings
4683func (c *LicenseManager) UpdateServiceSettings(input *UpdateServiceSettingsInput) (*UpdateServiceSettingsOutput, error) {
4684	req, out := c.UpdateServiceSettingsRequest(input)
4685	return out, req.Send()
4686}
4687
4688// UpdateServiceSettingsWithContext is the same as UpdateServiceSettings with the addition of
4689// the ability to pass a context and additional request options.
4690//
4691// See UpdateServiceSettings for details on how to use this API operation.
4692//
4693// The context must be non-nil and will be used for request cancellation. If
4694// the context is nil a panic will occur. In the future the SDK may create
4695// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4696// for more information on using Contexts.
4697func (c *LicenseManager) UpdateServiceSettingsWithContext(ctx aws.Context, input *UpdateServiceSettingsInput, opts ...request.Option) (*UpdateServiceSettingsOutput, error) {
4698	req, out := c.UpdateServiceSettingsRequest(input)
4699	req.SetContext(ctx)
4700	req.ApplyOptions(opts...)
4701	return out, req.Send()
4702}
4703
4704type AcceptGrantInput struct {
4705	_ struct{} `type:"structure"`
4706
4707	// Amazon Resource Name (ARN) of the grant.
4708	//
4709	// GrantArn is a required field
4710	GrantArn *string `type:"string" required:"true"`
4711}
4712
4713// String returns the string representation.
4714//
4715// API parameter values that are decorated as "sensitive" in the API will not
4716// be included in the string output. The member name will be present, but the
4717// value will be replaced with "sensitive".
4718func (s AcceptGrantInput) String() string {
4719	return awsutil.Prettify(s)
4720}
4721
4722// GoString returns the string representation.
4723//
4724// API parameter values that are decorated as "sensitive" in the API will not
4725// be included in the string output. The member name will be present, but the
4726// value will be replaced with "sensitive".
4727func (s AcceptGrantInput) GoString() string {
4728	return s.String()
4729}
4730
4731// Validate inspects the fields of the type to determine if they are valid.
4732func (s *AcceptGrantInput) Validate() error {
4733	invalidParams := request.ErrInvalidParams{Context: "AcceptGrantInput"}
4734	if s.GrantArn == nil {
4735		invalidParams.Add(request.NewErrParamRequired("GrantArn"))
4736	}
4737
4738	if invalidParams.Len() > 0 {
4739		return invalidParams
4740	}
4741	return nil
4742}
4743
4744// SetGrantArn sets the GrantArn field's value.
4745func (s *AcceptGrantInput) SetGrantArn(v string) *AcceptGrantInput {
4746	s.GrantArn = &v
4747	return s
4748}
4749
4750type AcceptGrantOutput struct {
4751	_ struct{} `type:"structure"`
4752
4753	// Grant ARN.
4754	GrantArn *string `type:"string"`
4755
4756	// Grant status.
4757	Status *string `type:"string" enum:"GrantStatus"`
4758
4759	// Grant version.
4760	Version *string `type:"string"`
4761}
4762
4763// String returns the string representation.
4764//
4765// API parameter values that are decorated as "sensitive" in the API will not
4766// be included in the string output. The member name will be present, but the
4767// value will be replaced with "sensitive".
4768func (s AcceptGrantOutput) String() string {
4769	return awsutil.Prettify(s)
4770}
4771
4772// GoString returns the string representation.
4773//
4774// API parameter values that are decorated as "sensitive" in the API will not
4775// be included in the string output. The member name will be present, but the
4776// value will be replaced with "sensitive".
4777func (s AcceptGrantOutput) GoString() string {
4778	return s.String()
4779}
4780
4781// SetGrantArn sets the GrantArn field's value.
4782func (s *AcceptGrantOutput) SetGrantArn(v string) *AcceptGrantOutput {
4783	s.GrantArn = &v
4784	return s
4785}
4786
4787// SetStatus sets the Status field's value.
4788func (s *AcceptGrantOutput) SetStatus(v string) *AcceptGrantOutput {
4789	s.Status = &v
4790	return s
4791}
4792
4793// SetVersion sets the Version field's value.
4794func (s *AcceptGrantOutput) SetVersion(v string) *AcceptGrantOutput {
4795	s.Version = &v
4796	return s
4797}
4798
4799// Access to resource denied.
4800type AccessDeniedException struct {
4801	_            struct{}                  `type:"structure"`
4802	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
4803
4804	Message_ *string `locationName:"Message" type:"string"`
4805}
4806
4807// String returns the string representation.
4808//
4809// API parameter values that are decorated as "sensitive" in the API will not
4810// be included in the string output. The member name will be present, but the
4811// value will be replaced with "sensitive".
4812func (s AccessDeniedException) String() string {
4813	return awsutil.Prettify(s)
4814}
4815
4816// GoString returns the string representation.
4817//
4818// API parameter values that are decorated as "sensitive" in the API will not
4819// be included in the string output. The member name will be present, but the
4820// value will be replaced with "sensitive".
4821func (s AccessDeniedException) GoString() string {
4822	return s.String()
4823}
4824
4825func newErrorAccessDeniedException(v protocol.ResponseMetadata) error {
4826	return &AccessDeniedException{
4827		RespMetadata: v,
4828	}
4829}
4830
4831// Code returns the exception type name.
4832func (s *AccessDeniedException) Code() string {
4833	return "AccessDeniedException"
4834}
4835
4836// Message returns the exception's message.
4837func (s *AccessDeniedException) Message() string {
4838	if s.Message_ != nil {
4839		return *s.Message_
4840	}
4841	return ""
4842}
4843
4844// OrigErr always returns nil, satisfies awserr.Error interface.
4845func (s *AccessDeniedException) OrigErr() error {
4846	return nil
4847}
4848
4849func (s *AccessDeniedException) Error() string {
4850	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
4851}
4852
4853// Status code returns the HTTP status code for the request's response error.
4854func (s *AccessDeniedException) StatusCode() int {
4855	return s.RespMetadata.StatusCode
4856}
4857
4858// RequestID returns the service's response RequestID for request.
4859func (s *AccessDeniedException) RequestID() string {
4860	return s.RespMetadata.RequestID
4861}
4862
4863// The Amazon Web Services user account does not have permission to perform
4864// the action. Check the IAM policy associated with this account.
4865type AuthorizationException struct {
4866	_            struct{}                  `type:"structure"`
4867	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
4868
4869	Message_ *string `locationName:"Message" type:"string"`
4870}
4871
4872// String returns the string representation.
4873//
4874// API parameter values that are decorated as "sensitive" in the API will not
4875// be included in the string output. The member name will be present, but the
4876// value will be replaced with "sensitive".
4877func (s AuthorizationException) String() string {
4878	return awsutil.Prettify(s)
4879}
4880
4881// GoString returns the string representation.
4882//
4883// API parameter values that are decorated as "sensitive" in the API will not
4884// be included in the string output. The member name will be present, but the
4885// value will be replaced with "sensitive".
4886func (s AuthorizationException) GoString() string {
4887	return s.String()
4888}
4889
4890func newErrorAuthorizationException(v protocol.ResponseMetadata) error {
4891	return &AuthorizationException{
4892		RespMetadata: v,
4893	}
4894}
4895
4896// Code returns the exception type name.
4897func (s *AuthorizationException) Code() string {
4898	return "AuthorizationException"
4899}
4900
4901// Message returns the exception's message.
4902func (s *AuthorizationException) Message() string {
4903	if s.Message_ != nil {
4904		return *s.Message_
4905	}
4906	return ""
4907}
4908
4909// OrigErr always returns nil, satisfies awserr.Error interface.
4910func (s *AuthorizationException) OrigErr() error {
4911	return nil
4912}
4913
4914func (s *AuthorizationException) Error() string {
4915	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
4916}
4917
4918// Status code returns the HTTP status code for the request's response error.
4919func (s *AuthorizationException) StatusCode() int {
4920	return s.RespMetadata.StatusCode
4921}
4922
4923// RequestID returns the service's response RequestID for request.
4924func (s *AuthorizationException) RequestID() string {
4925	return s.RespMetadata.RequestID
4926}
4927
4928// Describes automated discovery.
4929type AutomatedDiscoveryInformation struct {
4930	_ struct{} `type:"structure"`
4931
4932	// Time that automated discovery last ran.
4933	LastRunTime *time.Time `type:"timestamp"`
4934}
4935
4936// String returns the string representation.
4937//
4938// API parameter values that are decorated as "sensitive" in the API will not
4939// be included in the string output. The member name will be present, but the
4940// value will be replaced with "sensitive".
4941func (s AutomatedDiscoveryInformation) String() string {
4942	return awsutil.Prettify(s)
4943}
4944
4945// GoString returns the string representation.
4946//
4947// API parameter values that are decorated as "sensitive" in the API will not
4948// be included in the string output. The member name will be present, but the
4949// value will be replaced with "sensitive".
4950func (s AutomatedDiscoveryInformation) GoString() string {
4951	return s.String()
4952}
4953
4954// SetLastRunTime sets the LastRunTime field's value.
4955func (s *AutomatedDiscoveryInformation) SetLastRunTime(v time.Time) *AutomatedDiscoveryInformation {
4956	s.LastRunTime = &v
4957	return s
4958}
4959
4960// Details about a borrow configuration.
4961type BorrowConfiguration struct {
4962	_ struct{} `type:"structure"`
4963
4964	// Indicates whether early check-ins are allowed.
4965	//
4966	// AllowEarlyCheckIn is a required field
4967	AllowEarlyCheckIn *bool `type:"boolean" required:"true"`
4968
4969	// Maximum time for the borrow configuration, in minutes.
4970	//
4971	// MaxTimeToLiveInMinutes is a required field
4972	MaxTimeToLiveInMinutes *int64 `type:"integer" required:"true"`
4973}
4974
4975// String returns the string representation.
4976//
4977// API parameter values that are decorated as "sensitive" in the API will not
4978// be included in the string output. The member name will be present, but the
4979// value will be replaced with "sensitive".
4980func (s BorrowConfiguration) String() string {
4981	return awsutil.Prettify(s)
4982}
4983
4984// GoString returns the string representation.
4985//
4986// API parameter values that are decorated as "sensitive" in the API will not
4987// be included in the string output. The member name will be present, but the
4988// value will be replaced with "sensitive".
4989func (s BorrowConfiguration) GoString() string {
4990	return s.String()
4991}
4992
4993// Validate inspects the fields of the type to determine if they are valid.
4994func (s *BorrowConfiguration) Validate() error {
4995	invalidParams := request.ErrInvalidParams{Context: "BorrowConfiguration"}
4996	if s.AllowEarlyCheckIn == nil {
4997		invalidParams.Add(request.NewErrParamRequired("AllowEarlyCheckIn"))
4998	}
4999	if s.MaxTimeToLiveInMinutes == nil {
5000		invalidParams.Add(request.NewErrParamRequired("MaxTimeToLiveInMinutes"))
5001	}
5002
5003	if invalidParams.Len() > 0 {
5004		return invalidParams
5005	}
5006	return nil
5007}
5008
5009// SetAllowEarlyCheckIn sets the AllowEarlyCheckIn field's value.
5010func (s *BorrowConfiguration) SetAllowEarlyCheckIn(v bool) *BorrowConfiguration {
5011	s.AllowEarlyCheckIn = &v
5012	return s
5013}
5014
5015// SetMaxTimeToLiveInMinutes sets the MaxTimeToLiveInMinutes field's value.
5016func (s *BorrowConfiguration) SetMaxTimeToLiveInMinutes(v int64) *BorrowConfiguration {
5017	s.MaxTimeToLiveInMinutes = &v
5018	return s
5019}
5020
5021type CheckInLicenseInput struct {
5022	_ struct{} `type:"structure"`
5023
5024	// License beneficiary.
5025	Beneficiary *string `type:"string"`
5026
5027	// License consumption token.
5028	//
5029	// LicenseConsumptionToken is a required field
5030	LicenseConsumptionToken *string `type:"string" required:"true"`
5031}
5032
5033// String returns the string representation.
5034//
5035// API parameter values that are decorated as "sensitive" in the API will not
5036// be included in the string output. The member name will be present, but the
5037// value will be replaced with "sensitive".
5038func (s CheckInLicenseInput) String() string {
5039	return awsutil.Prettify(s)
5040}
5041
5042// GoString returns the string representation.
5043//
5044// API parameter values that are decorated as "sensitive" in the API will not
5045// be included in the string output. The member name will be present, but the
5046// value will be replaced with "sensitive".
5047func (s CheckInLicenseInput) GoString() string {
5048	return s.String()
5049}
5050
5051// Validate inspects the fields of the type to determine if they are valid.
5052func (s *CheckInLicenseInput) Validate() error {
5053	invalidParams := request.ErrInvalidParams{Context: "CheckInLicenseInput"}
5054	if s.LicenseConsumptionToken == nil {
5055		invalidParams.Add(request.NewErrParamRequired("LicenseConsumptionToken"))
5056	}
5057
5058	if invalidParams.Len() > 0 {
5059		return invalidParams
5060	}
5061	return nil
5062}
5063
5064// SetBeneficiary sets the Beneficiary field's value.
5065func (s *CheckInLicenseInput) SetBeneficiary(v string) *CheckInLicenseInput {
5066	s.Beneficiary = &v
5067	return s
5068}
5069
5070// SetLicenseConsumptionToken sets the LicenseConsumptionToken field's value.
5071func (s *CheckInLicenseInput) SetLicenseConsumptionToken(v string) *CheckInLicenseInput {
5072	s.LicenseConsumptionToken = &v
5073	return s
5074}
5075
5076type CheckInLicenseOutput struct {
5077	_ struct{} `type:"structure"`
5078}
5079
5080// String returns the string representation.
5081//
5082// API parameter values that are decorated as "sensitive" in the API will not
5083// be included in the string output. The member name will be present, but the
5084// value will be replaced with "sensitive".
5085func (s CheckInLicenseOutput) String() string {
5086	return awsutil.Prettify(s)
5087}
5088
5089// GoString returns the string representation.
5090//
5091// API parameter values that are decorated as "sensitive" in the API will not
5092// be included in the string output. The member name will be present, but the
5093// value will be replaced with "sensitive".
5094func (s CheckInLicenseOutput) GoString() string {
5095	return s.String()
5096}
5097
5098type CheckoutBorrowLicenseInput struct {
5099	_ struct{} `type:"structure"`
5100
5101	// Information about constraints.
5102	CheckoutMetadata []*Metadata `type:"list"`
5103
5104	// Unique, case-sensitive identifier that you provide to ensure the idempotency
5105	// of the request.
5106	//
5107	// ClientToken is a required field
5108	ClientToken *string `type:"string" required:"true"`
5109
5110	// Digital signature method. The possible value is JSON Web Signature (JWS)
5111	// algorithm PS384. For more information, see RFC 7518 Digital Signature with
5112	// RSASSA-PSS (https://tools.ietf.org/html/rfc7518#section-3.5).
5113	//
5114	// DigitalSignatureMethod is a required field
5115	DigitalSignatureMethod *string `type:"string" required:"true" enum:"DigitalSignatureMethod"`
5116
5117	// License entitlements. Partial checkouts are not supported.
5118	//
5119	// Entitlements is a required field
5120	Entitlements []*EntitlementData `type:"list" required:"true"`
5121
5122	// Amazon Resource Name (ARN) of the license. The license must use the borrow
5123	// consumption configuration.
5124	//
5125	// LicenseArn is a required field
5126	LicenseArn *string `type:"string" required:"true"`
5127
5128	// Node ID.
5129	NodeId *string `type:"string"`
5130}
5131
5132// String returns the string representation.
5133//
5134// API parameter values that are decorated as "sensitive" in the API will not
5135// be included in the string output. The member name will be present, but the
5136// value will be replaced with "sensitive".
5137func (s CheckoutBorrowLicenseInput) String() string {
5138	return awsutil.Prettify(s)
5139}
5140
5141// GoString returns the string representation.
5142//
5143// API parameter values that are decorated as "sensitive" in the API will not
5144// be included in the string output. The member name will be present, but the
5145// value will be replaced with "sensitive".
5146func (s CheckoutBorrowLicenseInput) GoString() string {
5147	return s.String()
5148}
5149
5150// Validate inspects the fields of the type to determine if they are valid.
5151func (s *CheckoutBorrowLicenseInput) Validate() error {
5152	invalidParams := request.ErrInvalidParams{Context: "CheckoutBorrowLicenseInput"}
5153	if s.ClientToken == nil {
5154		invalidParams.Add(request.NewErrParamRequired("ClientToken"))
5155	}
5156	if s.DigitalSignatureMethod == nil {
5157		invalidParams.Add(request.NewErrParamRequired("DigitalSignatureMethod"))
5158	}
5159	if s.Entitlements == nil {
5160		invalidParams.Add(request.NewErrParamRequired("Entitlements"))
5161	}
5162	if s.LicenseArn == nil {
5163		invalidParams.Add(request.NewErrParamRequired("LicenseArn"))
5164	}
5165	if s.Entitlements != nil {
5166		for i, v := range s.Entitlements {
5167			if v == nil {
5168				continue
5169			}
5170			if err := v.Validate(); err != nil {
5171				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Entitlements", i), err.(request.ErrInvalidParams))
5172			}
5173		}
5174	}
5175
5176	if invalidParams.Len() > 0 {
5177		return invalidParams
5178	}
5179	return nil
5180}
5181
5182// SetCheckoutMetadata sets the CheckoutMetadata field's value.
5183func (s *CheckoutBorrowLicenseInput) SetCheckoutMetadata(v []*Metadata) *CheckoutBorrowLicenseInput {
5184	s.CheckoutMetadata = v
5185	return s
5186}
5187
5188// SetClientToken sets the ClientToken field's value.
5189func (s *CheckoutBorrowLicenseInput) SetClientToken(v string) *CheckoutBorrowLicenseInput {
5190	s.ClientToken = &v
5191	return s
5192}
5193
5194// SetDigitalSignatureMethod sets the DigitalSignatureMethod field's value.
5195func (s *CheckoutBorrowLicenseInput) SetDigitalSignatureMethod(v string) *CheckoutBorrowLicenseInput {
5196	s.DigitalSignatureMethod = &v
5197	return s
5198}
5199
5200// SetEntitlements sets the Entitlements field's value.
5201func (s *CheckoutBorrowLicenseInput) SetEntitlements(v []*EntitlementData) *CheckoutBorrowLicenseInput {
5202	s.Entitlements = v
5203	return s
5204}
5205
5206// SetLicenseArn sets the LicenseArn field's value.
5207func (s *CheckoutBorrowLicenseInput) SetLicenseArn(v string) *CheckoutBorrowLicenseInput {
5208	s.LicenseArn = &v
5209	return s
5210}
5211
5212// SetNodeId sets the NodeId field's value.
5213func (s *CheckoutBorrowLicenseInput) SetNodeId(v string) *CheckoutBorrowLicenseInput {
5214	s.NodeId = &v
5215	return s
5216}
5217
5218type CheckoutBorrowLicenseOutput struct {
5219	_ struct{} `type:"structure"`
5220
5221	// Information about constraints.
5222	CheckoutMetadata []*Metadata `type:"list"`
5223
5224	// Allowed license entitlements.
5225	EntitlementsAllowed []*EntitlementData `type:"list"`
5226
5227	// Date and time at which the license checkout expires.
5228	Expiration *string `type:"string"`
5229
5230	// Date and time at which the license checkout is issued.
5231	IssuedAt *string `type:"string"`
5232
5233	// Amazon Resource Name (ARN) of the license.
5234	LicenseArn *string `type:"string"`
5235
5236	// License consumption token.
5237	LicenseConsumptionToken *string `type:"string"`
5238
5239	// Node ID.
5240	NodeId *string `type:"string"`
5241
5242	// Signed token.
5243	SignedToken *string `min:"4096" type:"string"`
5244}
5245
5246// String returns the string representation.
5247//
5248// API parameter values that are decorated as "sensitive" in the API will not
5249// be included in the string output. The member name will be present, but the
5250// value will be replaced with "sensitive".
5251func (s CheckoutBorrowLicenseOutput) String() string {
5252	return awsutil.Prettify(s)
5253}
5254
5255// GoString returns the string representation.
5256//
5257// API parameter values that are decorated as "sensitive" in the API will not
5258// be included in the string output. The member name will be present, but the
5259// value will be replaced with "sensitive".
5260func (s CheckoutBorrowLicenseOutput) GoString() string {
5261	return s.String()
5262}
5263
5264// SetCheckoutMetadata sets the CheckoutMetadata field's value.
5265func (s *CheckoutBorrowLicenseOutput) SetCheckoutMetadata(v []*Metadata) *CheckoutBorrowLicenseOutput {
5266	s.CheckoutMetadata = v
5267	return s
5268}
5269
5270// SetEntitlementsAllowed sets the EntitlementsAllowed field's value.
5271func (s *CheckoutBorrowLicenseOutput) SetEntitlementsAllowed(v []*EntitlementData) *CheckoutBorrowLicenseOutput {
5272	s.EntitlementsAllowed = v
5273	return s
5274}
5275
5276// SetExpiration sets the Expiration field's value.
5277func (s *CheckoutBorrowLicenseOutput) SetExpiration(v string) *CheckoutBorrowLicenseOutput {
5278	s.Expiration = &v
5279	return s
5280}
5281
5282// SetIssuedAt sets the IssuedAt field's value.
5283func (s *CheckoutBorrowLicenseOutput) SetIssuedAt(v string) *CheckoutBorrowLicenseOutput {
5284	s.IssuedAt = &v
5285	return s
5286}
5287
5288// SetLicenseArn sets the LicenseArn field's value.
5289func (s *CheckoutBorrowLicenseOutput) SetLicenseArn(v string) *CheckoutBorrowLicenseOutput {
5290	s.LicenseArn = &v
5291	return s
5292}
5293
5294// SetLicenseConsumptionToken sets the LicenseConsumptionToken field's value.
5295func (s *CheckoutBorrowLicenseOutput) SetLicenseConsumptionToken(v string) *CheckoutBorrowLicenseOutput {
5296	s.LicenseConsumptionToken = &v
5297	return s
5298}
5299
5300// SetNodeId sets the NodeId field's value.
5301func (s *CheckoutBorrowLicenseOutput) SetNodeId(v string) *CheckoutBorrowLicenseOutput {
5302	s.NodeId = &v
5303	return s
5304}
5305
5306// SetSignedToken sets the SignedToken field's value.
5307func (s *CheckoutBorrowLicenseOutput) SetSignedToken(v string) *CheckoutBorrowLicenseOutput {
5308	s.SignedToken = &v
5309	return s
5310}
5311
5312type CheckoutLicenseInput struct {
5313	_ struct{} `type:"structure"`
5314
5315	// License beneficiary.
5316	Beneficiary *string `type:"string"`
5317
5318	// Checkout type.
5319	//
5320	// CheckoutType is a required field
5321	CheckoutType *string `type:"string" required:"true" enum:"CheckoutType"`
5322
5323	// Unique, case-sensitive identifier that you provide to ensure the idempotency
5324	// of the request.
5325	//
5326	// ClientToken is a required field
5327	ClientToken *string `type:"string" required:"true"`
5328
5329	// License entitlements.
5330	//
5331	// Entitlements is a required field
5332	Entitlements []*EntitlementData `type:"list" required:"true"`
5333
5334	// Key fingerprint identifying the license.
5335	//
5336	// KeyFingerprint is a required field
5337	KeyFingerprint *string `type:"string" required:"true"`
5338
5339	// Node ID.
5340	NodeId *string `type:"string"`
5341
5342	// Product SKU.
5343	//
5344	// ProductSKU is a required field
5345	ProductSKU *string `type:"string" required:"true"`
5346}
5347
5348// String returns the string representation.
5349//
5350// API parameter values that are decorated as "sensitive" in the API will not
5351// be included in the string output. The member name will be present, but the
5352// value will be replaced with "sensitive".
5353func (s CheckoutLicenseInput) String() string {
5354	return awsutil.Prettify(s)
5355}
5356
5357// GoString returns the string representation.
5358//
5359// API parameter values that are decorated as "sensitive" in the API will not
5360// be included in the string output. The member name will be present, but the
5361// value will be replaced with "sensitive".
5362func (s CheckoutLicenseInput) GoString() string {
5363	return s.String()
5364}
5365
5366// Validate inspects the fields of the type to determine if they are valid.
5367func (s *CheckoutLicenseInput) Validate() error {
5368	invalidParams := request.ErrInvalidParams{Context: "CheckoutLicenseInput"}
5369	if s.CheckoutType == nil {
5370		invalidParams.Add(request.NewErrParamRequired("CheckoutType"))
5371	}
5372	if s.ClientToken == nil {
5373		invalidParams.Add(request.NewErrParamRequired("ClientToken"))
5374	}
5375	if s.Entitlements == nil {
5376		invalidParams.Add(request.NewErrParamRequired("Entitlements"))
5377	}
5378	if s.KeyFingerprint == nil {
5379		invalidParams.Add(request.NewErrParamRequired("KeyFingerprint"))
5380	}
5381	if s.ProductSKU == nil {
5382		invalidParams.Add(request.NewErrParamRequired("ProductSKU"))
5383	}
5384	if s.Entitlements != nil {
5385		for i, v := range s.Entitlements {
5386			if v == nil {
5387				continue
5388			}
5389			if err := v.Validate(); err != nil {
5390				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Entitlements", i), err.(request.ErrInvalidParams))
5391			}
5392		}
5393	}
5394
5395	if invalidParams.Len() > 0 {
5396		return invalidParams
5397	}
5398	return nil
5399}
5400
5401// SetBeneficiary sets the Beneficiary field's value.
5402func (s *CheckoutLicenseInput) SetBeneficiary(v string) *CheckoutLicenseInput {
5403	s.Beneficiary = &v
5404	return s
5405}
5406
5407// SetCheckoutType sets the CheckoutType field's value.
5408func (s *CheckoutLicenseInput) SetCheckoutType(v string) *CheckoutLicenseInput {
5409	s.CheckoutType = &v
5410	return s
5411}
5412
5413// SetClientToken sets the ClientToken field's value.
5414func (s *CheckoutLicenseInput) SetClientToken(v string) *CheckoutLicenseInput {
5415	s.ClientToken = &v
5416	return s
5417}
5418
5419// SetEntitlements sets the Entitlements field's value.
5420func (s *CheckoutLicenseInput) SetEntitlements(v []*EntitlementData) *CheckoutLicenseInput {
5421	s.Entitlements = v
5422	return s
5423}
5424
5425// SetKeyFingerprint sets the KeyFingerprint field's value.
5426func (s *CheckoutLicenseInput) SetKeyFingerprint(v string) *CheckoutLicenseInput {
5427	s.KeyFingerprint = &v
5428	return s
5429}
5430
5431// SetNodeId sets the NodeId field's value.
5432func (s *CheckoutLicenseInput) SetNodeId(v string) *CheckoutLicenseInput {
5433	s.NodeId = &v
5434	return s
5435}
5436
5437// SetProductSKU sets the ProductSKU field's value.
5438func (s *CheckoutLicenseInput) SetProductSKU(v string) *CheckoutLicenseInput {
5439	s.ProductSKU = &v
5440	return s
5441}
5442
5443type CheckoutLicenseOutput struct {
5444	_ struct{} `type:"structure"`
5445
5446	// Checkout type.
5447	CheckoutType *string `type:"string" enum:"CheckoutType"`
5448
5449	// Allowed license entitlements.
5450	EntitlementsAllowed []*EntitlementData `type:"list"`
5451
5452	// Date and time at which the license checkout expires.
5453	Expiration *string `type:"string"`
5454
5455	// Date and time at which the license checkout is issued.
5456	IssuedAt *string `type:"string"`
5457
5458	// Amazon Resource Name (ARN) of the checkout license.
5459	LicenseArn *string `type:"string"`
5460
5461	// License consumption token.
5462	LicenseConsumptionToken *string `type:"string"`
5463
5464	// Node ID.
5465	NodeId *string `type:"string"`
5466
5467	// Signed token.
5468	SignedToken *string `min:"4096" type:"string"`
5469}
5470
5471// String returns the string representation.
5472//
5473// API parameter values that are decorated as "sensitive" in the API will not
5474// be included in the string output. The member name will be present, but the
5475// value will be replaced with "sensitive".
5476func (s CheckoutLicenseOutput) String() string {
5477	return awsutil.Prettify(s)
5478}
5479
5480// GoString returns the string representation.
5481//
5482// API parameter values that are decorated as "sensitive" in the API will not
5483// be included in the string output. The member name will be present, but the
5484// value will be replaced with "sensitive".
5485func (s CheckoutLicenseOutput) GoString() string {
5486	return s.String()
5487}
5488
5489// SetCheckoutType sets the CheckoutType field's value.
5490func (s *CheckoutLicenseOutput) SetCheckoutType(v string) *CheckoutLicenseOutput {
5491	s.CheckoutType = &v
5492	return s
5493}
5494
5495// SetEntitlementsAllowed sets the EntitlementsAllowed field's value.
5496func (s *CheckoutLicenseOutput) SetEntitlementsAllowed(v []*EntitlementData) *CheckoutLicenseOutput {
5497	s.EntitlementsAllowed = v
5498	return s
5499}
5500
5501// SetExpiration sets the Expiration field's value.
5502func (s *CheckoutLicenseOutput) SetExpiration(v string) *CheckoutLicenseOutput {
5503	s.Expiration = &v
5504	return s
5505}
5506
5507// SetIssuedAt sets the IssuedAt field's value.
5508func (s *CheckoutLicenseOutput) SetIssuedAt(v string) *CheckoutLicenseOutput {
5509	s.IssuedAt = &v
5510	return s
5511}
5512
5513// SetLicenseArn sets the LicenseArn field's value.
5514func (s *CheckoutLicenseOutput) SetLicenseArn(v string) *CheckoutLicenseOutput {
5515	s.LicenseArn = &v
5516	return s
5517}
5518
5519// SetLicenseConsumptionToken sets the LicenseConsumptionToken field's value.
5520func (s *CheckoutLicenseOutput) SetLicenseConsumptionToken(v string) *CheckoutLicenseOutput {
5521	s.LicenseConsumptionToken = &v
5522	return s
5523}
5524
5525// SetNodeId sets the NodeId field's value.
5526func (s *CheckoutLicenseOutput) SetNodeId(v string) *CheckoutLicenseOutput {
5527	s.NodeId = &v
5528	return s
5529}
5530
5531// SetSignedToken sets the SignedToken field's value.
5532func (s *CheckoutLicenseOutput) SetSignedToken(v string) *CheckoutLicenseOutput {
5533	s.SignedToken = &v
5534	return s
5535}
5536
5537// There was a conflict processing the request. Try your request again.
5538type ConflictException struct {
5539	_            struct{}                  `type:"structure"`
5540	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
5541
5542	Message_ *string `locationName:"Message" type:"string"`
5543}
5544
5545// String returns the string representation.
5546//
5547// API parameter values that are decorated as "sensitive" in the API will not
5548// be included in the string output. The member name will be present, but the
5549// value will be replaced with "sensitive".
5550func (s ConflictException) String() string {
5551	return awsutil.Prettify(s)
5552}
5553
5554// GoString returns the string representation.
5555//
5556// API parameter values that are decorated as "sensitive" in the API will not
5557// be included in the string output. The member name will be present, but the
5558// value will be replaced with "sensitive".
5559func (s ConflictException) GoString() string {
5560	return s.String()
5561}
5562
5563func newErrorConflictException(v protocol.ResponseMetadata) error {
5564	return &ConflictException{
5565		RespMetadata: v,
5566	}
5567}
5568
5569// Code returns the exception type name.
5570func (s *ConflictException) Code() string {
5571	return "ConflictException"
5572}
5573
5574// Message returns the exception's message.
5575func (s *ConflictException) Message() string {
5576	if s.Message_ != nil {
5577		return *s.Message_
5578	}
5579	return ""
5580}
5581
5582// OrigErr always returns nil, satisfies awserr.Error interface.
5583func (s *ConflictException) OrigErr() error {
5584	return nil
5585}
5586
5587func (s *ConflictException) Error() string {
5588	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
5589}
5590
5591// Status code returns the HTTP status code for the request's response error.
5592func (s *ConflictException) StatusCode() int {
5593	return s.RespMetadata.StatusCode
5594}
5595
5596// RequestID returns the service's response RequestID for request.
5597func (s *ConflictException) RequestID() string {
5598	return s.RespMetadata.RequestID
5599}
5600
5601// Details about license consumption.
5602type ConsumedLicenseSummary struct {
5603	_ struct{} `type:"structure"`
5604
5605	// Number of licenses consumed by the resource.
5606	ConsumedLicenses *int64 `type:"long"`
5607
5608	// Resource type of the resource consuming a license.
5609	ResourceType *string `type:"string" enum:"ResourceType"`
5610}
5611
5612// String returns the string representation.
5613//
5614// API parameter values that are decorated as "sensitive" in the API will not
5615// be included in the string output. The member name will be present, but the
5616// value will be replaced with "sensitive".
5617func (s ConsumedLicenseSummary) String() string {
5618	return awsutil.Prettify(s)
5619}
5620
5621// GoString returns the string representation.
5622//
5623// API parameter values that are decorated as "sensitive" in the API will not
5624// be included in the string output. The member name will be present, but the
5625// value will be replaced with "sensitive".
5626func (s ConsumedLicenseSummary) GoString() string {
5627	return s.String()
5628}
5629
5630// SetConsumedLicenses sets the ConsumedLicenses field's value.
5631func (s *ConsumedLicenseSummary) SetConsumedLicenses(v int64) *ConsumedLicenseSummary {
5632	s.ConsumedLicenses = &v
5633	return s
5634}
5635
5636// SetResourceType sets the ResourceType field's value.
5637func (s *ConsumedLicenseSummary) SetResourceType(v string) *ConsumedLicenseSummary {
5638	s.ResourceType = &v
5639	return s
5640}
5641
5642// Details about a consumption configuration.
5643type ConsumptionConfiguration struct {
5644	_ struct{} `type:"structure"`
5645
5646	// Details about a borrow configuration.
5647	BorrowConfiguration *BorrowConfiguration `type:"structure"`
5648
5649	// Details about a provisional configuration.
5650	ProvisionalConfiguration *ProvisionalConfiguration `type:"structure"`
5651
5652	// Renewal frequency.
5653	RenewType *string `type:"string" enum:"RenewType"`
5654}
5655
5656// String returns the string representation.
5657//
5658// API parameter values that are decorated as "sensitive" in the API will not
5659// be included in the string output. The member name will be present, but the
5660// value will be replaced with "sensitive".
5661func (s ConsumptionConfiguration) String() string {
5662	return awsutil.Prettify(s)
5663}
5664
5665// GoString returns the string representation.
5666//
5667// API parameter values that are decorated as "sensitive" in the API will not
5668// be included in the string output. The member name will be present, but the
5669// value will be replaced with "sensitive".
5670func (s ConsumptionConfiguration) GoString() string {
5671	return s.String()
5672}
5673
5674// Validate inspects the fields of the type to determine if they are valid.
5675func (s *ConsumptionConfiguration) Validate() error {
5676	invalidParams := request.ErrInvalidParams{Context: "ConsumptionConfiguration"}
5677	if s.BorrowConfiguration != nil {
5678		if err := s.BorrowConfiguration.Validate(); err != nil {
5679			invalidParams.AddNested("BorrowConfiguration", err.(request.ErrInvalidParams))
5680		}
5681	}
5682	if s.ProvisionalConfiguration != nil {
5683		if err := s.ProvisionalConfiguration.Validate(); err != nil {
5684			invalidParams.AddNested("ProvisionalConfiguration", err.(request.ErrInvalidParams))
5685		}
5686	}
5687
5688	if invalidParams.Len() > 0 {
5689		return invalidParams
5690	}
5691	return nil
5692}
5693
5694// SetBorrowConfiguration sets the BorrowConfiguration field's value.
5695func (s *ConsumptionConfiguration) SetBorrowConfiguration(v *BorrowConfiguration) *ConsumptionConfiguration {
5696	s.BorrowConfiguration = v
5697	return s
5698}
5699
5700// SetProvisionalConfiguration sets the ProvisionalConfiguration field's value.
5701func (s *ConsumptionConfiguration) SetProvisionalConfiguration(v *ProvisionalConfiguration) *ConsumptionConfiguration {
5702	s.ProvisionalConfiguration = v
5703	return s
5704}
5705
5706// SetRenewType sets the RenewType field's value.
5707func (s *ConsumptionConfiguration) SetRenewType(v string) *ConsumptionConfiguration {
5708	s.RenewType = &v
5709	return s
5710}
5711
5712type CreateGrantInput struct {
5713	_ struct{} `type:"structure"`
5714
5715	// Allowed operations for the grant.
5716	//
5717	// AllowedOperations is a required field
5718	AllowedOperations []*string `min:"1" type:"list" required:"true"`
5719
5720	// Unique, case-sensitive identifier that you provide to ensure the idempotency
5721	// of the request.
5722	//
5723	// ClientToken is a required field
5724	ClientToken *string `type:"string" required:"true"`
5725
5726	// Grant name.
5727	//
5728	// GrantName is a required field
5729	GrantName *string `type:"string" required:"true"`
5730
5731	// Home Region of the grant.
5732	//
5733	// HomeRegion is a required field
5734	HomeRegion *string `type:"string" required:"true"`
5735
5736	// Amazon Resource Name (ARN) of the license.
5737	//
5738	// LicenseArn is a required field
5739	LicenseArn *string `type:"string" required:"true"`
5740
5741	// The grant principals.
5742	//
5743	// Principals is a required field
5744	Principals []*string `min:"1" type:"list" required:"true"`
5745}
5746
5747// String returns the string representation.
5748//
5749// API parameter values that are decorated as "sensitive" in the API will not
5750// be included in the string output. The member name will be present, but the
5751// value will be replaced with "sensitive".
5752func (s CreateGrantInput) String() string {
5753	return awsutil.Prettify(s)
5754}
5755
5756// GoString returns the string representation.
5757//
5758// API parameter values that are decorated as "sensitive" in the API will not
5759// be included in the string output. The member name will be present, but the
5760// value will be replaced with "sensitive".
5761func (s CreateGrantInput) GoString() string {
5762	return s.String()
5763}
5764
5765// Validate inspects the fields of the type to determine if they are valid.
5766func (s *CreateGrantInput) Validate() error {
5767	invalidParams := request.ErrInvalidParams{Context: "CreateGrantInput"}
5768	if s.AllowedOperations == nil {
5769		invalidParams.Add(request.NewErrParamRequired("AllowedOperations"))
5770	}
5771	if s.AllowedOperations != nil && len(s.AllowedOperations) < 1 {
5772		invalidParams.Add(request.NewErrParamMinLen("AllowedOperations", 1))
5773	}
5774	if s.ClientToken == nil {
5775		invalidParams.Add(request.NewErrParamRequired("ClientToken"))
5776	}
5777	if s.GrantName == nil {
5778		invalidParams.Add(request.NewErrParamRequired("GrantName"))
5779	}
5780	if s.HomeRegion == nil {
5781		invalidParams.Add(request.NewErrParamRequired("HomeRegion"))
5782	}
5783	if s.LicenseArn == nil {
5784		invalidParams.Add(request.NewErrParamRequired("LicenseArn"))
5785	}
5786	if s.Principals == nil {
5787		invalidParams.Add(request.NewErrParamRequired("Principals"))
5788	}
5789	if s.Principals != nil && len(s.Principals) < 1 {
5790		invalidParams.Add(request.NewErrParamMinLen("Principals", 1))
5791	}
5792
5793	if invalidParams.Len() > 0 {
5794		return invalidParams
5795	}
5796	return nil
5797}
5798
5799// SetAllowedOperations sets the AllowedOperations field's value.
5800func (s *CreateGrantInput) SetAllowedOperations(v []*string) *CreateGrantInput {
5801	s.AllowedOperations = v
5802	return s
5803}
5804
5805// SetClientToken sets the ClientToken field's value.
5806func (s *CreateGrantInput) SetClientToken(v string) *CreateGrantInput {
5807	s.ClientToken = &v
5808	return s
5809}
5810
5811// SetGrantName sets the GrantName field's value.
5812func (s *CreateGrantInput) SetGrantName(v string) *CreateGrantInput {
5813	s.GrantName = &v
5814	return s
5815}
5816
5817// SetHomeRegion sets the HomeRegion field's value.
5818func (s *CreateGrantInput) SetHomeRegion(v string) *CreateGrantInput {
5819	s.HomeRegion = &v
5820	return s
5821}
5822
5823// SetLicenseArn sets the LicenseArn field's value.
5824func (s *CreateGrantInput) SetLicenseArn(v string) *CreateGrantInput {
5825	s.LicenseArn = &v
5826	return s
5827}
5828
5829// SetPrincipals sets the Principals field's value.
5830func (s *CreateGrantInput) SetPrincipals(v []*string) *CreateGrantInput {
5831	s.Principals = v
5832	return s
5833}
5834
5835type CreateGrantOutput struct {
5836	_ struct{} `type:"structure"`
5837
5838	// Grant ARN.
5839	GrantArn *string `type:"string"`
5840
5841	// Grant status.
5842	Status *string `type:"string" enum:"GrantStatus"`
5843
5844	// Grant version.
5845	Version *string `type:"string"`
5846}
5847
5848// String returns the string representation.
5849//
5850// API parameter values that are decorated as "sensitive" in the API will not
5851// be included in the string output. The member name will be present, but the
5852// value will be replaced with "sensitive".
5853func (s CreateGrantOutput) String() string {
5854	return awsutil.Prettify(s)
5855}
5856
5857// GoString returns the string representation.
5858//
5859// API parameter values that are decorated as "sensitive" in the API will not
5860// be included in the string output. The member name will be present, but the
5861// value will be replaced with "sensitive".
5862func (s CreateGrantOutput) GoString() string {
5863	return s.String()
5864}
5865
5866// SetGrantArn sets the GrantArn field's value.
5867func (s *CreateGrantOutput) SetGrantArn(v string) *CreateGrantOutput {
5868	s.GrantArn = &v
5869	return s
5870}
5871
5872// SetStatus sets the Status field's value.
5873func (s *CreateGrantOutput) SetStatus(v string) *CreateGrantOutput {
5874	s.Status = &v
5875	return s
5876}
5877
5878// SetVersion sets the Version field's value.
5879func (s *CreateGrantOutput) SetVersion(v string) *CreateGrantOutput {
5880	s.Version = &v
5881	return s
5882}
5883
5884type CreateGrantVersionInput struct {
5885	_ struct{} `type:"structure"`
5886
5887	// Allowed operations for the grant.
5888	AllowedOperations []*string `min:"1" type:"list"`
5889
5890	// Unique, case-sensitive identifier that you provide to ensure the idempotency
5891	// of the request.
5892	//
5893	// ClientToken is a required field
5894	ClientToken *string `type:"string" required:"true"`
5895
5896	// Amazon Resource Name (ARN) of the grant.
5897	//
5898	// GrantArn is a required field
5899	GrantArn *string `type:"string" required:"true"`
5900
5901	// Grant name.
5902	GrantName *string `type:"string"`
5903
5904	// Current version of the grant.
5905	SourceVersion *string `type:"string"`
5906
5907	// Grant status.
5908	Status *string `type:"string" enum:"GrantStatus"`
5909
5910	// Grant status reason.
5911	StatusReason *string `type:"string"`
5912}
5913
5914// String returns the string representation.
5915//
5916// API parameter values that are decorated as "sensitive" in the API will not
5917// be included in the string output. The member name will be present, but the
5918// value will be replaced with "sensitive".
5919func (s CreateGrantVersionInput) String() string {
5920	return awsutil.Prettify(s)
5921}
5922
5923// GoString returns the string representation.
5924//
5925// API parameter values that are decorated as "sensitive" in the API will not
5926// be included in the string output. The member name will be present, but the
5927// value will be replaced with "sensitive".
5928func (s CreateGrantVersionInput) GoString() string {
5929	return s.String()
5930}
5931
5932// Validate inspects the fields of the type to determine if they are valid.
5933func (s *CreateGrantVersionInput) Validate() error {
5934	invalidParams := request.ErrInvalidParams{Context: "CreateGrantVersionInput"}
5935	if s.AllowedOperations != nil && len(s.AllowedOperations) < 1 {
5936		invalidParams.Add(request.NewErrParamMinLen("AllowedOperations", 1))
5937	}
5938	if s.ClientToken == nil {
5939		invalidParams.Add(request.NewErrParamRequired("ClientToken"))
5940	}
5941	if s.GrantArn == nil {
5942		invalidParams.Add(request.NewErrParamRequired("GrantArn"))
5943	}
5944
5945	if invalidParams.Len() > 0 {
5946		return invalidParams
5947	}
5948	return nil
5949}
5950
5951// SetAllowedOperations sets the AllowedOperations field's value.
5952func (s *CreateGrantVersionInput) SetAllowedOperations(v []*string) *CreateGrantVersionInput {
5953	s.AllowedOperations = v
5954	return s
5955}
5956
5957// SetClientToken sets the ClientToken field's value.
5958func (s *CreateGrantVersionInput) SetClientToken(v string) *CreateGrantVersionInput {
5959	s.ClientToken = &v
5960	return s
5961}
5962
5963// SetGrantArn sets the GrantArn field's value.
5964func (s *CreateGrantVersionInput) SetGrantArn(v string) *CreateGrantVersionInput {
5965	s.GrantArn = &v
5966	return s
5967}
5968
5969// SetGrantName sets the GrantName field's value.
5970func (s *CreateGrantVersionInput) SetGrantName(v string) *CreateGrantVersionInput {
5971	s.GrantName = &v
5972	return s
5973}
5974
5975// SetSourceVersion sets the SourceVersion field's value.
5976func (s *CreateGrantVersionInput) SetSourceVersion(v string) *CreateGrantVersionInput {
5977	s.SourceVersion = &v
5978	return s
5979}
5980
5981// SetStatus sets the Status field's value.
5982func (s *CreateGrantVersionInput) SetStatus(v string) *CreateGrantVersionInput {
5983	s.Status = &v
5984	return s
5985}
5986
5987// SetStatusReason sets the StatusReason field's value.
5988func (s *CreateGrantVersionInput) SetStatusReason(v string) *CreateGrantVersionInput {
5989	s.StatusReason = &v
5990	return s
5991}
5992
5993type CreateGrantVersionOutput struct {
5994	_ struct{} `type:"structure"`
5995
5996	// Grant ARN.
5997	GrantArn *string `type:"string"`
5998
5999	// Grant status.
6000	Status *string `type:"string" enum:"GrantStatus"`
6001
6002	// New version of the grant.
6003	Version *string `type:"string"`
6004}
6005
6006// String returns the string representation.
6007//
6008// API parameter values that are decorated as "sensitive" in the API will not
6009// be included in the string output. The member name will be present, but the
6010// value will be replaced with "sensitive".
6011func (s CreateGrantVersionOutput) String() string {
6012	return awsutil.Prettify(s)
6013}
6014
6015// GoString returns the string representation.
6016//
6017// API parameter values that are decorated as "sensitive" in the API will not
6018// be included in the string output. The member name will be present, but the
6019// value will be replaced with "sensitive".
6020func (s CreateGrantVersionOutput) GoString() string {
6021	return s.String()
6022}
6023
6024// SetGrantArn sets the GrantArn field's value.
6025func (s *CreateGrantVersionOutput) SetGrantArn(v string) *CreateGrantVersionOutput {
6026	s.GrantArn = &v
6027	return s
6028}
6029
6030// SetStatus sets the Status field's value.
6031func (s *CreateGrantVersionOutput) SetStatus(v string) *CreateGrantVersionOutput {
6032	s.Status = &v
6033	return s
6034}
6035
6036// SetVersion sets the Version field's value.
6037func (s *CreateGrantVersionOutput) SetVersion(v string) *CreateGrantVersionOutput {
6038	s.Version = &v
6039	return s
6040}
6041
6042type CreateLicenseConfigurationInput struct {
6043	_ struct{} `type:"structure"`
6044
6045	// Description of the license configuration.
6046	Description *string `type:"string"`
6047
6048	// When true, disassociates a resource when software is uninstalled.
6049	DisassociateWhenNotFound *bool `type:"boolean"`
6050
6051	// Number of licenses managed by the license configuration.
6052	LicenseCount *int64 `type:"long"`
6053
6054	// Indicates whether hard or soft license enforcement is used. Exceeding a hard
6055	// limit blocks the launch of new instances.
6056	LicenseCountHardLimit *bool `type:"boolean"`
6057
6058	// Dimension used to track the license inventory.
6059	//
6060	// LicenseCountingType is a required field
6061	LicenseCountingType *string `type:"string" required:"true" enum:"LicenseCountingType"`
6062
6063	// License rules. The syntax is #name=value (for example, #allowedTenancy=EC2-DedicatedHost).
6064	// The available rules vary by dimension, as follows.
6065	//
6066	//    * Cores dimension: allowedTenancy | licenseAffinityToHost | maximumCores
6067	//    | minimumCores
6068	//
6069	//    * Instances dimension: allowedTenancy | maximumCores | minimumCores |
6070	//    maximumSockets | minimumSockets | maximumVcpus | minimumVcpus
6071	//
6072	//    * Sockets dimension: allowedTenancy | licenseAffinityToHost | maximumSockets
6073	//    | minimumSockets
6074	//
6075	//    * vCPUs dimension: allowedTenancy | honorVcpuOptimization | maximumVcpus
6076	//    | minimumVcpus
6077	//
6078	// The unit for licenseAffinityToHost is days and the range is 1 to 180. The
6079	// possible values for allowedTenancy are EC2-Default, EC2-DedicatedHost, and
6080	// EC2-DedicatedInstance. The possible values for honorVcpuOptimization are
6081	// True and False.
6082	LicenseRules []*string `type:"list"`
6083
6084	// Name of the license configuration.
6085	//
6086	// Name is a required field
6087	Name *string `type:"string" required:"true"`
6088
6089	// Product information.
6090	ProductInformationList []*ProductInformation `type:"list"`
6091
6092	// Tags to add to the license configuration.
6093	Tags []*Tag `type:"list"`
6094}
6095
6096// String returns the string representation.
6097//
6098// API parameter values that are decorated as "sensitive" in the API will not
6099// be included in the string output. The member name will be present, but the
6100// value will be replaced with "sensitive".
6101func (s CreateLicenseConfigurationInput) String() string {
6102	return awsutil.Prettify(s)
6103}
6104
6105// GoString returns the string representation.
6106//
6107// API parameter values that are decorated as "sensitive" in the API will not
6108// be included in the string output. The member name will be present, but the
6109// value will be replaced with "sensitive".
6110func (s CreateLicenseConfigurationInput) GoString() string {
6111	return s.String()
6112}
6113
6114// Validate inspects the fields of the type to determine if they are valid.
6115func (s *CreateLicenseConfigurationInput) Validate() error {
6116	invalidParams := request.ErrInvalidParams{Context: "CreateLicenseConfigurationInput"}
6117	if s.LicenseCountingType == nil {
6118		invalidParams.Add(request.NewErrParamRequired("LicenseCountingType"))
6119	}
6120	if s.Name == nil {
6121		invalidParams.Add(request.NewErrParamRequired("Name"))
6122	}
6123	if s.ProductInformationList != nil {
6124		for i, v := range s.ProductInformationList {
6125			if v == nil {
6126				continue
6127			}
6128			if err := v.Validate(); err != nil {
6129				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ProductInformationList", i), err.(request.ErrInvalidParams))
6130			}
6131		}
6132	}
6133
6134	if invalidParams.Len() > 0 {
6135		return invalidParams
6136	}
6137	return nil
6138}
6139
6140// SetDescription sets the Description field's value.
6141func (s *CreateLicenseConfigurationInput) SetDescription(v string) *CreateLicenseConfigurationInput {
6142	s.Description = &v
6143	return s
6144}
6145
6146// SetDisassociateWhenNotFound sets the DisassociateWhenNotFound field's value.
6147func (s *CreateLicenseConfigurationInput) SetDisassociateWhenNotFound(v bool) *CreateLicenseConfigurationInput {
6148	s.DisassociateWhenNotFound = &v
6149	return s
6150}
6151
6152// SetLicenseCount sets the LicenseCount field's value.
6153func (s *CreateLicenseConfigurationInput) SetLicenseCount(v int64) *CreateLicenseConfigurationInput {
6154	s.LicenseCount = &v
6155	return s
6156}
6157
6158// SetLicenseCountHardLimit sets the LicenseCountHardLimit field's value.
6159func (s *CreateLicenseConfigurationInput) SetLicenseCountHardLimit(v bool) *CreateLicenseConfigurationInput {
6160	s.LicenseCountHardLimit = &v
6161	return s
6162}
6163
6164// SetLicenseCountingType sets the LicenseCountingType field's value.
6165func (s *CreateLicenseConfigurationInput) SetLicenseCountingType(v string) *CreateLicenseConfigurationInput {
6166	s.LicenseCountingType = &v
6167	return s
6168}
6169
6170// SetLicenseRules sets the LicenseRules field's value.
6171func (s *CreateLicenseConfigurationInput) SetLicenseRules(v []*string) *CreateLicenseConfigurationInput {
6172	s.LicenseRules = v
6173	return s
6174}
6175
6176// SetName sets the Name field's value.
6177func (s *CreateLicenseConfigurationInput) SetName(v string) *CreateLicenseConfigurationInput {
6178	s.Name = &v
6179	return s
6180}
6181
6182// SetProductInformationList sets the ProductInformationList field's value.
6183func (s *CreateLicenseConfigurationInput) SetProductInformationList(v []*ProductInformation) *CreateLicenseConfigurationInput {
6184	s.ProductInformationList = v
6185	return s
6186}
6187
6188// SetTags sets the Tags field's value.
6189func (s *CreateLicenseConfigurationInput) SetTags(v []*Tag) *CreateLicenseConfigurationInput {
6190	s.Tags = v
6191	return s
6192}
6193
6194type CreateLicenseConfigurationOutput struct {
6195	_ struct{} `type:"structure"`
6196
6197	// Amazon Resource Name (ARN) of the license configuration.
6198	LicenseConfigurationArn *string `type:"string"`
6199}
6200
6201// String returns the string representation.
6202//
6203// API parameter values that are decorated as "sensitive" in the API will not
6204// be included in the string output. The member name will be present, but the
6205// value will be replaced with "sensitive".
6206func (s CreateLicenseConfigurationOutput) String() string {
6207	return awsutil.Prettify(s)
6208}
6209
6210// GoString returns the string representation.
6211//
6212// API parameter values that are decorated as "sensitive" in the API will not
6213// be included in the string output. The member name will be present, but the
6214// value will be replaced with "sensitive".
6215func (s CreateLicenseConfigurationOutput) GoString() string {
6216	return s.String()
6217}
6218
6219// SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value.
6220func (s *CreateLicenseConfigurationOutput) SetLicenseConfigurationArn(v string) *CreateLicenseConfigurationOutput {
6221	s.LicenseConfigurationArn = &v
6222	return s
6223}
6224
6225type CreateLicenseConversionTaskForResourceInput struct {
6226	_ struct{} `type:"structure"`
6227
6228	// Information that identifies the license type you are converting to. For the
6229	// structure of the destination license, see Convert a license type using the
6230	// AWS CLI (https://docs.aws.amazon.com/license-manager/latest/userguide/conversion-procedures.html#conversion-cli)
6231	// in the License Manager User Guide.
6232	//
6233	// DestinationLicenseContext is a required field
6234	DestinationLicenseContext *LicenseConversionContext `type:"structure" required:"true"`
6235
6236	// Amazon Resource Name (ARN) of the resource you are converting the license
6237	// type for.
6238	//
6239	// ResourceArn is a required field
6240	ResourceArn *string `type:"string" required:"true"`
6241
6242	// Information that identifies the license type you are converting from. For
6243	// the structure of the source license, see Convert a license type using the
6244	// AWS CLI (https://docs.aws.amazon.com/license-manager/latest/userguide/conversion-procedures.html#conversion-cli)
6245	// in the License Manager User Guide.
6246	//
6247	// SourceLicenseContext is a required field
6248	SourceLicenseContext *LicenseConversionContext `type:"structure" required:"true"`
6249}
6250
6251// String returns the string representation.
6252//
6253// API parameter values that are decorated as "sensitive" in the API will not
6254// be included in the string output. The member name will be present, but the
6255// value will be replaced with "sensitive".
6256func (s CreateLicenseConversionTaskForResourceInput) String() string {
6257	return awsutil.Prettify(s)
6258}
6259
6260// GoString returns the string representation.
6261//
6262// API parameter values that are decorated as "sensitive" in the API will not
6263// be included in the string output. The member name will be present, but the
6264// value will be replaced with "sensitive".
6265func (s CreateLicenseConversionTaskForResourceInput) GoString() string {
6266	return s.String()
6267}
6268
6269// Validate inspects the fields of the type to determine if they are valid.
6270func (s *CreateLicenseConversionTaskForResourceInput) Validate() error {
6271	invalidParams := request.ErrInvalidParams{Context: "CreateLicenseConversionTaskForResourceInput"}
6272	if s.DestinationLicenseContext == nil {
6273		invalidParams.Add(request.NewErrParamRequired("DestinationLicenseContext"))
6274	}
6275	if s.ResourceArn == nil {
6276		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
6277	}
6278	if s.SourceLicenseContext == nil {
6279		invalidParams.Add(request.NewErrParamRequired("SourceLicenseContext"))
6280	}
6281
6282	if invalidParams.Len() > 0 {
6283		return invalidParams
6284	}
6285	return nil
6286}
6287
6288// SetDestinationLicenseContext sets the DestinationLicenseContext field's value.
6289func (s *CreateLicenseConversionTaskForResourceInput) SetDestinationLicenseContext(v *LicenseConversionContext) *CreateLicenseConversionTaskForResourceInput {
6290	s.DestinationLicenseContext = v
6291	return s
6292}
6293
6294// SetResourceArn sets the ResourceArn field's value.
6295func (s *CreateLicenseConversionTaskForResourceInput) SetResourceArn(v string) *CreateLicenseConversionTaskForResourceInput {
6296	s.ResourceArn = &v
6297	return s
6298}
6299
6300// SetSourceLicenseContext sets the SourceLicenseContext field's value.
6301func (s *CreateLicenseConversionTaskForResourceInput) SetSourceLicenseContext(v *LicenseConversionContext) *CreateLicenseConversionTaskForResourceInput {
6302	s.SourceLicenseContext = v
6303	return s
6304}
6305
6306type CreateLicenseConversionTaskForResourceOutput struct {
6307	_ struct{} `type:"structure"`
6308
6309	// The ID of the created license type conversion task.
6310	LicenseConversionTaskId *string `type:"string"`
6311}
6312
6313// String returns the string representation.
6314//
6315// API parameter values that are decorated as "sensitive" in the API will not
6316// be included in the string output. The member name will be present, but the
6317// value will be replaced with "sensitive".
6318func (s CreateLicenseConversionTaskForResourceOutput) String() string {
6319	return awsutil.Prettify(s)
6320}
6321
6322// GoString returns the string representation.
6323//
6324// API parameter values that are decorated as "sensitive" in the API will not
6325// be included in the string output. The member name will be present, but the
6326// value will be replaced with "sensitive".
6327func (s CreateLicenseConversionTaskForResourceOutput) GoString() string {
6328	return s.String()
6329}
6330
6331// SetLicenseConversionTaskId sets the LicenseConversionTaskId field's value.
6332func (s *CreateLicenseConversionTaskForResourceOutput) SetLicenseConversionTaskId(v string) *CreateLicenseConversionTaskForResourceOutput {
6333	s.LicenseConversionTaskId = &v
6334	return s
6335}
6336
6337type CreateLicenseInput struct {
6338	_ struct{} `type:"structure"`
6339
6340	// License beneficiary.
6341	//
6342	// Beneficiary is a required field
6343	Beneficiary *string `type:"string" required:"true"`
6344
6345	// Unique, case-sensitive identifier that you provide to ensure the idempotency
6346	// of the request.
6347	//
6348	// ClientToken is a required field
6349	ClientToken *string `type:"string" required:"true"`
6350
6351	// Configuration for consumption of the license. Choose a provisional configuration
6352	// for workloads running with continuous connectivity. Choose a borrow configuration
6353	// for workloads with offline usage.
6354	//
6355	// ConsumptionConfiguration is a required field
6356	ConsumptionConfiguration *ConsumptionConfiguration `type:"structure" required:"true"`
6357
6358	// License entitlements.
6359	//
6360	// Entitlements is a required field
6361	Entitlements []*Entitlement `type:"list" required:"true"`
6362
6363	// Home Region for the license.
6364	//
6365	// HomeRegion is a required field
6366	HomeRegion *string `type:"string" required:"true"`
6367
6368	// License issuer.
6369	//
6370	// Issuer is a required field
6371	Issuer *Issuer `type:"structure" required:"true"`
6372
6373	// Information about the license.
6374	LicenseMetadata []*Metadata `type:"list"`
6375
6376	// License name.
6377	//
6378	// LicenseName is a required field
6379	LicenseName *string `type:"string" required:"true"`
6380
6381	// Product name.
6382	//
6383	// ProductName is a required field
6384	ProductName *string `type:"string" required:"true"`
6385
6386	// Product SKU.
6387	//
6388	// ProductSKU is a required field
6389	ProductSKU *string `type:"string" required:"true"`
6390
6391	// Date and time range during which the license is valid, in ISO8601-UTC format.
6392	//
6393	// Validity is a required field
6394	Validity *DatetimeRange `type:"structure" required:"true"`
6395}
6396
6397// String returns the string representation.
6398//
6399// API parameter values that are decorated as "sensitive" in the API will not
6400// be included in the string output. The member name will be present, but the
6401// value will be replaced with "sensitive".
6402func (s CreateLicenseInput) String() string {
6403	return awsutil.Prettify(s)
6404}
6405
6406// GoString returns the string representation.
6407//
6408// API parameter values that are decorated as "sensitive" in the API will not
6409// be included in the string output. The member name will be present, but the
6410// value will be replaced with "sensitive".
6411func (s CreateLicenseInput) GoString() string {
6412	return s.String()
6413}
6414
6415// Validate inspects the fields of the type to determine if they are valid.
6416func (s *CreateLicenseInput) Validate() error {
6417	invalidParams := request.ErrInvalidParams{Context: "CreateLicenseInput"}
6418	if s.Beneficiary == nil {
6419		invalidParams.Add(request.NewErrParamRequired("Beneficiary"))
6420	}
6421	if s.ClientToken == nil {
6422		invalidParams.Add(request.NewErrParamRequired("ClientToken"))
6423	}
6424	if s.ConsumptionConfiguration == nil {
6425		invalidParams.Add(request.NewErrParamRequired("ConsumptionConfiguration"))
6426	}
6427	if s.Entitlements == nil {
6428		invalidParams.Add(request.NewErrParamRequired("Entitlements"))
6429	}
6430	if s.HomeRegion == nil {
6431		invalidParams.Add(request.NewErrParamRequired("HomeRegion"))
6432	}
6433	if s.Issuer == nil {
6434		invalidParams.Add(request.NewErrParamRequired("Issuer"))
6435	}
6436	if s.LicenseName == nil {
6437		invalidParams.Add(request.NewErrParamRequired("LicenseName"))
6438	}
6439	if s.ProductName == nil {
6440		invalidParams.Add(request.NewErrParamRequired("ProductName"))
6441	}
6442	if s.ProductSKU == nil {
6443		invalidParams.Add(request.NewErrParamRequired("ProductSKU"))
6444	}
6445	if s.Validity == nil {
6446		invalidParams.Add(request.NewErrParamRequired("Validity"))
6447	}
6448	if s.ConsumptionConfiguration != nil {
6449		if err := s.ConsumptionConfiguration.Validate(); err != nil {
6450			invalidParams.AddNested("ConsumptionConfiguration", err.(request.ErrInvalidParams))
6451		}
6452	}
6453	if s.Entitlements != nil {
6454		for i, v := range s.Entitlements {
6455			if v == nil {
6456				continue
6457			}
6458			if err := v.Validate(); err != nil {
6459				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Entitlements", i), err.(request.ErrInvalidParams))
6460			}
6461		}
6462	}
6463	if s.Issuer != nil {
6464		if err := s.Issuer.Validate(); err != nil {
6465			invalidParams.AddNested("Issuer", err.(request.ErrInvalidParams))
6466		}
6467	}
6468	if s.Validity != nil {
6469		if err := s.Validity.Validate(); err != nil {
6470			invalidParams.AddNested("Validity", err.(request.ErrInvalidParams))
6471		}
6472	}
6473
6474	if invalidParams.Len() > 0 {
6475		return invalidParams
6476	}
6477	return nil
6478}
6479
6480// SetBeneficiary sets the Beneficiary field's value.
6481func (s *CreateLicenseInput) SetBeneficiary(v string) *CreateLicenseInput {
6482	s.Beneficiary = &v
6483	return s
6484}
6485
6486// SetClientToken sets the ClientToken field's value.
6487func (s *CreateLicenseInput) SetClientToken(v string) *CreateLicenseInput {
6488	s.ClientToken = &v
6489	return s
6490}
6491
6492// SetConsumptionConfiguration sets the ConsumptionConfiguration field's value.
6493func (s *CreateLicenseInput) SetConsumptionConfiguration(v *ConsumptionConfiguration) *CreateLicenseInput {
6494	s.ConsumptionConfiguration = v
6495	return s
6496}
6497
6498// SetEntitlements sets the Entitlements field's value.
6499func (s *CreateLicenseInput) SetEntitlements(v []*Entitlement) *CreateLicenseInput {
6500	s.Entitlements = v
6501	return s
6502}
6503
6504// SetHomeRegion sets the HomeRegion field's value.
6505func (s *CreateLicenseInput) SetHomeRegion(v string) *CreateLicenseInput {
6506	s.HomeRegion = &v
6507	return s
6508}
6509
6510// SetIssuer sets the Issuer field's value.
6511func (s *CreateLicenseInput) SetIssuer(v *Issuer) *CreateLicenseInput {
6512	s.Issuer = v
6513	return s
6514}
6515
6516// SetLicenseMetadata sets the LicenseMetadata field's value.
6517func (s *CreateLicenseInput) SetLicenseMetadata(v []*Metadata) *CreateLicenseInput {
6518	s.LicenseMetadata = v
6519	return s
6520}
6521
6522// SetLicenseName sets the LicenseName field's value.
6523func (s *CreateLicenseInput) SetLicenseName(v string) *CreateLicenseInput {
6524	s.LicenseName = &v
6525	return s
6526}
6527
6528// SetProductName sets the ProductName field's value.
6529func (s *CreateLicenseInput) SetProductName(v string) *CreateLicenseInput {
6530	s.ProductName = &v
6531	return s
6532}
6533
6534// SetProductSKU sets the ProductSKU field's value.
6535func (s *CreateLicenseInput) SetProductSKU(v string) *CreateLicenseInput {
6536	s.ProductSKU = &v
6537	return s
6538}
6539
6540// SetValidity sets the Validity field's value.
6541func (s *CreateLicenseInput) SetValidity(v *DatetimeRange) *CreateLicenseInput {
6542	s.Validity = v
6543	return s
6544}
6545
6546type CreateLicenseManagerReportGeneratorInput struct {
6547	_ struct{} `type:"structure"`
6548
6549	// Unique, case-sensitive identifier that you provide to ensure the idempotency
6550	// of the request.
6551	//
6552	// ClientToken is a required field
6553	ClientToken *string `min:"1" type:"string" required:"true"`
6554
6555	// Description of the report generator.
6556	Description *string `type:"string"`
6557
6558	// Defines the type of license configuration the report generator tracks.
6559	//
6560	// ReportContext is a required field
6561	ReportContext *ReportContext `type:"structure" required:"true"`
6562
6563	// Frequency by which reports are generated. Reports can be generated daily,
6564	// monthly, or weekly.
6565	//
6566	// ReportFrequency is a required field
6567	ReportFrequency *ReportFrequency `type:"structure" required:"true"`
6568
6569	// Name of the report generator.
6570	//
6571	// ReportGeneratorName is a required field
6572	ReportGeneratorName *string `min:"1" type:"string" required:"true"`
6573
6574	// Tags to add to the report generator.
6575	Tags []*Tag `type:"list"`
6576
6577	// Type of reports to generate. The following report types an be generated:
6578	//
6579	//    * License configuration report - Reports the number and details of consumed
6580	//    licenses for a license configuration.
6581	//
6582	//    * Resource report - Reports the tracked licenses and resource consumption
6583	//    for a license configuration.
6584	//
6585	// Type is a required field
6586	Type []*string `type:"list" required:"true"`
6587}
6588
6589// String returns the string representation.
6590//
6591// API parameter values that are decorated as "sensitive" in the API will not
6592// be included in the string output. The member name will be present, but the
6593// value will be replaced with "sensitive".
6594func (s CreateLicenseManagerReportGeneratorInput) String() string {
6595	return awsutil.Prettify(s)
6596}
6597
6598// GoString returns the string representation.
6599//
6600// API parameter values that are decorated as "sensitive" in the API will not
6601// be included in the string output. The member name will be present, but the
6602// value will be replaced with "sensitive".
6603func (s CreateLicenseManagerReportGeneratorInput) GoString() string {
6604	return s.String()
6605}
6606
6607// Validate inspects the fields of the type to determine if they are valid.
6608func (s *CreateLicenseManagerReportGeneratorInput) Validate() error {
6609	invalidParams := request.ErrInvalidParams{Context: "CreateLicenseManagerReportGeneratorInput"}
6610	if s.ClientToken == nil {
6611		invalidParams.Add(request.NewErrParamRequired("ClientToken"))
6612	}
6613	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
6614		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
6615	}
6616	if s.ReportContext == nil {
6617		invalidParams.Add(request.NewErrParamRequired("ReportContext"))
6618	}
6619	if s.ReportFrequency == nil {
6620		invalidParams.Add(request.NewErrParamRequired("ReportFrequency"))
6621	}
6622	if s.ReportGeneratorName == nil {
6623		invalidParams.Add(request.NewErrParamRequired("ReportGeneratorName"))
6624	}
6625	if s.ReportGeneratorName != nil && len(*s.ReportGeneratorName) < 1 {
6626		invalidParams.Add(request.NewErrParamMinLen("ReportGeneratorName", 1))
6627	}
6628	if s.Type == nil {
6629		invalidParams.Add(request.NewErrParamRequired("Type"))
6630	}
6631	if s.ReportContext != nil {
6632		if err := s.ReportContext.Validate(); err != nil {
6633			invalidParams.AddNested("ReportContext", err.(request.ErrInvalidParams))
6634		}
6635	}
6636
6637	if invalidParams.Len() > 0 {
6638		return invalidParams
6639	}
6640	return nil
6641}
6642
6643// SetClientToken sets the ClientToken field's value.
6644func (s *CreateLicenseManagerReportGeneratorInput) SetClientToken(v string) *CreateLicenseManagerReportGeneratorInput {
6645	s.ClientToken = &v
6646	return s
6647}
6648
6649// SetDescription sets the Description field's value.
6650func (s *CreateLicenseManagerReportGeneratorInput) SetDescription(v string) *CreateLicenseManagerReportGeneratorInput {
6651	s.Description = &v
6652	return s
6653}
6654
6655// SetReportContext sets the ReportContext field's value.
6656func (s *CreateLicenseManagerReportGeneratorInput) SetReportContext(v *ReportContext) *CreateLicenseManagerReportGeneratorInput {
6657	s.ReportContext = v
6658	return s
6659}
6660
6661// SetReportFrequency sets the ReportFrequency field's value.
6662func (s *CreateLicenseManagerReportGeneratorInput) SetReportFrequency(v *ReportFrequency) *CreateLicenseManagerReportGeneratorInput {
6663	s.ReportFrequency = v
6664	return s
6665}
6666
6667// SetReportGeneratorName sets the ReportGeneratorName field's value.
6668func (s *CreateLicenseManagerReportGeneratorInput) SetReportGeneratorName(v string) *CreateLicenseManagerReportGeneratorInput {
6669	s.ReportGeneratorName = &v
6670	return s
6671}
6672
6673// SetTags sets the Tags field's value.
6674func (s *CreateLicenseManagerReportGeneratorInput) SetTags(v []*Tag) *CreateLicenseManagerReportGeneratorInput {
6675	s.Tags = v
6676	return s
6677}
6678
6679// SetType sets the Type field's value.
6680func (s *CreateLicenseManagerReportGeneratorInput) SetType(v []*string) *CreateLicenseManagerReportGeneratorInput {
6681	s.Type = v
6682	return s
6683}
6684
6685type CreateLicenseManagerReportGeneratorOutput struct {
6686	_ struct{} `type:"structure"`
6687
6688	// The Amazon Resource Name (ARN) of the new report generator.
6689	LicenseManagerReportGeneratorArn *string `type:"string"`
6690}
6691
6692// String returns the string representation.
6693//
6694// API parameter values that are decorated as "sensitive" in the API will not
6695// be included in the string output. The member name will be present, but the
6696// value will be replaced with "sensitive".
6697func (s CreateLicenseManagerReportGeneratorOutput) String() string {
6698	return awsutil.Prettify(s)
6699}
6700
6701// GoString returns the string representation.
6702//
6703// API parameter values that are decorated as "sensitive" in the API will not
6704// be included in the string output. The member name will be present, but the
6705// value will be replaced with "sensitive".
6706func (s CreateLicenseManagerReportGeneratorOutput) GoString() string {
6707	return s.String()
6708}
6709
6710// SetLicenseManagerReportGeneratorArn sets the LicenseManagerReportGeneratorArn field's value.
6711func (s *CreateLicenseManagerReportGeneratorOutput) SetLicenseManagerReportGeneratorArn(v string) *CreateLicenseManagerReportGeneratorOutput {
6712	s.LicenseManagerReportGeneratorArn = &v
6713	return s
6714}
6715
6716type CreateLicenseOutput struct {
6717	_ struct{} `type:"structure"`
6718
6719	// Amazon Resource Name (ARN) of the license.
6720	LicenseArn *string `type:"string"`
6721
6722	// License status.
6723	Status *string `type:"string" enum:"LicenseStatus"`
6724
6725	// License version.
6726	Version *string `type:"string"`
6727}
6728
6729// String returns the string representation.
6730//
6731// API parameter values that are decorated as "sensitive" in the API will not
6732// be included in the string output. The member name will be present, but the
6733// value will be replaced with "sensitive".
6734func (s CreateLicenseOutput) String() string {
6735	return awsutil.Prettify(s)
6736}
6737
6738// GoString returns the string representation.
6739//
6740// API parameter values that are decorated as "sensitive" in the API will not
6741// be included in the string output. The member name will be present, but the
6742// value will be replaced with "sensitive".
6743func (s CreateLicenseOutput) GoString() string {
6744	return s.String()
6745}
6746
6747// SetLicenseArn sets the LicenseArn field's value.
6748func (s *CreateLicenseOutput) SetLicenseArn(v string) *CreateLicenseOutput {
6749	s.LicenseArn = &v
6750	return s
6751}
6752
6753// SetStatus sets the Status field's value.
6754func (s *CreateLicenseOutput) SetStatus(v string) *CreateLicenseOutput {
6755	s.Status = &v
6756	return s
6757}
6758
6759// SetVersion sets the Version field's value.
6760func (s *CreateLicenseOutput) SetVersion(v string) *CreateLicenseOutput {
6761	s.Version = &v
6762	return s
6763}
6764
6765type CreateLicenseVersionInput struct {
6766	_ struct{} `type:"structure"`
6767
6768	// Unique, case-sensitive identifier that you provide to ensure the idempotency
6769	// of the request.
6770	//
6771	// ClientToken is a required field
6772	ClientToken *string `type:"string" required:"true"`
6773
6774	// Configuration for consumption of the license. Choose a provisional configuration
6775	// for workloads running with continuous connectivity. Choose a borrow configuration
6776	// for workloads with offline usage.
6777	//
6778	// ConsumptionConfiguration is a required field
6779	ConsumptionConfiguration *ConsumptionConfiguration `type:"structure" required:"true"`
6780
6781	// License entitlements.
6782	//
6783	// Entitlements is a required field
6784	Entitlements []*Entitlement `type:"list" required:"true"`
6785
6786	// Home Region of the license.
6787	//
6788	// HomeRegion is a required field
6789	HomeRegion *string `type:"string" required:"true"`
6790
6791	// License issuer.
6792	//
6793	// Issuer is a required field
6794	Issuer *Issuer `type:"structure" required:"true"`
6795
6796	// Amazon Resource Name (ARN) of the license.
6797	//
6798	// LicenseArn is a required field
6799	LicenseArn *string `type:"string" required:"true"`
6800
6801	// Information about the license.
6802	LicenseMetadata []*Metadata `type:"list"`
6803
6804	// License name.
6805	//
6806	// LicenseName is a required field
6807	LicenseName *string `type:"string" required:"true"`
6808
6809	// Product name.
6810	//
6811	// ProductName is a required field
6812	ProductName *string `type:"string" required:"true"`
6813
6814	// Current version of the license.
6815	SourceVersion *string `type:"string"`
6816
6817	// License status.
6818	//
6819	// Status is a required field
6820	Status *string `type:"string" required:"true" enum:"LicenseStatus"`
6821
6822	// Date and time range during which the license is valid, in ISO8601-UTC format.
6823	//
6824	// Validity is a required field
6825	Validity *DatetimeRange `type:"structure" required:"true"`
6826}
6827
6828// String returns the string representation.
6829//
6830// API parameter values that are decorated as "sensitive" in the API will not
6831// be included in the string output. The member name will be present, but the
6832// value will be replaced with "sensitive".
6833func (s CreateLicenseVersionInput) String() string {
6834	return awsutil.Prettify(s)
6835}
6836
6837// GoString returns the string representation.
6838//
6839// API parameter values that are decorated as "sensitive" in the API will not
6840// be included in the string output. The member name will be present, but the
6841// value will be replaced with "sensitive".
6842func (s CreateLicenseVersionInput) GoString() string {
6843	return s.String()
6844}
6845
6846// Validate inspects the fields of the type to determine if they are valid.
6847func (s *CreateLicenseVersionInput) Validate() error {
6848	invalidParams := request.ErrInvalidParams{Context: "CreateLicenseVersionInput"}
6849	if s.ClientToken == nil {
6850		invalidParams.Add(request.NewErrParamRequired("ClientToken"))
6851	}
6852	if s.ConsumptionConfiguration == nil {
6853		invalidParams.Add(request.NewErrParamRequired("ConsumptionConfiguration"))
6854	}
6855	if s.Entitlements == nil {
6856		invalidParams.Add(request.NewErrParamRequired("Entitlements"))
6857	}
6858	if s.HomeRegion == nil {
6859		invalidParams.Add(request.NewErrParamRequired("HomeRegion"))
6860	}
6861	if s.Issuer == nil {
6862		invalidParams.Add(request.NewErrParamRequired("Issuer"))
6863	}
6864	if s.LicenseArn == nil {
6865		invalidParams.Add(request.NewErrParamRequired("LicenseArn"))
6866	}
6867	if s.LicenseName == nil {
6868		invalidParams.Add(request.NewErrParamRequired("LicenseName"))
6869	}
6870	if s.ProductName == nil {
6871		invalidParams.Add(request.NewErrParamRequired("ProductName"))
6872	}
6873	if s.Status == nil {
6874		invalidParams.Add(request.NewErrParamRequired("Status"))
6875	}
6876	if s.Validity == nil {
6877		invalidParams.Add(request.NewErrParamRequired("Validity"))
6878	}
6879	if s.ConsumptionConfiguration != nil {
6880		if err := s.ConsumptionConfiguration.Validate(); err != nil {
6881			invalidParams.AddNested("ConsumptionConfiguration", err.(request.ErrInvalidParams))
6882		}
6883	}
6884	if s.Entitlements != nil {
6885		for i, v := range s.Entitlements {
6886			if v == nil {
6887				continue
6888			}
6889			if err := v.Validate(); err != nil {
6890				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Entitlements", i), err.(request.ErrInvalidParams))
6891			}
6892		}
6893	}
6894	if s.Issuer != nil {
6895		if err := s.Issuer.Validate(); err != nil {
6896			invalidParams.AddNested("Issuer", err.(request.ErrInvalidParams))
6897		}
6898	}
6899	if s.Validity != nil {
6900		if err := s.Validity.Validate(); err != nil {
6901			invalidParams.AddNested("Validity", err.(request.ErrInvalidParams))
6902		}
6903	}
6904
6905	if invalidParams.Len() > 0 {
6906		return invalidParams
6907	}
6908	return nil
6909}
6910
6911// SetClientToken sets the ClientToken field's value.
6912func (s *CreateLicenseVersionInput) SetClientToken(v string) *CreateLicenseVersionInput {
6913	s.ClientToken = &v
6914	return s
6915}
6916
6917// SetConsumptionConfiguration sets the ConsumptionConfiguration field's value.
6918func (s *CreateLicenseVersionInput) SetConsumptionConfiguration(v *ConsumptionConfiguration) *CreateLicenseVersionInput {
6919	s.ConsumptionConfiguration = v
6920	return s
6921}
6922
6923// SetEntitlements sets the Entitlements field's value.
6924func (s *CreateLicenseVersionInput) SetEntitlements(v []*Entitlement) *CreateLicenseVersionInput {
6925	s.Entitlements = v
6926	return s
6927}
6928
6929// SetHomeRegion sets the HomeRegion field's value.
6930func (s *CreateLicenseVersionInput) SetHomeRegion(v string) *CreateLicenseVersionInput {
6931	s.HomeRegion = &v
6932	return s
6933}
6934
6935// SetIssuer sets the Issuer field's value.
6936func (s *CreateLicenseVersionInput) SetIssuer(v *Issuer) *CreateLicenseVersionInput {
6937	s.Issuer = v
6938	return s
6939}
6940
6941// SetLicenseArn sets the LicenseArn field's value.
6942func (s *CreateLicenseVersionInput) SetLicenseArn(v string) *CreateLicenseVersionInput {
6943	s.LicenseArn = &v
6944	return s
6945}
6946
6947// SetLicenseMetadata sets the LicenseMetadata field's value.
6948func (s *CreateLicenseVersionInput) SetLicenseMetadata(v []*Metadata) *CreateLicenseVersionInput {
6949	s.LicenseMetadata = v
6950	return s
6951}
6952
6953// SetLicenseName sets the LicenseName field's value.
6954func (s *CreateLicenseVersionInput) SetLicenseName(v string) *CreateLicenseVersionInput {
6955	s.LicenseName = &v
6956	return s
6957}
6958
6959// SetProductName sets the ProductName field's value.
6960func (s *CreateLicenseVersionInput) SetProductName(v string) *CreateLicenseVersionInput {
6961	s.ProductName = &v
6962	return s
6963}
6964
6965// SetSourceVersion sets the SourceVersion field's value.
6966func (s *CreateLicenseVersionInput) SetSourceVersion(v string) *CreateLicenseVersionInput {
6967	s.SourceVersion = &v
6968	return s
6969}
6970
6971// SetStatus sets the Status field's value.
6972func (s *CreateLicenseVersionInput) SetStatus(v string) *CreateLicenseVersionInput {
6973	s.Status = &v
6974	return s
6975}
6976
6977// SetValidity sets the Validity field's value.
6978func (s *CreateLicenseVersionInput) SetValidity(v *DatetimeRange) *CreateLicenseVersionInput {
6979	s.Validity = v
6980	return s
6981}
6982
6983type CreateLicenseVersionOutput struct {
6984	_ struct{} `type:"structure"`
6985
6986	// License ARN.
6987	LicenseArn *string `type:"string"`
6988
6989	// License status.
6990	Status *string `type:"string" enum:"LicenseStatus"`
6991
6992	// New version of the license.
6993	Version *string `type:"string"`
6994}
6995
6996// String returns the string representation.
6997//
6998// API parameter values that are decorated as "sensitive" in the API will not
6999// be included in the string output. The member name will be present, but the
7000// value will be replaced with "sensitive".
7001func (s CreateLicenseVersionOutput) String() string {
7002	return awsutil.Prettify(s)
7003}
7004
7005// GoString returns the string representation.
7006//
7007// API parameter values that are decorated as "sensitive" in the API will not
7008// be included in the string output. The member name will be present, but the
7009// value will be replaced with "sensitive".
7010func (s CreateLicenseVersionOutput) GoString() string {
7011	return s.String()
7012}
7013
7014// SetLicenseArn sets the LicenseArn field's value.
7015func (s *CreateLicenseVersionOutput) SetLicenseArn(v string) *CreateLicenseVersionOutput {
7016	s.LicenseArn = &v
7017	return s
7018}
7019
7020// SetStatus sets the Status field's value.
7021func (s *CreateLicenseVersionOutput) SetStatus(v string) *CreateLicenseVersionOutput {
7022	s.Status = &v
7023	return s
7024}
7025
7026// SetVersion sets the Version field's value.
7027func (s *CreateLicenseVersionOutput) SetVersion(v string) *CreateLicenseVersionOutput {
7028	s.Version = &v
7029	return s
7030}
7031
7032type CreateTokenInput struct {
7033	_ struct{} `type:"structure"`
7034
7035	// Idempotency token, valid for 10 minutes.
7036	//
7037	// ClientToken is a required field
7038	ClientToken *string `type:"string" required:"true"`
7039
7040	// Token expiration, in days, counted from token creation. The default is 365
7041	// days.
7042	ExpirationInDays *int64 `type:"integer"`
7043
7044	// Amazon Resource Name (ARN) of the license. The ARN is mapped to the aud claim
7045	// of the JWT token.
7046	//
7047	// LicenseArn is a required field
7048	LicenseArn *string `type:"string" required:"true"`
7049
7050	// Amazon Resource Name (ARN) of the IAM roles to embed in the token. License
7051	// Manager does not check whether the roles are in use.
7052	RoleArns []*string `type:"list"`
7053
7054	// Data specified by the caller to be included in the JWT token. The data is
7055	// mapped to the amr claim of the JWT token.
7056	TokenProperties []*string `type:"list"`
7057}
7058
7059// String returns the string representation.
7060//
7061// API parameter values that are decorated as "sensitive" in the API will not
7062// be included in the string output. The member name will be present, but the
7063// value will be replaced with "sensitive".
7064func (s CreateTokenInput) String() string {
7065	return awsutil.Prettify(s)
7066}
7067
7068// GoString returns the string representation.
7069//
7070// API parameter values that are decorated as "sensitive" in the API will not
7071// be included in the string output. The member name will be present, but the
7072// value will be replaced with "sensitive".
7073func (s CreateTokenInput) GoString() string {
7074	return s.String()
7075}
7076
7077// Validate inspects the fields of the type to determine if they are valid.
7078func (s *CreateTokenInput) Validate() error {
7079	invalidParams := request.ErrInvalidParams{Context: "CreateTokenInput"}
7080	if s.ClientToken == nil {
7081		invalidParams.Add(request.NewErrParamRequired("ClientToken"))
7082	}
7083	if s.LicenseArn == nil {
7084		invalidParams.Add(request.NewErrParamRequired("LicenseArn"))
7085	}
7086
7087	if invalidParams.Len() > 0 {
7088		return invalidParams
7089	}
7090	return nil
7091}
7092
7093// SetClientToken sets the ClientToken field's value.
7094func (s *CreateTokenInput) SetClientToken(v string) *CreateTokenInput {
7095	s.ClientToken = &v
7096	return s
7097}
7098
7099// SetExpirationInDays sets the ExpirationInDays field's value.
7100func (s *CreateTokenInput) SetExpirationInDays(v int64) *CreateTokenInput {
7101	s.ExpirationInDays = &v
7102	return s
7103}
7104
7105// SetLicenseArn sets the LicenseArn field's value.
7106func (s *CreateTokenInput) SetLicenseArn(v string) *CreateTokenInput {
7107	s.LicenseArn = &v
7108	return s
7109}
7110
7111// SetRoleArns sets the RoleArns field's value.
7112func (s *CreateTokenInput) SetRoleArns(v []*string) *CreateTokenInput {
7113	s.RoleArns = v
7114	return s
7115}
7116
7117// SetTokenProperties sets the TokenProperties field's value.
7118func (s *CreateTokenInput) SetTokenProperties(v []*string) *CreateTokenInput {
7119	s.TokenProperties = v
7120	return s
7121}
7122
7123type CreateTokenOutput struct {
7124	_ struct{} `type:"structure"`
7125
7126	// Refresh token, encoded as a JWT token.
7127	Token *string `type:"string"`
7128
7129	// Token ID.
7130	TokenId *string `type:"string"`
7131
7132	// Token type.
7133	TokenType *string `type:"string" enum:"TokenType"`
7134}
7135
7136// String returns the string representation.
7137//
7138// API parameter values that are decorated as "sensitive" in the API will not
7139// be included in the string output. The member name will be present, but the
7140// value will be replaced with "sensitive".
7141func (s CreateTokenOutput) String() string {
7142	return awsutil.Prettify(s)
7143}
7144
7145// GoString returns the string representation.
7146//
7147// API parameter values that are decorated as "sensitive" in the API will not
7148// be included in the string output. The member name will be present, but the
7149// value will be replaced with "sensitive".
7150func (s CreateTokenOutput) GoString() string {
7151	return s.String()
7152}
7153
7154// SetToken sets the Token field's value.
7155func (s *CreateTokenOutput) SetToken(v string) *CreateTokenOutput {
7156	s.Token = &v
7157	return s
7158}
7159
7160// SetTokenId sets the TokenId field's value.
7161func (s *CreateTokenOutput) SetTokenId(v string) *CreateTokenOutput {
7162	s.TokenId = &v
7163	return s
7164}
7165
7166// SetTokenType sets the TokenType field's value.
7167func (s *CreateTokenOutput) SetTokenType(v string) *CreateTokenOutput {
7168	s.TokenType = &v
7169	return s
7170}
7171
7172// Describes a time range, in ISO8601-UTC format.
7173type DatetimeRange struct {
7174	_ struct{} `type:"structure"`
7175
7176	// Start of the time range.
7177	//
7178	// Begin is a required field
7179	Begin *string `type:"string" required:"true"`
7180
7181	// End of the time range.
7182	End *string `type:"string"`
7183}
7184
7185// String returns the string representation.
7186//
7187// API parameter values that are decorated as "sensitive" in the API will not
7188// be included in the string output. The member name will be present, but the
7189// value will be replaced with "sensitive".
7190func (s DatetimeRange) String() string {
7191	return awsutil.Prettify(s)
7192}
7193
7194// GoString returns the string representation.
7195//
7196// API parameter values that are decorated as "sensitive" in the API will not
7197// be included in the string output. The member name will be present, but the
7198// value will be replaced with "sensitive".
7199func (s DatetimeRange) GoString() string {
7200	return s.String()
7201}
7202
7203// Validate inspects the fields of the type to determine if they are valid.
7204func (s *DatetimeRange) Validate() error {
7205	invalidParams := request.ErrInvalidParams{Context: "DatetimeRange"}
7206	if s.Begin == nil {
7207		invalidParams.Add(request.NewErrParamRequired("Begin"))
7208	}
7209
7210	if invalidParams.Len() > 0 {
7211		return invalidParams
7212	}
7213	return nil
7214}
7215
7216// SetBegin sets the Begin field's value.
7217func (s *DatetimeRange) SetBegin(v string) *DatetimeRange {
7218	s.Begin = &v
7219	return s
7220}
7221
7222// SetEnd sets the End field's value.
7223func (s *DatetimeRange) SetEnd(v string) *DatetimeRange {
7224	s.End = &v
7225	return s
7226}
7227
7228type DeleteGrantInput struct {
7229	_ struct{} `type:"structure"`
7230
7231	// Amazon Resource Name (ARN) of the grant.
7232	//
7233	// GrantArn is a required field
7234	GrantArn *string `type:"string" required:"true"`
7235
7236	// The Status reason for the delete request.
7237	StatusReason *string `type:"string"`
7238
7239	// Current version of the grant.
7240	//
7241	// Version is a required field
7242	Version *string `type:"string" required:"true"`
7243}
7244
7245// String returns the string representation.
7246//
7247// API parameter values that are decorated as "sensitive" in the API will not
7248// be included in the string output. The member name will be present, but the
7249// value will be replaced with "sensitive".
7250func (s DeleteGrantInput) String() string {
7251	return awsutil.Prettify(s)
7252}
7253
7254// GoString returns the string representation.
7255//
7256// API parameter values that are decorated as "sensitive" in the API will not
7257// be included in the string output. The member name will be present, but the
7258// value will be replaced with "sensitive".
7259func (s DeleteGrantInput) GoString() string {
7260	return s.String()
7261}
7262
7263// Validate inspects the fields of the type to determine if they are valid.
7264func (s *DeleteGrantInput) Validate() error {
7265	invalidParams := request.ErrInvalidParams{Context: "DeleteGrantInput"}
7266	if s.GrantArn == nil {
7267		invalidParams.Add(request.NewErrParamRequired("GrantArn"))
7268	}
7269	if s.Version == nil {
7270		invalidParams.Add(request.NewErrParamRequired("Version"))
7271	}
7272
7273	if invalidParams.Len() > 0 {
7274		return invalidParams
7275	}
7276	return nil
7277}
7278
7279// SetGrantArn sets the GrantArn field's value.
7280func (s *DeleteGrantInput) SetGrantArn(v string) *DeleteGrantInput {
7281	s.GrantArn = &v
7282	return s
7283}
7284
7285// SetStatusReason sets the StatusReason field's value.
7286func (s *DeleteGrantInput) SetStatusReason(v string) *DeleteGrantInput {
7287	s.StatusReason = &v
7288	return s
7289}
7290
7291// SetVersion sets the Version field's value.
7292func (s *DeleteGrantInput) SetVersion(v string) *DeleteGrantInput {
7293	s.Version = &v
7294	return s
7295}
7296
7297type DeleteGrantOutput struct {
7298	_ struct{} `type:"structure"`
7299
7300	// Grant ARN.
7301	GrantArn *string `type:"string"`
7302
7303	// Grant status.
7304	Status *string `type:"string" enum:"GrantStatus"`
7305
7306	// Grant version.
7307	Version *string `type:"string"`
7308}
7309
7310// String returns the string representation.
7311//
7312// API parameter values that are decorated as "sensitive" in the API will not
7313// be included in the string output. The member name will be present, but the
7314// value will be replaced with "sensitive".
7315func (s DeleteGrantOutput) String() string {
7316	return awsutil.Prettify(s)
7317}
7318
7319// GoString returns the string representation.
7320//
7321// API parameter values that are decorated as "sensitive" in the API will not
7322// be included in the string output. The member name will be present, but the
7323// value will be replaced with "sensitive".
7324func (s DeleteGrantOutput) GoString() string {
7325	return s.String()
7326}
7327
7328// SetGrantArn sets the GrantArn field's value.
7329func (s *DeleteGrantOutput) SetGrantArn(v string) *DeleteGrantOutput {
7330	s.GrantArn = &v
7331	return s
7332}
7333
7334// SetStatus sets the Status field's value.
7335func (s *DeleteGrantOutput) SetStatus(v string) *DeleteGrantOutput {
7336	s.Status = &v
7337	return s
7338}
7339
7340// SetVersion sets the Version field's value.
7341func (s *DeleteGrantOutput) SetVersion(v string) *DeleteGrantOutput {
7342	s.Version = &v
7343	return s
7344}
7345
7346type DeleteLicenseConfigurationInput struct {
7347	_ struct{} `type:"structure"`
7348
7349	// ID of the license configuration.
7350	//
7351	// LicenseConfigurationArn is a required field
7352	LicenseConfigurationArn *string `type:"string" required:"true"`
7353}
7354
7355// String returns the string representation.
7356//
7357// API parameter values that are decorated as "sensitive" in the API will not
7358// be included in the string output. The member name will be present, but the
7359// value will be replaced with "sensitive".
7360func (s DeleteLicenseConfigurationInput) String() string {
7361	return awsutil.Prettify(s)
7362}
7363
7364// GoString returns the string representation.
7365//
7366// API parameter values that are decorated as "sensitive" in the API will not
7367// be included in the string output. The member name will be present, but the
7368// value will be replaced with "sensitive".
7369func (s DeleteLicenseConfigurationInput) GoString() string {
7370	return s.String()
7371}
7372
7373// Validate inspects the fields of the type to determine if they are valid.
7374func (s *DeleteLicenseConfigurationInput) Validate() error {
7375	invalidParams := request.ErrInvalidParams{Context: "DeleteLicenseConfigurationInput"}
7376	if s.LicenseConfigurationArn == nil {
7377		invalidParams.Add(request.NewErrParamRequired("LicenseConfigurationArn"))
7378	}
7379
7380	if invalidParams.Len() > 0 {
7381		return invalidParams
7382	}
7383	return nil
7384}
7385
7386// SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value.
7387func (s *DeleteLicenseConfigurationInput) SetLicenseConfigurationArn(v string) *DeleteLicenseConfigurationInput {
7388	s.LicenseConfigurationArn = &v
7389	return s
7390}
7391
7392type DeleteLicenseConfigurationOutput struct {
7393	_ struct{} `type:"structure"`
7394}
7395
7396// String returns the string representation.
7397//
7398// API parameter values that are decorated as "sensitive" in the API will not
7399// be included in the string output. The member name will be present, but the
7400// value will be replaced with "sensitive".
7401func (s DeleteLicenseConfigurationOutput) String() string {
7402	return awsutil.Prettify(s)
7403}
7404
7405// GoString returns the string representation.
7406//
7407// API parameter values that are decorated as "sensitive" in the API will not
7408// be included in the string output. The member name will be present, but the
7409// value will be replaced with "sensitive".
7410func (s DeleteLicenseConfigurationOutput) GoString() string {
7411	return s.String()
7412}
7413
7414type DeleteLicenseInput struct {
7415	_ struct{} `type:"structure"`
7416
7417	// Amazon Resource Name (ARN) of the license.
7418	//
7419	// LicenseArn is a required field
7420	LicenseArn *string `type:"string" required:"true"`
7421
7422	// Current version of the license.
7423	//
7424	// SourceVersion is a required field
7425	SourceVersion *string `type:"string" required:"true"`
7426}
7427
7428// String returns the string representation.
7429//
7430// API parameter values that are decorated as "sensitive" in the API will not
7431// be included in the string output. The member name will be present, but the
7432// value will be replaced with "sensitive".
7433func (s DeleteLicenseInput) String() string {
7434	return awsutil.Prettify(s)
7435}
7436
7437// GoString returns the string representation.
7438//
7439// API parameter values that are decorated as "sensitive" in the API will not
7440// be included in the string output. The member name will be present, but the
7441// value will be replaced with "sensitive".
7442func (s DeleteLicenseInput) GoString() string {
7443	return s.String()
7444}
7445
7446// Validate inspects the fields of the type to determine if they are valid.
7447func (s *DeleteLicenseInput) Validate() error {
7448	invalidParams := request.ErrInvalidParams{Context: "DeleteLicenseInput"}
7449	if s.LicenseArn == nil {
7450		invalidParams.Add(request.NewErrParamRequired("LicenseArn"))
7451	}
7452	if s.SourceVersion == nil {
7453		invalidParams.Add(request.NewErrParamRequired("SourceVersion"))
7454	}
7455
7456	if invalidParams.Len() > 0 {
7457		return invalidParams
7458	}
7459	return nil
7460}
7461
7462// SetLicenseArn sets the LicenseArn field's value.
7463func (s *DeleteLicenseInput) SetLicenseArn(v string) *DeleteLicenseInput {
7464	s.LicenseArn = &v
7465	return s
7466}
7467
7468// SetSourceVersion sets the SourceVersion field's value.
7469func (s *DeleteLicenseInput) SetSourceVersion(v string) *DeleteLicenseInput {
7470	s.SourceVersion = &v
7471	return s
7472}
7473
7474type DeleteLicenseManagerReportGeneratorInput struct {
7475	_ struct{} `type:"structure"`
7476
7477	// Amazon Resource Name (ARN) of the report generator to be deleted.
7478	//
7479	// LicenseManagerReportGeneratorArn is a required field
7480	LicenseManagerReportGeneratorArn *string `type:"string" required:"true"`
7481}
7482
7483// String returns the string representation.
7484//
7485// API parameter values that are decorated as "sensitive" in the API will not
7486// be included in the string output. The member name will be present, but the
7487// value will be replaced with "sensitive".
7488func (s DeleteLicenseManagerReportGeneratorInput) String() string {
7489	return awsutil.Prettify(s)
7490}
7491
7492// GoString returns the string representation.
7493//
7494// API parameter values that are decorated as "sensitive" in the API will not
7495// be included in the string output. The member name will be present, but the
7496// value will be replaced with "sensitive".
7497func (s DeleteLicenseManagerReportGeneratorInput) GoString() string {
7498	return s.String()
7499}
7500
7501// Validate inspects the fields of the type to determine if they are valid.
7502func (s *DeleteLicenseManagerReportGeneratorInput) Validate() error {
7503	invalidParams := request.ErrInvalidParams{Context: "DeleteLicenseManagerReportGeneratorInput"}
7504	if s.LicenseManagerReportGeneratorArn == nil {
7505		invalidParams.Add(request.NewErrParamRequired("LicenseManagerReportGeneratorArn"))
7506	}
7507
7508	if invalidParams.Len() > 0 {
7509		return invalidParams
7510	}
7511	return nil
7512}
7513
7514// SetLicenseManagerReportGeneratorArn sets the LicenseManagerReportGeneratorArn field's value.
7515func (s *DeleteLicenseManagerReportGeneratorInput) SetLicenseManagerReportGeneratorArn(v string) *DeleteLicenseManagerReportGeneratorInput {
7516	s.LicenseManagerReportGeneratorArn = &v
7517	return s
7518}
7519
7520type DeleteLicenseManagerReportGeneratorOutput struct {
7521	_ struct{} `type:"structure"`
7522}
7523
7524// String returns the string representation.
7525//
7526// API parameter values that are decorated as "sensitive" in the API will not
7527// be included in the string output. The member name will be present, but the
7528// value will be replaced with "sensitive".
7529func (s DeleteLicenseManagerReportGeneratorOutput) String() string {
7530	return awsutil.Prettify(s)
7531}
7532
7533// GoString returns the string representation.
7534//
7535// API parameter values that are decorated as "sensitive" in the API will not
7536// be included in the string output. The member name will be present, but the
7537// value will be replaced with "sensitive".
7538func (s DeleteLicenseManagerReportGeneratorOutput) GoString() string {
7539	return s.String()
7540}
7541
7542type DeleteLicenseOutput struct {
7543	_ struct{} `type:"structure"`
7544
7545	// Date when the license is deleted.
7546	DeletionDate *string `type:"string"`
7547
7548	// License status.
7549	Status *string `type:"string" enum:"LicenseDeletionStatus"`
7550}
7551
7552// String returns the string representation.
7553//
7554// API parameter values that are decorated as "sensitive" in the API will not
7555// be included in the string output. The member name will be present, but the
7556// value will be replaced with "sensitive".
7557func (s DeleteLicenseOutput) String() string {
7558	return awsutil.Prettify(s)
7559}
7560
7561// GoString returns the string representation.
7562//
7563// API parameter values that are decorated as "sensitive" in the API will not
7564// be included in the string output. The member name will be present, but the
7565// value will be replaced with "sensitive".
7566func (s DeleteLicenseOutput) GoString() string {
7567	return s.String()
7568}
7569
7570// SetDeletionDate sets the DeletionDate field's value.
7571func (s *DeleteLicenseOutput) SetDeletionDate(v string) *DeleteLicenseOutput {
7572	s.DeletionDate = &v
7573	return s
7574}
7575
7576// SetStatus sets the Status field's value.
7577func (s *DeleteLicenseOutput) SetStatus(v string) *DeleteLicenseOutput {
7578	s.Status = &v
7579	return s
7580}
7581
7582type DeleteTokenInput struct {
7583	_ struct{} `type:"structure"`
7584
7585	// Token ID.
7586	//
7587	// TokenId is a required field
7588	TokenId *string `type:"string" required:"true"`
7589}
7590
7591// String returns the string representation.
7592//
7593// API parameter values that are decorated as "sensitive" in the API will not
7594// be included in the string output. The member name will be present, but the
7595// value will be replaced with "sensitive".
7596func (s DeleteTokenInput) String() string {
7597	return awsutil.Prettify(s)
7598}
7599
7600// GoString returns the string representation.
7601//
7602// API parameter values that are decorated as "sensitive" in the API will not
7603// be included in the string output. The member name will be present, but the
7604// value will be replaced with "sensitive".
7605func (s DeleteTokenInput) GoString() string {
7606	return s.String()
7607}
7608
7609// Validate inspects the fields of the type to determine if they are valid.
7610func (s *DeleteTokenInput) Validate() error {
7611	invalidParams := request.ErrInvalidParams{Context: "DeleteTokenInput"}
7612	if s.TokenId == nil {
7613		invalidParams.Add(request.NewErrParamRequired("TokenId"))
7614	}
7615
7616	if invalidParams.Len() > 0 {
7617		return invalidParams
7618	}
7619	return nil
7620}
7621
7622// SetTokenId sets the TokenId field's value.
7623func (s *DeleteTokenInput) SetTokenId(v string) *DeleteTokenInput {
7624	s.TokenId = &v
7625	return s
7626}
7627
7628type DeleteTokenOutput struct {
7629	_ struct{} `type:"structure"`
7630}
7631
7632// String returns the string representation.
7633//
7634// API parameter values that are decorated as "sensitive" in the API will not
7635// be included in the string output. The member name will be present, but the
7636// value will be replaced with "sensitive".
7637func (s DeleteTokenOutput) String() string {
7638	return awsutil.Prettify(s)
7639}
7640
7641// GoString returns the string representation.
7642//
7643// API parameter values that are decorated as "sensitive" in the API will not
7644// be included in the string output. The member name will be present, but the
7645// value will be replaced with "sensitive".
7646func (s DeleteTokenOutput) GoString() string {
7647	return s.String()
7648}
7649
7650// Describes a resource entitled for use with a license.
7651type Entitlement struct {
7652	_ struct{} `type:"structure"`
7653
7654	// Indicates whether check-ins are allowed.
7655	AllowCheckIn *bool `type:"boolean"`
7656
7657	// Maximum entitlement count. Use if the unit is not None.
7658	MaxCount *int64 `type:"long"`
7659
7660	// Entitlement name.
7661	//
7662	// Name is a required field
7663	Name *string `type:"string" required:"true"`
7664
7665	// Indicates whether overages are allowed.
7666	Overage *bool `type:"boolean"`
7667
7668	// Entitlement unit.
7669	//
7670	// Unit is a required field
7671	Unit *string `type:"string" required:"true" enum:"EntitlementUnit"`
7672
7673	// Entitlement resource. Use only if the unit is None.
7674	Value *string `type:"string"`
7675}
7676
7677// String returns the string representation.
7678//
7679// API parameter values that are decorated as "sensitive" in the API will not
7680// be included in the string output. The member name will be present, but the
7681// value will be replaced with "sensitive".
7682func (s Entitlement) String() string {
7683	return awsutil.Prettify(s)
7684}
7685
7686// GoString returns the string representation.
7687//
7688// API parameter values that are decorated as "sensitive" in the API will not
7689// be included in the string output. The member name will be present, but the
7690// value will be replaced with "sensitive".
7691func (s Entitlement) GoString() string {
7692	return s.String()
7693}
7694
7695// Validate inspects the fields of the type to determine if they are valid.
7696func (s *Entitlement) Validate() error {
7697	invalidParams := request.ErrInvalidParams{Context: "Entitlement"}
7698	if s.Name == nil {
7699		invalidParams.Add(request.NewErrParamRequired("Name"))
7700	}
7701	if s.Unit == nil {
7702		invalidParams.Add(request.NewErrParamRequired("Unit"))
7703	}
7704
7705	if invalidParams.Len() > 0 {
7706		return invalidParams
7707	}
7708	return nil
7709}
7710
7711// SetAllowCheckIn sets the AllowCheckIn field's value.
7712func (s *Entitlement) SetAllowCheckIn(v bool) *Entitlement {
7713	s.AllowCheckIn = &v
7714	return s
7715}
7716
7717// SetMaxCount sets the MaxCount field's value.
7718func (s *Entitlement) SetMaxCount(v int64) *Entitlement {
7719	s.MaxCount = &v
7720	return s
7721}
7722
7723// SetName sets the Name field's value.
7724func (s *Entitlement) SetName(v string) *Entitlement {
7725	s.Name = &v
7726	return s
7727}
7728
7729// SetOverage sets the Overage field's value.
7730func (s *Entitlement) SetOverage(v bool) *Entitlement {
7731	s.Overage = &v
7732	return s
7733}
7734
7735// SetUnit sets the Unit field's value.
7736func (s *Entitlement) SetUnit(v string) *Entitlement {
7737	s.Unit = &v
7738	return s
7739}
7740
7741// SetValue sets the Value field's value.
7742func (s *Entitlement) SetValue(v string) *Entitlement {
7743	s.Value = &v
7744	return s
7745}
7746
7747// Data associated with an entitlement resource.
7748type EntitlementData struct {
7749	_ struct{} `type:"structure"`
7750
7751	// Entitlement data name.
7752	//
7753	// Name is a required field
7754	Name *string `type:"string" required:"true"`
7755
7756	// Entitlement data unit.
7757	//
7758	// Unit is a required field
7759	Unit *string `type:"string" required:"true" enum:"EntitlementDataUnit"`
7760
7761	// Entitlement data value.
7762	Value *string `type:"string"`
7763}
7764
7765// String returns the string representation.
7766//
7767// API parameter values that are decorated as "sensitive" in the API will not
7768// be included in the string output. The member name will be present, but the
7769// value will be replaced with "sensitive".
7770func (s EntitlementData) String() string {
7771	return awsutil.Prettify(s)
7772}
7773
7774// GoString returns the string representation.
7775//
7776// API parameter values that are decorated as "sensitive" in the API will not
7777// be included in the string output. The member name will be present, but the
7778// value will be replaced with "sensitive".
7779func (s EntitlementData) GoString() string {
7780	return s.String()
7781}
7782
7783// Validate inspects the fields of the type to determine if they are valid.
7784func (s *EntitlementData) Validate() error {
7785	invalidParams := request.ErrInvalidParams{Context: "EntitlementData"}
7786	if s.Name == nil {
7787		invalidParams.Add(request.NewErrParamRequired("Name"))
7788	}
7789	if s.Unit == nil {
7790		invalidParams.Add(request.NewErrParamRequired("Unit"))
7791	}
7792
7793	if invalidParams.Len() > 0 {
7794		return invalidParams
7795	}
7796	return nil
7797}
7798
7799// SetName sets the Name field's value.
7800func (s *EntitlementData) SetName(v string) *EntitlementData {
7801	s.Name = &v
7802	return s
7803}
7804
7805// SetUnit sets the Unit field's value.
7806func (s *EntitlementData) SetUnit(v string) *EntitlementData {
7807	s.Unit = &v
7808	return s
7809}
7810
7811// SetValue sets the Value field's value.
7812func (s *EntitlementData) SetValue(v string) *EntitlementData {
7813	s.Value = &v
7814	return s
7815}
7816
7817// The entitlement is not allowed.
7818type EntitlementNotAllowedException struct {
7819	_            struct{}                  `type:"structure"`
7820	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
7821
7822	Message_ *string `locationName:"Message" type:"string"`
7823}
7824
7825// String returns the string representation.
7826//
7827// API parameter values that are decorated as "sensitive" in the API will not
7828// be included in the string output. The member name will be present, but the
7829// value will be replaced with "sensitive".
7830func (s EntitlementNotAllowedException) String() string {
7831	return awsutil.Prettify(s)
7832}
7833
7834// GoString returns the string representation.
7835//
7836// API parameter values that are decorated as "sensitive" in the API will not
7837// be included in the string output. The member name will be present, but the
7838// value will be replaced with "sensitive".
7839func (s EntitlementNotAllowedException) GoString() string {
7840	return s.String()
7841}
7842
7843func newErrorEntitlementNotAllowedException(v protocol.ResponseMetadata) error {
7844	return &EntitlementNotAllowedException{
7845		RespMetadata: v,
7846	}
7847}
7848
7849// Code returns the exception type name.
7850func (s *EntitlementNotAllowedException) Code() string {
7851	return "EntitlementNotAllowedException"
7852}
7853
7854// Message returns the exception's message.
7855func (s *EntitlementNotAllowedException) Message() string {
7856	if s.Message_ != nil {
7857		return *s.Message_
7858	}
7859	return ""
7860}
7861
7862// OrigErr always returns nil, satisfies awserr.Error interface.
7863func (s *EntitlementNotAllowedException) OrigErr() error {
7864	return nil
7865}
7866
7867func (s *EntitlementNotAllowedException) Error() string {
7868	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
7869}
7870
7871// Status code returns the HTTP status code for the request's response error.
7872func (s *EntitlementNotAllowedException) StatusCode() int {
7873	return s.RespMetadata.StatusCode
7874}
7875
7876// RequestID returns the service's response RequestID for request.
7877func (s *EntitlementNotAllowedException) RequestID() string {
7878	return s.RespMetadata.RequestID
7879}
7880
7881// Usage associated with an entitlement resource.
7882type EntitlementUsage struct {
7883	_ struct{} `type:"structure"`
7884
7885	// Resource usage consumed.
7886	//
7887	// ConsumedValue is a required field
7888	ConsumedValue *string `type:"string" required:"true"`
7889
7890	// Maximum entitlement usage count.
7891	MaxCount *string `type:"string"`
7892
7893	// Entitlement usage name.
7894	//
7895	// Name is a required field
7896	Name *string `type:"string" required:"true"`
7897
7898	// Entitlement usage unit.
7899	//
7900	// Unit is a required field
7901	Unit *string `type:"string" required:"true" enum:"EntitlementDataUnit"`
7902}
7903
7904// String returns the string representation.
7905//
7906// API parameter values that are decorated as "sensitive" in the API will not
7907// be included in the string output. The member name will be present, but the
7908// value will be replaced with "sensitive".
7909func (s EntitlementUsage) String() string {
7910	return awsutil.Prettify(s)
7911}
7912
7913// GoString returns the string representation.
7914//
7915// API parameter values that are decorated as "sensitive" in the API will not
7916// be included in the string output. The member name will be present, but the
7917// value will be replaced with "sensitive".
7918func (s EntitlementUsage) GoString() string {
7919	return s.String()
7920}
7921
7922// SetConsumedValue sets the ConsumedValue field's value.
7923func (s *EntitlementUsage) SetConsumedValue(v string) *EntitlementUsage {
7924	s.ConsumedValue = &v
7925	return s
7926}
7927
7928// SetMaxCount sets the MaxCount field's value.
7929func (s *EntitlementUsage) SetMaxCount(v string) *EntitlementUsage {
7930	s.MaxCount = &v
7931	return s
7932}
7933
7934// SetName sets the Name field's value.
7935func (s *EntitlementUsage) SetName(v string) *EntitlementUsage {
7936	s.Name = &v
7937	return s
7938}
7939
7940// SetUnit sets the Unit field's value.
7941func (s *EntitlementUsage) SetUnit(v string) *EntitlementUsage {
7942	s.Unit = &v
7943	return s
7944}
7945
7946type ExtendLicenseConsumptionInput struct {
7947	_ struct{} `type:"structure"`
7948
7949	// Checks whether you have the required permissions for the action, without
7950	// actually making the request. Provides an error response if you do not have
7951	// the required permissions.
7952	DryRun *bool `type:"boolean"`
7953
7954	// License consumption token.
7955	//
7956	// LicenseConsumptionToken is a required field
7957	LicenseConsumptionToken *string `type:"string" required:"true"`
7958}
7959
7960// String returns the string representation.
7961//
7962// API parameter values that are decorated as "sensitive" in the API will not
7963// be included in the string output. The member name will be present, but the
7964// value will be replaced with "sensitive".
7965func (s ExtendLicenseConsumptionInput) String() string {
7966	return awsutil.Prettify(s)
7967}
7968
7969// GoString returns the string representation.
7970//
7971// API parameter values that are decorated as "sensitive" in the API will not
7972// be included in the string output. The member name will be present, but the
7973// value will be replaced with "sensitive".
7974func (s ExtendLicenseConsumptionInput) GoString() string {
7975	return s.String()
7976}
7977
7978// Validate inspects the fields of the type to determine if they are valid.
7979func (s *ExtendLicenseConsumptionInput) Validate() error {
7980	invalidParams := request.ErrInvalidParams{Context: "ExtendLicenseConsumptionInput"}
7981	if s.LicenseConsumptionToken == nil {
7982		invalidParams.Add(request.NewErrParamRequired("LicenseConsumptionToken"))
7983	}
7984
7985	if invalidParams.Len() > 0 {
7986		return invalidParams
7987	}
7988	return nil
7989}
7990
7991// SetDryRun sets the DryRun field's value.
7992func (s *ExtendLicenseConsumptionInput) SetDryRun(v bool) *ExtendLicenseConsumptionInput {
7993	s.DryRun = &v
7994	return s
7995}
7996
7997// SetLicenseConsumptionToken sets the LicenseConsumptionToken field's value.
7998func (s *ExtendLicenseConsumptionInput) SetLicenseConsumptionToken(v string) *ExtendLicenseConsumptionInput {
7999	s.LicenseConsumptionToken = &v
8000	return s
8001}
8002
8003type ExtendLicenseConsumptionOutput struct {
8004	_ struct{} `type:"structure"`
8005
8006	// Date and time at which the license consumption expires.
8007	Expiration *string `type:"string"`
8008
8009	// License consumption token.
8010	LicenseConsumptionToken *string `type:"string"`
8011}
8012
8013// String returns the string representation.
8014//
8015// API parameter values that are decorated as "sensitive" in the API will not
8016// be included in the string output. The member name will be present, but the
8017// value will be replaced with "sensitive".
8018func (s ExtendLicenseConsumptionOutput) String() string {
8019	return awsutil.Prettify(s)
8020}
8021
8022// GoString returns the string representation.
8023//
8024// API parameter values that are decorated as "sensitive" in the API will not
8025// be included in the string output. The member name will be present, but the
8026// value will be replaced with "sensitive".
8027func (s ExtendLicenseConsumptionOutput) GoString() string {
8028	return s.String()
8029}
8030
8031// SetExpiration sets the Expiration field's value.
8032func (s *ExtendLicenseConsumptionOutput) SetExpiration(v string) *ExtendLicenseConsumptionOutput {
8033	s.Expiration = &v
8034	return s
8035}
8036
8037// SetLicenseConsumptionToken sets the LicenseConsumptionToken field's value.
8038func (s *ExtendLicenseConsumptionOutput) SetLicenseConsumptionToken(v string) *ExtendLicenseConsumptionOutput {
8039	s.LicenseConsumptionToken = &v
8040	return s
8041}
8042
8043// A dependency required to run the API is missing.
8044type FailedDependencyException struct {
8045	_            struct{}                  `type:"structure"`
8046	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
8047
8048	ErrorCode *string `type:"string"`
8049
8050	Message_ *string `locationName:"Message" type:"string"`
8051}
8052
8053// String returns the string representation.
8054//
8055// API parameter values that are decorated as "sensitive" in the API will not
8056// be included in the string output. The member name will be present, but the
8057// value will be replaced with "sensitive".
8058func (s FailedDependencyException) String() string {
8059	return awsutil.Prettify(s)
8060}
8061
8062// GoString returns the string representation.
8063//
8064// API parameter values that are decorated as "sensitive" in the API will not
8065// be included in the string output. The member name will be present, but the
8066// value will be replaced with "sensitive".
8067func (s FailedDependencyException) GoString() string {
8068	return s.String()
8069}
8070
8071func newErrorFailedDependencyException(v protocol.ResponseMetadata) error {
8072	return &FailedDependencyException{
8073		RespMetadata: v,
8074	}
8075}
8076
8077// Code returns the exception type name.
8078func (s *FailedDependencyException) Code() string {
8079	return "FailedDependencyException"
8080}
8081
8082// Message returns the exception's message.
8083func (s *FailedDependencyException) Message() string {
8084	if s.Message_ != nil {
8085		return *s.Message_
8086	}
8087	return ""
8088}
8089
8090// OrigErr always returns nil, satisfies awserr.Error interface.
8091func (s *FailedDependencyException) OrigErr() error {
8092	return nil
8093}
8094
8095func (s *FailedDependencyException) Error() string {
8096	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
8097}
8098
8099// Status code returns the HTTP status code for the request's response error.
8100func (s *FailedDependencyException) StatusCode() int {
8101	return s.RespMetadata.StatusCode
8102}
8103
8104// RequestID returns the service's response RequestID for request.
8105func (s *FailedDependencyException) RequestID() string {
8106	return s.RespMetadata.RequestID
8107}
8108
8109// A filter name and value pair that is used to return more specific results
8110// from a describe operation. Filters can be used to match a set of resources
8111// by specific criteria, such as tags, attributes, or IDs.
8112type Filter struct {
8113	_ struct{} `type:"structure"`
8114
8115	// Name of the filter. Filter names are case-sensitive.
8116	Name *string `type:"string"`
8117
8118	// Filter values. Filter values are case-sensitive.
8119	Values []*string `type:"list"`
8120}
8121
8122// String returns the string representation.
8123//
8124// API parameter values that are decorated as "sensitive" in the API will not
8125// be included in the string output. The member name will be present, but the
8126// value will be replaced with "sensitive".
8127func (s Filter) String() string {
8128	return awsutil.Prettify(s)
8129}
8130
8131// GoString returns the string representation.
8132//
8133// API parameter values that are decorated as "sensitive" in the API will not
8134// be included in the string output. The member name will be present, but the
8135// value will be replaced with "sensitive".
8136func (s Filter) GoString() string {
8137	return s.String()
8138}
8139
8140// SetName sets the Name field's value.
8141func (s *Filter) SetName(v string) *Filter {
8142	s.Name = &v
8143	return s
8144}
8145
8146// SetValues sets the Values field's value.
8147func (s *Filter) SetValues(v []*string) *Filter {
8148	s.Values = v
8149	return s
8150}
8151
8152// The request uses too many filters or too many filter values.
8153type FilterLimitExceededException struct {
8154	_            struct{}                  `type:"structure"`
8155	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
8156
8157	Message_ *string `locationName:"Message" type:"string"`
8158}
8159
8160// String returns the string representation.
8161//
8162// API parameter values that are decorated as "sensitive" in the API will not
8163// be included in the string output. The member name will be present, but the
8164// value will be replaced with "sensitive".
8165func (s FilterLimitExceededException) String() string {
8166	return awsutil.Prettify(s)
8167}
8168
8169// GoString returns the string representation.
8170//
8171// API parameter values that are decorated as "sensitive" in the API will not
8172// be included in the string output. The member name will be present, but the
8173// value will be replaced with "sensitive".
8174func (s FilterLimitExceededException) GoString() string {
8175	return s.String()
8176}
8177
8178func newErrorFilterLimitExceededException(v protocol.ResponseMetadata) error {
8179	return &FilterLimitExceededException{
8180		RespMetadata: v,
8181	}
8182}
8183
8184// Code returns the exception type name.
8185func (s *FilterLimitExceededException) Code() string {
8186	return "FilterLimitExceededException"
8187}
8188
8189// Message returns the exception's message.
8190func (s *FilterLimitExceededException) Message() string {
8191	if s.Message_ != nil {
8192		return *s.Message_
8193	}
8194	return ""
8195}
8196
8197// OrigErr always returns nil, satisfies awserr.Error interface.
8198func (s *FilterLimitExceededException) OrigErr() error {
8199	return nil
8200}
8201
8202func (s *FilterLimitExceededException) Error() string {
8203	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
8204}
8205
8206// Status code returns the HTTP status code for the request's response error.
8207func (s *FilterLimitExceededException) StatusCode() int {
8208	return s.RespMetadata.StatusCode
8209}
8210
8211// RequestID returns the service's response RequestID for request.
8212func (s *FilterLimitExceededException) RequestID() string {
8213	return s.RespMetadata.RequestID
8214}
8215
8216type GetAccessTokenInput struct {
8217	_ struct{} `type:"structure"`
8218
8219	// Refresh token, encoded as a JWT token.
8220	//
8221	// Token is a required field
8222	Token *string `type:"string" required:"true"`
8223
8224	// Token properties to validate against those present in the JWT token.
8225	TokenProperties []*string `type:"list"`
8226}
8227
8228// String returns the string representation.
8229//
8230// API parameter values that are decorated as "sensitive" in the API will not
8231// be included in the string output. The member name will be present, but the
8232// value will be replaced with "sensitive".
8233func (s GetAccessTokenInput) String() string {
8234	return awsutil.Prettify(s)
8235}
8236
8237// GoString returns the string representation.
8238//
8239// API parameter values that are decorated as "sensitive" in the API will not
8240// be included in the string output. The member name will be present, but the
8241// value will be replaced with "sensitive".
8242func (s GetAccessTokenInput) GoString() string {
8243	return s.String()
8244}
8245
8246// Validate inspects the fields of the type to determine if they are valid.
8247func (s *GetAccessTokenInput) Validate() error {
8248	invalidParams := request.ErrInvalidParams{Context: "GetAccessTokenInput"}
8249	if s.Token == nil {
8250		invalidParams.Add(request.NewErrParamRequired("Token"))
8251	}
8252
8253	if invalidParams.Len() > 0 {
8254		return invalidParams
8255	}
8256	return nil
8257}
8258
8259// SetToken sets the Token field's value.
8260func (s *GetAccessTokenInput) SetToken(v string) *GetAccessTokenInput {
8261	s.Token = &v
8262	return s
8263}
8264
8265// SetTokenProperties sets the TokenProperties field's value.
8266func (s *GetAccessTokenInput) SetTokenProperties(v []*string) *GetAccessTokenInput {
8267	s.TokenProperties = v
8268	return s
8269}
8270
8271type GetAccessTokenOutput struct {
8272	_ struct{} `type:"structure"`
8273
8274	// Temporary access token.
8275	AccessToken *string `type:"string"`
8276}
8277
8278// String returns the string representation.
8279//
8280// API parameter values that are decorated as "sensitive" in the API will not
8281// be included in the string output. The member name will be present, but the
8282// value will be replaced with "sensitive".
8283func (s GetAccessTokenOutput) String() string {
8284	return awsutil.Prettify(s)
8285}
8286
8287// GoString returns the string representation.
8288//
8289// API parameter values that are decorated as "sensitive" in the API will not
8290// be included in the string output. The member name will be present, but the
8291// value will be replaced with "sensitive".
8292func (s GetAccessTokenOutput) GoString() string {
8293	return s.String()
8294}
8295
8296// SetAccessToken sets the AccessToken field's value.
8297func (s *GetAccessTokenOutput) SetAccessToken(v string) *GetAccessTokenOutput {
8298	s.AccessToken = &v
8299	return s
8300}
8301
8302type GetGrantInput struct {
8303	_ struct{} `type:"structure"`
8304
8305	// Amazon Resource Name (ARN) of the grant.
8306	//
8307	// GrantArn is a required field
8308	GrantArn *string `type:"string" required:"true"`
8309
8310	// Grant version.
8311	Version *string `type:"string"`
8312}
8313
8314// String returns the string representation.
8315//
8316// API parameter values that are decorated as "sensitive" in the API will not
8317// be included in the string output. The member name will be present, but the
8318// value will be replaced with "sensitive".
8319func (s GetGrantInput) String() string {
8320	return awsutil.Prettify(s)
8321}
8322
8323// GoString returns the string representation.
8324//
8325// API parameter values that are decorated as "sensitive" in the API will not
8326// be included in the string output. The member name will be present, but the
8327// value will be replaced with "sensitive".
8328func (s GetGrantInput) GoString() string {
8329	return s.String()
8330}
8331
8332// Validate inspects the fields of the type to determine if they are valid.
8333func (s *GetGrantInput) Validate() error {
8334	invalidParams := request.ErrInvalidParams{Context: "GetGrantInput"}
8335	if s.GrantArn == nil {
8336		invalidParams.Add(request.NewErrParamRequired("GrantArn"))
8337	}
8338
8339	if invalidParams.Len() > 0 {
8340		return invalidParams
8341	}
8342	return nil
8343}
8344
8345// SetGrantArn sets the GrantArn field's value.
8346func (s *GetGrantInput) SetGrantArn(v string) *GetGrantInput {
8347	s.GrantArn = &v
8348	return s
8349}
8350
8351// SetVersion sets the Version field's value.
8352func (s *GetGrantInput) SetVersion(v string) *GetGrantInput {
8353	s.Version = &v
8354	return s
8355}
8356
8357type GetGrantOutput struct {
8358	_ struct{} `type:"structure"`
8359
8360	// Grant details.
8361	Grant *Grant `type:"structure"`
8362}
8363
8364// String returns the string representation.
8365//
8366// API parameter values that are decorated as "sensitive" in the API will not
8367// be included in the string output. The member name will be present, but the
8368// value will be replaced with "sensitive".
8369func (s GetGrantOutput) String() string {
8370	return awsutil.Prettify(s)
8371}
8372
8373// GoString returns the string representation.
8374//
8375// API parameter values that are decorated as "sensitive" in the API will not
8376// be included in the string output. The member name will be present, but the
8377// value will be replaced with "sensitive".
8378func (s GetGrantOutput) GoString() string {
8379	return s.String()
8380}
8381
8382// SetGrant sets the Grant field's value.
8383func (s *GetGrantOutput) SetGrant(v *Grant) *GetGrantOutput {
8384	s.Grant = v
8385	return s
8386}
8387
8388type GetLicenseConfigurationInput struct {
8389	_ struct{} `type:"structure"`
8390
8391	// Amazon Resource Name (ARN) of the license configuration.
8392	//
8393	// LicenseConfigurationArn is a required field
8394	LicenseConfigurationArn *string `type:"string" required:"true"`
8395}
8396
8397// String returns the string representation.
8398//
8399// API parameter values that are decorated as "sensitive" in the API will not
8400// be included in the string output. The member name will be present, but the
8401// value will be replaced with "sensitive".
8402func (s GetLicenseConfigurationInput) String() string {
8403	return awsutil.Prettify(s)
8404}
8405
8406// GoString returns the string representation.
8407//
8408// API parameter values that are decorated as "sensitive" in the API will not
8409// be included in the string output. The member name will be present, but the
8410// value will be replaced with "sensitive".
8411func (s GetLicenseConfigurationInput) GoString() string {
8412	return s.String()
8413}
8414
8415// Validate inspects the fields of the type to determine if they are valid.
8416func (s *GetLicenseConfigurationInput) Validate() error {
8417	invalidParams := request.ErrInvalidParams{Context: "GetLicenseConfigurationInput"}
8418	if s.LicenseConfigurationArn == nil {
8419		invalidParams.Add(request.NewErrParamRequired("LicenseConfigurationArn"))
8420	}
8421
8422	if invalidParams.Len() > 0 {
8423		return invalidParams
8424	}
8425	return nil
8426}
8427
8428// SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value.
8429func (s *GetLicenseConfigurationInput) SetLicenseConfigurationArn(v string) *GetLicenseConfigurationInput {
8430	s.LicenseConfigurationArn = &v
8431	return s
8432}
8433
8434type GetLicenseConfigurationOutput struct {
8435	_ struct{} `type:"structure"`
8436
8437	// Automated discovery information.
8438	AutomatedDiscoveryInformation *AutomatedDiscoveryInformation `type:"structure"`
8439
8440	// Summaries of the licenses consumed by resources.
8441	ConsumedLicenseSummaryList []*ConsumedLicenseSummary `type:"list"`
8442
8443	// Number of licenses assigned to resources.
8444	ConsumedLicenses *int64 `type:"long"`
8445
8446	// Description of the license configuration.
8447	Description *string `type:"string"`
8448
8449	// When true, disassociates a resource when software is uninstalled.
8450	DisassociateWhenNotFound *bool `type:"boolean"`
8451
8452	// Amazon Resource Name (ARN) of the license configuration.
8453	LicenseConfigurationArn *string `type:"string"`
8454
8455	// Unique ID for the license configuration.
8456	LicenseConfigurationId *string `type:"string"`
8457
8458	// Number of available licenses.
8459	LicenseCount *int64 `type:"long"`
8460
8461	// Sets the number of available licenses as a hard limit.
8462	LicenseCountHardLimit *bool `type:"boolean"`
8463
8464	// Dimension for which the licenses are counted.
8465	LicenseCountingType *string `type:"string" enum:"LicenseCountingType"`
8466
8467	// License rules.
8468	LicenseRules []*string `type:"list"`
8469
8470	// Summaries of the managed resources.
8471	ManagedResourceSummaryList []*ManagedResourceSummary `type:"list"`
8472
8473	// Name of the license configuration.
8474	Name *string `type:"string"`
8475
8476	// Account ID of the owner of the license configuration.
8477	OwnerAccountId *string `type:"string"`
8478
8479	// Product information.
8480	ProductInformationList []*ProductInformation `type:"list"`
8481
8482	// License configuration status.
8483	Status *string `type:"string"`
8484
8485	// Tags for the license configuration.
8486	Tags []*Tag `type:"list"`
8487}
8488
8489// String returns the string representation.
8490//
8491// API parameter values that are decorated as "sensitive" in the API will not
8492// be included in the string output. The member name will be present, but the
8493// value will be replaced with "sensitive".
8494func (s GetLicenseConfigurationOutput) String() string {
8495	return awsutil.Prettify(s)
8496}
8497
8498// GoString returns the string representation.
8499//
8500// API parameter values that are decorated as "sensitive" in the API will not
8501// be included in the string output. The member name will be present, but the
8502// value will be replaced with "sensitive".
8503func (s GetLicenseConfigurationOutput) GoString() string {
8504	return s.String()
8505}
8506
8507// SetAutomatedDiscoveryInformation sets the AutomatedDiscoveryInformation field's value.
8508func (s *GetLicenseConfigurationOutput) SetAutomatedDiscoveryInformation(v *AutomatedDiscoveryInformation) *GetLicenseConfigurationOutput {
8509	s.AutomatedDiscoveryInformation = v
8510	return s
8511}
8512
8513// SetConsumedLicenseSummaryList sets the ConsumedLicenseSummaryList field's value.
8514func (s *GetLicenseConfigurationOutput) SetConsumedLicenseSummaryList(v []*ConsumedLicenseSummary) *GetLicenseConfigurationOutput {
8515	s.ConsumedLicenseSummaryList = v
8516	return s
8517}
8518
8519// SetConsumedLicenses sets the ConsumedLicenses field's value.
8520func (s *GetLicenseConfigurationOutput) SetConsumedLicenses(v int64) *GetLicenseConfigurationOutput {
8521	s.ConsumedLicenses = &v
8522	return s
8523}
8524
8525// SetDescription sets the Description field's value.
8526func (s *GetLicenseConfigurationOutput) SetDescription(v string) *GetLicenseConfigurationOutput {
8527	s.Description = &v
8528	return s
8529}
8530
8531// SetDisassociateWhenNotFound sets the DisassociateWhenNotFound field's value.
8532func (s *GetLicenseConfigurationOutput) SetDisassociateWhenNotFound(v bool) *GetLicenseConfigurationOutput {
8533	s.DisassociateWhenNotFound = &v
8534	return s
8535}
8536
8537// SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value.
8538func (s *GetLicenseConfigurationOutput) SetLicenseConfigurationArn(v string) *GetLicenseConfigurationOutput {
8539	s.LicenseConfigurationArn = &v
8540	return s
8541}
8542
8543// SetLicenseConfigurationId sets the LicenseConfigurationId field's value.
8544func (s *GetLicenseConfigurationOutput) SetLicenseConfigurationId(v string) *GetLicenseConfigurationOutput {
8545	s.LicenseConfigurationId = &v
8546	return s
8547}
8548
8549// SetLicenseCount sets the LicenseCount field's value.
8550func (s *GetLicenseConfigurationOutput) SetLicenseCount(v int64) *GetLicenseConfigurationOutput {
8551	s.LicenseCount = &v
8552	return s
8553}
8554
8555// SetLicenseCountHardLimit sets the LicenseCountHardLimit field's value.
8556func (s *GetLicenseConfigurationOutput) SetLicenseCountHardLimit(v bool) *GetLicenseConfigurationOutput {
8557	s.LicenseCountHardLimit = &v
8558	return s
8559}
8560
8561// SetLicenseCountingType sets the LicenseCountingType field's value.
8562func (s *GetLicenseConfigurationOutput) SetLicenseCountingType(v string) *GetLicenseConfigurationOutput {
8563	s.LicenseCountingType = &v
8564	return s
8565}
8566
8567// SetLicenseRules sets the LicenseRules field's value.
8568func (s *GetLicenseConfigurationOutput) SetLicenseRules(v []*string) *GetLicenseConfigurationOutput {
8569	s.LicenseRules = v
8570	return s
8571}
8572
8573// SetManagedResourceSummaryList sets the ManagedResourceSummaryList field's value.
8574func (s *GetLicenseConfigurationOutput) SetManagedResourceSummaryList(v []*ManagedResourceSummary) *GetLicenseConfigurationOutput {
8575	s.ManagedResourceSummaryList = v
8576	return s
8577}
8578
8579// SetName sets the Name field's value.
8580func (s *GetLicenseConfigurationOutput) SetName(v string) *GetLicenseConfigurationOutput {
8581	s.Name = &v
8582	return s
8583}
8584
8585// SetOwnerAccountId sets the OwnerAccountId field's value.
8586func (s *GetLicenseConfigurationOutput) SetOwnerAccountId(v string) *GetLicenseConfigurationOutput {
8587	s.OwnerAccountId = &v
8588	return s
8589}
8590
8591// SetProductInformationList sets the ProductInformationList field's value.
8592func (s *GetLicenseConfigurationOutput) SetProductInformationList(v []*ProductInformation) *GetLicenseConfigurationOutput {
8593	s.ProductInformationList = v
8594	return s
8595}
8596
8597// SetStatus sets the Status field's value.
8598func (s *GetLicenseConfigurationOutput) SetStatus(v string) *GetLicenseConfigurationOutput {
8599	s.Status = &v
8600	return s
8601}
8602
8603// SetTags sets the Tags field's value.
8604func (s *GetLicenseConfigurationOutput) SetTags(v []*Tag) *GetLicenseConfigurationOutput {
8605	s.Tags = v
8606	return s
8607}
8608
8609type GetLicenseConversionTaskInput struct {
8610	_ struct{} `type:"structure"`
8611
8612	// ID of the license type conversion task to retrieve information on.
8613	//
8614	// LicenseConversionTaskId is a required field
8615	LicenseConversionTaskId *string `type:"string" required:"true"`
8616}
8617
8618// String returns the string representation.
8619//
8620// API parameter values that are decorated as "sensitive" in the API will not
8621// be included in the string output. The member name will be present, but the
8622// value will be replaced with "sensitive".
8623func (s GetLicenseConversionTaskInput) String() string {
8624	return awsutil.Prettify(s)
8625}
8626
8627// GoString returns the string representation.
8628//
8629// API parameter values that are decorated as "sensitive" in the API will not
8630// be included in the string output. The member name will be present, but the
8631// value will be replaced with "sensitive".
8632func (s GetLicenseConversionTaskInput) GoString() string {
8633	return s.String()
8634}
8635
8636// Validate inspects the fields of the type to determine if they are valid.
8637func (s *GetLicenseConversionTaskInput) Validate() error {
8638	invalidParams := request.ErrInvalidParams{Context: "GetLicenseConversionTaskInput"}
8639	if s.LicenseConversionTaskId == nil {
8640		invalidParams.Add(request.NewErrParamRequired("LicenseConversionTaskId"))
8641	}
8642
8643	if invalidParams.Len() > 0 {
8644		return invalidParams
8645	}
8646	return nil
8647}
8648
8649// SetLicenseConversionTaskId sets the LicenseConversionTaskId field's value.
8650func (s *GetLicenseConversionTaskInput) SetLicenseConversionTaskId(v string) *GetLicenseConversionTaskInput {
8651	s.LicenseConversionTaskId = &v
8652	return s
8653}
8654
8655type GetLicenseConversionTaskOutput struct {
8656	_ struct{} `type:"structure"`
8657
8658	// Information about the license type converted to.
8659	DestinationLicenseContext *LicenseConversionContext `type:"structure"`
8660
8661	// Time at which the license type conversion task was completed.
8662	EndTime *time.Time `type:"timestamp"`
8663
8664	// ID of the license type conversion task.
8665	LicenseConversionTaskId *string `type:"string"`
8666
8667	// Amount of time to complete the license type conversion.
8668	LicenseConversionTime *time.Time `type:"timestamp"`
8669
8670	// Amazon Resource Names (ARN) of the resources the license conversion task
8671	// is associated with.
8672	ResourceArn *string `type:"string"`
8673
8674	// Information about the license type converted from.
8675	SourceLicenseContext *LicenseConversionContext `type:"structure"`
8676
8677	// Time at which the license type conversion task was started .
8678	StartTime *time.Time `type:"timestamp"`
8679
8680	// Status of the license type conversion task.
8681	Status *string `type:"string" enum:"LicenseConversionTaskStatus"`
8682
8683	// The status message for the conversion task.
8684	StatusMessage *string `type:"string"`
8685}
8686
8687// String returns the string representation.
8688//
8689// API parameter values that are decorated as "sensitive" in the API will not
8690// be included in the string output. The member name will be present, but the
8691// value will be replaced with "sensitive".
8692func (s GetLicenseConversionTaskOutput) String() string {
8693	return awsutil.Prettify(s)
8694}
8695
8696// GoString returns the string representation.
8697//
8698// API parameter values that are decorated as "sensitive" in the API will not
8699// be included in the string output. The member name will be present, but the
8700// value will be replaced with "sensitive".
8701func (s GetLicenseConversionTaskOutput) GoString() string {
8702	return s.String()
8703}
8704
8705// SetDestinationLicenseContext sets the DestinationLicenseContext field's value.
8706func (s *GetLicenseConversionTaskOutput) SetDestinationLicenseContext(v *LicenseConversionContext) *GetLicenseConversionTaskOutput {
8707	s.DestinationLicenseContext = v
8708	return s
8709}
8710
8711// SetEndTime sets the EndTime field's value.
8712func (s *GetLicenseConversionTaskOutput) SetEndTime(v time.Time) *GetLicenseConversionTaskOutput {
8713	s.EndTime = &v
8714	return s
8715}
8716
8717// SetLicenseConversionTaskId sets the LicenseConversionTaskId field's value.
8718func (s *GetLicenseConversionTaskOutput) SetLicenseConversionTaskId(v string) *GetLicenseConversionTaskOutput {
8719	s.LicenseConversionTaskId = &v
8720	return s
8721}
8722
8723// SetLicenseConversionTime sets the LicenseConversionTime field's value.
8724func (s *GetLicenseConversionTaskOutput) SetLicenseConversionTime(v time.Time) *GetLicenseConversionTaskOutput {
8725	s.LicenseConversionTime = &v
8726	return s
8727}
8728
8729// SetResourceArn sets the ResourceArn field's value.
8730func (s *GetLicenseConversionTaskOutput) SetResourceArn(v string) *GetLicenseConversionTaskOutput {
8731	s.ResourceArn = &v
8732	return s
8733}
8734
8735// SetSourceLicenseContext sets the SourceLicenseContext field's value.
8736func (s *GetLicenseConversionTaskOutput) SetSourceLicenseContext(v *LicenseConversionContext) *GetLicenseConversionTaskOutput {
8737	s.SourceLicenseContext = v
8738	return s
8739}
8740
8741// SetStartTime sets the StartTime field's value.
8742func (s *GetLicenseConversionTaskOutput) SetStartTime(v time.Time) *GetLicenseConversionTaskOutput {
8743	s.StartTime = &v
8744	return s
8745}
8746
8747// SetStatus sets the Status field's value.
8748func (s *GetLicenseConversionTaskOutput) SetStatus(v string) *GetLicenseConversionTaskOutput {
8749	s.Status = &v
8750	return s
8751}
8752
8753// SetStatusMessage sets the StatusMessage field's value.
8754func (s *GetLicenseConversionTaskOutput) SetStatusMessage(v string) *GetLicenseConversionTaskOutput {
8755	s.StatusMessage = &v
8756	return s
8757}
8758
8759type GetLicenseInput struct {
8760	_ struct{} `type:"structure"`
8761
8762	// Amazon Resource Name (ARN) of the license.
8763	//
8764	// LicenseArn is a required field
8765	LicenseArn *string `type:"string" required:"true"`
8766
8767	// License version.
8768	Version *string `type:"string"`
8769}
8770
8771// String returns the string representation.
8772//
8773// API parameter values that are decorated as "sensitive" in the API will not
8774// be included in the string output. The member name will be present, but the
8775// value will be replaced with "sensitive".
8776func (s GetLicenseInput) String() string {
8777	return awsutil.Prettify(s)
8778}
8779
8780// GoString returns the string representation.
8781//
8782// API parameter values that are decorated as "sensitive" in the API will not
8783// be included in the string output. The member name will be present, but the
8784// value will be replaced with "sensitive".
8785func (s GetLicenseInput) GoString() string {
8786	return s.String()
8787}
8788
8789// Validate inspects the fields of the type to determine if they are valid.
8790func (s *GetLicenseInput) Validate() error {
8791	invalidParams := request.ErrInvalidParams{Context: "GetLicenseInput"}
8792	if s.LicenseArn == nil {
8793		invalidParams.Add(request.NewErrParamRequired("LicenseArn"))
8794	}
8795
8796	if invalidParams.Len() > 0 {
8797		return invalidParams
8798	}
8799	return nil
8800}
8801
8802// SetLicenseArn sets the LicenseArn field's value.
8803func (s *GetLicenseInput) SetLicenseArn(v string) *GetLicenseInput {
8804	s.LicenseArn = &v
8805	return s
8806}
8807
8808// SetVersion sets the Version field's value.
8809func (s *GetLicenseInput) SetVersion(v string) *GetLicenseInput {
8810	s.Version = &v
8811	return s
8812}
8813
8814type GetLicenseManagerReportGeneratorInput struct {
8815	_ struct{} `type:"structure"`
8816
8817	// Amazon Resource Name (ARN) of the report generator.
8818	//
8819	// LicenseManagerReportGeneratorArn is a required field
8820	LicenseManagerReportGeneratorArn *string `type:"string" required:"true"`
8821}
8822
8823// String returns the string representation.
8824//
8825// API parameter values that are decorated as "sensitive" in the API will not
8826// be included in the string output. The member name will be present, but the
8827// value will be replaced with "sensitive".
8828func (s GetLicenseManagerReportGeneratorInput) String() string {
8829	return awsutil.Prettify(s)
8830}
8831
8832// GoString returns the string representation.
8833//
8834// API parameter values that are decorated as "sensitive" in the API will not
8835// be included in the string output. The member name will be present, but the
8836// value will be replaced with "sensitive".
8837func (s GetLicenseManagerReportGeneratorInput) GoString() string {
8838	return s.String()
8839}
8840
8841// Validate inspects the fields of the type to determine if they are valid.
8842func (s *GetLicenseManagerReportGeneratorInput) Validate() error {
8843	invalidParams := request.ErrInvalidParams{Context: "GetLicenseManagerReportGeneratorInput"}
8844	if s.LicenseManagerReportGeneratorArn == nil {
8845		invalidParams.Add(request.NewErrParamRequired("LicenseManagerReportGeneratorArn"))
8846	}
8847
8848	if invalidParams.Len() > 0 {
8849		return invalidParams
8850	}
8851	return nil
8852}
8853
8854// SetLicenseManagerReportGeneratorArn sets the LicenseManagerReportGeneratorArn field's value.
8855func (s *GetLicenseManagerReportGeneratorInput) SetLicenseManagerReportGeneratorArn(v string) *GetLicenseManagerReportGeneratorInput {
8856	s.LicenseManagerReportGeneratorArn = &v
8857	return s
8858}
8859
8860type GetLicenseManagerReportGeneratorOutput struct {
8861	_ struct{} `type:"structure"`
8862
8863	// A report generator that creates periodic reports about your license configurations.
8864	ReportGenerator *ReportGenerator `type:"structure"`
8865}
8866
8867// String returns the string representation.
8868//
8869// API parameter values that are decorated as "sensitive" in the API will not
8870// be included in the string output. The member name will be present, but the
8871// value will be replaced with "sensitive".
8872func (s GetLicenseManagerReportGeneratorOutput) String() string {
8873	return awsutil.Prettify(s)
8874}
8875
8876// GoString returns the string representation.
8877//
8878// API parameter values that are decorated as "sensitive" in the API will not
8879// be included in the string output. The member name will be present, but the
8880// value will be replaced with "sensitive".
8881func (s GetLicenseManagerReportGeneratorOutput) GoString() string {
8882	return s.String()
8883}
8884
8885// SetReportGenerator sets the ReportGenerator field's value.
8886func (s *GetLicenseManagerReportGeneratorOutput) SetReportGenerator(v *ReportGenerator) *GetLicenseManagerReportGeneratorOutput {
8887	s.ReportGenerator = v
8888	return s
8889}
8890
8891type GetLicenseOutput struct {
8892	_ struct{} `type:"structure"`
8893
8894	// License details.
8895	License *License `type:"structure"`
8896}
8897
8898// String returns the string representation.
8899//
8900// API parameter values that are decorated as "sensitive" in the API will not
8901// be included in the string output. The member name will be present, but the
8902// value will be replaced with "sensitive".
8903func (s GetLicenseOutput) String() string {
8904	return awsutil.Prettify(s)
8905}
8906
8907// GoString returns the string representation.
8908//
8909// API parameter values that are decorated as "sensitive" in the API will not
8910// be included in the string output. The member name will be present, but the
8911// value will be replaced with "sensitive".
8912func (s GetLicenseOutput) GoString() string {
8913	return s.String()
8914}
8915
8916// SetLicense sets the License field's value.
8917func (s *GetLicenseOutput) SetLicense(v *License) *GetLicenseOutput {
8918	s.License = v
8919	return s
8920}
8921
8922type GetLicenseUsageInput struct {
8923	_ struct{} `type:"structure"`
8924
8925	// Amazon Resource Name (ARN) of the license.
8926	//
8927	// LicenseArn is a required field
8928	LicenseArn *string `type:"string" required:"true"`
8929}
8930
8931// String returns the string representation.
8932//
8933// API parameter values that are decorated as "sensitive" in the API will not
8934// be included in the string output. The member name will be present, but the
8935// value will be replaced with "sensitive".
8936func (s GetLicenseUsageInput) String() string {
8937	return awsutil.Prettify(s)
8938}
8939
8940// GoString returns the string representation.
8941//
8942// API parameter values that are decorated as "sensitive" in the API will not
8943// be included in the string output. The member name will be present, but the
8944// value will be replaced with "sensitive".
8945func (s GetLicenseUsageInput) GoString() string {
8946	return s.String()
8947}
8948
8949// Validate inspects the fields of the type to determine if they are valid.
8950func (s *GetLicenseUsageInput) Validate() error {
8951	invalidParams := request.ErrInvalidParams{Context: "GetLicenseUsageInput"}
8952	if s.LicenseArn == nil {
8953		invalidParams.Add(request.NewErrParamRequired("LicenseArn"))
8954	}
8955
8956	if invalidParams.Len() > 0 {
8957		return invalidParams
8958	}
8959	return nil
8960}
8961
8962// SetLicenseArn sets the LicenseArn field's value.
8963func (s *GetLicenseUsageInput) SetLicenseArn(v string) *GetLicenseUsageInput {
8964	s.LicenseArn = &v
8965	return s
8966}
8967
8968type GetLicenseUsageOutput struct {
8969	_ struct{} `type:"structure"`
8970
8971	// License usage details.
8972	LicenseUsage *LicenseUsage `type:"structure"`
8973}
8974
8975// String returns the string representation.
8976//
8977// API parameter values that are decorated as "sensitive" in the API will not
8978// be included in the string output. The member name will be present, but the
8979// value will be replaced with "sensitive".
8980func (s GetLicenseUsageOutput) String() string {
8981	return awsutil.Prettify(s)
8982}
8983
8984// GoString returns the string representation.
8985//
8986// API parameter values that are decorated as "sensitive" in the API will not
8987// be included in the string output. The member name will be present, but the
8988// value will be replaced with "sensitive".
8989func (s GetLicenseUsageOutput) GoString() string {
8990	return s.String()
8991}
8992
8993// SetLicenseUsage sets the LicenseUsage field's value.
8994func (s *GetLicenseUsageOutput) SetLicenseUsage(v *LicenseUsage) *GetLicenseUsageOutput {
8995	s.LicenseUsage = v
8996	return s
8997}
8998
8999type GetServiceSettingsInput struct {
9000	_ struct{} `type:"structure"`
9001}
9002
9003// String returns the string representation.
9004//
9005// API parameter values that are decorated as "sensitive" in the API will not
9006// be included in the string output. The member name will be present, but the
9007// value will be replaced with "sensitive".
9008func (s GetServiceSettingsInput) String() string {
9009	return awsutil.Prettify(s)
9010}
9011
9012// GoString returns the string representation.
9013//
9014// API parameter values that are decorated as "sensitive" in the API will not
9015// be included in the string output. The member name will be present, but the
9016// value will be replaced with "sensitive".
9017func (s GetServiceSettingsInput) GoString() string {
9018	return s.String()
9019}
9020
9021type GetServiceSettingsOutput struct {
9022	_ struct{} `type:"structure"`
9023
9024	// Indicates whether cross-account discovery is enabled.
9025	EnableCrossAccountsDiscovery *bool `type:"boolean"`
9026
9027	// Amazon Resource Name (ARN) of the resource share. The License Manager management
9028	// account provides member accounts with access to this share.
9029	LicenseManagerResourceShareArn *string `type:"string"`
9030
9031	// Indicates whether Organizations is integrated with License Manager for cross-account
9032	// discovery.
9033	OrganizationConfiguration *OrganizationConfiguration `type:"structure"`
9034
9035	// Regional S3 bucket path for storing reports, license trail event data, discovery
9036	// data, and so on.
9037	S3BucketArn *string `type:"string"`
9038
9039	// SNS topic configured to receive notifications from License Manager.
9040	SnsTopicArn *string `type:"string"`
9041}
9042
9043// String returns the string representation.
9044//
9045// API parameter values that are decorated as "sensitive" in the API will not
9046// be included in the string output. The member name will be present, but the
9047// value will be replaced with "sensitive".
9048func (s GetServiceSettingsOutput) String() string {
9049	return awsutil.Prettify(s)
9050}
9051
9052// GoString returns the string representation.
9053//
9054// API parameter values that are decorated as "sensitive" in the API will not
9055// be included in the string output. The member name will be present, but the
9056// value will be replaced with "sensitive".
9057func (s GetServiceSettingsOutput) GoString() string {
9058	return s.String()
9059}
9060
9061// SetEnableCrossAccountsDiscovery sets the EnableCrossAccountsDiscovery field's value.
9062func (s *GetServiceSettingsOutput) SetEnableCrossAccountsDiscovery(v bool) *GetServiceSettingsOutput {
9063	s.EnableCrossAccountsDiscovery = &v
9064	return s
9065}
9066
9067// SetLicenseManagerResourceShareArn sets the LicenseManagerResourceShareArn field's value.
9068func (s *GetServiceSettingsOutput) SetLicenseManagerResourceShareArn(v string) *GetServiceSettingsOutput {
9069	s.LicenseManagerResourceShareArn = &v
9070	return s
9071}
9072
9073// SetOrganizationConfiguration sets the OrganizationConfiguration field's value.
9074func (s *GetServiceSettingsOutput) SetOrganizationConfiguration(v *OrganizationConfiguration) *GetServiceSettingsOutput {
9075	s.OrganizationConfiguration = v
9076	return s
9077}
9078
9079// SetS3BucketArn sets the S3BucketArn field's value.
9080func (s *GetServiceSettingsOutput) SetS3BucketArn(v string) *GetServiceSettingsOutput {
9081	s.S3BucketArn = &v
9082	return s
9083}
9084
9085// SetSnsTopicArn sets the SnsTopicArn field's value.
9086func (s *GetServiceSettingsOutput) SetSnsTopicArn(v string) *GetServiceSettingsOutput {
9087	s.SnsTopicArn = &v
9088	return s
9089}
9090
9091// Describes a grant.
9092type Grant struct {
9093	_ struct{} `type:"structure"`
9094
9095	// Amazon Resource Name (ARN) of the grant.
9096	//
9097	// GrantArn is a required field
9098	GrantArn *string `type:"string" required:"true"`
9099
9100	// Grant name.
9101	//
9102	// GrantName is a required field
9103	GrantName *string `type:"string" required:"true"`
9104
9105	// Grant status.
9106	//
9107	// GrantStatus is a required field
9108	GrantStatus *string `type:"string" required:"true" enum:"GrantStatus"`
9109
9110	// Granted operations.
9111	//
9112	// GrantedOperations is a required field
9113	GrantedOperations []*string `min:"1" type:"list" required:"true"`
9114
9115	// The grantee principal ARN.
9116	//
9117	// GranteePrincipalArn is a required field
9118	GranteePrincipalArn *string `type:"string" required:"true"`
9119
9120	// Home Region of the grant.
9121	//
9122	// HomeRegion is a required field
9123	HomeRegion *string `type:"string" required:"true"`
9124
9125	// License ARN.
9126	//
9127	// LicenseArn is a required field
9128	LicenseArn *string `type:"string" required:"true"`
9129
9130	// Parent ARN.
9131	//
9132	// ParentArn is a required field
9133	ParentArn *string `type:"string" required:"true"`
9134
9135	// Grant status reason.
9136	StatusReason *string `type:"string"`
9137
9138	// Grant version.
9139	//
9140	// Version is a required field
9141	Version *string `type:"string" required:"true"`
9142}
9143
9144// String returns the string representation.
9145//
9146// API parameter values that are decorated as "sensitive" in the API will not
9147// be included in the string output. The member name will be present, but the
9148// value will be replaced with "sensitive".
9149func (s Grant) String() string {
9150	return awsutil.Prettify(s)
9151}
9152
9153// GoString returns the string representation.
9154//
9155// API parameter values that are decorated as "sensitive" in the API will not
9156// be included in the string output. The member name will be present, but the
9157// value will be replaced with "sensitive".
9158func (s Grant) GoString() string {
9159	return s.String()
9160}
9161
9162// SetGrantArn sets the GrantArn field's value.
9163func (s *Grant) SetGrantArn(v string) *Grant {
9164	s.GrantArn = &v
9165	return s
9166}
9167
9168// SetGrantName sets the GrantName field's value.
9169func (s *Grant) SetGrantName(v string) *Grant {
9170	s.GrantName = &v
9171	return s
9172}
9173
9174// SetGrantStatus sets the GrantStatus field's value.
9175func (s *Grant) SetGrantStatus(v string) *Grant {
9176	s.GrantStatus = &v
9177	return s
9178}
9179
9180// SetGrantedOperations sets the GrantedOperations field's value.
9181func (s *Grant) SetGrantedOperations(v []*string) *Grant {
9182	s.GrantedOperations = v
9183	return s
9184}
9185
9186// SetGranteePrincipalArn sets the GranteePrincipalArn field's value.
9187func (s *Grant) SetGranteePrincipalArn(v string) *Grant {
9188	s.GranteePrincipalArn = &v
9189	return s
9190}
9191
9192// SetHomeRegion sets the HomeRegion field's value.
9193func (s *Grant) SetHomeRegion(v string) *Grant {
9194	s.HomeRegion = &v
9195	return s
9196}
9197
9198// SetLicenseArn sets the LicenseArn field's value.
9199func (s *Grant) SetLicenseArn(v string) *Grant {
9200	s.LicenseArn = &v
9201	return s
9202}
9203
9204// SetParentArn sets the ParentArn field's value.
9205func (s *Grant) SetParentArn(v string) *Grant {
9206	s.ParentArn = &v
9207	return s
9208}
9209
9210// SetStatusReason sets the StatusReason field's value.
9211func (s *Grant) SetStatusReason(v string) *Grant {
9212	s.StatusReason = &v
9213	return s
9214}
9215
9216// SetVersion sets the Version field's value.
9217func (s *Grant) SetVersion(v string) *Grant {
9218	s.Version = &v
9219	return s
9220}
9221
9222// Describes a license that is granted to a grantee.
9223type GrantedLicense struct {
9224	_ struct{} `type:"structure"`
9225
9226	// Granted license beneficiary.
9227	Beneficiary *string `type:"string"`
9228
9229	// Configuration for consumption of the license.
9230	ConsumptionConfiguration *ConsumptionConfiguration `type:"structure"`
9231
9232	// Creation time of the granted license.
9233	CreateTime *string `type:"string"`
9234
9235	// License entitlements.
9236	Entitlements []*Entitlement `type:"list"`
9237
9238	// Home Region of the granted license.
9239	HomeRegion *string `type:"string"`
9240
9241	// Granted license issuer.
9242	Issuer *IssuerDetails `type:"structure"`
9243
9244	// Amazon Resource Name (ARN) of the license.
9245	LicenseArn *string `type:"string"`
9246
9247	// Granted license metadata.
9248	LicenseMetadata []*Metadata `type:"list"`
9249
9250	// License name.
9251	LicenseName *string `type:"string"`
9252
9253	// Product name.
9254	ProductName *string `type:"string"`
9255
9256	// Product SKU.
9257	ProductSKU *string `type:"string"`
9258
9259	// Granted license received metadata.
9260	ReceivedMetadata *ReceivedMetadata `type:"structure"`
9261
9262	// Granted license status.
9263	Status *string `type:"string" enum:"LicenseStatus"`
9264
9265	// Date and time range during which the granted license is valid, in ISO8601-UTC
9266	// format.
9267	Validity *DatetimeRange `type:"structure"`
9268
9269	// Version of the granted license.
9270	Version *string `type:"string"`
9271}
9272
9273// String returns the string representation.
9274//
9275// API parameter values that are decorated as "sensitive" in the API will not
9276// be included in the string output. The member name will be present, but the
9277// value will be replaced with "sensitive".
9278func (s GrantedLicense) String() string {
9279	return awsutil.Prettify(s)
9280}
9281
9282// GoString returns the string representation.
9283//
9284// API parameter values that are decorated as "sensitive" in the API will not
9285// be included in the string output. The member name will be present, but the
9286// value will be replaced with "sensitive".
9287func (s GrantedLicense) GoString() string {
9288	return s.String()
9289}
9290
9291// SetBeneficiary sets the Beneficiary field's value.
9292func (s *GrantedLicense) SetBeneficiary(v string) *GrantedLicense {
9293	s.Beneficiary = &v
9294	return s
9295}
9296
9297// SetConsumptionConfiguration sets the ConsumptionConfiguration field's value.
9298func (s *GrantedLicense) SetConsumptionConfiguration(v *ConsumptionConfiguration) *GrantedLicense {
9299	s.ConsumptionConfiguration = v
9300	return s
9301}
9302
9303// SetCreateTime sets the CreateTime field's value.
9304func (s *GrantedLicense) SetCreateTime(v string) *GrantedLicense {
9305	s.CreateTime = &v
9306	return s
9307}
9308
9309// SetEntitlements sets the Entitlements field's value.
9310func (s *GrantedLicense) SetEntitlements(v []*Entitlement) *GrantedLicense {
9311	s.Entitlements = v
9312	return s
9313}
9314
9315// SetHomeRegion sets the HomeRegion field's value.
9316func (s *GrantedLicense) SetHomeRegion(v string) *GrantedLicense {
9317	s.HomeRegion = &v
9318	return s
9319}
9320
9321// SetIssuer sets the Issuer field's value.
9322func (s *GrantedLicense) SetIssuer(v *IssuerDetails) *GrantedLicense {
9323	s.Issuer = v
9324	return s
9325}
9326
9327// SetLicenseArn sets the LicenseArn field's value.
9328func (s *GrantedLicense) SetLicenseArn(v string) *GrantedLicense {
9329	s.LicenseArn = &v
9330	return s
9331}
9332
9333// SetLicenseMetadata sets the LicenseMetadata field's value.
9334func (s *GrantedLicense) SetLicenseMetadata(v []*Metadata) *GrantedLicense {
9335	s.LicenseMetadata = v
9336	return s
9337}
9338
9339// SetLicenseName sets the LicenseName field's value.
9340func (s *GrantedLicense) SetLicenseName(v string) *GrantedLicense {
9341	s.LicenseName = &v
9342	return s
9343}
9344
9345// SetProductName sets the ProductName field's value.
9346func (s *GrantedLicense) SetProductName(v string) *GrantedLicense {
9347	s.ProductName = &v
9348	return s
9349}
9350
9351// SetProductSKU sets the ProductSKU field's value.
9352func (s *GrantedLicense) SetProductSKU(v string) *GrantedLicense {
9353	s.ProductSKU = &v
9354	return s
9355}
9356
9357// SetReceivedMetadata sets the ReceivedMetadata field's value.
9358func (s *GrantedLicense) SetReceivedMetadata(v *ReceivedMetadata) *GrantedLicense {
9359	s.ReceivedMetadata = v
9360	return s
9361}
9362
9363// SetStatus sets the Status field's value.
9364func (s *GrantedLicense) SetStatus(v string) *GrantedLicense {
9365	s.Status = &v
9366	return s
9367}
9368
9369// SetValidity sets the Validity field's value.
9370func (s *GrantedLicense) SetValidity(v *DatetimeRange) *GrantedLicense {
9371	s.Validity = v
9372	return s
9373}
9374
9375// SetVersion sets the Version field's value.
9376func (s *GrantedLicense) SetVersion(v string) *GrantedLicense {
9377	s.Version = &v
9378	return s
9379}
9380
9381// One or more parameter values are not valid.
9382type InvalidParameterValueException struct {
9383	_            struct{}                  `type:"structure"`
9384	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9385
9386	Message_ *string `locationName:"Message" type:"string"`
9387}
9388
9389// String returns the string representation.
9390//
9391// API parameter values that are decorated as "sensitive" in the API will not
9392// be included in the string output. The member name will be present, but the
9393// value will be replaced with "sensitive".
9394func (s InvalidParameterValueException) String() string {
9395	return awsutil.Prettify(s)
9396}
9397
9398// GoString returns the string representation.
9399//
9400// API parameter values that are decorated as "sensitive" in the API will not
9401// be included in the string output. The member name will be present, but the
9402// value will be replaced with "sensitive".
9403func (s InvalidParameterValueException) GoString() string {
9404	return s.String()
9405}
9406
9407func newErrorInvalidParameterValueException(v protocol.ResponseMetadata) error {
9408	return &InvalidParameterValueException{
9409		RespMetadata: v,
9410	}
9411}
9412
9413// Code returns the exception type name.
9414func (s *InvalidParameterValueException) Code() string {
9415	return "InvalidParameterValueException"
9416}
9417
9418// Message returns the exception's message.
9419func (s *InvalidParameterValueException) Message() string {
9420	if s.Message_ != nil {
9421		return *s.Message_
9422	}
9423	return ""
9424}
9425
9426// OrigErr always returns nil, satisfies awserr.Error interface.
9427func (s *InvalidParameterValueException) OrigErr() error {
9428	return nil
9429}
9430
9431func (s *InvalidParameterValueException) Error() string {
9432	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
9433}
9434
9435// Status code returns the HTTP status code for the request's response error.
9436func (s *InvalidParameterValueException) StatusCode() int {
9437	return s.RespMetadata.StatusCode
9438}
9439
9440// RequestID returns the service's response RequestID for request.
9441func (s *InvalidParameterValueException) RequestID() string {
9442	return s.RespMetadata.RequestID
9443}
9444
9445// License Manager cannot allocate a license to a resource because of its state.
9446//
9447// For example, you cannot allocate a license to an instance in the process
9448// of shutting down.
9449type InvalidResourceStateException struct {
9450	_            struct{}                  `type:"structure"`
9451	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9452
9453	Message_ *string `locationName:"Message" type:"string"`
9454}
9455
9456// String returns the string representation.
9457//
9458// API parameter values that are decorated as "sensitive" in the API will not
9459// be included in the string output. The member name will be present, but the
9460// value will be replaced with "sensitive".
9461func (s InvalidResourceStateException) String() string {
9462	return awsutil.Prettify(s)
9463}
9464
9465// GoString returns the string representation.
9466//
9467// API parameter values that are decorated as "sensitive" in the API will not
9468// be included in the string output. The member name will be present, but the
9469// value will be replaced with "sensitive".
9470func (s InvalidResourceStateException) GoString() string {
9471	return s.String()
9472}
9473
9474func newErrorInvalidResourceStateException(v protocol.ResponseMetadata) error {
9475	return &InvalidResourceStateException{
9476		RespMetadata: v,
9477	}
9478}
9479
9480// Code returns the exception type name.
9481func (s *InvalidResourceStateException) Code() string {
9482	return "InvalidResourceStateException"
9483}
9484
9485// Message returns the exception's message.
9486func (s *InvalidResourceStateException) Message() string {
9487	if s.Message_ != nil {
9488		return *s.Message_
9489	}
9490	return ""
9491}
9492
9493// OrigErr always returns nil, satisfies awserr.Error interface.
9494func (s *InvalidResourceStateException) OrigErr() error {
9495	return nil
9496}
9497
9498func (s *InvalidResourceStateException) Error() string {
9499	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
9500}
9501
9502// Status code returns the HTTP status code for the request's response error.
9503func (s *InvalidResourceStateException) StatusCode() int {
9504	return s.RespMetadata.StatusCode
9505}
9506
9507// RequestID returns the service's response RequestID for request.
9508func (s *InvalidResourceStateException) RequestID() string {
9509	return s.RespMetadata.RequestID
9510}
9511
9512// An inventory filter.
9513type InventoryFilter struct {
9514	_ struct{} `type:"structure"`
9515
9516	// Condition of the filter.
9517	//
9518	// Condition is a required field
9519	Condition *string `type:"string" required:"true" enum:"InventoryFilterCondition"`
9520
9521	// Name of the filter.
9522	//
9523	// Name is a required field
9524	Name *string `type:"string" required:"true"`
9525
9526	// Value of the filter.
9527	Value *string `type:"string"`
9528}
9529
9530// String returns the string representation.
9531//
9532// API parameter values that are decorated as "sensitive" in the API will not
9533// be included in the string output. The member name will be present, but the
9534// value will be replaced with "sensitive".
9535func (s InventoryFilter) String() string {
9536	return awsutil.Prettify(s)
9537}
9538
9539// GoString returns the string representation.
9540//
9541// API parameter values that are decorated as "sensitive" in the API will not
9542// be included in the string output. The member name will be present, but the
9543// value will be replaced with "sensitive".
9544func (s InventoryFilter) GoString() string {
9545	return s.String()
9546}
9547
9548// Validate inspects the fields of the type to determine if they are valid.
9549func (s *InventoryFilter) Validate() error {
9550	invalidParams := request.ErrInvalidParams{Context: "InventoryFilter"}
9551	if s.Condition == nil {
9552		invalidParams.Add(request.NewErrParamRequired("Condition"))
9553	}
9554	if s.Name == nil {
9555		invalidParams.Add(request.NewErrParamRequired("Name"))
9556	}
9557
9558	if invalidParams.Len() > 0 {
9559		return invalidParams
9560	}
9561	return nil
9562}
9563
9564// SetCondition sets the Condition field's value.
9565func (s *InventoryFilter) SetCondition(v string) *InventoryFilter {
9566	s.Condition = &v
9567	return s
9568}
9569
9570// SetName sets the Name field's value.
9571func (s *InventoryFilter) SetName(v string) *InventoryFilter {
9572	s.Name = &v
9573	return s
9574}
9575
9576// SetValue sets the Value field's value.
9577func (s *InventoryFilter) SetValue(v string) *InventoryFilter {
9578	s.Value = &v
9579	return s
9580}
9581
9582// Details about the issuer of a license.
9583type Issuer struct {
9584	_ struct{} `type:"structure"`
9585
9586	// Issuer name.
9587	//
9588	// Name is a required field
9589	Name *string `type:"string" required:"true"`
9590
9591	// Asymmetric KMS key from Key Management Service. The KMS key must have a key
9592	// usage of sign and verify, and support the RSASSA-PSS SHA-256 signing algorithm.
9593	SignKey *string `type:"string"`
9594}
9595
9596// String returns the string representation.
9597//
9598// API parameter values that are decorated as "sensitive" in the API will not
9599// be included in the string output. The member name will be present, but the
9600// value will be replaced with "sensitive".
9601func (s Issuer) String() string {
9602	return awsutil.Prettify(s)
9603}
9604
9605// GoString returns the string representation.
9606//
9607// API parameter values that are decorated as "sensitive" in the API will not
9608// be included in the string output. The member name will be present, but the
9609// value will be replaced with "sensitive".
9610func (s Issuer) GoString() string {
9611	return s.String()
9612}
9613
9614// Validate inspects the fields of the type to determine if they are valid.
9615func (s *Issuer) Validate() error {
9616	invalidParams := request.ErrInvalidParams{Context: "Issuer"}
9617	if s.Name == nil {
9618		invalidParams.Add(request.NewErrParamRequired("Name"))
9619	}
9620
9621	if invalidParams.Len() > 0 {
9622		return invalidParams
9623	}
9624	return nil
9625}
9626
9627// SetName sets the Name field's value.
9628func (s *Issuer) SetName(v string) *Issuer {
9629	s.Name = &v
9630	return s
9631}
9632
9633// SetSignKey sets the SignKey field's value.
9634func (s *Issuer) SetSignKey(v string) *Issuer {
9635	s.SignKey = &v
9636	return s
9637}
9638
9639// Details associated with the issuer of a license.
9640type IssuerDetails struct {
9641	_ struct{} `type:"structure"`
9642
9643	// Issuer key fingerprint.
9644	KeyFingerprint *string `type:"string"`
9645
9646	// Issuer name.
9647	Name *string `type:"string"`
9648
9649	// Asymmetric KMS key from Key Management Service. The KMS key must have a key
9650	// usage of sign and verify, and support the RSASSA-PSS SHA-256 signing algorithm.
9651	SignKey *string `type:"string"`
9652}
9653
9654// String returns the string representation.
9655//
9656// API parameter values that are decorated as "sensitive" in the API will not
9657// be included in the string output. The member name will be present, but the
9658// value will be replaced with "sensitive".
9659func (s IssuerDetails) String() string {
9660	return awsutil.Prettify(s)
9661}
9662
9663// GoString returns the string representation.
9664//
9665// API parameter values that are decorated as "sensitive" in the API will not
9666// be included in the string output. The member name will be present, but the
9667// value will be replaced with "sensitive".
9668func (s IssuerDetails) GoString() string {
9669	return s.String()
9670}
9671
9672// SetKeyFingerprint sets the KeyFingerprint field's value.
9673func (s *IssuerDetails) SetKeyFingerprint(v string) *IssuerDetails {
9674	s.KeyFingerprint = &v
9675	return s
9676}
9677
9678// SetName sets the Name field's value.
9679func (s *IssuerDetails) SetName(v string) *IssuerDetails {
9680	s.Name = &v
9681	return s
9682}
9683
9684// SetSignKey sets the SignKey field's value.
9685func (s *IssuerDetails) SetSignKey(v string) *IssuerDetails {
9686	s.SignKey = &v
9687	return s
9688}
9689
9690// Software license that is managed in License Manager.
9691type License struct {
9692	_ struct{} `type:"structure"`
9693
9694	// License beneficiary.
9695	Beneficiary *string `type:"string"`
9696
9697	// Configuration for consumption of the license.
9698	ConsumptionConfiguration *ConsumptionConfiguration `type:"structure"`
9699
9700	// License creation time.
9701	CreateTime *string `type:"string"`
9702
9703	// License entitlements.
9704	Entitlements []*Entitlement `type:"list"`
9705
9706	// Home Region of the license.
9707	HomeRegion *string `type:"string"`
9708
9709	// License issuer.
9710	Issuer *IssuerDetails `type:"structure"`
9711
9712	// Amazon Resource Name (ARN) of the license.
9713	LicenseArn *string `type:"string"`
9714
9715	// License metadata.
9716	LicenseMetadata []*Metadata `type:"list"`
9717
9718	// License name.
9719	LicenseName *string `type:"string"`
9720
9721	// Product name.
9722	ProductName *string `type:"string"`
9723
9724	// Product SKU.
9725	ProductSKU *string `type:"string"`
9726
9727	// License status.
9728	Status *string `type:"string" enum:"LicenseStatus"`
9729
9730	// Date and time range during which the license is valid, in ISO8601-UTC format.
9731	Validity *DatetimeRange `type:"structure"`
9732
9733	// License version.
9734	Version *string `type:"string"`
9735}
9736
9737// String returns the string representation.
9738//
9739// API parameter values that are decorated as "sensitive" in the API will not
9740// be included in the string output. The member name will be present, but the
9741// value will be replaced with "sensitive".
9742func (s License) String() string {
9743	return awsutil.Prettify(s)
9744}
9745
9746// GoString returns the string representation.
9747//
9748// API parameter values that are decorated as "sensitive" in the API will not
9749// be included in the string output. The member name will be present, but the
9750// value will be replaced with "sensitive".
9751func (s License) GoString() string {
9752	return s.String()
9753}
9754
9755// SetBeneficiary sets the Beneficiary field's value.
9756func (s *License) SetBeneficiary(v string) *License {
9757	s.Beneficiary = &v
9758	return s
9759}
9760
9761// SetConsumptionConfiguration sets the ConsumptionConfiguration field's value.
9762func (s *License) SetConsumptionConfiguration(v *ConsumptionConfiguration) *License {
9763	s.ConsumptionConfiguration = v
9764	return s
9765}
9766
9767// SetCreateTime sets the CreateTime field's value.
9768func (s *License) SetCreateTime(v string) *License {
9769	s.CreateTime = &v
9770	return s
9771}
9772
9773// SetEntitlements sets the Entitlements field's value.
9774func (s *License) SetEntitlements(v []*Entitlement) *License {
9775	s.Entitlements = v
9776	return s
9777}
9778
9779// SetHomeRegion sets the HomeRegion field's value.
9780func (s *License) SetHomeRegion(v string) *License {
9781	s.HomeRegion = &v
9782	return s
9783}
9784
9785// SetIssuer sets the Issuer field's value.
9786func (s *License) SetIssuer(v *IssuerDetails) *License {
9787	s.Issuer = v
9788	return s
9789}
9790
9791// SetLicenseArn sets the LicenseArn field's value.
9792func (s *License) SetLicenseArn(v string) *License {
9793	s.LicenseArn = &v
9794	return s
9795}
9796
9797// SetLicenseMetadata sets the LicenseMetadata field's value.
9798func (s *License) SetLicenseMetadata(v []*Metadata) *License {
9799	s.LicenseMetadata = v
9800	return s
9801}
9802
9803// SetLicenseName sets the LicenseName field's value.
9804func (s *License) SetLicenseName(v string) *License {
9805	s.LicenseName = &v
9806	return s
9807}
9808
9809// SetProductName sets the ProductName field's value.
9810func (s *License) SetProductName(v string) *License {
9811	s.ProductName = &v
9812	return s
9813}
9814
9815// SetProductSKU sets the ProductSKU field's value.
9816func (s *License) SetProductSKU(v string) *License {
9817	s.ProductSKU = &v
9818	return s
9819}
9820
9821// SetStatus sets the Status field's value.
9822func (s *License) SetStatus(v string) *License {
9823	s.Status = &v
9824	return s
9825}
9826
9827// SetValidity sets the Validity field's value.
9828func (s *License) SetValidity(v *DatetimeRange) *License {
9829	s.Validity = v
9830	return s
9831}
9832
9833// SetVersion sets the Version field's value.
9834func (s *License) SetVersion(v string) *License {
9835	s.Version = &v
9836	return s
9837}
9838
9839// A license configuration is an abstraction of a customer license agreement
9840// that can be consumed and enforced by License Manager. Components include
9841// specifications for the license type (licensing by instance, socket, CPU,
9842// or vCPU), allowed tenancy (shared tenancy, Dedicated Instance, Dedicated
9843// Host, or all of these), host affinity (how long a VM must be associated with
9844// a host), and the number of licenses purchased and used.
9845type LicenseConfiguration struct {
9846	_ struct{} `type:"structure"`
9847
9848	// Automated discovery information.
9849	AutomatedDiscoveryInformation *AutomatedDiscoveryInformation `type:"structure"`
9850
9851	// Summaries for licenses consumed by various resources.
9852	ConsumedLicenseSummaryList []*ConsumedLicenseSummary `type:"list"`
9853
9854	// Number of licenses consumed.
9855	ConsumedLicenses *int64 `type:"long"`
9856
9857	// Description of the license configuration.
9858	Description *string `type:"string"`
9859
9860	// When true, disassociates a resource when software is uninstalled.
9861	DisassociateWhenNotFound *bool `type:"boolean"`
9862
9863	// Amazon Resource Name (ARN) of the license configuration.
9864	LicenseConfigurationArn *string `type:"string"`
9865
9866	// Unique ID of the license configuration.
9867	LicenseConfigurationId *string `type:"string"`
9868
9869	// Number of licenses managed by the license configuration.
9870	LicenseCount *int64 `type:"long"`
9871
9872	// Number of available licenses as a hard limit.
9873	LicenseCountHardLimit *bool `type:"boolean"`
9874
9875	// Dimension to use to track the license inventory.
9876	LicenseCountingType *string `type:"string" enum:"LicenseCountingType"`
9877
9878	// License rules.
9879	LicenseRules []*string `type:"list"`
9880
9881	// Summaries for managed resources.
9882	ManagedResourceSummaryList []*ManagedResourceSummary `type:"list"`
9883
9884	// Name of the license configuration.
9885	Name *string `type:"string"`
9886
9887	// Account ID of the license configuration's owner.
9888	OwnerAccountId *string `type:"string"`
9889
9890	// Product information.
9891	ProductInformationList []*ProductInformation `type:"list"`
9892
9893	// Status of the license configuration.
9894	Status *string `type:"string"`
9895}
9896
9897// String returns the string representation.
9898//
9899// API parameter values that are decorated as "sensitive" in the API will not
9900// be included in the string output. The member name will be present, but the
9901// value will be replaced with "sensitive".
9902func (s LicenseConfiguration) String() string {
9903	return awsutil.Prettify(s)
9904}
9905
9906// GoString returns the string representation.
9907//
9908// API parameter values that are decorated as "sensitive" in the API will not
9909// be included in the string output. The member name will be present, but the
9910// value will be replaced with "sensitive".
9911func (s LicenseConfiguration) GoString() string {
9912	return s.String()
9913}
9914
9915// SetAutomatedDiscoveryInformation sets the AutomatedDiscoveryInformation field's value.
9916func (s *LicenseConfiguration) SetAutomatedDiscoveryInformation(v *AutomatedDiscoveryInformation) *LicenseConfiguration {
9917	s.AutomatedDiscoveryInformation = v
9918	return s
9919}
9920
9921// SetConsumedLicenseSummaryList sets the ConsumedLicenseSummaryList field's value.
9922func (s *LicenseConfiguration) SetConsumedLicenseSummaryList(v []*ConsumedLicenseSummary) *LicenseConfiguration {
9923	s.ConsumedLicenseSummaryList = v
9924	return s
9925}
9926
9927// SetConsumedLicenses sets the ConsumedLicenses field's value.
9928func (s *LicenseConfiguration) SetConsumedLicenses(v int64) *LicenseConfiguration {
9929	s.ConsumedLicenses = &v
9930	return s
9931}
9932
9933// SetDescription sets the Description field's value.
9934func (s *LicenseConfiguration) SetDescription(v string) *LicenseConfiguration {
9935	s.Description = &v
9936	return s
9937}
9938
9939// SetDisassociateWhenNotFound sets the DisassociateWhenNotFound field's value.
9940func (s *LicenseConfiguration) SetDisassociateWhenNotFound(v bool) *LicenseConfiguration {
9941	s.DisassociateWhenNotFound = &v
9942	return s
9943}
9944
9945// SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value.
9946func (s *LicenseConfiguration) SetLicenseConfigurationArn(v string) *LicenseConfiguration {
9947	s.LicenseConfigurationArn = &v
9948	return s
9949}
9950
9951// SetLicenseConfigurationId sets the LicenseConfigurationId field's value.
9952func (s *LicenseConfiguration) SetLicenseConfigurationId(v string) *LicenseConfiguration {
9953	s.LicenseConfigurationId = &v
9954	return s
9955}
9956
9957// SetLicenseCount sets the LicenseCount field's value.
9958func (s *LicenseConfiguration) SetLicenseCount(v int64) *LicenseConfiguration {
9959	s.LicenseCount = &v
9960	return s
9961}
9962
9963// SetLicenseCountHardLimit sets the LicenseCountHardLimit field's value.
9964func (s *LicenseConfiguration) SetLicenseCountHardLimit(v bool) *LicenseConfiguration {
9965	s.LicenseCountHardLimit = &v
9966	return s
9967}
9968
9969// SetLicenseCountingType sets the LicenseCountingType field's value.
9970func (s *LicenseConfiguration) SetLicenseCountingType(v string) *LicenseConfiguration {
9971	s.LicenseCountingType = &v
9972	return s
9973}
9974
9975// SetLicenseRules sets the LicenseRules field's value.
9976func (s *LicenseConfiguration) SetLicenseRules(v []*string) *LicenseConfiguration {
9977	s.LicenseRules = v
9978	return s
9979}
9980
9981// SetManagedResourceSummaryList sets the ManagedResourceSummaryList field's value.
9982func (s *LicenseConfiguration) SetManagedResourceSummaryList(v []*ManagedResourceSummary) *LicenseConfiguration {
9983	s.ManagedResourceSummaryList = v
9984	return s
9985}
9986
9987// SetName sets the Name field's value.
9988func (s *LicenseConfiguration) SetName(v string) *LicenseConfiguration {
9989	s.Name = &v
9990	return s
9991}
9992
9993// SetOwnerAccountId sets the OwnerAccountId field's value.
9994func (s *LicenseConfiguration) SetOwnerAccountId(v string) *LicenseConfiguration {
9995	s.OwnerAccountId = &v
9996	return s
9997}
9998
9999// SetProductInformationList sets the ProductInformationList field's value.
10000func (s *LicenseConfiguration) SetProductInformationList(v []*ProductInformation) *LicenseConfiguration {
10001	s.ProductInformationList = v
10002	return s
10003}
10004
10005// SetStatus sets the Status field's value.
10006func (s *LicenseConfiguration) SetStatus(v string) *LicenseConfiguration {
10007	s.Status = &v
10008	return s
10009}
10010
10011// Describes an association with a license configuration.
10012type LicenseConfigurationAssociation struct {
10013	_ struct{} `type:"structure"`
10014
10015	// Scope of AMI associations. The possible value is cross-account.
10016	AmiAssociationScope *string `type:"string"`
10017
10018	// Time when the license configuration was associated with the resource.
10019	AssociationTime *time.Time `type:"timestamp"`
10020
10021	// Amazon Resource Name (ARN) of the resource.
10022	ResourceArn *string `type:"string"`
10023
10024	// ID of the Amazon Web Services account that owns the resource consuming licenses.
10025	ResourceOwnerId *string `type:"string"`
10026
10027	// Type of server resource.
10028	ResourceType *string `type:"string" enum:"ResourceType"`
10029}
10030
10031// String returns the string representation.
10032//
10033// API parameter values that are decorated as "sensitive" in the API will not
10034// be included in the string output. The member name will be present, but the
10035// value will be replaced with "sensitive".
10036func (s LicenseConfigurationAssociation) String() string {
10037	return awsutil.Prettify(s)
10038}
10039
10040// GoString returns the string representation.
10041//
10042// API parameter values that are decorated as "sensitive" in the API will not
10043// be included in the string output. The member name will be present, but the
10044// value will be replaced with "sensitive".
10045func (s LicenseConfigurationAssociation) GoString() string {
10046	return s.String()
10047}
10048
10049// SetAmiAssociationScope sets the AmiAssociationScope field's value.
10050func (s *LicenseConfigurationAssociation) SetAmiAssociationScope(v string) *LicenseConfigurationAssociation {
10051	s.AmiAssociationScope = &v
10052	return s
10053}
10054
10055// SetAssociationTime sets the AssociationTime field's value.
10056func (s *LicenseConfigurationAssociation) SetAssociationTime(v time.Time) *LicenseConfigurationAssociation {
10057	s.AssociationTime = &v
10058	return s
10059}
10060
10061// SetResourceArn sets the ResourceArn field's value.
10062func (s *LicenseConfigurationAssociation) SetResourceArn(v string) *LicenseConfigurationAssociation {
10063	s.ResourceArn = &v
10064	return s
10065}
10066
10067// SetResourceOwnerId sets the ResourceOwnerId field's value.
10068func (s *LicenseConfigurationAssociation) SetResourceOwnerId(v string) *LicenseConfigurationAssociation {
10069	s.ResourceOwnerId = &v
10070	return s
10071}
10072
10073// SetResourceType sets the ResourceType field's value.
10074func (s *LicenseConfigurationAssociation) SetResourceType(v string) *LicenseConfigurationAssociation {
10075	s.ResourceType = &v
10076	return s
10077}
10078
10079// Details about the usage of a resource associated with a license configuration.
10080type LicenseConfigurationUsage struct {
10081	_ struct{} `type:"structure"`
10082
10083	// Time when the license configuration was initially associated with the resource.
10084	AssociationTime *time.Time `type:"timestamp"`
10085
10086	// Number of licenses consumed by the resource.
10087	ConsumedLicenses *int64 `type:"long"`
10088
10089	// Amazon Resource Name (ARN) of the resource.
10090	ResourceArn *string `type:"string"`
10091
10092	// ID of the account that owns the resource.
10093	ResourceOwnerId *string `type:"string"`
10094
10095	// Status of the resource.
10096	ResourceStatus *string `type:"string"`
10097
10098	// Type of resource.
10099	ResourceType *string `type:"string" enum:"ResourceType"`
10100}
10101
10102// String returns the string representation.
10103//
10104// API parameter values that are decorated as "sensitive" in the API will not
10105// be included in the string output. The member name will be present, but the
10106// value will be replaced with "sensitive".
10107func (s LicenseConfigurationUsage) String() string {
10108	return awsutil.Prettify(s)
10109}
10110
10111// GoString returns the string representation.
10112//
10113// API parameter values that are decorated as "sensitive" in the API will not
10114// be included in the string output. The member name will be present, but the
10115// value will be replaced with "sensitive".
10116func (s LicenseConfigurationUsage) GoString() string {
10117	return s.String()
10118}
10119
10120// SetAssociationTime sets the AssociationTime field's value.
10121func (s *LicenseConfigurationUsage) SetAssociationTime(v time.Time) *LicenseConfigurationUsage {
10122	s.AssociationTime = &v
10123	return s
10124}
10125
10126// SetConsumedLicenses sets the ConsumedLicenses field's value.
10127func (s *LicenseConfigurationUsage) SetConsumedLicenses(v int64) *LicenseConfigurationUsage {
10128	s.ConsumedLicenses = &v
10129	return s
10130}
10131
10132// SetResourceArn sets the ResourceArn field's value.
10133func (s *LicenseConfigurationUsage) SetResourceArn(v string) *LicenseConfigurationUsage {
10134	s.ResourceArn = &v
10135	return s
10136}
10137
10138// SetResourceOwnerId sets the ResourceOwnerId field's value.
10139func (s *LicenseConfigurationUsage) SetResourceOwnerId(v string) *LicenseConfigurationUsage {
10140	s.ResourceOwnerId = &v
10141	return s
10142}
10143
10144// SetResourceStatus sets the ResourceStatus field's value.
10145func (s *LicenseConfigurationUsage) SetResourceStatus(v string) *LicenseConfigurationUsage {
10146	s.ResourceStatus = &v
10147	return s
10148}
10149
10150// SetResourceType sets the ResourceType field's value.
10151func (s *LicenseConfigurationUsage) SetResourceType(v string) *LicenseConfigurationUsage {
10152	s.ResourceType = &v
10153	return s
10154}
10155
10156// Information about a license type conversion task.
10157type LicenseConversionContext struct {
10158	_ struct{} `type:"structure"`
10159
10160	// The Usage operation value that corresponds to the license type you are converting
10161	// your resource from. For more information about which platforms correspond
10162	// to which usage operation values see Sample data: usage operation by platform
10163	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/billing-info-fields.html#billing-info)
10164	UsageOperation *string `type:"string"`
10165}
10166
10167// String returns the string representation.
10168//
10169// API parameter values that are decorated as "sensitive" in the API will not
10170// be included in the string output. The member name will be present, but the
10171// value will be replaced with "sensitive".
10172func (s LicenseConversionContext) String() string {
10173	return awsutil.Prettify(s)
10174}
10175
10176// GoString returns the string representation.
10177//
10178// API parameter values that are decorated as "sensitive" in the API will not
10179// be included in the string output. The member name will be present, but the
10180// value will be replaced with "sensitive".
10181func (s LicenseConversionContext) GoString() string {
10182	return s.String()
10183}
10184
10185// SetUsageOperation sets the UsageOperation field's value.
10186func (s *LicenseConversionContext) SetUsageOperation(v string) *LicenseConversionContext {
10187	s.UsageOperation = &v
10188	return s
10189}
10190
10191// Information about a license type conversion task.
10192type LicenseConversionTask struct {
10193	_ struct{} `type:"structure"`
10194
10195	// Information about the license type this conversion task converted to.
10196	DestinationLicenseContext *LicenseConversionContext `type:"structure"`
10197
10198	// The time the conversion task was completed.
10199	EndTime *time.Time `type:"timestamp"`
10200
10201	// The ID of the license type conversion task.
10202	LicenseConversionTaskId *string `type:"string"`
10203
10204	// The time the usage operation value of the resource was changed.
10205	LicenseConversionTime *time.Time `type:"timestamp"`
10206
10207	// The Amazon Resource Name (ARN) of the resource associated with the license
10208	// type conversion task.
10209	ResourceArn *string `type:"string"`
10210
10211	// Information about the license type this conversion task converted from.
10212	SourceLicenseContext *LicenseConversionContext `type:"structure"`
10213
10214	// The time the conversion task was started at.
10215	StartTime *time.Time `type:"timestamp"`
10216
10217	// The status of the conversion task.
10218	Status *string `type:"string" enum:"LicenseConversionTaskStatus"`
10219
10220	// The status message for the conversion task.
10221	StatusMessage *string `type:"string"`
10222}
10223
10224// String returns the string representation.
10225//
10226// API parameter values that are decorated as "sensitive" in the API will not
10227// be included in the string output. The member name will be present, but the
10228// value will be replaced with "sensitive".
10229func (s LicenseConversionTask) String() string {
10230	return awsutil.Prettify(s)
10231}
10232
10233// GoString returns the string representation.
10234//
10235// API parameter values that are decorated as "sensitive" in the API will not
10236// be included in the string output. The member name will be present, but the
10237// value will be replaced with "sensitive".
10238func (s LicenseConversionTask) GoString() string {
10239	return s.String()
10240}
10241
10242// SetDestinationLicenseContext sets the DestinationLicenseContext field's value.
10243func (s *LicenseConversionTask) SetDestinationLicenseContext(v *LicenseConversionContext) *LicenseConversionTask {
10244	s.DestinationLicenseContext = v
10245	return s
10246}
10247
10248// SetEndTime sets the EndTime field's value.
10249func (s *LicenseConversionTask) SetEndTime(v time.Time) *LicenseConversionTask {
10250	s.EndTime = &v
10251	return s
10252}
10253
10254// SetLicenseConversionTaskId sets the LicenseConversionTaskId field's value.
10255func (s *LicenseConversionTask) SetLicenseConversionTaskId(v string) *LicenseConversionTask {
10256	s.LicenseConversionTaskId = &v
10257	return s
10258}
10259
10260// SetLicenseConversionTime sets the LicenseConversionTime field's value.
10261func (s *LicenseConversionTask) SetLicenseConversionTime(v time.Time) *LicenseConversionTask {
10262	s.LicenseConversionTime = &v
10263	return s
10264}
10265
10266// SetResourceArn sets the ResourceArn field's value.
10267func (s *LicenseConversionTask) SetResourceArn(v string) *LicenseConversionTask {
10268	s.ResourceArn = &v
10269	return s
10270}
10271
10272// SetSourceLicenseContext sets the SourceLicenseContext field's value.
10273func (s *LicenseConversionTask) SetSourceLicenseContext(v *LicenseConversionContext) *LicenseConversionTask {
10274	s.SourceLicenseContext = v
10275	return s
10276}
10277
10278// SetStartTime sets the StartTime field's value.
10279func (s *LicenseConversionTask) SetStartTime(v time.Time) *LicenseConversionTask {
10280	s.StartTime = &v
10281	return s
10282}
10283
10284// SetStatus sets the Status field's value.
10285func (s *LicenseConversionTask) SetStatus(v string) *LicenseConversionTask {
10286	s.Status = &v
10287	return s
10288}
10289
10290// SetStatusMessage sets the StatusMessage field's value.
10291func (s *LicenseConversionTask) SetStatusMessage(v string) *LicenseConversionTask {
10292	s.StatusMessage = &v
10293	return s
10294}
10295
10296// Describes the failure of a license operation.
10297type LicenseOperationFailure struct {
10298	_ struct{} `type:"structure"`
10299
10300	// Error message.
10301	ErrorMessage *string `type:"string"`
10302
10303	// Failure time.
10304	FailureTime *time.Time `type:"timestamp"`
10305
10306	// Reserved.
10307	MetadataList []*Metadata `type:"list"`
10308
10309	// Name of the operation.
10310	OperationName *string `type:"string"`
10311
10312	// The requester is "License Manager Automated Discovery".
10313	OperationRequestedBy *string `type:"string"`
10314
10315	// Amazon Resource Name (ARN) of the resource.
10316	ResourceArn *string `type:"string"`
10317
10318	// ID of the Amazon Web Services account that owns the resource.
10319	ResourceOwnerId *string `type:"string"`
10320
10321	// Resource type.
10322	ResourceType *string `type:"string" enum:"ResourceType"`
10323}
10324
10325// String returns the string representation.
10326//
10327// API parameter values that are decorated as "sensitive" in the API will not
10328// be included in the string output. The member name will be present, but the
10329// value will be replaced with "sensitive".
10330func (s LicenseOperationFailure) String() string {
10331	return awsutil.Prettify(s)
10332}
10333
10334// GoString returns the string representation.
10335//
10336// API parameter values that are decorated as "sensitive" in the API will not
10337// be included in the string output. The member name will be present, but the
10338// value will be replaced with "sensitive".
10339func (s LicenseOperationFailure) GoString() string {
10340	return s.String()
10341}
10342
10343// SetErrorMessage sets the ErrorMessage field's value.
10344func (s *LicenseOperationFailure) SetErrorMessage(v string) *LicenseOperationFailure {
10345	s.ErrorMessage = &v
10346	return s
10347}
10348
10349// SetFailureTime sets the FailureTime field's value.
10350func (s *LicenseOperationFailure) SetFailureTime(v time.Time) *LicenseOperationFailure {
10351	s.FailureTime = &v
10352	return s
10353}
10354
10355// SetMetadataList sets the MetadataList field's value.
10356func (s *LicenseOperationFailure) SetMetadataList(v []*Metadata) *LicenseOperationFailure {
10357	s.MetadataList = v
10358	return s
10359}
10360
10361// SetOperationName sets the OperationName field's value.
10362func (s *LicenseOperationFailure) SetOperationName(v string) *LicenseOperationFailure {
10363	s.OperationName = &v
10364	return s
10365}
10366
10367// SetOperationRequestedBy sets the OperationRequestedBy field's value.
10368func (s *LicenseOperationFailure) SetOperationRequestedBy(v string) *LicenseOperationFailure {
10369	s.OperationRequestedBy = &v
10370	return s
10371}
10372
10373// SetResourceArn sets the ResourceArn field's value.
10374func (s *LicenseOperationFailure) SetResourceArn(v string) *LicenseOperationFailure {
10375	s.ResourceArn = &v
10376	return s
10377}
10378
10379// SetResourceOwnerId sets the ResourceOwnerId field's value.
10380func (s *LicenseOperationFailure) SetResourceOwnerId(v string) *LicenseOperationFailure {
10381	s.ResourceOwnerId = &v
10382	return s
10383}
10384
10385// SetResourceType sets the ResourceType field's value.
10386func (s *LicenseOperationFailure) SetResourceType(v string) *LicenseOperationFailure {
10387	s.ResourceType = &v
10388	return s
10389}
10390
10391// Details for associating a license configuration with a resource.
10392type LicenseSpecification struct {
10393	_ struct{} `type:"structure"`
10394
10395	// Scope of AMI associations. The possible value is cross-account.
10396	AmiAssociationScope *string `type:"string"`
10397
10398	// Amazon Resource Name (ARN) of the license configuration.
10399	//
10400	// LicenseConfigurationArn is a required field
10401	LicenseConfigurationArn *string `type:"string" required:"true"`
10402}
10403
10404// String returns the string representation.
10405//
10406// API parameter values that are decorated as "sensitive" in the API will not
10407// be included in the string output. The member name will be present, but the
10408// value will be replaced with "sensitive".
10409func (s LicenseSpecification) String() string {
10410	return awsutil.Prettify(s)
10411}
10412
10413// GoString returns the string representation.
10414//
10415// API parameter values that are decorated as "sensitive" in the API will not
10416// be included in the string output. The member name will be present, but the
10417// value will be replaced with "sensitive".
10418func (s LicenseSpecification) GoString() string {
10419	return s.String()
10420}
10421
10422// Validate inspects the fields of the type to determine if they are valid.
10423func (s *LicenseSpecification) Validate() error {
10424	invalidParams := request.ErrInvalidParams{Context: "LicenseSpecification"}
10425	if s.LicenseConfigurationArn == nil {
10426		invalidParams.Add(request.NewErrParamRequired("LicenseConfigurationArn"))
10427	}
10428
10429	if invalidParams.Len() > 0 {
10430		return invalidParams
10431	}
10432	return nil
10433}
10434
10435// SetAmiAssociationScope sets the AmiAssociationScope field's value.
10436func (s *LicenseSpecification) SetAmiAssociationScope(v string) *LicenseSpecification {
10437	s.AmiAssociationScope = &v
10438	return s
10439}
10440
10441// SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value.
10442func (s *LicenseSpecification) SetLicenseConfigurationArn(v string) *LicenseSpecification {
10443	s.LicenseConfigurationArn = &v
10444	return s
10445}
10446
10447// Describes the entitlement usage associated with a license.
10448type LicenseUsage struct {
10449	_ struct{} `type:"structure"`
10450
10451	// License entitlement usages.
10452	EntitlementUsages []*EntitlementUsage `type:"list"`
10453}
10454
10455// String returns the string representation.
10456//
10457// API parameter values that are decorated as "sensitive" in the API will not
10458// be included in the string output. The member name will be present, but the
10459// value will be replaced with "sensitive".
10460func (s LicenseUsage) String() string {
10461	return awsutil.Prettify(s)
10462}
10463
10464// GoString returns the string representation.
10465//
10466// API parameter values that are decorated as "sensitive" in the API will not
10467// be included in the string output. The member name will be present, but the
10468// value will be replaced with "sensitive".
10469func (s LicenseUsage) GoString() string {
10470	return s.String()
10471}
10472
10473// SetEntitlementUsages sets the EntitlementUsages field's value.
10474func (s *LicenseUsage) SetEntitlementUsages(v []*EntitlementUsage) *LicenseUsage {
10475	s.EntitlementUsages = v
10476	return s
10477}
10478
10479// You do not have enough licenses available to support a new resource launch.
10480type LicenseUsageException struct {
10481	_            struct{}                  `type:"structure"`
10482	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
10483
10484	Message_ *string `locationName:"Message" type:"string"`
10485}
10486
10487// String returns the string representation.
10488//
10489// API parameter values that are decorated as "sensitive" in the API will not
10490// be included in the string output. The member name will be present, but the
10491// value will be replaced with "sensitive".
10492func (s LicenseUsageException) String() string {
10493	return awsutil.Prettify(s)
10494}
10495
10496// GoString returns the string representation.
10497//
10498// API parameter values that are decorated as "sensitive" in the API will not
10499// be included in the string output. The member name will be present, but the
10500// value will be replaced with "sensitive".
10501func (s LicenseUsageException) GoString() string {
10502	return s.String()
10503}
10504
10505func newErrorLicenseUsageException(v protocol.ResponseMetadata) error {
10506	return &LicenseUsageException{
10507		RespMetadata: v,
10508	}
10509}
10510
10511// Code returns the exception type name.
10512func (s *LicenseUsageException) Code() string {
10513	return "LicenseUsageException"
10514}
10515
10516// Message returns the exception's message.
10517func (s *LicenseUsageException) Message() string {
10518	if s.Message_ != nil {
10519		return *s.Message_
10520	}
10521	return ""
10522}
10523
10524// OrigErr always returns nil, satisfies awserr.Error interface.
10525func (s *LicenseUsageException) OrigErr() error {
10526	return nil
10527}
10528
10529func (s *LicenseUsageException) Error() string {
10530	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
10531}
10532
10533// Status code returns the HTTP status code for the request's response error.
10534func (s *LicenseUsageException) StatusCode() int {
10535	return s.RespMetadata.StatusCode
10536}
10537
10538// RequestID returns the service's response RequestID for request.
10539func (s *LicenseUsageException) RequestID() string {
10540	return s.RespMetadata.RequestID
10541}
10542
10543type ListAssociationsForLicenseConfigurationInput struct {
10544	_ struct{} `type:"structure"`
10545
10546	// Amazon Resource Name (ARN) of a license configuration.
10547	//
10548	// LicenseConfigurationArn is a required field
10549	LicenseConfigurationArn *string `type:"string" required:"true"`
10550
10551	// Maximum number of results to return in a single call.
10552	MaxResults *int64 `type:"integer"`
10553
10554	// Token for the next set of results.
10555	NextToken *string `type:"string"`
10556}
10557
10558// String returns the string representation.
10559//
10560// API parameter values that are decorated as "sensitive" in the API will not
10561// be included in the string output. The member name will be present, but the
10562// value will be replaced with "sensitive".
10563func (s ListAssociationsForLicenseConfigurationInput) String() string {
10564	return awsutil.Prettify(s)
10565}
10566
10567// GoString returns the string representation.
10568//
10569// API parameter values that are decorated as "sensitive" in the API will not
10570// be included in the string output. The member name will be present, but the
10571// value will be replaced with "sensitive".
10572func (s ListAssociationsForLicenseConfigurationInput) GoString() string {
10573	return s.String()
10574}
10575
10576// Validate inspects the fields of the type to determine if they are valid.
10577func (s *ListAssociationsForLicenseConfigurationInput) Validate() error {
10578	invalidParams := request.ErrInvalidParams{Context: "ListAssociationsForLicenseConfigurationInput"}
10579	if s.LicenseConfigurationArn == nil {
10580		invalidParams.Add(request.NewErrParamRequired("LicenseConfigurationArn"))
10581	}
10582
10583	if invalidParams.Len() > 0 {
10584		return invalidParams
10585	}
10586	return nil
10587}
10588
10589// SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value.
10590func (s *ListAssociationsForLicenseConfigurationInput) SetLicenseConfigurationArn(v string) *ListAssociationsForLicenseConfigurationInput {
10591	s.LicenseConfigurationArn = &v
10592	return s
10593}
10594
10595// SetMaxResults sets the MaxResults field's value.
10596func (s *ListAssociationsForLicenseConfigurationInput) SetMaxResults(v int64) *ListAssociationsForLicenseConfigurationInput {
10597	s.MaxResults = &v
10598	return s
10599}
10600
10601// SetNextToken sets the NextToken field's value.
10602func (s *ListAssociationsForLicenseConfigurationInput) SetNextToken(v string) *ListAssociationsForLicenseConfigurationInput {
10603	s.NextToken = &v
10604	return s
10605}
10606
10607type ListAssociationsForLicenseConfigurationOutput struct {
10608	_ struct{} `type:"structure"`
10609
10610	// Information about the associations for the license configuration.
10611	LicenseConfigurationAssociations []*LicenseConfigurationAssociation `type:"list"`
10612
10613	// Token for the next set of results.
10614	NextToken *string `type:"string"`
10615}
10616
10617// String returns the string representation.
10618//
10619// API parameter values that are decorated as "sensitive" in the API will not
10620// be included in the string output. The member name will be present, but the
10621// value will be replaced with "sensitive".
10622func (s ListAssociationsForLicenseConfigurationOutput) String() string {
10623	return awsutil.Prettify(s)
10624}
10625
10626// GoString returns the string representation.
10627//
10628// API parameter values that are decorated as "sensitive" in the API will not
10629// be included in the string output. The member name will be present, but the
10630// value will be replaced with "sensitive".
10631func (s ListAssociationsForLicenseConfigurationOutput) GoString() string {
10632	return s.String()
10633}
10634
10635// SetLicenseConfigurationAssociations sets the LicenseConfigurationAssociations field's value.
10636func (s *ListAssociationsForLicenseConfigurationOutput) SetLicenseConfigurationAssociations(v []*LicenseConfigurationAssociation) *ListAssociationsForLicenseConfigurationOutput {
10637	s.LicenseConfigurationAssociations = v
10638	return s
10639}
10640
10641// SetNextToken sets the NextToken field's value.
10642func (s *ListAssociationsForLicenseConfigurationOutput) SetNextToken(v string) *ListAssociationsForLicenseConfigurationOutput {
10643	s.NextToken = &v
10644	return s
10645}
10646
10647type ListDistributedGrantsInput struct {
10648	_ struct{} `type:"structure"`
10649
10650	// Filters to scope the results. The following filters are supported:
10651	//
10652	//    * LicenseArn
10653	//
10654	//    * GrantStatus
10655	//
10656	//    * GranteePrincipalARN
10657	//
10658	//    * ProductSKU
10659	//
10660	//    * LicenseIssuerName
10661	Filters []*Filter `type:"list"`
10662
10663	// Amazon Resource Names (ARNs) of the grants.
10664	GrantArns []*string `type:"list"`
10665
10666	// Maximum number of results to return in a single call.
10667	MaxResults *int64 `min:"1" type:"integer"`
10668
10669	// Token for the next set of results.
10670	NextToken *string `type:"string"`
10671}
10672
10673// String returns the string representation.
10674//
10675// API parameter values that are decorated as "sensitive" in the API will not
10676// be included in the string output. The member name will be present, but the
10677// value will be replaced with "sensitive".
10678func (s ListDistributedGrantsInput) String() string {
10679	return awsutil.Prettify(s)
10680}
10681
10682// GoString returns the string representation.
10683//
10684// API parameter values that are decorated as "sensitive" in the API will not
10685// be included in the string output. The member name will be present, but the
10686// value will be replaced with "sensitive".
10687func (s ListDistributedGrantsInput) GoString() string {
10688	return s.String()
10689}
10690
10691// Validate inspects the fields of the type to determine if they are valid.
10692func (s *ListDistributedGrantsInput) Validate() error {
10693	invalidParams := request.ErrInvalidParams{Context: "ListDistributedGrantsInput"}
10694	if s.MaxResults != nil && *s.MaxResults < 1 {
10695		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
10696	}
10697
10698	if invalidParams.Len() > 0 {
10699		return invalidParams
10700	}
10701	return nil
10702}
10703
10704// SetFilters sets the Filters field's value.
10705func (s *ListDistributedGrantsInput) SetFilters(v []*Filter) *ListDistributedGrantsInput {
10706	s.Filters = v
10707	return s
10708}
10709
10710// SetGrantArns sets the GrantArns field's value.
10711func (s *ListDistributedGrantsInput) SetGrantArns(v []*string) *ListDistributedGrantsInput {
10712	s.GrantArns = v
10713	return s
10714}
10715
10716// SetMaxResults sets the MaxResults field's value.
10717func (s *ListDistributedGrantsInput) SetMaxResults(v int64) *ListDistributedGrantsInput {
10718	s.MaxResults = &v
10719	return s
10720}
10721
10722// SetNextToken sets the NextToken field's value.
10723func (s *ListDistributedGrantsInput) SetNextToken(v string) *ListDistributedGrantsInput {
10724	s.NextToken = &v
10725	return s
10726}
10727
10728type ListDistributedGrantsOutput struct {
10729	_ struct{} `type:"structure"`
10730
10731	// Distributed grant details.
10732	Grants []*Grant `type:"list"`
10733
10734	// Token for the next set of results.
10735	NextToken *string `type:"string"`
10736}
10737
10738// String returns the string representation.
10739//
10740// API parameter values that are decorated as "sensitive" in the API will not
10741// be included in the string output. The member name will be present, but the
10742// value will be replaced with "sensitive".
10743func (s ListDistributedGrantsOutput) String() string {
10744	return awsutil.Prettify(s)
10745}
10746
10747// GoString returns the string representation.
10748//
10749// API parameter values that are decorated as "sensitive" in the API will not
10750// be included in the string output. The member name will be present, but the
10751// value will be replaced with "sensitive".
10752func (s ListDistributedGrantsOutput) GoString() string {
10753	return s.String()
10754}
10755
10756// SetGrants sets the Grants field's value.
10757func (s *ListDistributedGrantsOutput) SetGrants(v []*Grant) *ListDistributedGrantsOutput {
10758	s.Grants = v
10759	return s
10760}
10761
10762// SetNextToken sets the NextToken field's value.
10763func (s *ListDistributedGrantsOutput) SetNextToken(v string) *ListDistributedGrantsOutput {
10764	s.NextToken = &v
10765	return s
10766}
10767
10768type ListFailuresForLicenseConfigurationOperationsInput struct {
10769	_ struct{} `type:"structure"`
10770
10771	// Amazon Resource Name of the license configuration.
10772	//
10773	// LicenseConfigurationArn is a required field
10774	LicenseConfigurationArn *string `type:"string" required:"true"`
10775
10776	// Maximum number of results to return in a single call.
10777	MaxResults *int64 `type:"integer"`
10778
10779	// Token for the next set of results.
10780	NextToken *string `type:"string"`
10781}
10782
10783// String returns the string representation.
10784//
10785// API parameter values that are decorated as "sensitive" in the API will not
10786// be included in the string output. The member name will be present, but the
10787// value will be replaced with "sensitive".
10788func (s ListFailuresForLicenseConfigurationOperationsInput) String() string {
10789	return awsutil.Prettify(s)
10790}
10791
10792// GoString returns the string representation.
10793//
10794// API parameter values that are decorated as "sensitive" in the API will not
10795// be included in the string output. The member name will be present, but the
10796// value will be replaced with "sensitive".
10797func (s ListFailuresForLicenseConfigurationOperationsInput) GoString() string {
10798	return s.String()
10799}
10800
10801// Validate inspects the fields of the type to determine if they are valid.
10802func (s *ListFailuresForLicenseConfigurationOperationsInput) Validate() error {
10803	invalidParams := request.ErrInvalidParams{Context: "ListFailuresForLicenseConfigurationOperationsInput"}
10804	if s.LicenseConfigurationArn == nil {
10805		invalidParams.Add(request.NewErrParamRequired("LicenseConfigurationArn"))
10806	}
10807
10808	if invalidParams.Len() > 0 {
10809		return invalidParams
10810	}
10811	return nil
10812}
10813
10814// SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value.
10815func (s *ListFailuresForLicenseConfigurationOperationsInput) SetLicenseConfigurationArn(v string) *ListFailuresForLicenseConfigurationOperationsInput {
10816	s.LicenseConfigurationArn = &v
10817	return s
10818}
10819
10820// SetMaxResults sets the MaxResults field's value.
10821func (s *ListFailuresForLicenseConfigurationOperationsInput) SetMaxResults(v int64) *ListFailuresForLicenseConfigurationOperationsInput {
10822	s.MaxResults = &v
10823	return s
10824}
10825
10826// SetNextToken sets the NextToken field's value.
10827func (s *ListFailuresForLicenseConfigurationOperationsInput) SetNextToken(v string) *ListFailuresForLicenseConfigurationOperationsInput {
10828	s.NextToken = &v
10829	return s
10830}
10831
10832type ListFailuresForLicenseConfigurationOperationsOutput struct {
10833	_ struct{} `type:"structure"`
10834
10835	// License configuration operations that failed.
10836	LicenseOperationFailureList []*LicenseOperationFailure `type:"list"`
10837
10838	// Token for the next set of results.
10839	NextToken *string `type:"string"`
10840}
10841
10842// String returns the string representation.
10843//
10844// API parameter values that are decorated as "sensitive" in the API will not
10845// be included in the string output. The member name will be present, but the
10846// value will be replaced with "sensitive".
10847func (s ListFailuresForLicenseConfigurationOperationsOutput) String() string {
10848	return awsutil.Prettify(s)
10849}
10850
10851// GoString returns the string representation.
10852//
10853// API parameter values that are decorated as "sensitive" in the API will not
10854// be included in the string output. The member name will be present, but the
10855// value will be replaced with "sensitive".
10856func (s ListFailuresForLicenseConfigurationOperationsOutput) GoString() string {
10857	return s.String()
10858}
10859
10860// SetLicenseOperationFailureList sets the LicenseOperationFailureList field's value.
10861func (s *ListFailuresForLicenseConfigurationOperationsOutput) SetLicenseOperationFailureList(v []*LicenseOperationFailure) *ListFailuresForLicenseConfigurationOperationsOutput {
10862	s.LicenseOperationFailureList = v
10863	return s
10864}
10865
10866// SetNextToken sets the NextToken field's value.
10867func (s *ListFailuresForLicenseConfigurationOperationsOutput) SetNextToken(v string) *ListFailuresForLicenseConfigurationOperationsOutput {
10868	s.NextToken = &v
10869	return s
10870}
10871
10872type ListLicenseConfigurationsInput struct {
10873	_ struct{} `type:"structure"`
10874
10875	// Filters to scope the results. The following filters and logical operators
10876	// are supported:
10877	//
10878	//    * licenseCountingType - The dimension for which licenses are counted.
10879	//    Possible values are vCPU | Instance | Core | Socket. Logical operators
10880	//    are EQUALS | NOT_EQUALS.
10881	//
10882	//    * enforceLicenseCount - A Boolean value that indicates whether hard license
10883	//    enforcement is used. Logical operators are EQUALS | NOT_EQUALS.
10884	//
10885	//    * usagelimitExceeded - A Boolean value that indicates whether the available
10886	//    licenses have been exceeded. Logical operators are EQUALS | NOT_EQUALS.
10887	Filters []*Filter `type:"list"`
10888
10889	// Amazon Resource Names (ARN) of the license configurations.
10890	LicenseConfigurationArns []*string `type:"list"`
10891
10892	// Maximum number of results to return in a single call.
10893	MaxResults *int64 `type:"integer"`
10894
10895	// Token for the next set of results.
10896	NextToken *string `type:"string"`
10897}
10898
10899// String returns the string representation.
10900//
10901// API parameter values that are decorated as "sensitive" in the API will not
10902// be included in the string output. The member name will be present, but the
10903// value will be replaced with "sensitive".
10904func (s ListLicenseConfigurationsInput) String() string {
10905	return awsutil.Prettify(s)
10906}
10907
10908// GoString returns the string representation.
10909//
10910// API parameter values that are decorated as "sensitive" in the API will not
10911// be included in the string output. The member name will be present, but the
10912// value will be replaced with "sensitive".
10913func (s ListLicenseConfigurationsInput) GoString() string {
10914	return s.String()
10915}
10916
10917// SetFilters sets the Filters field's value.
10918func (s *ListLicenseConfigurationsInput) SetFilters(v []*Filter) *ListLicenseConfigurationsInput {
10919	s.Filters = v
10920	return s
10921}
10922
10923// SetLicenseConfigurationArns sets the LicenseConfigurationArns field's value.
10924func (s *ListLicenseConfigurationsInput) SetLicenseConfigurationArns(v []*string) *ListLicenseConfigurationsInput {
10925	s.LicenseConfigurationArns = v
10926	return s
10927}
10928
10929// SetMaxResults sets the MaxResults field's value.
10930func (s *ListLicenseConfigurationsInput) SetMaxResults(v int64) *ListLicenseConfigurationsInput {
10931	s.MaxResults = &v
10932	return s
10933}
10934
10935// SetNextToken sets the NextToken field's value.
10936func (s *ListLicenseConfigurationsInput) SetNextToken(v string) *ListLicenseConfigurationsInput {
10937	s.NextToken = &v
10938	return s
10939}
10940
10941type ListLicenseConfigurationsOutput struct {
10942	_ struct{} `type:"structure"`
10943
10944	// Information about the license configurations.
10945	LicenseConfigurations []*LicenseConfiguration `type:"list"`
10946
10947	// Token for the next set of results.
10948	NextToken *string `type:"string"`
10949}
10950
10951// String returns the string representation.
10952//
10953// API parameter values that are decorated as "sensitive" in the API will not
10954// be included in the string output. The member name will be present, but the
10955// value will be replaced with "sensitive".
10956func (s ListLicenseConfigurationsOutput) String() string {
10957	return awsutil.Prettify(s)
10958}
10959
10960// GoString returns the string representation.
10961//
10962// API parameter values that are decorated as "sensitive" in the API will not
10963// be included in the string output. The member name will be present, but the
10964// value will be replaced with "sensitive".
10965func (s ListLicenseConfigurationsOutput) GoString() string {
10966	return s.String()
10967}
10968
10969// SetLicenseConfigurations sets the LicenseConfigurations field's value.
10970func (s *ListLicenseConfigurationsOutput) SetLicenseConfigurations(v []*LicenseConfiguration) *ListLicenseConfigurationsOutput {
10971	s.LicenseConfigurations = v
10972	return s
10973}
10974
10975// SetNextToken sets the NextToken field's value.
10976func (s *ListLicenseConfigurationsOutput) SetNextToken(v string) *ListLicenseConfigurationsOutput {
10977	s.NextToken = &v
10978	return s
10979}
10980
10981type ListLicenseConversionTasksInput struct {
10982	_ struct{} `type:"structure"`
10983
10984	// Filters to scope the results. Valid filters are ResourceArns and Status.
10985	Filters []*Filter `type:"list"`
10986
10987	// Maximum number of results to return in a single call.
10988	MaxResults *int64 `type:"integer"`
10989
10990	// Token for the next set of results.
10991	NextToken *string `type:"string"`
10992}
10993
10994// String returns the string representation.
10995//
10996// API parameter values that are decorated as "sensitive" in the API will not
10997// be included in the string output. The member name will be present, but the
10998// value will be replaced with "sensitive".
10999func (s ListLicenseConversionTasksInput) String() string {
11000	return awsutil.Prettify(s)
11001}
11002
11003// GoString returns the string representation.
11004//
11005// API parameter values that are decorated as "sensitive" in the API will not
11006// be included in the string output. The member name will be present, but the
11007// value will be replaced with "sensitive".
11008func (s ListLicenseConversionTasksInput) GoString() string {
11009	return s.String()
11010}
11011
11012// SetFilters sets the Filters field's value.
11013func (s *ListLicenseConversionTasksInput) SetFilters(v []*Filter) *ListLicenseConversionTasksInput {
11014	s.Filters = v
11015	return s
11016}
11017
11018// SetMaxResults sets the MaxResults field's value.
11019func (s *ListLicenseConversionTasksInput) SetMaxResults(v int64) *ListLicenseConversionTasksInput {
11020	s.MaxResults = &v
11021	return s
11022}
11023
11024// SetNextToken sets the NextToken field's value.
11025func (s *ListLicenseConversionTasksInput) SetNextToken(v string) *ListLicenseConversionTasksInput {
11026	s.NextToken = &v
11027	return s
11028}
11029
11030type ListLicenseConversionTasksOutput struct {
11031	_ struct{} `type:"structure"`
11032
11033	// Information about the license configuration tasks for your account.
11034	LicenseConversionTasks []*LicenseConversionTask `type:"list"`
11035
11036	// Token for the next set of results.
11037	NextToken *string `type:"string"`
11038}
11039
11040// String returns the string representation.
11041//
11042// API parameter values that are decorated as "sensitive" in the API will not
11043// be included in the string output. The member name will be present, but the
11044// value will be replaced with "sensitive".
11045func (s ListLicenseConversionTasksOutput) String() string {
11046	return awsutil.Prettify(s)
11047}
11048
11049// GoString returns the string representation.
11050//
11051// API parameter values that are decorated as "sensitive" in the API will not
11052// be included in the string output. The member name will be present, but the
11053// value will be replaced with "sensitive".
11054func (s ListLicenseConversionTasksOutput) GoString() string {
11055	return s.String()
11056}
11057
11058// SetLicenseConversionTasks sets the LicenseConversionTasks field's value.
11059func (s *ListLicenseConversionTasksOutput) SetLicenseConversionTasks(v []*LicenseConversionTask) *ListLicenseConversionTasksOutput {
11060	s.LicenseConversionTasks = v
11061	return s
11062}
11063
11064// SetNextToken sets the NextToken field's value.
11065func (s *ListLicenseConversionTasksOutput) SetNextToken(v string) *ListLicenseConversionTasksOutput {
11066	s.NextToken = &v
11067	return s
11068}
11069
11070type ListLicenseManagerReportGeneratorsInput struct {
11071	_ struct{} `type:"structure"`
11072
11073	// Filters to scope the results. The following filters are supported:
11074	//
11075	//    * LicenseConfigurationArn
11076	Filters []*Filter `type:"list"`
11077
11078	// Maximum number of results to return in a single call.
11079	MaxResults *int64 `min:"1" type:"integer"`
11080
11081	// Token for the next set of results.
11082	NextToken *string `type:"string"`
11083}
11084
11085// String returns the string representation.
11086//
11087// API parameter values that are decorated as "sensitive" in the API will not
11088// be included in the string output. The member name will be present, but the
11089// value will be replaced with "sensitive".
11090func (s ListLicenseManagerReportGeneratorsInput) String() string {
11091	return awsutil.Prettify(s)
11092}
11093
11094// GoString returns the string representation.
11095//
11096// API parameter values that are decorated as "sensitive" in the API will not
11097// be included in the string output. The member name will be present, but the
11098// value will be replaced with "sensitive".
11099func (s ListLicenseManagerReportGeneratorsInput) GoString() string {
11100	return s.String()
11101}
11102
11103// Validate inspects the fields of the type to determine if they are valid.
11104func (s *ListLicenseManagerReportGeneratorsInput) Validate() error {
11105	invalidParams := request.ErrInvalidParams{Context: "ListLicenseManagerReportGeneratorsInput"}
11106	if s.MaxResults != nil && *s.MaxResults < 1 {
11107		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
11108	}
11109
11110	if invalidParams.Len() > 0 {
11111		return invalidParams
11112	}
11113	return nil
11114}
11115
11116// SetFilters sets the Filters field's value.
11117func (s *ListLicenseManagerReportGeneratorsInput) SetFilters(v []*Filter) *ListLicenseManagerReportGeneratorsInput {
11118	s.Filters = v
11119	return s
11120}
11121
11122// SetMaxResults sets the MaxResults field's value.
11123func (s *ListLicenseManagerReportGeneratorsInput) SetMaxResults(v int64) *ListLicenseManagerReportGeneratorsInput {
11124	s.MaxResults = &v
11125	return s
11126}
11127
11128// SetNextToken sets the NextToken field's value.
11129func (s *ListLicenseManagerReportGeneratorsInput) SetNextToken(v string) *ListLicenseManagerReportGeneratorsInput {
11130	s.NextToken = &v
11131	return s
11132}
11133
11134type ListLicenseManagerReportGeneratorsOutput struct {
11135	_ struct{} `type:"structure"`
11136
11137	// Token for the next set of results.
11138	NextToken *string `type:"string"`
11139
11140	// A report generator that creates periodic reports about your license configurations.
11141	ReportGenerators []*ReportGenerator `type:"list"`
11142}
11143
11144// String returns the string representation.
11145//
11146// API parameter values that are decorated as "sensitive" in the API will not
11147// be included in the string output. The member name will be present, but the
11148// value will be replaced with "sensitive".
11149func (s ListLicenseManagerReportGeneratorsOutput) String() string {
11150	return awsutil.Prettify(s)
11151}
11152
11153// GoString returns the string representation.
11154//
11155// API parameter values that are decorated as "sensitive" in the API will not
11156// be included in the string output. The member name will be present, but the
11157// value will be replaced with "sensitive".
11158func (s ListLicenseManagerReportGeneratorsOutput) GoString() string {
11159	return s.String()
11160}
11161
11162// SetNextToken sets the NextToken field's value.
11163func (s *ListLicenseManagerReportGeneratorsOutput) SetNextToken(v string) *ListLicenseManagerReportGeneratorsOutput {
11164	s.NextToken = &v
11165	return s
11166}
11167
11168// SetReportGenerators sets the ReportGenerators field's value.
11169func (s *ListLicenseManagerReportGeneratorsOutput) SetReportGenerators(v []*ReportGenerator) *ListLicenseManagerReportGeneratorsOutput {
11170	s.ReportGenerators = v
11171	return s
11172}
11173
11174type ListLicenseSpecificationsForResourceInput struct {
11175	_ struct{} `type:"structure"`
11176
11177	// Maximum number of results to return in a single call.
11178	MaxResults *int64 `type:"integer"`
11179
11180	// Token for the next set of results.
11181	NextToken *string `type:"string"`
11182
11183	// Amazon Resource Name (ARN) of a resource that has an associated license configuration.
11184	//
11185	// ResourceArn is a required field
11186	ResourceArn *string `type:"string" required:"true"`
11187}
11188
11189// String returns the string representation.
11190//
11191// API parameter values that are decorated as "sensitive" in the API will not
11192// be included in the string output. The member name will be present, but the
11193// value will be replaced with "sensitive".
11194func (s ListLicenseSpecificationsForResourceInput) String() string {
11195	return awsutil.Prettify(s)
11196}
11197
11198// GoString returns the string representation.
11199//
11200// API parameter values that are decorated as "sensitive" in the API will not
11201// be included in the string output. The member name will be present, but the
11202// value will be replaced with "sensitive".
11203func (s ListLicenseSpecificationsForResourceInput) GoString() string {
11204	return s.String()
11205}
11206
11207// Validate inspects the fields of the type to determine if they are valid.
11208func (s *ListLicenseSpecificationsForResourceInput) Validate() error {
11209	invalidParams := request.ErrInvalidParams{Context: "ListLicenseSpecificationsForResourceInput"}
11210	if s.ResourceArn == nil {
11211		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
11212	}
11213
11214	if invalidParams.Len() > 0 {
11215		return invalidParams
11216	}
11217	return nil
11218}
11219
11220// SetMaxResults sets the MaxResults field's value.
11221func (s *ListLicenseSpecificationsForResourceInput) SetMaxResults(v int64) *ListLicenseSpecificationsForResourceInput {
11222	s.MaxResults = &v
11223	return s
11224}
11225
11226// SetNextToken sets the NextToken field's value.
11227func (s *ListLicenseSpecificationsForResourceInput) SetNextToken(v string) *ListLicenseSpecificationsForResourceInput {
11228	s.NextToken = &v
11229	return s
11230}
11231
11232// SetResourceArn sets the ResourceArn field's value.
11233func (s *ListLicenseSpecificationsForResourceInput) SetResourceArn(v string) *ListLicenseSpecificationsForResourceInput {
11234	s.ResourceArn = &v
11235	return s
11236}
11237
11238type ListLicenseSpecificationsForResourceOutput struct {
11239	_ struct{} `type:"structure"`
11240
11241	// License configurations associated with a resource.
11242	LicenseSpecifications []*LicenseSpecification `type:"list"`
11243
11244	// Token for the next set of results.
11245	NextToken *string `type:"string"`
11246}
11247
11248// String returns the string representation.
11249//
11250// API parameter values that are decorated as "sensitive" in the API will not
11251// be included in the string output. The member name will be present, but the
11252// value will be replaced with "sensitive".
11253func (s ListLicenseSpecificationsForResourceOutput) String() string {
11254	return awsutil.Prettify(s)
11255}
11256
11257// GoString returns the string representation.
11258//
11259// API parameter values that are decorated as "sensitive" in the API will not
11260// be included in the string output. The member name will be present, but the
11261// value will be replaced with "sensitive".
11262func (s ListLicenseSpecificationsForResourceOutput) GoString() string {
11263	return s.String()
11264}
11265
11266// SetLicenseSpecifications sets the LicenseSpecifications field's value.
11267func (s *ListLicenseSpecificationsForResourceOutput) SetLicenseSpecifications(v []*LicenseSpecification) *ListLicenseSpecificationsForResourceOutput {
11268	s.LicenseSpecifications = v
11269	return s
11270}
11271
11272// SetNextToken sets the NextToken field's value.
11273func (s *ListLicenseSpecificationsForResourceOutput) SetNextToken(v string) *ListLicenseSpecificationsForResourceOutput {
11274	s.NextToken = &v
11275	return s
11276}
11277
11278type ListLicenseVersionsInput struct {
11279	_ struct{} `type:"structure"`
11280
11281	// Amazon Resource Name (ARN) of the license.
11282	//
11283	// LicenseArn is a required field
11284	LicenseArn *string `type:"string" required:"true"`
11285
11286	// Maximum number of results to return in a single call.
11287	MaxResults *int64 `min:"1" type:"integer"`
11288
11289	// Token for the next set of results.
11290	NextToken *string `type:"string"`
11291}
11292
11293// String returns the string representation.
11294//
11295// API parameter values that are decorated as "sensitive" in the API will not
11296// be included in the string output. The member name will be present, but the
11297// value will be replaced with "sensitive".
11298func (s ListLicenseVersionsInput) String() string {
11299	return awsutil.Prettify(s)
11300}
11301
11302// GoString returns the string representation.
11303//
11304// API parameter values that are decorated as "sensitive" in the API will not
11305// be included in the string output. The member name will be present, but the
11306// value will be replaced with "sensitive".
11307func (s ListLicenseVersionsInput) GoString() string {
11308	return s.String()
11309}
11310
11311// Validate inspects the fields of the type to determine if they are valid.
11312func (s *ListLicenseVersionsInput) Validate() error {
11313	invalidParams := request.ErrInvalidParams{Context: "ListLicenseVersionsInput"}
11314	if s.LicenseArn == nil {
11315		invalidParams.Add(request.NewErrParamRequired("LicenseArn"))
11316	}
11317	if s.MaxResults != nil && *s.MaxResults < 1 {
11318		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
11319	}
11320
11321	if invalidParams.Len() > 0 {
11322		return invalidParams
11323	}
11324	return nil
11325}
11326
11327// SetLicenseArn sets the LicenseArn field's value.
11328func (s *ListLicenseVersionsInput) SetLicenseArn(v string) *ListLicenseVersionsInput {
11329	s.LicenseArn = &v
11330	return s
11331}
11332
11333// SetMaxResults sets the MaxResults field's value.
11334func (s *ListLicenseVersionsInput) SetMaxResults(v int64) *ListLicenseVersionsInput {
11335	s.MaxResults = &v
11336	return s
11337}
11338
11339// SetNextToken sets the NextToken field's value.
11340func (s *ListLicenseVersionsInput) SetNextToken(v string) *ListLicenseVersionsInput {
11341	s.NextToken = &v
11342	return s
11343}
11344
11345type ListLicenseVersionsOutput struct {
11346	_ struct{} `type:"structure"`
11347
11348	// License details.
11349	Licenses []*License `type:"list"`
11350
11351	// Token for the next set of results.
11352	NextToken *string `type:"string"`
11353}
11354
11355// String returns the string representation.
11356//
11357// API parameter values that are decorated as "sensitive" in the API will not
11358// be included in the string output. The member name will be present, but the
11359// value will be replaced with "sensitive".
11360func (s ListLicenseVersionsOutput) String() string {
11361	return awsutil.Prettify(s)
11362}
11363
11364// GoString returns the string representation.
11365//
11366// API parameter values that are decorated as "sensitive" in the API will not
11367// be included in the string output. The member name will be present, but the
11368// value will be replaced with "sensitive".
11369func (s ListLicenseVersionsOutput) GoString() string {
11370	return s.String()
11371}
11372
11373// SetLicenses sets the Licenses field's value.
11374func (s *ListLicenseVersionsOutput) SetLicenses(v []*License) *ListLicenseVersionsOutput {
11375	s.Licenses = v
11376	return s
11377}
11378
11379// SetNextToken sets the NextToken field's value.
11380func (s *ListLicenseVersionsOutput) SetNextToken(v string) *ListLicenseVersionsOutput {
11381	s.NextToken = &v
11382	return s
11383}
11384
11385type ListLicensesInput struct {
11386	_ struct{} `type:"structure"`
11387
11388	// Filters to scope the results. The following filters are supported:
11389	//
11390	//    * Beneficiary
11391	//
11392	//    * ProductSKU
11393	//
11394	//    * Fingerprint
11395	//
11396	//    * Status
11397	Filters []*Filter `type:"list"`
11398
11399	// Amazon Resource Names (ARNs) of the licenses.
11400	LicenseArns []*string `type:"list"`
11401
11402	// Maximum number of results to return in a single call.
11403	MaxResults *int64 `min:"1" type:"integer"`
11404
11405	// Token for the next set of results.
11406	NextToken *string `type:"string"`
11407}
11408
11409// String returns the string representation.
11410//
11411// API parameter values that are decorated as "sensitive" in the API will not
11412// be included in the string output. The member name will be present, but the
11413// value will be replaced with "sensitive".
11414func (s ListLicensesInput) String() string {
11415	return awsutil.Prettify(s)
11416}
11417
11418// GoString returns the string representation.
11419//
11420// API parameter values that are decorated as "sensitive" in the API will not
11421// be included in the string output. The member name will be present, but the
11422// value will be replaced with "sensitive".
11423func (s ListLicensesInput) GoString() string {
11424	return s.String()
11425}
11426
11427// Validate inspects the fields of the type to determine if they are valid.
11428func (s *ListLicensesInput) Validate() error {
11429	invalidParams := request.ErrInvalidParams{Context: "ListLicensesInput"}
11430	if s.MaxResults != nil && *s.MaxResults < 1 {
11431		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
11432	}
11433
11434	if invalidParams.Len() > 0 {
11435		return invalidParams
11436	}
11437	return nil
11438}
11439
11440// SetFilters sets the Filters field's value.
11441func (s *ListLicensesInput) SetFilters(v []*Filter) *ListLicensesInput {
11442	s.Filters = v
11443	return s
11444}
11445
11446// SetLicenseArns sets the LicenseArns field's value.
11447func (s *ListLicensesInput) SetLicenseArns(v []*string) *ListLicensesInput {
11448	s.LicenseArns = v
11449	return s
11450}
11451
11452// SetMaxResults sets the MaxResults field's value.
11453func (s *ListLicensesInput) SetMaxResults(v int64) *ListLicensesInput {
11454	s.MaxResults = &v
11455	return s
11456}
11457
11458// SetNextToken sets the NextToken field's value.
11459func (s *ListLicensesInput) SetNextToken(v string) *ListLicensesInput {
11460	s.NextToken = &v
11461	return s
11462}
11463
11464type ListLicensesOutput struct {
11465	_ struct{} `type:"structure"`
11466
11467	// License details.
11468	Licenses []*License `type:"list"`
11469
11470	// Token for the next set of results.
11471	NextToken *string `type:"string"`
11472}
11473
11474// String returns the string representation.
11475//
11476// API parameter values that are decorated as "sensitive" in the API will not
11477// be included in the string output. The member name will be present, but the
11478// value will be replaced with "sensitive".
11479func (s ListLicensesOutput) String() string {
11480	return awsutil.Prettify(s)
11481}
11482
11483// GoString returns the string representation.
11484//
11485// API parameter values that are decorated as "sensitive" in the API will not
11486// be included in the string output. The member name will be present, but the
11487// value will be replaced with "sensitive".
11488func (s ListLicensesOutput) GoString() string {
11489	return s.String()
11490}
11491
11492// SetLicenses sets the Licenses field's value.
11493func (s *ListLicensesOutput) SetLicenses(v []*License) *ListLicensesOutput {
11494	s.Licenses = v
11495	return s
11496}
11497
11498// SetNextToken sets the NextToken field's value.
11499func (s *ListLicensesOutput) SetNextToken(v string) *ListLicensesOutput {
11500	s.NextToken = &v
11501	return s
11502}
11503
11504type ListReceivedGrantsInput struct {
11505	_ struct{} `type:"structure"`
11506
11507	// Filters to scope the results. The following filters are supported:
11508	//
11509	//    * ProductSKU
11510	//
11511	//    * LicenseIssuerName
11512	//
11513	//    * LicenseArn
11514	//
11515	//    * GrantStatus
11516	//
11517	//    * GranterAccountId
11518	Filters []*Filter `type:"list"`
11519
11520	// Amazon Resource Names (ARNs) of the grants.
11521	GrantArns []*string `type:"list"`
11522
11523	// Maximum number of results to return in a single call.
11524	MaxResults *int64 `min:"1" type:"integer"`
11525
11526	// Token for the next set of results.
11527	NextToken *string `type:"string"`
11528}
11529
11530// String returns the string representation.
11531//
11532// API parameter values that are decorated as "sensitive" in the API will not
11533// be included in the string output. The member name will be present, but the
11534// value will be replaced with "sensitive".
11535func (s ListReceivedGrantsInput) String() string {
11536	return awsutil.Prettify(s)
11537}
11538
11539// GoString returns the string representation.
11540//
11541// API parameter values that are decorated as "sensitive" in the API will not
11542// be included in the string output. The member name will be present, but the
11543// value will be replaced with "sensitive".
11544func (s ListReceivedGrantsInput) GoString() string {
11545	return s.String()
11546}
11547
11548// Validate inspects the fields of the type to determine if they are valid.
11549func (s *ListReceivedGrantsInput) Validate() error {
11550	invalidParams := request.ErrInvalidParams{Context: "ListReceivedGrantsInput"}
11551	if s.MaxResults != nil && *s.MaxResults < 1 {
11552		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
11553	}
11554
11555	if invalidParams.Len() > 0 {
11556		return invalidParams
11557	}
11558	return nil
11559}
11560
11561// SetFilters sets the Filters field's value.
11562func (s *ListReceivedGrantsInput) SetFilters(v []*Filter) *ListReceivedGrantsInput {
11563	s.Filters = v
11564	return s
11565}
11566
11567// SetGrantArns sets the GrantArns field's value.
11568func (s *ListReceivedGrantsInput) SetGrantArns(v []*string) *ListReceivedGrantsInput {
11569	s.GrantArns = v
11570	return s
11571}
11572
11573// SetMaxResults sets the MaxResults field's value.
11574func (s *ListReceivedGrantsInput) SetMaxResults(v int64) *ListReceivedGrantsInput {
11575	s.MaxResults = &v
11576	return s
11577}
11578
11579// SetNextToken sets the NextToken field's value.
11580func (s *ListReceivedGrantsInput) SetNextToken(v string) *ListReceivedGrantsInput {
11581	s.NextToken = &v
11582	return s
11583}
11584
11585type ListReceivedGrantsOutput struct {
11586	_ struct{} `type:"structure"`
11587
11588	// Received grant details.
11589	Grants []*Grant `type:"list"`
11590
11591	// Token for the next set of results.
11592	NextToken *string `type:"string"`
11593}
11594
11595// String returns the string representation.
11596//
11597// API parameter values that are decorated as "sensitive" in the API will not
11598// be included in the string output. The member name will be present, but the
11599// value will be replaced with "sensitive".
11600func (s ListReceivedGrantsOutput) String() string {
11601	return awsutil.Prettify(s)
11602}
11603
11604// GoString returns the string representation.
11605//
11606// API parameter values that are decorated as "sensitive" in the API will not
11607// be included in the string output. The member name will be present, but the
11608// value will be replaced with "sensitive".
11609func (s ListReceivedGrantsOutput) GoString() string {
11610	return s.String()
11611}
11612
11613// SetGrants sets the Grants field's value.
11614func (s *ListReceivedGrantsOutput) SetGrants(v []*Grant) *ListReceivedGrantsOutput {
11615	s.Grants = v
11616	return s
11617}
11618
11619// SetNextToken sets the NextToken field's value.
11620func (s *ListReceivedGrantsOutput) SetNextToken(v string) *ListReceivedGrantsOutput {
11621	s.NextToken = &v
11622	return s
11623}
11624
11625type ListReceivedLicensesInput struct {
11626	_ struct{} `type:"structure"`
11627
11628	// Filters to scope the results. The following filters are supported:
11629	//
11630	//    * ProductSKU
11631	//
11632	//    * Status
11633	//
11634	//    * Fingerprint
11635	//
11636	//    * IssuerName
11637	//
11638	//    * Beneficiary
11639	Filters []*Filter `type:"list"`
11640
11641	// Amazon Resource Names (ARNs) of the licenses.
11642	LicenseArns []*string `type:"list"`
11643
11644	// Maximum number of results to return in a single call.
11645	MaxResults *int64 `min:"1" type:"integer"`
11646
11647	// Token for the next set of results.
11648	NextToken *string `type:"string"`
11649}
11650
11651// String returns the string representation.
11652//
11653// API parameter values that are decorated as "sensitive" in the API will not
11654// be included in the string output. The member name will be present, but the
11655// value will be replaced with "sensitive".
11656func (s ListReceivedLicensesInput) String() string {
11657	return awsutil.Prettify(s)
11658}
11659
11660// GoString returns the string representation.
11661//
11662// API parameter values that are decorated as "sensitive" in the API will not
11663// be included in the string output. The member name will be present, but the
11664// value will be replaced with "sensitive".
11665func (s ListReceivedLicensesInput) GoString() string {
11666	return s.String()
11667}
11668
11669// Validate inspects the fields of the type to determine if they are valid.
11670func (s *ListReceivedLicensesInput) Validate() error {
11671	invalidParams := request.ErrInvalidParams{Context: "ListReceivedLicensesInput"}
11672	if s.MaxResults != nil && *s.MaxResults < 1 {
11673		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
11674	}
11675
11676	if invalidParams.Len() > 0 {
11677		return invalidParams
11678	}
11679	return nil
11680}
11681
11682// SetFilters sets the Filters field's value.
11683func (s *ListReceivedLicensesInput) SetFilters(v []*Filter) *ListReceivedLicensesInput {
11684	s.Filters = v
11685	return s
11686}
11687
11688// SetLicenseArns sets the LicenseArns field's value.
11689func (s *ListReceivedLicensesInput) SetLicenseArns(v []*string) *ListReceivedLicensesInput {
11690	s.LicenseArns = v
11691	return s
11692}
11693
11694// SetMaxResults sets the MaxResults field's value.
11695func (s *ListReceivedLicensesInput) SetMaxResults(v int64) *ListReceivedLicensesInput {
11696	s.MaxResults = &v
11697	return s
11698}
11699
11700// SetNextToken sets the NextToken field's value.
11701func (s *ListReceivedLicensesInput) SetNextToken(v string) *ListReceivedLicensesInput {
11702	s.NextToken = &v
11703	return s
11704}
11705
11706type ListReceivedLicensesOutput struct {
11707	_ struct{} `type:"structure"`
11708
11709	// Received license details.
11710	Licenses []*GrantedLicense `type:"list"`
11711
11712	// Token for the next set of results.
11713	NextToken *string `type:"string"`
11714}
11715
11716// String returns the string representation.
11717//
11718// API parameter values that are decorated as "sensitive" in the API will not
11719// be included in the string output. The member name will be present, but the
11720// value will be replaced with "sensitive".
11721func (s ListReceivedLicensesOutput) String() string {
11722	return awsutil.Prettify(s)
11723}
11724
11725// GoString returns the string representation.
11726//
11727// API parameter values that are decorated as "sensitive" in the API will not
11728// be included in the string output. The member name will be present, but the
11729// value will be replaced with "sensitive".
11730func (s ListReceivedLicensesOutput) GoString() string {
11731	return s.String()
11732}
11733
11734// SetLicenses sets the Licenses field's value.
11735func (s *ListReceivedLicensesOutput) SetLicenses(v []*GrantedLicense) *ListReceivedLicensesOutput {
11736	s.Licenses = v
11737	return s
11738}
11739
11740// SetNextToken sets the NextToken field's value.
11741func (s *ListReceivedLicensesOutput) SetNextToken(v string) *ListReceivedLicensesOutput {
11742	s.NextToken = &v
11743	return s
11744}
11745
11746type ListResourceInventoryInput struct {
11747	_ struct{} `type:"structure"`
11748
11749	// Filters to scope the results. The following filters and logical operators
11750	// are supported:
11751	//
11752	//    * account_id - The ID of the Amazon Web Services account that owns the
11753	//    resource. Logical operators are EQUALS | NOT_EQUALS.
11754	//
11755	//    * application_name - The name of the application. Logical operators are
11756	//    EQUALS | BEGINS_WITH.
11757	//
11758	//    * license_included - The type of license included. Logical operators are
11759	//    EQUALS | NOT_EQUALS. Possible values are sql-server-enterprise | sql-server-standard
11760	//    | sql-server-web | windows-server-datacenter.
11761	//
11762	//    * platform - The platform of the resource. Logical operators are EQUALS
11763	//    | BEGINS_WITH.
11764	//
11765	//    * resource_id - The ID of the resource. Logical operators are EQUALS |
11766	//    NOT_EQUALS.
11767	//
11768	//    * tag:<key> - The key/value combination of a tag assigned to the resource.
11769	//    Logical operators are EQUALS (single account) or EQUALS | NOT_EQUALS (cross
11770	//    account).
11771	Filters []*InventoryFilter `type:"list"`
11772
11773	// Maximum number of results to return in a single call.
11774	MaxResults *int64 `type:"integer"`
11775
11776	// Token for the next set of results.
11777	NextToken *string `type:"string"`
11778}
11779
11780// String returns the string representation.
11781//
11782// API parameter values that are decorated as "sensitive" in the API will not
11783// be included in the string output. The member name will be present, but the
11784// value will be replaced with "sensitive".
11785func (s ListResourceInventoryInput) String() string {
11786	return awsutil.Prettify(s)
11787}
11788
11789// GoString returns the string representation.
11790//
11791// API parameter values that are decorated as "sensitive" in the API will not
11792// be included in the string output. The member name will be present, but the
11793// value will be replaced with "sensitive".
11794func (s ListResourceInventoryInput) GoString() string {
11795	return s.String()
11796}
11797
11798// Validate inspects the fields of the type to determine if they are valid.
11799func (s *ListResourceInventoryInput) Validate() error {
11800	invalidParams := request.ErrInvalidParams{Context: "ListResourceInventoryInput"}
11801	if s.Filters != nil {
11802		for i, v := range s.Filters {
11803			if v == nil {
11804				continue
11805			}
11806			if err := v.Validate(); err != nil {
11807				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
11808			}
11809		}
11810	}
11811
11812	if invalidParams.Len() > 0 {
11813		return invalidParams
11814	}
11815	return nil
11816}
11817
11818// SetFilters sets the Filters field's value.
11819func (s *ListResourceInventoryInput) SetFilters(v []*InventoryFilter) *ListResourceInventoryInput {
11820	s.Filters = v
11821	return s
11822}
11823
11824// SetMaxResults sets the MaxResults field's value.
11825func (s *ListResourceInventoryInput) SetMaxResults(v int64) *ListResourceInventoryInput {
11826	s.MaxResults = &v
11827	return s
11828}
11829
11830// SetNextToken sets the NextToken field's value.
11831func (s *ListResourceInventoryInput) SetNextToken(v string) *ListResourceInventoryInput {
11832	s.NextToken = &v
11833	return s
11834}
11835
11836type ListResourceInventoryOutput struct {
11837	_ struct{} `type:"structure"`
11838
11839	// Token for the next set of results.
11840	NextToken *string `type:"string"`
11841
11842	// Information about the resources.
11843	ResourceInventoryList []*ResourceInventory `type:"list"`
11844}
11845
11846// String returns the string representation.
11847//
11848// API parameter values that are decorated as "sensitive" in the API will not
11849// be included in the string output. The member name will be present, but the
11850// value will be replaced with "sensitive".
11851func (s ListResourceInventoryOutput) String() string {
11852	return awsutil.Prettify(s)
11853}
11854
11855// GoString returns the string representation.
11856//
11857// API parameter values that are decorated as "sensitive" in the API will not
11858// be included in the string output. The member name will be present, but the
11859// value will be replaced with "sensitive".
11860func (s ListResourceInventoryOutput) GoString() string {
11861	return s.String()
11862}
11863
11864// SetNextToken sets the NextToken field's value.
11865func (s *ListResourceInventoryOutput) SetNextToken(v string) *ListResourceInventoryOutput {
11866	s.NextToken = &v
11867	return s
11868}
11869
11870// SetResourceInventoryList sets the ResourceInventoryList field's value.
11871func (s *ListResourceInventoryOutput) SetResourceInventoryList(v []*ResourceInventory) *ListResourceInventoryOutput {
11872	s.ResourceInventoryList = v
11873	return s
11874}
11875
11876type ListTagsForResourceInput struct {
11877	_ struct{} `type:"structure"`
11878
11879	// Amazon Resource Name (ARN) of the license configuration.
11880	//
11881	// ResourceArn is a required field
11882	ResourceArn *string `type:"string" required:"true"`
11883}
11884
11885// String returns the string representation.
11886//
11887// API parameter values that are decorated as "sensitive" in the API will not
11888// be included in the string output. The member name will be present, but the
11889// value will be replaced with "sensitive".
11890func (s ListTagsForResourceInput) String() string {
11891	return awsutil.Prettify(s)
11892}
11893
11894// GoString returns the string representation.
11895//
11896// API parameter values that are decorated as "sensitive" in the API will not
11897// be included in the string output. The member name will be present, but the
11898// value will be replaced with "sensitive".
11899func (s ListTagsForResourceInput) GoString() string {
11900	return s.String()
11901}
11902
11903// Validate inspects the fields of the type to determine if they are valid.
11904func (s *ListTagsForResourceInput) Validate() error {
11905	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
11906	if s.ResourceArn == nil {
11907		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
11908	}
11909
11910	if invalidParams.Len() > 0 {
11911		return invalidParams
11912	}
11913	return nil
11914}
11915
11916// SetResourceArn sets the ResourceArn field's value.
11917func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
11918	s.ResourceArn = &v
11919	return s
11920}
11921
11922type ListTagsForResourceOutput struct {
11923	_ struct{} `type:"structure"`
11924
11925	// Information about the tags.
11926	Tags []*Tag `type:"list"`
11927}
11928
11929// String returns the string representation.
11930//
11931// API parameter values that are decorated as "sensitive" in the API will not
11932// be included in the string output. The member name will be present, but the
11933// value will be replaced with "sensitive".
11934func (s ListTagsForResourceOutput) String() string {
11935	return awsutil.Prettify(s)
11936}
11937
11938// GoString returns the string representation.
11939//
11940// API parameter values that are decorated as "sensitive" in the API will not
11941// be included in the string output. The member name will be present, but the
11942// value will be replaced with "sensitive".
11943func (s ListTagsForResourceOutput) GoString() string {
11944	return s.String()
11945}
11946
11947// SetTags sets the Tags field's value.
11948func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput {
11949	s.Tags = v
11950	return s
11951}
11952
11953type ListTokensInput struct {
11954	_ struct{} `type:"structure"`
11955
11956	// Filters to scope the results. The following filter is supported:
11957	//
11958	//    * LicenseArns
11959	Filters []*Filter `type:"list"`
11960
11961	// Maximum number of results to return in a single call.
11962	MaxResults *int64 `min:"1" type:"integer"`
11963
11964	// Token for the next set of results.
11965	NextToken *string `type:"string"`
11966
11967	// Token IDs.
11968	TokenIds []*string `type:"list"`
11969}
11970
11971// String returns the string representation.
11972//
11973// API parameter values that are decorated as "sensitive" in the API will not
11974// be included in the string output. The member name will be present, but the
11975// value will be replaced with "sensitive".
11976func (s ListTokensInput) String() string {
11977	return awsutil.Prettify(s)
11978}
11979
11980// GoString returns the string representation.
11981//
11982// API parameter values that are decorated as "sensitive" in the API will not
11983// be included in the string output. The member name will be present, but the
11984// value will be replaced with "sensitive".
11985func (s ListTokensInput) GoString() string {
11986	return s.String()
11987}
11988
11989// Validate inspects the fields of the type to determine if they are valid.
11990func (s *ListTokensInput) Validate() error {
11991	invalidParams := request.ErrInvalidParams{Context: "ListTokensInput"}
11992	if s.MaxResults != nil && *s.MaxResults < 1 {
11993		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
11994	}
11995
11996	if invalidParams.Len() > 0 {
11997		return invalidParams
11998	}
11999	return nil
12000}
12001
12002// SetFilters sets the Filters field's value.
12003func (s *ListTokensInput) SetFilters(v []*Filter) *ListTokensInput {
12004	s.Filters = v
12005	return s
12006}
12007
12008// SetMaxResults sets the MaxResults field's value.
12009func (s *ListTokensInput) SetMaxResults(v int64) *ListTokensInput {
12010	s.MaxResults = &v
12011	return s
12012}
12013
12014// SetNextToken sets the NextToken field's value.
12015func (s *ListTokensInput) SetNextToken(v string) *ListTokensInput {
12016	s.NextToken = &v
12017	return s
12018}
12019
12020// SetTokenIds sets the TokenIds field's value.
12021func (s *ListTokensInput) SetTokenIds(v []*string) *ListTokensInput {
12022	s.TokenIds = v
12023	return s
12024}
12025
12026type ListTokensOutput struct {
12027	_ struct{} `type:"structure"`
12028
12029	// Token for the next set of results.
12030	NextToken *string `type:"string"`
12031
12032	// Received token details.
12033	Tokens []*TokenData `type:"list"`
12034}
12035
12036// String returns the string representation.
12037//
12038// API parameter values that are decorated as "sensitive" in the API will not
12039// be included in the string output. The member name will be present, but the
12040// value will be replaced with "sensitive".
12041func (s ListTokensOutput) String() string {
12042	return awsutil.Prettify(s)
12043}
12044
12045// GoString returns the string representation.
12046//
12047// API parameter values that are decorated as "sensitive" in the API will not
12048// be included in the string output. The member name will be present, but the
12049// value will be replaced with "sensitive".
12050func (s ListTokensOutput) GoString() string {
12051	return s.String()
12052}
12053
12054// SetNextToken sets the NextToken field's value.
12055func (s *ListTokensOutput) SetNextToken(v string) *ListTokensOutput {
12056	s.NextToken = &v
12057	return s
12058}
12059
12060// SetTokens sets the Tokens field's value.
12061func (s *ListTokensOutput) SetTokens(v []*TokenData) *ListTokensOutput {
12062	s.Tokens = v
12063	return s
12064}
12065
12066type ListUsageForLicenseConfigurationInput struct {
12067	_ struct{} `type:"structure"`
12068
12069	// Filters to scope the results. The following filters and logical operators
12070	// are supported:
12071	//
12072	//    * resourceArn - The ARN of the license configuration resource. Logical
12073	//    operators are EQUALS | NOT_EQUALS.
12074	//
12075	//    * resourceType - The resource type (EC2_INSTANCE | EC2_HOST | EC2_AMI
12076	//    | SYSTEMS_MANAGER_MANAGED_INSTANCE). Logical operators are EQUALS | NOT_EQUALS.
12077	//
12078	//    * resourceAccount - The ID of the account that owns the resource. Logical
12079	//    operators are EQUALS | NOT_EQUALS.
12080	Filters []*Filter `type:"list"`
12081
12082	// Amazon Resource Name (ARN) of the license configuration.
12083	//
12084	// LicenseConfigurationArn is a required field
12085	LicenseConfigurationArn *string `type:"string" required:"true"`
12086
12087	// Maximum number of results to return in a single call.
12088	MaxResults *int64 `type:"integer"`
12089
12090	// Token for the next set of results.
12091	NextToken *string `type:"string"`
12092}
12093
12094// String returns the string representation.
12095//
12096// API parameter values that are decorated as "sensitive" in the API will not
12097// be included in the string output. The member name will be present, but the
12098// value will be replaced with "sensitive".
12099func (s ListUsageForLicenseConfigurationInput) String() string {
12100	return awsutil.Prettify(s)
12101}
12102
12103// GoString returns the string representation.
12104//
12105// API parameter values that are decorated as "sensitive" in the API will not
12106// be included in the string output. The member name will be present, but the
12107// value will be replaced with "sensitive".
12108func (s ListUsageForLicenseConfigurationInput) GoString() string {
12109	return s.String()
12110}
12111
12112// Validate inspects the fields of the type to determine if they are valid.
12113func (s *ListUsageForLicenseConfigurationInput) Validate() error {
12114	invalidParams := request.ErrInvalidParams{Context: "ListUsageForLicenseConfigurationInput"}
12115	if s.LicenseConfigurationArn == nil {
12116		invalidParams.Add(request.NewErrParamRequired("LicenseConfigurationArn"))
12117	}
12118
12119	if invalidParams.Len() > 0 {
12120		return invalidParams
12121	}
12122	return nil
12123}
12124
12125// SetFilters sets the Filters field's value.
12126func (s *ListUsageForLicenseConfigurationInput) SetFilters(v []*Filter) *ListUsageForLicenseConfigurationInput {
12127	s.Filters = v
12128	return s
12129}
12130
12131// SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value.
12132func (s *ListUsageForLicenseConfigurationInput) SetLicenseConfigurationArn(v string) *ListUsageForLicenseConfigurationInput {
12133	s.LicenseConfigurationArn = &v
12134	return s
12135}
12136
12137// SetMaxResults sets the MaxResults field's value.
12138func (s *ListUsageForLicenseConfigurationInput) SetMaxResults(v int64) *ListUsageForLicenseConfigurationInput {
12139	s.MaxResults = &v
12140	return s
12141}
12142
12143// SetNextToken sets the NextToken field's value.
12144func (s *ListUsageForLicenseConfigurationInput) SetNextToken(v string) *ListUsageForLicenseConfigurationInput {
12145	s.NextToken = &v
12146	return s
12147}
12148
12149type ListUsageForLicenseConfigurationOutput struct {
12150	_ struct{} `type:"structure"`
12151
12152	// Information about the license configurations.
12153	LicenseConfigurationUsageList []*LicenseConfigurationUsage `type:"list"`
12154
12155	// Token for the next set of results.
12156	NextToken *string `type:"string"`
12157}
12158
12159// String returns the string representation.
12160//
12161// API parameter values that are decorated as "sensitive" in the API will not
12162// be included in the string output. The member name will be present, but the
12163// value will be replaced with "sensitive".
12164func (s ListUsageForLicenseConfigurationOutput) String() string {
12165	return awsutil.Prettify(s)
12166}
12167
12168// GoString returns the string representation.
12169//
12170// API parameter values that are decorated as "sensitive" in the API will not
12171// be included in the string output. The member name will be present, but the
12172// value will be replaced with "sensitive".
12173func (s ListUsageForLicenseConfigurationOutput) GoString() string {
12174	return s.String()
12175}
12176
12177// SetLicenseConfigurationUsageList sets the LicenseConfigurationUsageList field's value.
12178func (s *ListUsageForLicenseConfigurationOutput) SetLicenseConfigurationUsageList(v []*LicenseConfigurationUsage) *ListUsageForLicenseConfigurationOutput {
12179	s.LicenseConfigurationUsageList = v
12180	return s
12181}
12182
12183// SetNextToken sets the NextToken field's value.
12184func (s *ListUsageForLicenseConfigurationOutput) SetNextToken(v string) *ListUsageForLicenseConfigurationOutput {
12185	s.NextToken = &v
12186	return s
12187}
12188
12189// Summary information about a managed resource.
12190type ManagedResourceSummary struct {
12191	_ struct{} `type:"structure"`
12192
12193	// Number of resources associated with licenses.
12194	AssociationCount *int64 `type:"long"`
12195
12196	// Type of resource associated with a license.
12197	ResourceType *string `type:"string" enum:"ResourceType"`
12198}
12199
12200// String returns the string representation.
12201//
12202// API parameter values that are decorated as "sensitive" in the API will not
12203// be included in the string output. The member name will be present, but the
12204// value will be replaced with "sensitive".
12205func (s ManagedResourceSummary) String() string {
12206	return awsutil.Prettify(s)
12207}
12208
12209// GoString returns the string representation.
12210//
12211// API parameter values that are decorated as "sensitive" in the API will not
12212// be included in the string output. The member name will be present, but the
12213// value will be replaced with "sensitive".
12214func (s ManagedResourceSummary) GoString() string {
12215	return s.String()
12216}
12217
12218// SetAssociationCount sets the AssociationCount field's value.
12219func (s *ManagedResourceSummary) SetAssociationCount(v int64) *ManagedResourceSummary {
12220	s.AssociationCount = &v
12221	return s
12222}
12223
12224// SetResourceType sets the ResourceType field's value.
12225func (s *ManagedResourceSummary) SetResourceType(v string) *ManagedResourceSummary {
12226	s.ResourceType = &v
12227	return s
12228}
12229
12230// Describes key/value pairs.
12231type Metadata struct {
12232	_ struct{} `type:"structure"`
12233
12234	// The key name.
12235	Name *string `type:"string"`
12236
12237	// The value.
12238	Value *string `type:"string"`
12239}
12240
12241// String returns the string representation.
12242//
12243// API parameter values that are decorated as "sensitive" in the API will not
12244// be included in the string output. The member name will be present, but the
12245// value will be replaced with "sensitive".
12246func (s Metadata) String() string {
12247	return awsutil.Prettify(s)
12248}
12249
12250// GoString returns the string representation.
12251//
12252// API parameter values that are decorated as "sensitive" in the API will not
12253// be included in the string output. The member name will be present, but the
12254// value will be replaced with "sensitive".
12255func (s Metadata) GoString() string {
12256	return s.String()
12257}
12258
12259// SetName sets the Name field's value.
12260func (s *Metadata) SetName(v string) *Metadata {
12261	s.Name = &v
12262	return s
12263}
12264
12265// SetValue sets the Value field's value.
12266func (s *Metadata) SetValue(v string) *Metadata {
12267	s.Value = &v
12268	return s
12269}
12270
12271// There are no entitlements found for this license, or the entitlement maximum
12272// count is reached.
12273type NoEntitlementsAllowedException struct {
12274	_            struct{}                  `type:"structure"`
12275	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12276
12277	Message_ *string `locationName:"Message" type:"string"`
12278}
12279
12280// String returns the string representation.
12281//
12282// API parameter values that are decorated as "sensitive" in the API will not
12283// be included in the string output. The member name will be present, but the
12284// value will be replaced with "sensitive".
12285func (s NoEntitlementsAllowedException) String() string {
12286	return awsutil.Prettify(s)
12287}
12288
12289// GoString returns the string representation.
12290//
12291// API parameter values that are decorated as "sensitive" in the API will not
12292// be included in the string output. The member name will be present, but the
12293// value will be replaced with "sensitive".
12294func (s NoEntitlementsAllowedException) GoString() string {
12295	return s.String()
12296}
12297
12298func newErrorNoEntitlementsAllowedException(v protocol.ResponseMetadata) error {
12299	return &NoEntitlementsAllowedException{
12300		RespMetadata: v,
12301	}
12302}
12303
12304// Code returns the exception type name.
12305func (s *NoEntitlementsAllowedException) Code() string {
12306	return "NoEntitlementsAllowedException"
12307}
12308
12309// Message returns the exception's message.
12310func (s *NoEntitlementsAllowedException) Message() string {
12311	if s.Message_ != nil {
12312		return *s.Message_
12313	}
12314	return ""
12315}
12316
12317// OrigErr always returns nil, satisfies awserr.Error interface.
12318func (s *NoEntitlementsAllowedException) OrigErr() error {
12319	return nil
12320}
12321
12322func (s *NoEntitlementsAllowedException) Error() string {
12323	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
12324}
12325
12326// Status code returns the HTTP status code for the request's response error.
12327func (s *NoEntitlementsAllowedException) StatusCode() int {
12328	return s.RespMetadata.StatusCode
12329}
12330
12331// RequestID returns the service's response RequestID for request.
12332func (s *NoEntitlementsAllowedException) RequestID() string {
12333	return s.RespMetadata.RequestID
12334}
12335
12336// Configuration information for Organizations.
12337type OrganizationConfiguration struct {
12338	_ struct{} `type:"structure"`
12339
12340	// Enables Organizations integration.
12341	//
12342	// EnableIntegration is a required field
12343	EnableIntegration *bool `type:"boolean" required:"true"`
12344}
12345
12346// String returns the string representation.
12347//
12348// API parameter values that are decorated as "sensitive" in the API will not
12349// be included in the string output. The member name will be present, but the
12350// value will be replaced with "sensitive".
12351func (s OrganizationConfiguration) String() string {
12352	return awsutil.Prettify(s)
12353}
12354
12355// GoString returns the string representation.
12356//
12357// API parameter values that are decorated as "sensitive" in the API will not
12358// be included in the string output. The member name will be present, but the
12359// value will be replaced with "sensitive".
12360func (s OrganizationConfiguration) GoString() string {
12361	return s.String()
12362}
12363
12364// Validate inspects the fields of the type to determine if they are valid.
12365func (s *OrganizationConfiguration) Validate() error {
12366	invalidParams := request.ErrInvalidParams{Context: "OrganizationConfiguration"}
12367	if s.EnableIntegration == nil {
12368		invalidParams.Add(request.NewErrParamRequired("EnableIntegration"))
12369	}
12370
12371	if invalidParams.Len() > 0 {
12372		return invalidParams
12373	}
12374	return nil
12375}
12376
12377// SetEnableIntegration sets the EnableIntegration field's value.
12378func (s *OrganizationConfiguration) SetEnableIntegration(v bool) *OrganizationConfiguration {
12379	s.EnableIntegration = &v
12380	return s
12381}
12382
12383// Describes product information for a license configuration.
12384type ProductInformation struct {
12385	_ struct{} `type:"structure"`
12386
12387	// A Product information filter consists of a ProductInformationFilterComparator
12388	// which is a logical operator, a ProductInformationFilterName which specifies
12389	// the type of filter being declared, and a ProductInformationFilterValue that
12390	// specifies the value to filter on.
12391	//
12392	// Accepted values for ProductInformationFilterName are listed here along with
12393	// descriptions and valid options for ProductInformationFilterComparator.
12394	//
12395	// The following filters and are supported when the resource type is SSM_MANAGED:
12396	//
12397	//    * Application Name - The name of the application. Logical operator is
12398	//    EQUALS.
12399	//
12400	//    * Application Publisher - The publisher of the application. Logical operator
12401	//    is EQUALS.
12402	//
12403	//    * Application Version - The version of the application. Logical operator
12404	//    is EQUALS.
12405	//
12406	//    * Platform Name - The name of the platform. Logical operator is EQUALS.
12407	//
12408	//    * Platform Type - The platform type. Logical operator is EQUALS.
12409	//
12410	//    * Tag:key - The key of a tag attached to an Amazon Web Services resource
12411	//    you wish to exclude from automated discovery. Logical operator is NOT_EQUALS.
12412	//    The key for your tag must be appended to Tag: following the example: Tag:name-of-your-key.
12413	//    ProductInformationFilterValue is optional if you are not using values
12414	//    for the key.
12415	//
12416	//    * AccountId - The 12-digit ID of an Amazon Web Services account you wish
12417	//    to exclude from automated discovery. Logical operator is NOT_EQUALS.
12418	//
12419	//    * License Included - The type of license included. Logical operators are
12420	//    EQUALS and NOT_EQUALS. Possible values are: sql-server-enterprise | sql-server-standard
12421	//    | sql-server-web | windows-server-datacenter.
12422	//
12423	// The following filters and logical operators are supported when the resource
12424	// type is RDS:
12425	//
12426	//    * Engine Edition - The edition of the database engine. Logical operator
12427	//    is EQUALS. Possible values are: oracle-ee | oracle-se | oracle-se1 | oracle-se2.
12428	//
12429	//    * License Pack - The license pack. Logical operator is EQUALS. Possible
12430	//    values are: data guard | diagnostic pack sqlt | tuning pack sqlt | ols
12431	//    | olap.
12432	//
12433	// ProductInformationFilterList is a required field
12434	ProductInformationFilterList []*ProductInformationFilter `type:"list" required:"true"`
12435
12436	// Resource type. The possible values are SSM_MANAGED | RDS.
12437	//
12438	// ResourceType is a required field
12439	ResourceType *string `type:"string" required:"true"`
12440}
12441
12442// String returns the string representation.
12443//
12444// API parameter values that are decorated as "sensitive" in the API will not
12445// be included in the string output. The member name will be present, but the
12446// value will be replaced with "sensitive".
12447func (s ProductInformation) String() string {
12448	return awsutil.Prettify(s)
12449}
12450
12451// GoString returns the string representation.
12452//
12453// API parameter values that are decorated as "sensitive" in the API will not
12454// be included in the string output. The member name will be present, but the
12455// value will be replaced with "sensitive".
12456func (s ProductInformation) GoString() string {
12457	return s.String()
12458}
12459
12460// Validate inspects the fields of the type to determine if they are valid.
12461func (s *ProductInformation) Validate() error {
12462	invalidParams := request.ErrInvalidParams{Context: "ProductInformation"}
12463	if s.ProductInformationFilterList == nil {
12464		invalidParams.Add(request.NewErrParamRequired("ProductInformationFilterList"))
12465	}
12466	if s.ResourceType == nil {
12467		invalidParams.Add(request.NewErrParamRequired("ResourceType"))
12468	}
12469	if s.ProductInformationFilterList != nil {
12470		for i, v := range s.ProductInformationFilterList {
12471			if v == nil {
12472				continue
12473			}
12474			if err := v.Validate(); err != nil {
12475				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ProductInformationFilterList", i), err.(request.ErrInvalidParams))
12476			}
12477		}
12478	}
12479
12480	if invalidParams.Len() > 0 {
12481		return invalidParams
12482	}
12483	return nil
12484}
12485
12486// SetProductInformationFilterList sets the ProductInformationFilterList field's value.
12487func (s *ProductInformation) SetProductInformationFilterList(v []*ProductInformationFilter) *ProductInformation {
12488	s.ProductInformationFilterList = v
12489	return s
12490}
12491
12492// SetResourceType sets the ResourceType field's value.
12493func (s *ProductInformation) SetResourceType(v string) *ProductInformation {
12494	s.ResourceType = &v
12495	return s
12496}
12497
12498// Describes product information filters.
12499type ProductInformationFilter struct {
12500	_ struct{} `type:"structure"`
12501
12502	// Logical operator.
12503	//
12504	// ProductInformationFilterComparator is a required field
12505	ProductInformationFilterComparator *string `type:"string" required:"true"`
12506
12507	// Filter name.
12508	//
12509	// ProductInformationFilterName is a required field
12510	ProductInformationFilterName *string `type:"string" required:"true"`
12511
12512	// Filter value.
12513	ProductInformationFilterValue []*string `type:"list"`
12514}
12515
12516// String returns the string representation.
12517//
12518// API parameter values that are decorated as "sensitive" in the API will not
12519// be included in the string output. The member name will be present, but the
12520// value will be replaced with "sensitive".
12521func (s ProductInformationFilter) String() string {
12522	return awsutil.Prettify(s)
12523}
12524
12525// GoString returns the string representation.
12526//
12527// API parameter values that are decorated as "sensitive" in the API will not
12528// be included in the string output. The member name will be present, but the
12529// value will be replaced with "sensitive".
12530func (s ProductInformationFilter) GoString() string {
12531	return s.String()
12532}
12533
12534// Validate inspects the fields of the type to determine if they are valid.
12535func (s *ProductInformationFilter) Validate() error {
12536	invalidParams := request.ErrInvalidParams{Context: "ProductInformationFilter"}
12537	if s.ProductInformationFilterComparator == nil {
12538		invalidParams.Add(request.NewErrParamRequired("ProductInformationFilterComparator"))
12539	}
12540	if s.ProductInformationFilterName == nil {
12541		invalidParams.Add(request.NewErrParamRequired("ProductInformationFilterName"))
12542	}
12543
12544	if invalidParams.Len() > 0 {
12545		return invalidParams
12546	}
12547	return nil
12548}
12549
12550// SetProductInformationFilterComparator sets the ProductInformationFilterComparator field's value.
12551func (s *ProductInformationFilter) SetProductInformationFilterComparator(v string) *ProductInformationFilter {
12552	s.ProductInformationFilterComparator = &v
12553	return s
12554}
12555
12556// SetProductInformationFilterName sets the ProductInformationFilterName field's value.
12557func (s *ProductInformationFilter) SetProductInformationFilterName(v string) *ProductInformationFilter {
12558	s.ProductInformationFilterName = &v
12559	return s
12560}
12561
12562// SetProductInformationFilterValue sets the ProductInformationFilterValue field's value.
12563func (s *ProductInformationFilter) SetProductInformationFilterValue(v []*string) *ProductInformationFilter {
12564	s.ProductInformationFilterValue = v
12565	return s
12566}
12567
12568// Details about a provisional configuration.
12569type ProvisionalConfiguration struct {
12570	_ struct{} `type:"structure"`
12571
12572	// Maximum time for the provisional configuration, in minutes.
12573	//
12574	// MaxTimeToLiveInMinutes is a required field
12575	MaxTimeToLiveInMinutes *int64 `type:"integer" required:"true"`
12576}
12577
12578// String returns the string representation.
12579//
12580// API parameter values that are decorated as "sensitive" in the API will not
12581// be included in the string output. The member name will be present, but the
12582// value will be replaced with "sensitive".
12583func (s ProvisionalConfiguration) String() string {
12584	return awsutil.Prettify(s)
12585}
12586
12587// GoString returns the string representation.
12588//
12589// API parameter values that are decorated as "sensitive" in the API will not
12590// be included in the string output. The member name will be present, but the
12591// value will be replaced with "sensitive".
12592func (s ProvisionalConfiguration) GoString() string {
12593	return s.String()
12594}
12595
12596// Validate inspects the fields of the type to determine if they are valid.
12597func (s *ProvisionalConfiguration) Validate() error {
12598	invalidParams := request.ErrInvalidParams{Context: "ProvisionalConfiguration"}
12599	if s.MaxTimeToLiveInMinutes == nil {
12600		invalidParams.Add(request.NewErrParamRequired("MaxTimeToLiveInMinutes"))
12601	}
12602
12603	if invalidParams.Len() > 0 {
12604		return invalidParams
12605	}
12606	return nil
12607}
12608
12609// SetMaxTimeToLiveInMinutes sets the MaxTimeToLiveInMinutes field's value.
12610func (s *ProvisionalConfiguration) SetMaxTimeToLiveInMinutes(v int64) *ProvisionalConfiguration {
12611	s.MaxTimeToLiveInMinutes = &v
12612	return s
12613}
12614
12615// Too many requests have been submitted. Try again after a brief wait.
12616type RateLimitExceededException struct {
12617	_            struct{}                  `type:"structure"`
12618	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12619
12620	Message_ *string `locationName:"Message" type:"string"`
12621}
12622
12623// String returns the string representation.
12624//
12625// API parameter values that are decorated as "sensitive" in the API will not
12626// be included in the string output. The member name will be present, but the
12627// value will be replaced with "sensitive".
12628func (s RateLimitExceededException) String() string {
12629	return awsutil.Prettify(s)
12630}
12631
12632// GoString returns the string representation.
12633//
12634// API parameter values that are decorated as "sensitive" in the API will not
12635// be included in the string output. The member name will be present, but the
12636// value will be replaced with "sensitive".
12637func (s RateLimitExceededException) GoString() string {
12638	return s.String()
12639}
12640
12641func newErrorRateLimitExceededException(v protocol.ResponseMetadata) error {
12642	return &RateLimitExceededException{
12643		RespMetadata: v,
12644	}
12645}
12646
12647// Code returns the exception type name.
12648func (s *RateLimitExceededException) Code() string {
12649	return "RateLimitExceededException"
12650}
12651
12652// Message returns the exception's message.
12653func (s *RateLimitExceededException) Message() string {
12654	if s.Message_ != nil {
12655		return *s.Message_
12656	}
12657	return ""
12658}
12659
12660// OrigErr always returns nil, satisfies awserr.Error interface.
12661func (s *RateLimitExceededException) OrigErr() error {
12662	return nil
12663}
12664
12665func (s *RateLimitExceededException) Error() string {
12666	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
12667}
12668
12669// Status code returns the HTTP status code for the request's response error.
12670func (s *RateLimitExceededException) StatusCode() int {
12671	return s.RespMetadata.StatusCode
12672}
12673
12674// RequestID returns the service's response RequestID for request.
12675func (s *RateLimitExceededException) RequestID() string {
12676	return s.RespMetadata.RequestID
12677}
12678
12679// Metadata associated with received licenses and grants.
12680type ReceivedMetadata struct {
12681	_ struct{} `type:"structure"`
12682
12683	// Allowed operations.
12684	AllowedOperations []*string `min:"1" type:"list"`
12685
12686	// Received status.
12687	ReceivedStatus *string `type:"string" enum:"ReceivedStatus"`
12688
12689	// Received status reason.
12690	ReceivedStatusReason *string `type:"string"`
12691}
12692
12693// String returns the string representation.
12694//
12695// API parameter values that are decorated as "sensitive" in the API will not
12696// be included in the string output. The member name will be present, but the
12697// value will be replaced with "sensitive".
12698func (s ReceivedMetadata) String() string {
12699	return awsutil.Prettify(s)
12700}
12701
12702// GoString returns the string representation.
12703//
12704// API parameter values that are decorated as "sensitive" in the API will not
12705// be included in the string output. The member name will be present, but the
12706// value will be replaced with "sensitive".
12707func (s ReceivedMetadata) GoString() string {
12708	return s.String()
12709}
12710
12711// SetAllowedOperations sets the AllowedOperations field's value.
12712func (s *ReceivedMetadata) SetAllowedOperations(v []*string) *ReceivedMetadata {
12713	s.AllowedOperations = v
12714	return s
12715}
12716
12717// SetReceivedStatus sets the ReceivedStatus field's value.
12718func (s *ReceivedMetadata) SetReceivedStatus(v string) *ReceivedMetadata {
12719	s.ReceivedStatus = &v
12720	return s
12721}
12722
12723// SetReceivedStatusReason sets the ReceivedStatusReason field's value.
12724func (s *ReceivedMetadata) SetReceivedStatusReason(v string) *ReceivedMetadata {
12725	s.ReceivedStatusReason = &v
12726	return s
12727}
12728
12729// This is not the correct Region for the resource. Try again.
12730type RedirectException struct {
12731	_            struct{}                  `type:"structure"`
12732	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12733
12734	Location *string `type:"string"`
12735
12736	Message_ *string `locationName:"Message" type:"string"`
12737}
12738
12739// String returns the string representation.
12740//
12741// API parameter values that are decorated as "sensitive" in the API will not
12742// be included in the string output. The member name will be present, but the
12743// value will be replaced with "sensitive".
12744func (s RedirectException) String() string {
12745	return awsutil.Prettify(s)
12746}
12747
12748// GoString returns the string representation.
12749//
12750// API parameter values that are decorated as "sensitive" in the API will not
12751// be included in the string output. The member name will be present, but the
12752// value will be replaced with "sensitive".
12753func (s RedirectException) GoString() string {
12754	return s.String()
12755}
12756
12757func newErrorRedirectException(v protocol.ResponseMetadata) error {
12758	return &RedirectException{
12759		RespMetadata: v,
12760	}
12761}
12762
12763// Code returns the exception type name.
12764func (s *RedirectException) Code() string {
12765	return "RedirectException"
12766}
12767
12768// Message returns the exception's message.
12769func (s *RedirectException) Message() string {
12770	if s.Message_ != nil {
12771		return *s.Message_
12772	}
12773	return ""
12774}
12775
12776// OrigErr always returns nil, satisfies awserr.Error interface.
12777func (s *RedirectException) OrigErr() error {
12778	return nil
12779}
12780
12781func (s *RedirectException) Error() string {
12782	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
12783}
12784
12785// Status code returns the HTTP status code for the request's response error.
12786func (s *RedirectException) StatusCode() int {
12787	return s.RespMetadata.StatusCode
12788}
12789
12790// RequestID returns the service's response RequestID for request.
12791func (s *RedirectException) RequestID() string {
12792	return s.RespMetadata.RequestID
12793}
12794
12795type RejectGrantInput struct {
12796	_ struct{} `type:"structure"`
12797
12798	// Amazon Resource Name (ARN) of the grant.
12799	//
12800	// GrantArn is a required field
12801	GrantArn *string `type:"string" required:"true"`
12802}
12803
12804// String returns the string representation.
12805//
12806// API parameter values that are decorated as "sensitive" in the API will not
12807// be included in the string output. The member name will be present, but the
12808// value will be replaced with "sensitive".
12809func (s RejectGrantInput) String() string {
12810	return awsutil.Prettify(s)
12811}
12812
12813// GoString returns the string representation.
12814//
12815// API parameter values that are decorated as "sensitive" in the API will not
12816// be included in the string output. The member name will be present, but the
12817// value will be replaced with "sensitive".
12818func (s RejectGrantInput) GoString() string {
12819	return s.String()
12820}
12821
12822// Validate inspects the fields of the type to determine if they are valid.
12823func (s *RejectGrantInput) Validate() error {
12824	invalidParams := request.ErrInvalidParams{Context: "RejectGrantInput"}
12825	if s.GrantArn == nil {
12826		invalidParams.Add(request.NewErrParamRequired("GrantArn"))
12827	}
12828
12829	if invalidParams.Len() > 0 {
12830		return invalidParams
12831	}
12832	return nil
12833}
12834
12835// SetGrantArn sets the GrantArn field's value.
12836func (s *RejectGrantInput) SetGrantArn(v string) *RejectGrantInput {
12837	s.GrantArn = &v
12838	return s
12839}
12840
12841type RejectGrantOutput struct {
12842	_ struct{} `type:"structure"`
12843
12844	// Grant ARN.
12845	GrantArn *string `type:"string"`
12846
12847	// Grant status.
12848	Status *string `type:"string" enum:"GrantStatus"`
12849
12850	// Grant version.
12851	Version *string `type:"string"`
12852}
12853
12854// String returns the string representation.
12855//
12856// API parameter values that are decorated as "sensitive" in the API will not
12857// be included in the string output. The member name will be present, but the
12858// value will be replaced with "sensitive".
12859func (s RejectGrantOutput) String() string {
12860	return awsutil.Prettify(s)
12861}
12862
12863// GoString returns the string representation.
12864//
12865// API parameter values that are decorated as "sensitive" in the API will not
12866// be included in the string output. The member name will be present, but the
12867// value will be replaced with "sensitive".
12868func (s RejectGrantOutput) GoString() string {
12869	return s.String()
12870}
12871
12872// SetGrantArn sets the GrantArn field's value.
12873func (s *RejectGrantOutput) SetGrantArn(v string) *RejectGrantOutput {
12874	s.GrantArn = &v
12875	return s
12876}
12877
12878// SetStatus sets the Status field's value.
12879func (s *RejectGrantOutput) SetStatus(v string) *RejectGrantOutput {
12880	s.Status = &v
12881	return s
12882}
12883
12884// SetVersion sets the Version field's value.
12885func (s *RejectGrantOutput) SetVersion(v string) *RejectGrantOutput {
12886	s.Version = &v
12887	return s
12888}
12889
12890// Details of the license configuration that this generator reports on.
12891type ReportContext struct {
12892	_ struct{} `type:"structure"`
12893
12894	// Amazon Resource Name (ARN) of the license configuration that this generator
12895	// reports on.
12896	//
12897	// LicenseConfigurationArns is a required field
12898	LicenseConfigurationArns []*string `locationName:"licenseConfigurationArns" type:"list" required:"true"`
12899}
12900
12901// String returns the string representation.
12902//
12903// API parameter values that are decorated as "sensitive" in the API will not
12904// be included in the string output. The member name will be present, but the
12905// value will be replaced with "sensitive".
12906func (s ReportContext) String() string {
12907	return awsutil.Prettify(s)
12908}
12909
12910// GoString returns the string representation.
12911//
12912// API parameter values that are decorated as "sensitive" in the API will not
12913// be included in the string output. The member name will be present, but the
12914// value will be replaced with "sensitive".
12915func (s ReportContext) GoString() string {
12916	return s.String()
12917}
12918
12919// Validate inspects the fields of the type to determine if they are valid.
12920func (s *ReportContext) Validate() error {
12921	invalidParams := request.ErrInvalidParams{Context: "ReportContext"}
12922	if s.LicenseConfigurationArns == nil {
12923		invalidParams.Add(request.NewErrParamRequired("LicenseConfigurationArns"))
12924	}
12925
12926	if invalidParams.Len() > 0 {
12927		return invalidParams
12928	}
12929	return nil
12930}
12931
12932// SetLicenseConfigurationArns sets the LicenseConfigurationArns field's value.
12933func (s *ReportContext) SetLicenseConfigurationArns(v []*string) *ReportContext {
12934	s.LicenseConfigurationArns = v
12935	return s
12936}
12937
12938// Details about how frequently reports are generated.
12939type ReportFrequency struct {
12940	_ struct{} `type:"structure"`
12941
12942	// Time period between each report. The period can be daily, weekly, or monthly.
12943	Period *string `locationName:"period" type:"string" enum:"ReportFrequencyType"`
12944
12945	// Number of times within the frequency period that a report is generated. The
12946	// only supported value is 1.
12947	Value *int64 `locationName:"value" type:"integer"`
12948}
12949
12950// String returns the string representation.
12951//
12952// API parameter values that are decorated as "sensitive" in the API will not
12953// be included in the string output. The member name will be present, but the
12954// value will be replaced with "sensitive".
12955func (s ReportFrequency) String() string {
12956	return awsutil.Prettify(s)
12957}
12958
12959// GoString returns the string representation.
12960//
12961// API parameter values that are decorated as "sensitive" in the API will not
12962// be included in the string output. The member name will be present, but the
12963// value will be replaced with "sensitive".
12964func (s ReportFrequency) GoString() string {
12965	return s.String()
12966}
12967
12968// SetPeriod sets the Period field's value.
12969func (s *ReportFrequency) SetPeriod(v string) *ReportFrequency {
12970	s.Period = &v
12971	return s
12972}
12973
12974// SetValue sets the Value field's value.
12975func (s *ReportFrequency) SetValue(v int64) *ReportFrequency {
12976	s.Value = &v
12977	return s
12978}
12979
12980// Describe the details of a report generator.
12981type ReportGenerator struct {
12982	_ struct{} `type:"structure"`
12983
12984	// Time the report was created.
12985	CreateTime *string `type:"string"`
12986
12987	// Description of the report generator.
12988	Description *string `type:"string"`
12989
12990	// Time the last report was generated at.
12991	LastReportGenerationTime *string `type:"string"`
12992
12993	// Failure message for the last report generation attempt.
12994	LastRunFailureReason *string `type:"string"`
12995
12996	// Status of the last report generation attempt.
12997	LastRunStatus *string `type:"string"`
12998
12999	// Amazon Resource Name (ARN) of the report generator.
13000	LicenseManagerReportGeneratorArn *string `type:"string"`
13001
13002	// License configuration type for this generator.
13003	ReportContext *ReportContext `type:"structure"`
13004
13005	// The Amazon Web Services account ID used to create the report generator.
13006	ReportCreatorAccount *string `type:"string"`
13007
13008	// Details about how frequently reports are generated.
13009	ReportFrequency *ReportFrequency `type:"structure"`
13010
13011	// Name of the report generator.
13012	ReportGeneratorName *string `type:"string"`
13013
13014	// Type of reports that are generated.
13015	ReportType []*string `type:"list"`
13016
13017	// Details of the S3 bucket that report generator reports are published to.
13018	S3Location *S3Location `type:"structure"`
13019
13020	// Tags associated with the report generator.
13021	Tags []*Tag `type:"list"`
13022}
13023
13024// String returns the string representation.
13025//
13026// API parameter values that are decorated as "sensitive" in the API will not
13027// be included in the string output. The member name will be present, but the
13028// value will be replaced with "sensitive".
13029func (s ReportGenerator) String() string {
13030	return awsutil.Prettify(s)
13031}
13032
13033// GoString returns the string representation.
13034//
13035// API parameter values that are decorated as "sensitive" in the API will not
13036// be included in the string output. The member name will be present, but the
13037// value will be replaced with "sensitive".
13038func (s ReportGenerator) GoString() string {
13039	return s.String()
13040}
13041
13042// SetCreateTime sets the CreateTime field's value.
13043func (s *ReportGenerator) SetCreateTime(v string) *ReportGenerator {
13044	s.CreateTime = &v
13045	return s
13046}
13047
13048// SetDescription sets the Description field's value.
13049func (s *ReportGenerator) SetDescription(v string) *ReportGenerator {
13050	s.Description = &v
13051	return s
13052}
13053
13054// SetLastReportGenerationTime sets the LastReportGenerationTime field's value.
13055func (s *ReportGenerator) SetLastReportGenerationTime(v string) *ReportGenerator {
13056	s.LastReportGenerationTime = &v
13057	return s
13058}
13059
13060// SetLastRunFailureReason sets the LastRunFailureReason field's value.
13061func (s *ReportGenerator) SetLastRunFailureReason(v string) *ReportGenerator {
13062	s.LastRunFailureReason = &v
13063	return s
13064}
13065
13066// SetLastRunStatus sets the LastRunStatus field's value.
13067func (s *ReportGenerator) SetLastRunStatus(v string) *ReportGenerator {
13068	s.LastRunStatus = &v
13069	return s
13070}
13071
13072// SetLicenseManagerReportGeneratorArn sets the LicenseManagerReportGeneratorArn field's value.
13073func (s *ReportGenerator) SetLicenseManagerReportGeneratorArn(v string) *ReportGenerator {
13074	s.LicenseManagerReportGeneratorArn = &v
13075	return s
13076}
13077
13078// SetReportContext sets the ReportContext field's value.
13079func (s *ReportGenerator) SetReportContext(v *ReportContext) *ReportGenerator {
13080	s.ReportContext = v
13081	return s
13082}
13083
13084// SetReportCreatorAccount sets the ReportCreatorAccount field's value.
13085func (s *ReportGenerator) SetReportCreatorAccount(v string) *ReportGenerator {
13086	s.ReportCreatorAccount = &v
13087	return s
13088}
13089
13090// SetReportFrequency sets the ReportFrequency field's value.
13091func (s *ReportGenerator) SetReportFrequency(v *ReportFrequency) *ReportGenerator {
13092	s.ReportFrequency = v
13093	return s
13094}
13095
13096// SetReportGeneratorName sets the ReportGeneratorName field's value.
13097func (s *ReportGenerator) SetReportGeneratorName(v string) *ReportGenerator {
13098	s.ReportGeneratorName = &v
13099	return s
13100}
13101
13102// SetReportType sets the ReportType field's value.
13103func (s *ReportGenerator) SetReportType(v []*string) *ReportGenerator {
13104	s.ReportType = v
13105	return s
13106}
13107
13108// SetS3Location sets the S3Location field's value.
13109func (s *ReportGenerator) SetS3Location(v *S3Location) *ReportGenerator {
13110	s.S3Location = v
13111	return s
13112}
13113
13114// SetTags sets the Tags field's value.
13115func (s *ReportGenerator) SetTags(v []*Tag) *ReportGenerator {
13116	s.Tags = v
13117	return s
13118}
13119
13120// Details about a resource.
13121type ResourceInventory struct {
13122	_ struct{} `type:"structure"`
13123
13124	// Platform of the resource.
13125	Platform *string `type:"string"`
13126
13127	// Platform version of the resource in the inventory.
13128	PlatformVersion *string `type:"string"`
13129
13130	// Amazon Resource Name (ARN) of the resource.
13131	ResourceArn *string `type:"string"`
13132
13133	// ID of the resource.
13134	ResourceId *string `type:"string"`
13135
13136	// ID of the account that owns the resource.
13137	ResourceOwningAccountId *string `type:"string"`
13138
13139	// Type of resource.
13140	ResourceType *string `type:"string" enum:"ResourceType"`
13141}
13142
13143// String returns the string representation.
13144//
13145// API parameter values that are decorated as "sensitive" in the API will not
13146// be included in the string output. The member name will be present, but the
13147// value will be replaced with "sensitive".
13148func (s ResourceInventory) String() string {
13149	return awsutil.Prettify(s)
13150}
13151
13152// GoString returns the string representation.
13153//
13154// API parameter values that are decorated as "sensitive" in the API will not
13155// be included in the string output. The member name will be present, but the
13156// value will be replaced with "sensitive".
13157func (s ResourceInventory) GoString() string {
13158	return s.String()
13159}
13160
13161// SetPlatform sets the Platform field's value.
13162func (s *ResourceInventory) SetPlatform(v string) *ResourceInventory {
13163	s.Platform = &v
13164	return s
13165}
13166
13167// SetPlatformVersion sets the PlatformVersion field's value.
13168func (s *ResourceInventory) SetPlatformVersion(v string) *ResourceInventory {
13169	s.PlatformVersion = &v
13170	return s
13171}
13172
13173// SetResourceArn sets the ResourceArn field's value.
13174func (s *ResourceInventory) SetResourceArn(v string) *ResourceInventory {
13175	s.ResourceArn = &v
13176	return s
13177}
13178
13179// SetResourceId sets the ResourceId field's value.
13180func (s *ResourceInventory) SetResourceId(v string) *ResourceInventory {
13181	s.ResourceId = &v
13182	return s
13183}
13184
13185// SetResourceOwningAccountId sets the ResourceOwningAccountId field's value.
13186func (s *ResourceInventory) SetResourceOwningAccountId(v string) *ResourceInventory {
13187	s.ResourceOwningAccountId = &v
13188	return s
13189}
13190
13191// SetResourceType sets the ResourceType field's value.
13192func (s *ResourceInventory) SetResourceType(v string) *ResourceInventory {
13193	s.ResourceType = &v
13194	return s
13195}
13196
13197// Your resource limits have been exceeded.
13198type ResourceLimitExceededException struct {
13199	_            struct{}                  `type:"structure"`
13200	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
13201
13202	Message_ *string `locationName:"Message" type:"string"`
13203}
13204
13205// String returns the string representation.
13206//
13207// API parameter values that are decorated as "sensitive" in the API will not
13208// be included in the string output. The member name will be present, but the
13209// value will be replaced with "sensitive".
13210func (s ResourceLimitExceededException) String() string {
13211	return awsutil.Prettify(s)
13212}
13213
13214// GoString returns the string representation.
13215//
13216// API parameter values that are decorated as "sensitive" in the API will not
13217// be included in the string output. The member name will be present, but the
13218// value will be replaced with "sensitive".
13219func (s ResourceLimitExceededException) GoString() string {
13220	return s.String()
13221}
13222
13223func newErrorResourceLimitExceededException(v protocol.ResponseMetadata) error {
13224	return &ResourceLimitExceededException{
13225		RespMetadata: v,
13226	}
13227}
13228
13229// Code returns the exception type name.
13230func (s *ResourceLimitExceededException) Code() string {
13231	return "ResourceLimitExceededException"
13232}
13233
13234// Message returns the exception's message.
13235func (s *ResourceLimitExceededException) Message() string {
13236	if s.Message_ != nil {
13237		return *s.Message_
13238	}
13239	return ""
13240}
13241
13242// OrigErr always returns nil, satisfies awserr.Error interface.
13243func (s *ResourceLimitExceededException) OrigErr() error {
13244	return nil
13245}
13246
13247func (s *ResourceLimitExceededException) Error() string {
13248	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
13249}
13250
13251// Status code returns the HTTP status code for the request's response error.
13252func (s *ResourceLimitExceededException) StatusCode() int {
13253	return s.RespMetadata.StatusCode
13254}
13255
13256// RequestID returns the service's response RequestID for request.
13257func (s *ResourceLimitExceededException) RequestID() string {
13258	return s.RespMetadata.RequestID
13259}
13260
13261// The resource cannot be found.
13262type ResourceNotFoundException struct {
13263	_            struct{}                  `type:"structure"`
13264	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
13265
13266	Message_ *string `locationName:"Message" type:"string"`
13267}
13268
13269// String returns the string representation.
13270//
13271// API parameter values that are decorated as "sensitive" in the API will not
13272// be included in the string output. The member name will be present, but the
13273// value will be replaced with "sensitive".
13274func (s ResourceNotFoundException) String() string {
13275	return awsutil.Prettify(s)
13276}
13277
13278// GoString returns the string representation.
13279//
13280// API parameter values that are decorated as "sensitive" in the API will not
13281// be included in the string output. The member name will be present, but the
13282// value will be replaced with "sensitive".
13283func (s ResourceNotFoundException) GoString() string {
13284	return s.String()
13285}
13286
13287func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
13288	return &ResourceNotFoundException{
13289		RespMetadata: v,
13290	}
13291}
13292
13293// Code returns the exception type name.
13294func (s *ResourceNotFoundException) Code() string {
13295	return "ResourceNotFoundException"
13296}
13297
13298// Message returns the exception's message.
13299func (s *ResourceNotFoundException) Message() string {
13300	if s.Message_ != nil {
13301		return *s.Message_
13302	}
13303	return ""
13304}
13305
13306// OrigErr always returns nil, satisfies awserr.Error interface.
13307func (s *ResourceNotFoundException) OrigErr() error {
13308	return nil
13309}
13310
13311func (s *ResourceNotFoundException) Error() string {
13312	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
13313}
13314
13315// Status code returns the HTTP status code for the request's response error.
13316func (s *ResourceNotFoundException) StatusCode() int {
13317	return s.RespMetadata.StatusCode
13318}
13319
13320// RequestID returns the service's response RequestID for request.
13321func (s *ResourceNotFoundException) RequestID() string {
13322	return s.RespMetadata.RequestID
13323}
13324
13325// Details of the S3 bucket that report generator reports are published to.
13326type S3Location struct {
13327	_ struct{} `type:"structure"`
13328
13329	// Name of the S3 bucket reports are published to.
13330	Bucket *string `locationName:"bucket" type:"string"`
13331
13332	// Prefix of the S3 bucket reports are published to.
13333	KeyPrefix *string `locationName:"keyPrefix" type:"string"`
13334}
13335
13336// String returns the string representation.
13337//
13338// API parameter values that are decorated as "sensitive" in the API will not
13339// be included in the string output. The member name will be present, but the
13340// value will be replaced with "sensitive".
13341func (s S3Location) String() string {
13342	return awsutil.Prettify(s)
13343}
13344
13345// GoString returns the string representation.
13346//
13347// API parameter values that are decorated as "sensitive" in the API will not
13348// be included in the string output. The member name will be present, but the
13349// value will be replaced with "sensitive".
13350func (s S3Location) GoString() string {
13351	return s.String()
13352}
13353
13354// SetBucket sets the Bucket field's value.
13355func (s *S3Location) SetBucket(v string) *S3Location {
13356	s.Bucket = &v
13357	return s
13358}
13359
13360// SetKeyPrefix sets the KeyPrefix field's value.
13361func (s *S3Location) SetKeyPrefix(v string) *S3Location {
13362	s.KeyPrefix = &v
13363	return s
13364}
13365
13366// The server experienced an internal error. Try again.
13367type ServerInternalException struct {
13368	_            struct{}                  `type:"structure"`
13369	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
13370
13371	Message_ *string `locationName:"Message" type:"string"`
13372}
13373
13374// String returns the string representation.
13375//
13376// API parameter values that are decorated as "sensitive" in the API will not
13377// be included in the string output. The member name will be present, but the
13378// value will be replaced with "sensitive".
13379func (s ServerInternalException) String() string {
13380	return awsutil.Prettify(s)
13381}
13382
13383// GoString returns the string representation.
13384//
13385// API parameter values that are decorated as "sensitive" in the API will not
13386// be included in the string output. The member name will be present, but the
13387// value will be replaced with "sensitive".
13388func (s ServerInternalException) GoString() string {
13389	return s.String()
13390}
13391
13392func newErrorServerInternalException(v protocol.ResponseMetadata) error {
13393	return &ServerInternalException{
13394		RespMetadata: v,
13395	}
13396}
13397
13398// Code returns the exception type name.
13399func (s *ServerInternalException) Code() string {
13400	return "ServerInternalException"
13401}
13402
13403// Message returns the exception's message.
13404func (s *ServerInternalException) Message() string {
13405	if s.Message_ != nil {
13406		return *s.Message_
13407	}
13408	return ""
13409}
13410
13411// OrigErr always returns nil, satisfies awserr.Error interface.
13412func (s *ServerInternalException) OrigErr() error {
13413	return nil
13414}
13415
13416func (s *ServerInternalException) Error() string {
13417	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
13418}
13419
13420// Status code returns the HTTP status code for the request's response error.
13421func (s *ServerInternalException) StatusCode() int {
13422	return s.RespMetadata.StatusCode
13423}
13424
13425// RequestID returns the service's response RequestID for request.
13426func (s *ServerInternalException) RequestID() string {
13427	return s.RespMetadata.RequestID
13428}
13429
13430// Details about a tag for a license configuration.
13431type Tag struct {
13432	_ struct{} `type:"structure"`
13433
13434	// Tag key.
13435	Key *string `type:"string"`
13436
13437	// Tag value.
13438	Value *string `type:"string"`
13439}
13440
13441// String returns the string representation.
13442//
13443// API parameter values that are decorated as "sensitive" in the API will not
13444// be included in the string output. The member name will be present, but the
13445// value will be replaced with "sensitive".
13446func (s Tag) String() string {
13447	return awsutil.Prettify(s)
13448}
13449
13450// GoString returns the string representation.
13451//
13452// API parameter values that are decorated as "sensitive" in the API will not
13453// be included in the string output. The member name will be present, but the
13454// value will be replaced with "sensitive".
13455func (s Tag) GoString() string {
13456	return s.String()
13457}
13458
13459// SetKey sets the Key field's value.
13460func (s *Tag) SetKey(v string) *Tag {
13461	s.Key = &v
13462	return s
13463}
13464
13465// SetValue sets the Value field's value.
13466func (s *Tag) SetValue(v string) *Tag {
13467	s.Value = &v
13468	return s
13469}
13470
13471type TagResourceInput struct {
13472	_ struct{} `type:"structure"`
13473
13474	// Amazon Resource Name (ARN) of the license configuration.
13475	//
13476	// ResourceArn is a required field
13477	ResourceArn *string `type:"string" required:"true"`
13478
13479	// One or more tags.
13480	//
13481	// Tags is a required field
13482	Tags []*Tag `type:"list" required:"true"`
13483}
13484
13485// String returns the string representation.
13486//
13487// API parameter values that are decorated as "sensitive" in the API will not
13488// be included in the string output. The member name will be present, but the
13489// value will be replaced with "sensitive".
13490func (s TagResourceInput) String() string {
13491	return awsutil.Prettify(s)
13492}
13493
13494// GoString returns the string representation.
13495//
13496// API parameter values that are decorated as "sensitive" in the API will not
13497// be included in the string output. The member name will be present, but the
13498// value will be replaced with "sensitive".
13499func (s TagResourceInput) GoString() string {
13500	return s.String()
13501}
13502
13503// Validate inspects the fields of the type to determine if they are valid.
13504func (s *TagResourceInput) Validate() error {
13505	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
13506	if s.ResourceArn == nil {
13507		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
13508	}
13509	if s.Tags == nil {
13510		invalidParams.Add(request.NewErrParamRequired("Tags"))
13511	}
13512
13513	if invalidParams.Len() > 0 {
13514		return invalidParams
13515	}
13516	return nil
13517}
13518
13519// SetResourceArn sets the ResourceArn field's value.
13520func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
13521	s.ResourceArn = &v
13522	return s
13523}
13524
13525// SetTags sets the Tags field's value.
13526func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput {
13527	s.Tags = v
13528	return s
13529}
13530
13531type TagResourceOutput struct {
13532	_ struct{} `type:"structure"`
13533}
13534
13535// String returns the string representation.
13536//
13537// API parameter values that are decorated as "sensitive" in the API will not
13538// be included in the string output. The member name will be present, but the
13539// value will be replaced with "sensitive".
13540func (s TagResourceOutput) String() string {
13541	return awsutil.Prettify(s)
13542}
13543
13544// GoString returns the string representation.
13545//
13546// API parameter values that are decorated as "sensitive" in the API will not
13547// be included in the string output. The member name will be present, but the
13548// value will be replaced with "sensitive".
13549func (s TagResourceOutput) GoString() string {
13550	return s.String()
13551}
13552
13553// Describes a token.
13554type TokenData struct {
13555	_ struct{} `type:"structure"`
13556
13557	// Token expiration time, in ISO8601-UTC format.
13558	ExpirationTime *string `type:"string"`
13559
13560	// Amazon Resource Name (ARN) of the license.
13561	LicenseArn *string `type:"string"`
13562
13563	// Amazon Resource Names (ARN) of the roles included in the token.
13564	RoleArns []*string `type:"list"`
13565
13566	// Token status. The possible values are AVAILABLE and DELETED.
13567	Status *string `type:"string"`
13568
13569	// Token ID.
13570	TokenId *string `type:"string"`
13571
13572	// Data specified by the caller.
13573	TokenProperties []*string `type:"list"`
13574
13575	// Type of token generated. The supported value is REFRESH_TOKEN.
13576	TokenType *string `type:"string"`
13577}
13578
13579// String returns the string representation.
13580//
13581// API parameter values that are decorated as "sensitive" in the API will not
13582// be included in the string output. The member name will be present, but the
13583// value will be replaced with "sensitive".
13584func (s TokenData) String() string {
13585	return awsutil.Prettify(s)
13586}
13587
13588// GoString returns the string representation.
13589//
13590// API parameter values that are decorated as "sensitive" in the API will not
13591// be included in the string output. The member name will be present, but the
13592// value will be replaced with "sensitive".
13593func (s TokenData) GoString() string {
13594	return s.String()
13595}
13596
13597// SetExpirationTime sets the ExpirationTime field's value.
13598func (s *TokenData) SetExpirationTime(v string) *TokenData {
13599	s.ExpirationTime = &v
13600	return s
13601}
13602
13603// SetLicenseArn sets the LicenseArn field's value.
13604func (s *TokenData) SetLicenseArn(v string) *TokenData {
13605	s.LicenseArn = &v
13606	return s
13607}
13608
13609// SetRoleArns sets the RoleArns field's value.
13610func (s *TokenData) SetRoleArns(v []*string) *TokenData {
13611	s.RoleArns = v
13612	return s
13613}
13614
13615// SetStatus sets the Status field's value.
13616func (s *TokenData) SetStatus(v string) *TokenData {
13617	s.Status = &v
13618	return s
13619}
13620
13621// SetTokenId sets the TokenId field's value.
13622func (s *TokenData) SetTokenId(v string) *TokenData {
13623	s.TokenId = &v
13624	return s
13625}
13626
13627// SetTokenProperties sets the TokenProperties field's value.
13628func (s *TokenData) SetTokenProperties(v []*string) *TokenData {
13629	s.TokenProperties = v
13630	return s
13631}
13632
13633// SetTokenType sets the TokenType field's value.
13634func (s *TokenData) SetTokenType(v string) *TokenData {
13635	s.TokenType = &v
13636	return s
13637}
13638
13639// The digital signature method is unsupported. Try your request again.
13640type UnsupportedDigitalSignatureMethodException struct {
13641	_            struct{}                  `type:"structure"`
13642	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
13643
13644	Message_ *string `locationName:"Message" type:"string"`
13645}
13646
13647// String returns the string representation.
13648//
13649// API parameter values that are decorated as "sensitive" in the API will not
13650// be included in the string output. The member name will be present, but the
13651// value will be replaced with "sensitive".
13652func (s UnsupportedDigitalSignatureMethodException) String() string {
13653	return awsutil.Prettify(s)
13654}
13655
13656// GoString returns the string representation.
13657//
13658// API parameter values that are decorated as "sensitive" in the API will not
13659// be included in the string output. The member name will be present, but the
13660// value will be replaced with "sensitive".
13661func (s UnsupportedDigitalSignatureMethodException) GoString() string {
13662	return s.String()
13663}
13664
13665func newErrorUnsupportedDigitalSignatureMethodException(v protocol.ResponseMetadata) error {
13666	return &UnsupportedDigitalSignatureMethodException{
13667		RespMetadata: v,
13668	}
13669}
13670
13671// Code returns the exception type name.
13672func (s *UnsupportedDigitalSignatureMethodException) Code() string {
13673	return "UnsupportedDigitalSignatureMethodException"
13674}
13675
13676// Message returns the exception's message.
13677func (s *UnsupportedDigitalSignatureMethodException) Message() string {
13678	if s.Message_ != nil {
13679		return *s.Message_
13680	}
13681	return ""
13682}
13683
13684// OrigErr always returns nil, satisfies awserr.Error interface.
13685func (s *UnsupportedDigitalSignatureMethodException) OrigErr() error {
13686	return nil
13687}
13688
13689func (s *UnsupportedDigitalSignatureMethodException) Error() string {
13690	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
13691}
13692
13693// Status code returns the HTTP status code for the request's response error.
13694func (s *UnsupportedDigitalSignatureMethodException) StatusCode() int {
13695	return s.RespMetadata.StatusCode
13696}
13697
13698// RequestID returns the service's response RequestID for request.
13699func (s *UnsupportedDigitalSignatureMethodException) RequestID() string {
13700	return s.RespMetadata.RequestID
13701}
13702
13703type UntagResourceInput struct {
13704	_ struct{} `type:"structure"`
13705
13706	// Amazon Resource Name (ARN) of the license configuration.
13707	//
13708	// ResourceArn is a required field
13709	ResourceArn *string `type:"string" required:"true"`
13710
13711	// Keys identifying the tags to remove.
13712	//
13713	// TagKeys is a required field
13714	TagKeys []*string `type:"list" required:"true"`
13715}
13716
13717// String returns the string representation.
13718//
13719// API parameter values that are decorated as "sensitive" in the API will not
13720// be included in the string output. The member name will be present, but the
13721// value will be replaced with "sensitive".
13722func (s UntagResourceInput) String() string {
13723	return awsutil.Prettify(s)
13724}
13725
13726// GoString returns the string representation.
13727//
13728// API parameter values that are decorated as "sensitive" in the API will not
13729// be included in the string output. The member name will be present, but the
13730// value will be replaced with "sensitive".
13731func (s UntagResourceInput) GoString() string {
13732	return s.String()
13733}
13734
13735// Validate inspects the fields of the type to determine if they are valid.
13736func (s *UntagResourceInput) Validate() error {
13737	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
13738	if s.ResourceArn == nil {
13739		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
13740	}
13741	if s.TagKeys == nil {
13742		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
13743	}
13744
13745	if invalidParams.Len() > 0 {
13746		return invalidParams
13747	}
13748	return nil
13749}
13750
13751// SetResourceArn sets the ResourceArn field's value.
13752func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
13753	s.ResourceArn = &v
13754	return s
13755}
13756
13757// SetTagKeys sets the TagKeys field's value.
13758func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
13759	s.TagKeys = v
13760	return s
13761}
13762
13763type UntagResourceOutput struct {
13764	_ struct{} `type:"structure"`
13765}
13766
13767// String returns the string representation.
13768//
13769// API parameter values that are decorated as "sensitive" in the API will not
13770// be included in the string output. The member name will be present, but the
13771// value will be replaced with "sensitive".
13772func (s UntagResourceOutput) String() string {
13773	return awsutil.Prettify(s)
13774}
13775
13776// GoString returns the string representation.
13777//
13778// API parameter values that are decorated as "sensitive" in the API will not
13779// be included in the string output. The member name will be present, but the
13780// value will be replaced with "sensitive".
13781func (s UntagResourceOutput) GoString() string {
13782	return s.String()
13783}
13784
13785type UpdateLicenseConfigurationInput struct {
13786	_ struct{} `type:"structure"`
13787
13788	// New description of the license configuration.
13789	Description *string `type:"string"`
13790
13791	// When true, disassociates a resource when software is uninstalled.
13792	DisassociateWhenNotFound *bool `type:"boolean"`
13793
13794	// Amazon Resource Name (ARN) of the license configuration.
13795	//
13796	// LicenseConfigurationArn is a required field
13797	LicenseConfigurationArn *string `type:"string" required:"true"`
13798
13799	// New status of the license configuration.
13800	LicenseConfigurationStatus *string `type:"string" enum:"LicenseConfigurationStatus"`
13801
13802	// New number of licenses managed by the license configuration.
13803	LicenseCount *int64 `type:"long"`
13804
13805	// New hard limit of the number of available licenses.
13806	LicenseCountHardLimit *bool `type:"boolean"`
13807
13808	// New license rule. The only rule that you can add after you create a license
13809	// configuration is licenseAffinityToHost.
13810	LicenseRules []*string `type:"list"`
13811
13812	// New name of the license configuration.
13813	Name *string `type:"string"`
13814
13815	// New product information.
13816	ProductInformationList []*ProductInformation `type:"list"`
13817}
13818
13819// String returns the string representation.
13820//
13821// API parameter values that are decorated as "sensitive" in the API will not
13822// be included in the string output. The member name will be present, but the
13823// value will be replaced with "sensitive".
13824func (s UpdateLicenseConfigurationInput) String() string {
13825	return awsutil.Prettify(s)
13826}
13827
13828// GoString returns the string representation.
13829//
13830// API parameter values that are decorated as "sensitive" in the API will not
13831// be included in the string output. The member name will be present, but the
13832// value will be replaced with "sensitive".
13833func (s UpdateLicenseConfigurationInput) GoString() string {
13834	return s.String()
13835}
13836
13837// Validate inspects the fields of the type to determine if they are valid.
13838func (s *UpdateLicenseConfigurationInput) Validate() error {
13839	invalidParams := request.ErrInvalidParams{Context: "UpdateLicenseConfigurationInput"}
13840	if s.LicenseConfigurationArn == nil {
13841		invalidParams.Add(request.NewErrParamRequired("LicenseConfigurationArn"))
13842	}
13843	if s.ProductInformationList != nil {
13844		for i, v := range s.ProductInformationList {
13845			if v == nil {
13846				continue
13847			}
13848			if err := v.Validate(); err != nil {
13849				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ProductInformationList", i), err.(request.ErrInvalidParams))
13850			}
13851		}
13852	}
13853
13854	if invalidParams.Len() > 0 {
13855		return invalidParams
13856	}
13857	return nil
13858}
13859
13860// SetDescription sets the Description field's value.
13861func (s *UpdateLicenseConfigurationInput) SetDescription(v string) *UpdateLicenseConfigurationInput {
13862	s.Description = &v
13863	return s
13864}
13865
13866// SetDisassociateWhenNotFound sets the DisassociateWhenNotFound field's value.
13867func (s *UpdateLicenseConfigurationInput) SetDisassociateWhenNotFound(v bool) *UpdateLicenseConfigurationInput {
13868	s.DisassociateWhenNotFound = &v
13869	return s
13870}
13871
13872// SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value.
13873func (s *UpdateLicenseConfigurationInput) SetLicenseConfigurationArn(v string) *UpdateLicenseConfigurationInput {
13874	s.LicenseConfigurationArn = &v
13875	return s
13876}
13877
13878// SetLicenseConfigurationStatus sets the LicenseConfigurationStatus field's value.
13879func (s *UpdateLicenseConfigurationInput) SetLicenseConfigurationStatus(v string) *UpdateLicenseConfigurationInput {
13880	s.LicenseConfigurationStatus = &v
13881	return s
13882}
13883
13884// SetLicenseCount sets the LicenseCount field's value.
13885func (s *UpdateLicenseConfigurationInput) SetLicenseCount(v int64) *UpdateLicenseConfigurationInput {
13886	s.LicenseCount = &v
13887	return s
13888}
13889
13890// SetLicenseCountHardLimit sets the LicenseCountHardLimit field's value.
13891func (s *UpdateLicenseConfigurationInput) SetLicenseCountHardLimit(v bool) *UpdateLicenseConfigurationInput {
13892	s.LicenseCountHardLimit = &v
13893	return s
13894}
13895
13896// SetLicenseRules sets the LicenseRules field's value.
13897func (s *UpdateLicenseConfigurationInput) SetLicenseRules(v []*string) *UpdateLicenseConfigurationInput {
13898	s.LicenseRules = v
13899	return s
13900}
13901
13902// SetName sets the Name field's value.
13903func (s *UpdateLicenseConfigurationInput) SetName(v string) *UpdateLicenseConfigurationInput {
13904	s.Name = &v
13905	return s
13906}
13907
13908// SetProductInformationList sets the ProductInformationList field's value.
13909func (s *UpdateLicenseConfigurationInput) SetProductInformationList(v []*ProductInformation) *UpdateLicenseConfigurationInput {
13910	s.ProductInformationList = v
13911	return s
13912}
13913
13914type UpdateLicenseConfigurationOutput struct {
13915	_ struct{} `type:"structure"`
13916}
13917
13918// String returns the string representation.
13919//
13920// API parameter values that are decorated as "sensitive" in the API will not
13921// be included in the string output. The member name will be present, but the
13922// value will be replaced with "sensitive".
13923func (s UpdateLicenseConfigurationOutput) String() string {
13924	return awsutil.Prettify(s)
13925}
13926
13927// GoString returns the string representation.
13928//
13929// API parameter values that are decorated as "sensitive" in the API will not
13930// be included in the string output. The member name will be present, but the
13931// value will be replaced with "sensitive".
13932func (s UpdateLicenseConfigurationOutput) GoString() string {
13933	return s.String()
13934}
13935
13936type UpdateLicenseManagerReportGeneratorInput struct {
13937	_ struct{} `type:"structure"`
13938
13939	// Unique, case-sensitive identifier that you provide to ensure the idempotency
13940	// of the request.
13941	//
13942	// ClientToken is a required field
13943	ClientToken *string `min:"1" type:"string" required:"true"`
13944
13945	// Description of the report generator.
13946	Description *string `type:"string"`
13947
13948	// Amazon Resource Name (ARN) of the report generator to update.
13949	//
13950	// LicenseManagerReportGeneratorArn is a required field
13951	LicenseManagerReportGeneratorArn *string `type:"string" required:"true"`
13952
13953	// The report context.
13954	//
13955	// ReportContext is a required field
13956	ReportContext *ReportContext `type:"structure" required:"true"`
13957
13958	// Frequency by which reports are generated.
13959	//
13960	// ReportFrequency is a required field
13961	ReportFrequency *ReportFrequency `type:"structure" required:"true"`
13962
13963	// Name of the report generator.
13964	//
13965	// ReportGeneratorName is a required field
13966	ReportGeneratorName *string `min:"1" type:"string" required:"true"`
13967
13968	// Type of reports to generate. The following report types are supported:
13969	//
13970	//    * License configuration report - Reports the number and details of consumed
13971	//    licenses for a license configuration.
13972	//
13973	//    * Resource report - Reports the tracked licenses and resource consumption
13974	//    for a license configuration.
13975	//
13976	// Type is a required field
13977	Type []*string `type:"list" required:"true"`
13978}
13979
13980// String returns the string representation.
13981//
13982// API parameter values that are decorated as "sensitive" in the API will not
13983// be included in the string output. The member name will be present, but the
13984// value will be replaced with "sensitive".
13985func (s UpdateLicenseManagerReportGeneratorInput) String() string {
13986	return awsutil.Prettify(s)
13987}
13988
13989// GoString returns the string representation.
13990//
13991// API parameter values that are decorated as "sensitive" in the API will not
13992// be included in the string output. The member name will be present, but the
13993// value will be replaced with "sensitive".
13994func (s UpdateLicenseManagerReportGeneratorInput) GoString() string {
13995	return s.String()
13996}
13997
13998// Validate inspects the fields of the type to determine if they are valid.
13999func (s *UpdateLicenseManagerReportGeneratorInput) Validate() error {
14000	invalidParams := request.ErrInvalidParams{Context: "UpdateLicenseManagerReportGeneratorInput"}
14001	if s.ClientToken == nil {
14002		invalidParams.Add(request.NewErrParamRequired("ClientToken"))
14003	}
14004	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
14005		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
14006	}
14007	if s.LicenseManagerReportGeneratorArn == nil {
14008		invalidParams.Add(request.NewErrParamRequired("LicenseManagerReportGeneratorArn"))
14009	}
14010	if s.ReportContext == nil {
14011		invalidParams.Add(request.NewErrParamRequired("ReportContext"))
14012	}
14013	if s.ReportFrequency == nil {
14014		invalidParams.Add(request.NewErrParamRequired("ReportFrequency"))
14015	}
14016	if s.ReportGeneratorName == nil {
14017		invalidParams.Add(request.NewErrParamRequired("ReportGeneratorName"))
14018	}
14019	if s.ReportGeneratorName != nil && len(*s.ReportGeneratorName) < 1 {
14020		invalidParams.Add(request.NewErrParamMinLen("ReportGeneratorName", 1))
14021	}
14022	if s.Type == nil {
14023		invalidParams.Add(request.NewErrParamRequired("Type"))
14024	}
14025	if s.ReportContext != nil {
14026		if err := s.ReportContext.Validate(); err != nil {
14027			invalidParams.AddNested("ReportContext", err.(request.ErrInvalidParams))
14028		}
14029	}
14030
14031	if invalidParams.Len() > 0 {
14032		return invalidParams
14033	}
14034	return nil
14035}
14036
14037// SetClientToken sets the ClientToken field's value.
14038func (s *UpdateLicenseManagerReportGeneratorInput) SetClientToken(v string) *UpdateLicenseManagerReportGeneratorInput {
14039	s.ClientToken = &v
14040	return s
14041}
14042
14043// SetDescription sets the Description field's value.
14044func (s *UpdateLicenseManagerReportGeneratorInput) SetDescription(v string) *UpdateLicenseManagerReportGeneratorInput {
14045	s.Description = &v
14046	return s
14047}
14048
14049// SetLicenseManagerReportGeneratorArn sets the LicenseManagerReportGeneratorArn field's value.
14050func (s *UpdateLicenseManagerReportGeneratorInput) SetLicenseManagerReportGeneratorArn(v string) *UpdateLicenseManagerReportGeneratorInput {
14051	s.LicenseManagerReportGeneratorArn = &v
14052	return s
14053}
14054
14055// SetReportContext sets the ReportContext field's value.
14056func (s *UpdateLicenseManagerReportGeneratorInput) SetReportContext(v *ReportContext) *UpdateLicenseManagerReportGeneratorInput {
14057	s.ReportContext = v
14058	return s
14059}
14060
14061// SetReportFrequency sets the ReportFrequency field's value.
14062func (s *UpdateLicenseManagerReportGeneratorInput) SetReportFrequency(v *ReportFrequency) *UpdateLicenseManagerReportGeneratorInput {
14063	s.ReportFrequency = v
14064	return s
14065}
14066
14067// SetReportGeneratorName sets the ReportGeneratorName field's value.
14068func (s *UpdateLicenseManagerReportGeneratorInput) SetReportGeneratorName(v string) *UpdateLicenseManagerReportGeneratorInput {
14069	s.ReportGeneratorName = &v
14070	return s
14071}
14072
14073// SetType sets the Type field's value.
14074func (s *UpdateLicenseManagerReportGeneratorInput) SetType(v []*string) *UpdateLicenseManagerReportGeneratorInput {
14075	s.Type = v
14076	return s
14077}
14078
14079type UpdateLicenseManagerReportGeneratorOutput struct {
14080	_ struct{} `type:"structure"`
14081}
14082
14083// String returns the string representation.
14084//
14085// API parameter values that are decorated as "sensitive" in the API will not
14086// be included in the string output. The member name will be present, but the
14087// value will be replaced with "sensitive".
14088func (s UpdateLicenseManagerReportGeneratorOutput) String() string {
14089	return awsutil.Prettify(s)
14090}
14091
14092// GoString returns the string representation.
14093//
14094// API parameter values that are decorated as "sensitive" in the API will not
14095// be included in the string output. The member name will be present, but the
14096// value will be replaced with "sensitive".
14097func (s UpdateLicenseManagerReportGeneratorOutput) GoString() string {
14098	return s.String()
14099}
14100
14101type UpdateLicenseSpecificationsForResourceInput struct {
14102	_ struct{} `type:"structure"`
14103
14104	// ARNs of the license configurations to add.
14105	AddLicenseSpecifications []*LicenseSpecification `type:"list"`
14106
14107	// ARNs of the license configurations to remove.
14108	RemoveLicenseSpecifications []*LicenseSpecification `type:"list"`
14109
14110	// Amazon Resource Name (ARN) of the Amazon Web Services resource.
14111	//
14112	// ResourceArn is a required field
14113	ResourceArn *string `type:"string" required:"true"`
14114}
14115
14116// String returns the string representation.
14117//
14118// API parameter values that are decorated as "sensitive" in the API will not
14119// be included in the string output. The member name will be present, but the
14120// value will be replaced with "sensitive".
14121func (s UpdateLicenseSpecificationsForResourceInput) String() string {
14122	return awsutil.Prettify(s)
14123}
14124
14125// GoString returns the string representation.
14126//
14127// API parameter values that are decorated as "sensitive" in the API will not
14128// be included in the string output. The member name will be present, but the
14129// value will be replaced with "sensitive".
14130func (s UpdateLicenseSpecificationsForResourceInput) GoString() string {
14131	return s.String()
14132}
14133
14134// Validate inspects the fields of the type to determine if they are valid.
14135func (s *UpdateLicenseSpecificationsForResourceInput) Validate() error {
14136	invalidParams := request.ErrInvalidParams{Context: "UpdateLicenseSpecificationsForResourceInput"}
14137	if s.ResourceArn == nil {
14138		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
14139	}
14140	if s.AddLicenseSpecifications != nil {
14141		for i, v := range s.AddLicenseSpecifications {
14142			if v == nil {
14143				continue
14144			}
14145			if err := v.Validate(); err != nil {
14146				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AddLicenseSpecifications", i), err.(request.ErrInvalidParams))
14147			}
14148		}
14149	}
14150	if s.RemoveLicenseSpecifications != nil {
14151		for i, v := range s.RemoveLicenseSpecifications {
14152			if v == nil {
14153				continue
14154			}
14155			if err := v.Validate(); err != nil {
14156				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RemoveLicenseSpecifications", i), err.(request.ErrInvalidParams))
14157			}
14158		}
14159	}
14160
14161	if invalidParams.Len() > 0 {
14162		return invalidParams
14163	}
14164	return nil
14165}
14166
14167// SetAddLicenseSpecifications sets the AddLicenseSpecifications field's value.
14168func (s *UpdateLicenseSpecificationsForResourceInput) SetAddLicenseSpecifications(v []*LicenseSpecification) *UpdateLicenseSpecificationsForResourceInput {
14169	s.AddLicenseSpecifications = v
14170	return s
14171}
14172
14173// SetRemoveLicenseSpecifications sets the RemoveLicenseSpecifications field's value.
14174func (s *UpdateLicenseSpecificationsForResourceInput) SetRemoveLicenseSpecifications(v []*LicenseSpecification) *UpdateLicenseSpecificationsForResourceInput {
14175	s.RemoveLicenseSpecifications = v
14176	return s
14177}
14178
14179// SetResourceArn sets the ResourceArn field's value.
14180func (s *UpdateLicenseSpecificationsForResourceInput) SetResourceArn(v string) *UpdateLicenseSpecificationsForResourceInput {
14181	s.ResourceArn = &v
14182	return s
14183}
14184
14185type UpdateLicenseSpecificationsForResourceOutput struct {
14186	_ struct{} `type:"structure"`
14187}
14188
14189// String returns the string representation.
14190//
14191// API parameter values that are decorated as "sensitive" in the API will not
14192// be included in the string output. The member name will be present, but the
14193// value will be replaced with "sensitive".
14194func (s UpdateLicenseSpecificationsForResourceOutput) String() string {
14195	return awsutil.Prettify(s)
14196}
14197
14198// GoString returns the string representation.
14199//
14200// API parameter values that are decorated as "sensitive" in the API will not
14201// be included in the string output. The member name will be present, but the
14202// value will be replaced with "sensitive".
14203func (s UpdateLicenseSpecificationsForResourceOutput) GoString() string {
14204	return s.String()
14205}
14206
14207type UpdateServiceSettingsInput struct {
14208	_ struct{} `type:"structure"`
14209
14210	// Activates cross-account discovery.
14211	EnableCrossAccountsDiscovery *bool `type:"boolean"`
14212
14213	// Enables integration with Organizations for cross-account discovery.
14214	OrganizationConfiguration *OrganizationConfiguration `type:"structure"`
14215
14216	// Amazon Resource Name (ARN) of the Amazon S3 bucket where the License Manager
14217	// information is stored.
14218	S3BucketArn *string `type:"string"`
14219
14220	// Amazon Resource Name (ARN) of the Amazon SNS topic used for License Manager
14221	// alerts.
14222	SnsTopicArn *string `type:"string"`
14223}
14224
14225// String returns the string representation.
14226//
14227// API parameter values that are decorated as "sensitive" in the API will not
14228// be included in the string output. The member name will be present, but the
14229// value will be replaced with "sensitive".
14230func (s UpdateServiceSettingsInput) String() string {
14231	return awsutil.Prettify(s)
14232}
14233
14234// GoString returns the string representation.
14235//
14236// API parameter values that are decorated as "sensitive" in the API will not
14237// be included in the string output. The member name will be present, but the
14238// value will be replaced with "sensitive".
14239func (s UpdateServiceSettingsInput) GoString() string {
14240	return s.String()
14241}
14242
14243// Validate inspects the fields of the type to determine if they are valid.
14244func (s *UpdateServiceSettingsInput) Validate() error {
14245	invalidParams := request.ErrInvalidParams{Context: "UpdateServiceSettingsInput"}
14246	if s.OrganizationConfiguration != nil {
14247		if err := s.OrganizationConfiguration.Validate(); err != nil {
14248			invalidParams.AddNested("OrganizationConfiguration", err.(request.ErrInvalidParams))
14249		}
14250	}
14251
14252	if invalidParams.Len() > 0 {
14253		return invalidParams
14254	}
14255	return nil
14256}
14257
14258// SetEnableCrossAccountsDiscovery sets the EnableCrossAccountsDiscovery field's value.
14259func (s *UpdateServiceSettingsInput) SetEnableCrossAccountsDiscovery(v bool) *UpdateServiceSettingsInput {
14260	s.EnableCrossAccountsDiscovery = &v
14261	return s
14262}
14263
14264// SetOrganizationConfiguration sets the OrganizationConfiguration field's value.
14265func (s *UpdateServiceSettingsInput) SetOrganizationConfiguration(v *OrganizationConfiguration) *UpdateServiceSettingsInput {
14266	s.OrganizationConfiguration = v
14267	return s
14268}
14269
14270// SetS3BucketArn sets the S3BucketArn field's value.
14271func (s *UpdateServiceSettingsInput) SetS3BucketArn(v string) *UpdateServiceSettingsInput {
14272	s.S3BucketArn = &v
14273	return s
14274}
14275
14276// SetSnsTopicArn sets the SnsTopicArn field's value.
14277func (s *UpdateServiceSettingsInput) SetSnsTopicArn(v string) *UpdateServiceSettingsInput {
14278	s.SnsTopicArn = &v
14279	return s
14280}
14281
14282type UpdateServiceSettingsOutput struct {
14283	_ struct{} `type:"structure"`
14284}
14285
14286// String returns the string representation.
14287//
14288// API parameter values that are decorated as "sensitive" in the API will not
14289// be included in the string output. The member name will be present, but the
14290// value will be replaced with "sensitive".
14291func (s UpdateServiceSettingsOutput) String() string {
14292	return awsutil.Prettify(s)
14293}
14294
14295// GoString returns the string representation.
14296//
14297// API parameter values that are decorated as "sensitive" in the API will not
14298// be included in the string output. The member name will be present, but the
14299// value will be replaced with "sensitive".
14300func (s UpdateServiceSettingsOutput) GoString() string {
14301	return s.String()
14302}
14303
14304// The provided input is not valid. Try your request again.
14305type ValidationException struct {
14306	_            struct{}                  `type:"structure"`
14307	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
14308
14309	Message_ *string `locationName:"Message" type:"string"`
14310}
14311
14312// String returns the string representation.
14313//
14314// API parameter values that are decorated as "sensitive" in the API will not
14315// be included in the string output. The member name will be present, but the
14316// value will be replaced with "sensitive".
14317func (s ValidationException) String() string {
14318	return awsutil.Prettify(s)
14319}
14320
14321// GoString returns the string representation.
14322//
14323// API parameter values that are decorated as "sensitive" in the API will not
14324// be included in the string output. The member name will be present, but the
14325// value will be replaced with "sensitive".
14326func (s ValidationException) GoString() string {
14327	return s.String()
14328}
14329
14330func newErrorValidationException(v protocol.ResponseMetadata) error {
14331	return &ValidationException{
14332		RespMetadata: v,
14333	}
14334}
14335
14336// Code returns the exception type name.
14337func (s *ValidationException) Code() string {
14338	return "ValidationException"
14339}
14340
14341// Message returns the exception's message.
14342func (s *ValidationException) Message() string {
14343	if s.Message_ != nil {
14344		return *s.Message_
14345	}
14346	return ""
14347}
14348
14349// OrigErr always returns nil, satisfies awserr.Error interface.
14350func (s *ValidationException) OrigErr() error {
14351	return nil
14352}
14353
14354func (s *ValidationException) Error() string {
14355	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
14356}
14357
14358// Status code returns the HTTP status code for the request's response error.
14359func (s *ValidationException) StatusCode() int {
14360	return s.RespMetadata.StatusCode
14361}
14362
14363// RequestID returns the service's response RequestID for request.
14364func (s *ValidationException) RequestID() string {
14365	return s.RespMetadata.RequestID
14366}
14367
14368const (
14369	// AllowedOperationCreateGrant is a AllowedOperation enum value
14370	AllowedOperationCreateGrant = "CreateGrant"
14371
14372	// AllowedOperationCheckoutLicense is a AllowedOperation enum value
14373	AllowedOperationCheckoutLicense = "CheckoutLicense"
14374
14375	// AllowedOperationCheckoutBorrowLicense is a AllowedOperation enum value
14376	AllowedOperationCheckoutBorrowLicense = "CheckoutBorrowLicense"
14377
14378	// AllowedOperationCheckInLicense is a AllowedOperation enum value
14379	AllowedOperationCheckInLicense = "CheckInLicense"
14380
14381	// AllowedOperationExtendConsumptionLicense is a AllowedOperation enum value
14382	AllowedOperationExtendConsumptionLicense = "ExtendConsumptionLicense"
14383
14384	// AllowedOperationListPurchasedLicenses is a AllowedOperation enum value
14385	AllowedOperationListPurchasedLicenses = "ListPurchasedLicenses"
14386
14387	// AllowedOperationCreateToken is a AllowedOperation enum value
14388	AllowedOperationCreateToken = "CreateToken"
14389)
14390
14391// AllowedOperation_Values returns all elements of the AllowedOperation enum
14392func AllowedOperation_Values() []string {
14393	return []string{
14394		AllowedOperationCreateGrant,
14395		AllowedOperationCheckoutLicense,
14396		AllowedOperationCheckoutBorrowLicense,
14397		AllowedOperationCheckInLicense,
14398		AllowedOperationExtendConsumptionLicense,
14399		AllowedOperationListPurchasedLicenses,
14400		AllowedOperationCreateToken,
14401	}
14402}
14403
14404const (
14405	// CheckoutTypeProvisional is a CheckoutType enum value
14406	CheckoutTypeProvisional = "PROVISIONAL"
14407
14408	// CheckoutTypePerpetual is a CheckoutType enum value
14409	CheckoutTypePerpetual = "PERPETUAL"
14410)
14411
14412// CheckoutType_Values returns all elements of the CheckoutType enum
14413func CheckoutType_Values() []string {
14414	return []string{
14415		CheckoutTypeProvisional,
14416		CheckoutTypePerpetual,
14417	}
14418}
14419
14420const (
14421	// DigitalSignatureMethodJwtPs384 is a DigitalSignatureMethod enum value
14422	DigitalSignatureMethodJwtPs384 = "JWT_PS384"
14423)
14424
14425// DigitalSignatureMethod_Values returns all elements of the DigitalSignatureMethod enum
14426func DigitalSignatureMethod_Values() []string {
14427	return []string{
14428		DigitalSignatureMethodJwtPs384,
14429	}
14430}
14431
14432const (
14433	// EntitlementDataUnitCount is a EntitlementDataUnit enum value
14434	EntitlementDataUnitCount = "Count"
14435
14436	// EntitlementDataUnitNone is a EntitlementDataUnit enum value
14437	EntitlementDataUnitNone = "None"
14438
14439	// EntitlementDataUnitSeconds is a EntitlementDataUnit enum value
14440	EntitlementDataUnitSeconds = "Seconds"
14441
14442	// EntitlementDataUnitMicroseconds is a EntitlementDataUnit enum value
14443	EntitlementDataUnitMicroseconds = "Microseconds"
14444
14445	// EntitlementDataUnitMilliseconds is a EntitlementDataUnit enum value
14446	EntitlementDataUnitMilliseconds = "Milliseconds"
14447
14448	// EntitlementDataUnitBytes is a EntitlementDataUnit enum value
14449	EntitlementDataUnitBytes = "Bytes"
14450
14451	// EntitlementDataUnitKilobytes is a EntitlementDataUnit enum value
14452	EntitlementDataUnitKilobytes = "Kilobytes"
14453
14454	// EntitlementDataUnitMegabytes is a EntitlementDataUnit enum value
14455	EntitlementDataUnitMegabytes = "Megabytes"
14456
14457	// EntitlementDataUnitGigabytes is a EntitlementDataUnit enum value
14458	EntitlementDataUnitGigabytes = "Gigabytes"
14459
14460	// EntitlementDataUnitTerabytes is a EntitlementDataUnit enum value
14461	EntitlementDataUnitTerabytes = "Terabytes"
14462
14463	// EntitlementDataUnitBits is a EntitlementDataUnit enum value
14464	EntitlementDataUnitBits = "Bits"
14465
14466	// EntitlementDataUnitKilobits is a EntitlementDataUnit enum value
14467	EntitlementDataUnitKilobits = "Kilobits"
14468
14469	// EntitlementDataUnitMegabits is a EntitlementDataUnit enum value
14470	EntitlementDataUnitMegabits = "Megabits"
14471
14472	// EntitlementDataUnitGigabits is a EntitlementDataUnit enum value
14473	EntitlementDataUnitGigabits = "Gigabits"
14474
14475	// EntitlementDataUnitTerabits is a EntitlementDataUnit enum value
14476	EntitlementDataUnitTerabits = "Terabits"
14477
14478	// EntitlementDataUnitPercent is a EntitlementDataUnit enum value
14479	EntitlementDataUnitPercent = "Percent"
14480
14481	// EntitlementDataUnitBytesSecond is a EntitlementDataUnit enum value
14482	EntitlementDataUnitBytesSecond = "Bytes/Second"
14483
14484	// EntitlementDataUnitKilobytesSecond is a EntitlementDataUnit enum value
14485	EntitlementDataUnitKilobytesSecond = "Kilobytes/Second"
14486
14487	// EntitlementDataUnitMegabytesSecond is a EntitlementDataUnit enum value
14488	EntitlementDataUnitMegabytesSecond = "Megabytes/Second"
14489
14490	// EntitlementDataUnitGigabytesSecond is a EntitlementDataUnit enum value
14491	EntitlementDataUnitGigabytesSecond = "Gigabytes/Second"
14492
14493	// EntitlementDataUnitTerabytesSecond is a EntitlementDataUnit enum value
14494	EntitlementDataUnitTerabytesSecond = "Terabytes/Second"
14495
14496	// EntitlementDataUnitBitsSecond is a EntitlementDataUnit enum value
14497	EntitlementDataUnitBitsSecond = "Bits/Second"
14498
14499	// EntitlementDataUnitKilobitsSecond is a EntitlementDataUnit enum value
14500	EntitlementDataUnitKilobitsSecond = "Kilobits/Second"
14501
14502	// EntitlementDataUnitMegabitsSecond is a EntitlementDataUnit enum value
14503	EntitlementDataUnitMegabitsSecond = "Megabits/Second"
14504
14505	// EntitlementDataUnitGigabitsSecond is a EntitlementDataUnit enum value
14506	EntitlementDataUnitGigabitsSecond = "Gigabits/Second"
14507
14508	// EntitlementDataUnitTerabitsSecond is a EntitlementDataUnit enum value
14509	EntitlementDataUnitTerabitsSecond = "Terabits/Second"
14510
14511	// EntitlementDataUnitCountSecond is a EntitlementDataUnit enum value
14512	EntitlementDataUnitCountSecond = "Count/Second"
14513)
14514
14515// EntitlementDataUnit_Values returns all elements of the EntitlementDataUnit enum
14516func EntitlementDataUnit_Values() []string {
14517	return []string{
14518		EntitlementDataUnitCount,
14519		EntitlementDataUnitNone,
14520		EntitlementDataUnitSeconds,
14521		EntitlementDataUnitMicroseconds,
14522		EntitlementDataUnitMilliseconds,
14523		EntitlementDataUnitBytes,
14524		EntitlementDataUnitKilobytes,
14525		EntitlementDataUnitMegabytes,
14526		EntitlementDataUnitGigabytes,
14527		EntitlementDataUnitTerabytes,
14528		EntitlementDataUnitBits,
14529		EntitlementDataUnitKilobits,
14530		EntitlementDataUnitMegabits,
14531		EntitlementDataUnitGigabits,
14532		EntitlementDataUnitTerabits,
14533		EntitlementDataUnitPercent,
14534		EntitlementDataUnitBytesSecond,
14535		EntitlementDataUnitKilobytesSecond,
14536		EntitlementDataUnitMegabytesSecond,
14537		EntitlementDataUnitGigabytesSecond,
14538		EntitlementDataUnitTerabytesSecond,
14539		EntitlementDataUnitBitsSecond,
14540		EntitlementDataUnitKilobitsSecond,
14541		EntitlementDataUnitMegabitsSecond,
14542		EntitlementDataUnitGigabitsSecond,
14543		EntitlementDataUnitTerabitsSecond,
14544		EntitlementDataUnitCountSecond,
14545	}
14546}
14547
14548const (
14549	// EntitlementUnitCount is a EntitlementUnit enum value
14550	EntitlementUnitCount = "Count"
14551
14552	// EntitlementUnitNone is a EntitlementUnit enum value
14553	EntitlementUnitNone = "None"
14554
14555	// EntitlementUnitSeconds is a EntitlementUnit enum value
14556	EntitlementUnitSeconds = "Seconds"
14557
14558	// EntitlementUnitMicroseconds is a EntitlementUnit enum value
14559	EntitlementUnitMicroseconds = "Microseconds"
14560
14561	// EntitlementUnitMilliseconds is a EntitlementUnit enum value
14562	EntitlementUnitMilliseconds = "Milliseconds"
14563
14564	// EntitlementUnitBytes is a EntitlementUnit enum value
14565	EntitlementUnitBytes = "Bytes"
14566
14567	// EntitlementUnitKilobytes is a EntitlementUnit enum value
14568	EntitlementUnitKilobytes = "Kilobytes"
14569
14570	// EntitlementUnitMegabytes is a EntitlementUnit enum value
14571	EntitlementUnitMegabytes = "Megabytes"
14572
14573	// EntitlementUnitGigabytes is a EntitlementUnit enum value
14574	EntitlementUnitGigabytes = "Gigabytes"
14575
14576	// EntitlementUnitTerabytes is a EntitlementUnit enum value
14577	EntitlementUnitTerabytes = "Terabytes"
14578
14579	// EntitlementUnitBits is a EntitlementUnit enum value
14580	EntitlementUnitBits = "Bits"
14581
14582	// EntitlementUnitKilobits is a EntitlementUnit enum value
14583	EntitlementUnitKilobits = "Kilobits"
14584
14585	// EntitlementUnitMegabits is a EntitlementUnit enum value
14586	EntitlementUnitMegabits = "Megabits"
14587
14588	// EntitlementUnitGigabits is a EntitlementUnit enum value
14589	EntitlementUnitGigabits = "Gigabits"
14590
14591	// EntitlementUnitTerabits is a EntitlementUnit enum value
14592	EntitlementUnitTerabits = "Terabits"
14593
14594	// EntitlementUnitPercent is a EntitlementUnit enum value
14595	EntitlementUnitPercent = "Percent"
14596
14597	// EntitlementUnitBytesSecond is a EntitlementUnit enum value
14598	EntitlementUnitBytesSecond = "Bytes/Second"
14599
14600	// EntitlementUnitKilobytesSecond is a EntitlementUnit enum value
14601	EntitlementUnitKilobytesSecond = "Kilobytes/Second"
14602
14603	// EntitlementUnitMegabytesSecond is a EntitlementUnit enum value
14604	EntitlementUnitMegabytesSecond = "Megabytes/Second"
14605
14606	// EntitlementUnitGigabytesSecond is a EntitlementUnit enum value
14607	EntitlementUnitGigabytesSecond = "Gigabytes/Second"
14608
14609	// EntitlementUnitTerabytesSecond is a EntitlementUnit enum value
14610	EntitlementUnitTerabytesSecond = "Terabytes/Second"
14611
14612	// EntitlementUnitBitsSecond is a EntitlementUnit enum value
14613	EntitlementUnitBitsSecond = "Bits/Second"
14614
14615	// EntitlementUnitKilobitsSecond is a EntitlementUnit enum value
14616	EntitlementUnitKilobitsSecond = "Kilobits/Second"
14617
14618	// EntitlementUnitMegabitsSecond is a EntitlementUnit enum value
14619	EntitlementUnitMegabitsSecond = "Megabits/Second"
14620
14621	// EntitlementUnitGigabitsSecond is a EntitlementUnit enum value
14622	EntitlementUnitGigabitsSecond = "Gigabits/Second"
14623
14624	// EntitlementUnitTerabitsSecond is a EntitlementUnit enum value
14625	EntitlementUnitTerabitsSecond = "Terabits/Second"
14626
14627	// EntitlementUnitCountSecond is a EntitlementUnit enum value
14628	EntitlementUnitCountSecond = "Count/Second"
14629)
14630
14631// EntitlementUnit_Values returns all elements of the EntitlementUnit enum
14632func EntitlementUnit_Values() []string {
14633	return []string{
14634		EntitlementUnitCount,
14635		EntitlementUnitNone,
14636		EntitlementUnitSeconds,
14637		EntitlementUnitMicroseconds,
14638		EntitlementUnitMilliseconds,
14639		EntitlementUnitBytes,
14640		EntitlementUnitKilobytes,
14641		EntitlementUnitMegabytes,
14642		EntitlementUnitGigabytes,
14643		EntitlementUnitTerabytes,
14644		EntitlementUnitBits,
14645		EntitlementUnitKilobits,
14646		EntitlementUnitMegabits,
14647		EntitlementUnitGigabits,
14648		EntitlementUnitTerabits,
14649		EntitlementUnitPercent,
14650		EntitlementUnitBytesSecond,
14651		EntitlementUnitKilobytesSecond,
14652		EntitlementUnitMegabytesSecond,
14653		EntitlementUnitGigabytesSecond,
14654		EntitlementUnitTerabytesSecond,
14655		EntitlementUnitBitsSecond,
14656		EntitlementUnitKilobitsSecond,
14657		EntitlementUnitMegabitsSecond,
14658		EntitlementUnitGigabitsSecond,
14659		EntitlementUnitTerabitsSecond,
14660		EntitlementUnitCountSecond,
14661	}
14662}
14663
14664const (
14665	// GrantStatusPendingWorkflow is a GrantStatus enum value
14666	GrantStatusPendingWorkflow = "PENDING_WORKFLOW"
14667
14668	// GrantStatusPendingAccept is a GrantStatus enum value
14669	GrantStatusPendingAccept = "PENDING_ACCEPT"
14670
14671	// GrantStatusRejected is a GrantStatus enum value
14672	GrantStatusRejected = "REJECTED"
14673
14674	// GrantStatusActive is a GrantStatus enum value
14675	GrantStatusActive = "ACTIVE"
14676
14677	// GrantStatusFailedWorkflow is a GrantStatus enum value
14678	GrantStatusFailedWorkflow = "FAILED_WORKFLOW"
14679
14680	// GrantStatusDeleted is a GrantStatus enum value
14681	GrantStatusDeleted = "DELETED"
14682
14683	// GrantStatusPendingDelete is a GrantStatus enum value
14684	GrantStatusPendingDelete = "PENDING_DELETE"
14685
14686	// GrantStatusDisabled is a GrantStatus enum value
14687	GrantStatusDisabled = "DISABLED"
14688
14689	// GrantStatusWorkflowCompleted is a GrantStatus enum value
14690	GrantStatusWorkflowCompleted = "WORKFLOW_COMPLETED"
14691)
14692
14693// GrantStatus_Values returns all elements of the GrantStatus enum
14694func GrantStatus_Values() []string {
14695	return []string{
14696		GrantStatusPendingWorkflow,
14697		GrantStatusPendingAccept,
14698		GrantStatusRejected,
14699		GrantStatusActive,
14700		GrantStatusFailedWorkflow,
14701		GrantStatusDeleted,
14702		GrantStatusPendingDelete,
14703		GrantStatusDisabled,
14704		GrantStatusWorkflowCompleted,
14705	}
14706}
14707
14708const (
14709	// InventoryFilterConditionEquals is a InventoryFilterCondition enum value
14710	InventoryFilterConditionEquals = "EQUALS"
14711
14712	// InventoryFilterConditionNotEquals is a InventoryFilterCondition enum value
14713	InventoryFilterConditionNotEquals = "NOT_EQUALS"
14714
14715	// InventoryFilterConditionBeginsWith is a InventoryFilterCondition enum value
14716	InventoryFilterConditionBeginsWith = "BEGINS_WITH"
14717
14718	// InventoryFilterConditionContains is a InventoryFilterCondition enum value
14719	InventoryFilterConditionContains = "CONTAINS"
14720)
14721
14722// InventoryFilterCondition_Values returns all elements of the InventoryFilterCondition enum
14723func InventoryFilterCondition_Values() []string {
14724	return []string{
14725		InventoryFilterConditionEquals,
14726		InventoryFilterConditionNotEquals,
14727		InventoryFilterConditionBeginsWith,
14728		InventoryFilterConditionContains,
14729	}
14730}
14731
14732const (
14733	// LicenseConfigurationStatusAvailable is a LicenseConfigurationStatus enum value
14734	LicenseConfigurationStatusAvailable = "AVAILABLE"
14735
14736	// LicenseConfigurationStatusDisabled is a LicenseConfigurationStatus enum value
14737	LicenseConfigurationStatusDisabled = "DISABLED"
14738)
14739
14740// LicenseConfigurationStatus_Values returns all elements of the LicenseConfigurationStatus enum
14741func LicenseConfigurationStatus_Values() []string {
14742	return []string{
14743		LicenseConfigurationStatusAvailable,
14744		LicenseConfigurationStatusDisabled,
14745	}
14746}
14747
14748const (
14749	// LicenseConversionTaskStatusInProgress is a LicenseConversionTaskStatus enum value
14750	LicenseConversionTaskStatusInProgress = "IN_PROGRESS"
14751
14752	// LicenseConversionTaskStatusSucceeded is a LicenseConversionTaskStatus enum value
14753	LicenseConversionTaskStatusSucceeded = "SUCCEEDED"
14754
14755	// LicenseConversionTaskStatusFailed is a LicenseConversionTaskStatus enum value
14756	LicenseConversionTaskStatusFailed = "FAILED"
14757)
14758
14759// LicenseConversionTaskStatus_Values returns all elements of the LicenseConversionTaskStatus enum
14760func LicenseConversionTaskStatus_Values() []string {
14761	return []string{
14762		LicenseConversionTaskStatusInProgress,
14763		LicenseConversionTaskStatusSucceeded,
14764		LicenseConversionTaskStatusFailed,
14765	}
14766}
14767
14768const (
14769	// LicenseCountingTypeVCpu is a LicenseCountingType enum value
14770	LicenseCountingTypeVCpu = "vCPU"
14771
14772	// LicenseCountingTypeInstance is a LicenseCountingType enum value
14773	LicenseCountingTypeInstance = "Instance"
14774
14775	// LicenseCountingTypeCore is a LicenseCountingType enum value
14776	LicenseCountingTypeCore = "Core"
14777
14778	// LicenseCountingTypeSocket is a LicenseCountingType enum value
14779	LicenseCountingTypeSocket = "Socket"
14780)
14781
14782// LicenseCountingType_Values returns all elements of the LicenseCountingType enum
14783func LicenseCountingType_Values() []string {
14784	return []string{
14785		LicenseCountingTypeVCpu,
14786		LicenseCountingTypeInstance,
14787		LicenseCountingTypeCore,
14788		LicenseCountingTypeSocket,
14789	}
14790}
14791
14792const (
14793	// LicenseDeletionStatusPendingDelete is a LicenseDeletionStatus enum value
14794	LicenseDeletionStatusPendingDelete = "PENDING_DELETE"
14795
14796	// LicenseDeletionStatusDeleted is a LicenseDeletionStatus enum value
14797	LicenseDeletionStatusDeleted = "DELETED"
14798)
14799
14800// LicenseDeletionStatus_Values returns all elements of the LicenseDeletionStatus enum
14801func LicenseDeletionStatus_Values() []string {
14802	return []string{
14803		LicenseDeletionStatusPendingDelete,
14804		LicenseDeletionStatusDeleted,
14805	}
14806}
14807
14808const (
14809	// LicenseStatusAvailable is a LicenseStatus enum value
14810	LicenseStatusAvailable = "AVAILABLE"
14811
14812	// LicenseStatusPendingAvailable is a LicenseStatus enum value
14813	LicenseStatusPendingAvailable = "PENDING_AVAILABLE"
14814
14815	// LicenseStatusDeactivated is a LicenseStatus enum value
14816	LicenseStatusDeactivated = "DEACTIVATED"
14817
14818	// LicenseStatusSuspended is a LicenseStatus enum value
14819	LicenseStatusSuspended = "SUSPENDED"
14820
14821	// LicenseStatusExpired is a LicenseStatus enum value
14822	LicenseStatusExpired = "EXPIRED"
14823
14824	// LicenseStatusPendingDelete is a LicenseStatus enum value
14825	LicenseStatusPendingDelete = "PENDING_DELETE"
14826
14827	// LicenseStatusDeleted is a LicenseStatus enum value
14828	LicenseStatusDeleted = "DELETED"
14829)
14830
14831// LicenseStatus_Values returns all elements of the LicenseStatus enum
14832func LicenseStatus_Values() []string {
14833	return []string{
14834		LicenseStatusAvailable,
14835		LicenseStatusPendingAvailable,
14836		LicenseStatusDeactivated,
14837		LicenseStatusSuspended,
14838		LicenseStatusExpired,
14839		LicenseStatusPendingDelete,
14840		LicenseStatusDeleted,
14841	}
14842}
14843
14844const (
14845	// ReceivedStatusPendingWorkflow is a ReceivedStatus enum value
14846	ReceivedStatusPendingWorkflow = "PENDING_WORKFLOW"
14847
14848	// ReceivedStatusPendingAccept is a ReceivedStatus enum value
14849	ReceivedStatusPendingAccept = "PENDING_ACCEPT"
14850
14851	// ReceivedStatusRejected is a ReceivedStatus enum value
14852	ReceivedStatusRejected = "REJECTED"
14853
14854	// ReceivedStatusActive is a ReceivedStatus enum value
14855	ReceivedStatusActive = "ACTIVE"
14856
14857	// ReceivedStatusFailedWorkflow is a ReceivedStatus enum value
14858	ReceivedStatusFailedWorkflow = "FAILED_WORKFLOW"
14859
14860	// ReceivedStatusDeleted is a ReceivedStatus enum value
14861	ReceivedStatusDeleted = "DELETED"
14862
14863	// ReceivedStatusDisabled is a ReceivedStatus enum value
14864	ReceivedStatusDisabled = "DISABLED"
14865
14866	// ReceivedStatusWorkflowCompleted is a ReceivedStatus enum value
14867	ReceivedStatusWorkflowCompleted = "WORKFLOW_COMPLETED"
14868)
14869
14870// ReceivedStatus_Values returns all elements of the ReceivedStatus enum
14871func ReceivedStatus_Values() []string {
14872	return []string{
14873		ReceivedStatusPendingWorkflow,
14874		ReceivedStatusPendingAccept,
14875		ReceivedStatusRejected,
14876		ReceivedStatusActive,
14877		ReceivedStatusFailedWorkflow,
14878		ReceivedStatusDeleted,
14879		ReceivedStatusDisabled,
14880		ReceivedStatusWorkflowCompleted,
14881	}
14882}
14883
14884const (
14885	// RenewTypeNone is a RenewType enum value
14886	RenewTypeNone = "None"
14887
14888	// RenewTypeWeekly is a RenewType enum value
14889	RenewTypeWeekly = "Weekly"
14890
14891	// RenewTypeMonthly is a RenewType enum value
14892	RenewTypeMonthly = "Monthly"
14893)
14894
14895// RenewType_Values returns all elements of the RenewType enum
14896func RenewType_Values() []string {
14897	return []string{
14898		RenewTypeNone,
14899		RenewTypeWeekly,
14900		RenewTypeMonthly,
14901	}
14902}
14903
14904const (
14905	// ReportFrequencyTypeDay is a ReportFrequencyType enum value
14906	ReportFrequencyTypeDay = "DAY"
14907
14908	// ReportFrequencyTypeWeek is a ReportFrequencyType enum value
14909	ReportFrequencyTypeWeek = "WEEK"
14910
14911	// ReportFrequencyTypeMonth is a ReportFrequencyType enum value
14912	ReportFrequencyTypeMonth = "MONTH"
14913)
14914
14915// ReportFrequencyType_Values returns all elements of the ReportFrequencyType enum
14916func ReportFrequencyType_Values() []string {
14917	return []string{
14918		ReportFrequencyTypeDay,
14919		ReportFrequencyTypeWeek,
14920		ReportFrequencyTypeMonth,
14921	}
14922}
14923
14924const (
14925	// ReportTypeLicenseConfigurationSummaryReport is a ReportType enum value
14926	ReportTypeLicenseConfigurationSummaryReport = "LicenseConfigurationSummaryReport"
14927
14928	// ReportTypeLicenseConfigurationUsageReport is a ReportType enum value
14929	ReportTypeLicenseConfigurationUsageReport = "LicenseConfigurationUsageReport"
14930)
14931
14932// ReportType_Values returns all elements of the ReportType enum
14933func ReportType_Values() []string {
14934	return []string{
14935		ReportTypeLicenseConfigurationSummaryReport,
14936		ReportTypeLicenseConfigurationUsageReport,
14937	}
14938}
14939
14940const (
14941	// ResourceTypeEc2Instance is a ResourceType enum value
14942	ResourceTypeEc2Instance = "EC2_INSTANCE"
14943
14944	// ResourceTypeEc2Host is a ResourceType enum value
14945	ResourceTypeEc2Host = "EC2_HOST"
14946
14947	// ResourceTypeEc2Ami is a ResourceType enum value
14948	ResourceTypeEc2Ami = "EC2_AMI"
14949
14950	// ResourceTypeRds is a ResourceType enum value
14951	ResourceTypeRds = "RDS"
14952
14953	// ResourceTypeSystemsManagerManagedInstance is a ResourceType enum value
14954	ResourceTypeSystemsManagerManagedInstance = "SYSTEMS_MANAGER_MANAGED_INSTANCE"
14955)
14956
14957// ResourceType_Values returns all elements of the ResourceType enum
14958func ResourceType_Values() []string {
14959	return []string{
14960		ResourceTypeEc2Instance,
14961		ResourceTypeEc2Host,
14962		ResourceTypeEc2Ami,
14963		ResourceTypeRds,
14964		ResourceTypeSystemsManagerManagedInstance,
14965	}
14966}
14967
14968const (
14969	// TokenTypeRefreshToken is a TokenType enum value
14970	TokenTypeRefreshToken = "REFRESH_TOKEN"
14971)
14972
14973// TokenType_Values returns all elements of the TokenType enum
14974func TokenType_Values() []string {
14975	return []string{
14976		TokenTypeRefreshToken,
14977	}
14978}
14979