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