github.com/aavshr/aws-sdk-go@v1.41.3/service/mq/api.go (about)

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