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

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