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

     1  // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
     2  
     3  package mgn
     4  
     5  import (
     6  	"fmt"
     7  
     8  	"github.com/aavshr/aws-sdk-go/aws"
     9  	"github.com/aavshr/aws-sdk-go/aws/awsutil"
    10  	"github.com/aavshr/aws-sdk-go/aws/request"
    11  	"github.com/aavshr/aws-sdk-go/private/protocol"
    12  	"github.com/aavshr/aws-sdk-go/private/protocol/restjson"
    13  )
    14  
    15  const opChangeServerLifeCycleState = "ChangeServerLifeCycleState"
    16  
    17  // ChangeServerLifeCycleStateRequest generates a "aws/request.Request" representing the
    18  // client's request for the ChangeServerLifeCycleState 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 ChangeServerLifeCycleState for more information on using the ChangeServerLifeCycleState
    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 ChangeServerLifeCycleStateRequest method.
    33  //    req, resp := client.ChangeServerLifeCycleStateRequest(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/mgn-2020-02-26/ChangeServerLifeCycleState
    41  func (c *Mgn) ChangeServerLifeCycleStateRequest(input *ChangeServerLifeCycleStateInput) (req *request.Request, output *ChangeServerLifeCycleStateOutput) {
    42  	op := &request.Operation{
    43  		Name:       opChangeServerLifeCycleState,
    44  		HTTPMethod: "POST",
    45  		HTTPPath:   "/ChangeServerLifeCycleState",
    46  	}
    47  
    48  	if input == nil {
    49  		input = &ChangeServerLifeCycleStateInput{}
    50  	}
    51  
    52  	output = &ChangeServerLifeCycleStateOutput{}
    53  	req = c.newRequest(op, input, output)
    54  	return
    55  }
    56  
    57  // ChangeServerLifeCycleState API operation for Application Migration Service.
    58  //
    59  // Allows the user to set the SourceServer.LifeCycle.state property for specific
    60  // Source Server IDs to one of the following: READY_FOR_TEST or READY_FOR_CUTOVER.
    61  // This command only works if the Source Server is already launchable (dataReplicationInfo.lagDuration
    62  // is not null.)
    63  //
    64  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
    65  // with awserr.Error's Code and Message methods to get detailed information about
    66  // the error.
    67  //
    68  // See the AWS API reference guide for Application Migration Service's
    69  // API operation ChangeServerLifeCycleState for usage and error information.
    70  //
    71  // Returned Error Types:
    72  //   * UninitializedAccountException
    73  //   Unitialized account exception.
    74  //
    75  //   * ResourceNotFoundException
    76  //   Resource not found exception.
    77  //
    78  //   * ValidationException
    79  //   Validate exception.
    80  //
    81  //   * ConflictException
    82  //   The request could not be completed due to a conflict with the current state
    83  //   of the target resource.
    84  //
    85  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/ChangeServerLifeCycleState
    86  func (c *Mgn) ChangeServerLifeCycleState(input *ChangeServerLifeCycleStateInput) (*ChangeServerLifeCycleStateOutput, error) {
    87  	req, out := c.ChangeServerLifeCycleStateRequest(input)
    88  	return out, req.Send()
    89  }
    90  
    91  // ChangeServerLifeCycleStateWithContext is the same as ChangeServerLifeCycleState with the addition of
    92  // the ability to pass a context and additional request options.
    93  //
    94  // See ChangeServerLifeCycleState for details on how to use this API operation.
    95  //
    96  // The context must be non-nil and will be used for request cancellation. If
    97  // the context is nil a panic will occur. In the future the SDK may create
    98  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
    99  // for more information on using Contexts.
   100  func (c *Mgn) ChangeServerLifeCycleStateWithContext(ctx aws.Context, input *ChangeServerLifeCycleStateInput, opts ...request.Option) (*ChangeServerLifeCycleStateOutput, error) {
   101  	req, out := c.ChangeServerLifeCycleStateRequest(input)
   102  	req.SetContext(ctx)
   103  	req.ApplyOptions(opts...)
   104  	return out, req.Send()
   105  }
   106  
   107  const opCreateReplicationConfigurationTemplate = "CreateReplicationConfigurationTemplate"
   108  
   109  // CreateReplicationConfigurationTemplateRequest generates a "aws/request.Request" representing the
   110  // client's request for the CreateReplicationConfigurationTemplate operation. The "output" return
   111  // value will be populated with the request's response once the request completes
   112  // successfully.
   113  //
   114  // Use "Send" method on the returned Request to send the API call to the service.
   115  // the "output" return value is not valid until after Send returns without error.
   116  //
   117  // See CreateReplicationConfigurationTemplate for more information on using the CreateReplicationConfigurationTemplate
   118  // API call, and error handling.
   119  //
   120  // This method is useful when you want to inject custom logic or configuration
   121  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   122  //
   123  //
   124  //    // Example sending a request using the CreateReplicationConfigurationTemplateRequest method.
   125  //    req, resp := client.CreateReplicationConfigurationTemplateRequest(params)
   126  //
   127  //    err := req.Send()
   128  //    if err == nil { // resp is now filled
   129  //        fmt.Println(resp)
   130  //    }
   131  //
   132  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/CreateReplicationConfigurationTemplate
   133  func (c *Mgn) CreateReplicationConfigurationTemplateRequest(input *CreateReplicationConfigurationTemplateInput) (req *request.Request, output *CreateReplicationConfigurationTemplateOutput) {
   134  	op := &request.Operation{
   135  		Name:       opCreateReplicationConfigurationTemplate,
   136  		HTTPMethod: "POST",
   137  		HTTPPath:   "/CreateReplicationConfigurationTemplate",
   138  	}
   139  
   140  	if input == nil {
   141  		input = &CreateReplicationConfigurationTemplateInput{}
   142  	}
   143  
   144  	output = &CreateReplicationConfigurationTemplateOutput{}
   145  	req = c.newRequest(op, input, output)
   146  	return
   147  }
   148  
   149  // CreateReplicationConfigurationTemplate API operation for Application Migration Service.
   150  //
   151  // Creates a new ReplicationConfigurationTemplate.
   152  //
   153  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   154  // with awserr.Error's Code and Message methods to get detailed information about
   155  // the error.
   156  //
   157  // See the AWS API reference guide for Application Migration Service's
   158  // API operation CreateReplicationConfigurationTemplate for usage and error information.
   159  //
   160  // Returned Error Types:
   161  //   * UninitializedAccountException
   162  //   Unitialized account exception.
   163  //
   164  //   * ValidationException
   165  //   Validate exception.
   166  //
   167  //   * AccessDeniedException
   168  //   Operating denied due to a file permission or access check error.
   169  //
   170  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/CreateReplicationConfigurationTemplate
   171  func (c *Mgn) CreateReplicationConfigurationTemplate(input *CreateReplicationConfigurationTemplateInput) (*CreateReplicationConfigurationTemplateOutput, error) {
   172  	req, out := c.CreateReplicationConfigurationTemplateRequest(input)
   173  	return out, req.Send()
   174  }
   175  
   176  // CreateReplicationConfigurationTemplateWithContext is the same as CreateReplicationConfigurationTemplate with the addition of
   177  // the ability to pass a context and additional request options.
   178  //
   179  // See CreateReplicationConfigurationTemplate for details on how to use this API operation.
   180  //
   181  // The context must be non-nil and will be used for request cancellation. If
   182  // the context is nil a panic will occur. In the future the SDK may create
   183  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   184  // for more information on using Contexts.
   185  func (c *Mgn) CreateReplicationConfigurationTemplateWithContext(ctx aws.Context, input *CreateReplicationConfigurationTemplateInput, opts ...request.Option) (*CreateReplicationConfigurationTemplateOutput, error) {
   186  	req, out := c.CreateReplicationConfigurationTemplateRequest(input)
   187  	req.SetContext(ctx)
   188  	req.ApplyOptions(opts...)
   189  	return out, req.Send()
   190  }
   191  
   192  const opDeleteJob = "DeleteJob"
   193  
   194  // DeleteJobRequest generates a "aws/request.Request" representing the
   195  // client's request for the DeleteJob operation. The "output" return
   196  // value will be populated with the request's response once the request completes
   197  // successfully.
   198  //
   199  // Use "Send" method on the returned Request to send the API call to the service.
   200  // the "output" return value is not valid until after Send returns without error.
   201  //
   202  // See DeleteJob for more information on using the DeleteJob
   203  // API call, and error handling.
   204  //
   205  // This method is useful when you want to inject custom logic or configuration
   206  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   207  //
   208  //
   209  //    // Example sending a request using the DeleteJobRequest method.
   210  //    req, resp := client.DeleteJobRequest(params)
   211  //
   212  //    err := req.Send()
   213  //    if err == nil { // resp is now filled
   214  //        fmt.Println(resp)
   215  //    }
   216  //
   217  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DeleteJob
   218  func (c *Mgn) DeleteJobRequest(input *DeleteJobInput) (req *request.Request, output *DeleteJobOutput) {
   219  	op := &request.Operation{
   220  		Name:       opDeleteJob,
   221  		HTTPMethod: "POST",
   222  		HTTPPath:   "/DeleteJob",
   223  	}
   224  
   225  	if input == nil {
   226  		input = &DeleteJobInput{}
   227  	}
   228  
   229  	output = &DeleteJobOutput{}
   230  	req = c.newRequest(op, input, output)
   231  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   232  	return
   233  }
   234  
   235  // DeleteJob API operation for Application Migration Service.
   236  //
   237  // Deletes a single Job by ID.
   238  //
   239  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   240  // with awserr.Error's Code and Message methods to get detailed information about
   241  // the error.
   242  //
   243  // See the AWS API reference guide for Application Migration Service's
   244  // API operation DeleteJob for usage and error information.
   245  //
   246  // Returned Error Types:
   247  //   * UninitializedAccountException
   248  //   Unitialized account exception.
   249  //
   250  //   * ResourceNotFoundException
   251  //   Resource not found exception.
   252  //
   253  //   * ConflictException
   254  //   The request could not be completed due to a conflict with the current state
   255  //   of the target resource.
   256  //
   257  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DeleteJob
   258  func (c *Mgn) DeleteJob(input *DeleteJobInput) (*DeleteJobOutput, error) {
   259  	req, out := c.DeleteJobRequest(input)
   260  	return out, req.Send()
   261  }
   262  
   263  // DeleteJobWithContext is the same as DeleteJob with the addition of
   264  // the ability to pass a context and additional request options.
   265  //
   266  // See DeleteJob for details on how to use this API operation.
   267  //
   268  // The context must be non-nil and will be used for request cancellation. If
   269  // the context is nil a panic will occur. In the future the SDK may create
   270  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   271  // for more information on using Contexts.
   272  func (c *Mgn) DeleteJobWithContext(ctx aws.Context, input *DeleteJobInput, opts ...request.Option) (*DeleteJobOutput, error) {
   273  	req, out := c.DeleteJobRequest(input)
   274  	req.SetContext(ctx)
   275  	req.ApplyOptions(opts...)
   276  	return out, req.Send()
   277  }
   278  
   279  const opDeleteReplicationConfigurationTemplate = "DeleteReplicationConfigurationTemplate"
   280  
   281  // DeleteReplicationConfigurationTemplateRequest generates a "aws/request.Request" representing the
   282  // client's request for the DeleteReplicationConfigurationTemplate operation. The "output" return
   283  // value will be populated with the request's response once the request completes
   284  // successfully.
   285  //
   286  // Use "Send" method on the returned Request to send the API call to the service.
   287  // the "output" return value is not valid until after Send returns without error.
   288  //
   289  // See DeleteReplicationConfigurationTemplate for more information on using the DeleteReplicationConfigurationTemplate
   290  // API call, and error handling.
   291  //
   292  // This method is useful when you want to inject custom logic or configuration
   293  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   294  //
   295  //
   296  //    // Example sending a request using the DeleteReplicationConfigurationTemplateRequest method.
   297  //    req, resp := client.DeleteReplicationConfigurationTemplateRequest(params)
   298  //
   299  //    err := req.Send()
   300  //    if err == nil { // resp is now filled
   301  //        fmt.Println(resp)
   302  //    }
   303  //
   304  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DeleteReplicationConfigurationTemplate
   305  func (c *Mgn) DeleteReplicationConfigurationTemplateRequest(input *DeleteReplicationConfigurationTemplateInput) (req *request.Request, output *DeleteReplicationConfigurationTemplateOutput) {
   306  	op := &request.Operation{
   307  		Name:       opDeleteReplicationConfigurationTemplate,
   308  		HTTPMethod: "POST",
   309  		HTTPPath:   "/DeleteReplicationConfigurationTemplate",
   310  	}
   311  
   312  	if input == nil {
   313  		input = &DeleteReplicationConfigurationTemplateInput{}
   314  	}
   315  
   316  	output = &DeleteReplicationConfigurationTemplateOutput{}
   317  	req = c.newRequest(op, input, output)
   318  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   319  	return
   320  }
   321  
   322  // DeleteReplicationConfigurationTemplate API operation for Application Migration Service.
   323  //
   324  // Deletes a single Replication Configuration Template by ID
   325  //
   326  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   327  // with awserr.Error's Code and Message methods to get detailed information about
   328  // the error.
   329  //
   330  // See the AWS API reference guide for Application Migration Service's
   331  // API operation DeleteReplicationConfigurationTemplate for usage and error information.
   332  //
   333  // Returned Error Types:
   334  //   * UninitializedAccountException
   335  //   Unitialized account exception.
   336  //
   337  //   * ResourceNotFoundException
   338  //   Resource not found exception.
   339  //
   340  //   * ConflictException
   341  //   The request could not be completed due to a conflict with the current state
   342  //   of the target resource.
   343  //
   344  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DeleteReplicationConfigurationTemplate
   345  func (c *Mgn) DeleteReplicationConfigurationTemplate(input *DeleteReplicationConfigurationTemplateInput) (*DeleteReplicationConfigurationTemplateOutput, error) {
   346  	req, out := c.DeleteReplicationConfigurationTemplateRequest(input)
   347  	return out, req.Send()
   348  }
   349  
   350  // DeleteReplicationConfigurationTemplateWithContext is the same as DeleteReplicationConfigurationTemplate with the addition of
   351  // the ability to pass a context and additional request options.
   352  //
   353  // See DeleteReplicationConfigurationTemplate for details on how to use this API operation.
   354  //
   355  // The context must be non-nil and will be used for request cancellation. If
   356  // the context is nil a panic will occur. In the future the SDK may create
   357  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   358  // for more information on using Contexts.
   359  func (c *Mgn) DeleteReplicationConfigurationTemplateWithContext(ctx aws.Context, input *DeleteReplicationConfigurationTemplateInput, opts ...request.Option) (*DeleteReplicationConfigurationTemplateOutput, error) {
   360  	req, out := c.DeleteReplicationConfigurationTemplateRequest(input)
   361  	req.SetContext(ctx)
   362  	req.ApplyOptions(opts...)
   363  	return out, req.Send()
   364  }
   365  
   366  const opDeleteSourceServer = "DeleteSourceServer"
   367  
   368  // DeleteSourceServerRequest generates a "aws/request.Request" representing the
   369  // client's request for the DeleteSourceServer operation. The "output" return
   370  // value will be populated with the request's response once the request completes
   371  // successfully.
   372  //
   373  // Use "Send" method on the returned Request to send the API call to the service.
   374  // the "output" return value is not valid until after Send returns without error.
   375  //
   376  // See DeleteSourceServer for more information on using the DeleteSourceServer
   377  // API call, and error handling.
   378  //
   379  // This method is useful when you want to inject custom logic or configuration
   380  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   381  //
   382  //
   383  //    // Example sending a request using the DeleteSourceServerRequest method.
   384  //    req, resp := client.DeleteSourceServerRequest(params)
   385  //
   386  //    err := req.Send()
   387  //    if err == nil { // resp is now filled
   388  //        fmt.Println(resp)
   389  //    }
   390  //
   391  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DeleteSourceServer
   392  func (c *Mgn) DeleteSourceServerRequest(input *DeleteSourceServerInput) (req *request.Request, output *DeleteSourceServerOutput) {
   393  	op := &request.Operation{
   394  		Name:       opDeleteSourceServer,
   395  		HTTPMethod: "POST",
   396  		HTTPPath:   "/DeleteSourceServer",
   397  	}
   398  
   399  	if input == nil {
   400  		input = &DeleteSourceServerInput{}
   401  	}
   402  
   403  	output = &DeleteSourceServerOutput{}
   404  	req = c.newRequest(op, input, output)
   405  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   406  	return
   407  }
   408  
   409  // DeleteSourceServer API operation for Application Migration Service.
   410  //
   411  // Deletes a single source server by ID.
   412  //
   413  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   414  // with awserr.Error's Code and Message methods to get detailed information about
   415  // the error.
   416  //
   417  // See the AWS API reference guide for Application Migration Service's
   418  // API operation DeleteSourceServer for usage and error information.
   419  //
   420  // Returned Error Types:
   421  //   * UninitializedAccountException
   422  //   Unitialized account exception.
   423  //
   424  //   * ResourceNotFoundException
   425  //   Resource not found exception.
   426  //
   427  //   * ConflictException
   428  //   The request could not be completed due to a conflict with the current state
   429  //   of the target resource.
   430  //
   431  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DeleteSourceServer
   432  func (c *Mgn) DeleteSourceServer(input *DeleteSourceServerInput) (*DeleteSourceServerOutput, error) {
   433  	req, out := c.DeleteSourceServerRequest(input)
   434  	return out, req.Send()
   435  }
   436  
   437  // DeleteSourceServerWithContext is the same as DeleteSourceServer with the addition of
   438  // the ability to pass a context and additional request options.
   439  //
   440  // See DeleteSourceServer for details on how to use this API operation.
   441  //
   442  // The context must be non-nil and will be used for request cancellation. If
   443  // the context is nil a panic will occur. In the future the SDK may create
   444  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   445  // for more information on using Contexts.
   446  func (c *Mgn) DeleteSourceServerWithContext(ctx aws.Context, input *DeleteSourceServerInput, opts ...request.Option) (*DeleteSourceServerOutput, error) {
   447  	req, out := c.DeleteSourceServerRequest(input)
   448  	req.SetContext(ctx)
   449  	req.ApplyOptions(opts...)
   450  	return out, req.Send()
   451  }
   452  
   453  const opDescribeJobLogItems = "DescribeJobLogItems"
   454  
   455  // DescribeJobLogItemsRequest generates a "aws/request.Request" representing the
   456  // client's request for the DescribeJobLogItems operation. The "output" return
   457  // value will be populated with the request's response once the request completes
   458  // successfully.
   459  //
   460  // Use "Send" method on the returned Request to send the API call to the service.
   461  // the "output" return value is not valid until after Send returns without error.
   462  //
   463  // See DescribeJobLogItems for more information on using the DescribeJobLogItems
   464  // API call, and error handling.
   465  //
   466  // This method is useful when you want to inject custom logic or configuration
   467  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   468  //
   469  //
   470  //    // Example sending a request using the DescribeJobLogItemsRequest method.
   471  //    req, resp := client.DescribeJobLogItemsRequest(params)
   472  //
   473  //    err := req.Send()
   474  //    if err == nil { // resp is now filled
   475  //        fmt.Println(resp)
   476  //    }
   477  //
   478  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DescribeJobLogItems
   479  func (c *Mgn) DescribeJobLogItemsRequest(input *DescribeJobLogItemsInput) (req *request.Request, output *DescribeJobLogItemsOutput) {
   480  	op := &request.Operation{
   481  		Name:       opDescribeJobLogItems,
   482  		HTTPMethod: "POST",
   483  		HTTPPath:   "/DescribeJobLogItems",
   484  		Paginator: &request.Paginator{
   485  			InputTokens:     []string{"nextToken"},
   486  			OutputTokens:    []string{"nextToken"},
   487  			LimitToken:      "maxResults",
   488  			TruncationToken: "",
   489  		},
   490  	}
   491  
   492  	if input == nil {
   493  		input = &DescribeJobLogItemsInput{}
   494  	}
   495  
   496  	output = &DescribeJobLogItemsOutput{}
   497  	req = c.newRequest(op, input, output)
   498  	return
   499  }
   500  
   501  // DescribeJobLogItems API operation for Application Migration Service.
   502  //
   503  // Retrieves detailed Job log with paging.
   504  //
   505  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   506  // with awserr.Error's Code and Message methods to get detailed information about
   507  // the error.
   508  //
   509  // See the AWS API reference guide for Application Migration Service's
   510  // API operation DescribeJobLogItems for usage and error information.
   511  //
   512  // Returned Error Types:
   513  //   * UninitializedAccountException
   514  //   Unitialized account exception.
   515  //
   516  //   * ValidationException
   517  //   Validate exception.
   518  //
   519  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DescribeJobLogItems
   520  func (c *Mgn) DescribeJobLogItems(input *DescribeJobLogItemsInput) (*DescribeJobLogItemsOutput, error) {
   521  	req, out := c.DescribeJobLogItemsRequest(input)
   522  	return out, req.Send()
   523  }
   524  
   525  // DescribeJobLogItemsWithContext is the same as DescribeJobLogItems with the addition of
   526  // the ability to pass a context and additional request options.
   527  //
   528  // See DescribeJobLogItems for details on how to use this API operation.
   529  //
   530  // The context must be non-nil and will be used for request cancellation. If
   531  // the context is nil a panic will occur. In the future the SDK may create
   532  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   533  // for more information on using Contexts.
   534  func (c *Mgn) DescribeJobLogItemsWithContext(ctx aws.Context, input *DescribeJobLogItemsInput, opts ...request.Option) (*DescribeJobLogItemsOutput, error) {
   535  	req, out := c.DescribeJobLogItemsRequest(input)
   536  	req.SetContext(ctx)
   537  	req.ApplyOptions(opts...)
   538  	return out, req.Send()
   539  }
   540  
   541  // DescribeJobLogItemsPages iterates over the pages of a DescribeJobLogItems operation,
   542  // calling the "fn" function with the response data for each page. To stop
   543  // iterating, return false from the fn function.
   544  //
   545  // See DescribeJobLogItems method for more information on how to use this operation.
   546  //
   547  // Note: This operation can generate multiple requests to a service.
   548  //
   549  //    // Example iterating over at most 3 pages of a DescribeJobLogItems operation.
   550  //    pageNum := 0
   551  //    err := client.DescribeJobLogItemsPages(params,
   552  //        func(page *mgn.DescribeJobLogItemsOutput, lastPage bool) bool {
   553  //            pageNum++
   554  //            fmt.Println(page)
   555  //            return pageNum <= 3
   556  //        })
   557  //
   558  func (c *Mgn) DescribeJobLogItemsPages(input *DescribeJobLogItemsInput, fn func(*DescribeJobLogItemsOutput, bool) bool) error {
   559  	return c.DescribeJobLogItemsPagesWithContext(aws.BackgroundContext(), input, fn)
   560  }
   561  
   562  // DescribeJobLogItemsPagesWithContext same as DescribeJobLogItemsPages except
   563  // it takes a Context and allows setting request options on the pages.
   564  //
   565  // The context must be non-nil and will be used for request cancellation. If
   566  // the context is nil a panic will occur. In the future the SDK may create
   567  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   568  // for more information on using Contexts.
   569  func (c *Mgn) DescribeJobLogItemsPagesWithContext(ctx aws.Context, input *DescribeJobLogItemsInput, fn func(*DescribeJobLogItemsOutput, bool) bool, opts ...request.Option) error {
   570  	p := request.Pagination{
   571  		NewRequest: func() (*request.Request, error) {
   572  			var inCpy *DescribeJobLogItemsInput
   573  			if input != nil {
   574  				tmp := *input
   575  				inCpy = &tmp
   576  			}
   577  			req, _ := c.DescribeJobLogItemsRequest(inCpy)
   578  			req.SetContext(ctx)
   579  			req.ApplyOptions(opts...)
   580  			return req, nil
   581  		},
   582  	}
   583  
   584  	for p.Next() {
   585  		if !fn(p.Page().(*DescribeJobLogItemsOutput), !p.HasNextPage()) {
   586  			break
   587  		}
   588  	}
   589  
   590  	return p.Err()
   591  }
   592  
   593  const opDescribeJobs = "DescribeJobs"
   594  
   595  // DescribeJobsRequest generates a "aws/request.Request" representing the
   596  // client's request for the DescribeJobs operation. The "output" return
   597  // value will be populated with the request's response once the request completes
   598  // successfully.
   599  //
   600  // Use "Send" method on the returned Request to send the API call to the service.
   601  // the "output" return value is not valid until after Send returns without error.
   602  //
   603  // See DescribeJobs for more information on using the DescribeJobs
   604  // API call, and error handling.
   605  //
   606  // This method is useful when you want to inject custom logic or configuration
   607  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   608  //
   609  //
   610  //    // Example sending a request using the DescribeJobsRequest method.
   611  //    req, resp := client.DescribeJobsRequest(params)
   612  //
   613  //    err := req.Send()
   614  //    if err == nil { // resp is now filled
   615  //        fmt.Println(resp)
   616  //    }
   617  //
   618  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DescribeJobs
   619  func (c *Mgn) DescribeJobsRequest(input *DescribeJobsInput) (req *request.Request, output *DescribeJobsOutput) {
   620  	op := &request.Operation{
   621  		Name:       opDescribeJobs,
   622  		HTTPMethod: "POST",
   623  		HTTPPath:   "/DescribeJobs",
   624  		Paginator: &request.Paginator{
   625  			InputTokens:     []string{"nextToken"},
   626  			OutputTokens:    []string{"nextToken"},
   627  			LimitToken:      "maxResults",
   628  			TruncationToken: "",
   629  		},
   630  	}
   631  
   632  	if input == nil {
   633  		input = &DescribeJobsInput{}
   634  	}
   635  
   636  	output = &DescribeJobsOutput{}
   637  	req = c.newRequest(op, input, output)
   638  	return
   639  }
   640  
   641  // DescribeJobs API operation for Application Migration Service.
   642  //
   643  // Returns a list of Jobs. Use the JobsID and fromDate and toData filters to
   644  // limit which jobs are returned. The response is sorted by creationDataTime
   645  // - latest date first. Jobs are normaly created by the StartTest, StartCutover,
   646  // and TerminateTargetInstances APIs. Jobs are also created by DiagnosticLaunch
   647  // and TerminateDiagnosticInstances, which are APIs available only to *Support*
   648  // and only used in response to relevant support tickets.
   649  //
   650  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   651  // with awserr.Error's Code and Message methods to get detailed information about
   652  // the error.
   653  //
   654  // See the AWS API reference guide for Application Migration Service's
   655  // API operation DescribeJobs for usage and error information.
   656  //
   657  // Returned Error Types:
   658  //   * UninitializedAccountException
   659  //   Unitialized account exception.
   660  //
   661  //   * ValidationException
   662  //   Validate exception.
   663  //
   664  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DescribeJobs
   665  func (c *Mgn) DescribeJobs(input *DescribeJobsInput) (*DescribeJobsOutput, error) {
   666  	req, out := c.DescribeJobsRequest(input)
   667  	return out, req.Send()
   668  }
   669  
   670  // DescribeJobsWithContext is the same as DescribeJobs with the addition of
   671  // the ability to pass a context and additional request options.
   672  //
   673  // See DescribeJobs for details on how to use this API operation.
   674  //
   675  // The context must be non-nil and will be used for request cancellation. If
   676  // the context is nil a panic will occur. In the future the SDK may create
   677  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   678  // for more information on using Contexts.
   679  func (c *Mgn) DescribeJobsWithContext(ctx aws.Context, input *DescribeJobsInput, opts ...request.Option) (*DescribeJobsOutput, error) {
   680  	req, out := c.DescribeJobsRequest(input)
   681  	req.SetContext(ctx)
   682  	req.ApplyOptions(opts...)
   683  	return out, req.Send()
   684  }
   685  
   686  // DescribeJobsPages iterates over the pages of a DescribeJobs operation,
   687  // calling the "fn" function with the response data for each page. To stop
   688  // iterating, return false from the fn function.
   689  //
   690  // See DescribeJobs method for more information on how to use this operation.
   691  //
   692  // Note: This operation can generate multiple requests to a service.
   693  //
   694  //    // Example iterating over at most 3 pages of a DescribeJobs operation.
   695  //    pageNum := 0
   696  //    err := client.DescribeJobsPages(params,
   697  //        func(page *mgn.DescribeJobsOutput, lastPage bool) bool {
   698  //            pageNum++
   699  //            fmt.Println(page)
   700  //            return pageNum <= 3
   701  //        })
   702  //
   703  func (c *Mgn) DescribeJobsPages(input *DescribeJobsInput, fn func(*DescribeJobsOutput, bool) bool) error {
   704  	return c.DescribeJobsPagesWithContext(aws.BackgroundContext(), input, fn)
   705  }
   706  
   707  // DescribeJobsPagesWithContext same as DescribeJobsPages except
   708  // it takes a Context and allows setting request options on the pages.
   709  //
   710  // The context must be non-nil and will be used for request cancellation. If
   711  // the context is nil a panic will occur. In the future the SDK may create
   712  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   713  // for more information on using Contexts.
   714  func (c *Mgn) DescribeJobsPagesWithContext(ctx aws.Context, input *DescribeJobsInput, fn func(*DescribeJobsOutput, bool) bool, opts ...request.Option) error {
   715  	p := request.Pagination{
   716  		NewRequest: func() (*request.Request, error) {
   717  			var inCpy *DescribeJobsInput
   718  			if input != nil {
   719  				tmp := *input
   720  				inCpy = &tmp
   721  			}
   722  			req, _ := c.DescribeJobsRequest(inCpy)
   723  			req.SetContext(ctx)
   724  			req.ApplyOptions(opts...)
   725  			return req, nil
   726  		},
   727  	}
   728  
   729  	for p.Next() {
   730  		if !fn(p.Page().(*DescribeJobsOutput), !p.HasNextPage()) {
   731  			break
   732  		}
   733  	}
   734  
   735  	return p.Err()
   736  }
   737  
   738  const opDescribeReplicationConfigurationTemplates = "DescribeReplicationConfigurationTemplates"
   739  
   740  // DescribeReplicationConfigurationTemplatesRequest generates a "aws/request.Request" representing the
   741  // client's request for the DescribeReplicationConfigurationTemplates operation. The "output" return
   742  // value will be populated with the request's response once the request completes
   743  // successfully.
   744  //
   745  // Use "Send" method on the returned Request to send the API call to the service.
   746  // the "output" return value is not valid until after Send returns without error.
   747  //
   748  // See DescribeReplicationConfigurationTemplates for more information on using the DescribeReplicationConfigurationTemplates
   749  // API call, and error handling.
   750  //
   751  // This method is useful when you want to inject custom logic or configuration
   752  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   753  //
   754  //
   755  //    // Example sending a request using the DescribeReplicationConfigurationTemplatesRequest method.
   756  //    req, resp := client.DescribeReplicationConfigurationTemplatesRequest(params)
   757  //
   758  //    err := req.Send()
   759  //    if err == nil { // resp is now filled
   760  //        fmt.Println(resp)
   761  //    }
   762  //
   763  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DescribeReplicationConfigurationTemplates
   764  func (c *Mgn) DescribeReplicationConfigurationTemplatesRequest(input *DescribeReplicationConfigurationTemplatesInput) (req *request.Request, output *DescribeReplicationConfigurationTemplatesOutput) {
   765  	op := &request.Operation{
   766  		Name:       opDescribeReplicationConfigurationTemplates,
   767  		HTTPMethod: "POST",
   768  		HTTPPath:   "/DescribeReplicationConfigurationTemplates",
   769  		Paginator: &request.Paginator{
   770  			InputTokens:     []string{"nextToken"},
   771  			OutputTokens:    []string{"nextToken"},
   772  			LimitToken:      "maxResults",
   773  			TruncationToken: "",
   774  		},
   775  	}
   776  
   777  	if input == nil {
   778  		input = &DescribeReplicationConfigurationTemplatesInput{}
   779  	}
   780  
   781  	output = &DescribeReplicationConfigurationTemplatesOutput{}
   782  	req = c.newRequest(op, input, output)
   783  	return
   784  }
   785  
   786  // DescribeReplicationConfigurationTemplates API operation for Application Migration Service.
   787  //
   788  // Lists all ReplicationConfigurationTemplates, filtered by Source Server IDs.
   789  //
   790  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   791  // with awserr.Error's Code and Message methods to get detailed information about
   792  // the error.
   793  //
   794  // See the AWS API reference guide for Application Migration Service's
   795  // API operation DescribeReplicationConfigurationTemplates for usage and error information.
   796  //
   797  // Returned Error Types:
   798  //   * UninitializedAccountException
   799  //   Unitialized account exception.
   800  //
   801  //   * ResourceNotFoundException
   802  //   Resource not found exception.
   803  //
   804  //   * ValidationException
   805  //   Validate exception.
   806  //
   807  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DescribeReplicationConfigurationTemplates
   808  func (c *Mgn) DescribeReplicationConfigurationTemplates(input *DescribeReplicationConfigurationTemplatesInput) (*DescribeReplicationConfigurationTemplatesOutput, error) {
   809  	req, out := c.DescribeReplicationConfigurationTemplatesRequest(input)
   810  	return out, req.Send()
   811  }
   812  
   813  // DescribeReplicationConfigurationTemplatesWithContext is the same as DescribeReplicationConfigurationTemplates with the addition of
   814  // the ability to pass a context and additional request options.
   815  //
   816  // See DescribeReplicationConfigurationTemplates for details on how to use this API operation.
   817  //
   818  // The context must be non-nil and will be used for request cancellation. If
   819  // the context is nil a panic will occur. In the future the SDK may create
   820  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   821  // for more information on using Contexts.
   822  func (c *Mgn) DescribeReplicationConfigurationTemplatesWithContext(ctx aws.Context, input *DescribeReplicationConfigurationTemplatesInput, opts ...request.Option) (*DescribeReplicationConfigurationTemplatesOutput, error) {
   823  	req, out := c.DescribeReplicationConfigurationTemplatesRequest(input)
   824  	req.SetContext(ctx)
   825  	req.ApplyOptions(opts...)
   826  	return out, req.Send()
   827  }
   828  
   829  // DescribeReplicationConfigurationTemplatesPages iterates over the pages of a DescribeReplicationConfigurationTemplates operation,
   830  // calling the "fn" function with the response data for each page. To stop
   831  // iterating, return false from the fn function.
   832  //
   833  // See DescribeReplicationConfigurationTemplates method for more information on how to use this operation.
   834  //
   835  // Note: This operation can generate multiple requests to a service.
   836  //
   837  //    // Example iterating over at most 3 pages of a DescribeReplicationConfigurationTemplates operation.
   838  //    pageNum := 0
   839  //    err := client.DescribeReplicationConfigurationTemplatesPages(params,
   840  //        func(page *mgn.DescribeReplicationConfigurationTemplatesOutput, lastPage bool) bool {
   841  //            pageNum++
   842  //            fmt.Println(page)
   843  //            return pageNum <= 3
   844  //        })
   845  //
   846  func (c *Mgn) DescribeReplicationConfigurationTemplatesPages(input *DescribeReplicationConfigurationTemplatesInput, fn func(*DescribeReplicationConfigurationTemplatesOutput, bool) bool) error {
   847  	return c.DescribeReplicationConfigurationTemplatesPagesWithContext(aws.BackgroundContext(), input, fn)
   848  }
   849  
   850  // DescribeReplicationConfigurationTemplatesPagesWithContext same as DescribeReplicationConfigurationTemplatesPages except
   851  // it takes a Context and allows setting request options on the pages.
   852  //
   853  // The context must be non-nil and will be used for request cancellation. If
   854  // the context is nil a panic will occur. In the future the SDK may create
   855  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   856  // for more information on using Contexts.
   857  func (c *Mgn) DescribeReplicationConfigurationTemplatesPagesWithContext(ctx aws.Context, input *DescribeReplicationConfigurationTemplatesInput, fn func(*DescribeReplicationConfigurationTemplatesOutput, bool) bool, opts ...request.Option) error {
   858  	p := request.Pagination{
   859  		NewRequest: func() (*request.Request, error) {
   860  			var inCpy *DescribeReplicationConfigurationTemplatesInput
   861  			if input != nil {
   862  				tmp := *input
   863  				inCpy = &tmp
   864  			}
   865  			req, _ := c.DescribeReplicationConfigurationTemplatesRequest(inCpy)
   866  			req.SetContext(ctx)
   867  			req.ApplyOptions(opts...)
   868  			return req, nil
   869  		},
   870  	}
   871  
   872  	for p.Next() {
   873  		if !fn(p.Page().(*DescribeReplicationConfigurationTemplatesOutput), !p.HasNextPage()) {
   874  			break
   875  		}
   876  	}
   877  
   878  	return p.Err()
   879  }
   880  
   881  const opDescribeSourceServers = "DescribeSourceServers"
   882  
   883  // DescribeSourceServersRequest generates a "aws/request.Request" representing the
   884  // client's request for the DescribeSourceServers operation. The "output" return
   885  // value will be populated with the request's response once the request completes
   886  // successfully.
   887  //
   888  // Use "Send" method on the returned Request to send the API call to the service.
   889  // the "output" return value is not valid until after Send returns without error.
   890  //
   891  // See DescribeSourceServers for more information on using the DescribeSourceServers
   892  // API call, and error handling.
   893  //
   894  // This method is useful when you want to inject custom logic or configuration
   895  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   896  //
   897  //
   898  //    // Example sending a request using the DescribeSourceServersRequest method.
   899  //    req, resp := client.DescribeSourceServersRequest(params)
   900  //
   901  //    err := req.Send()
   902  //    if err == nil { // resp is now filled
   903  //        fmt.Println(resp)
   904  //    }
   905  //
   906  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DescribeSourceServers
   907  func (c *Mgn) DescribeSourceServersRequest(input *DescribeSourceServersInput) (req *request.Request, output *DescribeSourceServersOutput) {
   908  	op := &request.Operation{
   909  		Name:       opDescribeSourceServers,
   910  		HTTPMethod: "POST",
   911  		HTTPPath:   "/DescribeSourceServers",
   912  		Paginator: &request.Paginator{
   913  			InputTokens:     []string{"nextToken"},
   914  			OutputTokens:    []string{"nextToken"},
   915  			LimitToken:      "maxResults",
   916  			TruncationToken: "",
   917  		},
   918  	}
   919  
   920  	if input == nil {
   921  		input = &DescribeSourceServersInput{}
   922  	}
   923  
   924  	output = &DescribeSourceServersOutput{}
   925  	req = c.newRequest(op, input, output)
   926  	return
   927  }
   928  
   929  // DescribeSourceServers API operation for Application Migration Service.
   930  //
   931  // Retrieves all SourceServers or multiple SourceServers by ID.
   932  //
   933  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   934  // with awserr.Error's Code and Message methods to get detailed information about
   935  // the error.
   936  //
   937  // See the AWS API reference guide for Application Migration Service's
   938  // API operation DescribeSourceServers for usage and error information.
   939  //
   940  // Returned Error Types:
   941  //   * UninitializedAccountException
   942  //   Unitialized account exception.
   943  //
   944  //   * ValidationException
   945  //   Validate exception.
   946  //
   947  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DescribeSourceServers
   948  func (c *Mgn) DescribeSourceServers(input *DescribeSourceServersInput) (*DescribeSourceServersOutput, error) {
   949  	req, out := c.DescribeSourceServersRequest(input)
   950  	return out, req.Send()
   951  }
   952  
   953  // DescribeSourceServersWithContext is the same as DescribeSourceServers with the addition of
   954  // the ability to pass a context and additional request options.
   955  //
   956  // See DescribeSourceServers for details on how to use this API operation.
   957  //
   958  // The context must be non-nil and will be used for request cancellation. If
   959  // the context is nil a panic will occur. In the future the SDK may create
   960  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   961  // for more information on using Contexts.
   962  func (c *Mgn) DescribeSourceServersWithContext(ctx aws.Context, input *DescribeSourceServersInput, opts ...request.Option) (*DescribeSourceServersOutput, error) {
   963  	req, out := c.DescribeSourceServersRequest(input)
   964  	req.SetContext(ctx)
   965  	req.ApplyOptions(opts...)
   966  	return out, req.Send()
   967  }
   968  
   969  // DescribeSourceServersPages iterates over the pages of a DescribeSourceServers operation,
   970  // calling the "fn" function with the response data for each page. To stop
   971  // iterating, return false from the fn function.
   972  //
   973  // See DescribeSourceServers method for more information on how to use this operation.
   974  //
   975  // Note: This operation can generate multiple requests to a service.
   976  //
   977  //    // Example iterating over at most 3 pages of a DescribeSourceServers operation.
   978  //    pageNum := 0
   979  //    err := client.DescribeSourceServersPages(params,
   980  //        func(page *mgn.DescribeSourceServersOutput, lastPage bool) bool {
   981  //            pageNum++
   982  //            fmt.Println(page)
   983  //            return pageNum <= 3
   984  //        })
   985  //
   986  func (c *Mgn) DescribeSourceServersPages(input *DescribeSourceServersInput, fn func(*DescribeSourceServersOutput, bool) bool) error {
   987  	return c.DescribeSourceServersPagesWithContext(aws.BackgroundContext(), input, fn)
   988  }
   989  
   990  // DescribeSourceServersPagesWithContext same as DescribeSourceServersPages except
   991  // it takes a Context and allows setting request options on the pages.
   992  //
   993  // The context must be non-nil and will be used for request cancellation. If
   994  // the context is nil a panic will occur. In the future the SDK may create
   995  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   996  // for more information on using Contexts.
   997  func (c *Mgn) DescribeSourceServersPagesWithContext(ctx aws.Context, input *DescribeSourceServersInput, fn func(*DescribeSourceServersOutput, bool) bool, opts ...request.Option) error {
   998  	p := request.Pagination{
   999  		NewRequest: func() (*request.Request, error) {
  1000  			var inCpy *DescribeSourceServersInput
  1001  			if input != nil {
  1002  				tmp := *input
  1003  				inCpy = &tmp
  1004  			}
  1005  			req, _ := c.DescribeSourceServersRequest(inCpy)
  1006  			req.SetContext(ctx)
  1007  			req.ApplyOptions(opts...)
  1008  			return req, nil
  1009  		},
  1010  	}
  1011  
  1012  	for p.Next() {
  1013  		if !fn(p.Page().(*DescribeSourceServersOutput), !p.HasNextPage()) {
  1014  			break
  1015  		}
  1016  	}
  1017  
  1018  	return p.Err()
  1019  }
  1020  
  1021  const opDisconnectFromService = "DisconnectFromService"
  1022  
  1023  // DisconnectFromServiceRequest generates a "aws/request.Request" representing the
  1024  // client's request for the DisconnectFromService operation. The "output" return
  1025  // value will be populated with the request's response once the request completes
  1026  // successfully.
  1027  //
  1028  // Use "Send" method on the returned Request to send the API call to the service.
  1029  // the "output" return value is not valid until after Send returns without error.
  1030  //
  1031  // See DisconnectFromService for more information on using the DisconnectFromService
  1032  // API call, and error handling.
  1033  //
  1034  // This method is useful when you want to inject custom logic or configuration
  1035  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1036  //
  1037  //
  1038  //    // Example sending a request using the DisconnectFromServiceRequest method.
  1039  //    req, resp := client.DisconnectFromServiceRequest(params)
  1040  //
  1041  //    err := req.Send()
  1042  //    if err == nil { // resp is now filled
  1043  //        fmt.Println(resp)
  1044  //    }
  1045  //
  1046  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DisconnectFromService
  1047  func (c *Mgn) DisconnectFromServiceRequest(input *DisconnectFromServiceInput) (req *request.Request, output *DisconnectFromServiceOutput) {
  1048  	op := &request.Operation{
  1049  		Name:       opDisconnectFromService,
  1050  		HTTPMethod: "POST",
  1051  		HTTPPath:   "/DisconnectFromService",
  1052  	}
  1053  
  1054  	if input == nil {
  1055  		input = &DisconnectFromServiceInput{}
  1056  	}
  1057  
  1058  	output = &DisconnectFromServiceOutput{}
  1059  	req = c.newRequest(op, input, output)
  1060  	return
  1061  }
  1062  
  1063  // DisconnectFromService API operation for Application Migration Service.
  1064  //
  1065  // Disconnects specific Source Servers from Application Migration Service. Data
  1066  // replication is stopped immediately. All AWS resources created by Application
  1067  // Migration Service for enabling the replication of these source servers will
  1068  // be terminated / deleted within 90 minutes. Launched Test or Cutover instances
  1069  // will NOT be terminated. If the agent on the source server has not been prevented
  1070  // from communciating with the Application Migration Service service, then it
  1071  // will receive a command to uninstall itself (within approximately 10 minutes).
  1072  // The following properties of the SourceServer will be changed immediately:
  1073  // dataReplicationInfo.dataReplicationState will be set to DISCONNECTED; The
  1074  // totalStorageBytes property for each of dataReplicationInfo.replicatedDisks
  1075  // will be set to zero; dataReplicationInfo.lagDuration and dataReplicationInfo.lagDurationwill
  1076  // be nullified.
  1077  //
  1078  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1079  // with awserr.Error's Code and Message methods to get detailed information about
  1080  // the error.
  1081  //
  1082  // See the AWS API reference guide for Application Migration Service's
  1083  // API operation DisconnectFromService for usage and error information.
  1084  //
  1085  // Returned Error Types:
  1086  //   * UninitializedAccountException
  1087  //   Unitialized account exception.
  1088  //
  1089  //   * ResourceNotFoundException
  1090  //   Resource not found exception.
  1091  //
  1092  //   * ConflictException
  1093  //   The request could not be completed due to a conflict with the current state
  1094  //   of the target resource.
  1095  //
  1096  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DisconnectFromService
  1097  func (c *Mgn) DisconnectFromService(input *DisconnectFromServiceInput) (*DisconnectFromServiceOutput, error) {
  1098  	req, out := c.DisconnectFromServiceRequest(input)
  1099  	return out, req.Send()
  1100  }
  1101  
  1102  // DisconnectFromServiceWithContext is the same as DisconnectFromService with the addition of
  1103  // the ability to pass a context and additional request options.
  1104  //
  1105  // See DisconnectFromService for details on how to use this API operation.
  1106  //
  1107  // The context must be non-nil and will be used for request cancellation. If
  1108  // the context is nil a panic will occur. In the future the SDK may create
  1109  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1110  // for more information on using Contexts.
  1111  func (c *Mgn) DisconnectFromServiceWithContext(ctx aws.Context, input *DisconnectFromServiceInput, opts ...request.Option) (*DisconnectFromServiceOutput, error) {
  1112  	req, out := c.DisconnectFromServiceRequest(input)
  1113  	req.SetContext(ctx)
  1114  	req.ApplyOptions(opts...)
  1115  	return out, req.Send()
  1116  }
  1117  
  1118  const opFinalizeCutover = "FinalizeCutover"
  1119  
  1120  // FinalizeCutoverRequest generates a "aws/request.Request" representing the
  1121  // client's request for the FinalizeCutover operation. The "output" return
  1122  // value will be populated with the request's response once the request completes
  1123  // successfully.
  1124  //
  1125  // Use "Send" method on the returned Request to send the API call to the service.
  1126  // the "output" return value is not valid until after Send returns without error.
  1127  //
  1128  // See FinalizeCutover for more information on using the FinalizeCutover
  1129  // API call, and error handling.
  1130  //
  1131  // This method is useful when you want to inject custom logic or configuration
  1132  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1133  //
  1134  //
  1135  //    // Example sending a request using the FinalizeCutoverRequest method.
  1136  //    req, resp := client.FinalizeCutoverRequest(params)
  1137  //
  1138  //    err := req.Send()
  1139  //    if err == nil { // resp is now filled
  1140  //        fmt.Println(resp)
  1141  //    }
  1142  //
  1143  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/FinalizeCutover
  1144  func (c *Mgn) FinalizeCutoverRequest(input *FinalizeCutoverInput) (req *request.Request, output *FinalizeCutoverOutput) {
  1145  	op := &request.Operation{
  1146  		Name:       opFinalizeCutover,
  1147  		HTTPMethod: "POST",
  1148  		HTTPPath:   "/FinalizeCutover",
  1149  	}
  1150  
  1151  	if input == nil {
  1152  		input = &FinalizeCutoverInput{}
  1153  	}
  1154  
  1155  	output = &FinalizeCutoverOutput{}
  1156  	req = c.newRequest(op, input, output)
  1157  	return
  1158  }
  1159  
  1160  // FinalizeCutover API operation for Application Migration Service.
  1161  //
  1162  // Finalizes the cutover immediately for specific Source Servers. All AWS resources
  1163  // created by Application Migration Service for enabling the replication of
  1164  // these source servers will be terminated / deleted within 90 minutes. Launched
  1165  // Test or Cutover instances will NOT be terminated. The AWS Replication Agent
  1166  // will receive a command to uninstall itself (within 10 minutes). The following
  1167  // properties of the SourceServer will be changed immediately: dataReplicationInfo.dataReplicationState
  1168  // will be to DISCONNECTED; The SourceServer.lifeCycle.state will be changed
  1169  // to CUTOVER; The totalStorageBytes property fo each of dataReplicationInfo.replicatedDisks
  1170  // will be set to zero; dataReplicationInfo.lagDuration and dataReplicationInfo.lagDurationwill
  1171  // be nullified.
  1172  //
  1173  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1174  // with awserr.Error's Code and Message methods to get detailed information about
  1175  // the error.
  1176  //
  1177  // See the AWS API reference guide for Application Migration Service's
  1178  // API operation FinalizeCutover for usage and error information.
  1179  //
  1180  // Returned Error Types:
  1181  //   * UninitializedAccountException
  1182  //   Unitialized account exception.
  1183  //
  1184  //   * ResourceNotFoundException
  1185  //   Resource not found exception.
  1186  //
  1187  //   * ValidationException
  1188  //   Validate exception.
  1189  //
  1190  //   * ConflictException
  1191  //   The request could not be completed due to a conflict with the current state
  1192  //   of the target resource.
  1193  //
  1194  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/FinalizeCutover
  1195  func (c *Mgn) FinalizeCutover(input *FinalizeCutoverInput) (*FinalizeCutoverOutput, error) {
  1196  	req, out := c.FinalizeCutoverRequest(input)
  1197  	return out, req.Send()
  1198  }
  1199  
  1200  // FinalizeCutoverWithContext is the same as FinalizeCutover with the addition of
  1201  // the ability to pass a context and additional request options.
  1202  //
  1203  // See FinalizeCutover for details on how to use this API operation.
  1204  //
  1205  // The context must be non-nil and will be used for request cancellation. If
  1206  // the context is nil a panic will occur. In the future the SDK may create
  1207  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1208  // for more information on using Contexts.
  1209  func (c *Mgn) FinalizeCutoverWithContext(ctx aws.Context, input *FinalizeCutoverInput, opts ...request.Option) (*FinalizeCutoverOutput, error) {
  1210  	req, out := c.FinalizeCutoverRequest(input)
  1211  	req.SetContext(ctx)
  1212  	req.ApplyOptions(opts...)
  1213  	return out, req.Send()
  1214  }
  1215  
  1216  const opGetLaunchConfiguration = "GetLaunchConfiguration"
  1217  
  1218  // GetLaunchConfigurationRequest generates a "aws/request.Request" representing the
  1219  // client's request for the GetLaunchConfiguration operation. The "output" return
  1220  // value will be populated with the request's response once the request completes
  1221  // successfully.
  1222  //
  1223  // Use "Send" method on the returned Request to send the API call to the service.
  1224  // the "output" return value is not valid until after Send returns without error.
  1225  //
  1226  // See GetLaunchConfiguration for more information on using the GetLaunchConfiguration
  1227  // API call, and error handling.
  1228  //
  1229  // This method is useful when you want to inject custom logic or configuration
  1230  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1231  //
  1232  //
  1233  //    // Example sending a request using the GetLaunchConfigurationRequest method.
  1234  //    req, resp := client.GetLaunchConfigurationRequest(params)
  1235  //
  1236  //    err := req.Send()
  1237  //    if err == nil { // resp is now filled
  1238  //        fmt.Println(resp)
  1239  //    }
  1240  //
  1241  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/GetLaunchConfiguration
  1242  func (c *Mgn) GetLaunchConfigurationRequest(input *GetLaunchConfigurationInput) (req *request.Request, output *GetLaunchConfigurationOutput) {
  1243  	op := &request.Operation{
  1244  		Name:       opGetLaunchConfiguration,
  1245  		HTTPMethod: "POST",
  1246  		HTTPPath:   "/GetLaunchConfiguration",
  1247  	}
  1248  
  1249  	if input == nil {
  1250  		input = &GetLaunchConfigurationInput{}
  1251  	}
  1252  
  1253  	output = &GetLaunchConfigurationOutput{}
  1254  	req = c.newRequest(op, input, output)
  1255  	return
  1256  }
  1257  
  1258  // GetLaunchConfiguration API operation for Application Migration Service.
  1259  //
  1260  // Lists all LaunchConfigurations available, filtered by Source Server IDs.
  1261  //
  1262  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1263  // with awserr.Error's Code and Message methods to get detailed information about
  1264  // the error.
  1265  //
  1266  // See the AWS API reference guide for Application Migration Service's
  1267  // API operation GetLaunchConfiguration for usage and error information.
  1268  //
  1269  // Returned Error Types:
  1270  //   * UninitializedAccountException
  1271  //   Unitialized account exception.
  1272  //
  1273  //   * ResourceNotFoundException
  1274  //   Resource not found exception.
  1275  //
  1276  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/GetLaunchConfiguration
  1277  func (c *Mgn) GetLaunchConfiguration(input *GetLaunchConfigurationInput) (*GetLaunchConfigurationOutput, error) {
  1278  	req, out := c.GetLaunchConfigurationRequest(input)
  1279  	return out, req.Send()
  1280  }
  1281  
  1282  // GetLaunchConfigurationWithContext is the same as GetLaunchConfiguration with the addition of
  1283  // the ability to pass a context and additional request options.
  1284  //
  1285  // See GetLaunchConfiguration for details on how to use this API operation.
  1286  //
  1287  // The context must be non-nil and will be used for request cancellation. If
  1288  // the context is nil a panic will occur. In the future the SDK may create
  1289  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1290  // for more information on using Contexts.
  1291  func (c *Mgn) GetLaunchConfigurationWithContext(ctx aws.Context, input *GetLaunchConfigurationInput, opts ...request.Option) (*GetLaunchConfigurationOutput, error) {
  1292  	req, out := c.GetLaunchConfigurationRequest(input)
  1293  	req.SetContext(ctx)
  1294  	req.ApplyOptions(opts...)
  1295  	return out, req.Send()
  1296  }
  1297  
  1298  const opGetReplicationConfiguration = "GetReplicationConfiguration"
  1299  
  1300  // GetReplicationConfigurationRequest generates a "aws/request.Request" representing the
  1301  // client's request for the GetReplicationConfiguration operation. The "output" return
  1302  // value will be populated with the request's response once the request completes
  1303  // successfully.
  1304  //
  1305  // Use "Send" method on the returned Request to send the API call to the service.
  1306  // the "output" return value is not valid until after Send returns without error.
  1307  //
  1308  // See GetReplicationConfiguration for more information on using the GetReplicationConfiguration
  1309  // API call, and error handling.
  1310  //
  1311  // This method is useful when you want to inject custom logic or configuration
  1312  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1313  //
  1314  //
  1315  //    // Example sending a request using the GetReplicationConfigurationRequest method.
  1316  //    req, resp := client.GetReplicationConfigurationRequest(params)
  1317  //
  1318  //    err := req.Send()
  1319  //    if err == nil { // resp is now filled
  1320  //        fmt.Println(resp)
  1321  //    }
  1322  //
  1323  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/GetReplicationConfiguration
  1324  func (c *Mgn) GetReplicationConfigurationRequest(input *GetReplicationConfigurationInput) (req *request.Request, output *GetReplicationConfigurationOutput) {
  1325  	op := &request.Operation{
  1326  		Name:       opGetReplicationConfiguration,
  1327  		HTTPMethod: "POST",
  1328  		HTTPPath:   "/GetReplicationConfiguration",
  1329  	}
  1330  
  1331  	if input == nil {
  1332  		input = &GetReplicationConfigurationInput{}
  1333  	}
  1334  
  1335  	output = &GetReplicationConfigurationOutput{}
  1336  	req = c.newRequest(op, input, output)
  1337  	return
  1338  }
  1339  
  1340  // GetReplicationConfiguration API operation for Application Migration Service.
  1341  //
  1342  // Lists all ReplicationConfigurations, filtered by Source Server ID.
  1343  //
  1344  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1345  // with awserr.Error's Code and Message methods to get detailed information about
  1346  // the error.
  1347  //
  1348  // See the AWS API reference guide for Application Migration Service's
  1349  // API operation GetReplicationConfiguration for usage and error information.
  1350  //
  1351  // Returned Error Types:
  1352  //   * UninitializedAccountException
  1353  //   Unitialized account exception.
  1354  //
  1355  //   * ResourceNotFoundException
  1356  //   Resource not found exception.
  1357  //
  1358  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/GetReplicationConfiguration
  1359  func (c *Mgn) GetReplicationConfiguration(input *GetReplicationConfigurationInput) (*GetReplicationConfigurationOutput, error) {
  1360  	req, out := c.GetReplicationConfigurationRequest(input)
  1361  	return out, req.Send()
  1362  }
  1363  
  1364  // GetReplicationConfigurationWithContext is the same as GetReplicationConfiguration with the addition of
  1365  // the ability to pass a context and additional request options.
  1366  //
  1367  // See GetReplicationConfiguration for details on how to use this API operation.
  1368  //
  1369  // The context must be non-nil and will be used for request cancellation. If
  1370  // the context is nil a panic will occur. In the future the SDK may create
  1371  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1372  // for more information on using Contexts.
  1373  func (c *Mgn) GetReplicationConfigurationWithContext(ctx aws.Context, input *GetReplicationConfigurationInput, opts ...request.Option) (*GetReplicationConfigurationOutput, error) {
  1374  	req, out := c.GetReplicationConfigurationRequest(input)
  1375  	req.SetContext(ctx)
  1376  	req.ApplyOptions(opts...)
  1377  	return out, req.Send()
  1378  }
  1379  
  1380  const opInitializeService = "InitializeService"
  1381  
  1382  // InitializeServiceRequest generates a "aws/request.Request" representing the
  1383  // client's request for the InitializeService operation. The "output" return
  1384  // value will be populated with the request's response once the request completes
  1385  // successfully.
  1386  //
  1387  // Use "Send" method on the returned Request to send the API call to the service.
  1388  // the "output" return value is not valid until after Send returns without error.
  1389  //
  1390  // See InitializeService for more information on using the InitializeService
  1391  // API call, and error handling.
  1392  //
  1393  // This method is useful when you want to inject custom logic or configuration
  1394  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1395  //
  1396  //
  1397  //    // Example sending a request using the InitializeServiceRequest method.
  1398  //    req, resp := client.InitializeServiceRequest(params)
  1399  //
  1400  //    err := req.Send()
  1401  //    if err == nil { // resp is now filled
  1402  //        fmt.Println(resp)
  1403  //    }
  1404  //
  1405  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/InitializeService
  1406  func (c *Mgn) InitializeServiceRequest(input *InitializeServiceInput) (req *request.Request, output *InitializeServiceOutput) {
  1407  	op := &request.Operation{
  1408  		Name:       opInitializeService,
  1409  		HTTPMethod: "POST",
  1410  		HTTPPath:   "/InitializeService",
  1411  	}
  1412  
  1413  	if input == nil {
  1414  		input = &InitializeServiceInput{}
  1415  	}
  1416  
  1417  	output = &InitializeServiceOutput{}
  1418  	req = c.newRequest(op, input, output)
  1419  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1420  	return
  1421  }
  1422  
  1423  // InitializeService API operation for Application Migration Service.
  1424  //
  1425  // Initialize Application Migration Service.
  1426  //
  1427  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1428  // with awserr.Error's Code and Message methods to get detailed information about
  1429  // the error.
  1430  //
  1431  // See the AWS API reference guide for Application Migration Service's
  1432  // API operation InitializeService for usage and error information.
  1433  //
  1434  // Returned Error Types:
  1435  //   * ValidationException
  1436  //   Validate exception.
  1437  //
  1438  //   * AccessDeniedException
  1439  //   Operating denied due to a file permission or access check error.
  1440  //
  1441  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/InitializeService
  1442  func (c *Mgn) InitializeService(input *InitializeServiceInput) (*InitializeServiceOutput, error) {
  1443  	req, out := c.InitializeServiceRequest(input)
  1444  	return out, req.Send()
  1445  }
  1446  
  1447  // InitializeServiceWithContext is the same as InitializeService with the addition of
  1448  // the ability to pass a context and additional request options.
  1449  //
  1450  // See InitializeService for details on how to use this API operation.
  1451  //
  1452  // The context must be non-nil and will be used for request cancellation. If
  1453  // the context is nil a panic will occur. In the future the SDK may create
  1454  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1455  // for more information on using Contexts.
  1456  func (c *Mgn) InitializeServiceWithContext(ctx aws.Context, input *InitializeServiceInput, opts ...request.Option) (*InitializeServiceOutput, error) {
  1457  	req, out := c.InitializeServiceRequest(input)
  1458  	req.SetContext(ctx)
  1459  	req.ApplyOptions(opts...)
  1460  	return out, req.Send()
  1461  }
  1462  
  1463  const opListTagsForResource = "ListTagsForResource"
  1464  
  1465  // ListTagsForResourceRequest generates a "aws/request.Request" representing the
  1466  // client's request for the ListTagsForResource operation. The "output" return
  1467  // value will be populated with the request's response once the request completes
  1468  // successfully.
  1469  //
  1470  // Use "Send" method on the returned Request to send the API call to the service.
  1471  // the "output" return value is not valid until after Send returns without error.
  1472  //
  1473  // See ListTagsForResource for more information on using the ListTagsForResource
  1474  // API call, and error handling.
  1475  //
  1476  // This method is useful when you want to inject custom logic or configuration
  1477  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1478  //
  1479  //
  1480  //    // Example sending a request using the ListTagsForResourceRequest method.
  1481  //    req, resp := client.ListTagsForResourceRequest(params)
  1482  //
  1483  //    err := req.Send()
  1484  //    if err == nil { // resp is now filled
  1485  //        fmt.Println(resp)
  1486  //    }
  1487  //
  1488  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/ListTagsForResource
  1489  func (c *Mgn) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
  1490  	op := &request.Operation{
  1491  		Name:       opListTagsForResource,
  1492  		HTTPMethod: "GET",
  1493  		HTTPPath:   "/tags/{resourceArn}",
  1494  	}
  1495  
  1496  	if input == nil {
  1497  		input = &ListTagsForResourceInput{}
  1498  	}
  1499  
  1500  	output = &ListTagsForResourceOutput{}
  1501  	req = c.newRequest(op, input, output)
  1502  	return
  1503  }
  1504  
  1505  // ListTagsForResource API operation for Application Migration Service.
  1506  //
  1507  // List all tags for your Application Migration Service resources.
  1508  //
  1509  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1510  // with awserr.Error's Code and Message methods to get detailed information about
  1511  // the error.
  1512  //
  1513  // See the AWS API reference guide for Application Migration Service's
  1514  // API operation ListTagsForResource for usage and error information.
  1515  //
  1516  // Returned Error Types:
  1517  //   * ResourceNotFoundException
  1518  //   Resource not found exception.
  1519  //
  1520  //   * ThrottlingException
  1521  //   Reached throttling quota exception.
  1522  //
  1523  //   * ValidationException
  1524  //   Validate exception.
  1525  //
  1526  //   * AccessDeniedException
  1527  //   Operating denied due to a file permission or access check error.
  1528  //
  1529  //   * InternalServerException
  1530  //   The server encountered an unexpected condition that prevented it from fulfilling
  1531  //   the request.
  1532  //
  1533  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/ListTagsForResource
  1534  func (c *Mgn) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
  1535  	req, out := c.ListTagsForResourceRequest(input)
  1536  	return out, req.Send()
  1537  }
  1538  
  1539  // ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
  1540  // the ability to pass a context and additional request options.
  1541  //
  1542  // See ListTagsForResource for details on how to use this API operation.
  1543  //
  1544  // The context must be non-nil and will be used for request cancellation. If
  1545  // the context is nil a panic will occur. In the future the SDK may create
  1546  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1547  // for more information on using Contexts.
  1548  func (c *Mgn) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
  1549  	req, out := c.ListTagsForResourceRequest(input)
  1550  	req.SetContext(ctx)
  1551  	req.ApplyOptions(opts...)
  1552  	return out, req.Send()
  1553  }
  1554  
  1555  const opMarkAsArchived = "MarkAsArchived"
  1556  
  1557  // MarkAsArchivedRequest generates a "aws/request.Request" representing the
  1558  // client's request for the MarkAsArchived operation. The "output" return
  1559  // value will be populated with the request's response once the request completes
  1560  // successfully.
  1561  //
  1562  // Use "Send" method on the returned Request to send the API call to the service.
  1563  // the "output" return value is not valid until after Send returns without error.
  1564  //
  1565  // See MarkAsArchived for more information on using the MarkAsArchived
  1566  // API call, and error handling.
  1567  //
  1568  // This method is useful when you want to inject custom logic or configuration
  1569  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1570  //
  1571  //
  1572  //    // Example sending a request using the MarkAsArchivedRequest method.
  1573  //    req, resp := client.MarkAsArchivedRequest(params)
  1574  //
  1575  //    err := req.Send()
  1576  //    if err == nil { // resp is now filled
  1577  //        fmt.Println(resp)
  1578  //    }
  1579  //
  1580  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/MarkAsArchived
  1581  func (c *Mgn) MarkAsArchivedRequest(input *MarkAsArchivedInput) (req *request.Request, output *MarkAsArchivedOutput) {
  1582  	op := &request.Operation{
  1583  		Name:       opMarkAsArchived,
  1584  		HTTPMethod: "POST",
  1585  		HTTPPath:   "/MarkAsArchived",
  1586  	}
  1587  
  1588  	if input == nil {
  1589  		input = &MarkAsArchivedInput{}
  1590  	}
  1591  
  1592  	output = &MarkAsArchivedOutput{}
  1593  	req = c.newRequest(op, input, output)
  1594  	return
  1595  }
  1596  
  1597  // MarkAsArchived API operation for Application Migration Service.
  1598  //
  1599  // Archives specific Source Servers by setting the SourceServer.isArchived property
  1600  // to true for specified SourceServers by ID. This command only works for SourceServers
  1601  // with a lifecycle.state which equals DISCONNECTED or CUTOVER.
  1602  //
  1603  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1604  // with awserr.Error's Code and Message methods to get detailed information about
  1605  // the error.
  1606  //
  1607  // See the AWS API reference guide for Application Migration Service's
  1608  // API operation MarkAsArchived for usage and error information.
  1609  //
  1610  // Returned Error Types:
  1611  //   * UninitializedAccountException
  1612  //   Unitialized account exception.
  1613  //
  1614  //   * ResourceNotFoundException
  1615  //   Resource not found exception.
  1616  //
  1617  //   * ConflictException
  1618  //   The request could not be completed due to a conflict with the current state
  1619  //   of the target resource.
  1620  //
  1621  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/MarkAsArchived
  1622  func (c *Mgn) MarkAsArchived(input *MarkAsArchivedInput) (*MarkAsArchivedOutput, error) {
  1623  	req, out := c.MarkAsArchivedRequest(input)
  1624  	return out, req.Send()
  1625  }
  1626  
  1627  // MarkAsArchivedWithContext is the same as MarkAsArchived with the addition of
  1628  // the ability to pass a context and additional request options.
  1629  //
  1630  // See MarkAsArchived for details on how to use this API operation.
  1631  //
  1632  // The context must be non-nil and will be used for request cancellation. If
  1633  // the context is nil a panic will occur. In the future the SDK may create
  1634  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1635  // for more information on using Contexts.
  1636  func (c *Mgn) MarkAsArchivedWithContext(ctx aws.Context, input *MarkAsArchivedInput, opts ...request.Option) (*MarkAsArchivedOutput, error) {
  1637  	req, out := c.MarkAsArchivedRequest(input)
  1638  	req.SetContext(ctx)
  1639  	req.ApplyOptions(opts...)
  1640  	return out, req.Send()
  1641  }
  1642  
  1643  const opRetryDataReplication = "RetryDataReplication"
  1644  
  1645  // RetryDataReplicationRequest generates a "aws/request.Request" representing the
  1646  // client's request for the RetryDataReplication operation. The "output" return
  1647  // value will be populated with the request's response once the request completes
  1648  // successfully.
  1649  //
  1650  // Use "Send" method on the returned Request to send the API call to the service.
  1651  // the "output" return value is not valid until after Send returns without error.
  1652  //
  1653  // See RetryDataReplication for more information on using the RetryDataReplication
  1654  // API call, and error handling.
  1655  //
  1656  // This method is useful when you want to inject custom logic or configuration
  1657  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1658  //
  1659  //
  1660  //    // Example sending a request using the RetryDataReplicationRequest method.
  1661  //    req, resp := client.RetryDataReplicationRequest(params)
  1662  //
  1663  //    err := req.Send()
  1664  //    if err == nil { // resp is now filled
  1665  //        fmt.Println(resp)
  1666  //    }
  1667  //
  1668  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/RetryDataReplication
  1669  func (c *Mgn) RetryDataReplicationRequest(input *RetryDataReplicationInput) (req *request.Request, output *RetryDataReplicationOutput) {
  1670  	op := &request.Operation{
  1671  		Name:       opRetryDataReplication,
  1672  		HTTPMethod: "POST",
  1673  		HTTPPath:   "/RetryDataReplication",
  1674  	}
  1675  
  1676  	if input == nil {
  1677  		input = &RetryDataReplicationInput{}
  1678  	}
  1679  
  1680  	output = &RetryDataReplicationOutput{}
  1681  	req = c.newRequest(op, input, output)
  1682  	return
  1683  }
  1684  
  1685  // RetryDataReplication API operation for Application Migration Service.
  1686  //
  1687  // Causes the data replication initiation sequence to begin immediately upon
  1688  // next Handshake for specified SourceServer IDs, regardless of when the previous
  1689  // initiation started. This command will not work if the SourceServer is not
  1690  // stalled or is in a DISCONNECTED or STOPPED state.
  1691  //
  1692  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1693  // with awserr.Error's Code and Message methods to get detailed information about
  1694  // the error.
  1695  //
  1696  // See the AWS API reference guide for Application Migration Service's
  1697  // API operation RetryDataReplication for usage and error information.
  1698  //
  1699  // Returned Error Types:
  1700  //   * UninitializedAccountException
  1701  //   Unitialized account exception.
  1702  //
  1703  //   * ResourceNotFoundException
  1704  //   Resource not found exception.
  1705  //
  1706  //   * ValidationException
  1707  //   Validate exception.
  1708  //
  1709  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/RetryDataReplication
  1710  func (c *Mgn) RetryDataReplication(input *RetryDataReplicationInput) (*RetryDataReplicationOutput, error) {
  1711  	req, out := c.RetryDataReplicationRequest(input)
  1712  	return out, req.Send()
  1713  }
  1714  
  1715  // RetryDataReplicationWithContext is the same as RetryDataReplication with the addition of
  1716  // the ability to pass a context and additional request options.
  1717  //
  1718  // See RetryDataReplication 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 *Mgn) RetryDataReplicationWithContext(ctx aws.Context, input *RetryDataReplicationInput, opts ...request.Option) (*RetryDataReplicationOutput, error) {
  1725  	req, out := c.RetryDataReplicationRequest(input)
  1726  	req.SetContext(ctx)
  1727  	req.ApplyOptions(opts...)
  1728  	return out, req.Send()
  1729  }
  1730  
  1731  const opStartCutover = "StartCutover"
  1732  
  1733  // StartCutoverRequest generates a "aws/request.Request" representing the
  1734  // client's request for the StartCutover 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 StartCutover for more information on using the StartCutover
  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 StartCutoverRequest method.
  1749  //    req, resp := client.StartCutoverRequest(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/mgn-2020-02-26/StartCutover
  1757  func (c *Mgn) StartCutoverRequest(input *StartCutoverInput) (req *request.Request, output *StartCutoverOutput) {
  1758  	op := &request.Operation{
  1759  		Name:       opStartCutover,
  1760  		HTTPMethod: "POST",
  1761  		HTTPPath:   "/StartCutover",
  1762  	}
  1763  
  1764  	if input == nil {
  1765  		input = &StartCutoverInput{}
  1766  	}
  1767  
  1768  	output = &StartCutoverOutput{}
  1769  	req = c.newRequest(op, input, output)
  1770  	return
  1771  }
  1772  
  1773  // StartCutover API operation for Application Migration Service.
  1774  //
  1775  // Launches a Cutover Instance for specific Source Servers. This command starts
  1776  // a LAUNCH job whose initiatedBy property is StartCutover and changes the SourceServer.lifeCycle.state
  1777  // property to CUTTING_OVER.
  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 Application Migration Service's
  1784  // API operation StartCutover for usage and error information.
  1785  //
  1786  // Returned Error Types:
  1787  //   * UninitializedAccountException
  1788  //   Unitialized account exception.
  1789  //
  1790  //   * ValidationException
  1791  //   Validate exception.
  1792  //
  1793  //   * ConflictException
  1794  //   The request could not be completed due to a conflict with the current state
  1795  //   of the target resource.
  1796  //
  1797  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/StartCutover
  1798  func (c *Mgn) StartCutover(input *StartCutoverInput) (*StartCutoverOutput, error) {
  1799  	req, out := c.StartCutoverRequest(input)
  1800  	return out, req.Send()
  1801  }
  1802  
  1803  // StartCutoverWithContext is the same as StartCutover with the addition of
  1804  // the ability to pass a context and additional request options.
  1805  //
  1806  // See StartCutover for details on how to use this API operation.
  1807  //
  1808  // The context must be non-nil and will be used for request cancellation. If
  1809  // the context is nil a panic will occur. In the future the SDK may create
  1810  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1811  // for more information on using Contexts.
  1812  func (c *Mgn) StartCutoverWithContext(ctx aws.Context, input *StartCutoverInput, opts ...request.Option) (*StartCutoverOutput, error) {
  1813  	req, out := c.StartCutoverRequest(input)
  1814  	req.SetContext(ctx)
  1815  	req.ApplyOptions(opts...)
  1816  	return out, req.Send()
  1817  }
  1818  
  1819  const opStartTest = "StartTest"
  1820  
  1821  // StartTestRequest generates a "aws/request.Request" representing the
  1822  // client's request for the StartTest operation. The "output" return
  1823  // value will be populated with the request's response once the request completes
  1824  // successfully.
  1825  //
  1826  // Use "Send" method on the returned Request to send the API call to the service.
  1827  // the "output" return value is not valid until after Send returns without error.
  1828  //
  1829  // See StartTest for more information on using the StartTest
  1830  // API call, and error handling.
  1831  //
  1832  // This method is useful when you want to inject custom logic or configuration
  1833  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1834  //
  1835  //
  1836  //    // Example sending a request using the StartTestRequest method.
  1837  //    req, resp := client.StartTestRequest(params)
  1838  //
  1839  //    err := req.Send()
  1840  //    if err == nil { // resp is now filled
  1841  //        fmt.Println(resp)
  1842  //    }
  1843  //
  1844  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/StartTest
  1845  func (c *Mgn) StartTestRequest(input *StartTestInput) (req *request.Request, output *StartTestOutput) {
  1846  	op := &request.Operation{
  1847  		Name:       opStartTest,
  1848  		HTTPMethod: "POST",
  1849  		HTTPPath:   "/StartTest",
  1850  	}
  1851  
  1852  	if input == nil {
  1853  		input = &StartTestInput{}
  1854  	}
  1855  
  1856  	output = &StartTestOutput{}
  1857  	req = c.newRequest(op, input, output)
  1858  	return
  1859  }
  1860  
  1861  // StartTest API operation for Application Migration Service.
  1862  //
  1863  // Lauches a Test Instance for specific Source Servers. This command starts
  1864  // a LAUNCH job whose initiatedBy property is StartTest and changes the SourceServer.lifeCycle.state
  1865  // property to TESTING.
  1866  //
  1867  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1868  // with awserr.Error's Code and Message methods to get detailed information about
  1869  // the error.
  1870  //
  1871  // See the AWS API reference guide for Application Migration Service's
  1872  // API operation StartTest for usage and error information.
  1873  //
  1874  // Returned Error Types:
  1875  //   * UninitializedAccountException
  1876  //   Unitialized account exception.
  1877  //
  1878  //   * ValidationException
  1879  //   Validate exception.
  1880  //
  1881  //   * ConflictException
  1882  //   The request could not be completed due to a conflict with the current state
  1883  //   of the target resource.
  1884  //
  1885  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/StartTest
  1886  func (c *Mgn) StartTest(input *StartTestInput) (*StartTestOutput, error) {
  1887  	req, out := c.StartTestRequest(input)
  1888  	return out, req.Send()
  1889  }
  1890  
  1891  // StartTestWithContext is the same as StartTest with the addition of
  1892  // the ability to pass a context and additional request options.
  1893  //
  1894  // See StartTest for details on how to use this API operation.
  1895  //
  1896  // The context must be non-nil and will be used for request cancellation. If
  1897  // the context is nil a panic will occur. In the future the SDK may create
  1898  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1899  // for more information on using Contexts.
  1900  func (c *Mgn) StartTestWithContext(ctx aws.Context, input *StartTestInput, opts ...request.Option) (*StartTestOutput, error) {
  1901  	req, out := c.StartTestRequest(input)
  1902  	req.SetContext(ctx)
  1903  	req.ApplyOptions(opts...)
  1904  	return out, req.Send()
  1905  }
  1906  
  1907  const opTagResource = "TagResource"
  1908  
  1909  // TagResourceRequest generates a "aws/request.Request" representing the
  1910  // client's request for the TagResource operation. The "output" return
  1911  // value will be populated with the request's response once the request completes
  1912  // successfully.
  1913  //
  1914  // Use "Send" method on the returned Request to send the API call to the service.
  1915  // the "output" return value is not valid until after Send returns without error.
  1916  //
  1917  // See TagResource for more information on using the TagResource
  1918  // API call, and error handling.
  1919  //
  1920  // This method is useful when you want to inject custom logic or configuration
  1921  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1922  //
  1923  //
  1924  //    // Example sending a request using the TagResourceRequest method.
  1925  //    req, resp := client.TagResourceRequest(params)
  1926  //
  1927  //    err := req.Send()
  1928  //    if err == nil { // resp is now filled
  1929  //        fmt.Println(resp)
  1930  //    }
  1931  //
  1932  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/TagResource
  1933  func (c *Mgn) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
  1934  	op := &request.Operation{
  1935  		Name:       opTagResource,
  1936  		HTTPMethod: "POST",
  1937  		HTTPPath:   "/tags/{resourceArn}",
  1938  	}
  1939  
  1940  	if input == nil {
  1941  		input = &TagResourceInput{}
  1942  	}
  1943  
  1944  	output = &TagResourceOutput{}
  1945  	req = c.newRequest(op, input, output)
  1946  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1947  	return
  1948  }
  1949  
  1950  // TagResource API operation for Application Migration Service.
  1951  //
  1952  // Adds or overwrites only the specified tags for the specified Application
  1953  // Migration Service resource or resources. When you specify an existing tag
  1954  // key, the value is overwritten with the new value. Each resource can have
  1955  // a maximum of 50 tags. Each tag consists of a key and optional value.
  1956  //
  1957  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1958  // with awserr.Error's Code and Message methods to get detailed information about
  1959  // the error.
  1960  //
  1961  // See the AWS API reference guide for Application Migration Service's
  1962  // API operation TagResource for usage and error information.
  1963  //
  1964  // Returned Error Types:
  1965  //   * ResourceNotFoundException
  1966  //   Resource not found exception.
  1967  //
  1968  //   * ThrottlingException
  1969  //   Reached throttling quota exception.
  1970  //
  1971  //   * ValidationException
  1972  //   Validate exception.
  1973  //
  1974  //   * AccessDeniedException
  1975  //   Operating denied due to a file permission or access check error.
  1976  //
  1977  //   * InternalServerException
  1978  //   The server encountered an unexpected condition that prevented it from fulfilling
  1979  //   the request.
  1980  //
  1981  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/TagResource
  1982  func (c *Mgn) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
  1983  	req, out := c.TagResourceRequest(input)
  1984  	return out, req.Send()
  1985  }
  1986  
  1987  // TagResourceWithContext is the same as TagResource with the addition of
  1988  // the ability to pass a context and additional request options.
  1989  //
  1990  // See TagResource for details on how to use this API operation.
  1991  //
  1992  // The context must be non-nil and will be used for request cancellation. If
  1993  // the context is nil a panic will occur. In the future the SDK may create
  1994  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1995  // for more information on using Contexts.
  1996  func (c *Mgn) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
  1997  	req, out := c.TagResourceRequest(input)
  1998  	req.SetContext(ctx)
  1999  	req.ApplyOptions(opts...)
  2000  	return out, req.Send()
  2001  }
  2002  
  2003  const opTerminateTargetInstances = "TerminateTargetInstances"
  2004  
  2005  // TerminateTargetInstancesRequest generates a "aws/request.Request" representing the
  2006  // client's request for the TerminateTargetInstances operation. The "output" return
  2007  // value will be populated with the request's response once the request completes
  2008  // successfully.
  2009  //
  2010  // Use "Send" method on the returned Request to send the API call to the service.
  2011  // the "output" return value is not valid until after Send returns without error.
  2012  //
  2013  // See TerminateTargetInstances for more information on using the TerminateTargetInstances
  2014  // API call, and error handling.
  2015  //
  2016  // This method is useful when you want to inject custom logic or configuration
  2017  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2018  //
  2019  //
  2020  //    // Example sending a request using the TerminateTargetInstancesRequest method.
  2021  //    req, resp := client.TerminateTargetInstancesRequest(params)
  2022  //
  2023  //    err := req.Send()
  2024  //    if err == nil { // resp is now filled
  2025  //        fmt.Println(resp)
  2026  //    }
  2027  //
  2028  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/TerminateTargetInstances
  2029  func (c *Mgn) TerminateTargetInstancesRequest(input *TerminateTargetInstancesInput) (req *request.Request, output *TerminateTargetInstancesOutput) {
  2030  	op := &request.Operation{
  2031  		Name:       opTerminateTargetInstances,
  2032  		HTTPMethod: "POST",
  2033  		HTTPPath:   "/TerminateTargetInstances",
  2034  	}
  2035  
  2036  	if input == nil {
  2037  		input = &TerminateTargetInstancesInput{}
  2038  	}
  2039  
  2040  	output = &TerminateTargetInstancesOutput{}
  2041  	req = c.newRequest(op, input, output)
  2042  	return
  2043  }
  2044  
  2045  // TerminateTargetInstances API operation for Application Migration Service.
  2046  //
  2047  // Starts a job that terminates specific launched EC2 Test and Cutover instances.
  2048  // This command will not work for any Source Server with a lifecycle.state of
  2049  // TESTING, CUTTING_OVER, or CUTOVER.
  2050  //
  2051  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2052  // with awserr.Error's Code and Message methods to get detailed information about
  2053  // the error.
  2054  //
  2055  // See the AWS API reference guide for Application Migration Service's
  2056  // API operation TerminateTargetInstances for usage and error information.
  2057  //
  2058  // Returned Error Types:
  2059  //   * UninitializedAccountException
  2060  //   Unitialized account exception.
  2061  //
  2062  //   * ValidationException
  2063  //   Validate exception.
  2064  //
  2065  //   * ConflictException
  2066  //   The request could not be completed due to a conflict with the current state
  2067  //   of the target resource.
  2068  //
  2069  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/TerminateTargetInstances
  2070  func (c *Mgn) TerminateTargetInstances(input *TerminateTargetInstancesInput) (*TerminateTargetInstancesOutput, error) {
  2071  	req, out := c.TerminateTargetInstancesRequest(input)
  2072  	return out, req.Send()
  2073  }
  2074  
  2075  // TerminateTargetInstancesWithContext is the same as TerminateTargetInstances with the addition of
  2076  // the ability to pass a context and additional request options.
  2077  //
  2078  // See TerminateTargetInstances for details on how to use this API operation.
  2079  //
  2080  // The context must be non-nil and will be used for request cancellation. If
  2081  // the context is nil a panic will occur. In the future the SDK may create
  2082  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2083  // for more information on using Contexts.
  2084  func (c *Mgn) TerminateTargetInstancesWithContext(ctx aws.Context, input *TerminateTargetInstancesInput, opts ...request.Option) (*TerminateTargetInstancesOutput, error) {
  2085  	req, out := c.TerminateTargetInstancesRequest(input)
  2086  	req.SetContext(ctx)
  2087  	req.ApplyOptions(opts...)
  2088  	return out, req.Send()
  2089  }
  2090  
  2091  const opUntagResource = "UntagResource"
  2092  
  2093  // UntagResourceRequest generates a "aws/request.Request" representing the
  2094  // client's request for the UntagResource operation. The "output" return
  2095  // value will be populated with the request's response once the request completes
  2096  // successfully.
  2097  //
  2098  // Use "Send" method on the returned Request to send the API call to the service.
  2099  // the "output" return value is not valid until after Send returns without error.
  2100  //
  2101  // See UntagResource for more information on using the UntagResource
  2102  // API call, and error handling.
  2103  //
  2104  // This method is useful when you want to inject custom logic or configuration
  2105  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2106  //
  2107  //
  2108  //    // Example sending a request using the UntagResourceRequest method.
  2109  //    req, resp := client.UntagResourceRequest(params)
  2110  //
  2111  //    err := req.Send()
  2112  //    if err == nil { // resp is now filled
  2113  //        fmt.Println(resp)
  2114  //    }
  2115  //
  2116  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/UntagResource
  2117  func (c *Mgn) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
  2118  	op := &request.Operation{
  2119  		Name:       opUntagResource,
  2120  		HTTPMethod: "DELETE",
  2121  		HTTPPath:   "/tags/{resourceArn}",
  2122  	}
  2123  
  2124  	if input == nil {
  2125  		input = &UntagResourceInput{}
  2126  	}
  2127  
  2128  	output = &UntagResourceOutput{}
  2129  	req = c.newRequest(op, input, output)
  2130  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2131  	return
  2132  }
  2133  
  2134  // UntagResource API operation for Application Migration Service.
  2135  //
  2136  // Deletes the specified set of tags from the specified set of Application Migration
  2137  // Service resources.
  2138  //
  2139  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2140  // with awserr.Error's Code and Message methods to get detailed information about
  2141  // the error.
  2142  //
  2143  // See the AWS API reference guide for Application Migration Service's
  2144  // API operation UntagResource for usage and error information.
  2145  //
  2146  // Returned Error Types:
  2147  //   * ResourceNotFoundException
  2148  //   Resource not found exception.
  2149  //
  2150  //   * ThrottlingException
  2151  //   Reached throttling quota exception.
  2152  //
  2153  //   * ValidationException
  2154  //   Validate exception.
  2155  //
  2156  //   * AccessDeniedException
  2157  //   Operating denied due to a file permission or access check error.
  2158  //
  2159  //   * InternalServerException
  2160  //   The server encountered an unexpected condition that prevented it from fulfilling
  2161  //   the request.
  2162  //
  2163  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/UntagResource
  2164  func (c *Mgn) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
  2165  	req, out := c.UntagResourceRequest(input)
  2166  	return out, req.Send()
  2167  }
  2168  
  2169  // UntagResourceWithContext is the same as UntagResource with the addition of
  2170  // the ability to pass a context and additional request options.
  2171  //
  2172  // See UntagResource for details on how to use this API operation.
  2173  //
  2174  // The context must be non-nil and will be used for request cancellation. If
  2175  // the context is nil a panic will occur. In the future the SDK may create
  2176  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2177  // for more information on using Contexts.
  2178  func (c *Mgn) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
  2179  	req, out := c.UntagResourceRequest(input)
  2180  	req.SetContext(ctx)
  2181  	req.ApplyOptions(opts...)
  2182  	return out, req.Send()
  2183  }
  2184  
  2185  const opUpdateLaunchConfiguration = "UpdateLaunchConfiguration"
  2186  
  2187  // UpdateLaunchConfigurationRequest generates a "aws/request.Request" representing the
  2188  // client's request for the UpdateLaunchConfiguration operation. The "output" return
  2189  // value will be populated with the request's response once the request completes
  2190  // successfully.
  2191  //
  2192  // Use "Send" method on the returned Request to send the API call to the service.
  2193  // the "output" return value is not valid until after Send returns without error.
  2194  //
  2195  // See UpdateLaunchConfiguration for more information on using the UpdateLaunchConfiguration
  2196  // API call, and error handling.
  2197  //
  2198  // This method is useful when you want to inject custom logic or configuration
  2199  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2200  //
  2201  //
  2202  //    // Example sending a request using the UpdateLaunchConfigurationRequest method.
  2203  //    req, resp := client.UpdateLaunchConfigurationRequest(params)
  2204  //
  2205  //    err := req.Send()
  2206  //    if err == nil { // resp is now filled
  2207  //        fmt.Println(resp)
  2208  //    }
  2209  //
  2210  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/UpdateLaunchConfiguration
  2211  func (c *Mgn) UpdateLaunchConfigurationRequest(input *UpdateLaunchConfigurationInput) (req *request.Request, output *UpdateLaunchConfigurationOutput) {
  2212  	op := &request.Operation{
  2213  		Name:       opUpdateLaunchConfiguration,
  2214  		HTTPMethod: "POST",
  2215  		HTTPPath:   "/UpdateLaunchConfiguration",
  2216  	}
  2217  
  2218  	if input == nil {
  2219  		input = &UpdateLaunchConfigurationInput{}
  2220  	}
  2221  
  2222  	output = &UpdateLaunchConfigurationOutput{}
  2223  	req = c.newRequest(op, input, output)
  2224  	return
  2225  }
  2226  
  2227  // UpdateLaunchConfiguration API operation for Application Migration Service.
  2228  //
  2229  // Updates multiple LaunchConfigurations by Source Server ID.
  2230  //
  2231  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2232  // with awserr.Error's Code and Message methods to get detailed information about
  2233  // the error.
  2234  //
  2235  // See the AWS API reference guide for Application Migration Service's
  2236  // API operation UpdateLaunchConfiguration for usage and error information.
  2237  //
  2238  // Returned Error Types:
  2239  //   * UninitializedAccountException
  2240  //   Unitialized account exception.
  2241  //
  2242  //   * ResourceNotFoundException
  2243  //   Resource not found exception.
  2244  //
  2245  //   * ValidationException
  2246  //   Validate exception.
  2247  //
  2248  //   * ConflictException
  2249  //   The request could not be completed due to a conflict with the current state
  2250  //   of the target resource.
  2251  //
  2252  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/UpdateLaunchConfiguration
  2253  func (c *Mgn) UpdateLaunchConfiguration(input *UpdateLaunchConfigurationInput) (*UpdateLaunchConfigurationOutput, error) {
  2254  	req, out := c.UpdateLaunchConfigurationRequest(input)
  2255  	return out, req.Send()
  2256  }
  2257  
  2258  // UpdateLaunchConfigurationWithContext is the same as UpdateLaunchConfiguration with the addition of
  2259  // the ability to pass a context and additional request options.
  2260  //
  2261  // See UpdateLaunchConfiguration for details on how to use this API operation.
  2262  //
  2263  // The context must be non-nil and will be used for request cancellation. If
  2264  // the context is nil a panic will occur. In the future the SDK may create
  2265  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2266  // for more information on using Contexts.
  2267  func (c *Mgn) UpdateLaunchConfigurationWithContext(ctx aws.Context, input *UpdateLaunchConfigurationInput, opts ...request.Option) (*UpdateLaunchConfigurationOutput, error) {
  2268  	req, out := c.UpdateLaunchConfigurationRequest(input)
  2269  	req.SetContext(ctx)
  2270  	req.ApplyOptions(opts...)
  2271  	return out, req.Send()
  2272  }
  2273  
  2274  const opUpdateReplicationConfiguration = "UpdateReplicationConfiguration"
  2275  
  2276  // UpdateReplicationConfigurationRequest generates a "aws/request.Request" representing the
  2277  // client's request for the UpdateReplicationConfiguration operation. The "output" return
  2278  // value will be populated with the request's response once the request completes
  2279  // successfully.
  2280  //
  2281  // Use "Send" method on the returned Request to send the API call to the service.
  2282  // the "output" return value is not valid until after Send returns without error.
  2283  //
  2284  // See UpdateReplicationConfiguration for more information on using the UpdateReplicationConfiguration
  2285  // API call, and error handling.
  2286  //
  2287  // This method is useful when you want to inject custom logic or configuration
  2288  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2289  //
  2290  //
  2291  //    // Example sending a request using the UpdateReplicationConfigurationRequest method.
  2292  //    req, resp := client.UpdateReplicationConfigurationRequest(params)
  2293  //
  2294  //    err := req.Send()
  2295  //    if err == nil { // resp is now filled
  2296  //        fmt.Println(resp)
  2297  //    }
  2298  //
  2299  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/UpdateReplicationConfiguration
  2300  func (c *Mgn) UpdateReplicationConfigurationRequest(input *UpdateReplicationConfigurationInput) (req *request.Request, output *UpdateReplicationConfigurationOutput) {
  2301  	op := &request.Operation{
  2302  		Name:       opUpdateReplicationConfiguration,
  2303  		HTTPMethod: "POST",
  2304  		HTTPPath:   "/UpdateReplicationConfiguration",
  2305  	}
  2306  
  2307  	if input == nil {
  2308  		input = &UpdateReplicationConfigurationInput{}
  2309  	}
  2310  
  2311  	output = &UpdateReplicationConfigurationOutput{}
  2312  	req = c.newRequest(op, input, output)
  2313  	return
  2314  }
  2315  
  2316  // UpdateReplicationConfiguration API operation for Application Migration Service.
  2317  //
  2318  // Allows you to update multiple ReplicationConfigurations by Source Server
  2319  // ID.
  2320  //
  2321  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2322  // with awserr.Error's Code and Message methods to get detailed information about
  2323  // the error.
  2324  //
  2325  // See the AWS API reference guide for Application Migration Service's
  2326  // API operation UpdateReplicationConfiguration for usage and error information.
  2327  //
  2328  // Returned Error Types:
  2329  //   * UninitializedAccountException
  2330  //   Unitialized account exception.
  2331  //
  2332  //   * ResourceNotFoundException
  2333  //   Resource not found exception.
  2334  //
  2335  //   * ValidationException
  2336  //   Validate exception.
  2337  //
  2338  //   * AccessDeniedException
  2339  //   Operating denied due to a file permission or access check error.
  2340  //
  2341  //   * ConflictException
  2342  //   The request could not be completed due to a conflict with the current state
  2343  //   of the target resource.
  2344  //
  2345  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/UpdateReplicationConfiguration
  2346  func (c *Mgn) UpdateReplicationConfiguration(input *UpdateReplicationConfigurationInput) (*UpdateReplicationConfigurationOutput, error) {
  2347  	req, out := c.UpdateReplicationConfigurationRequest(input)
  2348  	return out, req.Send()
  2349  }
  2350  
  2351  // UpdateReplicationConfigurationWithContext is the same as UpdateReplicationConfiguration with the addition of
  2352  // the ability to pass a context and additional request options.
  2353  //
  2354  // See UpdateReplicationConfiguration for details on how to use this API operation.
  2355  //
  2356  // The context must be non-nil and will be used for request cancellation. If
  2357  // the context is nil a panic will occur. In the future the SDK may create
  2358  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2359  // for more information on using Contexts.
  2360  func (c *Mgn) UpdateReplicationConfigurationWithContext(ctx aws.Context, input *UpdateReplicationConfigurationInput, opts ...request.Option) (*UpdateReplicationConfigurationOutput, error) {
  2361  	req, out := c.UpdateReplicationConfigurationRequest(input)
  2362  	req.SetContext(ctx)
  2363  	req.ApplyOptions(opts...)
  2364  	return out, req.Send()
  2365  }
  2366  
  2367  const opUpdateReplicationConfigurationTemplate = "UpdateReplicationConfigurationTemplate"
  2368  
  2369  // UpdateReplicationConfigurationTemplateRequest generates a "aws/request.Request" representing the
  2370  // client's request for the UpdateReplicationConfigurationTemplate operation. The "output" return
  2371  // value will be populated with the request's response once the request completes
  2372  // successfully.
  2373  //
  2374  // Use "Send" method on the returned Request to send the API call to the service.
  2375  // the "output" return value is not valid until after Send returns without error.
  2376  //
  2377  // See UpdateReplicationConfigurationTemplate for more information on using the UpdateReplicationConfigurationTemplate
  2378  // API call, and error handling.
  2379  //
  2380  // This method is useful when you want to inject custom logic or configuration
  2381  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2382  //
  2383  //
  2384  //    // Example sending a request using the UpdateReplicationConfigurationTemplateRequest method.
  2385  //    req, resp := client.UpdateReplicationConfigurationTemplateRequest(params)
  2386  //
  2387  //    err := req.Send()
  2388  //    if err == nil { // resp is now filled
  2389  //        fmt.Println(resp)
  2390  //    }
  2391  //
  2392  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/UpdateReplicationConfigurationTemplate
  2393  func (c *Mgn) UpdateReplicationConfigurationTemplateRequest(input *UpdateReplicationConfigurationTemplateInput) (req *request.Request, output *UpdateReplicationConfigurationTemplateOutput) {
  2394  	op := &request.Operation{
  2395  		Name:       opUpdateReplicationConfigurationTemplate,
  2396  		HTTPMethod: "POST",
  2397  		HTTPPath:   "/UpdateReplicationConfigurationTemplate",
  2398  	}
  2399  
  2400  	if input == nil {
  2401  		input = &UpdateReplicationConfigurationTemplateInput{}
  2402  	}
  2403  
  2404  	output = &UpdateReplicationConfigurationTemplateOutput{}
  2405  	req = c.newRequest(op, input, output)
  2406  	return
  2407  }
  2408  
  2409  // UpdateReplicationConfigurationTemplate API operation for Application Migration Service.
  2410  //
  2411  // Updates multiple ReplicationConfigurationTemplates by ID.
  2412  //
  2413  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2414  // with awserr.Error's Code and Message methods to get detailed information about
  2415  // the error.
  2416  //
  2417  // See the AWS API reference guide for Application Migration Service's
  2418  // API operation UpdateReplicationConfigurationTemplate for usage and error information.
  2419  //
  2420  // Returned Error Types:
  2421  //   * UninitializedAccountException
  2422  //   Unitialized account exception.
  2423  //
  2424  //   * ResourceNotFoundException
  2425  //   Resource not found exception.
  2426  //
  2427  //   * ValidationException
  2428  //   Validate exception.
  2429  //
  2430  //   * AccessDeniedException
  2431  //   Operating denied due to a file permission or access check error.
  2432  //
  2433  // See also, https://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/UpdateReplicationConfigurationTemplate
  2434  func (c *Mgn) UpdateReplicationConfigurationTemplate(input *UpdateReplicationConfigurationTemplateInput) (*UpdateReplicationConfigurationTemplateOutput, error) {
  2435  	req, out := c.UpdateReplicationConfigurationTemplateRequest(input)
  2436  	return out, req.Send()
  2437  }
  2438  
  2439  // UpdateReplicationConfigurationTemplateWithContext is the same as UpdateReplicationConfigurationTemplate with the addition of
  2440  // the ability to pass a context and additional request options.
  2441  //
  2442  // See UpdateReplicationConfigurationTemplate for details on how to use this API operation.
  2443  //
  2444  // The context must be non-nil and will be used for request cancellation. If
  2445  // the context is nil a panic will occur. In the future the SDK may create
  2446  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2447  // for more information on using Contexts.
  2448  func (c *Mgn) UpdateReplicationConfigurationTemplateWithContext(ctx aws.Context, input *UpdateReplicationConfigurationTemplateInput, opts ...request.Option) (*UpdateReplicationConfigurationTemplateOutput, error) {
  2449  	req, out := c.UpdateReplicationConfigurationTemplateRequest(input)
  2450  	req.SetContext(ctx)
  2451  	req.ApplyOptions(opts...)
  2452  	return out, req.Send()
  2453  }
  2454  
  2455  // Operating denied due to a file permission or access check error.
  2456  type AccessDeniedException struct {
  2457  	_            struct{}                  `type:"structure"`
  2458  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  2459  
  2460  	Code_ *string `locationName:"code" type:"string"`
  2461  
  2462  	Message_ *string `locationName:"message" type:"string"`
  2463  }
  2464  
  2465  // String returns the string representation.
  2466  //
  2467  // API parameter values that are decorated as "sensitive" in the API will not
  2468  // be included in the string output. The member name will be present, but the
  2469  // value will be replaced with "sensitive".
  2470  func (s AccessDeniedException) String() string {
  2471  	return awsutil.Prettify(s)
  2472  }
  2473  
  2474  // GoString returns the string representation.
  2475  //
  2476  // API parameter values that are decorated as "sensitive" in the API will not
  2477  // be included in the string output. The member name will be present, but the
  2478  // value will be replaced with "sensitive".
  2479  func (s AccessDeniedException) GoString() string {
  2480  	return s.String()
  2481  }
  2482  
  2483  func newErrorAccessDeniedException(v protocol.ResponseMetadata) error {
  2484  	return &AccessDeniedException{
  2485  		RespMetadata: v,
  2486  	}
  2487  }
  2488  
  2489  // Code returns the exception type name.
  2490  func (s *AccessDeniedException) Code() string {
  2491  	return "AccessDeniedException"
  2492  }
  2493  
  2494  // Message returns the exception's message.
  2495  func (s *AccessDeniedException) Message() string {
  2496  	if s.Message_ != nil {
  2497  		return *s.Message_
  2498  	}
  2499  	return ""
  2500  }
  2501  
  2502  // OrigErr always returns nil, satisfies awserr.Error interface.
  2503  func (s *AccessDeniedException) OrigErr() error {
  2504  	return nil
  2505  }
  2506  
  2507  func (s *AccessDeniedException) Error() string {
  2508  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  2509  }
  2510  
  2511  // Status code returns the HTTP status code for the request's response error.
  2512  func (s *AccessDeniedException) StatusCode() int {
  2513  	return s.RespMetadata.StatusCode
  2514  }
  2515  
  2516  // RequestID returns the service's response RequestID for request.
  2517  func (s *AccessDeniedException) RequestID() string {
  2518  	return s.RespMetadata.RequestID
  2519  }
  2520  
  2521  // Source server CPU information.
  2522  type CPU struct {
  2523  	_ struct{} `type:"structure"`
  2524  
  2525  	// The number of CPU cores on the source server.
  2526  	Cores *int64 `locationName:"cores" type:"long"`
  2527  
  2528  	// The source server's CPU model name.
  2529  	ModelName *string `locationName:"modelName" type:"string"`
  2530  }
  2531  
  2532  // String returns the string representation.
  2533  //
  2534  // API parameter values that are decorated as "sensitive" in the API will not
  2535  // be included in the string output. The member name will be present, but the
  2536  // value will be replaced with "sensitive".
  2537  func (s CPU) String() string {
  2538  	return awsutil.Prettify(s)
  2539  }
  2540  
  2541  // GoString returns the string representation.
  2542  //
  2543  // API parameter values that are decorated as "sensitive" in the API will not
  2544  // be included in the string output. The member name will be present, but the
  2545  // value will be replaced with "sensitive".
  2546  func (s CPU) GoString() string {
  2547  	return s.String()
  2548  }
  2549  
  2550  // SetCores sets the Cores field's value.
  2551  func (s *CPU) SetCores(v int64) *CPU {
  2552  	s.Cores = &v
  2553  	return s
  2554  }
  2555  
  2556  // SetModelName sets the ModelName field's value.
  2557  func (s *CPU) SetModelName(v string) *CPU {
  2558  	s.ModelName = &v
  2559  	return s
  2560  }
  2561  
  2562  type ChangeServerLifeCycleStateInput struct {
  2563  	_ struct{} `type:"structure"`
  2564  
  2565  	// The request to change the source server migration lifecycle state.
  2566  	//
  2567  	// LifeCycle is a required field
  2568  	LifeCycle *ChangeServerLifeCycleStateSourceServerLifecycle `locationName:"lifeCycle" type:"structure" required:"true"`
  2569  
  2570  	// The request to change the source server migration lifecycle state by source
  2571  	// server ID.
  2572  	//
  2573  	// SourceServerID is a required field
  2574  	SourceServerID *string `locationName:"sourceServerID" min:"19" type:"string" required:"true"`
  2575  }
  2576  
  2577  // String returns the string representation.
  2578  //
  2579  // API parameter values that are decorated as "sensitive" in the API will not
  2580  // be included in the string output. The member name will be present, but the
  2581  // value will be replaced with "sensitive".
  2582  func (s ChangeServerLifeCycleStateInput) String() string {
  2583  	return awsutil.Prettify(s)
  2584  }
  2585  
  2586  // GoString returns the string representation.
  2587  //
  2588  // API parameter values that are decorated as "sensitive" in the API will not
  2589  // be included in the string output. The member name will be present, but the
  2590  // value will be replaced with "sensitive".
  2591  func (s ChangeServerLifeCycleStateInput) GoString() string {
  2592  	return s.String()
  2593  }
  2594  
  2595  // Validate inspects the fields of the type to determine if they are valid.
  2596  func (s *ChangeServerLifeCycleStateInput) Validate() error {
  2597  	invalidParams := request.ErrInvalidParams{Context: "ChangeServerLifeCycleStateInput"}
  2598  	if s.LifeCycle == nil {
  2599  		invalidParams.Add(request.NewErrParamRequired("LifeCycle"))
  2600  	}
  2601  	if s.SourceServerID == nil {
  2602  		invalidParams.Add(request.NewErrParamRequired("SourceServerID"))
  2603  	}
  2604  	if s.SourceServerID != nil && len(*s.SourceServerID) < 19 {
  2605  		invalidParams.Add(request.NewErrParamMinLen("SourceServerID", 19))
  2606  	}
  2607  	if s.LifeCycle != nil {
  2608  		if err := s.LifeCycle.Validate(); err != nil {
  2609  			invalidParams.AddNested("LifeCycle", err.(request.ErrInvalidParams))
  2610  		}
  2611  	}
  2612  
  2613  	if invalidParams.Len() > 0 {
  2614  		return invalidParams
  2615  	}
  2616  	return nil
  2617  }
  2618  
  2619  // SetLifeCycle sets the LifeCycle field's value.
  2620  func (s *ChangeServerLifeCycleStateInput) SetLifeCycle(v *ChangeServerLifeCycleStateSourceServerLifecycle) *ChangeServerLifeCycleStateInput {
  2621  	s.LifeCycle = v
  2622  	return s
  2623  }
  2624  
  2625  // SetSourceServerID sets the SourceServerID field's value.
  2626  func (s *ChangeServerLifeCycleStateInput) SetSourceServerID(v string) *ChangeServerLifeCycleStateInput {
  2627  	s.SourceServerID = &v
  2628  	return s
  2629  }
  2630  
  2631  type ChangeServerLifeCycleStateOutput struct {
  2632  	_ struct{} `type:"structure"`
  2633  
  2634  	// Source server ARN.
  2635  	Arn *string `locationName:"arn" min:"20" type:"string"`
  2636  
  2637  	// Source server data replication info.
  2638  	DataReplicationInfo *DataReplicationInfo `locationName:"dataReplicationInfo" type:"structure"`
  2639  
  2640  	// Source server archived status.
  2641  	IsArchived *bool `locationName:"isArchived" type:"boolean"`
  2642  
  2643  	// Source server launched instance.
  2644  	LaunchedInstance *LaunchedInstance `locationName:"launchedInstance" type:"structure"`
  2645  
  2646  	// Source server lifecycle state.
  2647  	LifeCycle *LifeCycle `locationName:"lifeCycle" type:"structure"`
  2648  
  2649  	// Source server properties.
  2650  	SourceProperties *SourceProperties `locationName:"sourceProperties" type:"structure"`
  2651  
  2652  	// Source server ID.
  2653  	SourceServerID *string `locationName:"sourceServerID" min:"19" type:"string"`
  2654  
  2655  	// Source server Tags.
  2656  	//
  2657  	// Tags is a sensitive parameter and its value will be
  2658  	// replaced with "sensitive" in string returned by ChangeServerLifeCycleStateOutput's
  2659  	// String and GoString methods.
  2660  	Tags map[string]*string `locationName:"tags" type:"map" sensitive:"true"`
  2661  }
  2662  
  2663  // String returns the string representation.
  2664  //
  2665  // API parameter values that are decorated as "sensitive" in the API will not
  2666  // be included in the string output. The member name will be present, but the
  2667  // value will be replaced with "sensitive".
  2668  func (s ChangeServerLifeCycleStateOutput) String() string {
  2669  	return awsutil.Prettify(s)
  2670  }
  2671  
  2672  // GoString returns the string representation.
  2673  //
  2674  // API parameter values that are decorated as "sensitive" in the API will not
  2675  // be included in the string output. The member name will be present, but the
  2676  // value will be replaced with "sensitive".
  2677  func (s ChangeServerLifeCycleStateOutput) GoString() string {
  2678  	return s.String()
  2679  }
  2680  
  2681  // SetArn sets the Arn field's value.
  2682  func (s *ChangeServerLifeCycleStateOutput) SetArn(v string) *ChangeServerLifeCycleStateOutput {
  2683  	s.Arn = &v
  2684  	return s
  2685  }
  2686  
  2687  // SetDataReplicationInfo sets the DataReplicationInfo field's value.
  2688  func (s *ChangeServerLifeCycleStateOutput) SetDataReplicationInfo(v *DataReplicationInfo) *ChangeServerLifeCycleStateOutput {
  2689  	s.DataReplicationInfo = v
  2690  	return s
  2691  }
  2692  
  2693  // SetIsArchived sets the IsArchived field's value.
  2694  func (s *ChangeServerLifeCycleStateOutput) SetIsArchived(v bool) *ChangeServerLifeCycleStateOutput {
  2695  	s.IsArchived = &v
  2696  	return s
  2697  }
  2698  
  2699  // SetLaunchedInstance sets the LaunchedInstance field's value.
  2700  func (s *ChangeServerLifeCycleStateOutput) SetLaunchedInstance(v *LaunchedInstance) *ChangeServerLifeCycleStateOutput {
  2701  	s.LaunchedInstance = v
  2702  	return s
  2703  }
  2704  
  2705  // SetLifeCycle sets the LifeCycle field's value.
  2706  func (s *ChangeServerLifeCycleStateOutput) SetLifeCycle(v *LifeCycle) *ChangeServerLifeCycleStateOutput {
  2707  	s.LifeCycle = v
  2708  	return s
  2709  }
  2710  
  2711  // SetSourceProperties sets the SourceProperties field's value.
  2712  func (s *ChangeServerLifeCycleStateOutput) SetSourceProperties(v *SourceProperties) *ChangeServerLifeCycleStateOutput {
  2713  	s.SourceProperties = v
  2714  	return s
  2715  }
  2716  
  2717  // SetSourceServerID sets the SourceServerID field's value.
  2718  func (s *ChangeServerLifeCycleStateOutput) SetSourceServerID(v string) *ChangeServerLifeCycleStateOutput {
  2719  	s.SourceServerID = &v
  2720  	return s
  2721  }
  2722  
  2723  // SetTags sets the Tags field's value.
  2724  func (s *ChangeServerLifeCycleStateOutput) SetTags(v map[string]*string) *ChangeServerLifeCycleStateOutput {
  2725  	s.Tags = v
  2726  	return s
  2727  }
  2728  
  2729  // The request to change the source server migration lifecycle state.
  2730  type ChangeServerLifeCycleStateSourceServerLifecycle struct {
  2731  	_ struct{} `type:"structure"`
  2732  
  2733  	// The request to change the source server migration lifecycle state.
  2734  	//
  2735  	// State is a required field
  2736  	State *string `locationName:"state" type:"string" required:"true" enum:"ChangeServerLifeCycleStateSourceServerLifecycleState"`
  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 ChangeServerLifeCycleStateSourceServerLifecycle) 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 ChangeServerLifeCycleStateSourceServerLifecycle) GoString() string {
  2754  	return s.String()
  2755  }
  2756  
  2757  // Validate inspects the fields of the type to determine if they are valid.
  2758  func (s *ChangeServerLifeCycleStateSourceServerLifecycle) Validate() error {
  2759  	invalidParams := request.ErrInvalidParams{Context: "ChangeServerLifeCycleStateSourceServerLifecycle"}
  2760  	if s.State == nil {
  2761  		invalidParams.Add(request.NewErrParamRequired("State"))
  2762  	}
  2763  
  2764  	if invalidParams.Len() > 0 {
  2765  		return invalidParams
  2766  	}
  2767  	return nil
  2768  }
  2769  
  2770  // SetState sets the State field's value.
  2771  func (s *ChangeServerLifeCycleStateSourceServerLifecycle) SetState(v string) *ChangeServerLifeCycleStateSourceServerLifecycle {
  2772  	s.State = &v
  2773  	return s
  2774  }
  2775  
  2776  // The request could not be completed due to a conflict with the current state
  2777  // of the target resource.
  2778  type ConflictException struct {
  2779  	_            struct{}                  `type:"structure"`
  2780  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  2781  
  2782  	Code_ *string `locationName:"code" type:"string"`
  2783  
  2784  	Message_ *string `locationName:"message" type:"string"`
  2785  
  2786  	// A conflict occured when prompting for the Resource ID.
  2787  	ResourceId *string `locationName:"resourceId" type:"string"`
  2788  
  2789  	// A conflict occured when prompting for resource type.
  2790  	ResourceType *string `locationName:"resourceType" type:"string"`
  2791  }
  2792  
  2793  // String returns the string representation.
  2794  //
  2795  // API parameter values that are decorated as "sensitive" in the API will not
  2796  // be included in the string output. The member name will be present, but the
  2797  // value will be replaced with "sensitive".
  2798  func (s ConflictException) String() string {
  2799  	return awsutil.Prettify(s)
  2800  }
  2801  
  2802  // GoString returns the string representation.
  2803  //
  2804  // API parameter values that are decorated as "sensitive" in the API will not
  2805  // be included in the string output. The member name will be present, but the
  2806  // value will be replaced with "sensitive".
  2807  func (s ConflictException) GoString() string {
  2808  	return s.String()
  2809  }
  2810  
  2811  func newErrorConflictException(v protocol.ResponseMetadata) error {
  2812  	return &ConflictException{
  2813  		RespMetadata: v,
  2814  	}
  2815  }
  2816  
  2817  // Code returns the exception type name.
  2818  func (s *ConflictException) Code() string {
  2819  	return "ConflictException"
  2820  }
  2821  
  2822  // Message returns the exception's message.
  2823  func (s *ConflictException) Message() string {
  2824  	if s.Message_ != nil {
  2825  		return *s.Message_
  2826  	}
  2827  	return ""
  2828  }
  2829  
  2830  // OrigErr always returns nil, satisfies awserr.Error interface.
  2831  func (s *ConflictException) OrigErr() error {
  2832  	return nil
  2833  }
  2834  
  2835  func (s *ConflictException) Error() string {
  2836  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  2837  }
  2838  
  2839  // Status code returns the HTTP status code for the request's response error.
  2840  func (s *ConflictException) StatusCode() int {
  2841  	return s.RespMetadata.StatusCode
  2842  }
  2843  
  2844  // RequestID returns the service's response RequestID for request.
  2845  func (s *ConflictException) RequestID() string {
  2846  	return s.RespMetadata.RequestID
  2847  }
  2848  
  2849  type CreateReplicationConfigurationTemplateInput struct {
  2850  	_ struct{} `type:"structure"`
  2851  
  2852  	// Request to associate the default Application Migration Service Security group
  2853  	// with the Replication Settings template.
  2854  	//
  2855  	// AssociateDefaultSecurityGroup is a required field
  2856  	AssociateDefaultSecurityGroup *bool `locationName:"associateDefaultSecurityGroup" type:"boolean" required:"true"`
  2857  
  2858  	// Request to configure bandwidth throttling during Replication Settings template
  2859  	// creation.
  2860  	//
  2861  	// BandwidthThrottling is a required field
  2862  	BandwidthThrottling *int64 `locationName:"bandwidthThrottling" type:"long" required:"true"`
  2863  
  2864  	// Request to create Public IP during Replication Settings template creation.
  2865  	//
  2866  	// CreatePublicIP is a required field
  2867  	CreatePublicIP *bool `locationName:"createPublicIP" type:"boolean" required:"true"`
  2868  
  2869  	// Request to configure data plane routing during Replication Settings template
  2870  	// creation.
  2871  	//
  2872  	// DataPlaneRouting is a required field
  2873  	DataPlaneRouting *string `locationName:"dataPlaneRouting" type:"string" required:"true" enum:"ReplicationConfigurationDataPlaneRouting"`
  2874  
  2875  	// Request to configure the Staging Disk EBS volume type to "gp2" during Replication
  2876  	// Settings template creation.
  2877  	//
  2878  	// DefaultLargeStagingDiskType is a required field
  2879  	DefaultLargeStagingDiskType *string `locationName:"defaultLargeStagingDiskType" type:"string" required:"true" enum:"ReplicationConfigurationDefaultLargeStagingDiskType"`
  2880  
  2881  	// Request to configure EBS enryption during Replication Settings template creation.
  2882  	//
  2883  	// EbsEncryption is a required field
  2884  	EbsEncryption *string `locationName:"ebsEncryption" type:"string" required:"true" enum:"ReplicationConfigurationEbsEncryption"`
  2885  
  2886  	// Request to configure an EBS enryption key during Replication Settings template
  2887  	// creation.
  2888  	EbsEncryptionKeyArn *string `locationName:"ebsEncryptionKeyArn" min:"20" type:"string"`
  2889  
  2890  	// Request to configure the Replication Server instance type during Replication
  2891  	// Settings template creation.
  2892  	//
  2893  	// ReplicationServerInstanceType is a required field
  2894  	ReplicationServerInstanceType *string `locationName:"replicationServerInstanceType" type:"string" required:"true"`
  2895  
  2896  	// Request to configure the Replication Server Secuirity group ID during Replication
  2897  	// Settings template creation.
  2898  	//
  2899  	// ReplicationServersSecurityGroupsIDs is a required field
  2900  	ReplicationServersSecurityGroupsIDs []*string `locationName:"replicationServersSecurityGroupsIDs" type:"list" required:"true"`
  2901  
  2902  	// Request to configure the Staging Area subnet ID during Replication Settings
  2903  	// template creation.
  2904  	//
  2905  	// StagingAreaSubnetId is a required field
  2906  	StagingAreaSubnetId *string `locationName:"stagingAreaSubnetId" type:"string" required:"true"`
  2907  
  2908  	// Request to configure Staiging Area tags during Replication Settings template
  2909  	// creation.
  2910  	//
  2911  	// StagingAreaTags is a sensitive parameter and its value will be
  2912  	// replaced with "sensitive" in string returned by CreateReplicationConfigurationTemplateInput's
  2913  	// String and GoString methods.
  2914  	//
  2915  	// StagingAreaTags is a required field
  2916  	StagingAreaTags map[string]*string `locationName:"stagingAreaTags" type:"map" required:"true" sensitive:"true"`
  2917  
  2918  	// Request to configure tags during Replication Settings template creation.
  2919  	//
  2920  	// Tags is a sensitive parameter and its value will be
  2921  	// replaced with "sensitive" in string returned by CreateReplicationConfigurationTemplateInput's
  2922  	// String and GoString methods.
  2923  	Tags map[string]*string `locationName:"tags" type:"map" sensitive:"true"`
  2924  
  2925  	// Request to use Dedicated Replication Servers during Replication Settings
  2926  	// template creation.
  2927  	//
  2928  	// UseDedicatedReplicationServer is a required field
  2929  	UseDedicatedReplicationServer *bool `locationName:"useDedicatedReplicationServer" type:"boolean" required:"true"`
  2930  }
  2931  
  2932  // String returns the string representation.
  2933  //
  2934  // API parameter values that are decorated as "sensitive" in the API will not
  2935  // be included in the string output. The member name will be present, but the
  2936  // value will be replaced with "sensitive".
  2937  func (s CreateReplicationConfigurationTemplateInput) String() string {
  2938  	return awsutil.Prettify(s)
  2939  }
  2940  
  2941  // GoString returns the string representation.
  2942  //
  2943  // API parameter values that are decorated as "sensitive" in the API will not
  2944  // be included in the string output. The member name will be present, but the
  2945  // value will be replaced with "sensitive".
  2946  func (s CreateReplicationConfigurationTemplateInput) GoString() string {
  2947  	return s.String()
  2948  }
  2949  
  2950  // Validate inspects the fields of the type to determine if they are valid.
  2951  func (s *CreateReplicationConfigurationTemplateInput) Validate() error {
  2952  	invalidParams := request.ErrInvalidParams{Context: "CreateReplicationConfigurationTemplateInput"}
  2953  	if s.AssociateDefaultSecurityGroup == nil {
  2954  		invalidParams.Add(request.NewErrParamRequired("AssociateDefaultSecurityGroup"))
  2955  	}
  2956  	if s.BandwidthThrottling == nil {
  2957  		invalidParams.Add(request.NewErrParamRequired("BandwidthThrottling"))
  2958  	}
  2959  	if s.CreatePublicIP == nil {
  2960  		invalidParams.Add(request.NewErrParamRequired("CreatePublicIP"))
  2961  	}
  2962  	if s.DataPlaneRouting == nil {
  2963  		invalidParams.Add(request.NewErrParamRequired("DataPlaneRouting"))
  2964  	}
  2965  	if s.DefaultLargeStagingDiskType == nil {
  2966  		invalidParams.Add(request.NewErrParamRequired("DefaultLargeStagingDiskType"))
  2967  	}
  2968  	if s.EbsEncryption == nil {
  2969  		invalidParams.Add(request.NewErrParamRequired("EbsEncryption"))
  2970  	}
  2971  	if s.EbsEncryptionKeyArn != nil && len(*s.EbsEncryptionKeyArn) < 20 {
  2972  		invalidParams.Add(request.NewErrParamMinLen("EbsEncryptionKeyArn", 20))
  2973  	}
  2974  	if s.ReplicationServerInstanceType == nil {
  2975  		invalidParams.Add(request.NewErrParamRequired("ReplicationServerInstanceType"))
  2976  	}
  2977  	if s.ReplicationServersSecurityGroupsIDs == nil {
  2978  		invalidParams.Add(request.NewErrParamRequired("ReplicationServersSecurityGroupsIDs"))
  2979  	}
  2980  	if s.StagingAreaSubnetId == nil {
  2981  		invalidParams.Add(request.NewErrParamRequired("StagingAreaSubnetId"))
  2982  	}
  2983  	if s.StagingAreaTags == nil {
  2984  		invalidParams.Add(request.NewErrParamRequired("StagingAreaTags"))
  2985  	}
  2986  	if s.UseDedicatedReplicationServer == nil {
  2987  		invalidParams.Add(request.NewErrParamRequired("UseDedicatedReplicationServer"))
  2988  	}
  2989  
  2990  	if invalidParams.Len() > 0 {
  2991  		return invalidParams
  2992  	}
  2993  	return nil
  2994  }
  2995  
  2996  // SetAssociateDefaultSecurityGroup sets the AssociateDefaultSecurityGroup field's value.
  2997  func (s *CreateReplicationConfigurationTemplateInput) SetAssociateDefaultSecurityGroup(v bool) *CreateReplicationConfigurationTemplateInput {
  2998  	s.AssociateDefaultSecurityGroup = &v
  2999  	return s
  3000  }
  3001  
  3002  // SetBandwidthThrottling sets the BandwidthThrottling field's value.
  3003  func (s *CreateReplicationConfigurationTemplateInput) SetBandwidthThrottling(v int64) *CreateReplicationConfigurationTemplateInput {
  3004  	s.BandwidthThrottling = &v
  3005  	return s
  3006  }
  3007  
  3008  // SetCreatePublicIP sets the CreatePublicIP field's value.
  3009  func (s *CreateReplicationConfigurationTemplateInput) SetCreatePublicIP(v bool) *CreateReplicationConfigurationTemplateInput {
  3010  	s.CreatePublicIP = &v
  3011  	return s
  3012  }
  3013  
  3014  // SetDataPlaneRouting sets the DataPlaneRouting field's value.
  3015  func (s *CreateReplicationConfigurationTemplateInput) SetDataPlaneRouting(v string) *CreateReplicationConfigurationTemplateInput {
  3016  	s.DataPlaneRouting = &v
  3017  	return s
  3018  }
  3019  
  3020  // SetDefaultLargeStagingDiskType sets the DefaultLargeStagingDiskType field's value.
  3021  func (s *CreateReplicationConfigurationTemplateInput) SetDefaultLargeStagingDiskType(v string) *CreateReplicationConfigurationTemplateInput {
  3022  	s.DefaultLargeStagingDiskType = &v
  3023  	return s
  3024  }
  3025  
  3026  // SetEbsEncryption sets the EbsEncryption field's value.
  3027  func (s *CreateReplicationConfigurationTemplateInput) SetEbsEncryption(v string) *CreateReplicationConfigurationTemplateInput {
  3028  	s.EbsEncryption = &v
  3029  	return s
  3030  }
  3031  
  3032  // SetEbsEncryptionKeyArn sets the EbsEncryptionKeyArn field's value.
  3033  func (s *CreateReplicationConfigurationTemplateInput) SetEbsEncryptionKeyArn(v string) *CreateReplicationConfigurationTemplateInput {
  3034  	s.EbsEncryptionKeyArn = &v
  3035  	return s
  3036  }
  3037  
  3038  // SetReplicationServerInstanceType sets the ReplicationServerInstanceType field's value.
  3039  func (s *CreateReplicationConfigurationTemplateInput) SetReplicationServerInstanceType(v string) *CreateReplicationConfigurationTemplateInput {
  3040  	s.ReplicationServerInstanceType = &v
  3041  	return s
  3042  }
  3043  
  3044  // SetReplicationServersSecurityGroupsIDs sets the ReplicationServersSecurityGroupsIDs field's value.
  3045  func (s *CreateReplicationConfigurationTemplateInput) SetReplicationServersSecurityGroupsIDs(v []*string) *CreateReplicationConfigurationTemplateInput {
  3046  	s.ReplicationServersSecurityGroupsIDs = v
  3047  	return s
  3048  }
  3049  
  3050  // SetStagingAreaSubnetId sets the StagingAreaSubnetId field's value.
  3051  func (s *CreateReplicationConfigurationTemplateInput) SetStagingAreaSubnetId(v string) *CreateReplicationConfigurationTemplateInput {
  3052  	s.StagingAreaSubnetId = &v
  3053  	return s
  3054  }
  3055  
  3056  // SetStagingAreaTags sets the StagingAreaTags field's value.
  3057  func (s *CreateReplicationConfigurationTemplateInput) SetStagingAreaTags(v map[string]*string) *CreateReplicationConfigurationTemplateInput {
  3058  	s.StagingAreaTags = v
  3059  	return s
  3060  }
  3061  
  3062  // SetTags sets the Tags field's value.
  3063  func (s *CreateReplicationConfigurationTemplateInput) SetTags(v map[string]*string) *CreateReplicationConfigurationTemplateInput {
  3064  	s.Tags = v
  3065  	return s
  3066  }
  3067  
  3068  // SetUseDedicatedReplicationServer sets the UseDedicatedReplicationServer field's value.
  3069  func (s *CreateReplicationConfigurationTemplateInput) SetUseDedicatedReplicationServer(v bool) *CreateReplicationConfigurationTemplateInput {
  3070  	s.UseDedicatedReplicationServer = &v
  3071  	return s
  3072  }
  3073  
  3074  type CreateReplicationConfigurationTemplateOutput struct {
  3075  	_ struct{} `type:"structure"`
  3076  
  3077  	// Replication Configuration template ARN.
  3078  	Arn *string `locationName:"arn" min:"20" type:"string"`
  3079  
  3080  	// Replication Configuration template associate default Application Migration
  3081  	// Service Security group.
  3082  	AssociateDefaultSecurityGroup *bool `locationName:"associateDefaultSecurityGroup" type:"boolean"`
  3083  
  3084  	// Replication Configuration template bandwidth throtting.
  3085  	BandwidthThrottling *int64 `locationName:"bandwidthThrottling" type:"long"`
  3086  
  3087  	// Replication Configuration template create Public IP.
  3088  	CreatePublicIP *bool `locationName:"createPublicIP" type:"boolean"`
  3089  
  3090  	// Replication Configuration template data plane routing.
  3091  	DataPlaneRouting *string `locationName:"dataPlaneRouting" type:"string" enum:"ReplicationConfigurationDataPlaneRouting"`
  3092  
  3093  	// Replication Configuration template use dedault large Staging Disk type.
  3094  	DefaultLargeStagingDiskType *string `locationName:"defaultLargeStagingDiskType" type:"string" enum:"ReplicationConfigurationDefaultLargeStagingDiskType"`
  3095  
  3096  	// Replication Configuration template EBS encryption.
  3097  	EbsEncryption *string `locationName:"ebsEncryption" type:"string" enum:"ReplicationConfigurationEbsEncryption"`
  3098  
  3099  	// Replication Configuration template EBS encryption key ARN.
  3100  	EbsEncryptionKeyArn *string `locationName:"ebsEncryptionKeyArn" min:"20" type:"string"`
  3101  
  3102  	// Replication Configuration template template ID.
  3103  	//
  3104  	// ReplicationConfigurationTemplateID is a required field
  3105  	ReplicationConfigurationTemplateID *string `locationName:"replicationConfigurationTemplateID" min:"21" type:"string" required:"true"`
  3106  
  3107  	// Replication Configuration template server instance type.
  3108  	ReplicationServerInstanceType *string `locationName:"replicationServerInstanceType" type:"string"`
  3109  
  3110  	// Replication Configuration template server Security Groups IDs.
  3111  	ReplicationServersSecurityGroupsIDs []*string `locationName:"replicationServersSecurityGroupsIDs" type:"list"`
  3112  
  3113  	// Replication Configuration template Staging Area subnet ID.
  3114  	StagingAreaSubnetId *string `locationName:"stagingAreaSubnetId" type:"string"`
  3115  
  3116  	// Replication Configuration template Staging Area Tags.
  3117  	//
  3118  	// StagingAreaTags is a sensitive parameter and its value will be
  3119  	// replaced with "sensitive" in string returned by CreateReplicationConfigurationTemplateOutput's
  3120  	// String and GoString methods.
  3121  	StagingAreaTags map[string]*string `locationName:"stagingAreaTags" type:"map" sensitive:"true"`
  3122  
  3123  	// Replication Configuration template Tags.
  3124  	//
  3125  	// Tags is a sensitive parameter and its value will be
  3126  	// replaced with "sensitive" in string returned by CreateReplicationConfigurationTemplateOutput's
  3127  	// String and GoString methods.
  3128  	Tags map[string]*string `locationName:"tags" type:"map" sensitive:"true"`
  3129  
  3130  	// Replication Configuration template use Dedicated Replication Server.
  3131  	UseDedicatedReplicationServer *bool `locationName:"useDedicatedReplicationServer" type:"boolean"`
  3132  }
  3133  
  3134  // String returns the string representation.
  3135  //
  3136  // API parameter values that are decorated as "sensitive" in the API will not
  3137  // be included in the string output. The member name will be present, but the
  3138  // value will be replaced with "sensitive".
  3139  func (s CreateReplicationConfigurationTemplateOutput) String() string {
  3140  	return awsutil.Prettify(s)
  3141  }
  3142  
  3143  // GoString returns the string representation.
  3144  //
  3145  // API parameter values that are decorated as "sensitive" in the API will not
  3146  // be included in the string output. The member name will be present, but the
  3147  // value will be replaced with "sensitive".
  3148  func (s CreateReplicationConfigurationTemplateOutput) GoString() string {
  3149  	return s.String()
  3150  }
  3151  
  3152  // SetArn sets the Arn field's value.
  3153  func (s *CreateReplicationConfigurationTemplateOutput) SetArn(v string) *CreateReplicationConfigurationTemplateOutput {
  3154  	s.Arn = &v
  3155  	return s
  3156  }
  3157  
  3158  // SetAssociateDefaultSecurityGroup sets the AssociateDefaultSecurityGroup field's value.
  3159  func (s *CreateReplicationConfigurationTemplateOutput) SetAssociateDefaultSecurityGroup(v bool) *CreateReplicationConfigurationTemplateOutput {
  3160  	s.AssociateDefaultSecurityGroup = &v
  3161  	return s
  3162  }
  3163  
  3164  // SetBandwidthThrottling sets the BandwidthThrottling field's value.
  3165  func (s *CreateReplicationConfigurationTemplateOutput) SetBandwidthThrottling(v int64) *CreateReplicationConfigurationTemplateOutput {
  3166  	s.BandwidthThrottling = &v
  3167  	return s
  3168  }
  3169  
  3170  // SetCreatePublicIP sets the CreatePublicIP field's value.
  3171  func (s *CreateReplicationConfigurationTemplateOutput) SetCreatePublicIP(v bool) *CreateReplicationConfigurationTemplateOutput {
  3172  	s.CreatePublicIP = &v
  3173  	return s
  3174  }
  3175  
  3176  // SetDataPlaneRouting sets the DataPlaneRouting field's value.
  3177  func (s *CreateReplicationConfigurationTemplateOutput) SetDataPlaneRouting(v string) *CreateReplicationConfigurationTemplateOutput {
  3178  	s.DataPlaneRouting = &v
  3179  	return s
  3180  }
  3181  
  3182  // SetDefaultLargeStagingDiskType sets the DefaultLargeStagingDiskType field's value.
  3183  func (s *CreateReplicationConfigurationTemplateOutput) SetDefaultLargeStagingDiskType(v string) *CreateReplicationConfigurationTemplateOutput {
  3184  	s.DefaultLargeStagingDiskType = &v
  3185  	return s
  3186  }
  3187  
  3188  // SetEbsEncryption sets the EbsEncryption field's value.
  3189  func (s *CreateReplicationConfigurationTemplateOutput) SetEbsEncryption(v string) *CreateReplicationConfigurationTemplateOutput {
  3190  	s.EbsEncryption = &v
  3191  	return s
  3192  }
  3193  
  3194  // SetEbsEncryptionKeyArn sets the EbsEncryptionKeyArn field's value.
  3195  func (s *CreateReplicationConfigurationTemplateOutput) SetEbsEncryptionKeyArn(v string) *CreateReplicationConfigurationTemplateOutput {
  3196  	s.EbsEncryptionKeyArn = &v
  3197  	return s
  3198  }
  3199  
  3200  // SetReplicationConfigurationTemplateID sets the ReplicationConfigurationTemplateID field's value.
  3201  func (s *CreateReplicationConfigurationTemplateOutput) SetReplicationConfigurationTemplateID(v string) *CreateReplicationConfigurationTemplateOutput {
  3202  	s.ReplicationConfigurationTemplateID = &v
  3203  	return s
  3204  }
  3205  
  3206  // SetReplicationServerInstanceType sets the ReplicationServerInstanceType field's value.
  3207  func (s *CreateReplicationConfigurationTemplateOutput) SetReplicationServerInstanceType(v string) *CreateReplicationConfigurationTemplateOutput {
  3208  	s.ReplicationServerInstanceType = &v
  3209  	return s
  3210  }
  3211  
  3212  // SetReplicationServersSecurityGroupsIDs sets the ReplicationServersSecurityGroupsIDs field's value.
  3213  func (s *CreateReplicationConfigurationTemplateOutput) SetReplicationServersSecurityGroupsIDs(v []*string) *CreateReplicationConfigurationTemplateOutput {
  3214  	s.ReplicationServersSecurityGroupsIDs = v
  3215  	return s
  3216  }
  3217  
  3218  // SetStagingAreaSubnetId sets the StagingAreaSubnetId field's value.
  3219  func (s *CreateReplicationConfigurationTemplateOutput) SetStagingAreaSubnetId(v string) *CreateReplicationConfigurationTemplateOutput {
  3220  	s.StagingAreaSubnetId = &v
  3221  	return s
  3222  }
  3223  
  3224  // SetStagingAreaTags sets the StagingAreaTags field's value.
  3225  func (s *CreateReplicationConfigurationTemplateOutput) SetStagingAreaTags(v map[string]*string) *CreateReplicationConfigurationTemplateOutput {
  3226  	s.StagingAreaTags = v
  3227  	return s
  3228  }
  3229  
  3230  // SetTags sets the Tags field's value.
  3231  func (s *CreateReplicationConfigurationTemplateOutput) SetTags(v map[string]*string) *CreateReplicationConfigurationTemplateOutput {
  3232  	s.Tags = v
  3233  	return s
  3234  }
  3235  
  3236  // SetUseDedicatedReplicationServer sets the UseDedicatedReplicationServer field's value.
  3237  func (s *CreateReplicationConfigurationTemplateOutput) SetUseDedicatedReplicationServer(v bool) *CreateReplicationConfigurationTemplateOutput {
  3238  	s.UseDedicatedReplicationServer = &v
  3239  	return s
  3240  }
  3241  
  3242  // Error in data replication.
  3243  type DataReplicationError struct {
  3244  	_ struct{} `type:"structure"`
  3245  
  3246  	// Error in data replication.
  3247  	Error *string `locationName:"error" type:"string" enum:"DataReplicationErrorString"`
  3248  
  3249  	// Error in data replication.
  3250  	RawError *string `locationName:"rawError" type:"string"`
  3251  }
  3252  
  3253  // String returns the string representation.
  3254  //
  3255  // API parameter values that are decorated as "sensitive" in the API will not
  3256  // be included in the string output. The member name will be present, but the
  3257  // value will be replaced with "sensitive".
  3258  func (s DataReplicationError) String() string {
  3259  	return awsutil.Prettify(s)
  3260  }
  3261  
  3262  // GoString returns the string representation.
  3263  //
  3264  // API parameter values that are decorated as "sensitive" in the API will not
  3265  // be included in the string output. The member name will be present, but the
  3266  // value will be replaced with "sensitive".
  3267  func (s DataReplicationError) GoString() string {
  3268  	return s.String()
  3269  }
  3270  
  3271  // SetError sets the Error field's value.
  3272  func (s *DataReplicationError) SetError(v string) *DataReplicationError {
  3273  	s.Error = &v
  3274  	return s
  3275  }
  3276  
  3277  // SetRawError sets the RawError field's value.
  3278  func (s *DataReplicationError) SetRawError(v string) *DataReplicationError {
  3279  	s.RawError = &v
  3280  	return s
  3281  }
  3282  
  3283  // Request data replication info.
  3284  type DataReplicationInfo struct {
  3285  	_ struct{} `type:"structure"`
  3286  
  3287  	// Error in obtaining data replication info.
  3288  	DataReplicationError *DataReplicationError `locationName:"dataReplicationError" type:"structure"`
  3289  
  3290  	// Request to query whether data replication has been initiated.
  3291  	DataReplicationInitiation *DataReplicationInitiation `locationName:"dataReplicationInitiation" type:"structure"`
  3292  
  3293  	// Request to query the data replication state.
  3294  	DataReplicationState *string `locationName:"dataReplicationState" type:"string" enum:"DataReplicationState"`
  3295  
  3296  	// Request to query the time when data replication will be complete.
  3297  	EtaDateTime *string `locationName:"etaDateTime" min:"19" type:"string"`
  3298  
  3299  	// Request to query data replication lag durating.
  3300  	LagDuration *string `locationName:"lagDuration" min:"19" type:"string"`
  3301  
  3302  	// Request to query disks replicated.
  3303  	ReplicatedDisks []*DataReplicationInfoReplicatedDisk `locationName:"replicatedDisks" type:"list"`
  3304  }
  3305  
  3306  // String returns the string representation.
  3307  //
  3308  // API parameter values that are decorated as "sensitive" in the API will not
  3309  // be included in the string output. The member name will be present, but the
  3310  // value will be replaced with "sensitive".
  3311  func (s DataReplicationInfo) String() string {
  3312  	return awsutil.Prettify(s)
  3313  }
  3314  
  3315  // GoString returns the string representation.
  3316  //
  3317  // API parameter values that are decorated as "sensitive" in the API will not
  3318  // be included in the string output. The member name will be present, but the
  3319  // value will be replaced with "sensitive".
  3320  func (s DataReplicationInfo) GoString() string {
  3321  	return s.String()
  3322  }
  3323  
  3324  // SetDataReplicationError sets the DataReplicationError field's value.
  3325  func (s *DataReplicationInfo) SetDataReplicationError(v *DataReplicationError) *DataReplicationInfo {
  3326  	s.DataReplicationError = v
  3327  	return s
  3328  }
  3329  
  3330  // SetDataReplicationInitiation sets the DataReplicationInitiation field's value.
  3331  func (s *DataReplicationInfo) SetDataReplicationInitiation(v *DataReplicationInitiation) *DataReplicationInfo {
  3332  	s.DataReplicationInitiation = v
  3333  	return s
  3334  }
  3335  
  3336  // SetDataReplicationState sets the DataReplicationState field's value.
  3337  func (s *DataReplicationInfo) SetDataReplicationState(v string) *DataReplicationInfo {
  3338  	s.DataReplicationState = &v
  3339  	return s
  3340  }
  3341  
  3342  // SetEtaDateTime sets the EtaDateTime field's value.
  3343  func (s *DataReplicationInfo) SetEtaDateTime(v string) *DataReplicationInfo {
  3344  	s.EtaDateTime = &v
  3345  	return s
  3346  }
  3347  
  3348  // SetLagDuration sets the LagDuration field's value.
  3349  func (s *DataReplicationInfo) SetLagDuration(v string) *DataReplicationInfo {
  3350  	s.LagDuration = &v
  3351  	return s
  3352  }
  3353  
  3354  // SetReplicatedDisks sets the ReplicatedDisks field's value.
  3355  func (s *DataReplicationInfo) SetReplicatedDisks(v []*DataReplicationInfoReplicatedDisk) *DataReplicationInfo {
  3356  	s.ReplicatedDisks = v
  3357  	return s
  3358  }
  3359  
  3360  // Request to query disks replicated.
  3361  type DataReplicationInfoReplicatedDisk struct {
  3362  	_ struct{} `type:"structure"`
  3363  
  3364  	// Request to query data replication backlog size in bytes.
  3365  	BackloggedStorageBytes *int64 `locationName:"backloggedStorageBytes" type:"long"`
  3366  
  3367  	// Request to query device name.
  3368  	DeviceName *string `locationName:"deviceName" type:"string"`
  3369  
  3370  	// Request to query amount of data replicated in bytes.
  3371  	ReplicatedStorageBytes *int64 `locationName:"replicatedStorageBytes" type:"long"`
  3372  
  3373  	// Request to query amount of data rescanned in bytes.
  3374  	RescannedStorageBytes *int64 `locationName:"rescannedStorageBytes" type:"long"`
  3375  
  3376  	// Request to query total amount of data replicated in bytes.
  3377  	TotalStorageBytes *int64 `locationName:"totalStorageBytes" type:"long"`
  3378  }
  3379  
  3380  // String returns the string representation.
  3381  //
  3382  // API parameter values that are decorated as "sensitive" in the API will not
  3383  // be included in the string output. The member name will be present, but the
  3384  // value will be replaced with "sensitive".
  3385  func (s DataReplicationInfoReplicatedDisk) String() string {
  3386  	return awsutil.Prettify(s)
  3387  }
  3388  
  3389  // GoString returns the string representation.
  3390  //
  3391  // API parameter values that are decorated as "sensitive" in the API will not
  3392  // be included in the string output. The member name will be present, but the
  3393  // value will be replaced with "sensitive".
  3394  func (s DataReplicationInfoReplicatedDisk) GoString() string {
  3395  	return s.String()
  3396  }
  3397  
  3398  // SetBackloggedStorageBytes sets the BackloggedStorageBytes field's value.
  3399  func (s *DataReplicationInfoReplicatedDisk) SetBackloggedStorageBytes(v int64) *DataReplicationInfoReplicatedDisk {
  3400  	s.BackloggedStorageBytes = &v
  3401  	return s
  3402  }
  3403  
  3404  // SetDeviceName sets the DeviceName field's value.
  3405  func (s *DataReplicationInfoReplicatedDisk) SetDeviceName(v string) *DataReplicationInfoReplicatedDisk {
  3406  	s.DeviceName = &v
  3407  	return s
  3408  }
  3409  
  3410  // SetReplicatedStorageBytes sets the ReplicatedStorageBytes field's value.
  3411  func (s *DataReplicationInfoReplicatedDisk) SetReplicatedStorageBytes(v int64) *DataReplicationInfoReplicatedDisk {
  3412  	s.ReplicatedStorageBytes = &v
  3413  	return s
  3414  }
  3415  
  3416  // SetRescannedStorageBytes sets the RescannedStorageBytes field's value.
  3417  func (s *DataReplicationInfoReplicatedDisk) SetRescannedStorageBytes(v int64) *DataReplicationInfoReplicatedDisk {
  3418  	s.RescannedStorageBytes = &v
  3419  	return s
  3420  }
  3421  
  3422  // SetTotalStorageBytes sets the TotalStorageBytes field's value.
  3423  func (s *DataReplicationInfoReplicatedDisk) SetTotalStorageBytes(v int64) *DataReplicationInfoReplicatedDisk {
  3424  	s.TotalStorageBytes = &v
  3425  	return s
  3426  }
  3427  
  3428  // Data replication initiation.
  3429  type DataReplicationInitiation struct {
  3430  	_ struct{} `type:"structure"`
  3431  
  3432  	// Request to query next data initiation date and time.
  3433  	NextAttemptDateTime *string `locationName:"nextAttemptDateTime" min:"19" type:"string"`
  3434  
  3435  	// Request to query data initiation start date and time.
  3436  	StartDateTime *string `locationName:"startDateTime" min:"19" type:"string"`
  3437  
  3438  	// Request to query data initiation steps.
  3439  	Steps []*DataReplicationInitiationStep `locationName:"steps" type:"list"`
  3440  }
  3441  
  3442  // String returns the string representation.
  3443  //
  3444  // API parameter values that are decorated as "sensitive" in the API will not
  3445  // be included in the string output. The member name will be present, but the
  3446  // value will be replaced with "sensitive".
  3447  func (s DataReplicationInitiation) String() string {
  3448  	return awsutil.Prettify(s)
  3449  }
  3450  
  3451  // GoString returns the string representation.
  3452  //
  3453  // API parameter values that are decorated as "sensitive" in the API will not
  3454  // be included in the string output. The member name will be present, but the
  3455  // value will be replaced with "sensitive".
  3456  func (s DataReplicationInitiation) GoString() string {
  3457  	return s.String()
  3458  }
  3459  
  3460  // SetNextAttemptDateTime sets the NextAttemptDateTime field's value.
  3461  func (s *DataReplicationInitiation) SetNextAttemptDateTime(v string) *DataReplicationInitiation {
  3462  	s.NextAttemptDateTime = &v
  3463  	return s
  3464  }
  3465  
  3466  // SetStartDateTime sets the StartDateTime field's value.
  3467  func (s *DataReplicationInitiation) SetStartDateTime(v string) *DataReplicationInitiation {
  3468  	s.StartDateTime = &v
  3469  	return s
  3470  }
  3471  
  3472  // SetSteps sets the Steps field's value.
  3473  func (s *DataReplicationInitiation) SetSteps(v []*DataReplicationInitiationStep) *DataReplicationInitiation {
  3474  	s.Steps = v
  3475  	return s
  3476  }
  3477  
  3478  // Data replication intiation step.
  3479  type DataReplicationInitiationStep struct {
  3480  	_ struct{} `type:"structure"`
  3481  
  3482  	// Request to query data initiation step name.
  3483  	Name *string `locationName:"name" type:"string" enum:"DataReplicationInitiationStepName"`
  3484  
  3485  	// Request to query data initiation status.
  3486  	Status *string `locationName:"status" type:"string" enum:"DataReplicationInitiationStepStatus"`
  3487  }
  3488  
  3489  // String returns the string representation.
  3490  //
  3491  // API parameter values that are decorated as "sensitive" in the API will not
  3492  // be included in the string output. The member name will be present, but the
  3493  // value will be replaced with "sensitive".
  3494  func (s DataReplicationInitiationStep) String() string {
  3495  	return awsutil.Prettify(s)
  3496  }
  3497  
  3498  // GoString returns the string representation.
  3499  //
  3500  // API parameter values that are decorated as "sensitive" in the API will not
  3501  // be included in the string output. The member name will be present, but the
  3502  // value will be replaced with "sensitive".
  3503  func (s DataReplicationInitiationStep) GoString() string {
  3504  	return s.String()
  3505  }
  3506  
  3507  // SetName sets the Name field's value.
  3508  func (s *DataReplicationInitiationStep) SetName(v string) *DataReplicationInitiationStep {
  3509  	s.Name = &v
  3510  	return s
  3511  }
  3512  
  3513  // SetStatus sets the Status field's value.
  3514  func (s *DataReplicationInitiationStep) SetStatus(v string) *DataReplicationInitiationStep {
  3515  	s.Status = &v
  3516  	return s
  3517  }
  3518  
  3519  type DeleteJobInput struct {
  3520  	_ struct{} `type:"structure"`
  3521  
  3522  	// Request to delete Job from service by Job ID.
  3523  	//
  3524  	// JobID is a required field
  3525  	JobID *string `locationName:"jobID" min:"24" type:"string" required:"true"`
  3526  }
  3527  
  3528  // String returns the string representation.
  3529  //
  3530  // API parameter values that are decorated as "sensitive" in the API will not
  3531  // be included in the string output. The member name will be present, but the
  3532  // value will be replaced with "sensitive".
  3533  func (s DeleteJobInput) String() string {
  3534  	return awsutil.Prettify(s)
  3535  }
  3536  
  3537  // GoString returns the string representation.
  3538  //
  3539  // API parameter values that are decorated as "sensitive" in the API will not
  3540  // be included in the string output. The member name will be present, but the
  3541  // value will be replaced with "sensitive".
  3542  func (s DeleteJobInput) GoString() string {
  3543  	return s.String()
  3544  }
  3545  
  3546  // Validate inspects the fields of the type to determine if they are valid.
  3547  func (s *DeleteJobInput) Validate() error {
  3548  	invalidParams := request.ErrInvalidParams{Context: "DeleteJobInput"}
  3549  	if s.JobID == nil {
  3550  		invalidParams.Add(request.NewErrParamRequired("JobID"))
  3551  	}
  3552  	if s.JobID != nil && len(*s.JobID) < 24 {
  3553  		invalidParams.Add(request.NewErrParamMinLen("JobID", 24))
  3554  	}
  3555  
  3556  	if invalidParams.Len() > 0 {
  3557  		return invalidParams
  3558  	}
  3559  	return nil
  3560  }
  3561  
  3562  // SetJobID sets the JobID field's value.
  3563  func (s *DeleteJobInput) SetJobID(v string) *DeleteJobInput {
  3564  	s.JobID = &v
  3565  	return s
  3566  }
  3567  
  3568  type DeleteJobOutput struct {
  3569  	_ struct{} `type:"structure" nopayload:"true"`
  3570  }
  3571  
  3572  // String returns the string representation.
  3573  //
  3574  // API parameter values that are decorated as "sensitive" in the API will not
  3575  // be included in the string output. The member name will be present, but the
  3576  // value will be replaced with "sensitive".
  3577  func (s DeleteJobOutput) String() string {
  3578  	return awsutil.Prettify(s)
  3579  }
  3580  
  3581  // GoString returns the string representation.
  3582  //
  3583  // API parameter values that are decorated as "sensitive" in the API will not
  3584  // be included in the string output. The member name will be present, but the
  3585  // value will be replaced with "sensitive".
  3586  func (s DeleteJobOutput) GoString() string {
  3587  	return s.String()
  3588  }
  3589  
  3590  type DeleteReplicationConfigurationTemplateInput struct {
  3591  	_ struct{} `type:"structure"`
  3592  
  3593  	// Request to delete Replication Configuration Template from service by Replication
  3594  	// Configuration Template ID.
  3595  	//
  3596  	// ReplicationConfigurationTemplateID is a required field
  3597  	ReplicationConfigurationTemplateID *string `locationName:"replicationConfigurationTemplateID" min:"21" type:"string" required:"true"`
  3598  }
  3599  
  3600  // String returns the string representation.
  3601  //
  3602  // API parameter values that are decorated as "sensitive" in the API will not
  3603  // be included in the string output. The member name will be present, but the
  3604  // value will be replaced with "sensitive".
  3605  func (s DeleteReplicationConfigurationTemplateInput) String() string {
  3606  	return awsutil.Prettify(s)
  3607  }
  3608  
  3609  // GoString returns the string representation.
  3610  //
  3611  // API parameter values that are decorated as "sensitive" in the API will not
  3612  // be included in the string output. The member name will be present, but the
  3613  // value will be replaced with "sensitive".
  3614  func (s DeleteReplicationConfigurationTemplateInput) GoString() string {
  3615  	return s.String()
  3616  }
  3617  
  3618  // Validate inspects the fields of the type to determine if they are valid.
  3619  func (s *DeleteReplicationConfigurationTemplateInput) Validate() error {
  3620  	invalidParams := request.ErrInvalidParams{Context: "DeleteReplicationConfigurationTemplateInput"}
  3621  	if s.ReplicationConfigurationTemplateID == nil {
  3622  		invalidParams.Add(request.NewErrParamRequired("ReplicationConfigurationTemplateID"))
  3623  	}
  3624  	if s.ReplicationConfigurationTemplateID != nil && len(*s.ReplicationConfigurationTemplateID) < 21 {
  3625  		invalidParams.Add(request.NewErrParamMinLen("ReplicationConfigurationTemplateID", 21))
  3626  	}
  3627  
  3628  	if invalidParams.Len() > 0 {
  3629  		return invalidParams
  3630  	}
  3631  	return nil
  3632  }
  3633  
  3634  // SetReplicationConfigurationTemplateID sets the ReplicationConfigurationTemplateID field's value.
  3635  func (s *DeleteReplicationConfigurationTemplateInput) SetReplicationConfigurationTemplateID(v string) *DeleteReplicationConfigurationTemplateInput {
  3636  	s.ReplicationConfigurationTemplateID = &v
  3637  	return s
  3638  }
  3639  
  3640  type DeleteReplicationConfigurationTemplateOutput struct {
  3641  	_ struct{} `type:"structure" nopayload:"true"`
  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 DeleteReplicationConfigurationTemplateOutput) 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 DeleteReplicationConfigurationTemplateOutput) GoString() string {
  3659  	return s.String()
  3660  }
  3661  
  3662  type DeleteSourceServerInput struct {
  3663  	_ struct{} `type:"structure"`
  3664  
  3665  	// Request to delete Source Server from service by Server ID.
  3666  	//
  3667  	// SourceServerID is a required field
  3668  	SourceServerID *string `locationName:"sourceServerID" min:"19" type:"string" required:"true"`
  3669  }
  3670  
  3671  // String returns the string representation.
  3672  //
  3673  // API parameter values that are decorated as "sensitive" in the API will not
  3674  // be included in the string output. The member name will be present, but the
  3675  // value will be replaced with "sensitive".
  3676  func (s DeleteSourceServerInput) String() string {
  3677  	return awsutil.Prettify(s)
  3678  }
  3679  
  3680  // GoString returns the string representation.
  3681  //
  3682  // API parameter values that are decorated as "sensitive" in the API will not
  3683  // be included in the string output. The member name will be present, but the
  3684  // value will be replaced with "sensitive".
  3685  func (s DeleteSourceServerInput) GoString() string {
  3686  	return s.String()
  3687  }
  3688  
  3689  // Validate inspects the fields of the type to determine if they are valid.
  3690  func (s *DeleteSourceServerInput) Validate() error {
  3691  	invalidParams := request.ErrInvalidParams{Context: "DeleteSourceServerInput"}
  3692  	if s.SourceServerID == nil {
  3693  		invalidParams.Add(request.NewErrParamRequired("SourceServerID"))
  3694  	}
  3695  	if s.SourceServerID != nil && len(*s.SourceServerID) < 19 {
  3696  		invalidParams.Add(request.NewErrParamMinLen("SourceServerID", 19))
  3697  	}
  3698  
  3699  	if invalidParams.Len() > 0 {
  3700  		return invalidParams
  3701  	}
  3702  	return nil
  3703  }
  3704  
  3705  // SetSourceServerID sets the SourceServerID field's value.
  3706  func (s *DeleteSourceServerInput) SetSourceServerID(v string) *DeleteSourceServerInput {
  3707  	s.SourceServerID = &v
  3708  	return s
  3709  }
  3710  
  3711  type DeleteSourceServerOutput struct {
  3712  	_ struct{} `type:"structure" nopayload:"true"`
  3713  }
  3714  
  3715  // String returns the string representation.
  3716  //
  3717  // API parameter values that are decorated as "sensitive" in the API will not
  3718  // be included in the string output. The member name will be present, but the
  3719  // value will be replaced with "sensitive".
  3720  func (s DeleteSourceServerOutput) String() string {
  3721  	return awsutil.Prettify(s)
  3722  }
  3723  
  3724  // GoString returns the string representation.
  3725  //
  3726  // API parameter values that are decorated as "sensitive" in the API will not
  3727  // be included in the string output. The member name will be present, but the
  3728  // value will be replaced with "sensitive".
  3729  func (s DeleteSourceServerOutput) GoString() string {
  3730  	return s.String()
  3731  }
  3732  
  3733  type DescribeJobLogItemsInput struct {
  3734  	_ struct{} `type:"structure"`
  3735  
  3736  	// Request to describe Job log job ID.
  3737  	//
  3738  	// JobID is a required field
  3739  	JobID *string `locationName:"jobID" min:"24" type:"string" required:"true"`
  3740  
  3741  	// Request to describe Job log item maximum results.
  3742  	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
  3743  
  3744  	// Request to describe Job log next token.
  3745  	NextToken *string `locationName:"nextToken" type:"string"`
  3746  }
  3747  
  3748  // String returns the string representation.
  3749  //
  3750  // API parameter values that are decorated as "sensitive" in the API will not
  3751  // be included in the string output. The member name will be present, but the
  3752  // value will be replaced with "sensitive".
  3753  func (s DescribeJobLogItemsInput) String() string {
  3754  	return awsutil.Prettify(s)
  3755  }
  3756  
  3757  // GoString returns the string representation.
  3758  //
  3759  // API parameter values that are decorated as "sensitive" in the API will not
  3760  // be included in the string output. The member name will be present, but the
  3761  // value will be replaced with "sensitive".
  3762  func (s DescribeJobLogItemsInput) GoString() string {
  3763  	return s.String()
  3764  }
  3765  
  3766  // Validate inspects the fields of the type to determine if they are valid.
  3767  func (s *DescribeJobLogItemsInput) Validate() error {
  3768  	invalidParams := request.ErrInvalidParams{Context: "DescribeJobLogItemsInput"}
  3769  	if s.JobID == nil {
  3770  		invalidParams.Add(request.NewErrParamRequired("JobID"))
  3771  	}
  3772  	if s.JobID != nil && len(*s.JobID) < 24 {
  3773  		invalidParams.Add(request.NewErrParamMinLen("JobID", 24))
  3774  	}
  3775  	if s.MaxResults != nil && *s.MaxResults < 1 {
  3776  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  3777  	}
  3778  
  3779  	if invalidParams.Len() > 0 {
  3780  		return invalidParams
  3781  	}
  3782  	return nil
  3783  }
  3784  
  3785  // SetJobID sets the JobID field's value.
  3786  func (s *DescribeJobLogItemsInput) SetJobID(v string) *DescribeJobLogItemsInput {
  3787  	s.JobID = &v
  3788  	return s
  3789  }
  3790  
  3791  // SetMaxResults sets the MaxResults field's value.
  3792  func (s *DescribeJobLogItemsInput) SetMaxResults(v int64) *DescribeJobLogItemsInput {
  3793  	s.MaxResults = &v
  3794  	return s
  3795  }
  3796  
  3797  // SetNextToken sets the NextToken field's value.
  3798  func (s *DescribeJobLogItemsInput) SetNextToken(v string) *DescribeJobLogItemsInput {
  3799  	s.NextToken = &v
  3800  	return s
  3801  }
  3802  
  3803  type DescribeJobLogItemsOutput struct {
  3804  	_ struct{} `type:"structure"`
  3805  
  3806  	// Request to describe Job log response items.
  3807  	Items []*JobLog `locationName:"items" type:"list"`
  3808  
  3809  	// Request to describe Job log response next token.
  3810  	NextToken *string `locationName:"nextToken" type:"string"`
  3811  }
  3812  
  3813  // String returns the string representation.
  3814  //
  3815  // API parameter values that are decorated as "sensitive" in the API will not
  3816  // be included in the string output. The member name will be present, but the
  3817  // value will be replaced with "sensitive".
  3818  func (s DescribeJobLogItemsOutput) String() string {
  3819  	return awsutil.Prettify(s)
  3820  }
  3821  
  3822  // GoString returns the string representation.
  3823  //
  3824  // API parameter values that are decorated as "sensitive" in the API will not
  3825  // be included in the string output. The member name will be present, but the
  3826  // value will be replaced with "sensitive".
  3827  func (s DescribeJobLogItemsOutput) GoString() string {
  3828  	return s.String()
  3829  }
  3830  
  3831  // SetItems sets the Items field's value.
  3832  func (s *DescribeJobLogItemsOutput) SetItems(v []*JobLog) *DescribeJobLogItemsOutput {
  3833  	s.Items = v
  3834  	return s
  3835  }
  3836  
  3837  // SetNextToken sets the NextToken field's value.
  3838  func (s *DescribeJobLogItemsOutput) SetNextToken(v string) *DescribeJobLogItemsOutput {
  3839  	s.NextToken = &v
  3840  	return s
  3841  }
  3842  
  3843  type DescribeJobsInput struct {
  3844  	_ struct{} `type:"structure"`
  3845  
  3846  	// Request to describe Job log filters.
  3847  	//
  3848  	// Filters is a required field
  3849  	Filters *DescribeJobsRequestFilters `locationName:"filters" type:"structure" required:"true"`
  3850  
  3851  	// Request to describe Job log by max results.
  3852  	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
  3853  
  3854  	// Request to describe Job logby next token.
  3855  	NextToken *string `locationName:"nextToken" type:"string"`
  3856  }
  3857  
  3858  // String returns the string representation.
  3859  //
  3860  // API parameter values that are decorated as "sensitive" in the API will not
  3861  // be included in the string output. The member name will be present, but the
  3862  // value will be replaced with "sensitive".
  3863  func (s DescribeJobsInput) String() string {
  3864  	return awsutil.Prettify(s)
  3865  }
  3866  
  3867  // GoString returns the string representation.
  3868  //
  3869  // API parameter values that are decorated as "sensitive" in the API will not
  3870  // be included in the string output. The member name will be present, but the
  3871  // value will be replaced with "sensitive".
  3872  func (s DescribeJobsInput) GoString() string {
  3873  	return s.String()
  3874  }
  3875  
  3876  // Validate inspects the fields of the type to determine if they are valid.
  3877  func (s *DescribeJobsInput) Validate() error {
  3878  	invalidParams := request.ErrInvalidParams{Context: "DescribeJobsInput"}
  3879  	if s.Filters == nil {
  3880  		invalidParams.Add(request.NewErrParamRequired("Filters"))
  3881  	}
  3882  	if s.MaxResults != nil && *s.MaxResults < 1 {
  3883  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  3884  	}
  3885  	if s.Filters != nil {
  3886  		if err := s.Filters.Validate(); err != nil {
  3887  			invalidParams.AddNested("Filters", err.(request.ErrInvalidParams))
  3888  		}
  3889  	}
  3890  
  3891  	if invalidParams.Len() > 0 {
  3892  		return invalidParams
  3893  	}
  3894  	return nil
  3895  }
  3896  
  3897  // SetFilters sets the Filters field's value.
  3898  func (s *DescribeJobsInput) SetFilters(v *DescribeJobsRequestFilters) *DescribeJobsInput {
  3899  	s.Filters = v
  3900  	return s
  3901  }
  3902  
  3903  // SetMaxResults sets the MaxResults field's value.
  3904  func (s *DescribeJobsInput) SetMaxResults(v int64) *DescribeJobsInput {
  3905  	s.MaxResults = &v
  3906  	return s
  3907  }
  3908  
  3909  // SetNextToken sets the NextToken field's value.
  3910  func (s *DescribeJobsInput) SetNextToken(v string) *DescribeJobsInput {
  3911  	s.NextToken = &v
  3912  	return s
  3913  }
  3914  
  3915  type DescribeJobsOutput struct {
  3916  	_ struct{} `type:"structure"`
  3917  
  3918  	// Request to describe Job log items.
  3919  	Items []*Job `locationName:"items" type:"list"`
  3920  
  3921  	// Request to describe Job response by next token.
  3922  	NextToken *string `locationName:"nextToken" type:"string"`
  3923  }
  3924  
  3925  // String returns the string representation.
  3926  //
  3927  // API parameter values that are decorated as "sensitive" in the API will not
  3928  // be included in the string output. The member name will be present, but the
  3929  // value will be replaced with "sensitive".
  3930  func (s DescribeJobsOutput) String() string {
  3931  	return awsutil.Prettify(s)
  3932  }
  3933  
  3934  // GoString returns the string representation.
  3935  //
  3936  // API parameter values that are decorated as "sensitive" in the API will not
  3937  // be included in the string output. The member name will be present, but the
  3938  // value will be replaced with "sensitive".
  3939  func (s DescribeJobsOutput) GoString() string {
  3940  	return s.String()
  3941  }
  3942  
  3943  // SetItems sets the Items field's value.
  3944  func (s *DescribeJobsOutput) SetItems(v []*Job) *DescribeJobsOutput {
  3945  	s.Items = v
  3946  	return s
  3947  }
  3948  
  3949  // SetNextToken sets the NextToken field's value.
  3950  func (s *DescribeJobsOutput) SetNextToken(v string) *DescribeJobsOutput {
  3951  	s.NextToken = &v
  3952  	return s
  3953  }
  3954  
  3955  // Request to describe Job log filters.
  3956  type DescribeJobsRequestFilters struct {
  3957  	_ struct{} `type:"structure"`
  3958  
  3959  	// Request to describe Job log filters by date.
  3960  	FromDate *string `locationName:"fromDate" min:"19" type:"string"`
  3961  
  3962  	// Request to describe Job log filters by job ID.
  3963  	JobIDs []*string `locationName:"jobIDs" type:"list"`
  3964  
  3965  	// Request to describe Job log by last date.
  3966  	ToDate *string `locationName:"toDate" min:"19" type:"string"`
  3967  }
  3968  
  3969  // String returns the string representation.
  3970  //
  3971  // API parameter values that are decorated as "sensitive" in the API will not
  3972  // be included in the string output. The member name will be present, but the
  3973  // value will be replaced with "sensitive".
  3974  func (s DescribeJobsRequestFilters) String() string {
  3975  	return awsutil.Prettify(s)
  3976  }
  3977  
  3978  // GoString returns the string representation.
  3979  //
  3980  // API parameter values that are decorated as "sensitive" in the API will not
  3981  // be included in the string output. The member name will be present, but the
  3982  // value will be replaced with "sensitive".
  3983  func (s DescribeJobsRequestFilters) GoString() string {
  3984  	return s.String()
  3985  }
  3986  
  3987  // Validate inspects the fields of the type to determine if they are valid.
  3988  func (s *DescribeJobsRequestFilters) Validate() error {
  3989  	invalidParams := request.ErrInvalidParams{Context: "DescribeJobsRequestFilters"}
  3990  	if s.FromDate != nil && len(*s.FromDate) < 19 {
  3991  		invalidParams.Add(request.NewErrParamMinLen("FromDate", 19))
  3992  	}
  3993  	if s.ToDate != nil && len(*s.ToDate) < 19 {
  3994  		invalidParams.Add(request.NewErrParamMinLen("ToDate", 19))
  3995  	}
  3996  
  3997  	if invalidParams.Len() > 0 {
  3998  		return invalidParams
  3999  	}
  4000  	return nil
  4001  }
  4002  
  4003  // SetFromDate sets the FromDate field's value.
  4004  func (s *DescribeJobsRequestFilters) SetFromDate(v string) *DescribeJobsRequestFilters {
  4005  	s.FromDate = &v
  4006  	return s
  4007  }
  4008  
  4009  // SetJobIDs sets the JobIDs field's value.
  4010  func (s *DescribeJobsRequestFilters) SetJobIDs(v []*string) *DescribeJobsRequestFilters {
  4011  	s.JobIDs = v
  4012  	return s
  4013  }
  4014  
  4015  // SetToDate sets the ToDate field's value.
  4016  func (s *DescribeJobsRequestFilters) SetToDate(v string) *DescribeJobsRequestFilters {
  4017  	s.ToDate = &v
  4018  	return s
  4019  }
  4020  
  4021  type DescribeReplicationConfigurationTemplatesInput struct {
  4022  	_ struct{} `type:"structure"`
  4023  
  4024  	// Request to describe Replication Configuration template by max results.
  4025  	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
  4026  
  4027  	// Request to describe Replication Configuration template by next token.
  4028  	NextToken *string `locationName:"nextToken" type:"string"`
  4029  
  4030  	// Request to describe Replication Configuration template by template IDs.
  4031  	//
  4032  	// ReplicationConfigurationTemplateIDs is a required field
  4033  	ReplicationConfigurationTemplateIDs []*string `locationName:"replicationConfigurationTemplateIDs" type:"list" required:"true"`
  4034  }
  4035  
  4036  // String returns the string representation.
  4037  //
  4038  // API parameter values that are decorated as "sensitive" in the API will not
  4039  // be included in the string output. The member name will be present, but the
  4040  // value will be replaced with "sensitive".
  4041  func (s DescribeReplicationConfigurationTemplatesInput) String() string {
  4042  	return awsutil.Prettify(s)
  4043  }
  4044  
  4045  // GoString returns the string representation.
  4046  //
  4047  // API parameter values that are decorated as "sensitive" in the API will not
  4048  // be included in the string output. The member name will be present, but the
  4049  // value will be replaced with "sensitive".
  4050  func (s DescribeReplicationConfigurationTemplatesInput) GoString() string {
  4051  	return s.String()
  4052  }
  4053  
  4054  // Validate inspects the fields of the type to determine if they are valid.
  4055  func (s *DescribeReplicationConfigurationTemplatesInput) Validate() error {
  4056  	invalidParams := request.ErrInvalidParams{Context: "DescribeReplicationConfigurationTemplatesInput"}
  4057  	if s.MaxResults != nil && *s.MaxResults < 1 {
  4058  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  4059  	}
  4060  	if s.ReplicationConfigurationTemplateIDs == nil {
  4061  		invalidParams.Add(request.NewErrParamRequired("ReplicationConfigurationTemplateIDs"))
  4062  	}
  4063  
  4064  	if invalidParams.Len() > 0 {
  4065  		return invalidParams
  4066  	}
  4067  	return nil
  4068  }
  4069  
  4070  // SetMaxResults sets the MaxResults field's value.
  4071  func (s *DescribeReplicationConfigurationTemplatesInput) SetMaxResults(v int64) *DescribeReplicationConfigurationTemplatesInput {
  4072  	s.MaxResults = &v
  4073  	return s
  4074  }
  4075  
  4076  // SetNextToken sets the NextToken field's value.
  4077  func (s *DescribeReplicationConfigurationTemplatesInput) SetNextToken(v string) *DescribeReplicationConfigurationTemplatesInput {
  4078  	s.NextToken = &v
  4079  	return s
  4080  }
  4081  
  4082  // SetReplicationConfigurationTemplateIDs sets the ReplicationConfigurationTemplateIDs field's value.
  4083  func (s *DescribeReplicationConfigurationTemplatesInput) SetReplicationConfigurationTemplateIDs(v []*string) *DescribeReplicationConfigurationTemplatesInput {
  4084  	s.ReplicationConfigurationTemplateIDs = v
  4085  	return s
  4086  }
  4087  
  4088  type DescribeReplicationConfigurationTemplatesOutput struct {
  4089  	_ struct{} `type:"structure"`
  4090  
  4091  	// Request to describe Replication Configuration template by items.
  4092  	Items []*ReplicationConfigurationTemplate `locationName:"items" type:"list"`
  4093  
  4094  	// Request to describe Replication Configuration template by next token.
  4095  	NextToken *string `locationName:"nextToken" type:"string"`
  4096  }
  4097  
  4098  // String returns the string representation.
  4099  //
  4100  // API parameter values that are decorated as "sensitive" in the API will not
  4101  // be included in the string output. The member name will be present, but the
  4102  // value will be replaced with "sensitive".
  4103  func (s DescribeReplicationConfigurationTemplatesOutput) String() string {
  4104  	return awsutil.Prettify(s)
  4105  }
  4106  
  4107  // GoString returns the string representation.
  4108  //
  4109  // API parameter values that are decorated as "sensitive" in the API will not
  4110  // be included in the string output. The member name will be present, but the
  4111  // value will be replaced with "sensitive".
  4112  func (s DescribeReplicationConfigurationTemplatesOutput) GoString() string {
  4113  	return s.String()
  4114  }
  4115  
  4116  // SetItems sets the Items field's value.
  4117  func (s *DescribeReplicationConfigurationTemplatesOutput) SetItems(v []*ReplicationConfigurationTemplate) *DescribeReplicationConfigurationTemplatesOutput {
  4118  	s.Items = v
  4119  	return s
  4120  }
  4121  
  4122  // SetNextToken sets the NextToken field's value.
  4123  func (s *DescribeReplicationConfigurationTemplatesOutput) SetNextToken(v string) *DescribeReplicationConfigurationTemplatesOutput {
  4124  	s.NextToken = &v
  4125  	return s
  4126  }
  4127  
  4128  type DescribeSourceServersInput struct {
  4129  	_ struct{} `type:"structure"`
  4130  
  4131  	// Request to filter Source Servers list.
  4132  	//
  4133  	// Filters is a required field
  4134  	Filters *DescribeSourceServersRequestFilters `locationName:"filters" type:"structure" required:"true"`
  4135  
  4136  	// Request to filter Source Servers list by maximum results.
  4137  	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
  4138  
  4139  	// Request to filter Source Servers list by next token.
  4140  	NextToken *string `locationName:"nextToken" type:"string"`
  4141  }
  4142  
  4143  // String returns the string representation.
  4144  //
  4145  // API parameter values that are decorated as "sensitive" in the API will not
  4146  // be included in the string output. The member name will be present, but the
  4147  // value will be replaced with "sensitive".
  4148  func (s DescribeSourceServersInput) String() string {
  4149  	return awsutil.Prettify(s)
  4150  }
  4151  
  4152  // GoString returns the string representation.
  4153  //
  4154  // API parameter values that are decorated as "sensitive" in the API will not
  4155  // be included in the string output. The member name will be present, but the
  4156  // value will be replaced with "sensitive".
  4157  func (s DescribeSourceServersInput) GoString() string {
  4158  	return s.String()
  4159  }
  4160  
  4161  // Validate inspects the fields of the type to determine if they are valid.
  4162  func (s *DescribeSourceServersInput) Validate() error {
  4163  	invalidParams := request.ErrInvalidParams{Context: "DescribeSourceServersInput"}
  4164  	if s.Filters == nil {
  4165  		invalidParams.Add(request.NewErrParamRequired("Filters"))
  4166  	}
  4167  	if s.MaxResults != nil && *s.MaxResults < 1 {
  4168  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  4169  	}
  4170  
  4171  	if invalidParams.Len() > 0 {
  4172  		return invalidParams
  4173  	}
  4174  	return nil
  4175  }
  4176  
  4177  // SetFilters sets the Filters field's value.
  4178  func (s *DescribeSourceServersInput) SetFilters(v *DescribeSourceServersRequestFilters) *DescribeSourceServersInput {
  4179  	s.Filters = v
  4180  	return s
  4181  }
  4182  
  4183  // SetMaxResults sets the MaxResults field's value.
  4184  func (s *DescribeSourceServersInput) SetMaxResults(v int64) *DescribeSourceServersInput {
  4185  	s.MaxResults = &v
  4186  	return s
  4187  }
  4188  
  4189  // SetNextToken sets the NextToken field's value.
  4190  func (s *DescribeSourceServersInput) SetNextToken(v string) *DescribeSourceServersInput {
  4191  	s.NextToken = &v
  4192  	return s
  4193  }
  4194  
  4195  type DescribeSourceServersOutput struct {
  4196  	_ struct{} `type:"structure"`
  4197  
  4198  	// Request to filter Source Servers list by item.
  4199  	Items []*SourceServer `locationName:"items" type:"list"`
  4200  
  4201  	// Request to filter Source Servers next token.
  4202  	NextToken *string `locationName:"nextToken" type:"string"`
  4203  }
  4204  
  4205  // String returns the string representation.
  4206  //
  4207  // API parameter values that are decorated as "sensitive" in the API will not
  4208  // be included in the string output. The member name will be present, but the
  4209  // value will be replaced with "sensitive".
  4210  func (s DescribeSourceServersOutput) String() string {
  4211  	return awsutil.Prettify(s)
  4212  }
  4213  
  4214  // GoString returns the string representation.
  4215  //
  4216  // API parameter values that are decorated as "sensitive" in the API will not
  4217  // be included in the string output. The member name will be present, but the
  4218  // value will be replaced with "sensitive".
  4219  func (s DescribeSourceServersOutput) GoString() string {
  4220  	return s.String()
  4221  }
  4222  
  4223  // SetItems sets the Items field's value.
  4224  func (s *DescribeSourceServersOutput) SetItems(v []*SourceServer) *DescribeSourceServersOutput {
  4225  	s.Items = v
  4226  	return s
  4227  }
  4228  
  4229  // SetNextToken sets the NextToken field's value.
  4230  func (s *DescribeSourceServersOutput) SetNextToken(v string) *DescribeSourceServersOutput {
  4231  	s.NextToken = &v
  4232  	return s
  4233  }
  4234  
  4235  // Request to filter Source Servers list.
  4236  type DescribeSourceServersRequestFilters struct {
  4237  	_ struct{} `type:"structure"`
  4238  
  4239  	// Request to filter Source Servers list by archived.
  4240  	IsArchived *bool `locationName:"isArchived" type:"boolean"`
  4241  
  4242  	// Request to filter Source Servers list by Source Server ID.
  4243  	SourceServerIDs []*string `locationName:"sourceServerIDs" type:"list"`
  4244  }
  4245  
  4246  // String returns the string representation.
  4247  //
  4248  // API parameter values that are decorated as "sensitive" in the API will not
  4249  // be included in the string output. The member name will be present, but the
  4250  // value will be replaced with "sensitive".
  4251  func (s DescribeSourceServersRequestFilters) String() string {
  4252  	return awsutil.Prettify(s)
  4253  }
  4254  
  4255  // GoString returns the string representation.
  4256  //
  4257  // API parameter values that are decorated as "sensitive" in the API will not
  4258  // be included in the string output. The member name will be present, but the
  4259  // value will be replaced with "sensitive".
  4260  func (s DescribeSourceServersRequestFilters) GoString() string {
  4261  	return s.String()
  4262  }
  4263  
  4264  // SetIsArchived sets the IsArchived field's value.
  4265  func (s *DescribeSourceServersRequestFilters) SetIsArchived(v bool) *DescribeSourceServersRequestFilters {
  4266  	s.IsArchived = &v
  4267  	return s
  4268  }
  4269  
  4270  // SetSourceServerIDs sets the SourceServerIDs field's value.
  4271  func (s *DescribeSourceServersRequestFilters) SetSourceServerIDs(v []*string) *DescribeSourceServersRequestFilters {
  4272  	s.SourceServerIDs = v
  4273  	return s
  4274  }
  4275  
  4276  type DisconnectFromServiceInput struct {
  4277  	_ struct{} `type:"structure"`
  4278  
  4279  	// Request to disconnect Source Server from service by Server ID.
  4280  	//
  4281  	// SourceServerID is a required field
  4282  	SourceServerID *string `locationName:"sourceServerID" min:"19" type:"string" required:"true"`
  4283  }
  4284  
  4285  // String returns the string representation.
  4286  //
  4287  // API parameter values that are decorated as "sensitive" in the API will not
  4288  // be included in the string output. The member name will be present, but the
  4289  // value will be replaced with "sensitive".
  4290  func (s DisconnectFromServiceInput) String() string {
  4291  	return awsutil.Prettify(s)
  4292  }
  4293  
  4294  // GoString returns the string representation.
  4295  //
  4296  // API parameter values that are decorated as "sensitive" in the API will not
  4297  // be included in the string output. The member name will be present, but the
  4298  // value will be replaced with "sensitive".
  4299  func (s DisconnectFromServiceInput) GoString() string {
  4300  	return s.String()
  4301  }
  4302  
  4303  // Validate inspects the fields of the type to determine if they are valid.
  4304  func (s *DisconnectFromServiceInput) Validate() error {
  4305  	invalidParams := request.ErrInvalidParams{Context: "DisconnectFromServiceInput"}
  4306  	if s.SourceServerID == nil {
  4307  		invalidParams.Add(request.NewErrParamRequired("SourceServerID"))
  4308  	}
  4309  	if s.SourceServerID != nil && len(*s.SourceServerID) < 19 {
  4310  		invalidParams.Add(request.NewErrParamMinLen("SourceServerID", 19))
  4311  	}
  4312  
  4313  	if invalidParams.Len() > 0 {
  4314  		return invalidParams
  4315  	}
  4316  	return nil
  4317  }
  4318  
  4319  // SetSourceServerID sets the SourceServerID field's value.
  4320  func (s *DisconnectFromServiceInput) SetSourceServerID(v string) *DisconnectFromServiceInput {
  4321  	s.SourceServerID = &v
  4322  	return s
  4323  }
  4324  
  4325  type DisconnectFromServiceOutput struct {
  4326  	_ struct{} `type:"structure"`
  4327  
  4328  	// Source server ARN.
  4329  	Arn *string `locationName:"arn" min:"20" type:"string"`
  4330  
  4331  	// Source server data replication info.
  4332  	DataReplicationInfo *DataReplicationInfo `locationName:"dataReplicationInfo" type:"structure"`
  4333  
  4334  	// Source server archived status.
  4335  	IsArchived *bool `locationName:"isArchived" type:"boolean"`
  4336  
  4337  	// Source server launched instance.
  4338  	LaunchedInstance *LaunchedInstance `locationName:"launchedInstance" type:"structure"`
  4339  
  4340  	// Source server lifecycle state.
  4341  	LifeCycle *LifeCycle `locationName:"lifeCycle" type:"structure"`
  4342  
  4343  	// Source server properties.
  4344  	SourceProperties *SourceProperties `locationName:"sourceProperties" type:"structure"`
  4345  
  4346  	// Source server ID.
  4347  	SourceServerID *string `locationName:"sourceServerID" min:"19" type:"string"`
  4348  
  4349  	// Source server Tags.
  4350  	//
  4351  	// Tags is a sensitive parameter and its value will be
  4352  	// replaced with "sensitive" in string returned by DisconnectFromServiceOutput's
  4353  	// String and GoString methods.
  4354  	Tags map[string]*string `locationName:"tags" type:"map" sensitive:"true"`
  4355  }
  4356  
  4357  // String returns the string representation.
  4358  //
  4359  // API parameter values that are decorated as "sensitive" in the API will not
  4360  // be included in the string output. The member name will be present, but the
  4361  // value will be replaced with "sensitive".
  4362  func (s DisconnectFromServiceOutput) String() string {
  4363  	return awsutil.Prettify(s)
  4364  }
  4365  
  4366  // GoString returns the string representation.
  4367  //
  4368  // API parameter values that are decorated as "sensitive" in the API will not
  4369  // be included in the string output. The member name will be present, but the
  4370  // value will be replaced with "sensitive".
  4371  func (s DisconnectFromServiceOutput) GoString() string {
  4372  	return s.String()
  4373  }
  4374  
  4375  // SetArn sets the Arn field's value.
  4376  func (s *DisconnectFromServiceOutput) SetArn(v string) *DisconnectFromServiceOutput {
  4377  	s.Arn = &v
  4378  	return s
  4379  }
  4380  
  4381  // SetDataReplicationInfo sets the DataReplicationInfo field's value.
  4382  func (s *DisconnectFromServiceOutput) SetDataReplicationInfo(v *DataReplicationInfo) *DisconnectFromServiceOutput {
  4383  	s.DataReplicationInfo = v
  4384  	return s
  4385  }
  4386  
  4387  // SetIsArchived sets the IsArchived field's value.
  4388  func (s *DisconnectFromServiceOutput) SetIsArchived(v bool) *DisconnectFromServiceOutput {
  4389  	s.IsArchived = &v
  4390  	return s
  4391  }
  4392  
  4393  // SetLaunchedInstance sets the LaunchedInstance field's value.
  4394  func (s *DisconnectFromServiceOutput) SetLaunchedInstance(v *LaunchedInstance) *DisconnectFromServiceOutput {
  4395  	s.LaunchedInstance = v
  4396  	return s
  4397  }
  4398  
  4399  // SetLifeCycle sets the LifeCycle field's value.
  4400  func (s *DisconnectFromServiceOutput) SetLifeCycle(v *LifeCycle) *DisconnectFromServiceOutput {
  4401  	s.LifeCycle = v
  4402  	return s
  4403  }
  4404  
  4405  // SetSourceProperties sets the SourceProperties field's value.
  4406  func (s *DisconnectFromServiceOutput) SetSourceProperties(v *SourceProperties) *DisconnectFromServiceOutput {
  4407  	s.SourceProperties = v
  4408  	return s
  4409  }
  4410  
  4411  // SetSourceServerID sets the SourceServerID field's value.
  4412  func (s *DisconnectFromServiceOutput) SetSourceServerID(v string) *DisconnectFromServiceOutput {
  4413  	s.SourceServerID = &v
  4414  	return s
  4415  }
  4416  
  4417  // SetTags sets the Tags field's value.
  4418  func (s *DisconnectFromServiceOutput) SetTags(v map[string]*string) *DisconnectFromServiceOutput {
  4419  	s.Tags = v
  4420  	return s
  4421  }
  4422  
  4423  // The disk identifier.
  4424  type Disk struct {
  4425  	_ struct{} `type:"structure"`
  4426  
  4427  	// The amount of storage on the disk in bytes.
  4428  	Bytes *int64 `locationName:"bytes" type:"long"`
  4429  
  4430  	// The disk or device name.
  4431  	DeviceName *string `locationName:"deviceName" type:"string"`
  4432  }
  4433  
  4434  // String returns the string representation.
  4435  //
  4436  // API parameter values that are decorated as "sensitive" in the API will not
  4437  // be included in the string output. The member name will be present, but the
  4438  // value will be replaced with "sensitive".
  4439  func (s Disk) String() string {
  4440  	return awsutil.Prettify(s)
  4441  }
  4442  
  4443  // GoString returns the string representation.
  4444  //
  4445  // API parameter values that are decorated as "sensitive" in the API will not
  4446  // be included in the string output. The member name will be present, but the
  4447  // value will be replaced with "sensitive".
  4448  func (s Disk) GoString() string {
  4449  	return s.String()
  4450  }
  4451  
  4452  // SetBytes sets the Bytes field's value.
  4453  func (s *Disk) SetBytes(v int64) *Disk {
  4454  	s.Bytes = &v
  4455  	return s
  4456  }
  4457  
  4458  // SetDeviceName sets the DeviceName field's value.
  4459  func (s *Disk) SetDeviceName(v string) *Disk {
  4460  	s.DeviceName = &v
  4461  	return s
  4462  }
  4463  
  4464  type FinalizeCutoverInput struct {
  4465  	_ struct{} `type:"structure"`
  4466  
  4467  	// Request to finalize Cutover by Soure Server ID.
  4468  	//
  4469  	// SourceServerID is a required field
  4470  	SourceServerID *string `locationName:"sourceServerID" min:"19" type:"string" required:"true"`
  4471  }
  4472  
  4473  // String returns the string representation.
  4474  //
  4475  // API parameter values that are decorated as "sensitive" in the API will not
  4476  // be included in the string output. The member name will be present, but the
  4477  // value will be replaced with "sensitive".
  4478  func (s FinalizeCutoverInput) String() string {
  4479  	return awsutil.Prettify(s)
  4480  }
  4481  
  4482  // GoString returns the string representation.
  4483  //
  4484  // API parameter values that are decorated as "sensitive" in the API will not
  4485  // be included in the string output. The member name will be present, but the
  4486  // value will be replaced with "sensitive".
  4487  func (s FinalizeCutoverInput) GoString() string {
  4488  	return s.String()
  4489  }
  4490  
  4491  // Validate inspects the fields of the type to determine if they are valid.
  4492  func (s *FinalizeCutoverInput) Validate() error {
  4493  	invalidParams := request.ErrInvalidParams{Context: "FinalizeCutoverInput"}
  4494  	if s.SourceServerID == nil {
  4495  		invalidParams.Add(request.NewErrParamRequired("SourceServerID"))
  4496  	}
  4497  	if s.SourceServerID != nil && len(*s.SourceServerID) < 19 {
  4498  		invalidParams.Add(request.NewErrParamMinLen("SourceServerID", 19))
  4499  	}
  4500  
  4501  	if invalidParams.Len() > 0 {
  4502  		return invalidParams
  4503  	}
  4504  	return nil
  4505  }
  4506  
  4507  // SetSourceServerID sets the SourceServerID field's value.
  4508  func (s *FinalizeCutoverInput) SetSourceServerID(v string) *FinalizeCutoverInput {
  4509  	s.SourceServerID = &v
  4510  	return s
  4511  }
  4512  
  4513  type FinalizeCutoverOutput struct {
  4514  	_ struct{} `type:"structure"`
  4515  
  4516  	// Source server ARN.
  4517  	Arn *string `locationName:"arn" min:"20" type:"string"`
  4518  
  4519  	// Source server data replication info.
  4520  	DataReplicationInfo *DataReplicationInfo `locationName:"dataReplicationInfo" type:"structure"`
  4521  
  4522  	// Source server archived status.
  4523  	IsArchived *bool `locationName:"isArchived" type:"boolean"`
  4524  
  4525  	// Source server launched instance.
  4526  	LaunchedInstance *LaunchedInstance `locationName:"launchedInstance" type:"structure"`
  4527  
  4528  	// Source server lifecycle state.
  4529  	LifeCycle *LifeCycle `locationName:"lifeCycle" type:"structure"`
  4530  
  4531  	// Source server properties.
  4532  	SourceProperties *SourceProperties `locationName:"sourceProperties" type:"structure"`
  4533  
  4534  	// Source server ID.
  4535  	SourceServerID *string `locationName:"sourceServerID" min:"19" type:"string"`
  4536  
  4537  	// Source server Tags.
  4538  	//
  4539  	// Tags is a sensitive parameter and its value will be
  4540  	// replaced with "sensitive" in string returned by FinalizeCutoverOutput's
  4541  	// String and GoString methods.
  4542  	Tags map[string]*string `locationName:"tags" type:"map" sensitive:"true"`
  4543  }
  4544  
  4545  // String returns the string representation.
  4546  //
  4547  // API parameter values that are decorated as "sensitive" in the API will not
  4548  // be included in the string output. The member name will be present, but the
  4549  // value will be replaced with "sensitive".
  4550  func (s FinalizeCutoverOutput) String() string {
  4551  	return awsutil.Prettify(s)
  4552  }
  4553  
  4554  // GoString returns the string representation.
  4555  //
  4556  // API parameter values that are decorated as "sensitive" in the API will not
  4557  // be included in the string output. The member name will be present, but the
  4558  // value will be replaced with "sensitive".
  4559  func (s FinalizeCutoverOutput) GoString() string {
  4560  	return s.String()
  4561  }
  4562  
  4563  // SetArn sets the Arn field's value.
  4564  func (s *FinalizeCutoverOutput) SetArn(v string) *FinalizeCutoverOutput {
  4565  	s.Arn = &v
  4566  	return s
  4567  }
  4568  
  4569  // SetDataReplicationInfo sets the DataReplicationInfo field's value.
  4570  func (s *FinalizeCutoverOutput) SetDataReplicationInfo(v *DataReplicationInfo) *FinalizeCutoverOutput {
  4571  	s.DataReplicationInfo = v
  4572  	return s
  4573  }
  4574  
  4575  // SetIsArchived sets the IsArchived field's value.
  4576  func (s *FinalizeCutoverOutput) SetIsArchived(v bool) *FinalizeCutoverOutput {
  4577  	s.IsArchived = &v
  4578  	return s
  4579  }
  4580  
  4581  // SetLaunchedInstance sets the LaunchedInstance field's value.
  4582  func (s *FinalizeCutoverOutput) SetLaunchedInstance(v *LaunchedInstance) *FinalizeCutoverOutput {
  4583  	s.LaunchedInstance = v
  4584  	return s
  4585  }
  4586  
  4587  // SetLifeCycle sets the LifeCycle field's value.
  4588  func (s *FinalizeCutoverOutput) SetLifeCycle(v *LifeCycle) *FinalizeCutoverOutput {
  4589  	s.LifeCycle = v
  4590  	return s
  4591  }
  4592  
  4593  // SetSourceProperties sets the SourceProperties field's value.
  4594  func (s *FinalizeCutoverOutput) SetSourceProperties(v *SourceProperties) *FinalizeCutoverOutput {
  4595  	s.SourceProperties = v
  4596  	return s
  4597  }
  4598  
  4599  // SetSourceServerID sets the SourceServerID field's value.
  4600  func (s *FinalizeCutoverOutput) SetSourceServerID(v string) *FinalizeCutoverOutput {
  4601  	s.SourceServerID = &v
  4602  	return s
  4603  }
  4604  
  4605  // SetTags sets the Tags field's value.
  4606  func (s *FinalizeCutoverOutput) SetTags(v map[string]*string) *FinalizeCutoverOutput {
  4607  	s.Tags = v
  4608  	return s
  4609  }
  4610  
  4611  type GetLaunchConfigurationInput struct {
  4612  	_ struct{} `type:"structure"`
  4613  
  4614  	// Request to get Launch Configuration information by Source Server ID.
  4615  	//
  4616  	// SourceServerID is a required field
  4617  	SourceServerID *string `locationName:"sourceServerID" min:"19" type:"string" required:"true"`
  4618  }
  4619  
  4620  // String returns the string representation.
  4621  //
  4622  // API parameter values that are decorated as "sensitive" in the API will not
  4623  // be included in the string output. The member name will be present, but the
  4624  // value will be replaced with "sensitive".
  4625  func (s GetLaunchConfigurationInput) String() string {
  4626  	return awsutil.Prettify(s)
  4627  }
  4628  
  4629  // GoString returns the string representation.
  4630  //
  4631  // API parameter values that are decorated as "sensitive" in the API will not
  4632  // be included in the string output. The member name will be present, but the
  4633  // value will be replaced with "sensitive".
  4634  func (s GetLaunchConfigurationInput) GoString() string {
  4635  	return s.String()
  4636  }
  4637  
  4638  // Validate inspects the fields of the type to determine if they are valid.
  4639  func (s *GetLaunchConfigurationInput) Validate() error {
  4640  	invalidParams := request.ErrInvalidParams{Context: "GetLaunchConfigurationInput"}
  4641  	if s.SourceServerID == nil {
  4642  		invalidParams.Add(request.NewErrParamRequired("SourceServerID"))
  4643  	}
  4644  	if s.SourceServerID != nil && len(*s.SourceServerID) < 19 {
  4645  		invalidParams.Add(request.NewErrParamMinLen("SourceServerID", 19))
  4646  	}
  4647  
  4648  	if invalidParams.Len() > 0 {
  4649  		return invalidParams
  4650  	}
  4651  	return nil
  4652  }
  4653  
  4654  // SetSourceServerID sets the SourceServerID field's value.
  4655  func (s *GetLaunchConfigurationInput) SetSourceServerID(v string) *GetLaunchConfigurationInput {
  4656  	s.SourceServerID = &v
  4657  	return s
  4658  }
  4659  
  4660  type GetLaunchConfigurationOutput struct {
  4661  	_ struct{} `type:"structure"`
  4662  
  4663  	// Copy Private IP during Launch Configuration.
  4664  	CopyPrivateIp *bool `locationName:"copyPrivateIp" type:"boolean"`
  4665  
  4666  	// Copy Tags during Launch Configuration.
  4667  	CopyTags *bool `locationName:"copyTags" type:"boolean"`
  4668  
  4669  	// Configure EC2 lauch configuration template ID.
  4670  	Ec2LaunchTemplateID *string `locationName:"ec2LaunchTemplateID" type:"string"`
  4671  
  4672  	// Configure launch dispostion for launch configuration.
  4673  	LaunchDisposition *string `locationName:"launchDisposition" type:"string" enum:"LaunchDisposition"`
  4674  
  4675  	// Configure launch configuration OS licensing.
  4676  	Licensing *Licensing `locationName:"licensing" type:"structure"`
  4677  
  4678  	// Configure launch configuration name.
  4679  	Name *string `locationName:"name" type:"string"`
  4680  
  4681  	// Configure launch configuration Source Server ID.
  4682  	SourceServerID *string `locationName:"sourceServerID" min:"19" type:"string"`
  4683  
  4684  	// Configure launch configuration Target instance type right sizing method.
  4685  	TargetInstanceTypeRightSizingMethod *string `locationName:"targetInstanceTypeRightSizingMethod" type:"string" enum:"TargetInstanceTypeRightSizingMethod"`
  4686  }
  4687  
  4688  // String returns the string representation.
  4689  //
  4690  // API parameter values that are decorated as "sensitive" in the API will not
  4691  // be included in the string output. The member name will be present, but the
  4692  // value will be replaced with "sensitive".
  4693  func (s GetLaunchConfigurationOutput) String() string {
  4694  	return awsutil.Prettify(s)
  4695  }
  4696  
  4697  // GoString returns the string representation.
  4698  //
  4699  // API parameter values that are decorated as "sensitive" in the API will not
  4700  // be included in the string output. The member name will be present, but the
  4701  // value will be replaced with "sensitive".
  4702  func (s GetLaunchConfigurationOutput) GoString() string {
  4703  	return s.String()
  4704  }
  4705  
  4706  // SetCopyPrivateIp sets the CopyPrivateIp field's value.
  4707  func (s *GetLaunchConfigurationOutput) SetCopyPrivateIp(v bool) *GetLaunchConfigurationOutput {
  4708  	s.CopyPrivateIp = &v
  4709  	return s
  4710  }
  4711  
  4712  // SetCopyTags sets the CopyTags field's value.
  4713  func (s *GetLaunchConfigurationOutput) SetCopyTags(v bool) *GetLaunchConfigurationOutput {
  4714  	s.CopyTags = &v
  4715  	return s
  4716  }
  4717  
  4718  // SetEc2LaunchTemplateID sets the Ec2LaunchTemplateID field's value.
  4719  func (s *GetLaunchConfigurationOutput) SetEc2LaunchTemplateID(v string) *GetLaunchConfigurationOutput {
  4720  	s.Ec2LaunchTemplateID = &v
  4721  	return s
  4722  }
  4723  
  4724  // SetLaunchDisposition sets the LaunchDisposition field's value.
  4725  func (s *GetLaunchConfigurationOutput) SetLaunchDisposition(v string) *GetLaunchConfigurationOutput {
  4726  	s.LaunchDisposition = &v
  4727  	return s
  4728  }
  4729  
  4730  // SetLicensing sets the Licensing field's value.
  4731  func (s *GetLaunchConfigurationOutput) SetLicensing(v *Licensing) *GetLaunchConfigurationOutput {
  4732  	s.Licensing = v
  4733  	return s
  4734  }
  4735  
  4736  // SetName sets the Name field's value.
  4737  func (s *GetLaunchConfigurationOutput) SetName(v string) *GetLaunchConfigurationOutput {
  4738  	s.Name = &v
  4739  	return s
  4740  }
  4741  
  4742  // SetSourceServerID sets the SourceServerID field's value.
  4743  func (s *GetLaunchConfigurationOutput) SetSourceServerID(v string) *GetLaunchConfigurationOutput {
  4744  	s.SourceServerID = &v
  4745  	return s
  4746  }
  4747  
  4748  // SetTargetInstanceTypeRightSizingMethod sets the TargetInstanceTypeRightSizingMethod field's value.
  4749  func (s *GetLaunchConfigurationOutput) SetTargetInstanceTypeRightSizingMethod(v string) *GetLaunchConfigurationOutput {
  4750  	s.TargetInstanceTypeRightSizingMethod = &v
  4751  	return s
  4752  }
  4753  
  4754  type GetReplicationConfigurationInput struct {
  4755  	_ struct{} `type:"structure"`
  4756  
  4757  	// Request to get Replication Configuaration by Source Server ID.
  4758  	//
  4759  	// SourceServerID is a required field
  4760  	SourceServerID *string `locationName:"sourceServerID" min:"19" type:"string" required:"true"`
  4761  }
  4762  
  4763  // String returns the string representation.
  4764  //
  4765  // API parameter values that are decorated as "sensitive" in the API will not
  4766  // be included in the string output. The member name will be present, but the
  4767  // value will be replaced with "sensitive".
  4768  func (s GetReplicationConfigurationInput) String() string {
  4769  	return awsutil.Prettify(s)
  4770  }
  4771  
  4772  // GoString returns the string representation.
  4773  //
  4774  // API parameter values that are decorated as "sensitive" in the API will not
  4775  // be included in the string output. The member name will be present, but the
  4776  // value will be replaced with "sensitive".
  4777  func (s GetReplicationConfigurationInput) GoString() string {
  4778  	return s.String()
  4779  }
  4780  
  4781  // Validate inspects the fields of the type to determine if they are valid.
  4782  func (s *GetReplicationConfigurationInput) Validate() error {
  4783  	invalidParams := request.ErrInvalidParams{Context: "GetReplicationConfigurationInput"}
  4784  	if s.SourceServerID == nil {
  4785  		invalidParams.Add(request.NewErrParamRequired("SourceServerID"))
  4786  	}
  4787  	if s.SourceServerID != nil && len(*s.SourceServerID) < 19 {
  4788  		invalidParams.Add(request.NewErrParamMinLen("SourceServerID", 19))
  4789  	}
  4790  
  4791  	if invalidParams.Len() > 0 {
  4792  		return invalidParams
  4793  	}
  4794  	return nil
  4795  }
  4796  
  4797  // SetSourceServerID sets the SourceServerID field's value.
  4798  func (s *GetReplicationConfigurationInput) SetSourceServerID(v string) *GetReplicationConfigurationInput {
  4799  	s.SourceServerID = &v
  4800  	return s
  4801  }
  4802  
  4803  type GetReplicationConfigurationOutput struct {
  4804  	_ struct{} `type:"structure"`
  4805  
  4806  	// Replication Configuration associate default Application Migration Service
  4807  	// Security Group.
  4808  	AssociateDefaultSecurityGroup *bool `locationName:"associateDefaultSecurityGroup" type:"boolean"`
  4809  
  4810  	// Replication Configuration set bandwidth throttling.
  4811  	BandwidthThrottling *int64 `locationName:"bandwidthThrottling" type:"long"`
  4812  
  4813  	// Replication Configuration create Public IP.
  4814  	CreatePublicIP *bool `locationName:"createPublicIP" type:"boolean"`
  4815  
  4816  	// Replication Configuration data plane routing.
  4817  	DataPlaneRouting *string `locationName:"dataPlaneRouting" type:"string" enum:"ReplicationConfigurationDataPlaneRouting"`
  4818  
  4819  	// Replication Configuration use default large Staging Disks.
  4820  	DefaultLargeStagingDiskType *string `locationName:"defaultLargeStagingDiskType" type:"string" enum:"ReplicationConfigurationDefaultLargeStagingDiskType"`
  4821  
  4822  	// Replication Configuration EBS encryption.
  4823  	EbsEncryption *string `locationName:"ebsEncryption" type:"string" enum:"ReplicationConfigurationEbsEncryption"`
  4824  
  4825  	// Replication Configuration EBS encryption key ARN.
  4826  	EbsEncryptionKeyArn *string `locationName:"ebsEncryptionKeyArn" min:"20" type:"string"`
  4827  
  4828  	// Replication Configuration name.
  4829  	Name *string `locationName:"name" type:"string"`
  4830  
  4831  	// Replication Configuration replicated disks.
  4832  	ReplicatedDisks []*ReplicationConfigurationReplicatedDisk `locationName:"replicatedDisks" type:"list"`
  4833  
  4834  	// Replication Configuration Replication Server instance type.
  4835  	ReplicationServerInstanceType *string `locationName:"replicationServerInstanceType" type:"string"`
  4836  
  4837  	// Replication Configuration Replication Server Security Group IDs.
  4838  	ReplicationServersSecurityGroupsIDs []*string `locationName:"replicationServersSecurityGroupsIDs" type:"list"`
  4839  
  4840  	// Replication Configuration Source Server ID.
  4841  	SourceServerID *string `locationName:"sourceServerID" min:"19" type:"string"`
  4842  
  4843  	// Replication Configuration Staging Area subnet ID.
  4844  	StagingAreaSubnetId *string `locationName:"stagingAreaSubnetId" type:"string"`
  4845  
  4846  	// Replication Configuration Staging Area tags.
  4847  	//
  4848  	// StagingAreaTags is a sensitive parameter and its value will be
  4849  	// replaced with "sensitive" in string returned by GetReplicationConfigurationOutput's
  4850  	// String and GoString methods.
  4851  	StagingAreaTags map[string]*string `locationName:"stagingAreaTags" type:"map" sensitive:"true"`
  4852  
  4853  	// Replication Configuration use Dedicated Replication Server.
  4854  	UseDedicatedReplicationServer *bool `locationName:"useDedicatedReplicationServer" type:"boolean"`
  4855  }
  4856  
  4857  // String returns the string representation.
  4858  //
  4859  // API parameter values that are decorated as "sensitive" in the API will not
  4860  // be included in the string output. The member name will be present, but the
  4861  // value will be replaced with "sensitive".
  4862  func (s GetReplicationConfigurationOutput) String() string {
  4863  	return awsutil.Prettify(s)
  4864  }
  4865  
  4866  // GoString returns the string representation.
  4867  //
  4868  // API parameter values that are decorated as "sensitive" in the API will not
  4869  // be included in the string output. The member name will be present, but the
  4870  // value will be replaced with "sensitive".
  4871  func (s GetReplicationConfigurationOutput) GoString() string {
  4872  	return s.String()
  4873  }
  4874  
  4875  // SetAssociateDefaultSecurityGroup sets the AssociateDefaultSecurityGroup field's value.
  4876  func (s *GetReplicationConfigurationOutput) SetAssociateDefaultSecurityGroup(v bool) *GetReplicationConfigurationOutput {
  4877  	s.AssociateDefaultSecurityGroup = &v
  4878  	return s
  4879  }
  4880  
  4881  // SetBandwidthThrottling sets the BandwidthThrottling field's value.
  4882  func (s *GetReplicationConfigurationOutput) SetBandwidthThrottling(v int64) *GetReplicationConfigurationOutput {
  4883  	s.BandwidthThrottling = &v
  4884  	return s
  4885  }
  4886  
  4887  // SetCreatePublicIP sets the CreatePublicIP field's value.
  4888  func (s *GetReplicationConfigurationOutput) SetCreatePublicIP(v bool) *GetReplicationConfigurationOutput {
  4889  	s.CreatePublicIP = &v
  4890  	return s
  4891  }
  4892  
  4893  // SetDataPlaneRouting sets the DataPlaneRouting field's value.
  4894  func (s *GetReplicationConfigurationOutput) SetDataPlaneRouting(v string) *GetReplicationConfigurationOutput {
  4895  	s.DataPlaneRouting = &v
  4896  	return s
  4897  }
  4898  
  4899  // SetDefaultLargeStagingDiskType sets the DefaultLargeStagingDiskType field's value.
  4900  func (s *GetReplicationConfigurationOutput) SetDefaultLargeStagingDiskType(v string) *GetReplicationConfigurationOutput {
  4901  	s.DefaultLargeStagingDiskType = &v
  4902  	return s
  4903  }
  4904  
  4905  // SetEbsEncryption sets the EbsEncryption field's value.
  4906  func (s *GetReplicationConfigurationOutput) SetEbsEncryption(v string) *GetReplicationConfigurationOutput {
  4907  	s.EbsEncryption = &v
  4908  	return s
  4909  }
  4910  
  4911  // SetEbsEncryptionKeyArn sets the EbsEncryptionKeyArn field's value.
  4912  func (s *GetReplicationConfigurationOutput) SetEbsEncryptionKeyArn(v string) *GetReplicationConfigurationOutput {
  4913  	s.EbsEncryptionKeyArn = &v
  4914  	return s
  4915  }
  4916  
  4917  // SetName sets the Name field's value.
  4918  func (s *GetReplicationConfigurationOutput) SetName(v string) *GetReplicationConfigurationOutput {
  4919  	s.Name = &v
  4920  	return s
  4921  }
  4922  
  4923  // SetReplicatedDisks sets the ReplicatedDisks field's value.
  4924  func (s *GetReplicationConfigurationOutput) SetReplicatedDisks(v []*ReplicationConfigurationReplicatedDisk) *GetReplicationConfigurationOutput {
  4925  	s.ReplicatedDisks = v
  4926  	return s
  4927  }
  4928  
  4929  // SetReplicationServerInstanceType sets the ReplicationServerInstanceType field's value.
  4930  func (s *GetReplicationConfigurationOutput) SetReplicationServerInstanceType(v string) *GetReplicationConfigurationOutput {
  4931  	s.ReplicationServerInstanceType = &v
  4932  	return s
  4933  }
  4934  
  4935  // SetReplicationServersSecurityGroupsIDs sets the ReplicationServersSecurityGroupsIDs field's value.
  4936  func (s *GetReplicationConfigurationOutput) SetReplicationServersSecurityGroupsIDs(v []*string) *GetReplicationConfigurationOutput {
  4937  	s.ReplicationServersSecurityGroupsIDs = v
  4938  	return s
  4939  }
  4940  
  4941  // SetSourceServerID sets the SourceServerID field's value.
  4942  func (s *GetReplicationConfigurationOutput) SetSourceServerID(v string) *GetReplicationConfigurationOutput {
  4943  	s.SourceServerID = &v
  4944  	return s
  4945  }
  4946  
  4947  // SetStagingAreaSubnetId sets the StagingAreaSubnetId field's value.
  4948  func (s *GetReplicationConfigurationOutput) SetStagingAreaSubnetId(v string) *GetReplicationConfigurationOutput {
  4949  	s.StagingAreaSubnetId = &v
  4950  	return s
  4951  }
  4952  
  4953  // SetStagingAreaTags sets the StagingAreaTags field's value.
  4954  func (s *GetReplicationConfigurationOutput) SetStagingAreaTags(v map[string]*string) *GetReplicationConfigurationOutput {
  4955  	s.StagingAreaTags = v
  4956  	return s
  4957  }
  4958  
  4959  // SetUseDedicatedReplicationServer sets the UseDedicatedReplicationServer field's value.
  4960  func (s *GetReplicationConfigurationOutput) SetUseDedicatedReplicationServer(v bool) *GetReplicationConfigurationOutput {
  4961  	s.UseDedicatedReplicationServer = &v
  4962  	return s
  4963  }
  4964  
  4965  // Identification hints.
  4966  type IdentificationHints struct {
  4967  	_ struct{} `type:"structure"`
  4968  
  4969  	// AWS Instance ID identification hint.
  4970  	AwsInstanceID *string `locationName:"awsInstanceID" type:"string"`
  4971  
  4972  	// FQDN address identification hint.
  4973  	Fqdn *string `locationName:"fqdn" type:"string"`
  4974  
  4975  	// Hostname identification hint.
  4976  	Hostname *string `locationName:"hostname" type:"string"`
  4977  
  4978  	// vmWare UUID identification hint.
  4979  	VmWareUuid *string `locationName:"vmWareUuid" type:"string"`
  4980  }
  4981  
  4982  // String returns the string representation.
  4983  //
  4984  // API parameter values that are decorated as "sensitive" in the API will not
  4985  // be included in the string output. The member name will be present, but the
  4986  // value will be replaced with "sensitive".
  4987  func (s IdentificationHints) String() string {
  4988  	return awsutil.Prettify(s)
  4989  }
  4990  
  4991  // GoString returns the string representation.
  4992  //
  4993  // API parameter values that are decorated as "sensitive" in the API will not
  4994  // be included in the string output. The member name will be present, but the
  4995  // value will be replaced with "sensitive".
  4996  func (s IdentificationHints) GoString() string {
  4997  	return s.String()
  4998  }
  4999  
  5000  // SetAwsInstanceID sets the AwsInstanceID field's value.
  5001  func (s *IdentificationHints) SetAwsInstanceID(v string) *IdentificationHints {
  5002  	s.AwsInstanceID = &v
  5003  	return s
  5004  }
  5005  
  5006  // SetFqdn sets the Fqdn field's value.
  5007  func (s *IdentificationHints) SetFqdn(v string) *IdentificationHints {
  5008  	s.Fqdn = &v
  5009  	return s
  5010  }
  5011  
  5012  // SetHostname sets the Hostname field's value.
  5013  func (s *IdentificationHints) SetHostname(v string) *IdentificationHints {
  5014  	s.Hostname = &v
  5015  	return s
  5016  }
  5017  
  5018  // SetVmWareUuid sets the VmWareUuid field's value.
  5019  func (s *IdentificationHints) SetVmWareUuid(v string) *IdentificationHints {
  5020  	s.VmWareUuid = &v
  5021  	return s
  5022  }
  5023  
  5024  type InitializeServiceInput struct {
  5025  	_ struct{} `type:"structure" nopayload:"true"`
  5026  }
  5027  
  5028  // String returns the string representation.
  5029  //
  5030  // API parameter values that are decorated as "sensitive" in the API will not
  5031  // be included in the string output. The member name will be present, but the
  5032  // value will be replaced with "sensitive".
  5033  func (s InitializeServiceInput) String() string {
  5034  	return awsutil.Prettify(s)
  5035  }
  5036  
  5037  // GoString returns the string representation.
  5038  //
  5039  // API parameter values that are decorated as "sensitive" in the API will not
  5040  // be included in the string output. The member name will be present, but the
  5041  // value will be replaced with "sensitive".
  5042  func (s InitializeServiceInput) GoString() string {
  5043  	return s.String()
  5044  }
  5045  
  5046  type InitializeServiceOutput struct {
  5047  	_ struct{} `type:"structure" nopayload:"true"`
  5048  }
  5049  
  5050  // String returns the string representation.
  5051  //
  5052  // API parameter values that are decorated as "sensitive" in the API will not
  5053  // be included in the string output. The member name will be present, but the
  5054  // value will be replaced with "sensitive".
  5055  func (s InitializeServiceOutput) String() string {
  5056  	return awsutil.Prettify(s)
  5057  }
  5058  
  5059  // GoString returns the string representation.
  5060  //
  5061  // API parameter values that are decorated as "sensitive" in the API will not
  5062  // be included in the string output. The member name will be present, but the
  5063  // value will be replaced with "sensitive".
  5064  func (s InitializeServiceOutput) GoString() string {
  5065  	return s.String()
  5066  }
  5067  
  5068  // The server encountered an unexpected condition that prevented it from fulfilling
  5069  // the request.
  5070  type InternalServerException struct {
  5071  	_            struct{}                  `type:"structure"`
  5072  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  5073  
  5074  	Message_ *string `locationName:"message" type:"string"`
  5075  
  5076  	// The server encountered an unexpected condition that prevented it from fulfilling
  5077  	// the request. The request will be retried again after x seconds.
  5078  	RetryAfterSeconds *int64 `location:"header" locationName:"Retry-After" type:"long"`
  5079  }
  5080  
  5081  // String returns the string representation.
  5082  //
  5083  // API parameter values that are decorated as "sensitive" in the API will not
  5084  // be included in the string output. The member name will be present, but the
  5085  // value will be replaced with "sensitive".
  5086  func (s InternalServerException) String() string {
  5087  	return awsutil.Prettify(s)
  5088  }
  5089  
  5090  // GoString returns the string representation.
  5091  //
  5092  // API parameter values that are decorated as "sensitive" in the API will not
  5093  // be included in the string output. The member name will be present, but the
  5094  // value will be replaced with "sensitive".
  5095  func (s InternalServerException) GoString() string {
  5096  	return s.String()
  5097  }
  5098  
  5099  func newErrorInternalServerException(v protocol.ResponseMetadata) error {
  5100  	return &InternalServerException{
  5101  		RespMetadata: v,
  5102  	}
  5103  }
  5104  
  5105  // Code returns the exception type name.
  5106  func (s *InternalServerException) Code() string {
  5107  	return "InternalServerException"
  5108  }
  5109  
  5110  // Message returns the exception's message.
  5111  func (s *InternalServerException) Message() string {
  5112  	if s.Message_ != nil {
  5113  		return *s.Message_
  5114  	}
  5115  	return ""
  5116  }
  5117  
  5118  // OrigErr always returns nil, satisfies awserr.Error interface.
  5119  func (s *InternalServerException) OrigErr() error {
  5120  	return nil
  5121  }
  5122  
  5123  func (s *InternalServerException) Error() string {
  5124  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  5125  }
  5126  
  5127  // Status code returns the HTTP status code for the request's response error.
  5128  func (s *InternalServerException) StatusCode() int {
  5129  	return s.RespMetadata.StatusCode
  5130  }
  5131  
  5132  // RequestID returns the service's response RequestID for request.
  5133  func (s *InternalServerException) RequestID() string {
  5134  	return s.RespMetadata.RequestID
  5135  }
  5136  
  5137  // Job.
  5138  type Job struct {
  5139  	_ struct{} `type:"structure"`
  5140  
  5141  	// the ARN of the specific Job.
  5142  	Arn *string `locationName:"arn" min:"20" type:"string"`
  5143  
  5144  	// Job creation time.
  5145  	CreationDateTime *string `locationName:"creationDateTime" min:"19" type:"string"`
  5146  
  5147  	// Job end time.
  5148  	EndDateTime *string `locationName:"endDateTime" min:"19" type:"string"`
  5149  
  5150  	// Job initiated by field.
  5151  	InitiatedBy *string `locationName:"initiatedBy" type:"string" enum:"InitiatedBy"`
  5152  
  5153  	// Job ID.
  5154  	//
  5155  	// JobID is a required field
  5156  	JobID *string `locationName:"jobID" min:"24" type:"string" required:"true"`
  5157  
  5158  	// Servers participating in a specific Job.
  5159  	ParticipatingServers []*ParticipatingServer `locationName:"participatingServers" type:"list"`
  5160  
  5161  	// Job status.
  5162  	Status *string `locationName:"status" type:"string" enum:"JobStatus"`
  5163  
  5164  	// Tags associated with spcific Job.
  5165  	//
  5166  	// Tags is a sensitive parameter and its value will be
  5167  	// replaced with "sensitive" in string returned by Job's
  5168  	// String and GoString methods.
  5169  	Tags map[string]*string `locationName:"tags" type:"map" sensitive:"true"`
  5170  
  5171  	// Job type.
  5172  	Type *string `locationName:"type" type:"string" enum:"JobType"`
  5173  }
  5174  
  5175  // String returns the string representation.
  5176  //
  5177  // API parameter values that are decorated as "sensitive" in the API will not
  5178  // be included in the string output. The member name will be present, but the
  5179  // value will be replaced with "sensitive".
  5180  func (s Job) String() string {
  5181  	return awsutil.Prettify(s)
  5182  }
  5183  
  5184  // GoString returns the string representation.
  5185  //
  5186  // API parameter values that are decorated as "sensitive" in the API will not
  5187  // be included in the string output. The member name will be present, but the
  5188  // value will be replaced with "sensitive".
  5189  func (s Job) GoString() string {
  5190  	return s.String()
  5191  }
  5192  
  5193  // SetArn sets the Arn field's value.
  5194  func (s *Job) SetArn(v string) *Job {
  5195  	s.Arn = &v
  5196  	return s
  5197  }
  5198  
  5199  // SetCreationDateTime sets the CreationDateTime field's value.
  5200  func (s *Job) SetCreationDateTime(v string) *Job {
  5201  	s.CreationDateTime = &v
  5202  	return s
  5203  }
  5204  
  5205  // SetEndDateTime sets the EndDateTime field's value.
  5206  func (s *Job) SetEndDateTime(v string) *Job {
  5207  	s.EndDateTime = &v
  5208  	return s
  5209  }
  5210  
  5211  // SetInitiatedBy sets the InitiatedBy field's value.
  5212  func (s *Job) SetInitiatedBy(v string) *Job {
  5213  	s.InitiatedBy = &v
  5214  	return s
  5215  }
  5216  
  5217  // SetJobID sets the JobID field's value.
  5218  func (s *Job) SetJobID(v string) *Job {
  5219  	s.JobID = &v
  5220  	return s
  5221  }
  5222  
  5223  // SetParticipatingServers sets the ParticipatingServers field's value.
  5224  func (s *Job) SetParticipatingServers(v []*ParticipatingServer) *Job {
  5225  	s.ParticipatingServers = v
  5226  	return s
  5227  }
  5228  
  5229  // SetStatus sets the Status field's value.
  5230  func (s *Job) SetStatus(v string) *Job {
  5231  	s.Status = &v
  5232  	return s
  5233  }
  5234  
  5235  // SetTags sets the Tags field's value.
  5236  func (s *Job) SetTags(v map[string]*string) *Job {
  5237  	s.Tags = v
  5238  	return s
  5239  }
  5240  
  5241  // SetType sets the Type field's value.
  5242  func (s *Job) SetType(v string) *Job {
  5243  	s.Type = &v
  5244  	return s
  5245  }
  5246  
  5247  // Job log.
  5248  type JobLog struct {
  5249  	_ struct{} `type:"structure"`
  5250  
  5251  	// Job log event.
  5252  	Event *string `locationName:"event" type:"string" enum:"JobLogEvent"`
  5253  
  5254  	// Job event data
  5255  	EventData *JobLogEventData `locationName:"eventData" type:"structure"`
  5256  
  5257  	// Job log event date and time.
  5258  	LogDateTime *string `locationName:"logDateTime" min:"19" type:"string"`
  5259  }
  5260  
  5261  // String returns the string representation.
  5262  //
  5263  // API parameter values that are decorated as "sensitive" in the API will not
  5264  // be included in the string output. The member name will be present, but the
  5265  // value will be replaced with "sensitive".
  5266  func (s JobLog) String() string {
  5267  	return awsutil.Prettify(s)
  5268  }
  5269  
  5270  // GoString returns the string representation.
  5271  //
  5272  // API parameter values that are decorated as "sensitive" in the API will not
  5273  // be included in the string output. The member name will be present, but the
  5274  // value will be replaced with "sensitive".
  5275  func (s JobLog) GoString() string {
  5276  	return s.String()
  5277  }
  5278  
  5279  // SetEvent sets the Event field's value.
  5280  func (s *JobLog) SetEvent(v string) *JobLog {
  5281  	s.Event = &v
  5282  	return s
  5283  }
  5284  
  5285  // SetEventData sets the EventData field's value.
  5286  func (s *JobLog) SetEventData(v *JobLogEventData) *JobLog {
  5287  	s.EventData = v
  5288  	return s
  5289  }
  5290  
  5291  // SetLogDateTime sets the LogDateTime field's value.
  5292  func (s *JobLog) SetLogDateTime(v string) *JobLog {
  5293  	s.LogDateTime = &v
  5294  	return s
  5295  }
  5296  
  5297  // Job log data
  5298  type JobLogEventData struct {
  5299  	_ struct{} `type:"structure"`
  5300  
  5301  	// Job Event conversion Server ID.
  5302  	ConversionServerID *string `locationName:"conversionServerID" type:"string"`
  5303  
  5304  	// Job error.
  5305  	RawError *string `locationName:"rawError" type:"string"`
  5306  
  5307  	// Job Event Source Server ID.
  5308  	SourceServerID *string `locationName:"sourceServerID" min:"19" type:"string"`
  5309  
  5310  	// Job Event Target instance ID.
  5311  	TargetInstanceID *string `locationName:"targetInstanceID" type:"string"`
  5312  }
  5313  
  5314  // String returns the string representation.
  5315  //
  5316  // API parameter values that are decorated as "sensitive" in the API will not
  5317  // be included in the string output. The member name will be present, but the
  5318  // value will be replaced with "sensitive".
  5319  func (s JobLogEventData) String() string {
  5320  	return awsutil.Prettify(s)
  5321  }
  5322  
  5323  // GoString returns the string representation.
  5324  //
  5325  // API parameter values that are decorated as "sensitive" in the API will not
  5326  // be included in the string output. The member name will be present, but the
  5327  // value will be replaced with "sensitive".
  5328  func (s JobLogEventData) GoString() string {
  5329  	return s.String()
  5330  }
  5331  
  5332  // SetConversionServerID sets the ConversionServerID field's value.
  5333  func (s *JobLogEventData) SetConversionServerID(v string) *JobLogEventData {
  5334  	s.ConversionServerID = &v
  5335  	return s
  5336  }
  5337  
  5338  // SetRawError sets the RawError field's value.
  5339  func (s *JobLogEventData) SetRawError(v string) *JobLogEventData {
  5340  	s.RawError = &v
  5341  	return s
  5342  }
  5343  
  5344  // SetSourceServerID sets the SourceServerID field's value.
  5345  func (s *JobLogEventData) SetSourceServerID(v string) *JobLogEventData {
  5346  	s.SourceServerID = &v
  5347  	return s
  5348  }
  5349  
  5350  // SetTargetInstanceID sets the TargetInstanceID field's value.
  5351  func (s *JobLogEventData) SetTargetInstanceID(v string) *JobLogEventData {
  5352  	s.TargetInstanceID = &v
  5353  	return s
  5354  }
  5355  
  5356  // Configure launced instance.
  5357  type LaunchedInstance struct {
  5358  	_ struct{} `type:"structure"`
  5359  
  5360  	// Configure launced instance EC2 ID.
  5361  	Ec2InstanceID *string `locationName:"ec2InstanceID" type:"string"`
  5362  
  5363  	// Configure launced instance first boot.
  5364  	FirstBoot *string `locationName:"firstBoot" type:"string" enum:"FirstBoot"`
  5365  
  5366  	// Configure launced instance Job ID.
  5367  	JobID *string `locationName:"jobID" min:"24" type:"string"`
  5368  }
  5369  
  5370  // String returns the string representation.
  5371  //
  5372  // API parameter values that are decorated as "sensitive" in the API will not
  5373  // be included in the string output. The member name will be present, but the
  5374  // value will be replaced with "sensitive".
  5375  func (s LaunchedInstance) String() string {
  5376  	return awsutil.Prettify(s)
  5377  }
  5378  
  5379  // GoString returns the string representation.
  5380  //
  5381  // API parameter values that are decorated as "sensitive" in the API will not
  5382  // be included in the string output. The member name will be present, but the
  5383  // value will be replaced with "sensitive".
  5384  func (s LaunchedInstance) GoString() string {
  5385  	return s.String()
  5386  }
  5387  
  5388  // SetEc2InstanceID sets the Ec2InstanceID field's value.
  5389  func (s *LaunchedInstance) SetEc2InstanceID(v string) *LaunchedInstance {
  5390  	s.Ec2InstanceID = &v
  5391  	return s
  5392  }
  5393  
  5394  // SetFirstBoot sets the FirstBoot field's value.
  5395  func (s *LaunchedInstance) SetFirstBoot(v string) *LaunchedInstance {
  5396  	s.FirstBoot = &v
  5397  	return s
  5398  }
  5399  
  5400  // SetJobID sets the JobID field's value.
  5401  func (s *LaunchedInstance) SetJobID(v string) *LaunchedInstance {
  5402  	s.JobID = &v
  5403  	return s
  5404  }
  5405  
  5406  // Configure Licensing.
  5407  type Licensing struct {
  5408  	_ struct{} `type:"structure"`
  5409  
  5410  	// Configure BYOL OS licensing.
  5411  	OsByol *bool `locationName:"osByol" type:"boolean"`
  5412  }
  5413  
  5414  // String returns the string representation.
  5415  //
  5416  // API parameter values that are decorated as "sensitive" in the API will not
  5417  // be included in the string output. The member name will be present, but the
  5418  // value will be replaced with "sensitive".
  5419  func (s Licensing) String() string {
  5420  	return awsutil.Prettify(s)
  5421  }
  5422  
  5423  // GoString returns the string representation.
  5424  //
  5425  // API parameter values that are decorated as "sensitive" in the API will not
  5426  // be included in the string output. The member name will be present, but the
  5427  // value will be replaced with "sensitive".
  5428  func (s Licensing) GoString() string {
  5429  	return s.String()
  5430  }
  5431  
  5432  // SetOsByol sets the OsByol field's value.
  5433  func (s *Licensing) SetOsByol(v bool) *Licensing {
  5434  	s.OsByol = &v
  5435  	return s
  5436  }
  5437  
  5438  // Lifecycle.
  5439  type LifeCycle struct {
  5440  	_ struct{} `type:"structure"`
  5441  
  5442  	// Lifecycle added to service data and time.
  5443  	AddedToServiceDateTime *string `locationName:"addedToServiceDateTime" min:"19" type:"string"`
  5444  
  5445  	// Lifecycle elapsed time and duration.
  5446  	ElapsedReplicationDuration *string `locationName:"elapsedReplicationDuration" min:"19" type:"string"`
  5447  
  5448  	// Lifecycle replication initiation date and time.
  5449  	FirstByteDateTime *string `locationName:"firstByteDateTime" min:"19" type:"string"`
  5450  
  5451  	// Lifecycle last Cutover.
  5452  	LastCutover *LifeCycleLastCutover `locationName:"lastCutover" type:"structure"`
  5453  
  5454  	// Lifecycle last seen date and time.
  5455  	LastSeenByServiceDateTime *string `locationName:"lastSeenByServiceDateTime" min:"19" type:"string"`
  5456  
  5457  	// Lifecycle last Test.
  5458  	LastTest *LifeCycleLastTest `locationName:"lastTest" type:"structure"`
  5459  
  5460  	// Lifecycle state.
  5461  	State *string `locationName:"state" type:"string" enum:"LifeCycleState"`
  5462  }
  5463  
  5464  // String returns the string representation.
  5465  //
  5466  // API parameter values that are decorated as "sensitive" in the API will not
  5467  // be included in the string output. The member name will be present, but the
  5468  // value will be replaced with "sensitive".
  5469  func (s LifeCycle) String() string {
  5470  	return awsutil.Prettify(s)
  5471  }
  5472  
  5473  // GoString returns the string representation.
  5474  //
  5475  // API parameter values that are decorated as "sensitive" in the API will not
  5476  // be included in the string output. The member name will be present, but the
  5477  // value will be replaced with "sensitive".
  5478  func (s LifeCycle) GoString() string {
  5479  	return s.String()
  5480  }
  5481  
  5482  // SetAddedToServiceDateTime sets the AddedToServiceDateTime field's value.
  5483  func (s *LifeCycle) SetAddedToServiceDateTime(v string) *LifeCycle {
  5484  	s.AddedToServiceDateTime = &v
  5485  	return s
  5486  }
  5487  
  5488  // SetElapsedReplicationDuration sets the ElapsedReplicationDuration field's value.
  5489  func (s *LifeCycle) SetElapsedReplicationDuration(v string) *LifeCycle {
  5490  	s.ElapsedReplicationDuration = &v
  5491  	return s
  5492  }
  5493  
  5494  // SetFirstByteDateTime sets the FirstByteDateTime field's value.
  5495  func (s *LifeCycle) SetFirstByteDateTime(v string) *LifeCycle {
  5496  	s.FirstByteDateTime = &v
  5497  	return s
  5498  }
  5499  
  5500  // SetLastCutover sets the LastCutover field's value.
  5501  func (s *LifeCycle) SetLastCutover(v *LifeCycleLastCutover) *LifeCycle {
  5502  	s.LastCutover = v
  5503  	return s
  5504  }
  5505  
  5506  // SetLastSeenByServiceDateTime sets the LastSeenByServiceDateTime field's value.
  5507  func (s *LifeCycle) SetLastSeenByServiceDateTime(v string) *LifeCycle {
  5508  	s.LastSeenByServiceDateTime = &v
  5509  	return s
  5510  }
  5511  
  5512  // SetLastTest sets the LastTest field's value.
  5513  func (s *LifeCycle) SetLastTest(v *LifeCycleLastTest) *LifeCycle {
  5514  	s.LastTest = v
  5515  	return s
  5516  }
  5517  
  5518  // SetState sets the State field's value.
  5519  func (s *LifeCycle) SetState(v string) *LifeCycle {
  5520  	s.State = &v
  5521  	return s
  5522  }
  5523  
  5524  // Lifecycle last Cutover .
  5525  type LifeCycleLastCutover struct {
  5526  	_ struct{} `type:"structure"`
  5527  
  5528  	// Lifecycle Cutover finalized date and time.
  5529  	Finalized *LifeCycleLastCutoverFinalized `locationName:"finalized" type:"structure"`
  5530  
  5531  	// Lifecycle last Cutover initiated.
  5532  	Initiated *LifeCycleLastCutoverInitiated `locationName:"initiated" type:"structure"`
  5533  
  5534  	// Lifecycle last Cutover reverted.
  5535  	Reverted *LifeCycleLastCutoverReverted `locationName:"reverted" type:"structure"`
  5536  }
  5537  
  5538  // String returns the string representation.
  5539  //
  5540  // API parameter values that are decorated as "sensitive" in the API will not
  5541  // be included in the string output. The member name will be present, but the
  5542  // value will be replaced with "sensitive".
  5543  func (s LifeCycleLastCutover) String() string {
  5544  	return awsutil.Prettify(s)
  5545  }
  5546  
  5547  // GoString returns the string representation.
  5548  //
  5549  // API parameter values that are decorated as "sensitive" in the API will not
  5550  // be included in the string output. The member name will be present, but the
  5551  // value will be replaced with "sensitive".
  5552  func (s LifeCycleLastCutover) GoString() string {
  5553  	return s.String()
  5554  }
  5555  
  5556  // SetFinalized sets the Finalized field's value.
  5557  func (s *LifeCycleLastCutover) SetFinalized(v *LifeCycleLastCutoverFinalized) *LifeCycleLastCutover {
  5558  	s.Finalized = v
  5559  	return s
  5560  }
  5561  
  5562  // SetInitiated sets the Initiated field's value.
  5563  func (s *LifeCycleLastCutover) SetInitiated(v *LifeCycleLastCutoverInitiated) *LifeCycleLastCutover {
  5564  	s.Initiated = v
  5565  	return s
  5566  }
  5567  
  5568  // SetReverted sets the Reverted field's value.
  5569  func (s *LifeCycleLastCutover) SetReverted(v *LifeCycleLastCutoverReverted) *LifeCycleLastCutover {
  5570  	s.Reverted = v
  5571  	return s
  5572  }
  5573  
  5574  // Lifecycle Cutover finalized
  5575  type LifeCycleLastCutoverFinalized struct {
  5576  	_ struct{} `type:"structure"`
  5577  
  5578  	// Lifecycle Cutover finalized date and time.
  5579  	ApiCallDateTime *string `locationName:"apiCallDateTime" min:"19" type:"string"`
  5580  }
  5581  
  5582  // String returns the string representation.
  5583  //
  5584  // API parameter values that are decorated as "sensitive" in the API will not
  5585  // be included in the string output. The member name will be present, but the
  5586  // value will be replaced with "sensitive".
  5587  func (s LifeCycleLastCutoverFinalized) String() string {
  5588  	return awsutil.Prettify(s)
  5589  }
  5590  
  5591  // GoString returns the string representation.
  5592  //
  5593  // API parameter values that are decorated as "sensitive" in the API will not
  5594  // be included in the string output. The member name will be present, but the
  5595  // value will be replaced with "sensitive".
  5596  func (s LifeCycleLastCutoverFinalized) GoString() string {
  5597  	return s.String()
  5598  }
  5599  
  5600  // SetApiCallDateTime sets the ApiCallDateTime field's value.
  5601  func (s *LifeCycleLastCutoverFinalized) SetApiCallDateTime(v string) *LifeCycleLastCutoverFinalized {
  5602  	s.ApiCallDateTime = &v
  5603  	return s
  5604  }
  5605  
  5606  // Lifecycle last Cutover initiated.
  5607  type LifeCycleLastCutoverInitiated struct {
  5608  	_ struct{} `type:"structure"`
  5609  
  5610  	ApiCallDateTime *string `locationName:"apiCallDateTime" min:"19" type:"string"`
  5611  
  5612  	// Lifecycle last Cutover initiated by Job ID.
  5613  	JobID *string `locationName:"jobID" min:"24" type:"string"`
  5614  }
  5615  
  5616  // String 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 LifeCycleLastCutoverInitiated) String() string {
  5622  	return awsutil.Prettify(s)
  5623  }
  5624  
  5625  // GoString returns the string representation.
  5626  //
  5627  // API parameter values that are decorated as "sensitive" in the API will not
  5628  // be included in the string output. The member name will be present, but the
  5629  // value will be replaced with "sensitive".
  5630  func (s LifeCycleLastCutoverInitiated) GoString() string {
  5631  	return s.String()
  5632  }
  5633  
  5634  // SetApiCallDateTime sets the ApiCallDateTime field's value.
  5635  func (s *LifeCycleLastCutoverInitiated) SetApiCallDateTime(v string) *LifeCycleLastCutoverInitiated {
  5636  	s.ApiCallDateTime = &v
  5637  	return s
  5638  }
  5639  
  5640  // SetJobID sets the JobID field's value.
  5641  func (s *LifeCycleLastCutoverInitiated) SetJobID(v string) *LifeCycleLastCutoverInitiated {
  5642  	s.JobID = &v
  5643  	return s
  5644  }
  5645  
  5646  // Lifecycle last Cutover reverted.
  5647  type LifeCycleLastCutoverReverted struct {
  5648  	_ struct{} `type:"structure"`
  5649  
  5650  	// Lifecycle last Cutover reverted API call date time.
  5651  	ApiCallDateTime *string `locationName:"apiCallDateTime" min:"19" type:"string"`
  5652  }
  5653  
  5654  // String returns the string representation.
  5655  //
  5656  // API parameter values that are decorated as "sensitive" in the API will not
  5657  // be included in the string output. The member name will be present, but the
  5658  // value will be replaced with "sensitive".
  5659  func (s LifeCycleLastCutoverReverted) String() string {
  5660  	return awsutil.Prettify(s)
  5661  }
  5662  
  5663  // GoString returns the string representation.
  5664  //
  5665  // API parameter values that are decorated as "sensitive" in the API will not
  5666  // be included in the string output. The member name will be present, but the
  5667  // value will be replaced with "sensitive".
  5668  func (s LifeCycleLastCutoverReverted) GoString() string {
  5669  	return s.String()
  5670  }
  5671  
  5672  // SetApiCallDateTime sets the ApiCallDateTime field's value.
  5673  func (s *LifeCycleLastCutoverReverted) SetApiCallDateTime(v string) *LifeCycleLastCutoverReverted {
  5674  	s.ApiCallDateTime = &v
  5675  	return s
  5676  }
  5677  
  5678  // Lifecycle last Test.
  5679  type LifeCycleLastTest struct {
  5680  	_ struct{} `type:"structure"`
  5681  
  5682  	// Lifecycle last Test finlized.
  5683  	Finalized *LifeCycleLastTestFinalized `locationName:"finalized" type:"structure"`
  5684  
  5685  	// Lifecycle last Test initiated.
  5686  	Initiated *LifeCycleLastTestInitiated `locationName:"initiated" type:"structure"`
  5687  
  5688  	// Lifecycle last Test reverted.
  5689  	Reverted *LifeCycleLastTestReverted `locationName:"reverted" type:"structure"`
  5690  }
  5691  
  5692  // String returns the string representation.
  5693  //
  5694  // API parameter values that are decorated as "sensitive" in the API will not
  5695  // be included in the string output. The member name will be present, but the
  5696  // value will be replaced with "sensitive".
  5697  func (s LifeCycleLastTest) String() string {
  5698  	return awsutil.Prettify(s)
  5699  }
  5700  
  5701  // GoString returns the string representation.
  5702  //
  5703  // API parameter values that are decorated as "sensitive" in the API will not
  5704  // be included in the string output. The member name will be present, but the
  5705  // value will be replaced with "sensitive".
  5706  func (s LifeCycleLastTest) GoString() string {
  5707  	return s.String()
  5708  }
  5709  
  5710  // SetFinalized sets the Finalized field's value.
  5711  func (s *LifeCycleLastTest) SetFinalized(v *LifeCycleLastTestFinalized) *LifeCycleLastTest {
  5712  	s.Finalized = v
  5713  	return s
  5714  }
  5715  
  5716  // SetInitiated sets the Initiated field's value.
  5717  func (s *LifeCycleLastTest) SetInitiated(v *LifeCycleLastTestInitiated) *LifeCycleLastTest {
  5718  	s.Initiated = v
  5719  	return s
  5720  }
  5721  
  5722  // SetReverted sets the Reverted field's value.
  5723  func (s *LifeCycleLastTest) SetReverted(v *LifeCycleLastTestReverted) *LifeCycleLastTest {
  5724  	s.Reverted = v
  5725  	return s
  5726  }
  5727  
  5728  // Lifecycle last Test finlized.
  5729  type LifeCycleLastTestFinalized struct {
  5730  	_ struct{} `type:"structure"`
  5731  
  5732  	// Lifecycle Test failed API call date and time.
  5733  	ApiCallDateTime *string `locationName:"apiCallDateTime" min:"19" type:"string"`
  5734  }
  5735  
  5736  // String returns the string representation.
  5737  //
  5738  // API parameter values that are decorated as "sensitive" in the API will not
  5739  // be included in the string output. The member name will be present, but the
  5740  // value will be replaced with "sensitive".
  5741  func (s LifeCycleLastTestFinalized) String() string {
  5742  	return awsutil.Prettify(s)
  5743  }
  5744  
  5745  // GoString returns the string representation.
  5746  //
  5747  // API parameter values that are decorated as "sensitive" in the API will not
  5748  // be included in the string output. The member name will be present, but the
  5749  // value will be replaced with "sensitive".
  5750  func (s LifeCycleLastTestFinalized) GoString() string {
  5751  	return s.String()
  5752  }
  5753  
  5754  // SetApiCallDateTime sets the ApiCallDateTime field's value.
  5755  func (s *LifeCycleLastTestFinalized) SetApiCallDateTime(v string) *LifeCycleLastTestFinalized {
  5756  	s.ApiCallDateTime = &v
  5757  	return s
  5758  }
  5759  
  5760  // Lifecycle last Test initiated.
  5761  type LifeCycleLastTestInitiated struct {
  5762  	_ struct{} `type:"structure"`
  5763  
  5764  	// Lifecycle last Test initiated API call date and time.
  5765  	ApiCallDateTime *string `locationName:"apiCallDateTime" min:"19" type:"string"`
  5766  
  5767  	// Lifecycle last Test initiated Job ID.
  5768  	JobID *string `locationName:"jobID" min:"24" type:"string"`
  5769  }
  5770  
  5771  // String returns the string representation.
  5772  //
  5773  // API parameter values that are decorated as "sensitive" in the API will not
  5774  // be included in the string output. The member name will be present, but the
  5775  // value will be replaced with "sensitive".
  5776  func (s LifeCycleLastTestInitiated) String() string {
  5777  	return awsutil.Prettify(s)
  5778  }
  5779  
  5780  // GoString returns the string representation.
  5781  //
  5782  // API parameter values that are decorated as "sensitive" in the API will not
  5783  // be included in the string output. The member name will be present, but the
  5784  // value will be replaced with "sensitive".
  5785  func (s LifeCycleLastTestInitiated) GoString() string {
  5786  	return s.String()
  5787  }
  5788  
  5789  // SetApiCallDateTime sets the ApiCallDateTime field's value.
  5790  func (s *LifeCycleLastTestInitiated) SetApiCallDateTime(v string) *LifeCycleLastTestInitiated {
  5791  	s.ApiCallDateTime = &v
  5792  	return s
  5793  }
  5794  
  5795  // SetJobID sets the JobID field's value.
  5796  func (s *LifeCycleLastTestInitiated) SetJobID(v string) *LifeCycleLastTestInitiated {
  5797  	s.JobID = &v
  5798  	return s
  5799  }
  5800  
  5801  // Lifecycle last Test reverted.
  5802  type LifeCycleLastTestReverted struct {
  5803  	_ struct{} `type:"structure"`
  5804  
  5805  	// Lifecycle last Test reverted API call date and time.
  5806  	ApiCallDateTime *string `locationName:"apiCallDateTime" min:"19" type:"string"`
  5807  }
  5808  
  5809  // String returns the string representation.
  5810  //
  5811  // API parameter values that are decorated as "sensitive" in the API will not
  5812  // be included in the string output. The member name will be present, but the
  5813  // value will be replaced with "sensitive".
  5814  func (s LifeCycleLastTestReverted) String() string {
  5815  	return awsutil.Prettify(s)
  5816  }
  5817  
  5818  // GoString returns the string representation.
  5819  //
  5820  // API parameter values that are decorated as "sensitive" in the API will not
  5821  // be included in the string output. The member name will be present, but the
  5822  // value will be replaced with "sensitive".
  5823  func (s LifeCycleLastTestReverted) GoString() string {
  5824  	return s.String()
  5825  }
  5826  
  5827  // SetApiCallDateTime sets the ApiCallDateTime field's value.
  5828  func (s *LifeCycleLastTestReverted) SetApiCallDateTime(v string) *LifeCycleLastTestReverted {
  5829  	s.ApiCallDateTime = &v
  5830  	return s
  5831  }
  5832  
  5833  type ListTagsForResourceInput struct {
  5834  	_ struct{} `type:"structure" nopayload:"true"`
  5835  
  5836  	// List tags for resource request by ARN.
  5837  	//
  5838  	// ResourceArn is a required field
  5839  	ResourceArn *string `location:"uri" locationName:"resourceArn" min:"20" type:"string" required:"true"`
  5840  }
  5841  
  5842  // String returns the string representation.
  5843  //
  5844  // API parameter values that are decorated as "sensitive" in the API will not
  5845  // be included in the string output. The member name will be present, but the
  5846  // value will be replaced with "sensitive".
  5847  func (s ListTagsForResourceInput) String() string {
  5848  	return awsutil.Prettify(s)
  5849  }
  5850  
  5851  // GoString returns the string representation.
  5852  //
  5853  // API parameter values that are decorated as "sensitive" in the API will not
  5854  // be included in the string output. The member name will be present, but the
  5855  // value will be replaced with "sensitive".
  5856  func (s ListTagsForResourceInput) GoString() string {
  5857  	return s.String()
  5858  }
  5859  
  5860  // Validate inspects the fields of the type to determine if they are valid.
  5861  func (s *ListTagsForResourceInput) Validate() error {
  5862  	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
  5863  	if s.ResourceArn == nil {
  5864  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
  5865  	}
  5866  	if s.ResourceArn != nil && len(*s.ResourceArn) < 20 {
  5867  		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20))
  5868  	}
  5869  
  5870  	if invalidParams.Len() > 0 {
  5871  		return invalidParams
  5872  	}
  5873  	return nil
  5874  }
  5875  
  5876  // SetResourceArn sets the ResourceArn field's value.
  5877  func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
  5878  	s.ResourceArn = &v
  5879  	return s
  5880  }
  5881  
  5882  type ListTagsForResourceOutput struct {
  5883  	_ struct{} `type:"structure"`
  5884  
  5885  	// List tags for resource response.
  5886  	//
  5887  	// Tags is a sensitive parameter and its value will be
  5888  	// replaced with "sensitive" in string returned by ListTagsForResourceOutput's
  5889  	// String and GoString methods.
  5890  	Tags map[string]*string `locationName:"tags" type:"map" sensitive:"true"`
  5891  }
  5892  
  5893  // String returns the string representation.
  5894  //
  5895  // API parameter values that are decorated as "sensitive" in the API will not
  5896  // be included in the string output. The member name will be present, but the
  5897  // value will be replaced with "sensitive".
  5898  func (s ListTagsForResourceOutput) String() string {
  5899  	return awsutil.Prettify(s)
  5900  }
  5901  
  5902  // GoString returns the string representation.
  5903  //
  5904  // API parameter values that are decorated as "sensitive" in the API will not
  5905  // be included in the string output. The member name will be present, but the
  5906  // value will be replaced with "sensitive".
  5907  func (s ListTagsForResourceOutput) GoString() string {
  5908  	return s.String()
  5909  }
  5910  
  5911  // SetTags sets the Tags field's value.
  5912  func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput {
  5913  	s.Tags = v
  5914  	return s
  5915  }
  5916  
  5917  type MarkAsArchivedInput struct {
  5918  	_ struct{} `type:"structure"`
  5919  
  5920  	// Mark as archived by Source Server ID.
  5921  	//
  5922  	// SourceServerID is a required field
  5923  	SourceServerID *string `locationName:"sourceServerID" min:"19" type:"string" required:"true"`
  5924  }
  5925  
  5926  // String returns the string representation.
  5927  //
  5928  // API parameter values that are decorated as "sensitive" in the API will not
  5929  // be included in the string output. The member name will be present, but the
  5930  // value will be replaced with "sensitive".
  5931  func (s MarkAsArchivedInput) String() string {
  5932  	return awsutil.Prettify(s)
  5933  }
  5934  
  5935  // GoString returns the string representation.
  5936  //
  5937  // API parameter values that are decorated as "sensitive" in the API will not
  5938  // be included in the string output. The member name will be present, but the
  5939  // value will be replaced with "sensitive".
  5940  func (s MarkAsArchivedInput) GoString() string {
  5941  	return s.String()
  5942  }
  5943  
  5944  // Validate inspects the fields of the type to determine if they are valid.
  5945  func (s *MarkAsArchivedInput) Validate() error {
  5946  	invalidParams := request.ErrInvalidParams{Context: "MarkAsArchivedInput"}
  5947  	if s.SourceServerID == nil {
  5948  		invalidParams.Add(request.NewErrParamRequired("SourceServerID"))
  5949  	}
  5950  	if s.SourceServerID != nil && len(*s.SourceServerID) < 19 {
  5951  		invalidParams.Add(request.NewErrParamMinLen("SourceServerID", 19))
  5952  	}
  5953  
  5954  	if invalidParams.Len() > 0 {
  5955  		return invalidParams
  5956  	}
  5957  	return nil
  5958  }
  5959  
  5960  // SetSourceServerID sets the SourceServerID field's value.
  5961  func (s *MarkAsArchivedInput) SetSourceServerID(v string) *MarkAsArchivedInput {
  5962  	s.SourceServerID = &v
  5963  	return s
  5964  }
  5965  
  5966  type MarkAsArchivedOutput struct {
  5967  	_ struct{} `type:"structure"`
  5968  
  5969  	// Source server ARN.
  5970  	Arn *string `locationName:"arn" min:"20" type:"string"`
  5971  
  5972  	// Source server data replication info.
  5973  	DataReplicationInfo *DataReplicationInfo `locationName:"dataReplicationInfo" type:"structure"`
  5974  
  5975  	// Source server archived status.
  5976  	IsArchived *bool `locationName:"isArchived" type:"boolean"`
  5977  
  5978  	// Source server launched instance.
  5979  	LaunchedInstance *LaunchedInstance `locationName:"launchedInstance" type:"structure"`
  5980  
  5981  	// Source server lifecycle state.
  5982  	LifeCycle *LifeCycle `locationName:"lifeCycle" type:"structure"`
  5983  
  5984  	// Source server properties.
  5985  	SourceProperties *SourceProperties `locationName:"sourceProperties" type:"structure"`
  5986  
  5987  	// Source server ID.
  5988  	SourceServerID *string `locationName:"sourceServerID" min:"19" type:"string"`
  5989  
  5990  	// Source server Tags.
  5991  	//
  5992  	// Tags is a sensitive parameter and its value will be
  5993  	// replaced with "sensitive" in string returned by MarkAsArchivedOutput's
  5994  	// String and GoString methods.
  5995  	Tags map[string]*string `locationName:"tags" type:"map" sensitive:"true"`
  5996  }
  5997  
  5998  // String returns the string representation.
  5999  //
  6000  // API parameter values that are decorated as "sensitive" in the API will not
  6001  // be included in the string output. The member name will be present, but the
  6002  // value will be replaced with "sensitive".
  6003  func (s MarkAsArchivedOutput) String() string {
  6004  	return awsutil.Prettify(s)
  6005  }
  6006  
  6007  // GoString returns the string representation.
  6008  //
  6009  // API parameter values that are decorated as "sensitive" in the API will not
  6010  // be included in the string output. The member name will be present, but the
  6011  // value will be replaced with "sensitive".
  6012  func (s MarkAsArchivedOutput) GoString() string {
  6013  	return s.String()
  6014  }
  6015  
  6016  // SetArn sets the Arn field's value.
  6017  func (s *MarkAsArchivedOutput) SetArn(v string) *MarkAsArchivedOutput {
  6018  	s.Arn = &v
  6019  	return s
  6020  }
  6021  
  6022  // SetDataReplicationInfo sets the DataReplicationInfo field's value.
  6023  func (s *MarkAsArchivedOutput) SetDataReplicationInfo(v *DataReplicationInfo) *MarkAsArchivedOutput {
  6024  	s.DataReplicationInfo = v
  6025  	return s
  6026  }
  6027  
  6028  // SetIsArchived sets the IsArchived field's value.
  6029  func (s *MarkAsArchivedOutput) SetIsArchived(v bool) *MarkAsArchivedOutput {
  6030  	s.IsArchived = &v
  6031  	return s
  6032  }
  6033  
  6034  // SetLaunchedInstance sets the LaunchedInstance field's value.
  6035  func (s *MarkAsArchivedOutput) SetLaunchedInstance(v *LaunchedInstance) *MarkAsArchivedOutput {
  6036  	s.LaunchedInstance = v
  6037  	return s
  6038  }
  6039  
  6040  // SetLifeCycle sets the LifeCycle field's value.
  6041  func (s *MarkAsArchivedOutput) SetLifeCycle(v *LifeCycle) *MarkAsArchivedOutput {
  6042  	s.LifeCycle = v
  6043  	return s
  6044  }
  6045  
  6046  // SetSourceProperties sets the SourceProperties field's value.
  6047  func (s *MarkAsArchivedOutput) SetSourceProperties(v *SourceProperties) *MarkAsArchivedOutput {
  6048  	s.SourceProperties = v
  6049  	return s
  6050  }
  6051  
  6052  // SetSourceServerID sets the SourceServerID field's value.
  6053  func (s *MarkAsArchivedOutput) SetSourceServerID(v string) *MarkAsArchivedOutput {
  6054  	s.SourceServerID = &v
  6055  	return s
  6056  }
  6057  
  6058  // SetTags sets the Tags field's value.
  6059  func (s *MarkAsArchivedOutput) SetTags(v map[string]*string) *MarkAsArchivedOutput {
  6060  	s.Tags = v
  6061  	return s
  6062  }
  6063  
  6064  // Network interface.
  6065  type NetworkInterface struct {
  6066  	_ struct{} `type:"structure"`
  6067  
  6068  	// Network interface IPs.
  6069  	Ips []*string `locationName:"ips" type:"list"`
  6070  
  6071  	// Network interface primary IP.
  6072  	IsPrimary *bool `locationName:"isPrimary" type:"boolean"`
  6073  
  6074  	// Network interface Mac address.
  6075  	MacAddress *string `locationName:"macAddress" type:"string"`
  6076  }
  6077  
  6078  // String returns the string representation.
  6079  //
  6080  // API parameter values that are decorated as "sensitive" in the API will not
  6081  // be included in the string output. The member name will be present, but the
  6082  // value will be replaced with "sensitive".
  6083  func (s NetworkInterface) String() string {
  6084  	return awsutil.Prettify(s)
  6085  }
  6086  
  6087  // GoString returns the string representation.
  6088  //
  6089  // API parameter values that are decorated as "sensitive" in the API will not
  6090  // be included in the string output. The member name will be present, but the
  6091  // value will be replaced with "sensitive".
  6092  func (s NetworkInterface) GoString() string {
  6093  	return s.String()
  6094  }
  6095  
  6096  // SetIps sets the Ips field's value.
  6097  func (s *NetworkInterface) SetIps(v []*string) *NetworkInterface {
  6098  	s.Ips = v
  6099  	return s
  6100  }
  6101  
  6102  // SetIsPrimary sets the IsPrimary field's value.
  6103  func (s *NetworkInterface) SetIsPrimary(v bool) *NetworkInterface {
  6104  	s.IsPrimary = &v
  6105  	return s
  6106  }
  6107  
  6108  // SetMacAddress sets the MacAddress field's value.
  6109  func (s *NetworkInterface) SetMacAddress(v string) *NetworkInterface {
  6110  	s.MacAddress = &v
  6111  	return s
  6112  }
  6113  
  6114  // Operating System.
  6115  type OS struct {
  6116  	_ struct{} `type:"structure"`
  6117  
  6118  	// OS full string.
  6119  	FullString *string `locationName:"fullString" 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 OS) 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 OS) GoString() string {
  6137  	return s.String()
  6138  }
  6139  
  6140  // SetFullString sets the FullString field's value.
  6141  func (s *OS) SetFullString(v string) *OS {
  6142  	s.FullString = &v
  6143  	return s
  6144  }
  6145  
  6146  // Server participating in Job.
  6147  type ParticipatingServer struct {
  6148  	_ struct{} `type:"structure"`
  6149  
  6150  	// Participating server launch status.
  6151  	LaunchStatus *string `locationName:"launchStatus" type:"string" enum:"LaunchStatus"`
  6152  
  6153  	// Participating server Source Server ID.
  6154  	SourceServerID *string `locationName:"sourceServerID" min:"19" type:"string"`
  6155  }
  6156  
  6157  // String returns the string representation.
  6158  //
  6159  // API parameter values that are decorated as "sensitive" in the API will not
  6160  // be included in the string output. The member name will be present, but the
  6161  // value will be replaced with "sensitive".
  6162  func (s ParticipatingServer) String() string {
  6163  	return awsutil.Prettify(s)
  6164  }
  6165  
  6166  // GoString returns the string representation.
  6167  //
  6168  // API parameter values that are decorated as "sensitive" in the API will not
  6169  // be included in the string output. The member name will be present, but the
  6170  // value will be replaced with "sensitive".
  6171  func (s ParticipatingServer) GoString() string {
  6172  	return s.String()
  6173  }
  6174  
  6175  // SetLaunchStatus sets the LaunchStatus field's value.
  6176  func (s *ParticipatingServer) SetLaunchStatus(v string) *ParticipatingServer {
  6177  	s.LaunchStatus = &v
  6178  	return s
  6179  }
  6180  
  6181  // SetSourceServerID sets the SourceServerID field's value.
  6182  func (s *ParticipatingServer) SetSourceServerID(v string) *ParticipatingServer {
  6183  	s.SourceServerID = &v
  6184  	return s
  6185  }
  6186  
  6187  // Replication Configuration replicated disk.
  6188  type ReplicationConfigurationReplicatedDisk struct {
  6189  	_ struct{} `type:"structure"`
  6190  
  6191  	// Replication Configuration replicated disk device name.
  6192  	DeviceName *string `locationName:"deviceName" type:"string"`
  6193  
  6194  	// Replication Configuration replicated disk IOPs.
  6195  	Iops *int64 `locationName:"iops" type:"long"`
  6196  
  6197  	// Replication Configuration replicated disk boot disk.
  6198  	IsBootDisk *bool `locationName:"isBootDisk" type:"boolean"`
  6199  
  6200  	// Replication Configuration replicated disk staging disk type.
  6201  	StagingDiskType *string `locationName:"stagingDiskType" type:"string" enum:"ReplicationConfigurationReplicatedDiskStagingDiskType"`
  6202  }
  6203  
  6204  // String returns the string representation.
  6205  //
  6206  // API parameter values that are decorated as "sensitive" in the API will not
  6207  // be included in the string output. The member name will be present, but the
  6208  // value will be replaced with "sensitive".
  6209  func (s ReplicationConfigurationReplicatedDisk) String() string {
  6210  	return awsutil.Prettify(s)
  6211  }
  6212  
  6213  // GoString returns the string representation.
  6214  //
  6215  // API parameter values that are decorated as "sensitive" in the API will not
  6216  // be included in the string output. The member name will be present, but the
  6217  // value will be replaced with "sensitive".
  6218  func (s ReplicationConfigurationReplicatedDisk) GoString() string {
  6219  	return s.String()
  6220  }
  6221  
  6222  // SetDeviceName sets the DeviceName field's value.
  6223  func (s *ReplicationConfigurationReplicatedDisk) SetDeviceName(v string) *ReplicationConfigurationReplicatedDisk {
  6224  	s.DeviceName = &v
  6225  	return s
  6226  }
  6227  
  6228  // SetIops sets the Iops field's value.
  6229  func (s *ReplicationConfigurationReplicatedDisk) SetIops(v int64) *ReplicationConfigurationReplicatedDisk {
  6230  	s.Iops = &v
  6231  	return s
  6232  }
  6233  
  6234  // SetIsBootDisk sets the IsBootDisk field's value.
  6235  func (s *ReplicationConfigurationReplicatedDisk) SetIsBootDisk(v bool) *ReplicationConfigurationReplicatedDisk {
  6236  	s.IsBootDisk = &v
  6237  	return s
  6238  }
  6239  
  6240  // SetStagingDiskType sets the StagingDiskType field's value.
  6241  func (s *ReplicationConfigurationReplicatedDisk) SetStagingDiskType(v string) *ReplicationConfigurationReplicatedDisk {
  6242  	s.StagingDiskType = &v
  6243  	return s
  6244  }
  6245  
  6246  type ReplicationConfigurationTemplate struct {
  6247  	_ struct{} `type:"structure"`
  6248  
  6249  	// Replication Configuration template ARN.
  6250  	Arn *string `locationName:"arn" min:"20" type:"string"`
  6251  
  6252  	// Replication Configuration template associate default Application Migration
  6253  	// Service Security group.
  6254  	AssociateDefaultSecurityGroup *bool `locationName:"associateDefaultSecurityGroup" type:"boolean"`
  6255  
  6256  	// Replication Configuration template bandwidth throtting.
  6257  	BandwidthThrottling *int64 `locationName:"bandwidthThrottling" type:"long"`
  6258  
  6259  	// Replication Configuration template create Public IP.
  6260  	CreatePublicIP *bool `locationName:"createPublicIP" type:"boolean"`
  6261  
  6262  	// Replication Configuration template data plane routing.
  6263  	DataPlaneRouting *string `locationName:"dataPlaneRouting" type:"string" enum:"ReplicationConfigurationDataPlaneRouting"`
  6264  
  6265  	// Replication Configuration template use dedault large Staging Disk type.
  6266  	DefaultLargeStagingDiskType *string `locationName:"defaultLargeStagingDiskType" type:"string" enum:"ReplicationConfigurationDefaultLargeStagingDiskType"`
  6267  
  6268  	// Replication Configuration template EBS encryption.
  6269  	EbsEncryption *string `locationName:"ebsEncryption" type:"string" enum:"ReplicationConfigurationEbsEncryption"`
  6270  
  6271  	// Replication Configuration template EBS encryption key ARN.
  6272  	EbsEncryptionKeyArn *string `locationName:"ebsEncryptionKeyArn" min:"20" type:"string"`
  6273  
  6274  	// Replication Configuration template template ID.
  6275  	//
  6276  	// ReplicationConfigurationTemplateID is a required field
  6277  	ReplicationConfigurationTemplateID *string `locationName:"replicationConfigurationTemplateID" min:"21" type:"string" required:"true"`
  6278  
  6279  	// Replication Configuration template server instance type.
  6280  	ReplicationServerInstanceType *string `locationName:"replicationServerInstanceType" type:"string"`
  6281  
  6282  	// Replication Configuration template server Security Groups IDs.
  6283  	ReplicationServersSecurityGroupsIDs []*string `locationName:"replicationServersSecurityGroupsIDs" type:"list"`
  6284  
  6285  	// Replication Configuration template Staging Area subnet ID.
  6286  	StagingAreaSubnetId *string `locationName:"stagingAreaSubnetId" type:"string"`
  6287  
  6288  	// Replication Configuration template Staging Area Tags.
  6289  	//
  6290  	// StagingAreaTags is a sensitive parameter and its value will be
  6291  	// replaced with "sensitive" in string returned by ReplicationConfigurationTemplate's
  6292  	// String and GoString methods.
  6293  	StagingAreaTags map[string]*string `locationName:"stagingAreaTags" type:"map" sensitive:"true"`
  6294  
  6295  	// Replication Configuration template Tags.
  6296  	//
  6297  	// Tags is a sensitive parameter and its value will be
  6298  	// replaced with "sensitive" in string returned by ReplicationConfigurationTemplate's
  6299  	// String and GoString methods.
  6300  	Tags map[string]*string `locationName:"tags" type:"map" sensitive:"true"`
  6301  
  6302  	// Replication Configuration template use Dedicated Replication Server.
  6303  	UseDedicatedReplicationServer *bool `locationName:"useDedicatedReplicationServer" type:"boolean"`
  6304  }
  6305  
  6306  // String returns the string representation.
  6307  //
  6308  // API parameter values that are decorated as "sensitive" in the API will not
  6309  // be included in the string output. The member name will be present, but the
  6310  // value will be replaced with "sensitive".
  6311  func (s ReplicationConfigurationTemplate) String() string {
  6312  	return awsutil.Prettify(s)
  6313  }
  6314  
  6315  // GoString returns the string representation.
  6316  //
  6317  // API parameter values that are decorated as "sensitive" in the API will not
  6318  // be included in the string output. The member name will be present, but the
  6319  // value will be replaced with "sensitive".
  6320  func (s ReplicationConfigurationTemplate) GoString() string {
  6321  	return s.String()
  6322  }
  6323  
  6324  // SetArn sets the Arn field's value.
  6325  func (s *ReplicationConfigurationTemplate) SetArn(v string) *ReplicationConfigurationTemplate {
  6326  	s.Arn = &v
  6327  	return s
  6328  }
  6329  
  6330  // SetAssociateDefaultSecurityGroup sets the AssociateDefaultSecurityGroup field's value.
  6331  func (s *ReplicationConfigurationTemplate) SetAssociateDefaultSecurityGroup(v bool) *ReplicationConfigurationTemplate {
  6332  	s.AssociateDefaultSecurityGroup = &v
  6333  	return s
  6334  }
  6335  
  6336  // SetBandwidthThrottling sets the BandwidthThrottling field's value.
  6337  func (s *ReplicationConfigurationTemplate) SetBandwidthThrottling(v int64) *ReplicationConfigurationTemplate {
  6338  	s.BandwidthThrottling = &v
  6339  	return s
  6340  }
  6341  
  6342  // SetCreatePublicIP sets the CreatePublicIP field's value.
  6343  func (s *ReplicationConfigurationTemplate) SetCreatePublicIP(v bool) *ReplicationConfigurationTemplate {
  6344  	s.CreatePublicIP = &v
  6345  	return s
  6346  }
  6347  
  6348  // SetDataPlaneRouting sets the DataPlaneRouting field's value.
  6349  func (s *ReplicationConfigurationTemplate) SetDataPlaneRouting(v string) *ReplicationConfigurationTemplate {
  6350  	s.DataPlaneRouting = &v
  6351  	return s
  6352  }
  6353  
  6354  // SetDefaultLargeStagingDiskType sets the DefaultLargeStagingDiskType field's value.
  6355  func (s *ReplicationConfigurationTemplate) SetDefaultLargeStagingDiskType(v string) *ReplicationConfigurationTemplate {
  6356  	s.DefaultLargeStagingDiskType = &v
  6357  	return s
  6358  }
  6359  
  6360  // SetEbsEncryption sets the EbsEncryption field's value.
  6361  func (s *ReplicationConfigurationTemplate) SetEbsEncryption(v string) *ReplicationConfigurationTemplate {
  6362  	s.EbsEncryption = &v
  6363  	return s
  6364  }
  6365  
  6366  // SetEbsEncryptionKeyArn sets the EbsEncryptionKeyArn field's value.
  6367  func (s *ReplicationConfigurationTemplate) SetEbsEncryptionKeyArn(v string) *ReplicationConfigurationTemplate {
  6368  	s.EbsEncryptionKeyArn = &v
  6369  	return s
  6370  }
  6371  
  6372  // SetReplicationConfigurationTemplateID sets the ReplicationConfigurationTemplateID field's value.
  6373  func (s *ReplicationConfigurationTemplate) SetReplicationConfigurationTemplateID(v string) *ReplicationConfigurationTemplate {
  6374  	s.ReplicationConfigurationTemplateID = &v
  6375  	return s
  6376  }
  6377  
  6378  // SetReplicationServerInstanceType sets the ReplicationServerInstanceType field's value.
  6379  func (s *ReplicationConfigurationTemplate) SetReplicationServerInstanceType(v string) *ReplicationConfigurationTemplate {
  6380  	s.ReplicationServerInstanceType = &v
  6381  	return s
  6382  }
  6383  
  6384  // SetReplicationServersSecurityGroupsIDs sets the ReplicationServersSecurityGroupsIDs field's value.
  6385  func (s *ReplicationConfigurationTemplate) SetReplicationServersSecurityGroupsIDs(v []*string) *ReplicationConfigurationTemplate {
  6386  	s.ReplicationServersSecurityGroupsIDs = v
  6387  	return s
  6388  }
  6389  
  6390  // SetStagingAreaSubnetId sets the StagingAreaSubnetId field's value.
  6391  func (s *ReplicationConfigurationTemplate) SetStagingAreaSubnetId(v string) *ReplicationConfigurationTemplate {
  6392  	s.StagingAreaSubnetId = &v
  6393  	return s
  6394  }
  6395  
  6396  // SetStagingAreaTags sets the StagingAreaTags field's value.
  6397  func (s *ReplicationConfigurationTemplate) SetStagingAreaTags(v map[string]*string) *ReplicationConfigurationTemplate {
  6398  	s.StagingAreaTags = v
  6399  	return s
  6400  }
  6401  
  6402  // SetTags sets the Tags field's value.
  6403  func (s *ReplicationConfigurationTemplate) SetTags(v map[string]*string) *ReplicationConfigurationTemplate {
  6404  	s.Tags = v
  6405  	return s
  6406  }
  6407  
  6408  // SetUseDedicatedReplicationServer sets the UseDedicatedReplicationServer field's value.
  6409  func (s *ReplicationConfigurationTemplate) SetUseDedicatedReplicationServer(v bool) *ReplicationConfigurationTemplate {
  6410  	s.UseDedicatedReplicationServer = &v
  6411  	return s
  6412  }
  6413  
  6414  // Resource not found exception.
  6415  type ResourceNotFoundException struct {
  6416  	_            struct{}                  `type:"structure"`
  6417  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  6418  
  6419  	Code_ *string `locationName:"code" type:"string"`
  6420  
  6421  	Message_ *string `locationName:"message" type:"string"`
  6422  
  6423  	// Resource ID not found error.
  6424  	ResourceId *string `locationName:"resourceId" type:"string"`
  6425  
  6426  	// Resource type not found error.
  6427  	ResourceType *string `locationName:"resourceType" type:"string"`
  6428  }
  6429  
  6430  // String returns the string representation.
  6431  //
  6432  // API parameter values that are decorated as "sensitive" in the API will not
  6433  // be included in the string output. The member name will be present, but the
  6434  // value will be replaced with "sensitive".
  6435  func (s ResourceNotFoundException) String() string {
  6436  	return awsutil.Prettify(s)
  6437  }
  6438  
  6439  // GoString returns the string representation.
  6440  //
  6441  // API parameter values that are decorated as "sensitive" in the API will not
  6442  // be included in the string output. The member name will be present, but the
  6443  // value will be replaced with "sensitive".
  6444  func (s ResourceNotFoundException) GoString() string {
  6445  	return s.String()
  6446  }
  6447  
  6448  func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
  6449  	return &ResourceNotFoundException{
  6450  		RespMetadata: v,
  6451  	}
  6452  }
  6453  
  6454  // Code returns the exception type name.
  6455  func (s *ResourceNotFoundException) Code() string {
  6456  	return "ResourceNotFoundException"
  6457  }
  6458  
  6459  // Message returns the exception's message.
  6460  func (s *ResourceNotFoundException) Message() string {
  6461  	if s.Message_ != nil {
  6462  		return *s.Message_
  6463  	}
  6464  	return ""
  6465  }
  6466  
  6467  // OrigErr always returns nil, satisfies awserr.Error interface.
  6468  func (s *ResourceNotFoundException) OrigErr() error {
  6469  	return nil
  6470  }
  6471  
  6472  func (s *ResourceNotFoundException) Error() string {
  6473  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  6474  }
  6475  
  6476  // Status code returns the HTTP status code for the request's response error.
  6477  func (s *ResourceNotFoundException) StatusCode() int {
  6478  	return s.RespMetadata.StatusCode
  6479  }
  6480  
  6481  // RequestID returns the service's response RequestID for request.
  6482  func (s *ResourceNotFoundException) RequestID() string {
  6483  	return s.RespMetadata.RequestID
  6484  }
  6485  
  6486  type RetryDataReplicationInput struct {
  6487  	_ struct{} `type:"structure"`
  6488  
  6489  	// Retry data replication for Source Server ID.
  6490  	//
  6491  	// SourceServerID is a required field
  6492  	SourceServerID *string `locationName:"sourceServerID" min:"19" type:"string" required:"true"`
  6493  }
  6494  
  6495  // String returns the string representation.
  6496  //
  6497  // API parameter values that are decorated as "sensitive" in the API will not
  6498  // be included in the string output. The member name will be present, but the
  6499  // value will be replaced with "sensitive".
  6500  func (s RetryDataReplicationInput) String() string {
  6501  	return awsutil.Prettify(s)
  6502  }
  6503  
  6504  // GoString returns the string representation.
  6505  //
  6506  // API parameter values that are decorated as "sensitive" in the API will not
  6507  // be included in the string output. The member name will be present, but the
  6508  // value will be replaced with "sensitive".
  6509  func (s RetryDataReplicationInput) GoString() string {
  6510  	return s.String()
  6511  }
  6512  
  6513  // Validate inspects the fields of the type to determine if they are valid.
  6514  func (s *RetryDataReplicationInput) Validate() error {
  6515  	invalidParams := request.ErrInvalidParams{Context: "RetryDataReplicationInput"}
  6516  	if s.SourceServerID == nil {
  6517  		invalidParams.Add(request.NewErrParamRequired("SourceServerID"))
  6518  	}
  6519  	if s.SourceServerID != nil && len(*s.SourceServerID) < 19 {
  6520  		invalidParams.Add(request.NewErrParamMinLen("SourceServerID", 19))
  6521  	}
  6522  
  6523  	if invalidParams.Len() > 0 {
  6524  		return invalidParams
  6525  	}
  6526  	return nil
  6527  }
  6528  
  6529  // SetSourceServerID sets the SourceServerID field's value.
  6530  func (s *RetryDataReplicationInput) SetSourceServerID(v string) *RetryDataReplicationInput {
  6531  	s.SourceServerID = &v
  6532  	return s
  6533  }
  6534  
  6535  type RetryDataReplicationOutput struct {
  6536  	_ struct{} `type:"structure"`
  6537  
  6538  	// Source server ARN.
  6539  	Arn *string `locationName:"arn" min:"20" type:"string"`
  6540  
  6541  	// Source server data replication info.
  6542  	DataReplicationInfo *DataReplicationInfo `locationName:"dataReplicationInfo" type:"structure"`
  6543  
  6544  	// Source server archived status.
  6545  	IsArchived *bool `locationName:"isArchived" type:"boolean"`
  6546  
  6547  	// Source server launched instance.
  6548  	LaunchedInstance *LaunchedInstance `locationName:"launchedInstance" type:"structure"`
  6549  
  6550  	// Source server lifecycle state.
  6551  	LifeCycle *LifeCycle `locationName:"lifeCycle" type:"structure"`
  6552  
  6553  	// Source server properties.
  6554  	SourceProperties *SourceProperties `locationName:"sourceProperties" type:"structure"`
  6555  
  6556  	// Source server ID.
  6557  	SourceServerID *string `locationName:"sourceServerID" min:"19" type:"string"`
  6558  
  6559  	// Source server Tags.
  6560  	//
  6561  	// Tags is a sensitive parameter and its value will be
  6562  	// replaced with "sensitive" in string returned by RetryDataReplicationOutput's
  6563  	// String and GoString methods.
  6564  	Tags map[string]*string `locationName:"tags" type:"map" sensitive:"true"`
  6565  }
  6566  
  6567  // String returns the string representation.
  6568  //
  6569  // API parameter values that are decorated as "sensitive" in the API will not
  6570  // be included in the string output. The member name will be present, but the
  6571  // value will be replaced with "sensitive".
  6572  func (s RetryDataReplicationOutput) String() string {
  6573  	return awsutil.Prettify(s)
  6574  }
  6575  
  6576  // GoString returns the string representation.
  6577  //
  6578  // API parameter values that are decorated as "sensitive" in the API will not
  6579  // be included in the string output. The member name will be present, but the
  6580  // value will be replaced with "sensitive".
  6581  func (s RetryDataReplicationOutput) GoString() string {
  6582  	return s.String()
  6583  }
  6584  
  6585  // SetArn sets the Arn field's value.
  6586  func (s *RetryDataReplicationOutput) SetArn(v string) *RetryDataReplicationOutput {
  6587  	s.Arn = &v
  6588  	return s
  6589  }
  6590  
  6591  // SetDataReplicationInfo sets the DataReplicationInfo field's value.
  6592  func (s *RetryDataReplicationOutput) SetDataReplicationInfo(v *DataReplicationInfo) *RetryDataReplicationOutput {
  6593  	s.DataReplicationInfo = v
  6594  	return s
  6595  }
  6596  
  6597  // SetIsArchived sets the IsArchived field's value.
  6598  func (s *RetryDataReplicationOutput) SetIsArchived(v bool) *RetryDataReplicationOutput {
  6599  	s.IsArchived = &v
  6600  	return s
  6601  }
  6602  
  6603  // SetLaunchedInstance sets the LaunchedInstance field's value.
  6604  func (s *RetryDataReplicationOutput) SetLaunchedInstance(v *LaunchedInstance) *RetryDataReplicationOutput {
  6605  	s.LaunchedInstance = v
  6606  	return s
  6607  }
  6608  
  6609  // SetLifeCycle sets the LifeCycle field's value.
  6610  func (s *RetryDataReplicationOutput) SetLifeCycle(v *LifeCycle) *RetryDataReplicationOutput {
  6611  	s.LifeCycle = v
  6612  	return s
  6613  }
  6614  
  6615  // SetSourceProperties sets the SourceProperties field's value.
  6616  func (s *RetryDataReplicationOutput) SetSourceProperties(v *SourceProperties) *RetryDataReplicationOutput {
  6617  	s.SourceProperties = v
  6618  	return s
  6619  }
  6620  
  6621  // SetSourceServerID sets the SourceServerID field's value.
  6622  func (s *RetryDataReplicationOutput) SetSourceServerID(v string) *RetryDataReplicationOutput {
  6623  	s.SourceServerID = &v
  6624  	return s
  6625  }
  6626  
  6627  // SetTags sets the Tags field's value.
  6628  func (s *RetryDataReplicationOutput) SetTags(v map[string]*string) *RetryDataReplicationOutput {
  6629  	s.Tags = v
  6630  	return s
  6631  }
  6632  
  6633  // Source server properties.
  6634  type SourceProperties struct {
  6635  	_ struct{} `type:"structure"`
  6636  
  6637  	// Source Server CPUs.
  6638  	Cpus []*CPU `locationName:"cpus" type:"list"`
  6639  
  6640  	// Source Server disks.
  6641  	Disks []*Disk `locationName:"disks" type:"list"`
  6642  
  6643  	// Source server identification hints.
  6644  	IdentificationHints *IdentificationHints `locationName:"identificationHints" type:"structure"`
  6645  
  6646  	// Source server last update date and time.
  6647  	LastUpdatedDateTime *string `locationName:"lastUpdatedDateTime" min:"19" type:"string"`
  6648  
  6649  	// Source server network interfaces.
  6650  	NetworkInterfaces []*NetworkInterface `locationName:"networkInterfaces" type:"list"`
  6651  
  6652  	// Source server OS.
  6653  	Os *OS `locationName:"os" type:"structure"`
  6654  
  6655  	// Source server RAM in bytes.
  6656  	RamBytes *int64 `locationName:"ramBytes" type:"long"`
  6657  
  6658  	// Source server recommended instance type.
  6659  	RecommendedInstanceType *string `locationName:"recommendedInstanceType" type:"string"`
  6660  }
  6661  
  6662  // String returns the string representation.
  6663  //
  6664  // API parameter values that are decorated as "sensitive" in the API will not
  6665  // be included in the string output. The member name will be present, but the
  6666  // value will be replaced with "sensitive".
  6667  func (s SourceProperties) String() string {
  6668  	return awsutil.Prettify(s)
  6669  }
  6670  
  6671  // GoString returns the string representation.
  6672  //
  6673  // API parameter values that are decorated as "sensitive" in the API will not
  6674  // be included in the string output. The member name will be present, but the
  6675  // value will be replaced with "sensitive".
  6676  func (s SourceProperties) GoString() string {
  6677  	return s.String()
  6678  }
  6679  
  6680  // SetCpus sets the Cpus field's value.
  6681  func (s *SourceProperties) SetCpus(v []*CPU) *SourceProperties {
  6682  	s.Cpus = v
  6683  	return s
  6684  }
  6685  
  6686  // SetDisks sets the Disks field's value.
  6687  func (s *SourceProperties) SetDisks(v []*Disk) *SourceProperties {
  6688  	s.Disks = v
  6689  	return s
  6690  }
  6691  
  6692  // SetIdentificationHints sets the IdentificationHints field's value.
  6693  func (s *SourceProperties) SetIdentificationHints(v *IdentificationHints) *SourceProperties {
  6694  	s.IdentificationHints = v
  6695  	return s
  6696  }
  6697  
  6698  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
  6699  func (s *SourceProperties) SetLastUpdatedDateTime(v string) *SourceProperties {
  6700  	s.LastUpdatedDateTime = &v
  6701  	return s
  6702  }
  6703  
  6704  // SetNetworkInterfaces sets the NetworkInterfaces field's value.
  6705  func (s *SourceProperties) SetNetworkInterfaces(v []*NetworkInterface) *SourceProperties {
  6706  	s.NetworkInterfaces = v
  6707  	return s
  6708  }
  6709  
  6710  // SetOs sets the Os field's value.
  6711  func (s *SourceProperties) SetOs(v *OS) *SourceProperties {
  6712  	s.Os = v
  6713  	return s
  6714  }
  6715  
  6716  // SetRamBytes sets the RamBytes field's value.
  6717  func (s *SourceProperties) SetRamBytes(v int64) *SourceProperties {
  6718  	s.RamBytes = &v
  6719  	return s
  6720  }
  6721  
  6722  // SetRecommendedInstanceType sets the RecommendedInstanceType field's value.
  6723  func (s *SourceProperties) SetRecommendedInstanceType(v string) *SourceProperties {
  6724  	s.RecommendedInstanceType = &v
  6725  	return s
  6726  }
  6727  
  6728  type SourceServer struct {
  6729  	_ struct{} `type:"structure"`
  6730  
  6731  	// Source server ARN.
  6732  	Arn *string `locationName:"arn" min:"20" type:"string"`
  6733  
  6734  	// Source server data replication info.
  6735  	DataReplicationInfo *DataReplicationInfo `locationName:"dataReplicationInfo" type:"structure"`
  6736  
  6737  	// Source server archived status.
  6738  	IsArchived *bool `locationName:"isArchived" type:"boolean"`
  6739  
  6740  	// Source server launched instance.
  6741  	LaunchedInstance *LaunchedInstance `locationName:"launchedInstance" type:"structure"`
  6742  
  6743  	// Source server lifecycle state.
  6744  	LifeCycle *LifeCycle `locationName:"lifeCycle" type:"structure"`
  6745  
  6746  	// Source server properties.
  6747  	SourceProperties *SourceProperties `locationName:"sourceProperties" type:"structure"`
  6748  
  6749  	// Source server ID.
  6750  	SourceServerID *string `locationName:"sourceServerID" min:"19" type:"string"`
  6751  
  6752  	// Source server Tags.
  6753  	//
  6754  	// Tags is a sensitive parameter and its value will be
  6755  	// replaced with "sensitive" in string returned by SourceServer's
  6756  	// String and GoString methods.
  6757  	Tags map[string]*string `locationName:"tags" type:"map" sensitive:"true"`
  6758  }
  6759  
  6760  // String returns the string representation.
  6761  //
  6762  // API parameter values that are decorated as "sensitive" in the API will not
  6763  // be included in the string output. The member name will be present, but the
  6764  // value will be replaced with "sensitive".
  6765  func (s SourceServer) String() string {
  6766  	return awsutil.Prettify(s)
  6767  }
  6768  
  6769  // GoString returns the string representation.
  6770  //
  6771  // API parameter values that are decorated as "sensitive" in the API will not
  6772  // be included in the string output. The member name will be present, but the
  6773  // value will be replaced with "sensitive".
  6774  func (s SourceServer) GoString() string {
  6775  	return s.String()
  6776  }
  6777  
  6778  // SetArn sets the Arn field's value.
  6779  func (s *SourceServer) SetArn(v string) *SourceServer {
  6780  	s.Arn = &v
  6781  	return s
  6782  }
  6783  
  6784  // SetDataReplicationInfo sets the DataReplicationInfo field's value.
  6785  func (s *SourceServer) SetDataReplicationInfo(v *DataReplicationInfo) *SourceServer {
  6786  	s.DataReplicationInfo = v
  6787  	return s
  6788  }
  6789  
  6790  // SetIsArchived sets the IsArchived field's value.
  6791  func (s *SourceServer) SetIsArchived(v bool) *SourceServer {
  6792  	s.IsArchived = &v
  6793  	return s
  6794  }
  6795  
  6796  // SetLaunchedInstance sets the LaunchedInstance field's value.
  6797  func (s *SourceServer) SetLaunchedInstance(v *LaunchedInstance) *SourceServer {
  6798  	s.LaunchedInstance = v
  6799  	return s
  6800  }
  6801  
  6802  // SetLifeCycle sets the LifeCycle field's value.
  6803  func (s *SourceServer) SetLifeCycle(v *LifeCycle) *SourceServer {
  6804  	s.LifeCycle = v
  6805  	return s
  6806  }
  6807  
  6808  // SetSourceProperties sets the SourceProperties field's value.
  6809  func (s *SourceServer) SetSourceProperties(v *SourceProperties) *SourceServer {
  6810  	s.SourceProperties = v
  6811  	return s
  6812  }
  6813  
  6814  // SetSourceServerID sets the SourceServerID field's value.
  6815  func (s *SourceServer) SetSourceServerID(v string) *SourceServer {
  6816  	s.SourceServerID = &v
  6817  	return s
  6818  }
  6819  
  6820  // SetTags sets the Tags field's value.
  6821  func (s *SourceServer) SetTags(v map[string]*string) *SourceServer {
  6822  	s.Tags = v
  6823  	return s
  6824  }
  6825  
  6826  type StartCutoverInput struct {
  6827  	_ struct{} `type:"structure"`
  6828  
  6829  	// Start Cutover by Source Server IDs.
  6830  	//
  6831  	// SourceServerIDs is a required field
  6832  	SourceServerIDs []*string `locationName:"sourceServerIDs" min:"1" type:"list" required:"true"`
  6833  
  6834  	// Start Cutover by Tags.
  6835  	//
  6836  	// Tags is a sensitive parameter and its value will be
  6837  	// replaced with "sensitive" in string returned by StartCutoverInput's
  6838  	// String and GoString methods.
  6839  	Tags map[string]*string `locationName:"tags" type:"map" sensitive:"true"`
  6840  }
  6841  
  6842  // String returns the string representation.
  6843  //
  6844  // API parameter values that are decorated as "sensitive" in the API will not
  6845  // be included in the string output. The member name will be present, but the
  6846  // value will be replaced with "sensitive".
  6847  func (s StartCutoverInput) String() string {
  6848  	return awsutil.Prettify(s)
  6849  }
  6850  
  6851  // GoString returns the string representation.
  6852  //
  6853  // API parameter values that are decorated as "sensitive" in the API will not
  6854  // be included in the string output. The member name will be present, but the
  6855  // value will be replaced with "sensitive".
  6856  func (s StartCutoverInput) GoString() string {
  6857  	return s.String()
  6858  }
  6859  
  6860  // Validate inspects the fields of the type to determine if they are valid.
  6861  func (s *StartCutoverInput) Validate() error {
  6862  	invalidParams := request.ErrInvalidParams{Context: "StartCutoverInput"}
  6863  	if s.SourceServerIDs == nil {
  6864  		invalidParams.Add(request.NewErrParamRequired("SourceServerIDs"))
  6865  	}
  6866  	if s.SourceServerIDs != nil && len(s.SourceServerIDs) < 1 {
  6867  		invalidParams.Add(request.NewErrParamMinLen("SourceServerIDs", 1))
  6868  	}
  6869  
  6870  	if invalidParams.Len() > 0 {
  6871  		return invalidParams
  6872  	}
  6873  	return nil
  6874  }
  6875  
  6876  // SetSourceServerIDs sets the SourceServerIDs field's value.
  6877  func (s *StartCutoverInput) SetSourceServerIDs(v []*string) *StartCutoverInput {
  6878  	s.SourceServerIDs = v
  6879  	return s
  6880  }
  6881  
  6882  // SetTags sets the Tags field's value.
  6883  func (s *StartCutoverInput) SetTags(v map[string]*string) *StartCutoverInput {
  6884  	s.Tags = v
  6885  	return s
  6886  }
  6887  
  6888  type StartCutoverOutput struct {
  6889  	_ struct{} `type:"structure"`
  6890  
  6891  	// Start Cutover Job response.
  6892  	Job *Job `locationName:"job" type:"structure"`
  6893  }
  6894  
  6895  // String returns the string representation.
  6896  //
  6897  // API parameter values that are decorated as "sensitive" in the API will not
  6898  // be included in the string output. The member name will be present, but the
  6899  // value will be replaced with "sensitive".
  6900  func (s StartCutoverOutput) String() string {
  6901  	return awsutil.Prettify(s)
  6902  }
  6903  
  6904  // GoString returns the string representation.
  6905  //
  6906  // API parameter values that are decorated as "sensitive" in the API will not
  6907  // be included in the string output. The member name will be present, but the
  6908  // value will be replaced with "sensitive".
  6909  func (s StartCutoverOutput) GoString() string {
  6910  	return s.String()
  6911  }
  6912  
  6913  // SetJob sets the Job field's value.
  6914  func (s *StartCutoverOutput) SetJob(v *Job) *StartCutoverOutput {
  6915  	s.Job = v
  6916  	return s
  6917  }
  6918  
  6919  type StartTestInput struct {
  6920  	_ struct{} `type:"structure"`
  6921  
  6922  	// Start Test for Source Server IDs.
  6923  	//
  6924  	// SourceServerIDs is a required field
  6925  	SourceServerIDs []*string `locationName:"sourceServerIDs" min:"1" type:"list" required:"true"`
  6926  
  6927  	// Start Test by Tags.
  6928  	//
  6929  	// Tags is a sensitive parameter and its value will be
  6930  	// replaced with "sensitive" in string returned by StartTestInput's
  6931  	// String and GoString methods.
  6932  	Tags map[string]*string `locationName:"tags" type:"map" sensitive:"true"`
  6933  }
  6934  
  6935  // String returns the string representation.
  6936  //
  6937  // API parameter values that are decorated as "sensitive" in the API will not
  6938  // be included in the string output. The member name will be present, but the
  6939  // value will be replaced with "sensitive".
  6940  func (s StartTestInput) String() string {
  6941  	return awsutil.Prettify(s)
  6942  }
  6943  
  6944  // GoString returns the string representation.
  6945  //
  6946  // API parameter values that are decorated as "sensitive" in the API will not
  6947  // be included in the string output. The member name will be present, but the
  6948  // value will be replaced with "sensitive".
  6949  func (s StartTestInput) GoString() string {
  6950  	return s.String()
  6951  }
  6952  
  6953  // Validate inspects the fields of the type to determine if they are valid.
  6954  func (s *StartTestInput) Validate() error {
  6955  	invalidParams := request.ErrInvalidParams{Context: "StartTestInput"}
  6956  	if s.SourceServerIDs == nil {
  6957  		invalidParams.Add(request.NewErrParamRequired("SourceServerIDs"))
  6958  	}
  6959  	if s.SourceServerIDs != nil && len(s.SourceServerIDs) < 1 {
  6960  		invalidParams.Add(request.NewErrParamMinLen("SourceServerIDs", 1))
  6961  	}
  6962  
  6963  	if invalidParams.Len() > 0 {
  6964  		return invalidParams
  6965  	}
  6966  	return nil
  6967  }
  6968  
  6969  // SetSourceServerIDs sets the SourceServerIDs field's value.
  6970  func (s *StartTestInput) SetSourceServerIDs(v []*string) *StartTestInput {
  6971  	s.SourceServerIDs = v
  6972  	return s
  6973  }
  6974  
  6975  // SetTags sets the Tags field's value.
  6976  func (s *StartTestInput) SetTags(v map[string]*string) *StartTestInput {
  6977  	s.Tags = v
  6978  	return s
  6979  }
  6980  
  6981  type StartTestOutput struct {
  6982  	_ struct{} `type:"structure"`
  6983  
  6984  	// Start Test Job response.
  6985  	Job *Job `locationName:"job" type:"structure"`
  6986  }
  6987  
  6988  // String returns the string representation.
  6989  //
  6990  // API parameter values that are decorated as "sensitive" in the API will not
  6991  // be included in the string output. The member name will be present, but the
  6992  // value will be replaced with "sensitive".
  6993  func (s StartTestOutput) String() string {
  6994  	return awsutil.Prettify(s)
  6995  }
  6996  
  6997  // GoString returns the string representation.
  6998  //
  6999  // API parameter values that are decorated as "sensitive" in the API will not
  7000  // be included in the string output. The member name will be present, but the
  7001  // value will be replaced with "sensitive".
  7002  func (s StartTestOutput) GoString() string {
  7003  	return s.String()
  7004  }
  7005  
  7006  // SetJob sets the Job field's value.
  7007  func (s *StartTestOutput) SetJob(v *Job) *StartTestOutput {
  7008  	s.Job = v
  7009  	return s
  7010  }
  7011  
  7012  type TagResourceInput struct {
  7013  	_ struct{} `type:"structure"`
  7014  
  7015  	// Tag resource by ARN.
  7016  	//
  7017  	// ResourceArn is a required field
  7018  	ResourceArn *string `location:"uri" locationName:"resourceArn" min:"20" type:"string" required:"true"`
  7019  
  7020  	// Tag resource by Tags.
  7021  	//
  7022  	// Tags is a sensitive parameter and its value will be
  7023  	// replaced with "sensitive" in string returned by TagResourceInput's
  7024  	// String and GoString methods.
  7025  	//
  7026  	// Tags is a required field
  7027  	Tags map[string]*string `locationName:"tags" type:"map" required:"true" sensitive:"true"`
  7028  }
  7029  
  7030  // String returns the string representation.
  7031  //
  7032  // API parameter values that are decorated as "sensitive" in the API will not
  7033  // be included in the string output. The member name will be present, but the
  7034  // value will be replaced with "sensitive".
  7035  func (s TagResourceInput) String() string {
  7036  	return awsutil.Prettify(s)
  7037  }
  7038  
  7039  // GoString returns the string representation.
  7040  //
  7041  // API parameter values that are decorated as "sensitive" in the API will not
  7042  // be included in the string output. The member name will be present, but the
  7043  // value will be replaced with "sensitive".
  7044  func (s TagResourceInput) GoString() string {
  7045  	return s.String()
  7046  }
  7047  
  7048  // Validate inspects the fields of the type to determine if they are valid.
  7049  func (s *TagResourceInput) Validate() error {
  7050  	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
  7051  	if s.ResourceArn == nil {
  7052  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
  7053  	}
  7054  	if s.ResourceArn != nil && len(*s.ResourceArn) < 20 {
  7055  		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20))
  7056  	}
  7057  	if s.Tags == nil {
  7058  		invalidParams.Add(request.NewErrParamRequired("Tags"))
  7059  	}
  7060  
  7061  	if invalidParams.Len() > 0 {
  7062  		return invalidParams
  7063  	}
  7064  	return nil
  7065  }
  7066  
  7067  // SetResourceArn sets the ResourceArn field's value.
  7068  func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
  7069  	s.ResourceArn = &v
  7070  	return s
  7071  }
  7072  
  7073  // SetTags sets the Tags field's value.
  7074  func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput {
  7075  	s.Tags = v
  7076  	return s
  7077  }
  7078  
  7079  type TagResourceOutput struct {
  7080  	_ struct{} `type:"structure" nopayload:"true"`
  7081  }
  7082  
  7083  // String returns the string representation.
  7084  //
  7085  // API parameter values that are decorated as "sensitive" in the API will not
  7086  // be included in the string output. The member name will be present, but the
  7087  // value will be replaced with "sensitive".
  7088  func (s TagResourceOutput) String() string {
  7089  	return awsutil.Prettify(s)
  7090  }
  7091  
  7092  // GoString returns the string representation.
  7093  //
  7094  // API parameter values that are decorated as "sensitive" in the API will not
  7095  // be included in the string output. The member name will be present, but the
  7096  // value will be replaced with "sensitive".
  7097  func (s TagResourceOutput) GoString() string {
  7098  	return s.String()
  7099  }
  7100  
  7101  type TerminateTargetInstancesInput struct {
  7102  	_ struct{} `type:"structure"`
  7103  
  7104  	// Terminate Target instance by Source Server IDs.
  7105  	//
  7106  	// SourceServerIDs is a required field
  7107  	SourceServerIDs []*string `locationName:"sourceServerIDs" min:"1" type:"list" required:"true"`
  7108  
  7109  	// Terminate Target instance by Tags.
  7110  	//
  7111  	// Tags is a sensitive parameter and its value will be
  7112  	// replaced with "sensitive" in string returned by TerminateTargetInstancesInput's
  7113  	// String and GoString methods.
  7114  	Tags map[string]*string `locationName:"tags" type:"map" sensitive:"true"`
  7115  }
  7116  
  7117  // String returns the string representation.
  7118  //
  7119  // API parameter values that are decorated as "sensitive" in the API will not
  7120  // be included in the string output. The member name will be present, but the
  7121  // value will be replaced with "sensitive".
  7122  func (s TerminateTargetInstancesInput) String() string {
  7123  	return awsutil.Prettify(s)
  7124  }
  7125  
  7126  // GoString returns the string representation.
  7127  //
  7128  // API parameter values that are decorated as "sensitive" in the API will not
  7129  // be included in the string output. The member name will be present, but the
  7130  // value will be replaced with "sensitive".
  7131  func (s TerminateTargetInstancesInput) GoString() string {
  7132  	return s.String()
  7133  }
  7134  
  7135  // Validate inspects the fields of the type to determine if they are valid.
  7136  func (s *TerminateTargetInstancesInput) Validate() error {
  7137  	invalidParams := request.ErrInvalidParams{Context: "TerminateTargetInstancesInput"}
  7138  	if s.SourceServerIDs == nil {
  7139  		invalidParams.Add(request.NewErrParamRequired("SourceServerIDs"))
  7140  	}
  7141  	if s.SourceServerIDs != nil && len(s.SourceServerIDs) < 1 {
  7142  		invalidParams.Add(request.NewErrParamMinLen("SourceServerIDs", 1))
  7143  	}
  7144  
  7145  	if invalidParams.Len() > 0 {
  7146  		return invalidParams
  7147  	}
  7148  	return nil
  7149  }
  7150  
  7151  // SetSourceServerIDs sets the SourceServerIDs field's value.
  7152  func (s *TerminateTargetInstancesInput) SetSourceServerIDs(v []*string) *TerminateTargetInstancesInput {
  7153  	s.SourceServerIDs = v
  7154  	return s
  7155  }
  7156  
  7157  // SetTags sets the Tags field's value.
  7158  func (s *TerminateTargetInstancesInput) SetTags(v map[string]*string) *TerminateTargetInstancesInput {
  7159  	s.Tags = v
  7160  	return s
  7161  }
  7162  
  7163  type TerminateTargetInstancesOutput struct {
  7164  	_ struct{} `type:"structure"`
  7165  
  7166  	// Terminate Target instance Job response.
  7167  	Job *Job `locationName:"job" type:"structure"`
  7168  }
  7169  
  7170  // String returns the string representation.
  7171  //
  7172  // API parameter values that are decorated as "sensitive" in the API will not
  7173  // be included in the string output. The member name will be present, but the
  7174  // value will be replaced with "sensitive".
  7175  func (s TerminateTargetInstancesOutput) String() string {
  7176  	return awsutil.Prettify(s)
  7177  }
  7178  
  7179  // GoString returns the string representation.
  7180  //
  7181  // API parameter values that are decorated as "sensitive" in the API will not
  7182  // be included in the string output. The member name will be present, but the
  7183  // value will be replaced with "sensitive".
  7184  func (s TerminateTargetInstancesOutput) GoString() string {
  7185  	return s.String()
  7186  }
  7187  
  7188  // SetJob sets the Job field's value.
  7189  func (s *TerminateTargetInstancesOutput) SetJob(v *Job) *TerminateTargetInstancesOutput {
  7190  	s.Job = v
  7191  	return s
  7192  }
  7193  
  7194  // Reached throttling quota exception.
  7195  type ThrottlingException struct {
  7196  	_            struct{}                  `type:"structure"`
  7197  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  7198  
  7199  	Message_ *string `locationName:"message" type:"string"`
  7200  
  7201  	// Reached throttling quota exception.
  7202  	QuotaCode *string `locationName:"quotaCode" type:"string"`
  7203  
  7204  	// Reached throttling quota exception will retry after x seconds.
  7205  	RetryAfterSeconds *string `location:"header" locationName:"Retry-After" type:"string"`
  7206  
  7207  	// Reached throttling quota exception service code.
  7208  	ServiceCode *string `locationName:"serviceCode" type:"string"`
  7209  }
  7210  
  7211  // String returns the string representation.
  7212  //
  7213  // API parameter values that are decorated as "sensitive" in the API will not
  7214  // be included in the string output. The member name will be present, but the
  7215  // value will be replaced with "sensitive".
  7216  func (s ThrottlingException) String() string {
  7217  	return awsutil.Prettify(s)
  7218  }
  7219  
  7220  // GoString returns the string representation.
  7221  //
  7222  // API parameter values that are decorated as "sensitive" in the API will not
  7223  // be included in the string output. The member name will be present, but the
  7224  // value will be replaced with "sensitive".
  7225  func (s ThrottlingException) GoString() string {
  7226  	return s.String()
  7227  }
  7228  
  7229  func newErrorThrottlingException(v protocol.ResponseMetadata) error {
  7230  	return &ThrottlingException{
  7231  		RespMetadata: v,
  7232  	}
  7233  }
  7234  
  7235  // Code returns the exception type name.
  7236  func (s *ThrottlingException) Code() string {
  7237  	return "ThrottlingException"
  7238  }
  7239  
  7240  // Message returns the exception's message.
  7241  func (s *ThrottlingException) Message() string {
  7242  	if s.Message_ != nil {
  7243  		return *s.Message_
  7244  	}
  7245  	return ""
  7246  }
  7247  
  7248  // OrigErr always returns nil, satisfies awserr.Error interface.
  7249  func (s *ThrottlingException) OrigErr() error {
  7250  	return nil
  7251  }
  7252  
  7253  func (s *ThrottlingException) Error() string {
  7254  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  7255  }
  7256  
  7257  // Status code returns the HTTP status code for the request's response error.
  7258  func (s *ThrottlingException) StatusCode() int {
  7259  	return s.RespMetadata.StatusCode
  7260  }
  7261  
  7262  // RequestID returns the service's response RequestID for request.
  7263  func (s *ThrottlingException) RequestID() string {
  7264  	return s.RespMetadata.RequestID
  7265  }
  7266  
  7267  // Unitialized account exception.
  7268  type UninitializedAccountException struct {
  7269  	_            struct{}                  `type:"structure"`
  7270  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  7271  
  7272  	Code_ *string `locationName:"code" type:"string"`
  7273  
  7274  	Message_ *string `locationName:"message" type:"string"`
  7275  }
  7276  
  7277  // String returns the string representation.
  7278  //
  7279  // API parameter values that are decorated as "sensitive" in the API will not
  7280  // be included in the string output. The member name will be present, but the
  7281  // value will be replaced with "sensitive".
  7282  func (s UninitializedAccountException) String() string {
  7283  	return awsutil.Prettify(s)
  7284  }
  7285  
  7286  // GoString returns the string representation.
  7287  //
  7288  // API parameter values that are decorated as "sensitive" in the API will not
  7289  // be included in the string output. The member name will be present, but the
  7290  // value will be replaced with "sensitive".
  7291  func (s UninitializedAccountException) GoString() string {
  7292  	return s.String()
  7293  }
  7294  
  7295  func newErrorUninitializedAccountException(v protocol.ResponseMetadata) error {
  7296  	return &UninitializedAccountException{
  7297  		RespMetadata: v,
  7298  	}
  7299  }
  7300  
  7301  // Code returns the exception type name.
  7302  func (s *UninitializedAccountException) Code() string {
  7303  	return "UninitializedAccountException"
  7304  }
  7305  
  7306  // Message returns the exception's message.
  7307  func (s *UninitializedAccountException) Message() string {
  7308  	if s.Message_ != nil {
  7309  		return *s.Message_
  7310  	}
  7311  	return ""
  7312  }
  7313  
  7314  // OrigErr always returns nil, satisfies awserr.Error interface.
  7315  func (s *UninitializedAccountException) OrigErr() error {
  7316  	return nil
  7317  }
  7318  
  7319  func (s *UninitializedAccountException) Error() string {
  7320  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  7321  }
  7322  
  7323  // Status code returns the HTTP status code for the request's response error.
  7324  func (s *UninitializedAccountException) StatusCode() int {
  7325  	return s.RespMetadata.StatusCode
  7326  }
  7327  
  7328  // RequestID returns the service's response RequestID for request.
  7329  func (s *UninitializedAccountException) RequestID() string {
  7330  	return s.RespMetadata.RequestID
  7331  }
  7332  
  7333  type UntagResourceInput struct {
  7334  	_ struct{} `type:"structure" nopayload:"true"`
  7335  
  7336  	// Untag resource by ARN.
  7337  	//
  7338  	// ResourceArn is a required field
  7339  	ResourceArn *string `location:"uri" locationName:"resourceArn" min:"20" type:"string" required:"true"`
  7340  
  7341  	// Untag resource by Keys.
  7342  	//
  7343  	// TagKeys is a sensitive parameter and its value will be
  7344  	// replaced with "sensitive" in string returned by UntagResourceInput's
  7345  	// String and GoString methods.
  7346  	//
  7347  	// TagKeys is a required field
  7348  	TagKeys []*string `location:"querystring" locationName:"tagKeys" type:"list" required:"true" sensitive:"true"`
  7349  }
  7350  
  7351  // String returns the string representation.
  7352  //
  7353  // API parameter values that are decorated as "sensitive" in the API will not
  7354  // be included in the string output. The member name will be present, but the
  7355  // value will be replaced with "sensitive".
  7356  func (s UntagResourceInput) String() string {
  7357  	return awsutil.Prettify(s)
  7358  }
  7359  
  7360  // GoString returns the string representation.
  7361  //
  7362  // API parameter values that are decorated as "sensitive" in the API will not
  7363  // be included in the string output. The member name will be present, but the
  7364  // value will be replaced with "sensitive".
  7365  func (s UntagResourceInput) GoString() string {
  7366  	return s.String()
  7367  }
  7368  
  7369  // Validate inspects the fields of the type to determine if they are valid.
  7370  func (s *UntagResourceInput) Validate() error {
  7371  	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
  7372  	if s.ResourceArn == nil {
  7373  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
  7374  	}
  7375  	if s.ResourceArn != nil && len(*s.ResourceArn) < 20 {
  7376  		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20))
  7377  	}
  7378  	if s.TagKeys == nil {
  7379  		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
  7380  	}
  7381  
  7382  	if invalidParams.Len() > 0 {
  7383  		return invalidParams
  7384  	}
  7385  	return nil
  7386  }
  7387  
  7388  // SetResourceArn sets the ResourceArn field's value.
  7389  func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
  7390  	s.ResourceArn = &v
  7391  	return s
  7392  }
  7393  
  7394  // SetTagKeys sets the TagKeys field's value.
  7395  func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
  7396  	s.TagKeys = v
  7397  	return s
  7398  }
  7399  
  7400  type UntagResourceOutput struct {
  7401  	_ struct{} `type:"structure" nopayload:"true"`
  7402  }
  7403  
  7404  // String returns the string representation.
  7405  //
  7406  // API parameter values that are decorated as "sensitive" in the API will not
  7407  // be included in the string output. The member name will be present, but the
  7408  // value will be replaced with "sensitive".
  7409  func (s UntagResourceOutput) String() string {
  7410  	return awsutil.Prettify(s)
  7411  }
  7412  
  7413  // GoString returns the string representation.
  7414  //
  7415  // API parameter values that are decorated as "sensitive" in the API will not
  7416  // be included in the string output. The member name will be present, but the
  7417  // value will be replaced with "sensitive".
  7418  func (s UntagResourceOutput) GoString() string {
  7419  	return s.String()
  7420  }
  7421  
  7422  type UpdateLaunchConfigurationInput struct {
  7423  	_ struct{} `type:"structure"`
  7424  
  7425  	// Update Launch configuration copy Private IP request.
  7426  	CopyPrivateIp *bool `locationName:"copyPrivateIp" type:"boolean"`
  7427  
  7428  	// Update Launch configuration copy Tags request.
  7429  	CopyTags *bool `locationName:"copyTags" type:"boolean"`
  7430  
  7431  	// Update Launch configuration launch disposition request.
  7432  	LaunchDisposition *string `locationName:"launchDisposition" type:"string" enum:"LaunchDisposition"`
  7433  
  7434  	// Update Launch configuration licensing request.
  7435  	Licensing *Licensing `locationName:"licensing" type:"structure"`
  7436  
  7437  	// Update Launch configuration name request.
  7438  	Name *string `locationName:"name" type:"string"`
  7439  
  7440  	// Update Launch configuration by Source Server ID request.
  7441  	//
  7442  	// SourceServerID is a required field
  7443  	SourceServerID *string `locationName:"sourceServerID" min:"19" type:"string" required:"true"`
  7444  
  7445  	// Update Launch configuration Target instance right sizing request.
  7446  	TargetInstanceTypeRightSizingMethod *string `locationName:"targetInstanceTypeRightSizingMethod" type:"string" enum:"TargetInstanceTypeRightSizingMethod"`
  7447  }
  7448  
  7449  // String returns the string representation.
  7450  //
  7451  // API parameter values that are decorated as "sensitive" in the API will not
  7452  // be included in the string output. The member name will be present, but the
  7453  // value will be replaced with "sensitive".
  7454  func (s UpdateLaunchConfigurationInput) String() string {
  7455  	return awsutil.Prettify(s)
  7456  }
  7457  
  7458  // GoString returns the string representation.
  7459  //
  7460  // API parameter values that are decorated as "sensitive" in the API will not
  7461  // be included in the string output. The member name will be present, but the
  7462  // value will be replaced with "sensitive".
  7463  func (s UpdateLaunchConfigurationInput) GoString() string {
  7464  	return s.String()
  7465  }
  7466  
  7467  // Validate inspects the fields of the type to determine if they are valid.
  7468  func (s *UpdateLaunchConfigurationInput) Validate() error {
  7469  	invalidParams := request.ErrInvalidParams{Context: "UpdateLaunchConfigurationInput"}
  7470  	if s.SourceServerID == nil {
  7471  		invalidParams.Add(request.NewErrParamRequired("SourceServerID"))
  7472  	}
  7473  	if s.SourceServerID != nil && len(*s.SourceServerID) < 19 {
  7474  		invalidParams.Add(request.NewErrParamMinLen("SourceServerID", 19))
  7475  	}
  7476  
  7477  	if invalidParams.Len() > 0 {
  7478  		return invalidParams
  7479  	}
  7480  	return nil
  7481  }
  7482  
  7483  // SetCopyPrivateIp sets the CopyPrivateIp field's value.
  7484  func (s *UpdateLaunchConfigurationInput) SetCopyPrivateIp(v bool) *UpdateLaunchConfigurationInput {
  7485  	s.CopyPrivateIp = &v
  7486  	return s
  7487  }
  7488  
  7489  // SetCopyTags sets the CopyTags field's value.
  7490  func (s *UpdateLaunchConfigurationInput) SetCopyTags(v bool) *UpdateLaunchConfigurationInput {
  7491  	s.CopyTags = &v
  7492  	return s
  7493  }
  7494  
  7495  // SetLaunchDisposition sets the LaunchDisposition field's value.
  7496  func (s *UpdateLaunchConfigurationInput) SetLaunchDisposition(v string) *UpdateLaunchConfigurationInput {
  7497  	s.LaunchDisposition = &v
  7498  	return s
  7499  }
  7500  
  7501  // SetLicensing sets the Licensing field's value.
  7502  func (s *UpdateLaunchConfigurationInput) SetLicensing(v *Licensing) *UpdateLaunchConfigurationInput {
  7503  	s.Licensing = v
  7504  	return s
  7505  }
  7506  
  7507  // SetName sets the Name field's value.
  7508  func (s *UpdateLaunchConfigurationInput) SetName(v string) *UpdateLaunchConfigurationInput {
  7509  	s.Name = &v
  7510  	return s
  7511  }
  7512  
  7513  // SetSourceServerID sets the SourceServerID field's value.
  7514  func (s *UpdateLaunchConfigurationInput) SetSourceServerID(v string) *UpdateLaunchConfigurationInput {
  7515  	s.SourceServerID = &v
  7516  	return s
  7517  }
  7518  
  7519  // SetTargetInstanceTypeRightSizingMethod sets the TargetInstanceTypeRightSizingMethod field's value.
  7520  func (s *UpdateLaunchConfigurationInput) SetTargetInstanceTypeRightSizingMethod(v string) *UpdateLaunchConfigurationInput {
  7521  	s.TargetInstanceTypeRightSizingMethod = &v
  7522  	return s
  7523  }
  7524  
  7525  type UpdateLaunchConfigurationOutput struct {
  7526  	_ struct{} `type:"structure"`
  7527  
  7528  	// Copy Private IP during Launch Configuration.
  7529  	CopyPrivateIp *bool `locationName:"copyPrivateIp" type:"boolean"`
  7530  
  7531  	// Copy Tags during Launch Configuration.
  7532  	CopyTags *bool `locationName:"copyTags" type:"boolean"`
  7533  
  7534  	// Configure EC2 lauch configuration template ID.
  7535  	Ec2LaunchTemplateID *string `locationName:"ec2LaunchTemplateID" type:"string"`
  7536  
  7537  	// Configure launch dispostion for launch configuration.
  7538  	LaunchDisposition *string `locationName:"launchDisposition" type:"string" enum:"LaunchDisposition"`
  7539  
  7540  	// Configure launch configuration OS licensing.
  7541  	Licensing *Licensing `locationName:"licensing" type:"structure"`
  7542  
  7543  	// Configure launch configuration name.
  7544  	Name *string `locationName:"name" type:"string"`
  7545  
  7546  	// Configure launch configuration Source Server ID.
  7547  	SourceServerID *string `locationName:"sourceServerID" min:"19" type:"string"`
  7548  
  7549  	// Configure launch configuration Target instance type right sizing method.
  7550  	TargetInstanceTypeRightSizingMethod *string `locationName:"targetInstanceTypeRightSizingMethod" type:"string" enum:"TargetInstanceTypeRightSizingMethod"`
  7551  }
  7552  
  7553  // String returns the string representation.
  7554  //
  7555  // API parameter values that are decorated as "sensitive" in the API will not
  7556  // be included in the string output. The member name will be present, but the
  7557  // value will be replaced with "sensitive".
  7558  func (s UpdateLaunchConfigurationOutput) String() string {
  7559  	return awsutil.Prettify(s)
  7560  }
  7561  
  7562  // GoString returns the string representation.
  7563  //
  7564  // API parameter values that are decorated as "sensitive" in the API will not
  7565  // be included in the string output. The member name will be present, but the
  7566  // value will be replaced with "sensitive".
  7567  func (s UpdateLaunchConfigurationOutput) GoString() string {
  7568  	return s.String()
  7569  }
  7570  
  7571  // SetCopyPrivateIp sets the CopyPrivateIp field's value.
  7572  func (s *UpdateLaunchConfigurationOutput) SetCopyPrivateIp(v bool) *UpdateLaunchConfigurationOutput {
  7573  	s.CopyPrivateIp = &v
  7574  	return s
  7575  }
  7576  
  7577  // SetCopyTags sets the CopyTags field's value.
  7578  func (s *UpdateLaunchConfigurationOutput) SetCopyTags(v bool) *UpdateLaunchConfigurationOutput {
  7579  	s.CopyTags = &v
  7580  	return s
  7581  }
  7582  
  7583  // SetEc2LaunchTemplateID sets the Ec2LaunchTemplateID field's value.
  7584  func (s *UpdateLaunchConfigurationOutput) SetEc2LaunchTemplateID(v string) *UpdateLaunchConfigurationOutput {
  7585  	s.Ec2LaunchTemplateID = &v
  7586  	return s
  7587  }
  7588  
  7589  // SetLaunchDisposition sets the LaunchDisposition field's value.
  7590  func (s *UpdateLaunchConfigurationOutput) SetLaunchDisposition(v string) *UpdateLaunchConfigurationOutput {
  7591  	s.LaunchDisposition = &v
  7592  	return s
  7593  }
  7594  
  7595  // SetLicensing sets the Licensing field's value.
  7596  func (s *UpdateLaunchConfigurationOutput) SetLicensing(v *Licensing) *UpdateLaunchConfigurationOutput {
  7597  	s.Licensing = v
  7598  	return s
  7599  }
  7600  
  7601  // SetName sets the Name field's value.
  7602  func (s *UpdateLaunchConfigurationOutput) SetName(v string) *UpdateLaunchConfigurationOutput {
  7603  	s.Name = &v
  7604  	return s
  7605  }
  7606  
  7607  // SetSourceServerID sets the SourceServerID field's value.
  7608  func (s *UpdateLaunchConfigurationOutput) SetSourceServerID(v string) *UpdateLaunchConfigurationOutput {
  7609  	s.SourceServerID = &v
  7610  	return s
  7611  }
  7612  
  7613  // SetTargetInstanceTypeRightSizingMethod sets the TargetInstanceTypeRightSizingMethod field's value.
  7614  func (s *UpdateLaunchConfigurationOutput) SetTargetInstanceTypeRightSizingMethod(v string) *UpdateLaunchConfigurationOutput {
  7615  	s.TargetInstanceTypeRightSizingMethod = &v
  7616  	return s
  7617  }
  7618  
  7619  type UpdateReplicationConfigurationInput struct {
  7620  	_ struct{} `type:"structure"`
  7621  
  7622  	// Update replication configuration associate default Application Migration
  7623  	// Service Security group request.
  7624  	AssociateDefaultSecurityGroup *bool `locationName:"associateDefaultSecurityGroup" type:"boolean"`
  7625  
  7626  	// Update replication configuration bandwidth throttling request.
  7627  	BandwidthThrottling *int64 `locationName:"bandwidthThrottling" type:"long"`
  7628  
  7629  	// Update replication configuration create Public IP request.
  7630  	CreatePublicIP *bool `locationName:"createPublicIP" type:"boolean"`
  7631  
  7632  	// Update replication configuration data plane routing request.
  7633  	DataPlaneRouting *string `locationName:"dataPlaneRouting" type:"string" enum:"ReplicationConfigurationDataPlaneRouting"`
  7634  
  7635  	// Update replication configuration use default large Staging Disk type request.
  7636  	DefaultLargeStagingDiskType *string `locationName:"defaultLargeStagingDiskType" type:"string" enum:"ReplicationConfigurationDefaultLargeStagingDiskType"`
  7637  
  7638  	// Update replication configuration EBS encryption request.
  7639  	EbsEncryption *string `locationName:"ebsEncryption" type:"string" enum:"ReplicationConfigurationEbsEncryption"`
  7640  
  7641  	// Update replication configuration EBS encryption key ARN request.
  7642  	EbsEncryptionKeyArn *string `locationName:"ebsEncryptionKeyArn" min:"20" type:"string"`
  7643  
  7644  	// Update replication configuration name request.
  7645  	Name *string `locationName:"name" type:"string"`
  7646  
  7647  	// Update replication configuration replicated disks request.
  7648  	ReplicatedDisks []*ReplicationConfigurationReplicatedDisk `locationName:"replicatedDisks" type:"list"`
  7649  
  7650  	// Update replication configuration Replication Server instance type request.
  7651  	ReplicationServerInstanceType *string `locationName:"replicationServerInstanceType" type:"string"`
  7652  
  7653  	// Update replication configuration Replication Server Security Groups IDs request.
  7654  	ReplicationServersSecurityGroupsIDs []*string `locationName:"replicationServersSecurityGroupsIDs" type:"list"`
  7655  
  7656  	// Update replication configuration Source Server ID request.
  7657  	//
  7658  	// SourceServerID is a required field
  7659  	SourceServerID *string `locationName:"sourceServerID" min:"19" type:"string" required:"true"`
  7660  
  7661  	// Update replication configuration Staging Area subnet request.
  7662  	StagingAreaSubnetId *string `locationName:"stagingAreaSubnetId" type:"string"`
  7663  
  7664  	// Update replication configuration Staging Area Tags request.
  7665  	//
  7666  	// StagingAreaTags is a sensitive parameter and its value will be
  7667  	// replaced with "sensitive" in string returned by UpdateReplicationConfigurationInput's
  7668  	// String and GoString methods.
  7669  	StagingAreaTags map[string]*string `locationName:"stagingAreaTags" type:"map" sensitive:"true"`
  7670  
  7671  	// Update replication configuration use dedicated Replication Server request.
  7672  	UseDedicatedReplicationServer *bool `locationName:"useDedicatedReplicationServer" type:"boolean"`
  7673  }
  7674  
  7675  // String returns the string representation.
  7676  //
  7677  // API parameter values that are decorated as "sensitive" in the API will not
  7678  // be included in the string output. The member name will be present, but the
  7679  // value will be replaced with "sensitive".
  7680  func (s UpdateReplicationConfigurationInput) String() string {
  7681  	return awsutil.Prettify(s)
  7682  }
  7683  
  7684  // GoString returns the string representation.
  7685  //
  7686  // API parameter values that are decorated as "sensitive" in the API will not
  7687  // be included in the string output. The member name will be present, but the
  7688  // value will be replaced with "sensitive".
  7689  func (s UpdateReplicationConfigurationInput) GoString() string {
  7690  	return s.String()
  7691  }
  7692  
  7693  // Validate inspects the fields of the type to determine if they are valid.
  7694  func (s *UpdateReplicationConfigurationInput) Validate() error {
  7695  	invalidParams := request.ErrInvalidParams{Context: "UpdateReplicationConfigurationInput"}
  7696  	if s.EbsEncryptionKeyArn != nil && len(*s.EbsEncryptionKeyArn) < 20 {
  7697  		invalidParams.Add(request.NewErrParamMinLen("EbsEncryptionKeyArn", 20))
  7698  	}
  7699  	if s.SourceServerID == nil {
  7700  		invalidParams.Add(request.NewErrParamRequired("SourceServerID"))
  7701  	}
  7702  	if s.SourceServerID != nil && len(*s.SourceServerID) < 19 {
  7703  		invalidParams.Add(request.NewErrParamMinLen("SourceServerID", 19))
  7704  	}
  7705  
  7706  	if invalidParams.Len() > 0 {
  7707  		return invalidParams
  7708  	}
  7709  	return nil
  7710  }
  7711  
  7712  // SetAssociateDefaultSecurityGroup sets the AssociateDefaultSecurityGroup field's value.
  7713  func (s *UpdateReplicationConfigurationInput) SetAssociateDefaultSecurityGroup(v bool) *UpdateReplicationConfigurationInput {
  7714  	s.AssociateDefaultSecurityGroup = &v
  7715  	return s
  7716  }
  7717  
  7718  // SetBandwidthThrottling sets the BandwidthThrottling field's value.
  7719  func (s *UpdateReplicationConfigurationInput) SetBandwidthThrottling(v int64) *UpdateReplicationConfigurationInput {
  7720  	s.BandwidthThrottling = &v
  7721  	return s
  7722  }
  7723  
  7724  // SetCreatePublicIP sets the CreatePublicIP field's value.
  7725  func (s *UpdateReplicationConfigurationInput) SetCreatePublicIP(v bool) *UpdateReplicationConfigurationInput {
  7726  	s.CreatePublicIP = &v
  7727  	return s
  7728  }
  7729  
  7730  // SetDataPlaneRouting sets the DataPlaneRouting field's value.
  7731  func (s *UpdateReplicationConfigurationInput) SetDataPlaneRouting(v string) *UpdateReplicationConfigurationInput {
  7732  	s.DataPlaneRouting = &v
  7733  	return s
  7734  }
  7735  
  7736  // SetDefaultLargeStagingDiskType sets the DefaultLargeStagingDiskType field's value.
  7737  func (s *UpdateReplicationConfigurationInput) SetDefaultLargeStagingDiskType(v string) *UpdateReplicationConfigurationInput {
  7738  	s.DefaultLargeStagingDiskType = &v
  7739  	return s
  7740  }
  7741  
  7742  // SetEbsEncryption sets the EbsEncryption field's value.
  7743  func (s *UpdateReplicationConfigurationInput) SetEbsEncryption(v string) *UpdateReplicationConfigurationInput {
  7744  	s.EbsEncryption = &v
  7745  	return s
  7746  }
  7747  
  7748  // SetEbsEncryptionKeyArn sets the EbsEncryptionKeyArn field's value.
  7749  func (s *UpdateReplicationConfigurationInput) SetEbsEncryptionKeyArn(v string) *UpdateReplicationConfigurationInput {
  7750  	s.EbsEncryptionKeyArn = &v
  7751  	return s
  7752  }
  7753  
  7754  // SetName sets the Name field's value.
  7755  func (s *UpdateReplicationConfigurationInput) SetName(v string) *UpdateReplicationConfigurationInput {
  7756  	s.Name = &v
  7757  	return s
  7758  }
  7759  
  7760  // SetReplicatedDisks sets the ReplicatedDisks field's value.
  7761  func (s *UpdateReplicationConfigurationInput) SetReplicatedDisks(v []*ReplicationConfigurationReplicatedDisk) *UpdateReplicationConfigurationInput {
  7762  	s.ReplicatedDisks = v
  7763  	return s
  7764  }
  7765  
  7766  // SetReplicationServerInstanceType sets the ReplicationServerInstanceType field's value.
  7767  func (s *UpdateReplicationConfigurationInput) SetReplicationServerInstanceType(v string) *UpdateReplicationConfigurationInput {
  7768  	s.ReplicationServerInstanceType = &v
  7769  	return s
  7770  }
  7771  
  7772  // SetReplicationServersSecurityGroupsIDs sets the ReplicationServersSecurityGroupsIDs field's value.
  7773  func (s *UpdateReplicationConfigurationInput) SetReplicationServersSecurityGroupsIDs(v []*string) *UpdateReplicationConfigurationInput {
  7774  	s.ReplicationServersSecurityGroupsIDs = v
  7775  	return s
  7776  }
  7777  
  7778  // SetSourceServerID sets the SourceServerID field's value.
  7779  func (s *UpdateReplicationConfigurationInput) SetSourceServerID(v string) *UpdateReplicationConfigurationInput {
  7780  	s.SourceServerID = &v
  7781  	return s
  7782  }
  7783  
  7784  // SetStagingAreaSubnetId sets the StagingAreaSubnetId field's value.
  7785  func (s *UpdateReplicationConfigurationInput) SetStagingAreaSubnetId(v string) *UpdateReplicationConfigurationInput {
  7786  	s.StagingAreaSubnetId = &v
  7787  	return s
  7788  }
  7789  
  7790  // SetStagingAreaTags sets the StagingAreaTags field's value.
  7791  func (s *UpdateReplicationConfigurationInput) SetStagingAreaTags(v map[string]*string) *UpdateReplicationConfigurationInput {
  7792  	s.StagingAreaTags = v
  7793  	return s
  7794  }
  7795  
  7796  // SetUseDedicatedReplicationServer sets the UseDedicatedReplicationServer field's value.
  7797  func (s *UpdateReplicationConfigurationInput) SetUseDedicatedReplicationServer(v bool) *UpdateReplicationConfigurationInput {
  7798  	s.UseDedicatedReplicationServer = &v
  7799  	return s
  7800  }
  7801  
  7802  type UpdateReplicationConfigurationOutput struct {
  7803  	_ struct{} `type:"structure"`
  7804  
  7805  	// Replication Configuration associate default Application Migration Service
  7806  	// Security Group.
  7807  	AssociateDefaultSecurityGroup *bool `locationName:"associateDefaultSecurityGroup" type:"boolean"`
  7808  
  7809  	// Replication Configuration set bandwidth throttling.
  7810  	BandwidthThrottling *int64 `locationName:"bandwidthThrottling" type:"long"`
  7811  
  7812  	// Replication Configuration create Public IP.
  7813  	CreatePublicIP *bool `locationName:"createPublicIP" type:"boolean"`
  7814  
  7815  	// Replication Configuration data plane routing.
  7816  	DataPlaneRouting *string `locationName:"dataPlaneRouting" type:"string" enum:"ReplicationConfigurationDataPlaneRouting"`
  7817  
  7818  	// Replication Configuration use default large Staging Disks.
  7819  	DefaultLargeStagingDiskType *string `locationName:"defaultLargeStagingDiskType" type:"string" enum:"ReplicationConfigurationDefaultLargeStagingDiskType"`
  7820  
  7821  	// Replication Configuration EBS encryption.
  7822  	EbsEncryption *string `locationName:"ebsEncryption" type:"string" enum:"ReplicationConfigurationEbsEncryption"`
  7823  
  7824  	// Replication Configuration EBS encryption key ARN.
  7825  	EbsEncryptionKeyArn *string `locationName:"ebsEncryptionKeyArn" min:"20" type:"string"`
  7826  
  7827  	// Replication Configuration name.
  7828  	Name *string `locationName:"name" type:"string"`
  7829  
  7830  	// Replication Configuration replicated disks.
  7831  	ReplicatedDisks []*ReplicationConfigurationReplicatedDisk `locationName:"replicatedDisks" type:"list"`
  7832  
  7833  	// Replication Configuration Replication Server instance type.
  7834  	ReplicationServerInstanceType *string `locationName:"replicationServerInstanceType" type:"string"`
  7835  
  7836  	// Replication Configuration Replication Server Security Group IDs.
  7837  	ReplicationServersSecurityGroupsIDs []*string `locationName:"replicationServersSecurityGroupsIDs" type:"list"`
  7838  
  7839  	// Replication Configuration Source Server ID.
  7840  	SourceServerID *string `locationName:"sourceServerID" min:"19" type:"string"`
  7841  
  7842  	// Replication Configuration Staging Area subnet ID.
  7843  	StagingAreaSubnetId *string `locationName:"stagingAreaSubnetId" type:"string"`
  7844  
  7845  	// Replication Configuration Staging Area tags.
  7846  	//
  7847  	// StagingAreaTags is a sensitive parameter and its value will be
  7848  	// replaced with "sensitive" in string returned by UpdateReplicationConfigurationOutput's
  7849  	// String and GoString methods.
  7850  	StagingAreaTags map[string]*string `locationName:"stagingAreaTags" type:"map" sensitive:"true"`
  7851  
  7852  	// Replication Configuration use Dedicated Replication Server.
  7853  	UseDedicatedReplicationServer *bool `locationName:"useDedicatedReplicationServer" type:"boolean"`
  7854  }
  7855  
  7856  // String returns the string representation.
  7857  //
  7858  // API parameter values that are decorated as "sensitive" in the API will not
  7859  // be included in the string output. The member name will be present, but the
  7860  // value will be replaced with "sensitive".
  7861  func (s UpdateReplicationConfigurationOutput) String() string {
  7862  	return awsutil.Prettify(s)
  7863  }
  7864  
  7865  // GoString returns the string representation.
  7866  //
  7867  // API parameter values that are decorated as "sensitive" in the API will not
  7868  // be included in the string output. The member name will be present, but the
  7869  // value will be replaced with "sensitive".
  7870  func (s UpdateReplicationConfigurationOutput) GoString() string {
  7871  	return s.String()
  7872  }
  7873  
  7874  // SetAssociateDefaultSecurityGroup sets the AssociateDefaultSecurityGroup field's value.
  7875  func (s *UpdateReplicationConfigurationOutput) SetAssociateDefaultSecurityGroup(v bool) *UpdateReplicationConfigurationOutput {
  7876  	s.AssociateDefaultSecurityGroup = &v
  7877  	return s
  7878  }
  7879  
  7880  // SetBandwidthThrottling sets the BandwidthThrottling field's value.
  7881  func (s *UpdateReplicationConfigurationOutput) SetBandwidthThrottling(v int64) *UpdateReplicationConfigurationOutput {
  7882  	s.BandwidthThrottling = &v
  7883  	return s
  7884  }
  7885  
  7886  // SetCreatePublicIP sets the CreatePublicIP field's value.
  7887  func (s *UpdateReplicationConfigurationOutput) SetCreatePublicIP(v bool) *UpdateReplicationConfigurationOutput {
  7888  	s.CreatePublicIP = &v
  7889  	return s
  7890  }
  7891  
  7892  // SetDataPlaneRouting sets the DataPlaneRouting field's value.
  7893  func (s *UpdateReplicationConfigurationOutput) SetDataPlaneRouting(v string) *UpdateReplicationConfigurationOutput {
  7894  	s.DataPlaneRouting = &v
  7895  	return s
  7896  }
  7897  
  7898  // SetDefaultLargeStagingDiskType sets the DefaultLargeStagingDiskType field's value.
  7899  func (s *UpdateReplicationConfigurationOutput) SetDefaultLargeStagingDiskType(v string) *UpdateReplicationConfigurationOutput {
  7900  	s.DefaultLargeStagingDiskType = &v
  7901  	return s
  7902  }
  7903  
  7904  // SetEbsEncryption sets the EbsEncryption field's value.
  7905  func (s *UpdateReplicationConfigurationOutput) SetEbsEncryption(v string) *UpdateReplicationConfigurationOutput {
  7906  	s.EbsEncryption = &v
  7907  	return s
  7908  }
  7909  
  7910  // SetEbsEncryptionKeyArn sets the EbsEncryptionKeyArn field's value.
  7911  func (s *UpdateReplicationConfigurationOutput) SetEbsEncryptionKeyArn(v string) *UpdateReplicationConfigurationOutput {
  7912  	s.EbsEncryptionKeyArn = &v
  7913  	return s
  7914  }
  7915  
  7916  // SetName sets the Name field's value.
  7917  func (s *UpdateReplicationConfigurationOutput) SetName(v string) *UpdateReplicationConfigurationOutput {
  7918  	s.Name = &v
  7919  	return s
  7920  }
  7921  
  7922  // SetReplicatedDisks sets the ReplicatedDisks field's value.
  7923  func (s *UpdateReplicationConfigurationOutput) SetReplicatedDisks(v []*ReplicationConfigurationReplicatedDisk) *UpdateReplicationConfigurationOutput {
  7924  	s.ReplicatedDisks = v
  7925  	return s
  7926  }
  7927  
  7928  // SetReplicationServerInstanceType sets the ReplicationServerInstanceType field's value.
  7929  func (s *UpdateReplicationConfigurationOutput) SetReplicationServerInstanceType(v string) *UpdateReplicationConfigurationOutput {
  7930  	s.ReplicationServerInstanceType = &v
  7931  	return s
  7932  }
  7933  
  7934  // SetReplicationServersSecurityGroupsIDs sets the ReplicationServersSecurityGroupsIDs field's value.
  7935  func (s *UpdateReplicationConfigurationOutput) SetReplicationServersSecurityGroupsIDs(v []*string) *UpdateReplicationConfigurationOutput {
  7936  	s.ReplicationServersSecurityGroupsIDs = v
  7937  	return s
  7938  }
  7939  
  7940  // SetSourceServerID sets the SourceServerID field's value.
  7941  func (s *UpdateReplicationConfigurationOutput) SetSourceServerID(v string) *UpdateReplicationConfigurationOutput {
  7942  	s.SourceServerID = &v
  7943  	return s
  7944  }
  7945  
  7946  // SetStagingAreaSubnetId sets the StagingAreaSubnetId field's value.
  7947  func (s *UpdateReplicationConfigurationOutput) SetStagingAreaSubnetId(v string) *UpdateReplicationConfigurationOutput {
  7948  	s.StagingAreaSubnetId = &v
  7949  	return s
  7950  }
  7951  
  7952  // SetStagingAreaTags sets the StagingAreaTags field's value.
  7953  func (s *UpdateReplicationConfigurationOutput) SetStagingAreaTags(v map[string]*string) *UpdateReplicationConfigurationOutput {
  7954  	s.StagingAreaTags = v
  7955  	return s
  7956  }
  7957  
  7958  // SetUseDedicatedReplicationServer sets the UseDedicatedReplicationServer field's value.
  7959  func (s *UpdateReplicationConfigurationOutput) SetUseDedicatedReplicationServer(v bool) *UpdateReplicationConfigurationOutput {
  7960  	s.UseDedicatedReplicationServer = &v
  7961  	return s
  7962  }
  7963  
  7964  type UpdateReplicationConfigurationTemplateInput struct {
  7965  	_ struct{} `type:"structure"`
  7966  
  7967  	// Update replication configuration template ARN request.
  7968  	Arn *string `locationName:"arn" min:"20" type:"string"`
  7969  
  7970  	// Update replication configuration template associate default Application Migration
  7971  	// Service Security group request.
  7972  	AssociateDefaultSecurityGroup *bool `locationName:"associateDefaultSecurityGroup" type:"boolean"`
  7973  
  7974  	// Update replication configuration template bandwidth throttling request.
  7975  	BandwidthThrottling *int64 `locationName:"bandwidthThrottling" type:"long"`
  7976  
  7977  	// Update replication configuration template create Public IP request.
  7978  	CreatePublicIP *bool `locationName:"createPublicIP" type:"boolean"`
  7979  
  7980  	// Update replication configuration template data plane routing request.
  7981  	DataPlaneRouting *string `locationName:"dataPlaneRouting" type:"string" enum:"ReplicationConfigurationDataPlaneRouting"`
  7982  
  7983  	// Update replication configuration template use default large Staging Disk
  7984  	// type request.
  7985  	DefaultLargeStagingDiskType *string `locationName:"defaultLargeStagingDiskType" type:"string" enum:"ReplicationConfigurationDefaultLargeStagingDiskType"`
  7986  
  7987  	// Update replication configuration template EBS encryption request.
  7988  	EbsEncryption *string `locationName:"ebsEncryption" type:"string" enum:"ReplicationConfigurationEbsEncryption"`
  7989  
  7990  	// Update replication configuration template EBS encryption key ARN request.
  7991  	EbsEncryptionKeyArn *string `locationName:"ebsEncryptionKeyArn" min:"20" type:"string"`
  7992  
  7993  	// Update replication configuration template template ID request.
  7994  	//
  7995  	// ReplicationConfigurationTemplateID is a required field
  7996  	ReplicationConfigurationTemplateID *string `locationName:"replicationConfigurationTemplateID" min:"21" type:"string" required:"true"`
  7997  
  7998  	// Update replication configuration template Replication Server instance type
  7999  	// request.
  8000  	ReplicationServerInstanceType *string `locationName:"replicationServerInstanceType" type:"string"`
  8001  
  8002  	// Update replication configuration template Replication Server Security groups
  8003  	// IDs request.
  8004  	ReplicationServersSecurityGroupsIDs []*string `locationName:"replicationServersSecurityGroupsIDs" type:"list"`
  8005  
  8006  	// Update replication configuration template Staging Area subnet ID request.
  8007  	StagingAreaSubnetId *string `locationName:"stagingAreaSubnetId" type:"string"`
  8008  
  8009  	// Update replication configuration template Staging Area Tags request.
  8010  	//
  8011  	// StagingAreaTags is a sensitive parameter and its value will be
  8012  	// replaced with "sensitive" in string returned by UpdateReplicationConfigurationTemplateInput's
  8013  	// String and GoString methods.
  8014  	StagingAreaTags map[string]*string `locationName:"stagingAreaTags" type:"map" sensitive:"true"`
  8015  
  8016  	// Update replication configuration template use dedicated Replication Server
  8017  	// request.
  8018  	UseDedicatedReplicationServer *bool `locationName:"useDedicatedReplicationServer" type:"boolean"`
  8019  }
  8020  
  8021  // String returns the string representation.
  8022  //
  8023  // API parameter values that are decorated as "sensitive" in the API will not
  8024  // be included in the string output. The member name will be present, but the
  8025  // value will be replaced with "sensitive".
  8026  func (s UpdateReplicationConfigurationTemplateInput) String() string {
  8027  	return awsutil.Prettify(s)
  8028  }
  8029  
  8030  // GoString returns the string representation.
  8031  //
  8032  // API parameter values that are decorated as "sensitive" in the API will not
  8033  // be included in the string output. The member name will be present, but the
  8034  // value will be replaced with "sensitive".
  8035  func (s UpdateReplicationConfigurationTemplateInput) GoString() string {
  8036  	return s.String()
  8037  }
  8038  
  8039  // Validate inspects the fields of the type to determine if they are valid.
  8040  func (s *UpdateReplicationConfigurationTemplateInput) Validate() error {
  8041  	invalidParams := request.ErrInvalidParams{Context: "UpdateReplicationConfigurationTemplateInput"}
  8042  	if s.Arn != nil && len(*s.Arn) < 20 {
  8043  		invalidParams.Add(request.NewErrParamMinLen("Arn", 20))
  8044  	}
  8045  	if s.EbsEncryptionKeyArn != nil && len(*s.EbsEncryptionKeyArn) < 20 {
  8046  		invalidParams.Add(request.NewErrParamMinLen("EbsEncryptionKeyArn", 20))
  8047  	}
  8048  	if s.ReplicationConfigurationTemplateID == nil {
  8049  		invalidParams.Add(request.NewErrParamRequired("ReplicationConfigurationTemplateID"))
  8050  	}
  8051  	if s.ReplicationConfigurationTemplateID != nil && len(*s.ReplicationConfigurationTemplateID) < 21 {
  8052  		invalidParams.Add(request.NewErrParamMinLen("ReplicationConfigurationTemplateID", 21))
  8053  	}
  8054  
  8055  	if invalidParams.Len() > 0 {
  8056  		return invalidParams
  8057  	}
  8058  	return nil
  8059  }
  8060  
  8061  // SetArn sets the Arn field's value.
  8062  func (s *UpdateReplicationConfigurationTemplateInput) SetArn(v string) *UpdateReplicationConfigurationTemplateInput {
  8063  	s.Arn = &v
  8064  	return s
  8065  }
  8066  
  8067  // SetAssociateDefaultSecurityGroup sets the AssociateDefaultSecurityGroup field's value.
  8068  func (s *UpdateReplicationConfigurationTemplateInput) SetAssociateDefaultSecurityGroup(v bool) *UpdateReplicationConfigurationTemplateInput {
  8069  	s.AssociateDefaultSecurityGroup = &v
  8070  	return s
  8071  }
  8072  
  8073  // SetBandwidthThrottling sets the BandwidthThrottling field's value.
  8074  func (s *UpdateReplicationConfigurationTemplateInput) SetBandwidthThrottling(v int64) *UpdateReplicationConfigurationTemplateInput {
  8075  	s.BandwidthThrottling = &v
  8076  	return s
  8077  }
  8078  
  8079  // SetCreatePublicIP sets the CreatePublicIP field's value.
  8080  func (s *UpdateReplicationConfigurationTemplateInput) SetCreatePublicIP(v bool) *UpdateReplicationConfigurationTemplateInput {
  8081  	s.CreatePublicIP = &v
  8082  	return s
  8083  }
  8084  
  8085  // SetDataPlaneRouting sets the DataPlaneRouting field's value.
  8086  func (s *UpdateReplicationConfigurationTemplateInput) SetDataPlaneRouting(v string) *UpdateReplicationConfigurationTemplateInput {
  8087  	s.DataPlaneRouting = &v
  8088  	return s
  8089  }
  8090  
  8091  // SetDefaultLargeStagingDiskType sets the DefaultLargeStagingDiskType field's value.
  8092  func (s *UpdateReplicationConfigurationTemplateInput) SetDefaultLargeStagingDiskType(v string) *UpdateReplicationConfigurationTemplateInput {
  8093  	s.DefaultLargeStagingDiskType = &v
  8094  	return s
  8095  }
  8096  
  8097  // SetEbsEncryption sets the EbsEncryption field's value.
  8098  func (s *UpdateReplicationConfigurationTemplateInput) SetEbsEncryption(v string) *UpdateReplicationConfigurationTemplateInput {
  8099  	s.EbsEncryption = &v
  8100  	return s
  8101  }
  8102  
  8103  // SetEbsEncryptionKeyArn sets the EbsEncryptionKeyArn field's value.
  8104  func (s *UpdateReplicationConfigurationTemplateInput) SetEbsEncryptionKeyArn(v string) *UpdateReplicationConfigurationTemplateInput {
  8105  	s.EbsEncryptionKeyArn = &v
  8106  	return s
  8107  }
  8108  
  8109  // SetReplicationConfigurationTemplateID sets the ReplicationConfigurationTemplateID field's value.
  8110  func (s *UpdateReplicationConfigurationTemplateInput) SetReplicationConfigurationTemplateID(v string) *UpdateReplicationConfigurationTemplateInput {
  8111  	s.ReplicationConfigurationTemplateID = &v
  8112  	return s
  8113  }
  8114  
  8115  // SetReplicationServerInstanceType sets the ReplicationServerInstanceType field's value.
  8116  func (s *UpdateReplicationConfigurationTemplateInput) SetReplicationServerInstanceType(v string) *UpdateReplicationConfigurationTemplateInput {
  8117  	s.ReplicationServerInstanceType = &v
  8118  	return s
  8119  }
  8120  
  8121  // SetReplicationServersSecurityGroupsIDs sets the ReplicationServersSecurityGroupsIDs field's value.
  8122  func (s *UpdateReplicationConfigurationTemplateInput) SetReplicationServersSecurityGroupsIDs(v []*string) *UpdateReplicationConfigurationTemplateInput {
  8123  	s.ReplicationServersSecurityGroupsIDs = v
  8124  	return s
  8125  }
  8126  
  8127  // SetStagingAreaSubnetId sets the StagingAreaSubnetId field's value.
  8128  func (s *UpdateReplicationConfigurationTemplateInput) SetStagingAreaSubnetId(v string) *UpdateReplicationConfigurationTemplateInput {
  8129  	s.StagingAreaSubnetId = &v
  8130  	return s
  8131  }
  8132  
  8133  // SetStagingAreaTags sets the StagingAreaTags field's value.
  8134  func (s *UpdateReplicationConfigurationTemplateInput) SetStagingAreaTags(v map[string]*string) *UpdateReplicationConfigurationTemplateInput {
  8135  	s.StagingAreaTags = v
  8136  	return s
  8137  }
  8138  
  8139  // SetUseDedicatedReplicationServer sets the UseDedicatedReplicationServer field's value.
  8140  func (s *UpdateReplicationConfigurationTemplateInput) SetUseDedicatedReplicationServer(v bool) *UpdateReplicationConfigurationTemplateInput {
  8141  	s.UseDedicatedReplicationServer = &v
  8142  	return s
  8143  }
  8144  
  8145  type UpdateReplicationConfigurationTemplateOutput struct {
  8146  	_ struct{} `type:"structure"`
  8147  
  8148  	// Replication Configuration template ARN.
  8149  	Arn *string `locationName:"arn" min:"20" type:"string"`
  8150  
  8151  	// Replication Configuration template associate default Application Migration
  8152  	// Service Security group.
  8153  	AssociateDefaultSecurityGroup *bool `locationName:"associateDefaultSecurityGroup" type:"boolean"`
  8154  
  8155  	// Replication Configuration template bandwidth throtting.
  8156  	BandwidthThrottling *int64 `locationName:"bandwidthThrottling" type:"long"`
  8157  
  8158  	// Replication Configuration template create Public IP.
  8159  	CreatePublicIP *bool `locationName:"createPublicIP" type:"boolean"`
  8160  
  8161  	// Replication Configuration template data plane routing.
  8162  	DataPlaneRouting *string `locationName:"dataPlaneRouting" type:"string" enum:"ReplicationConfigurationDataPlaneRouting"`
  8163  
  8164  	// Replication Configuration template use dedault large Staging Disk type.
  8165  	DefaultLargeStagingDiskType *string `locationName:"defaultLargeStagingDiskType" type:"string" enum:"ReplicationConfigurationDefaultLargeStagingDiskType"`
  8166  
  8167  	// Replication Configuration template EBS encryption.
  8168  	EbsEncryption *string `locationName:"ebsEncryption" type:"string" enum:"ReplicationConfigurationEbsEncryption"`
  8169  
  8170  	// Replication Configuration template EBS encryption key ARN.
  8171  	EbsEncryptionKeyArn *string `locationName:"ebsEncryptionKeyArn" min:"20" type:"string"`
  8172  
  8173  	// Replication Configuration template template ID.
  8174  	//
  8175  	// ReplicationConfigurationTemplateID is a required field
  8176  	ReplicationConfigurationTemplateID *string `locationName:"replicationConfigurationTemplateID" min:"21" type:"string" required:"true"`
  8177  
  8178  	// Replication Configuration template server instance type.
  8179  	ReplicationServerInstanceType *string `locationName:"replicationServerInstanceType" type:"string"`
  8180  
  8181  	// Replication Configuration template server Security Groups IDs.
  8182  	ReplicationServersSecurityGroupsIDs []*string `locationName:"replicationServersSecurityGroupsIDs" type:"list"`
  8183  
  8184  	// Replication Configuration template Staging Area subnet ID.
  8185  	StagingAreaSubnetId *string `locationName:"stagingAreaSubnetId" type:"string"`
  8186  
  8187  	// Replication Configuration template Staging Area Tags.
  8188  	//
  8189  	// StagingAreaTags is a sensitive parameter and its value will be
  8190  	// replaced with "sensitive" in string returned by UpdateReplicationConfigurationTemplateOutput's
  8191  	// String and GoString methods.
  8192  	StagingAreaTags map[string]*string `locationName:"stagingAreaTags" type:"map" sensitive:"true"`
  8193  
  8194  	// Replication Configuration template Tags.
  8195  	//
  8196  	// Tags is a sensitive parameter and its value will be
  8197  	// replaced with "sensitive" in string returned by UpdateReplicationConfigurationTemplateOutput's
  8198  	// String and GoString methods.
  8199  	Tags map[string]*string `locationName:"tags" type:"map" sensitive:"true"`
  8200  
  8201  	// Replication Configuration template use Dedicated Replication Server.
  8202  	UseDedicatedReplicationServer *bool `locationName:"useDedicatedReplicationServer" type:"boolean"`
  8203  }
  8204  
  8205  // String returns the string representation.
  8206  //
  8207  // API parameter values that are decorated as "sensitive" in the API will not
  8208  // be included in the string output. The member name will be present, but the
  8209  // value will be replaced with "sensitive".
  8210  func (s UpdateReplicationConfigurationTemplateOutput) String() string {
  8211  	return awsutil.Prettify(s)
  8212  }
  8213  
  8214  // GoString returns the string representation.
  8215  //
  8216  // API parameter values that are decorated as "sensitive" in the API will not
  8217  // be included in the string output. The member name will be present, but the
  8218  // value will be replaced with "sensitive".
  8219  func (s UpdateReplicationConfigurationTemplateOutput) GoString() string {
  8220  	return s.String()
  8221  }
  8222  
  8223  // SetArn sets the Arn field's value.
  8224  func (s *UpdateReplicationConfigurationTemplateOutput) SetArn(v string) *UpdateReplicationConfigurationTemplateOutput {
  8225  	s.Arn = &v
  8226  	return s
  8227  }
  8228  
  8229  // SetAssociateDefaultSecurityGroup sets the AssociateDefaultSecurityGroup field's value.
  8230  func (s *UpdateReplicationConfigurationTemplateOutput) SetAssociateDefaultSecurityGroup(v bool) *UpdateReplicationConfigurationTemplateOutput {
  8231  	s.AssociateDefaultSecurityGroup = &v
  8232  	return s
  8233  }
  8234  
  8235  // SetBandwidthThrottling sets the BandwidthThrottling field's value.
  8236  func (s *UpdateReplicationConfigurationTemplateOutput) SetBandwidthThrottling(v int64) *UpdateReplicationConfigurationTemplateOutput {
  8237  	s.BandwidthThrottling = &v
  8238  	return s
  8239  }
  8240  
  8241  // SetCreatePublicIP sets the CreatePublicIP field's value.
  8242  func (s *UpdateReplicationConfigurationTemplateOutput) SetCreatePublicIP(v bool) *UpdateReplicationConfigurationTemplateOutput {
  8243  	s.CreatePublicIP = &v
  8244  	return s
  8245  }
  8246  
  8247  // SetDataPlaneRouting sets the DataPlaneRouting field's value.
  8248  func (s *UpdateReplicationConfigurationTemplateOutput) SetDataPlaneRouting(v string) *UpdateReplicationConfigurationTemplateOutput {
  8249  	s.DataPlaneRouting = &v
  8250  	return s
  8251  }
  8252  
  8253  // SetDefaultLargeStagingDiskType sets the DefaultLargeStagingDiskType field's value.
  8254  func (s *UpdateReplicationConfigurationTemplateOutput) SetDefaultLargeStagingDiskType(v string) *UpdateReplicationConfigurationTemplateOutput {
  8255  	s.DefaultLargeStagingDiskType = &v
  8256  	return s
  8257  }
  8258  
  8259  // SetEbsEncryption sets the EbsEncryption field's value.
  8260  func (s *UpdateReplicationConfigurationTemplateOutput) SetEbsEncryption(v string) *UpdateReplicationConfigurationTemplateOutput {
  8261  	s.EbsEncryption = &v
  8262  	return s
  8263  }
  8264  
  8265  // SetEbsEncryptionKeyArn sets the EbsEncryptionKeyArn field's value.
  8266  func (s *UpdateReplicationConfigurationTemplateOutput) SetEbsEncryptionKeyArn(v string) *UpdateReplicationConfigurationTemplateOutput {
  8267  	s.EbsEncryptionKeyArn = &v
  8268  	return s
  8269  }
  8270  
  8271  // SetReplicationConfigurationTemplateID sets the ReplicationConfigurationTemplateID field's value.
  8272  func (s *UpdateReplicationConfigurationTemplateOutput) SetReplicationConfigurationTemplateID(v string) *UpdateReplicationConfigurationTemplateOutput {
  8273  	s.ReplicationConfigurationTemplateID = &v
  8274  	return s
  8275  }
  8276  
  8277  // SetReplicationServerInstanceType sets the ReplicationServerInstanceType field's value.
  8278  func (s *UpdateReplicationConfigurationTemplateOutput) SetReplicationServerInstanceType(v string) *UpdateReplicationConfigurationTemplateOutput {
  8279  	s.ReplicationServerInstanceType = &v
  8280  	return s
  8281  }
  8282  
  8283  // SetReplicationServersSecurityGroupsIDs sets the ReplicationServersSecurityGroupsIDs field's value.
  8284  func (s *UpdateReplicationConfigurationTemplateOutput) SetReplicationServersSecurityGroupsIDs(v []*string) *UpdateReplicationConfigurationTemplateOutput {
  8285  	s.ReplicationServersSecurityGroupsIDs = v
  8286  	return s
  8287  }
  8288  
  8289  // SetStagingAreaSubnetId sets the StagingAreaSubnetId field's value.
  8290  func (s *UpdateReplicationConfigurationTemplateOutput) SetStagingAreaSubnetId(v string) *UpdateReplicationConfigurationTemplateOutput {
  8291  	s.StagingAreaSubnetId = &v
  8292  	return s
  8293  }
  8294  
  8295  // SetStagingAreaTags sets the StagingAreaTags field's value.
  8296  func (s *UpdateReplicationConfigurationTemplateOutput) SetStagingAreaTags(v map[string]*string) *UpdateReplicationConfigurationTemplateOutput {
  8297  	s.StagingAreaTags = v
  8298  	return s
  8299  }
  8300  
  8301  // SetTags sets the Tags field's value.
  8302  func (s *UpdateReplicationConfigurationTemplateOutput) SetTags(v map[string]*string) *UpdateReplicationConfigurationTemplateOutput {
  8303  	s.Tags = v
  8304  	return s
  8305  }
  8306  
  8307  // SetUseDedicatedReplicationServer sets the UseDedicatedReplicationServer field's value.
  8308  func (s *UpdateReplicationConfigurationTemplateOutput) SetUseDedicatedReplicationServer(v bool) *UpdateReplicationConfigurationTemplateOutput {
  8309  	s.UseDedicatedReplicationServer = &v
  8310  	return s
  8311  }
  8312  
  8313  // Validate exception.
  8314  type ValidationException struct {
  8315  	_            struct{}                  `type:"structure"`
  8316  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  8317  
  8318  	Code_ *string `locationName:"code" type:"string"`
  8319  
  8320  	// Validate exception field list.
  8321  	FieldList []*ValidationExceptionField `locationName:"fieldList" type:"list"`
  8322  
  8323  	Message_ *string `locationName:"message" type:"string"`
  8324  
  8325  	// Validate exception reason.
  8326  	Reason *string `locationName:"reason" type:"string" enum:"ValidationExceptionReason"`
  8327  }
  8328  
  8329  // String returns the string representation.
  8330  //
  8331  // API parameter values that are decorated as "sensitive" in the API will not
  8332  // be included in the string output. The member name will be present, but the
  8333  // value will be replaced with "sensitive".
  8334  func (s ValidationException) String() string {
  8335  	return awsutil.Prettify(s)
  8336  }
  8337  
  8338  // GoString returns the string representation.
  8339  //
  8340  // API parameter values that are decorated as "sensitive" in the API will not
  8341  // be included in the string output. The member name will be present, but the
  8342  // value will be replaced with "sensitive".
  8343  func (s ValidationException) GoString() string {
  8344  	return s.String()
  8345  }
  8346  
  8347  func newErrorValidationException(v protocol.ResponseMetadata) error {
  8348  	return &ValidationException{
  8349  		RespMetadata: v,
  8350  	}
  8351  }
  8352  
  8353  // Code returns the exception type name.
  8354  func (s *ValidationException) Code() string {
  8355  	return "ValidationException"
  8356  }
  8357  
  8358  // Message returns the exception's message.
  8359  func (s *ValidationException) Message() string {
  8360  	if s.Message_ != nil {
  8361  		return *s.Message_
  8362  	}
  8363  	return ""
  8364  }
  8365  
  8366  // OrigErr always returns nil, satisfies awserr.Error interface.
  8367  func (s *ValidationException) OrigErr() error {
  8368  	return nil
  8369  }
  8370  
  8371  func (s *ValidationException) Error() string {
  8372  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  8373  }
  8374  
  8375  // Status code returns the HTTP status code for the request's response error.
  8376  func (s *ValidationException) StatusCode() int {
  8377  	return s.RespMetadata.StatusCode
  8378  }
  8379  
  8380  // RequestID returns the service's response RequestID for request.
  8381  func (s *ValidationException) RequestID() string {
  8382  	return s.RespMetadata.RequestID
  8383  }
  8384  
  8385  // Validate exception field.
  8386  type ValidationExceptionField struct {
  8387  	_ struct{} `type:"structure"`
  8388  
  8389  	// Validate exception field message.
  8390  	Message *string `locationName:"message" type:"string"`
  8391  
  8392  	// Validate exception field name.
  8393  	Name *string `locationName:"name" type:"string"`
  8394  }
  8395  
  8396  // String returns the string representation.
  8397  //
  8398  // API parameter values that are decorated as "sensitive" in the API will not
  8399  // be included in the string output. The member name will be present, but the
  8400  // value will be replaced with "sensitive".
  8401  func (s ValidationExceptionField) String() string {
  8402  	return awsutil.Prettify(s)
  8403  }
  8404  
  8405  // GoString returns the string representation.
  8406  //
  8407  // API parameter values that are decorated as "sensitive" in the API will not
  8408  // be included in the string output. The member name will be present, but the
  8409  // value will be replaced with "sensitive".
  8410  func (s ValidationExceptionField) GoString() string {
  8411  	return s.String()
  8412  }
  8413  
  8414  // SetMessage sets the Message field's value.
  8415  func (s *ValidationExceptionField) SetMessage(v string) *ValidationExceptionField {
  8416  	s.Message = &v
  8417  	return s
  8418  }
  8419  
  8420  // SetName sets the Name field's value.
  8421  func (s *ValidationExceptionField) SetName(v string) *ValidationExceptionField {
  8422  	s.Name = &v
  8423  	return s
  8424  }
  8425  
  8426  const (
  8427  	// ChangeServerLifeCycleStateSourceServerLifecycleStateReadyForTest is a ChangeServerLifeCycleStateSourceServerLifecycleState enum value
  8428  	ChangeServerLifeCycleStateSourceServerLifecycleStateReadyForTest = "READY_FOR_TEST"
  8429  
  8430  	// ChangeServerLifeCycleStateSourceServerLifecycleStateReadyForCutover is a ChangeServerLifeCycleStateSourceServerLifecycleState enum value
  8431  	ChangeServerLifeCycleStateSourceServerLifecycleStateReadyForCutover = "READY_FOR_CUTOVER"
  8432  
  8433  	// ChangeServerLifeCycleStateSourceServerLifecycleStateCutover is a ChangeServerLifeCycleStateSourceServerLifecycleState enum value
  8434  	ChangeServerLifeCycleStateSourceServerLifecycleStateCutover = "CUTOVER"
  8435  )
  8436  
  8437  // ChangeServerLifeCycleStateSourceServerLifecycleState_Values returns all elements of the ChangeServerLifeCycleStateSourceServerLifecycleState enum
  8438  func ChangeServerLifeCycleStateSourceServerLifecycleState_Values() []string {
  8439  	return []string{
  8440  		ChangeServerLifeCycleStateSourceServerLifecycleStateReadyForTest,
  8441  		ChangeServerLifeCycleStateSourceServerLifecycleStateReadyForCutover,
  8442  		ChangeServerLifeCycleStateSourceServerLifecycleStateCutover,
  8443  	}
  8444  }
  8445  
  8446  const (
  8447  	// DataReplicationErrorStringAgentNotSeen is a DataReplicationErrorString enum value
  8448  	DataReplicationErrorStringAgentNotSeen = "AGENT_NOT_SEEN"
  8449  
  8450  	// DataReplicationErrorStringSnapshotsFailure is a DataReplicationErrorString enum value
  8451  	DataReplicationErrorStringSnapshotsFailure = "SNAPSHOTS_FAILURE"
  8452  
  8453  	// DataReplicationErrorStringNotConverging is a DataReplicationErrorString enum value
  8454  	DataReplicationErrorStringNotConverging = "NOT_CONVERGING"
  8455  
  8456  	// DataReplicationErrorStringUnstableNetwork is a DataReplicationErrorString enum value
  8457  	DataReplicationErrorStringUnstableNetwork = "UNSTABLE_NETWORK"
  8458  
  8459  	// DataReplicationErrorStringFailedToCreateSecurityGroup is a DataReplicationErrorString enum value
  8460  	DataReplicationErrorStringFailedToCreateSecurityGroup = "FAILED_TO_CREATE_SECURITY_GROUP"
  8461  
  8462  	// DataReplicationErrorStringFailedToLaunchReplicationServer is a DataReplicationErrorString enum value
  8463  	DataReplicationErrorStringFailedToLaunchReplicationServer = "FAILED_TO_LAUNCH_REPLICATION_SERVER"
  8464  
  8465  	// DataReplicationErrorStringFailedToBootReplicationServer is a DataReplicationErrorString enum value
  8466  	DataReplicationErrorStringFailedToBootReplicationServer = "FAILED_TO_BOOT_REPLICATION_SERVER"
  8467  
  8468  	// DataReplicationErrorStringFailedToAuthenticateWithService is a DataReplicationErrorString enum value
  8469  	DataReplicationErrorStringFailedToAuthenticateWithService = "FAILED_TO_AUTHENTICATE_WITH_SERVICE"
  8470  
  8471  	// DataReplicationErrorStringFailedToDownloadReplicationSoftware is a DataReplicationErrorString enum value
  8472  	DataReplicationErrorStringFailedToDownloadReplicationSoftware = "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE"
  8473  
  8474  	// DataReplicationErrorStringFailedToCreateStagingDisks is a DataReplicationErrorString enum value
  8475  	DataReplicationErrorStringFailedToCreateStagingDisks = "FAILED_TO_CREATE_STAGING_DISKS"
  8476  
  8477  	// DataReplicationErrorStringFailedToAttachStagingDisks is a DataReplicationErrorString enum value
  8478  	DataReplicationErrorStringFailedToAttachStagingDisks = "FAILED_TO_ATTACH_STAGING_DISKS"
  8479  
  8480  	// DataReplicationErrorStringFailedToPairReplicationServerWithAgent is a DataReplicationErrorString enum value
  8481  	DataReplicationErrorStringFailedToPairReplicationServerWithAgent = "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT"
  8482  
  8483  	// DataReplicationErrorStringFailedToConnectAgentToReplicationServer is a DataReplicationErrorString enum value
  8484  	DataReplicationErrorStringFailedToConnectAgentToReplicationServer = "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER"
  8485  
  8486  	// DataReplicationErrorStringFailedToStartDataTransfer is a DataReplicationErrorString enum value
  8487  	DataReplicationErrorStringFailedToStartDataTransfer = "FAILED_TO_START_DATA_TRANSFER"
  8488  )
  8489  
  8490  // DataReplicationErrorString_Values returns all elements of the DataReplicationErrorString enum
  8491  func DataReplicationErrorString_Values() []string {
  8492  	return []string{
  8493  		DataReplicationErrorStringAgentNotSeen,
  8494  		DataReplicationErrorStringSnapshotsFailure,
  8495  		DataReplicationErrorStringNotConverging,
  8496  		DataReplicationErrorStringUnstableNetwork,
  8497  		DataReplicationErrorStringFailedToCreateSecurityGroup,
  8498  		DataReplicationErrorStringFailedToLaunchReplicationServer,
  8499  		DataReplicationErrorStringFailedToBootReplicationServer,
  8500  		DataReplicationErrorStringFailedToAuthenticateWithService,
  8501  		DataReplicationErrorStringFailedToDownloadReplicationSoftware,
  8502  		DataReplicationErrorStringFailedToCreateStagingDisks,
  8503  		DataReplicationErrorStringFailedToAttachStagingDisks,
  8504  		DataReplicationErrorStringFailedToPairReplicationServerWithAgent,
  8505  		DataReplicationErrorStringFailedToConnectAgentToReplicationServer,
  8506  		DataReplicationErrorStringFailedToStartDataTransfer,
  8507  	}
  8508  }
  8509  
  8510  const (
  8511  	// DataReplicationInitiationStepNameWait is a DataReplicationInitiationStepName enum value
  8512  	DataReplicationInitiationStepNameWait = "WAIT"
  8513  
  8514  	// DataReplicationInitiationStepNameCreateSecurityGroup is a DataReplicationInitiationStepName enum value
  8515  	DataReplicationInitiationStepNameCreateSecurityGroup = "CREATE_SECURITY_GROUP"
  8516  
  8517  	// DataReplicationInitiationStepNameLaunchReplicationServer is a DataReplicationInitiationStepName enum value
  8518  	DataReplicationInitiationStepNameLaunchReplicationServer = "LAUNCH_REPLICATION_SERVER"
  8519  
  8520  	// DataReplicationInitiationStepNameBootReplicationServer is a DataReplicationInitiationStepName enum value
  8521  	DataReplicationInitiationStepNameBootReplicationServer = "BOOT_REPLICATION_SERVER"
  8522  
  8523  	// DataReplicationInitiationStepNameAuthenticateWithService is a DataReplicationInitiationStepName enum value
  8524  	DataReplicationInitiationStepNameAuthenticateWithService = "AUTHENTICATE_WITH_SERVICE"
  8525  
  8526  	// DataReplicationInitiationStepNameDownloadReplicationSoftware is a DataReplicationInitiationStepName enum value
  8527  	DataReplicationInitiationStepNameDownloadReplicationSoftware = "DOWNLOAD_REPLICATION_SOFTWARE"
  8528  
  8529  	// DataReplicationInitiationStepNameCreateStagingDisks is a DataReplicationInitiationStepName enum value
  8530  	DataReplicationInitiationStepNameCreateStagingDisks = "CREATE_STAGING_DISKS"
  8531  
  8532  	// DataReplicationInitiationStepNameAttachStagingDisks is a DataReplicationInitiationStepName enum value
  8533  	DataReplicationInitiationStepNameAttachStagingDisks = "ATTACH_STAGING_DISKS"
  8534  
  8535  	// DataReplicationInitiationStepNamePairReplicationServerWithAgent is a DataReplicationInitiationStepName enum value
  8536  	DataReplicationInitiationStepNamePairReplicationServerWithAgent = "PAIR_REPLICATION_SERVER_WITH_AGENT"
  8537  
  8538  	// DataReplicationInitiationStepNameConnectAgentToReplicationServer is a DataReplicationInitiationStepName enum value
  8539  	DataReplicationInitiationStepNameConnectAgentToReplicationServer = "CONNECT_AGENT_TO_REPLICATION_SERVER"
  8540  
  8541  	// DataReplicationInitiationStepNameStartDataTransfer is a DataReplicationInitiationStepName enum value
  8542  	DataReplicationInitiationStepNameStartDataTransfer = "START_DATA_TRANSFER"
  8543  )
  8544  
  8545  // DataReplicationInitiationStepName_Values returns all elements of the DataReplicationInitiationStepName enum
  8546  func DataReplicationInitiationStepName_Values() []string {
  8547  	return []string{
  8548  		DataReplicationInitiationStepNameWait,
  8549  		DataReplicationInitiationStepNameCreateSecurityGroup,
  8550  		DataReplicationInitiationStepNameLaunchReplicationServer,
  8551  		DataReplicationInitiationStepNameBootReplicationServer,
  8552  		DataReplicationInitiationStepNameAuthenticateWithService,
  8553  		DataReplicationInitiationStepNameDownloadReplicationSoftware,
  8554  		DataReplicationInitiationStepNameCreateStagingDisks,
  8555  		DataReplicationInitiationStepNameAttachStagingDisks,
  8556  		DataReplicationInitiationStepNamePairReplicationServerWithAgent,
  8557  		DataReplicationInitiationStepNameConnectAgentToReplicationServer,
  8558  		DataReplicationInitiationStepNameStartDataTransfer,
  8559  	}
  8560  }
  8561  
  8562  const (
  8563  	// DataReplicationInitiationStepStatusNotStarted is a DataReplicationInitiationStepStatus enum value
  8564  	DataReplicationInitiationStepStatusNotStarted = "NOT_STARTED"
  8565  
  8566  	// DataReplicationInitiationStepStatusInProgress is a DataReplicationInitiationStepStatus enum value
  8567  	DataReplicationInitiationStepStatusInProgress = "IN_PROGRESS"
  8568  
  8569  	// DataReplicationInitiationStepStatusSucceeded is a DataReplicationInitiationStepStatus enum value
  8570  	DataReplicationInitiationStepStatusSucceeded = "SUCCEEDED"
  8571  
  8572  	// DataReplicationInitiationStepStatusFailed is a DataReplicationInitiationStepStatus enum value
  8573  	DataReplicationInitiationStepStatusFailed = "FAILED"
  8574  
  8575  	// DataReplicationInitiationStepStatusSkipped is a DataReplicationInitiationStepStatus enum value
  8576  	DataReplicationInitiationStepStatusSkipped = "SKIPPED"
  8577  )
  8578  
  8579  // DataReplicationInitiationStepStatus_Values returns all elements of the DataReplicationInitiationStepStatus enum
  8580  func DataReplicationInitiationStepStatus_Values() []string {
  8581  	return []string{
  8582  		DataReplicationInitiationStepStatusNotStarted,
  8583  		DataReplicationInitiationStepStatusInProgress,
  8584  		DataReplicationInitiationStepStatusSucceeded,
  8585  		DataReplicationInitiationStepStatusFailed,
  8586  		DataReplicationInitiationStepStatusSkipped,
  8587  	}
  8588  }
  8589  
  8590  const (
  8591  	// DataReplicationStateStopped is a DataReplicationState enum value
  8592  	DataReplicationStateStopped = "STOPPED"
  8593  
  8594  	// DataReplicationStateInitiating is a DataReplicationState enum value
  8595  	DataReplicationStateInitiating = "INITIATING"
  8596  
  8597  	// DataReplicationStateInitialSync is a DataReplicationState enum value
  8598  	DataReplicationStateInitialSync = "INITIAL_SYNC"
  8599  
  8600  	// DataReplicationStateBacklog is a DataReplicationState enum value
  8601  	DataReplicationStateBacklog = "BACKLOG"
  8602  
  8603  	// DataReplicationStateCreatingSnapshot is a DataReplicationState enum value
  8604  	DataReplicationStateCreatingSnapshot = "CREATING_SNAPSHOT"
  8605  
  8606  	// DataReplicationStateContinuous is a DataReplicationState enum value
  8607  	DataReplicationStateContinuous = "CONTINUOUS"
  8608  
  8609  	// DataReplicationStatePaused is a DataReplicationState enum value
  8610  	DataReplicationStatePaused = "PAUSED"
  8611  
  8612  	// DataReplicationStateRescan is a DataReplicationState enum value
  8613  	DataReplicationStateRescan = "RESCAN"
  8614  
  8615  	// DataReplicationStateStalled is a DataReplicationState enum value
  8616  	DataReplicationStateStalled = "STALLED"
  8617  
  8618  	// DataReplicationStateDisconnected is a DataReplicationState enum value
  8619  	DataReplicationStateDisconnected = "DISCONNECTED"
  8620  )
  8621  
  8622  // DataReplicationState_Values returns all elements of the DataReplicationState enum
  8623  func DataReplicationState_Values() []string {
  8624  	return []string{
  8625  		DataReplicationStateStopped,
  8626  		DataReplicationStateInitiating,
  8627  		DataReplicationStateInitialSync,
  8628  		DataReplicationStateBacklog,
  8629  		DataReplicationStateCreatingSnapshot,
  8630  		DataReplicationStateContinuous,
  8631  		DataReplicationStatePaused,
  8632  		DataReplicationStateRescan,
  8633  		DataReplicationStateStalled,
  8634  		DataReplicationStateDisconnected,
  8635  	}
  8636  }
  8637  
  8638  const (
  8639  	// FirstBootWaiting is a FirstBoot enum value
  8640  	FirstBootWaiting = "WAITING"
  8641  
  8642  	// FirstBootSucceeded is a FirstBoot enum value
  8643  	FirstBootSucceeded = "SUCCEEDED"
  8644  
  8645  	// FirstBootUnknown is a FirstBoot enum value
  8646  	FirstBootUnknown = "UNKNOWN"
  8647  
  8648  	// FirstBootStopped is a FirstBoot enum value
  8649  	FirstBootStopped = "STOPPED"
  8650  )
  8651  
  8652  // FirstBoot_Values returns all elements of the FirstBoot enum
  8653  func FirstBoot_Values() []string {
  8654  	return []string{
  8655  		FirstBootWaiting,
  8656  		FirstBootSucceeded,
  8657  		FirstBootUnknown,
  8658  		FirstBootStopped,
  8659  	}
  8660  }
  8661  
  8662  const (
  8663  	// InitiatedByStartTest is a InitiatedBy enum value
  8664  	InitiatedByStartTest = "START_TEST"
  8665  
  8666  	// InitiatedByStartCutover is a InitiatedBy enum value
  8667  	InitiatedByStartCutover = "START_CUTOVER"
  8668  
  8669  	// InitiatedByDiagnostic is a InitiatedBy enum value
  8670  	InitiatedByDiagnostic = "DIAGNOSTIC"
  8671  
  8672  	// InitiatedByTerminate is a InitiatedBy enum value
  8673  	InitiatedByTerminate = "TERMINATE"
  8674  )
  8675  
  8676  // InitiatedBy_Values returns all elements of the InitiatedBy enum
  8677  func InitiatedBy_Values() []string {
  8678  	return []string{
  8679  		InitiatedByStartTest,
  8680  		InitiatedByStartCutover,
  8681  		InitiatedByDiagnostic,
  8682  		InitiatedByTerminate,
  8683  	}
  8684  }
  8685  
  8686  const (
  8687  	// JobLogEventJobStart is a JobLogEvent enum value
  8688  	JobLogEventJobStart = "JOB_START"
  8689  
  8690  	// JobLogEventServerSkipped is a JobLogEvent enum value
  8691  	JobLogEventServerSkipped = "SERVER_SKIPPED"
  8692  
  8693  	// JobLogEventCleanupStart is a JobLogEvent enum value
  8694  	JobLogEventCleanupStart = "CLEANUP_START"
  8695  
  8696  	// JobLogEventCleanupEnd is a JobLogEvent enum value
  8697  	JobLogEventCleanupEnd = "CLEANUP_END"
  8698  
  8699  	// JobLogEventCleanupFail is a JobLogEvent enum value
  8700  	JobLogEventCleanupFail = "CLEANUP_FAIL"
  8701  
  8702  	// JobLogEventSnapshotStart is a JobLogEvent enum value
  8703  	JobLogEventSnapshotStart = "SNAPSHOT_START"
  8704  
  8705  	// JobLogEventSnapshotEnd is a JobLogEvent enum value
  8706  	JobLogEventSnapshotEnd = "SNAPSHOT_END"
  8707  
  8708  	// JobLogEventSnapshotFail is a JobLogEvent enum value
  8709  	JobLogEventSnapshotFail = "SNAPSHOT_FAIL"
  8710  
  8711  	// JobLogEventUsingPreviousSnapshot is a JobLogEvent enum value
  8712  	JobLogEventUsingPreviousSnapshot = "USING_PREVIOUS_SNAPSHOT"
  8713  
  8714  	// JobLogEventConversionStart is a JobLogEvent enum value
  8715  	JobLogEventConversionStart = "CONVERSION_START"
  8716  
  8717  	// JobLogEventConversionEnd is a JobLogEvent enum value
  8718  	JobLogEventConversionEnd = "CONVERSION_END"
  8719  
  8720  	// JobLogEventConversionFail is a JobLogEvent enum value
  8721  	JobLogEventConversionFail = "CONVERSION_FAIL"
  8722  
  8723  	// JobLogEventLaunchStart is a JobLogEvent enum value
  8724  	JobLogEventLaunchStart = "LAUNCH_START"
  8725  
  8726  	// JobLogEventLaunchFailed is a JobLogEvent enum value
  8727  	JobLogEventLaunchFailed = "LAUNCH_FAILED"
  8728  
  8729  	// JobLogEventJobCancel is a JobLogEvent enum value
  8730  	JobLogEventJobCancel = "JOB_CANCEL"
  8731  
  8732  	// JobLogEventJobEnd is a JobLogEvent enum value
  8733  	JobLogEventJobEnd = "JOB_END"
  8734  )
  8735  
  8736  // JobLogEvent_Values returns all elements of the JobLogEvent enum
  8737  func JobLogEvent_Values() []string {
  8738  	return []string{
  8739  		JobLogEventJobStart,
  8740  		JobLogEventServerSkipped,
  8741  		JobLogEventCleanupStart,
  8742  		JobLogEventCleanupEnd,
  8743  		JobLogEventCleanupFail,
  8744  		JobLogEventSnapshotStart,
  8745  		JobLogEventSnapshotEnd,
  8746  		JobLogEventSnapshotFail,
  8747  		JobLogEventUsingPreviousSnapshot,
  8748  		JobLogEventConversionStart,
  8749  		JobLogEventConversionEnd,
  8750  		JobLogEventConversionFail,
  8751  		JobLogEventLaunchStart,
  8752  		JobLogEventLaunchFailed,
  8753  		JobLogEventJobCancel,
  8754  		JobLogEventJobEnd,
  8755  	}
  8756  }
  8757  
  8758  const (
  8759  	// JobStatusPending is a JobStatus enum value
  8760  	JobStatusPending = "PENDING"
  8761  
  8762  	// JobStatusStarted is a JobStatus enum value
  8763  	JobStatusStarted = "STARTED"
  8764  
  8765  	// JobStatusCompleted is a JobStatus enum value
  8766  	JobStatusCompleted = "COMPLETED"
  8767  )
  8768  
  8769  // JobStatus_Values returns all elements of the JobStatus enum
  8770  func JobStatus_Values() []string {
  8771  	return []string{
  8772  		JobStatusPending,
  8773  		JobStatusStarted,
  8774  		JobStatusCompleted,
  8775  	}
  8776  }
  8777  
  8778  const (
  8779  	// JobTypeLaunch is a JobType enum value
  8780  	JobTypeLaunch = "LAUNCH"
  8781  
  8782  	// JobTypeTerminate is a JobType enum value
  8783  	JobTypeTerminate = "TERMINATE"
  8784  )
  8785  
  8786  // JobType_Values returns all elements of the JobType enum
  8787  func JobType_Values() []string {
  8788  	return []string{
  8789  		JobTypeLaunch,
  8790  		JobTypeTerminate,
  8791  	}
  8792  }
  8793  
  8794  const (
  8795  	// LaunchDispositionStopped is a LaunchDisposition enum value
  8796  	LaunchDispositionStopped = "STOPPED"
  8797  
  8798  	// LaunchDispositionStarted is a LaunchDisposition enum value
  8799  	LaunchDispositionStarted = "STARTED"
  8800  )
  8801  
  8802  // LaunchDisposition_Values returns all elements of the LaunchDisposition enum
  8803  func LaunchDisposition_Values() []string {
  8804  	return []string{
  8805  		LaunchDispositionStopped,
  8806  		LaunchDispositionStarted,
  8807  	}
  8808  }
  8809  
  8810  const (
  8811  	// LaunchStatusPending is a LaunchStatus enum value
  8812  	LaunchStatusPending = "PENDING"
  8813  
  8814  	// LaunchStatusInProgress is a LaunchStatus enum value
  8815  	LaunchStatusInProgress = "IN_PROGRESS"
  8816  
  8817  	// LaunchStatusLaunched is a LaunchStatus enum value
  8818  	LaunchStatusLaunched = "LAUNCHED"
  8819  
  8820  	// LaunchStatusFailed is a LaunchStatus enum value
  8821  	LaunchStatusFailed = "FAILED"
  8822  
  8823  	// LaunchStatusTerminated is a LaunchStatus enum value
  8824  	LaunchStatusTerminated = "TERMINATED"
  8825  )
  8826  
  8827  // LaunchStatus_Values returns all elements of the LaunchStatus enum
  8828  func LaunchStatus_Values() []string {
  8829  	return []string{
  8830  		LaunchStatusPending,
  8831  		LaunchStatusInProgress,
  8832  		LaunchStatusLaunched,
  8833  		LaunchStatusFailed,
  8834  		LaunchStatusTerminated,
  8835  	}
  8836  }
  8837  
  8838  const (
  8839  	// LifeCycleStateStopped is a LifeCycleState enum value
  8840  	LifeCycleStateStopped = "STOPPED"
  8841  
  8842  	// LifeCycleStateNotReady is a LifeCycleState enum value
  8843  	LifeCycleStateNotReady = "NOT_READY"
  8844  
  8845  	// LifeCycleStateReadyForTest is a LifeCycleState enum value
  8846  	LifeCycleStateReadyForTest = "READY_FOR_TEST"
  8847  
  8848  	// LifeCycleStateTesting is a LifeCycleState enum value
  8849  	LifeCycleStateTesting = "TESTING"
  8850  
  8851  	// LifeCycleStateReadyForCutover is a LifeCycleState enum value
  8852  	LifeCycleStateReadyForCutover = "READY_FOR_CUTOVER"
  8853  
  8854  	// LifeCycleStateCuttingOver is a LifeCycleState enum value
  8855  	LifeCycleStateCuttingOver = "CUTTING_OVER"
  8856  
  8857  	// LifeCycleStateCutover is a LifeCycleState enum value
  8858  	LifeCycleStateCutover = "CUTOVER"
  8859  
  8860  	// LifeCycleStateDisconnected is a LifeCycleState enum value
  8861  	LifeCycleStateDisconnected = "DISCONNECTED"
  8862  )
  8863  
  8864  // LifeCycleState_Values returns all elements of the LifeCycleState enum
  8865  func LifeCycleState_Values() []string {
  8866  	return []string{
  8867  		LifeCycleStateStopped,
  8868  		LifeCycleStateNotReady,
  8869  		LifeCycleStateReadyForTest,
  8870  		LifeCycleStateTesting,
  8871  		LifeCycleStateReadyForCutover,
  8872  		LifeCycleStateCuttingOver,
  8873  		LifeCycleStateCutover,
  8874  		LifeCycleStateDisconnected,
  8875  	}
  8876  }
  8877  
  8878  const (
  8879  	// ReplicationConfigurationDataPlaneRoutingPrivateIp is a ReplicationConfigurationDataPlaneRouting enum value
  8880  	ReplicationConfigurationDataPlaneRoutingPrivateIp = "PRIVATE_IP"
  8881  
  8882  	// ReplicationConfigurationDataPlaneRoutingPublicIp is a ReplicationConfigurationDataPlaneRouting enum value
  8883  	ReplicationConfigurationDataPlaneRoutingPublicIp = "PUBLIC_IP"
  8884  )
  8885  
  8886  // ReplicationConfigurationDataPlaneRouting_Values returns all elements of the ReplicationConfigurationDataPlaneRouting enum
  8887  func ReplicationConfigurationDataPlaneRouting_Values() []string {
  8888  	return []string{
  8889  		ReplicationConfigurationDataPlaneRoutingPrivateIp,
  8890  		ReplicationConfigurationDataPlaneRoutingPublicIp,
  8891  	}
  8892  }
  8893  
  8894  const (
  8895  	// ReplicationConfigurationDefaultLargeStagingDiskTypeGp2 is a ReplicationConfigurationDefaultLargeStagingDiskType enum value
  8896  	ReplicationConfigurationDefaultLargeStagingDiskTypeGp2 = "GP2"
  8897  
  8898  	// ReplicationConfigurationDefaultLargeStagingDiskTypeSt1 is a ReplicationConfigurationDefaultLargeStagingDiskType enum value
  8899  	ReplicationConfigurationDefaultLargeStagingDiskTypeSt1 = "ST1"
  8900  )
  8901  
  8902  // ReplicationConfigurationDefaultLargeStagingDiskType_Values returns all elements of the ReplicationConfigurationDefaultLargeStagingDiskType enum
  8903  func ReplicationConfigurationDefaultLargeStagingDiskType_Values() []string {
  8904  	return []string{
  8905  		ReplicationConfigurationDefaultLargeStagingDiskTypeGp2,
  8906  		ReplicationConfigurationDefaultLargeStagingDiskTypeSt1,
  8907  	}
  8908  }
  8909  
  8910  const (
  8911  	// ReplicationConfigurationEbsEncryptionDefault is a ReplicationConfigurationEbsEncryption enum value
  8912  	ReplicationConfigurationEbsEncryptionDefault = "DEFAULT"
  8913  
  8914  	// ReplicationConfigurationEbsEncryptionCustom is a ReplicationConfigurationEbsEncryption enum value
  8915  	ReplicationConfigurationEbsEncryptionCustom = "CUSTOM"
  8916  )
  8917  
  8918  // ReplicationConfigurationEbsEncryption_Values returns all elements of the ReplicationConfigurationEbsEncryption enum
  8919  func ReplicationConfigurationEbsEncryption_Values() []string {
  8920  	return []string{
  8921  		ReplicationConfigurationEbsEncryptionDefault,
  8922  		ReplicationConfigurationEbsEncryptionCustom,
  8923  	}
  8924  }
  8925  
  8926  const (
  8927  	// ReplicationConfigurationReplicatedDiskStagingDiskTypeAuto is a ReplicationConfigurationReplicatedDiskStagingDiskType enum value
  8928  	ReplicationConfigurationReplicatedDiskStagingDiskTypeAuto = "AUTO"
  8929  
  8930  	// ReplicationConfigurationReplicatedDiskStagingDiskTypeGp2 is a ReplicationConfigurationReplicatedDiskStagingDiskType enum value
  8931  	ReplicationConfigurationReplicatedDiskStagingDiskTypeGp2 = "GP2"
  8932  
  8933  	// ReplicationConfigurationReplicatedDiskStagingDiskTypeIo1 is a ReplicationConfigurationReplicatedDiskStagingDiskType enum value
  8934  	ReplicationConfigurationReplicatedDiskStagingDiskTypeIo1 = "IO1"
  8935  
  8936  	// ReplicationConfigurationReplicatedDiskStagingDiskTypeSc1 is a ReplicationConfigurationReplicatedDiskStagingDiskType enum value
  8937  	ReplicationConfigurationReplicatedDiskStagingDiskTypeSc1 = "SC1"
  8938  
  8939  	// ReplicationConfigurationReplicatedDiskStagingDiskTypeSt1 is a ReplicationConfigurationReplicatedDiskStagingDiskType enum value
  8940  	ReplicationConfigurationReplicatedDiskStagingDiskTypeSt1 = "ST1"
  8941  
  8942  	// ReplicationConfigurationReplicatedDiskStagingDiskTypeStandard is a ReplicationConfigurationReplicatedDiskStagingDiskType enum value
  8943  	ReplicationConfigurationReplicatedDiskStagingDiskTypeStandard = "STANDARD"
  8944  )
  8945  
  8946  // ReplicationConfigurationReplicatedDiskStagingDiskType_Values returns all elements of the ReplicationConfigurationReplicatedDiskStagingDiskType enum
  8947  func ReplicationConfigurationReplicatedDiskStagingDiskType_Values() []string {
  8948  	return []string{
  8949  		ReplicationConfigurationReplicatedDiskStagingDiskTypeAuto,
  8950  		ReplicationConfigurationReplicatedDiskStagingDiskTypeGp2,
  8951  		ReplicationConfigurationReplicatedDiskStagingDiskTypeIo1,
  8952  		ReplicationConfigurationReplicatedDiskStagingDiskTypeSc1,
  8953  		ReplicationConfigurationReplicatedDiskStagingDiskTypeSt1,
  8954  		ReplicationConfigurationReplicatedDiskStagingDiskTypeStandard,
  8955  	}
  8956  }
  8957  
  8958  const (
  8959  	// TargetInstanceTypeRightSizingMethodNone is a TargetInstanceTypeRightSizingMethod enum value
  8960  	TargetInstanceTypeRightSizingMethodNone = "NONE"
  8961  
  8962  	// TargetInstanceTypeRightSizingMethodBasic is a TargetInstanceTypeRightSizingMethod enum value
  8963  	TargetInstanceTypeRightSizingMethodBasic = "BASIC"
  8964  )
  8965  
  8966  // TargetInstanceTypeRightSizingMethod_Values returns all elements of the TargetInstanceTypeRightSizingMethod enum
  8967  func TargetInstanceTypeRightSizingMethod_Values() []string {
  8968  	return []string{
  8969  		TargetInstanceTypeRightSizingMethodNone,
  8970  		TargetInstanceTypeRightSizingMethodBasic,
  8971  	}
  8972  }
  8973  
  8974  const (
  8975  	// ValidationExceptionReasonUnknownOperation is a ValidationExceptionReason enum value
  8976  	ValidationExceptionReasonUnknownOperation = "unknownOperation"
  8977  
  8978  	// ValidationExceptionReasonCannotParse is a ValidationExceptionReason enum value
  8979  	ValidationExceptionReasonCannotParse = "cannotParse"
  8980  
  8981  	// ValidationExceptionReasonFieldValidationFailed is a ValidationExceptionReason enum value
  8982  	ValidationExceptionReasonFieldValidationFailed = "fieldValidationFailed"
  8983  
  8984  	// ValidationExceptionReasonOther is a ValidationExceptionReason enum value
  8985  	ValidationExceptionReasonOther = "other"
  8986  )
  8987  
  8988  // ValidationExceptionReason_Values returns all elements of the ValidationExceptionReason enum
  8989  func ValidationExceptionReason_Values() []string {
  8990  	return []string{
  8991  		ValidationExceptionReasonUnknownOperation,
  8992  		ValidationExceptionReasonCannotParse,
  8993  		ValidationExceptionReasonFieldValidationFailed,
  8994  		ValidationExceptionReasonOther,
  8995  	}
  8996  }