1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package databasemigrationservice
4
5import (
6	"fmt"
7	"time"
8
9	"github.com/aws/aws-sdk-go/aws"
10	"github.com/aws/aws-sdk-go/aws/awsutil"
11	"github.com/aws/aws-sdk-go/aws/request"
12	"github.com/aws/aws-sdk-go/private/protocol"
13	"github.com/aws/aws-sdk-go/private/protocol/jsonrpc"
14)
15
16const opAddTagsToResource = "AddTagsToResource"
17
18// AddTagsToResourceRequest generates a "aws/request.Request" representing the
19// client's request for the AddTagsToResource operation. The "output" return
20// value will be populated with the request's response once the request completes
21// successfully.
22//
23// Use "Send" method on the returned Request to send the API call to the service.
24// the "output" return value is not valid until after Send returns without error.
25//
26// See AddTagsToResource for more information on using the AddTagsToResource
27// API call, and error handling.
28//
29// This method is useful when you want to inject custom logic or configuration
30// into the SDK's request lifecycle. Such as custom headers, or retry logic.
31//
32//
33//    // Example sending a request using the AddTagsToResourceRequest method.
34//    req, resp := client.AddTagsToResourceRequest(params)
35//
36//    err := req.Send()
37//    if err == nil { // resp is now filled
38//        fmt.Println(resp)
39//    }
40//
41// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/AddTagsToResource
42func (c *DatabaseMigrationService) AddTagsToResourceRequest(input *AddTagsToResourceInput) (req *request.Request, output *AddTagsToResourceOutput) {
43	op := &request.Operation{
44		Name:       opAddTagsToResource,
45		HTTPMethod: "POST",
46		HTTPPath:   "/",
47	}
48
49	if input == nil {
50		input = &AddTagsToResourceInput{}
51	}
52
53	output = &AddTagsToResourceOutput{}
54	req = c.newRequest(op, input, output)
55	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
56	return
57}
58
59// AddTagsToResource API operation for AWS Database Migration Service.
60//
61// Adds metadata tags to an AWS DMS resource, including replication instance,
62// endpoint, security group, and migration task. These tags can also be used
63// with cost allocation reporting to track cost associated with DMS resources,
64// or used in a Condition statement in an IAM policy for DMS. For more information,
65// see Tag (https://docs.aws.amazon.com/dms/latest/APIReference/API_Tag.html)
66// data type description.
67//
68// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
69// with awserr.Error's Code and Message methods to get detailed information about
70// the error.
71//
72// See the AWS API reference guide for AWS Database Migration Service's
73// API operation AddTagsToResource for usage and error information.
74//
75// Returned Error Types:
76//   * ResourceNotFoundFault
77//   The resource could not be found.
78//
79// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/AddTagsToResource
80func (c *DatabaseMigrationService) AddTagsToResource(input *AddTagsToResourceInput) (*AddTagsToResourceOutput, error) {
81	req, out := c.AddTagsToResourceRequest(input)
82	return out, req.Send()
83}
84
85// AddTagsToResourceWithContext is the same as AddTagsToResource with the addition of
86// the ability to pass a context and additional request options.
87//
88// See AddTagsToResource for details on how to use this API operation.
89//
90// The context must be non-nil and will be used for request cancellation. If
91// the context is nil a panic will occur. In the future the SDK may create
92// sub-contexts for http.Requests. See https://golang.org/pkg/context/
93// for more information on using Contexts.
94func (c *DatabaseMigrationService) AddTagsToResourceWithContext(ctx aws.Context, input *AddTagsToResourceInput, opts ...request.Option) (*AddTagsToResourceOutput, error) {
95	req, out := c.AddTagsToResourceRequest(input)
96	req.SetContext(ctx)
97	req.ApplyOptions(opts...)
98	return out, req.Send()
99}
100
101const opApplyPendingMaintenanceAction = "ApplyPendingMaintenanceAction"
102
103// ApplyPendingMaintenanceActionRequest generates a "aws/request.Request" representing the
104// client's request for the ApplyPendingMaintenanceAction operation. The "output" return
105// value will be populated with the request's response once the request completes
106// successfully.
107//
108// Use "Send" method on the returned Request to send the API call to the service.
109// the "output" return value is not valid until after Send returns without error.
110//
111// See ApplyPendingMaintenanceAction for more information on using the ApplyPendingMaintenanceAction
112// API call, and error handling.
113//
114// This method is useful when you want to inject custom logic or configuration
115// into the SDK's request lifecycle. Such as custom headers, or retry logic.
116//
117//
118//    // Example sending a request using the ApplyPendingMaintenanceActionRequest method.
119//    req, resp := client.ApplyPendingMaintenanceActionRequest(params)
120//
121//    err := req.Send()
122//    if err == nil { // resp is now filled
123//        fmt.Println(resp)
124//    }
125//
126// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/ApplyPendingMaintenanceAction
127func (c *DatabaseMigrationService) ApplyPendingMaintenanceActionRequest(input *ApplyPendingMaintenanceActionInput) (req *request.Request, output *ApplyPendingMaintenanceActionOutput) {
128	op := &request.Operation{
129		Name:       opApplyPendingMaintenanceAction,
130		HTTPMethod: "POST",
131		HTTPPath:   "/",
132	}
133
134	if input == nil {
135		input = &ApplyPendingMaintenanceActionInput{}
136	}
137
138	output = &ApplyPendingMaintenanceActionOutput{}
139	req = c.newRequest(op, input, output)
140	return
141}
142
143// ApplyPendingMaintenanceAction API operation for AWS Database Migration Service.
144//
145// Applies a pending maintenance action to a resource (for example, to a replication
146// instance).
147//
148// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
149// with awserr.Error's Code and Message methods to get detailed information about
150// the error.
151//
152// See the AWS API reference guide for AWS Database Migration Service's
153// API operation ApplyPendingMaintenanceAction for usage and error information.
154//
155// Returned Error Types:
156//   * ResourceNotFoundFault
157//   The resource could not be found.
158//
159// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/ApplyPendingMaintenanceAction
160func (c *DatabaseMigrationService) ApplyPendingMaintenanceAction(input *ApplyPendingMaintenanceActionInput) (*ApplyPendingMaintenanceActionOutput, error) {
161	req, out := c.ApplyPendingMaintenanceActionRequest(input)
162	return out, req.Send()
163}
164
165// ApplyPendingMaintenanceActionWithContext is the same as ApplyPendingMaintenanceAction with the addition of
166// the ability to pass a context and additional request options.
167//
168// See ApplyPendingMaintenanceAction for details on how to use this API operation.
169//
170// The context must be non-nil and will be used for request cancellation. If
171// the context is nil a panic will occur. In the future the SDK may create
172// sub-contexts for http.Requests. See https://golang.org/pkg/context/
173// for more information on using Contexts.
174func (c *DatabaseMigrationService) ApplyPendingMaintenanceActionWithContext(ctx aws.Context, input *ApplyPendingMaintenanceActionInput, opts ...request.Option) (*ApplyPendingMaintenanceActionOutput, error) {
175	req, out := c.ApplyPendingMaintenanceActionRequest(input)
176	req.SetContext(ctx)
177	req.ApplyOptions(opts...)
178	return out, req.Send()
179}
180
181const opCancelReplicationTaskAssessmentRun = "CancelReplicationTaskAssessmentRun"
182
183// CancelReplicationTaskAssessmentRunRequest generates a "aws/request.Request" representing the
184// client's request for the CancelReplicationTaskAssessmentRun operation. The "output" return
185// value will be populated with the request's response once the request completes
186// successfully.
187//
188// Use "Send" method on the returned Request to send the API call to the service.
189// the "output" return value is not valid until after Send returns without error.
190//
191// See CancelReplicationTaskAssessmentRun for more information on using the CancelReplicationTaskAssessmentRun
192// API call, and error handling.
193//
194// This method is useful when you want to inject custom logic or configuration
195// into the SDK's request lifecycle. Such as custom headers, or retry logic.
196//
197//
198//    // Example sending a request using the CancelReplicationTaskAssessmentRunRequest method.
199//    req, resp := client.CancelReplicationTaskAssessmentRunRequest(params)
200//
201//    err := req.Send()
202//    if err == nil { // resp is now filled
203//        fmt.Println(resp)
204//    }
205//
206// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/CancelReplicationTaskAssessmentRun
207func (c *DatabaseMigrationService) CancelReplicationTaskAssessmentRunRequest(input *CancelReplicationTaskAssessmentRunInput) (req *request.Request, output *CancelReplicationTaskAssessmentRunOutput) {
208	op := &request.Operation{
209		Name:       opCancelReplicationTaskAssessmentRun,
210		HTTPMethod: "POST",
211		HTTPPath:   "/",
212	}
213
214	if input == nil {
215		input = &CancelReplicationTaskAssessmentRunInput{}
216	}
217
218	output = &CancelReplicationTaskAssessmentRunOutput{}
219	req = c.newRequest(op, input, output)
220	return
221}
222
223// CancelReplicationTaskAssessmentRun API operation for AWS Database Migration Service.
224//
225// Cancels a single premigration assessment run.
226//
227// This operation prevents any individual assessments from running if they haven't
228// started running. It also attempts to cancel any individual assessments that
229// are currently running.
230//
231// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
232// with awserr.Error's Code and Message methods to get detailed information about
233// the error.
234//
235// See the AWS API reference guide for AWS Database Migration Service's
236// API operation CancelReplicationTaskAssessmentRun for usage and error information.
237//
238// Returned Error Types:
239//   * AccessDeniedFault
240//   AWS DMS was denied access to the endpoint. Check that the role is correctly
241//   configured.
242//
243//   * ResourceNotFoundFault
244//   The resource could not be found.
245//
246//   * InvalidResourceStateFault
247//   The resource is in a state that prevents it from being used for database
248//   migration.
249//
250// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/CancelReplicationTaskAssessmentRun
251func (c *DatabaseMigrationService) CancelReplicationTaskAssessmentRun(input *CancelReplicationTaskAssessmentRunInput) (*CancelReplicationTaskAssessmentRunOutput, error) {
252	req, out := c.CancelReplicationTaskAssessmentRunRequest(input)
253	return out, req.Send()
254}
255
256// CancelReplicationTaskAssessmentRunWithContext is the same as CancelReplicationTaskAssessmentRun with the addition of
257// the ability to pass a context and additional request options.
258//
259// See CancelReplicationTaskAssessmentRun for details on how to use this API operation.
260//
261// The context must be non-nil and will be used for request cancellation. If
262// the context is nil a panic will occur. In the future the SDK may create
263// sub-contexts for http.Requests. See https://golang.org/pkg/context/
264// for more information on using Contexts.
265func (c *DatabaseMigrationService) CancelReplicationTaskAssessmentRunWithContext(ctx aws.Context, input *CancelReplicationTaskAssessmentRunInput, opts ...request.Option) (*CancelReplicationTaskAssessmentRunOutput, error) {
266	req, out := c.CancelReplicationTaskAssessmentRunRequest(input)
267	req.SetContext(ctx)
268	req.ApplyOptions(opts...)
269	return out, req.Send()
270}
271
272const opCreateEndpoint = "CreateEndpoint"
273
274// CreateEndpointRequest generates a "aws/request.Request" representing the
275// client's request for the CreateEndpoint operation. The "output" return
276// value will be populated with the request's response once the request completes
277// successfully.
278//
279// Use "Send" method on the returned Request to send the API call to the service.
280// the "output" return value is not valid until after Send returns without error.
281//
282// See CreateEndpoint for more information on using the CreateEndpoint
283// API call, and error handling.
284//
285// This method is useful when you want to inject custom logic or configuration
286// into the SDK's request lifecycle. Such as custom headers, or retry logic.
287//
288//
289//    // Example sending a request using the CreateEndpointRequest method.
290//    req, resp := client.CreateEndpointRequest(params)
291//
292//    err := req.Send()
293//    if err == nil { // resp is now filled
294//        fmt.Println(resp)
295//    }
296//
297// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/CreateEndpoint
298func (c *DatabaseMigrationService) CreateEndpointRequest(input *CreateEndpointInput) (req *request.Request, output *CreateEndpointOutput) {
299	op := &request.Operation{
300		Name:       opCreateEndpoint,
301		HTTPMethod: "POST",
302		HTTPPath:   "/",
303	}
304
305	if input == nil {
306		input = &CreateEndpointInput{}
307	}
308
309	output = &CreateEndpointOutput{}
310	req = c.newRequest(op, input, output)
311	return
312}
313
314// CreateEndpoint API operation for AWS Database Migration Service.
315//
316// Creates an endpoint using the provided settings.
317//
318// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
319// with awserr.Error's Code and Message methods to get detailed information about
320// the error.
321//
322// See the AWS API reference guide for AWS Database Migration Service's
323// API operation CreateEndpoint for usage and error information.
324//
325// Returned Error Types:
326//   * KMSKeyNotAccessibleFault
327//   AWS DMS cannot access the AWS KMS key.
328//
329//   * ResourceAlreadyExistsFault
330//   The resource you are attempting to create already exists.
331//
332//   * ResourceQuotaExceededFault
333//   The quota for this resource quota has been exceeded.
334//
335//   * InvalidResourceStateFault
336//   The resource is in a state that prevents it from being used for database
337//   migration.
338//
339//   * ResourceNotFoundFault
340//   The resource could not be found.
341//
342//   * AccessDeniedFault
343//   AWS DMS was denied access to the endpoint. Check that the role is correctly
344//   configured.
345//
346//   * S3AccessDeniedFault
347//   Insufficient privileges are preventing access to an Amazon S3 object.
348//
349// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/CreateEndpoint
350func (c *DatabaseMigrationService) CreateEndpoint(input *CreateEndpointInput) (*CreateEndpointOutput, error) {
351	req, out := c.CreateEndpointRequest(input)
352	return out, req.Send()
353}
354
355// CreateEndpointWithContext is the same as CreateEndpoint with the addition of
356// the ability to pass a context and additional request options.
357//
358// See CreateEndpoint for details on how to use this API operation.
359//
360// The context must be non-nil and will be used for request cancellation. If
361// the context is nil a panic will occur. In the future the SDK may create
362// sub-contexts for http.Requests. See https://golang.org/pkg/context/
363// for more information on using Contexts.
364func (c *DatabaseMigrationService) CreateEndpointWithContext(ctx aws.Context, input *CreateEndpointInput, opts ...request.Option) (*CreateEndpointOutput, error) {
365	req, out := c.CreateEndpointRequest(input)
366	req.SetContext(ctx)
367	req.ApplyOptions(opts...)
368	return out, req.Send()
369}
370
371const opCreateEventSubscription = "CreateEventSubscription"
372
373// CreateEventSubscriptionRequest generates a "aws/request.Request" representing the
374// client's request for the CreateEventSubscription operation. The "output" return
375// value will be populated with the request's response once the request completes
376// successfully.
377//
378// Use "Send" method on the returned Request to send the API call to the service.
379// the "output" return value is not valid until after Send returns without error.
380//
381// See CreateEventSubscription for more information on using the CreateEventSubscription
382// API call, and error handling.
383//
384// This method is useful when you want to inject custom logic or configuration
385// into the SDK's request lifecycle. Such as custom headers, or retry logic.
386//
387//
388//    // Example sending a request using the CreateEventSubscriptionRequest method.
389//    req, resp := client.CreateEventSubscriptionRequest(params)
390//
391//    err := req.Send()
392//    if err == nil { // resp is now filled
393//        fmt.Println(resp)
394//    }
395//
396// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/CreateEventSubscription
397func (c *DatabaseMigrationService) CreateEventSubscriptionRequest(input *CreateEventSubscriptionInput) (req *request.Request, output *CreateEventSubscriptionOutput) {
398	op := &request.Operation{
399		Name:       opCreateEventSubscription,
400		HTTPMethod: "POST",
401		HTTPPath:   "/",
402	}
403
404	if input == nil {
405		input = &CreateEventSubscriptionInput{}
406	}
407
408	output = &CreateEventSubscriptionOutput{}
409	req = c.newRequest(op, input, output)
410	return
411}
412
413// CreateEventSubscription API operation for AWS Database Migration Service.
414//
415// Creates an AWS DMS event notification subscription.
416//
417// You can specify the type of source (SourceType) you want to be notified of,
418// provide a list of AWS DMS source IDs (SourceIds) that triggers the events,
419// and provide a list of event categories (EventCategories) for events you want
420// to be notified of. If you specify both the SourceType and SourceIds, such
421// as SourceType = replication-instance and SourceIdentifier = my-replinstance,
422// you will be notified of all the replication instance events for the specified
423// source. If you specify a SourceType but don't specify a SourceIdentifier,
424// you receive notice of the events for that source type for all your AWS DMS
425// sources. If you don't specify either SourceType nor SourceIdentifier, you
426// will be notified of events generated from all AWS DMS sources belonging to
427// your customer account.
428//
429// For more information about AWS DMS events, see Working with Events and Notifications
430// (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Events.html) in the
431// AWS Database Migration Service User Guide.
432//
433// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
434// with awserr.Error's Code and Message methods to get detailed information about
435// the error.
436//
437// See the AWS API reference guide for AWS Database Migration Service's
438// API operation CreateEventSubscription for usage and error information.
439//
440// Returned Error Types:
441//   * ResourceQuotaExceededFault
442//   The quota for this resource quota has been exceeded.
443//
444//   * ResourceNotFoundFault
445//   The resource could not be found.
446//
447//   * ResourceAlreadyExistsFault
448//   The resource you are attempting to create already exists.
449//
450//   * SNSInvalidTopicFault
451//   The SNS topic is invalid.
452//
453//   * SNSNoAuthorizationFault
454//   You are not authorized for the SNS subscription.
455//
456//   * KMSAccessDeniedFault
457//   The ciphertext references a key that doesn't exist or that the DMS account
458//   doesn't have access to.
459//
460//   * KMSDisabledFault
461//   The specified master key (CMK) isn't enabled.
462//
463//   * KMSInvalidStateFault
464//   The state of the specified AWS KMS resource isn't valid for this request.
465//
466//   * KMSNotFoundFault
467//   The specified AWS KMS entity or resource can't be found.
468//
469//   * KMSThrottlingFault
470//   This request triggered AWS KMS request throttling.
471//
472// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/CreateEventSubscription
473func (c *DatabaseMigrationService) CreateEventSubscription(input *CreateEventSubscriptionInput) (*CreateEventSubscriptionOutput, error) {
474	req, out := c.CreateEventSubscriptionRequest(input)
475	return out, req.Send()
476}
477
478// CreateEventSubscriptionWithContext is the same as CreateEventSubscription with the addition of
479// the ability to pass a context and additional request options.
480//
481// See CreateEventSubscription for details on how to use this API operation.
482//
483// The context must be non-nil and will be used for request cancellation. If
484// the context is nil a panic will occur. In the future the SDK may create
485// sub-contexts for http.Requests. See https://golang.org/pkg/context/
486// for more information on using Contexts.
487func (c *DatabaseMigrationService) CreateEventSubscriptionWithContext(ctx aws.Context, input *CreateEventSubscriptionInput, opts ...request.Option) (*CreateEventSubscriptionOutput, error) {
488	req, out := c.CreateEventSubscriptionRequest(input)
489	req.SetContext(ctx)
490	req.ApplyOptions(opts...)
491	return out, req.Send()
492}
493
494const opCreateReplicationInstance = "CreateReplicationInstance"
495
496// CreateReplicationInstanceRequest generates a "aws/request.Request" representing the
497// client's request for the CreateReplicationInstance operation. The "output" return
498// value will be populated with the request's response once the request completes
499// successfully.
500//
501// Use "Send" method on the returned Request to send the API call to the service.
502// the "output" return value is not valid until after Send returns without error.
503//
504// See CreateReplicationInstance for more information on using the CreateReplicationInstance
505// API call, and error handling.
506//
507// This method is useful when you want to inject custom logic or configuration
508// into the SDK's request lifecycle. Such as custom headers, or retry logic.
509//
510//
511//    // Example sending a request using the CreateReplicationInstanceRequest method.
512//    req, resp := client.CreateReplicationInstanceRequest(params)
513//
514//    err := req.Send()
515//    if err == nil { // resp is now filled
516//        fmt.Println(resp)
517//    }
518//
519// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/CreateReplicationInstance
520func (c *DatabaseMigrationService) CreateReplicationInstanceRequest(input *CreateReplicationInstanceInput) (req *request.Request, output *CreateReplicationInstanceOutput) {
521	op := &request.Operation{
522		Name:       opCreateReplicationInstance,
523		HTTPMethod: "POST",
524		HTTPPath:   "/",
525	}
526
527	if input == nil {
528		input = &CreateReplicationInstanceInput{}
529	}
530
531	output = &CreateReplicationInstanceOutput{}
532	req = c.newRequest(op, input, output)
533	return
534}
535
536// CreateReplicationInstance API operation for AWS Database Migration Service.
537//
538// Creates the replication instance using the specified parameters.
539//
540// AWS DMS requires that your account have certain roles with appropriate permissions
541// before you can create a replication instance. For information on the required
542// roles, see Creating the IAM Roles to Use With the AWS CLI and AWS DMS API
543// (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Security.html#CHAP_Security.APIRole).
544// For information on the required permissions, see IAM Permissions Needed to
545// Use AWS DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Security.html#CHAP_Security.IAMPermissions).
546//
547// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
548// with awserr.Error's Code and Message methods to get detailed information about
549// the error.
550//
551// See the AWS API reference guide for AWS Database Migration Service's
552// API operation CreateReplicationInstance for usage and error information.
553//
554// Returned Error Types:
555//   * AccessDeniedFault
556//   AWS DMS was denied access to the endpoint. Check that the role is correctly
557//   configured.
558//
559//   * ResourceAlreadyExistsFault
560//   The resource you are attempting to create already exists.
561//
562//   * InsufficientResourceCapacityFault
563//   There are not enough resources allocated to the database migration.
564//
565//   * ResourceQuotaExceededFault
566//   The quota for this resource quota has been exceeded.
567//
568//   * StorageQuotaExceededFault
569//   The storage quota has been exceeded.
570//
571//   * ResourceNotFoundFault
572//   The resource could not be found.
573//
574//   * ReplicationSubnetGroupDoesNotCoverEnoughAZs
575//   The replication subnet group does not cover enough Availability Zones (AZs).
576//   Edit the replication subnet group and add more AZs.
577//
578//   * InvalidResourceStateFault
579//   The resource is in a state that prevents it from being used for database
580//   migration.
581//
582//   * InvalidSubnet
583//   The subnet provided is invalid.
584//
585//   * KMSKeyNotAccessibleFault
586//   AWS DMS cannot access the AWS KMS key.
587//
588// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/CreateReplicationInstance
589func (c *DatabaseMigrationService) CreateReplicationInstance(input *CreateReplicationInstanceInput) (*CreateReplicationInstanceOutput, error) {
590	req, out := c.CreateReplicationInstanceRequest(input)
591	return out, req.Send()
592}
593
594// CreateReplicationInstanceWithContext is the same as CreateReplicationInstance with the addition of
595// the ability to pass a context and additional request options.
596//
597// See CreateReplicationInstance for details on how to use this API operation.
598//
599// The context must be non-nil and will be used for request cancellation. If
600// the context is nil a panic will occur. In the future the SDK may create
601// sub-contexts for http.Requests. See https://golang.org/pkg/context/
602// for more information on using Contexts.
603func (c *DatabaseMigrationService) CreateReplicationInstanceWithContext(ctx aws.Context, input *CreateReplicationInstanceInput, opts ...request.Option) (*CreateReplicationInstanceOutput, error) {
604	req, out := c.CreateReplicationInstanceRequest(input)
605	req.SetContext(ctx)
606	req.ApplyOptions(opts...)
607	return out, req.Send()
608}
609
610const opCreateReplicationSubnetGroup = "CreateReplicationSubnetGroup"
611
612// CreateReplicationSubnetGroupRequest generates a "aws/request.Request" representing the
613// client's request for the CreateReplicationSubnetGroup operation. The "output" return
614// value will be populated with the request's response once the request completes
615// successfully.
616//
617// Use "Send" method on the returned Request to send the API call to the service.
618// the "output" return value is not valid until after Send returns without error.
619//
620// See CreateReplicationSubnetGroup for more information on using the CreateReplicationSubnetGroup
621// API call, and error handling.
622//
623// This method is useful when you want to inject custom logic or configuration
624// into the SDK's request lifecycle. Such as custom headers, or retry logic.
625//
626//
627//    // Example sending a request using the CreateReplicationSubnetGroupRequest method.
628//    req, resp := client.CreateReplicationSubnetGroupRequest(params)
629//
630//    err := req.Send()
631//    if err == nil { // resp is now filled
632//        fmt.Println(resp)
633//    }
634//
635// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/CreateReplicationSubnetGroup
636func (c *DatabaseMigrationService) CreateReplicationSubnetGroupRequest(input *CreateReplicationSubnetGroupInput) (req *request.Request, output *CreateReplicationSubnetGroupOutput) {
637	op := &request.Operation{
638		Name:       opCreateReplicationSubnetGroup,
639		HTTPMethod: "POST",
640		HTTPPath:   "/",
641	}
642
643	if input == nil {
644		input = &CreateReplicationSubnetGroupInput{}
645	}
646
647	output = &CreateReplicationSubnetGroupOutput{}
648	req = c.newRequest(op, input, output)
649	return
650}
651
652// CreateReplicationSubnetGroup API operation for AWS Database Migration Service.
653//
654// Creates a replication subnet group given a list of the subnet IDs in a VPC.
655//
656// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
657// with awserr.Error's Code and Message methods to get detailed information about
658// the error.
659//
660// See the AWS API reference guide for AWS Database Migration Service's
661// API operation CreateReplicationSubnetGroup for usage and error information.
662//
663// Returned Error Types:
664//   * AccessDeniedFault
665//   AWS DMS was denied access to the endpoint. Check that the role is correctly
666//   configured.
667//
668//   * ResourceAlreadyExistsFault
669//   The resource you are attempting to create already exists.
670//
671//   * ResourceNotFoundFault
672//   The resource could not be found.
673//
674//   * ResourceQuotaExceededFault
675//   The quota for this resource quota has been exceeded.
676//
677//   * ReplicationSubnetGroupDoesNotCoverEnoughAZs
678//   The replication subnet group does not cover enough Availability Zones (AZs).
679//   Edit the replication subnet group and add more AZs.
680//
681//   * InvalidSubnet
682//   The subnet provided is invalid.
683//
684// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/CreateReplicationSubnetGroup
685func (c *DatabaseMigrationService) CreateReplicationSubnetGroup(input *CreateReplicationSubnetGroupInput) (*CreateReplicationSubnetGroupOutput, error) {
686	req, out := c.CreateReplicationSubnetGroupRequest(input)
687	return out, req.Send()
688}
689
690// CreateReplicationSubnetGroupWithContext is the same as CreateReplicationSubnetGroup with the addition of
691// the ability to pass a context and additional request options.
692//
693// See CreateReplicationSubnetGroup for details on how to use this API operation.
694//
695// The context must be non-nil and will be used for request cancellation. If
696// the context is nil a panic will occur. In the future the SDK may create
697// sub-contexts for http.Requests. See https://golang.org/pkg/context/
698// for more information on using Contexts.
699func (c *DatabaseMigrationService) CreateReplicationSubnetGroupWithContext(ctx aws.Context, input *CreateReplicationSubnetGroupInput, opts ...request.Option) (*CreateReplicationSubnetGroupOutput, error) {
700	req, out := c.CreateReplicationSubnetGroupRequest(input)
701	req.SetContext(ctx)
702	req.ApplyOptions(opts...)
703	return out, req.Send()
704}
705
706const opCreateReplicationTask = "CreateReplicationTask"
707
708// CreateReplicationTaskRequest generates a "aws/request.Request" representing the
709// client's request for the CreateReplicationTask operation. The "output" return
710// value will be populated with the request's response once the request completes
711// successfully.
712//
713// Use "Send" method on the returned Request to send the API call to the service.
714// the "output" return value is not valid until after Send returns without error.
715//
716// See CreateReplicationTask for more information on using the CreateReplicationTask
717// API call, and error handling.
718//
719// This method is useful when you want to inject custom logic or configuration
720// into the SDK's request lifecycle. Such as custom headers, or retry logic.
721//
722//
723//    // Example sending a request using the CreateReplicationTaskRequest method.
724//    req, resp := client.CreateReplicationTaskRequest(params)
725//
726//    err := req.Send()
727//    if err == nil { // resp is now filled
728//        fmt.Println(resp)
729//    }
730//
731// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/CreateReplicationTask
732func (c *DatabaseMigrationService) CreateReplicationTaskRequest(input *CreateReplicationTaskInput) (req *request.Request, output *CreateReplicationTaskOutput) {
733	op := &request.Operation{
734		Name:       opCreateReplicationTask,
735		HTTPMethod: "POST",
736		HTTPPath:   "/",
737	}
738
739	if input == nil {
740		input = &CreateReplicationTaskInput{}
741	}
742
743	output = &CreateReplicationTaskOutput{}
744	req = c.newRequest(op, input, output)
745	return
746}
747
748// CreateReplicationTask API operation for AWS Database Migration Service.
749//
750// Creates a replication task using the specified parameters.
751//
752// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
753// with awserr.Error's Code and Message methods to get detailed information about
754// the error.
755//
756// See the AWS API reference guide for AWS Database Migration Service's
757// API operation CreateReplicationTask for usage and error information.
758//
759// Returned Error Types:
760//   * AccessDeniedFault
761//   AWS DMS was denied access to the endpoint. Check that the role is correctly
762//   configured.
763//
764//   * InvalidResourceStateFault
765//   The resource is in a state that prevents it from being used for database
766//   migration.
767//
768//   * ResourceAlreadyExistsFault
769//   The resource you are attempting to create already exists.
770//
771//   * ResourceNotFoundFault
772//   The resource could not be found.
773//
774//   * KMSKeyNotAccessibleFault
775//   AWS DMS cannot access the AWS KMS key.
776//
777//   * ResourceQuotaExceededFault
778//   The quota for this resource quota has been exceeded.
779//
780// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/CreateReplicationTask
781func (c *DatabaseMigrationService) CreateReplicationTask(input *CreateReplicationTaskInput) (*CreateReplicationTaskOutput, error) {
782	req, out := c.CreateReplicationTaskRequest(input)
783	return out, req.Send()
784}
785
786// CreateReplicationTaskWithContext is the same as CreateReplicationTask with the addition of
787// the ability to pass a context and additional request options.
788//
789// See CreateReplicationTask for details on how to use this API operation.
790//
791// The context must be non-nil and will be used for request cancellation. If
792// the context is nil a panic will occur. In the future the SDK may create
793// sub-contexts for http.Requests. See https://golang.org/pkg/context/
794// for more information on using Contexts.
795func (c *DatabaseMigrationService) CreateReplicationTaskWithContext(ctx aws.Context, input *CreateReplicationTaskInput, opts ...request.Option) (*CreateReplicationTaskOutput, error) {
796	req, out := c.CreateReplicationTaskRequest(input)
797	req.SetContext(ctx)
798	req.ApplyOptions(opts...)
799	return out, req.Send()
800}
801
802const opDeleteCertificate = "DeleteCertificate"
803
804// DeleteCertificateRequest generates a "aws/request.Request" representing the
805// client's request for the DeleteCertificate operation. The "output" return
806// value will be populated with the request's response once the request completes
807// successfully.
808//
809// Use "Send" method on the returned Request to send the API call to the service.
810// the "output" return value is not valid until after Send returns without error.
811//
812// See DeleteCertificate for more information on using the DeleteCertificate
813// API call, and error handling.
814//
815// This method is useful when you want to inject custom logic or configuration
816// into the SDK's request lifecycle. Such as custom headers, or retry logic.
817//
818//
819//    // Example sending a request using the DeleteCertificateRequest method.
820//    req, resp := client.DeleteCertificateRequest(params)
821//
822//    err := req.Send()
823//    if err == nil { // resp is now filled
824//        fmt.Println(resp)
825//    }
826//
827// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DeleteCertificate
828func (c *DatabaseMigrationService) DeleteCertificateRequest(input *DeleteCertificateInput) (req *request.Request, output *DeleteCertificateOutput) {
829	op := &request.Operation{
830		Name:       opDeleteCertificate,
831		HTTPMethod: "POST",
832		HTTPPath:   "/",
833	}
834
835	if input == nil {
836		input = &DeleteCertificateInput{}
837	}
838
839	output = &DeleteCertificateOutput{}
840	req = c.newRequest(op, input, output)
841	return
842}
843
844// DeleteCertificate API operation for AWS Database Migration Service.
845//
846// Deletes the specified certificate.
847//
848// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
849// with awserr.Error's Code and Message methods to get detailed information about
850// the error.
851//
852// See the AWS API reference guide for AWS Database Migration Service's
853// API operation DeleteCertificate for usage and error information.
854//
855// Returned Error Types:
856//   * ResourceNotFoundFault
857//   The resource could not be found.
858//
859//   * InvalidResourceStateFault
860//   The resource is in a state that prevents it from being used for database
861//   migration.
862//
863// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DeleteCertificate
864func (c *DatabaseMigrationService) DeleteCertificate(input *DeleteCertificateInput) (*DeleteCertificateOutput, error) {
865	req, out := c.DeleteCertificateRequest(input)
866	return out, req.Send()
867}
868
869// DeleteCertificateWithContext is the same as DeleteCertificate with the addition of
870// the ability to pass a context and additional request options.
871//
872// See DeleteCertificate for details on how to use this API operation.
873//
874// The context must be non-nil and will be used for request cancellation. If
875// the context is nil a panic will occur. In the future the SDK may create
876// sub-contexts for http.Requests. See https://golang.org/pkg/context/
877// for more information on using Contexts.
878func (c *DatabaseMigrationService) DeleteCertificateWithContext(ctx aws.Context, input *DeleteCertificateInput, opts ...request.Option) (*DeleteCertificateOutput, error) {
879	req, out := c.DeleteCertificateRequest(input)
880	req.SetContext(ctx)
881	req.ApplyOptions(opts...)
882	return out, req.Send()
883}
884
885const opDeleteConnection = "DeleteConnection"
886
887// DeleteConnectionRequest generates a "aws/request.Request" representing the
888// client's request for the DeleteConnection operation. The "output" return
889// value will be populated with the request's response once the request completes
890// successfully.
891//
892// Use "Send" method on the returned Request to send the API call to the service.
893// the "output" return value is not valid until after Send returns without error.
894//
895// See DeleteConnection for more information on using the DeleteConnection
896// API call, and error handling.
897//
898// This method is useful when you want to inject custom logic or configuration
899// into the SDK's request lifecycle. Such as custom headers, or retry logic.
900//
901//
902//    // Example sending a request using the DeleteConnectionRequest method.
903//    req, resp := client.DeleteConnectionRequest(params)
904//
905//    err := req.Send()
906//    if err == nil { // resp is now filled
907//        fmt.Println(resp)
908//    }
909//
910// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DeleteConnection
911func (c *DatabaseMigrationService) DeleteConnectionRequest(input *DeleteConnectionInput) (req *request.Request, output *DeleteConnectionOutput) {
912	op := &request.Operation{
913		Name:       opDeleteConnection,
914		HTTPMethod: "POST",
915		HTTPPath:   "/",
916	}
917
918	if input == nil {
919		input = &DeleteConnectionInput{}
920	}
921
922	output = &DeleteConnectionOutput{}
923	req = c.newRequest(op, input, output)
924	return
925}
926
927// DeleteConnection API operation for AWS Database Migration Service.
928//
929// Deletes the connection between a replication instance and an endpoint.
930//
931// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
932// with awserr.Error's Code and Message methods to get detailed information about
933// the error.
934//
935// See the AWS API reference guide for AWS Database Migration Service's
936// API operation DeleteConnection for usage and error information.
937//
938// Returned Error Types:
939//   * AccessDeniedFault
940//   AWS DMS was denied access to the endpoint. Check that the role is correctly
941//   configured.
942//
943//   * ResourceNotFoundFault
944//   The resource could not be found.
945//
946//   * InvalidResourceStateFault
947//   The resource is in a state that prevents it from being used for database
948//   migration.
949//
950// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DeleteConnection
951func (c *DatabaseMigrationService) DeleteConnection(input *DeleteConnectionInput) (*DeleteConnectionOutput, error) {
952	req, out := c.DeleteConnectionRequest(input)
953	return out, req.Send()
954}
955
956// DeleteConnectionWithContext is the same as DeleteConnection with the addition of
957// the ability to pass a context and additional request options.
958//
959// See DeleteConnection for details on how to use this API operation.
960//
961// The context must be non-nil and will be used for request cancellation. If
962// the context is nil a panic will occur. In the future the SDK may create
963// sub-contexts for http.Requests. See https://golang.org/pkg/context/
964// for more information on using Contexts.
965func (c *DatabaseMigrationService) DeleteConnectionWithContext(ctx aws.Context, input *DeleteConnectionInput, opts ...request.Option) (*DeleteConnectionOutput, error) {
966	req, out := c.DeleteConnectionRequest(input)
967	req.SetContext(ctx)
968	req.ApplyOptions(opts...)
969	return out, req.Send()
970}
971
972const opDeleteEndpoint = "DeleteEndpoint"
973
974// DeleteEndpointRequest generates a "aws/request.Request" representing the
975// client's request for the DeleteEndpoint operation. The "output" return
976// value will be populated with the request's response once the request completes
977// successfully.
978//
979// Use "Send" method on the returned Request to send the API call to the service.
980// the "output" return value is not valid until after Send returns without error.
981//
982// See DeleteEndpoint for more information on using the DeleteEndpoint
983// API call, and error handling.
984//
985// This method is useful when you want to inject custom logic or configuration
986// into the SDK's request lifecycle. Such as custom headers, or retry logic.
987//
988//
989//    // Example sending a request using the DeleteEndpointRequest method.
990//    req, resp := client.DeleteEndpointRequest(params)
991//
992//    err := req.Send()
993//    if err == nil { // resp is now filled
994//        fmt.Println(resp)
995//    }
996//
997// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DeleteEndpoint
998func (c *DatabaseMigrationService) DeleteEndpointRequest(input *DeleteEndpointInput) (req *request.Request, output *DeleteEndpointOutput) {
999	op := &request.Operation{
1000		Name:       opDeleteEndpoint,
1001		HTTPMethod: "POST",
1002		HTTPPath:   "/",
1003	}
1004
1005	if input == nil {
1006		input = &DeleteEndpointInput{}
1007	}
1008
1009	output = &DeleteEndpointOutput{}
1010	req = c.newRequest(op, input, output)
1011	return
1012}
1013
1014// DeleteEndpoint API operation for AWS Database Migration Service.
1015//
1016// Deletes the specified endpoint.
1017//
1018// All tasks associated with the endpoint must be deleted before you can delete
1019// the endpoint.
1020//
1021// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1022// with awserr.Error's Code and Message methods to get detailed information about
1023// the error.
1024//
1025// See the AWS API reference guide for AWS Database Migration Service's
1026// API operation DeleteEndpoint for usage and error information.
1027//
1028// Returned Error Types:
1029//   * ResourceNotFoundFault
1030//   The resource could not be found.
1031//
1032//   * InvalidResourceStateFault
1033//   The resource is in a state that prevents it from being used for database
1034//   migration.
1035//
1036// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DeleteEndpoint
1037func (c *DatabaseMigrationService) DeleteEndpoint(input *DeleteEndpointInput) (*DeleteEndpointOutput, error) {
1038	req, out := c.DeleteEndpointRequest(input)
1039	return out, req.Send()
1040}
1041
1042// DeleteEndpointWithContext is the same as DeleteEndpoint with the addition of
1043// the ability to pass a context and additional request options.
1044//
1045// See DeleteEndpoint for details on how to use this API operation.
1046//
1047// The context must be non-nil and will be used for request cancellation. If
1048// the context is nil a panic will occur. In the future the SDK may create
1049// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1050// for more information on using Contexts.
1051func (c *DatabaseMigrationService) DeleteEndpointWithContext(ctx aws.Context, input *DeleteEndpointInput, opts ...request.Option) (*DeleteEndpointOutput, error) {
1052	req, out := c.DeleteEndpointRequest(input)
1053	req.SetContext(ctx)
1054	req.ApplyOptions(opts...)
1055	return out, req.Send()
1056}
1057
1058const opDeleteEventSubscription = "DeleteEventSubscription"
1059
1060// DeleteEventSubscriptionRequest generates a "aws/request.Request" representing the
1061// client's request for the DeleteEventSubscription operation. The "output" return
1062// value will be populated with the request's response once the request completes
1063// successfully.
1064//
1065// Use "Send" method on the returned Request to send the API call to the service.
1066// the "output" return value is not valid until after Send returns without error.
1067//
1068// See DeleteEventSubscription for more information on using the DeleteEventSubscription
1069// API call, and error handling.
1070//
1071// This method is useful when you want to inject custom logic or configuration
1072// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1073//
1074//
1075//    // Example sending a request using the DeleteEventSubscriptionRequest method.
1076//    req, resp := client.DeleteEventSubscriptionRequest(params)
1077//
1078//    err := req.Send()
1079//    if err == nil { // resp is now filled
1080//        fmt.Println(resp)
1081//    }
1082//
1083// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DeleteEventSubscription
1084func (c *DatabaseMigrationService) DeleteEventSubscriptionRequest(input *DeleteEventSubscriptionInput) (req *request.Request, output *DeleteEventSubscriptionOutput) {
1085	op := &request.Operation{
1086		Name:       opDeleteEventSubscription,
1087		HTTPMethod: "POST",
1088		HTTPPath:   "/",
1089	}
1090
1091	if input == nil {
1092		input = &DeleteEventSubscriptionInput{}
1093	}
1094
1095	output = &DeleteEventSubscriptionOutput{}
1096	req = c.newRequest(op, input, output)
1097	return
1098}
1099
1100// DeleteEventSubscription API operation for AWS Database Migration Service.
1101//
1102// Deletes an AWS DMS event subscription.
1103//
1104// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1105// with awserr.Error's Code and Message methods to get detailed information about
1106// the error.
1107//
1108// See the AWS API reference guide for AWS Database Migration Service's
1109// API operation DeleteEventSubscription for usage and error information.
1110//
1111// Returned Error Types:
1112//   * ResourceNotFoundFault
1113//   The resource could not be found.
1114//
1115//   * InvalidResourceStateFault
1116//   The resource is in a state that prevents it from being used for database
1117//   migration.
1118//
1119// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DeleteEventSubscription
1120func (c *DatabaseMigrationService) DeleteEventSubscription(input *DeleteEventSubscriptionInput) (*DeleteEventSubscriptionOutput, error) {
1121	req, out := c.DeleteEventSubscriptionRequest(input)
1122	return out, req.Send()
1123}
1124
1125// DeleteEventSubscriptionWithContext is the same as DeleteEventSubscription with the addition of
1126// the ability to pass a context and additional request options.
1127//
1128// See DeleteEventSubscription for details on how to use this API operation.
1129//
1130// The context must be non-nil and will be used for request cancellation. If
1131// the context is nil a panic will occur. In the future the SDK may create
1132// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1133// for more information on using Contexts.
1134func (c *DatabaseMigrationService) DeleteEventSubscriptionWithContext(ctx aws.Context, input *DeleteEventSubscriptionInput, opts ...request.Option) (*DeleteEventSubscriptionOutput, error) {
1135	req, out := c.DeleteEventSubscriptionRequest(input)
1136	req.SetContext(ctx)
1137	req.ApplyOptions(opts...)
1138	return out, req.Send()
1139}
1140
1141const opDeleteReplicationInstance = "DeleteReplicationInstance"
1142
1143// DeleteReplicationInstanceRequest generates a "aws/request.Request" representing the
1144// client's request for the DeleteReplicationInstance operation. The "output" return
1145// value will be populated with the request's response once the request completes
1146// successfully.
1147//
1148// Use "Send" method on the returned Request to send the API call to the service.
1149// the "output" return value is not valid until after Send returns without error.
1150//
1151// See DeleteReplicationInstance for more information on using the DeleteReplicationInstance
1152// API call, and error handling.
1153//
1154// This method is useful when you want to inject custom logic or configuration
1155// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1156//
1157//
1158//    // Example sending a request using the DeleteReplicationInstanceRequest method.
1159//    req, resp := client.DeleteReplicationInstanceRequest(params)
1160//
1161//    err := req.Send()
1162//    if err == nil { // resp is now filled
1163//        fmt.Println(resp)
1164//    }
1165//
1166// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DeleteReplicationInstance
1167func (c *DatabaseMigrationService) DeleteReplicationInstanceRequest(input *DeleteReplicationInstanceInput) (req *request.Request, output *DeleteReplicationInstanceOutput) {
1168	op := &request.Operation{
1169		Name:       opDeleteReplicationInstance,
1170		HTTPMethod: "POST",
1171		HTTPPath:   "/",
1172	}
1173
1174	if input == nil {
1175		input = &DeleteReplicationInstanceInput{}
1176	}
1177
1178	output = &DeleteReplicationInstanceOutput{}
1179	req = c.newRequest(op, input, output)
1180	return
1181}
1182
1183// DeleteReplicationInstance API operation for AWS Database Migration Service.
1184//
1185// Deletes the specified replication instance.
1186//
1187// You must delete any migration tasks that are associated with the replication
1188// instance before you can delete it.
1189//
1190// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1191// with awserr.Error's Code and Message methods to get detailed information about
1192// the error.
1193//
1194// See the AWS API reference guide for AWS Database Migration Service's
1195// API operation DeleteReplicationInstance for usage and error information.
1196//
1197// Returned Error Types:
1198//   * InvalidResourceStateFault
1199//   The resource is in a state that prevents it from being used for database
1200//   migration.
1201//
1202//   * ResourceNotFoundFault
1203//   The resource could not be found.
1204//
1205// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DeleteReplicationInstance
1206func (c *DatabaseMigrationService) DeleteReplicationInstance(input *DeleteReplicationInstanceInput) (*DeleteReplicationInstanceOutput, error) {
1207	req, out := c.DeleteReplicationInstanceRequest(input)
1208	return out, req.Send()
1209}
1210
1211// DeleteReplicationInstanceWithContext is the same as DeleteReplicationInstance with the addition of
1212// the ability to pass a context and additional request options.
1213//
1214// See DeleteReplicationInstance for details on how to use this API operation.
1215//
1216// The context must be non-nil and will be used for request cancellation. If
1217// the context is nil a panic will occur. In the future the SDK may create
1218// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1219// for more information on using Contexts.
1220func (c *DatabaseMigrationService) DeleteReplicationInstanceWithContext(ctx aws.Context, input *DeleteReplicationInstanceInput, opts ...request.Option) (*DeleteReplicationInstanceOutput, error) {
1221	req, out := c.DeleteReplicationInstanceRequest(input)
1222	req.SetContext(ctx)
1223	req.ApplyOptions(opts...)
1224	return out, req.Send()
1225}
1226
1227const opDeleteReplicationSubnetGroup = "DeleteReplicationSubnetGroup"
1228
1229// DeleteReplicationSubnetGroupRequest generates a "aws/request.Request" representing the
1230// client's request for the DeleteReplicationSubnetGroup operation. The "output" return
1231// value will be populated with the request's response once the request completes
1232// successfully.
1233//
1234// Use "Send" method on the returned Request to send the API call to the service.
1235// the "output" return value is not valid until after Send returns without error.
1236//
1237// See DeleteReplicationSubnetGroup for more information on using the DeleteReplicationSubnetGroup
1238// API call, and error handling.
1239//
1240// This method is useful when you want to inject custom logic or configuration
1241// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1242//
1243//
1244//    // Example sending a request using the DeleteReplicationSubnetGroupRequest method.
1245//    req, resp := client.DeleteReplicationSubnetGroupRequest(params)
1246//
1247//    err := req.Send()
1248//    if err == nil { // resp is now filled
1249//        fmt.Println(resp)
1250//    }
1251//
1252// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DeleteReplicationSubnetGroup
1253func (c *DatabaseMigrationService) DeleteReplicationSubnetGroupRequest(input *DeleteReplicationSubnetGroupInput) (req *request.Request, output *DeleteReplicationSubnetGroupOutput) {
1254	op := &request.Operation{
1255		Name:       opDeleteReplicationSubnetGroup,
1256		HTTPMethod: "POST",
1257		HTTPPath:   "/",
1258	}
1259
1260	if input == nil {
1261		input = &DeleteReplicationSubnetGroupInput{}
1262	}
1263
1264	output = &DeleteReplicationSubnetGroupOutput{}
1265	req = c.newRequest(op, input, output)
1266	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1267	return
1268}
1269
1270// DeleteReplicationSubnetGroup API operation for AWS Database Migration Service.
1271//
1272// Deletes a subnet group.
1273//
1274// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1275// with awserr.Error's Code and Message methods to get detailed information about
1276// the error.
1277//
1278// See the AWS API reference guide for AWS Database Migration Service's
1279// API operation DeleteReplicationSubnetGroup for usage and error information.
1280//
1281// Returned Error Types:
1282//   * InvalidResourceStateFault
1283//   The resource is in a state that prevents it from being used for database
1284//   migration.
1285//
1286//   * ResourceNotFoundFault
1287//   The resource could not be found.
1288//
1289// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DeleteReplicationSubnetGroup
1290func (c *DatabaseMigrationService) DeleteReplicationSubnetGroup(input *DeleteReplicationSubnetGroupInput) (*DeleteReplicationSubnetGroupOutput, error) {
1291	req, out := c.DeleteReplicationSubnetGroupRequest(input)
1292	return out, req.Send()
1293}
1294
1295// DeleteReplicationSubnetGroupWithContext is the same as DeleteReplicationSubnetGroup with the addition of
1296// the ability to pass a context and additional request options.
1297//
1298// See DeleteReplicationSubnetGroup for details on how to use this API operation.
1299//
1300// The context must be non-nil and will be used for request cancellation. If
1301// the context is nil a panic will occur. In the future the SDK may create
1302// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1303// for more information on using Contexts.
1304func (c *DatabaseMigrationService) DeleteReplicationSubnetGroupWithContext(ctx aws.Context, input *DeleteReplicationSubnetGroupInput, opts ...request.Option) (*DeleteReplicationSubnetGroupOutput, error) {
1305	req, out := c.DeleteReplicationSubnetGroupRequest(input)
1306	req.SetContext(ctx)
1307	req.ApplyOptions(opts...)
1308	return out, req.Send()
1309}
1310
1311const opDeleteReplicationTask = "DeleteReplicationTask"
1312
1313// DeleteReplicationTaskRequest generates a "aws/request.Request" representing the
1314// client's request for the DeleteReplicationTask operation. The "output" return
1315// value will be populated with the request's response once the request completes
1316// successfully.
1317//
1318// Use "Send" method on the returned Request to send the API call to the service.
1319// the "output" return value is not valid until after Send returns without error.
1320//
1321// See DeleteReplicationTask for more information on using the DeleteReplicationTask
1322// API call, and error handling.
1323//
1324// This method is useful when you want to inject custom logic or configuration
1325// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1326//
1327//
1328//    // Example sending a request using the DeleteReplicationTaskRequest method.
1329//    req, resp := client.DeleteReplicationTaskRequest(params)
1330//
1331//    err := req.Send()
1332//    if err == nil { // resp is now filled
1333//        fmt.Println(resp)
1334//    }
1335//
1336// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DeleteReplicationTask
1337func (c *DatabaseMigrationService) DeleteReplicationTaskRequest(input *DeleteReplicationTaskInput) (req *request.Request, output *DeleteReplicationTaskOutput) {
1338	op := &request.Operation{
1339		Name:       opDeleteReplicationTask,
1340		HTTPMethod: "POST",
1341		HTTPPath:   "/",
1342	}
1343
1344	if input == nil {
1345		input = &DeleteReplicationTaskInput{}
1346	}
1347
1348	output = &DeleteReplicationTaskOutput{}
1349	req = c.newRequest(op, input, output)
1350	return
1351}
1352
1353// DeleteReplicationTask API operation for AWS Database Migration Service.
1354//
1355// Deletes the specified replication task.
1356//
1357// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1358// with awserr.Error's Code and Message methods to get detailed information about
1359// the error.
1360//
1361// See the AWS API reference guide for AWS Database Migration Service's
1362// API operation DeleteReplicationTask for usage and error information.
1363//
1364// Returned Error Types:
1365//   * ResourceNotFoundFault
1366//   The resource could not be found.
1367//
1368//   * InvalidResourceStateFault
1369//   The resource is in a state that prevents it from being used for database
1370//   migration.
1371//
1372// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DeleteReplicationTask
1373func (c *DatabaseMigrationService) DeleteReplicationTask(input *DeleteReplicationTaskInput) (*DeleteReplicationTaskOutput, error) {
1374	req, out := c.DeleteReplicationTaskRequest(input)
1375	return out, req.Send()
1376}
1377
1378// DeleteReplicationTaskWithContext is the same as DeleteReplicationTask with the addition of
1379// the ability to pass a context and additional request options.
1380//
1381// See DeleteReplicationTask for details on how to use this API operation.
1382//
1383// The context must be non-nil and will be used for request cancellation. If
1384// the context is nil a panic will occur. In the future the SDK may create
1385// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1386// for more information on using Contexts.
1387func (c *DatabaseMigrationService) DeleteReplicationTaskWithContext(ctx aws.Context, input *DeleteReplicationTaskInput, opts ...request.Option) (*DeleteReplicationTaskOutput, error) {
1388	req, out := c.DeleteReplicationTaskRequest(input)
1389	req.SetContext(ctx)
1390	req.ApplyOptions(opts...)
1391	return out, req.Send()
1392}
1393
1394const opDeleteReplicationTaskAssessmentRun = "DeleteReplicationTaskAssessmentRun"
1395
1396// DeleteReplicationTaskAssessmentRunRequest generates a "aws/request.Request" representing the
1397// client's request for the DeleteReplicationTaskAssessmentRun operation. The "output" return
1398// value will be populated with the request's response once the request completes
1399// successfully.
1400//
1401// Use "Send" method on the returned Request to send the API call to the service.
1402// the "output" return value is not valid until after Send returns without error.
1403//
1404// See DeleteReplicationTaskAssessmentRun for more information on using the DeleteReplicationTaskAssessmentRun
1405// API call, and error handling.
1406//
1407// This method is useful when you want to inject custom logic or configuration
1408// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1409//
1410//
1411//    // Example sending a request using the DeleteReplicationTaskAssessmentRunRequest method.
1412//    req, resp := client.DeleteReplicationTaskAssessmentRunRequest(params)
1413//
1414//    err := req.Send()
1415//    if err == nil { // resp is now filled
1416//        fmt.Println(resp)
1417//    }
1418//
1419// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DeleteReplicationTaskAssessmentRun
1420func (c *DatabaseMigrationService) DeleteReplicationTaskAssessmentRunRequest(input *DeleteReplicationTaskAssessmentRunInput) (req *request.Request, output *DeleteReplicationTaskAssessmentRunOutput) {
1421	op := &request.Operation{
1422		Name:       opDeleteReplicationTaskAssessmentRun,
1423		HTTPMethod: "POST",
1424		HTTPPath:   "/",
1425	}
1426
1427	if input == nil {
1428		input = &DeleteReplicationTaskAssessmentRunInput{}
1429	}
1430
1431	output = &DeleteReplicationTaskAssessmentRunOutput{}
1432	req = c.newRequest(op, input, output)
1433	return
1434}
1435
1436// DeleteReplicationTaskAssessmentRun API operation for AWS Database Migration Service.
1437//
1438// Deletes the record of a single premigration assessment run.
1439//
1440// This operation removes all metadata that AWS DMS maintains about this assessment
1441// run. However, the operation leaves untouched all information about this assessment
1442// run that is stored in your Amazon S3 bucket.
1443//
1444// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1445// with awserr.Error's Code and Message methods to get detailed information about
1446// the error.
1447//
1448// See the AWS API reference guide for AWS Database Migration Service's
1449// API operation DeleteReplicationTaskAssessmentRun for usage and error information.
1450//
1451// Returned Error Types:
1452//   * AccessDeniedFault
1453//   AWS DMS was denied access to the endpoint. Check that the role is correctly
1454//   configured.
1455//
1456//   * ResourceNotFoundFault
1457//   The resource could not be found.
1458//
1459//   * InvalidResourceStateFault
1460//   The resource is in a state that prevents it from being used for database
1461//   migration.
1462//
1463// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DeleteReplicationTaskAssessmentRun
1464func (c *DatabaseMigrationService) DeleteReplicationTaskAssessmentRun(input *DeleteReplicationTaskAssessmentRunInput) (*DeleteReplicationTaskAssessmentRunOutput, error) {
1465	req, out := c.DeleteReplicationTaskAssessmentRunRequest(input)
1466	return out, req.Send()
1467}
1468
1469// DeleteReplicationTaskAssessmentRunWithContext is the same as DeleteReplicationTaskAssessmentRun with the addition of
1470// the ability to pass a context and additional request options.
1471//
1472// See DeleteReplicationTaskAssessmentRun for details on how to use this API operation.
1473//
1474// The context must be non-nil and will be used for request cancellation. If
1475// the context is nil a panic will occur. In the future the SDK may create
1476// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1477// for more information on using Contexts.
1478func (c *DatabaseMigrationService) DeleteReplicationTaskAssessmentRunWithContext(ctx aws.Context, input *DeleteReplicationTaskAssessmentRunInput, opts ...request.Option) (*DeleteReplicationTaskAssessmentRunOutput, error) {
1479	req, out := c.DeleteReplicationTaskAssessmentRunRequest(input)
1480	req.SetContext(ctx)
1481	req.ApplyOptions(opts...)
1482	return out, req.Send()
1483}
1484
1485const opDescribeAccountAttributes = "DescribeAccountAttributes"
1486
1487// DescribeAccountAttributesRequest generates a "aws/request.Request" representing the
1488// client's request for the DescribeAccountAttributes operation. The "output" return
1489// value will be populated with the request's response once the request completes
1490// successfully.
1491//
1492// Use "Send" method on the returned Request to send the API call to the service.
1493// the "output" return value is not valid until after Send returns without error.
1494//
1495// See DescribeAccountAttributes for more information on using the DescribeAccountAttributes
1496// API call, and error handling.
1497//
1498// This method is useful when you want to inject custom logic or configuration
1499// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1500//
1501//
1502//    // Example sending a request using the DescribeAccountAttributesRequest method.
1503//    req, resp := client.DescribeAccountAttributesRequest(params)
1504//
1505//    err := req.Send()
1506//    if err == nil { // resp is now filled
1507//        fmt.Println(resp)
1508//    }
1509//
1510// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeAccountAttributes
1511func (c *DatabaseMigrationService) DescribeAccountAttributesRequest(input *DescribeAccountAttributesInput) (req *request.Request, output *DescribeAccountAttributesOutput) {
1512	op := &request.Operation{
1513		Name:       opDescribeAccountAttributes,
1514		HTTPMethod: "POST",
1515		HTTPPath:   "/",
1516	}
1517
1518	if input == nil {
1519		input = &DescribeAccountAttributesInput{}
1520	}
1521
1522	output = &DescribeAccountAttributesOutput{}
1523	req = c.newRequest(op, input, output)
1524	return
1525}
1526
1527// DescribeAccountAttributes API operation for AWS Database Migration Service.
1528//
1529// Lists all of the AWS DMS attributes for a customer account. These attributes
1530// include AWS DMS quotas for the account and a unique account identifier in
1531// a particular DMS region. DMS quotas include a list of resource quotas supported
1532// by the account, such as the number of replication instances allowed. The
1533// description for each resource quota, includes the quota name, current usage
1534// toward that quota, and the quota's maximum value. DMS uses the unique account
1535// identifier to name each artifact used by DMS in the given region.
1536//
1537// This command does not take any parameters.
1538//
1539// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1540// with awserr.Error's Code and Message methods to get detailed information about
1541// the error.
1542//
1543// See the AWS API reference guide for AWS Database Migration Service's
1544// API operation DescribeAccountAttributes for usage and error information.
1545// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeAccountAttributes
1546func (c *DatabaseMigrationService) DescribeAccountAttributes(input *DescribeAccountAttributesInput) (*DescribeAccountAttributesOutput, error) {
1547	req, out := c.DescribeAccountAttributesRequest(input)
1548	return out, req.Send()
1549}
1550
1551// DescribeAccountAttributesWithContext is the same as DescribeAccountAttributes with the addition of
1552// the ability to pass a context and additional request options.
1553//
1554// See DescribeAccountAttributes for details on how to use this API operation.
1555//
1556// The context must be non-nil and will be used for request cancellation. If
1557// the context is nil a panic will occur. In the future the SDK may create
1558// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1559// for more information on using Contexts.
1560func (c *DatabaseMigrationService) DescribeAccountAttributesWithContext(ctx aws.Context, input *DescribeAccountAttributesInput, opts ...request.Option) (*DescribeAccountAttributesOutput, error) {
1561	req, out := c.DescribeAccountAttributesRequest(input)
1562	req.SetContext(ctx)
1563	req.ApplyOptions(opts...)
1564	return out, req.Send()
1565}
1566
1567const opDescribeApplicableIndividualAssessments = "DescribeApplicableIndividualAssessments"
1568
1569// DescribeApplicableIndividualAssessmentsRequest generates a "aws/request.Request" representing the
1570// client's request for the DescribeApplicableIndividualAssessments operation. The "output" return
1571// value will be populated with the request's response once the request completes
1572// successfully.
1573//
1574// Use "Send" method on the returned Request to send the API call to the service.
1575// the "output" return value is not valid until after Send returns without error.
1576//
1577// See DescribeApplicableIndividualAssessments for more information on using the DescribeApplicableIndividualAssessments
1578// API call, and error handling.
1579//
1580// This method is useful when you want to inject custom logic or configuration
1581// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1582//
1583//
1584//    // Example sending a request using the DescribeApplicableIndividualAssessmentsRequest method.
1585//    req, resp := client.DescribeApplicableIndividualAssessmentsRequest(params)
1586//
1587//    err := req.Send()
1588//    if err == nil { // resp is now filled
1589//        fmt.Println(resp)
1590//    }
1591//
1592// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeApplicableIndividualAssessments
1593func (c *DatabaseMigrationService) DescribeApplicableIndividualAssessmentsRequest(input *DescribeApplicableIndividualAssessmentsInput) (req *request.Request, output *DescribeApplicableIndividualAssessmentsOutput) {
1594	op := &request.Operation{
1595		Name:       opDescribeApplicableIndividualAssessments,
1596		HTTPMethod: "POST",
1597		HTTPPath:   "/",
1598		Paginator: &request.Paginator{
1599			InputTokens:     []string{"Marker"},
1600			OutputTokens:    []string{"Marker"},
1601			LimitToken:      "MaxRecords",
1602			TruncationToken: "",
1603		},
1604	}
1605
1606	if input == nil {
1607		input = &DescribeApplicableIndividualAssessmentsInput{}
1608	}
1609
1610	output = &DescribeApplicableIndividualAssessmentsOutput{}
1611	req = c.newRequest(op, input, output)
1612	return
1613}
1614
1615// DescribeApplicableIndividualAssessments API operation for AWS Database Migration Service.
1616//
1617// Provides a list of individual assessments that you can specify for a new
1618// premigration assessment run, given one or more parameters.
1619//
1620// If you specify an existing migration task, this operation provides the default
1621// individual assessments you can specify for that task. Otherwise, the specified
1622// parameters model elements of a possible migration task on which to base a
1623// premigration assessment run.
1624//
1625// To use these migration task modeling parameters, you must specify an existing
1626// replication instance, a source database engine, a target database engine,
1627// and a migration type. This combination of parameters potentially limits the
1628// default individual assessments available for an assessment run created for
1629// a corresponding migration task.
1630//
1631// If you specify no parameters, this operation provides a list of all possible
1632// individual assessments that you can specify for an assessment run. If you
1633// specify any one of the task modeling parameters, you must specify all of
1634// them or the operation cannot provide a list of individual assessments. The
1635// only parameter that you can specify alone is for an existing migration task.
1636// The specified task definition then determines the default list of individual
1637// assessments that you can specify in an assessment run for the task.
1638//
1639// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1640// with awserr.Error's Code and Message methods to get detailed information about
1641// the error.
1642//
1643// See the AWS API reference guide for AWS Database Migration Service's
1644// API operation DescribeApplicableIndividualAssessments for usage and error information.
1645//
1646// Returned Error Types:
1647//   * AccessDeniedFault
1648//   AWS DMS was denied access to the endpoint. Check that the role is correctly
1649//   configured.
1650//
1651//   * ResourceNotFoundFault
1652//   The resource could not be found.
1653//
1654//   * InvalidResourceStateFault
1655//   The resource is in a state that prevents it from being used for database
1656//   migration.
1657//
1658// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeApplicableIndividualAssessments
1659func (c *DatabaseMigrationService) DescribeApplicableIndividualAssessments(input *DescribeApplicableIndividualAssessmentsInput) (*DescribeApplicableIndividualAssessmentsOutput, error) {
1660	req, out := c.DescribeApplicableIndividualAssessmentsRequest(input)
1661	return out, req.Send()
1662}
1663
1664// DescribeApplicableIndividualAssessmentsWithContext is the same as DescribeApplicableIndividualAssessments with the addition of
1665// the ability to pass a context and additional request options.
1666//
1667// See DescribeApplicableIndividualAssessments for details on how to use this API operation.
1668//
1669// The context must be non-nil and will be used for request cancellation. If
1670// the context is nil a panic will occur. In the future the SDK may create
1671// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1672// for more information on using Contexts.
1673func (c *DatabaseMigrationService) DescribeApplicableIndividualAssessmentsWithContext(ctx aws.Context, input *DescribeApplicableIndividualAssessmentsInput, opts ...request.Option) (*DescribeApplicableIndividualAssessmentsOutput, error) {
1674	req, out := c.DescribeApplicableIndividualAssessmentsRequest(input)
1675	req.SetContext(ctx)
1676	req.ApplyOptions(opts...)
1677	return out, req.Send()
1678}
1679
1680// DescribeApplicableIndividualAssessmentsPages iterates over the pages of a DescribeApplicableIndividualAssessments operation,
1681// calling the "fn" function with the response data for each page. To stop
1682// iterating, return false from the fn function.
1683//
1684// See DescribeApplicableIndividualAssessments method for more information on how to use this operation.
1685//
1686// Note: This operation can generate multiple requests to a service.
1687//
1688//    // Example iterating over at most 3 pages of a DescribeApplicableIndividualAssessments operation.
1689//    pageNum := 0
1690//    err := client.DescribeApplicableIndividualAssessmentsPages(params,
1691//        func(page *databasemigrationservice.DescribeApplicableIndividualAssessmentsOutput, lastPage bool) bool {
1692//            pageNum++
1693//            fmt.Println(page)
1694//            return pageNum <= 3
1695//        })
1696//
1697func (c *DatabaseMigrationService) DescribeApplicableIndividualAssessmentsPages(input *DescribeApplicableIndividualAssessmentsInput, fn func(*DescribeApplicableIndividualAssessmentsOutput, bool) bool) error {
1698	return c.DescribeApplicableIndividualAssessmentsPagesWithContext(aws.BackgroundContext(), input, fn)
1699}
1700
1701// DescribeApplicableIndividualAssessmentsPagesWithContext same as DescribeApplicableIndividualAssessmentsPages except
1702// it takes a Context and allows setting request options on the pages.
1703//
1704// The context must be non-nil and will be used for request cancellation. If
1705// the context is nil a panic will occur. In the future the SDK may create
1706// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1707// for more information on using Contexts.
1708func (c *DatabaseMigrationService) DescribeApplicableIndividualAssessmentsPagesWithContext(ctx aws.Context, input *DescribeApplicableIndividualAssessmentsInput, fn func(*DescribeApplicableIndividualAssessmentsOutput, bool) bool, opts ...request.Option) error {
1709	p := request.Pagination{
1710		NewRequest: func() (*request.Request, error) {
1711			var inCpy *DescribeApplicableIndividualAssessmentsInput
1712			if input != nil {
1713				tmp := *input
1714				inCpy = &tmp
1715			}
1716			req, _ := c.DescribeApplicableIndividualAssessmentsRequest(inCpy)
1717			req.SetContext(ctx)
1718			req.ApplyOptions(opts...)
1719			return req, nil
1720		},
1721	}
1722
1723	for p.Next() {
1724		if !fn(p.Page().(*DescribeApplicableIndividualAssessmentsOutput), !p.HasNextPage()) {
1725			break
1726		}
1727	}
1728
1729	return p.Err()
1730}
1731
1732const opDescribeCertificates = "DescribeCertificates"
1733
1734// DescribeCertificatesRequest generates a "aws/request.Request" representing the
1735// client's request for the DescribeCertificates operation. The "output" return
1736// value will be populated with the request's response once the request completes
1737// successfully.
1738//
1739// Use "Send" method on the returned Request to send the API call to the service.
1740// the "output" return value is not valid until after Send returns without error.
1741//
1742// See DescribeCertificates for more information on using the DescribeCertificates
1743// API call, and error handling.
1744//
1745// This method is useful when you want to inject custom logic or configuration
1746// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1747//
1748//
1749//    // Example sending a request using the DescribeCertificatesRequest method.
1750//    req, resp := client.DescribeCertificatesRequest(params)
1751//
1752//    err := req.Send()
1753//    if err == nil { // resp is now filled
1754//        fmt.Println(resp)
1755//    }
1756//
1757// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeCertificates
1758func (c *DatabaseMigrationService) DescribeCertificatesRequest(input *DescribeCertificatesInput) (req *request.Request, output *DescribeCertificatesOutput) {
1759	op := &request.Operation{
1760		Name:       opDescribeCertificates,
1761		HTTPMethod: "POST",
1762		HTTPPath:   "/",
1763		Paginator: &request.Paginator{
1764			InputTokens:     []string{"Marker"},
1765			OutputTokens:    []string{"Marker"},
1766			LimitToken:      "MaxRecords",
1767			TruncationToken: "",
1768		},
1769	}
1770
1771	if input == nil {
1772		input = &DescribeCertificatesInput{}
1773	}
1774
1775	output = &DescribeCertificatesOutput{}
1776	req = c.newRequest(op, input, output)
1777	return
1778}
1779
1780// DescribeCertificates API operation for AWS Database Migration Service.
1781//
1782// Provides a description of the certificate.
1783//
1784// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1785// with awserr.Error's Code and Message methods to get detailed information about
1786// the error.
1787//
1788// See the AWS API reference guide for AWS Database Migration Service's
1789// API operation DescribeCertificates for usage and error information.
1790//
1791// Returned Error Types:
1792//   * ResourceNotFoundFault
1793//   The resource could not be found.
1794//
1795// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeCertificates
1796func (c *DatabaseMigrationService) DescribeCertificates(input *DescribeCertificatesInput) (*DescribeCertificatesOutput, error) {
1797	req, out := c.DescribeCertificatesRequest(input)
1798	return out, req.Send()
1799}
1800
1801// DescribeCertificatesWithContext is the same as DescribeCertificates with the addition of
1802// the ability to pass a context and additional request options.
1803//
1804// See DescribeCertificates for details on how to use this API operation.
1805//
1806// The context must be non-nil and will be used for request cancellation. If
1807// the context is nil a panic will occur. In the future the SDK may create
1808// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1809// for more information on using Contexts.
1810func (c *DatabaseMigrationService) DescribeCertificatesWithContext(ctx aws.Context, input *DescribeCertificatesInput, opts ...request.Option) (*DescribeCertificatesOutput, error) {
1811	req, out := c.DescribeCertificatesRequest(input)
1812	req.SetContext(ctx)
1813	req.ApplyOptions(opts...)
1814	return out, req.Send()
1815}
1816
1817// DescribeCertificatesPages iterates over the pages of a DescribeCertificates operation,
1818// calling the "fn" function with the response data for each page. To stop
1819// iterating, return false from the fn function.
1820//
1821// See DescribeCertificates method for more information on how to use this operation.
1822//
1823// Note: This operation can generate multiple requests to a service.
1824//
1825//    // Example iterating over at most 3 pages of a DescribeCertificates operation.
1826//    pageNum := 0
1827//    err := client.DescribeCertificatesPages(params,
1828//        func(page *databasemigrationservice.DescribeCertificatesOutput, lastPage bool) bool {
1829//            pageNum++
1830//            fmt.Println(page)
1831//            return pageNum <= 3
1832//        })
1833//
1834func (c *DatabaseMigrationService) DescribeCertificatesPages(input *DescribeCertificatesInput, fn func(*DescribeCertificatesOutput, bool) bool) error {
1835	return c.DescribeCertificatesPagesWithContext(aws.BackgroundContext(), input, fn)
1836}
1837
1838// DescribeCertificatesPagesWithContext same as DescribeCertificatesPages except
1839// it takes a Context and allows setting request options on the pages.
1840//
1841// The context must be non-nil and will be used for request cancellation. If
1842// the context is nil a panic will occur. In the future the SDK may create
1843// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1844// for more information on using Contexts.
1845func (c *DatabaseMigrationService) DescribeCertificatesPagesWithContext(ctx aws.Context, input *DescribeCertificatesInput, fn func(*DescribeCertificatesOutput, bool) bool, opts ...request.Option) error {
1846	p := request.Pagination{
1847		NewRequest: func() (*request.Request, error) {
1848			var inCpy *DescribeCertificatesInput
1849			if input != nil {
1850				tmp := *input
1851				inCpy = &tmp
1852			}
1853			req, _ := c.DescribeCertificatesRequest(inCpy)
1854			req.SetContext(ctx)
1855			req.ApplyOptions(opts...)
1856			return req, nil
1857		},
1858	}
1859
1860	for p.Next() {
1861		if !fn(p.Page().(*DescribeCertificatesOutput), !p.HasNextPage()) {
1862			break
1863		}
1864	}
1865
1866	return p.Err()
1867}
1868
1869const opDescribeConnections = "DescribeConnections"
1870
1871// DescribeConnectionsRequest generates a "aws/request.Request" representing the
1872// client's request for the DescribeConnections operation. The "output" return
1873// value will be populated with the request's response once the request completes
1874// successfully.
1875//
1876// Use "Send" method on the returned Request to send the API call to the service.
1877// the "output" return value is not valid until after Send returns without error.
1878//
1879// See DescribeConnections for more information on using the DescribeConnections
1880// API call, and error handling.
1881//
1882// This method is useful when you want to inject custom logic or configuration
1883// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1884//
1885//
1886//    // Example sending a request using the DescribeConnectionsRequest method.
1887//    req, resp := client.DescribeConnectionsRequest(params)
1888//
1889//    err := req.Send()
1890//    if err == nil { // resp is now filled
1891//        fmt.Println(resp)
1892//    }
1893//
1894// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeConnections
1895func (c *DatabaseMigrationService) DescribeConnectionsRequest(input *DescribeConnectionsInput) (req *request.Request, output *DescribeConnectionsOutput) {
1896	op := &request.Operation{
1897		Name:       opDescribeConnections,
1898		HTTPMethod: "POST",
1899		HTTPPath:   "/",
1900		Paginator: &request.Paginator{
1901			InputTokens:     []string{"Marker"},
1902			OutputTokens:    []string{"Marker"},
1903			LimitToken:      "MaxRecords",
1904			TruncationToken: "",
1905		},
1906	}
1907
1908	if input == nil {
1909		input = &DescribeConnectionsInput{}
1910	}
1911
1912	output = &DescribeConnectionsOutput{}
1913	req = c.newRequest(op, input, output)
1914	return
1915}
1916
1917// DescribeConnections API operation for AWS Database Migration Service.
1918//
1919// Describes the status of the connections that have been made between the replication
1920// instance and an endpoint. Connections are created when you test an endpoint.
1921//
1922// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1923// with awserr.Error's Code and Message methods to get detailed information about
1924// the error.
1925//
1926// See the AWS API reference guide for AWS Database Migration Service's
1927// API operation DescribeConnections for usage and error information.
1928//
1929// Returned Error Types:
1930//   * ResourceNotFoundFault
1931//   The resource could not be found.
1932//
1933// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeConnections
1934func (c *DatabaseMigrationService) DescribeConnections(input *DescribeConnectionsInput) (*DescribeConnectionsOutput, error) {
1935	req, out := c.DescribeConnectionsRequest(input)
1936	return out, req.Send()
1937}
1938
1939// DescribeConnectionsWithContext is the same as DescribeConnections with the addition of
1940// the ability to pass a context and additional request options.
1941//
1942// See DescribeConnections for details on how to use this API operation.
1943//
1944// The context must be non-nil and will be used for request cancellation. If
1945// the context is nil a panic will occur. In the future the SDK may create
1946// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1947// for more information on using Contexts.
1948func (c *DatabaseMigrationService) DescribeConnectionsWithContext(ctx aws.Context, input *DescribeConnectionsInput, opts ...request.Option) (*DescribeConnectionsOutput, error) {
1949	req, out := c.DescribeConnectionsRequest(input)
1950	req.SetContext(ctx)
1951	req.ApplyOptions(opts...)
1952	return out, req.Send()
1953}
1954
1955// DescribeConnectionsPages iterates over the pages of a DescribeConnections operation,
1956// calling the "fn" function with the response data for each page. To stop
1957// iterating, return false from the fn function.
1958//
1959// See DescribeConnections method for more information on how to use this operation.
1960//
1961// Note: This operation can generate multiple requests to a service.
1962//
1963//    // Example iterating over at most 3 pages of a DescribeConnections operation.
1964//    pageNum := 0
1965//    err := client.DescribeConnectionsPages(params,
1966//        func(page *databasemigrationservice.DescribeConnectionsOutput, lastPage bool) bool {
1967//            pageNum++
1968//            fmt.Println(page)
1969//            return pageNum <= 3
1970//        })
1971//
1972func (c *DatabaseMigrationService) DescribeConnectionsPages(input *DescribeConnectionsInput, fn func(*DescribeConnectionsOutput, bool) bool) error {
1973	return c.DescribeConnectionsPagesWithContext(aws.BackgroundContext(), input, fn)
1974}
1975
1976// DescribeConnectionsPagesWithContext same as DescribeConnectionsPages except
1977// it takes a Context and allows setting request options on the pages.
1978//
1979// The context must be non-nil and will be used for request cancellation. If
1980// the context is nil a panic will occur. In the future the SDK may create
1981// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1982// for more information on using Contexts.
1983func (c *DatabaseMigrationService) DescribeConnectionsPagesWithContext(ctx aws.Context, input *DescribeConnectionsInput, fn func(*DescribeConnectionsOutput, bool) bool, opts ...request.Option) error {
1984	p := request.Pagination{
1985		NewRequest: func() (*request.Request, error) {
1986			var inCpy *DescribeConnectionsInput
1987			if input != nil {
1988				tmp := *input
1989				inCpy = &tmp
1990			}
1991			req, _ := c.DescribeConnectionsRequest(inCpy)
1992			req.SetContext(ctx)
1993			req.ApplyOptions(opts...)
1994			return req, nil
1995		},
1996	}
1997
1998	for p.Next() {
1999		if !fn(p.Page().(*DescribeConnectionsOutput), !p.HasNextPage()) {
2000			break
2001		}
2002	}
2003
2004	return p.Err()
2005}
2006
2007const opDescribeEndpointSettings = "DescribeEndpointSettings"
2008
2009// DescribeEndpointSettingsRequest generates a "aws/request.Request" representing the
2010// client's request for the DescribeEndpointSettings operation. The "output" return
2011// value will be populated with the request's response once the request completes
2012// successfully.
2013//
2014// Use "Send" method on the returned Request to send the API call to the service.
2015// the "output" return value is not valid until after Send returns without error.
2016//
2017// See DescribeEndpointSettings for more information on using the DescribeEndpointSettings
2018// API call, and error handling.
2019//
2020// This method is useful when you want to inject custom logic or configuration
2021// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2022//
2023//
2024//    // Example sending a request using the DescribeEndpointSettingsRequest method.
2025//    req, resp := client.DescribeEndpointSettingsRequest(params)
2026//
2027//    err := req.Send()
2028//    if err == nil { // resp is now filled
2029//        fmt.Println(resp)
2030//    }
2031//
2032// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeEndpointSettings
2033func (c *DatabaseMigrationService) DescribeEndpointSettingsRequest(input *DescribeEndpointSettingsInput) (req *request.Request, output *DescribeEndpointSettingsOutput) {
2034	op := &request.Operation{
2035		Name:       opDescribeEndpointSettings,
2036		HTTPMethod: "POST",
2037		HTTPPath:   "/",
2038		Paginator: &request.Paginator{
2039			InputTokens:     []string{"Marker"},
2040			OutputTokens:    []string{"Marker"},
2041			LimitToken:      "MaxRecords",
2042			TruncationToken: "",
2043		},
2044	}
2045
2046	if input == nil {
2047		input = &DescribeEndpointSettingsInput{}
2048	}
2049
2050	output = &DescribeEndpointSettingsOutput{}
2051	req = c.newRequest(op, input, output)
2052	return
2053}
2054
2055// DescribeEndpointSettings API operation for AWS Database Migration Service.
2056//
2057// Returns information about the possible endpoint settings available when you
2058// create an endpoint for a specific database engine.
2059//
2060// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2061// with awserr.Error's Code and Message methods to get detailed information about
2062// the error.
2063//
2064// See the AWS API reference guide for AWS Database Migration Service's
2065// API operation DescribeEndpointSettings for usage and error information.
2066// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeEndpointSettings
2067func (c *DatabaseMigrationService) DescribeEndpointSettings(input *DescribeEndpointSettingsInput) (*DescribeEndpointSettingsOutput, error) {
2068	req, out := c.DescribeEndpointSettingsRequest(input)
2069	return out, req.Send()
2070}
2071
2072// DescribeEndpointSettingsWithContext is the same as DescribeEndpointSettings with the addition of
2073// the ability to pass a context and additional request options.
2074//
2075// See DescribeEndpointSettings for details on how to use this API operation.
2076//
2077// The context must be non-nil and will be used for request cancellation. If
2078// the context is nil a panic will occur. In the future the SDK may create
2079// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2080// for more information on using Contexts.
2081func (c *DatabaseMigrationService) DescribeEndpointSettingsWithContext(ctx aws.Context, input *DescribeEndpointSettingsInput, opts ...request.Option) (*DescribeEndpointSettingsOutput, error) {
2082	req, out := c.DescribeEndpointSettingsRequest(input)
2083	req.SetContext(ctx)
2084	req.ApplyOptions(opts...)
2085	return out, req.Send()
2086}
2087
2088// DescribeEndpointSettingsPages iterates over the pages of a DescribeEndpointSettings operation,
2089// calling the "fn" function with the response data for each page. To stop
2090// iterating, return false from the fn function.
2091//
2092// See DescribeEndpointSettings method for more information on how to use this operation.
2093//
2094// Note: This operation can generate multiple requests to a service.
2095//
2096//    // Example iterating over at most 3 pages of a DescribeEndpointSettings operation.
2097//    pageNum := 0
2098//    err := client.DescribeEndpointSettingsPages(params,
2099//        func(page *databasemigrationservice.DescribeEndpointSettingsOutput, lastPage bool) bool {
2100//            pageNum++
2101//            fmt.Println(page)
2102//            return pageNum <= 3
2103//        })
2104//
2105func (c *DatabaseMigrationService) DescribeEndpointSettingsPages(input *DescribeEndpointSettingsInput, fn func(*DescribeEndpointSettingsOutput, bool) bool) error {
2106	return c.DescribeEndpointSettingsPagesWithContext(aws.BackgroundContext(), input, fn)
2107}
2108
2109// DescribeEndpointSettingsPagesWithContext same as DescribeEndpointSettingsPages except
2110// it takes a Context and allows setting request options on the pages.
2111//
2112// The context must be non-nil and will be used for request cancellation. If
2113// the context is nil a panic will occur. In the future the SDK may create
2114// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2115// for more information on using Contexts.
2116func (c *DatabaseMigrationService) DescribeEndpointSettingsPagesWithContext(ctx aws.Context, input *DescribeEndpointSettingsInput, fn func(*DescribeEndpointSettingsOutput, bool) bool, opts ...request.Option) error {
2117	p := request.Pagination{
2118		NewRequest: func() (*request.Request, error) {
2119			var inCpy *DescribeEndpointSettingsInput
2120			if input != nil {
2121				tmp := *input
2122				inCpy = &tmp
2123			}
2124			req, _ := c.DescribeEndpointSettingsRequest(inCpy)
2125			req.SetContext(ctx)
2126			req.ApplyOptions(opts...)
2127			return req, nil
2128		},
2129	}
2130
2131	for p.Next() {
2132		if !fn(p.Page().(*DescribeEndpointSettingsOutput), !p.HasNextPage()) {
2133			break
2134		}
2135	}
2136
2137	return p.Err()
2138}
2139
2140const opDescribeEndpointTypes = "DescribeEndpointTypes"
2141
2142// DescribeEndpointTypesRequest generates a "aws/request.Request" representing the
2143// client's request for the DescribeEndpointTypes operation. The "output" return
2144// value will be populated with the request's response once the request completes
2145// successfully.
2146//
2147// Use "Send" method on the returned Request to send the API call to the service.
2148// the "output" return value is not valid until after Send returns without error.
2149//
2150// See DescribeEndpointTypes for more information on using the DescribeEndpointTypes
2151// API call, and error handling.
2152//
2153// This method is useful when you want to inject custom logic or configuration
2154// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2155//
2156//
2157//    // Example sending a request using the DescribeEndpointTypesRequest method.
2158//    req, resp := client.DescribeEndpointTypesRequest(params)
2159//
2160//    err := req.Send()
2161//    if err == nil { // resp is now filled
2162//        fmt.Println(resp)
2163//    }
2164//
2165// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeEndpointTypes
2166func (c *DatabaseMigrationService) DescribeEndpointTypesRequest(input *DescribeEndpointTypesInput) (req *request.Request, output *DescribeEndpointTypesOutput) {
2167	op := &request.Operation{
2168		Name:       opDescribeEndpointTypes,
2169		HTTPMethod: "POST",
2170		HTTPPath:   "/",
2171		Paginator: &request.Paginator{
2172			InputTokens:     []string{"Marker"},
2173			OutputTokens:    []string{"Marker"},
2174			LimitToken:      "MaxRecords",
2175			TruncationToken: "",
2176		},
2177	}
2178
2179	if input == nil {
2180		input = &DescribeEndpointTypesInput{}
2181	}
2182
2183	output = &DescribeEndpointTypesOutput{}
2184	req = c.newRequest(op, input, output)
2185	return
2186}
2187
2188// DescribeEndpointTypes API operation for AWS Database Migration Service.
2189//
2190// Returns information about the type of endpoints available.
2191//
2192// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2193// with awserr.Error's Code and Message methods to get detailed information about
2194// the error.
2195//
2196// See the AWS API reference guide for AWS Database Migration Service's
2197// API operation DescribeEndpointTypes for usage and error information.
2198// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeEndpointTypes
2199func (c *DatabaseMigrationService) DescribeEndpointTypes(input *DescribeEndpointTypesInput) (*DescribeEndpointTypesOutput, error) {
2200	req, out := c.DescribeEndpointTypesRequest(input)
2201	return out, req.Send()
2202}
2203
2204// DescribeEndpointTypesWithContext is the same as DescribeEndpointTypes with the addition of
2205// the ability to pass a context and additional request options.
2206//
2207// See DescribeEndpointTypes for details on how to use this API operation.
2208//
2209// The context must be non-nil and will be used for request cancellation. If
2210// the context is nil a panic will occur. In the future the SDK may create
2211// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2212// for more information on using Contexts.
2213func (c *DatabaseMigrationService) DescribeEndpointTypesWithContext(ctx aws.Context, input *DescribeEndpointTypesInput, opts ...request.Option) (*DescribeEndpointTypesOutput, error) {
2214	req, out := c.DescribeEndpointTypesRequest(input)
2215	req.SetContext(ctx)
2216	req.ApplyOptions(opts...)
2217	return out, req.Send()
2218}
2219
2220// DescribeEndpointTypesPages iterates over the pages of a DescribeEndpointTypes operation,
2221// calling the "fn" function with the response data for each page. To stop
2222// iterating, return false from the fn function.
2223//
2224// See DescribeEndpointTypes method for more information on how to use this operation.
2225//
2226// Note: This operation can generate multiple requests to a service.
2227//
2228//    // Example iterating over at most 3 pages of a DescribeEndpointTypes operation.
2229//    pageNum := 0
2230//    err := client.DescribeEndpointTypesPages(params,
2231//        func(page *databasemigrationservice.DescribeEndpointTypesOutput, lastPage bool) bool {
2232//            pageNum++
2233//            fmt.Println(page)
2234//            return pageNum <= 3
2235//        })
2236//
2237func (c *DatabaseMigrationService) DescribeEndpointTypesPages(input *DescribeEndpointTypesInput, fn func(*DescribeEndpointTypesOutput, bool) bool) error {
2238	return c.DescribeEndpointTypesPagesWithContext(aws.BackgroundContext(), input, fn)
2239}
2240
2241// DescribeEndpointTypesPagesWithContext same as DescribeEndpointTypesPages except
2242// it takes a Context and allows setting request options on the pages.
2243//
2244// The context must be non-nil and will be used for request cancellation. If
2245// the context is nil a panic will occur. In the future the SDK may create
2246// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2247// for more information on using Contexts.
2248func (c *DatabaseMigrationService) DescribeEndpointTypesPagesWithContext(ctx aws.Context, input *DescribeEndpointTypesInput, fn func(*DescribeEndpointTypesOutput, bool) bool, opts ...request.Option) error {
2249	p := request.Pagination{
2250		NewRequest: func() (*request.Request, error) {
2251			var inCpy *DescribeEndpointTypesInput
2252			if input != nil {
2253				tmp := *input
2254				inCpy = &tmp
2255			}
2256			req, _ := c.DescribeEndpointTypesRequest(inCpy)
2257			req.SetContext(ctx)
2258			req.ApplyOptions(opts...)
2259			return req, nil
2260		},
2261	}
2262
2263	for p.Next() {
2264		if !fn(p.Page().(*DescribeEndpointTypesOutput), !p.HasNextPage()) {
2265			break
2266		}
2267	}
2268
2269	return p.Err()
2270}
2271
2272const opDescribeEndpoints = "DescribeEndpoints"
2273
2274// DescribeEndpointsRequest generates a "aws/request.Request" representing the
2275// client's request for the DescribeEndpoints operation. The "output" return
2276// value will be populated with the request's response once the request completes
2277// successfully.
2278//
2279// Use "Send" method on the returned Request to send the API call to the service.
2280// the "output" return value is not valid until after Send returns without error.
2281//
2282// See DescribeEndpoints for more information on using the DescribeEndpoints
2283// API call, and error handling.
2284//
2285// This method is useful when you want to inject custom logic or configuration
2286// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2287//
2288//
2289//    // Example sending a request using the DescribeEndpointsRequest method.
2290//    req, resp := client.DescribeEndpointsRequest(params)
2291//
2292//    err := req.Send()
2293//    if err == nil { // resp is now filled
2294//        fmt.Println(resp)
2295//    }
2296//
2297// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeEndpoints
2298func (c *DatabaseMigrationService) DescribeEndpointsRequest(input *DescribeEndpointsInput) (req *request.Request, output *DescribeEndpointsOutput) {
2299	op := &request.Operation{
2300		Name:       opDescribeEndpoints,
2301		HTTPMethod: "POST",
2302		HTTPPath:   "/",
2303		Paginator: &request.Paginator{
2304			InputTokens:     []string{"Marker"},
2305			OutputTokens:    []string{"Marker"},
2306			LimitToken:      "MaxRecords",
2307			TruncationToken: "",
2308		},
2309	}
2310
2311	if input == nil {
2312		input = &DescribeEndpointsInput{}
2313	}
2314
2315	output = &DescribeEndpointsOutput{}
2316	req = c.newRequest(op, input, output)
2317	return
2318}
2319
2320// DescribeEndpoints API operation for AWS Database Migration Service.
2321//
2322// Returns information about the endpoints for your account in the current region.
2323//
2324// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2325// with awserr.Error's Code and Message methods to get detailed information about
2326// the error.
2327//
2328// See the AWS API reference guide for AWS Database Migration Service's
2329// API operation DescribeEndpoints for usage and error information.
2330//
2331// Returned Error Types:
2332//   * ResourceNotFoundFault
2333//   The resource could not be found.
2334//
2335// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeEndpoints
2336func (c *DatabaseMigrationService) DescribeEndpoints(input *DescribeEndpointsInput) (*DescribeEndpointsOutput, error) {
2337	req, out := c.DescribeEndpointsRequest(input)
2338	return out, req.Send()
2339}
2340
2341// DescribeEndpointsWithContext is the same as DescribeEndpoints with the addition of
2342// the ability to pass a context and additional request options.
2343//
2344// See DescribeEndpoints for details on how to use this API operation.
2345//
2346// The context must be non-nil and will be used for request cancellation. If
2347// the context is nil a panic will occur. In the future the SDK may create
2348// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2349// for more information on using Contexts.
2350func (c *DatabaseMigrationService) DescribeEndpointsWithContext(ctx aws.Context, input *DescribeEndpointsInput, opts ...request.Option) (*DescribeEndpointsOutput, error) {
2351	req, out := c.DescribeEndpointsRequest(input)
2352	req.SetContext(ctx)
2353	req.ApplyOptions(opts...)
2354	return out, req.Send()
2355}
2356
2357// DescribeEndpointsPages iterates over the pages of a DescribeEndpoints operation,
2358// calling the "fn" function with the response data for each page. To stop
2359// iterating, return false from the fn function.
2360//
2361// See DescribeEndpoints method for more information on how to use this operation.
2362//
2363// Note: This operation can generate multiple requests to a service.
2364//
2365//    // Example iterating over at most 3 pages of a DescribeEndpoints operation.
2366//    pageNum := 0
2367//    err := client.DescribeEndpointsPages(params,
2368//        func(page *databasemigrationservice.DescribeEndpointsOutput, lastPage bool) bool {
2369//            pageNum++
2370//            fmt.Println(page)
2371//            return pageNum <= 3
2372//        })
2373//
2374func (c *DatabaseMigrationService) DescribeEndpointsPages(input *DescribeEndpointsInput, fn func(*DescribeEndpointsOutput, bool) bool) error {
2375	return c.DescribeEndpointsPagesWithContext(aws.BackgroundContext(), input, fn)
2376}
2377
2378// DescribeEndpointsPagesWithContext same as DescribeEndpointsPages except
2379// it takes a Context and allows setting request options on the pages.
2380//
2381// The context must be non-nil and will be used for request cancellation. If
2382// the context is nil a panic will occur. In the future the SDK may create
2383// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2384// for more information on using Contexts.
2385func (c *DatabaseMigrationService) DescribeEndpointsPagesWithContext(ctx aws.Context, input *DescribeEndpointsInput, fn func(*DescribeEndpointsOutput, bool) bool, opts ...request.Option) error {
2386	p := request.Pagination{
2387		NewRequest: func() (*request.Request, error) {
2388			var inCpy *DescribeEndpointsInput
2389			if input != nil {
2390				tmp := *input
2391				inCpy = &tmp
2392			}
2393			req, _ := c.DescribeEndpointsRequest(inCpy)
2394			req.SetContext(ctx)
2395			req.ApplyOptions(opts...)
2396			return req, nil
2397		},
2398	}
2399
2400	for p.Next() {
2401		if !fn(p.Page().(*DescribeEndpointsOutput), !p.HasNextPage()) {
2402			break
2403		}
2404	}
2405
2406	return p.Err()
2407}
2408
2409const opDescribeEventCategories = "DescribeEventCategories"
2410
2411// DescribeEventCategoriesRequest generates a "aws/request.Request" representing the
2412// client's request for the DescribeEventCategories operation. The "output" return
2413// value will be populated with the request's response once the request completes
2414// successfully.
2415//
2416// Use "Send" method on the returned Request to send the API call to the service.
2417// the "output" return value is not valid until after Send returns without error.
2418//
2419// See DescribeEventCategories for more information on using the DescribeEventCategories
2420// API call, and error handling.
2421//
2422// This method is useful when you want to inject custom logic or configuration
2423// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2424//
2425//
2426//    // Example sending a request using the DescribeEventCategoriesRequest method.
2427//    req, resp := client.DescribeEventCategoriesRequest(params)
2428//
2429//    err := req.Send()
2430//    if err == nil { // resp is now filled
2431//        fmt.Println(resp)
2432//    }
2433//
2434// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeEventCategories
2435func (c *DatabaseMigrationService) DescribeEventCategoriesRequest(input *DescribeEventCategoriesInput) (req *request.Request, output *DescribeEventCategoriesOutput) {
2436	op := &request.Operation{
2437		Name:       opDescribeEventCategories,
2438		HTTPMethod: "POST",
2439		HTTPPath:   "/",
2440	}
2441
2442	if input == nil {
2443		input = &DescribeEventCategoriesInput{}
2444	}
2445
2446	output = &DescribeEventCategoriesOutput{}
2447	req = c.newRequest(op, input, output)
2448	return
2449}
2450
2451// DescribeEventCategories API operation for AWS Database Migration Service.
2452//
2453// Lists categories for all event source types, or, if specified, for a specified
2454// source type. You can see a list of the event categories and source types
2455// in Working with Events and Notifications (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Events.html)
2456// in the AWS Database Migration Service User Guide.
2457//
2458// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2459// with awserr.Error's Code and Message methods to get detailed information about
2460// the error.
2461//
2462// See the AWS API reference guide for AWS Database Migration Service's
2463// API operation DescribeEventCategories for usage and error information.
2464// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeEventCategories
2465func (c *DatabaseMigrationService) DescribeEventCategories(input *DescribeEventCategoriesInput) (*DescribeEventCategoriesOutput, error) {
2466	req, out := c.DescribeEventCategoriesRequest(input)
2467	return out, req.Send()
2468}
2469
2470// DescribeEventCategoriesWithContext is the same as DescribeEventCategories with the addition of
2471// the ability to pass a context and additional request options.
2472//
2473// See DescribeEventCategories for details on how to use this API operation.
2474//
2475// The context must be non-nil and will be used for request cancellation. If
2476// the context is nil a panic will occur. In the future the SDK may create
2477// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2478// for more information on using Contexts.
2479func (c *DatabaseMigrationService) DescribeEventCategoriesWithContext(ctx aws.Context, input *DescribeEventCategoriesInput, opts ...request.Option) (*DescribeEventCategoriesOutput, error) {
2480	req, out := c.DescribeEventCategoriesRequest(input)
2481	req.SetContext(ctx)
2482	req.ApplyOptions(opts...)
2483	return out, req.Send()
2484}
2485
2486const opDescribeEventSubscriptions = "DescribeEventSubscriptions"
2487
2488// DescribeEventSubscriptionsRequest generates a "aws/request.Request" representing the
2489// client's request for the DescribeEventSubscriptions operation. The "output" return
2490// value will be populated with the request's response once the request completes
2491// successfully.
2492//
2493// Use "Send" method on the returned Request to send the API call to the service.
2494// the "output" return value is not valid until after Send returns without error.
2495//
2496// See DescribeEventSubscriptions for more information on using the DescribeEventSubscriptions
2497// API call, and error handling.
2498//
2499// This method is useful when you want to inject custom logic or configuration
2500// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2501//
2502//
2503//    // Example sending a request using the DescribeEventSubscriptionsRequest method.
2504//    req, resp := client.DescribeEventSubscriptionsRequest(params)
2505//
2506//    err := req.Send()
2507//    if err == nil { // resp is now filled
2508//        fmt.Println(resp)
2509//    }
2510//
2511// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeEventSubscriptions
2512func (c *DatabaseMigrationService) DescribeEventSubscriptionsRequest(input *DescribeEventSubscriptionsInput) (req *request.Request, output *DescribeEventSubscriptionsOutput) {
2513	op := &request.Operation{
2514		Name:       opDescribeEventSubscriptions,
2515		HTTPMethod: "POST",
2516		HTTPPath:   "/",
2517		Paginator: &request.Paginator{
2518			InputTokens:     []string{"Marker"},
2519			OutputTokens:    []string{"Marker"},
2520			LimitToken:      "MaxRecords",
2521			TruncationToken: "",
2522		},
2523	}
2524
2525	if input == nil {
2526		input = &DescribeEventSubscriptionsInput{}
2527	}
2528
2529	output = &DescribeEventSubscriptionsOutput{}
2530	req = c.newRequest(op, input, output)
2531	return
2532}
2533
2534// DescribeEventSubscriptions API operation for AWS Database Migration Service.
2535//
2536// Lists all the event subscriptions for a customer account. The description
2537// of a subscription includes SubscriptionName, SNSTopicARN, CustomerID, SourceType,
2538// SourceID, CreationTime, and Status.
2539//
2540// If you specify SubscriptionName, this action lists the description for that
2541// subscription.
2542//
2543// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2544// with awserr.Error's Code and Message methods to get detailed information about
2545// the error.
2546//
2547// See the AWS API reference guide for AWS Database Migration Service's
2548// API operation DescribeEventSubscriptions for usage and error information.
2549//
2550// Returned Error Types:
2551//   * ResourceNotFoundFault
2552//   The resource could not be found.
2553//
2554// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeEventSubscriptions
2555func (c *DatabaseMigrationService) DescribeEventSubscriptions(input *DescribeEventSubscriptionsInput) (*DescribeEventSubscriptionsOutput, error) {
2556	req, out := c.DescribeEventSubscriptionsRequest(input)
2557	return out, req.Send()
2558}
2559
2560// DescribeEventSubscriptionsWithContext is the same as DescribeEventSubscriptions with the addition of
2561// the ability to pass a context and additional request options.
2562//
2563// See DescribeEventSubscriptions for details on how to use this API operation.
2564//
2565// The context must be non-nil and will be used for request cancellation. If
2566// the context is nil a panic will occur. In the future the SDK may create
2567// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2568// for more information on using Contexts.
2569func (c *DatabaseMigrationService) DescribeEventSubscriptionsWithContext(ctx aws.Context, input *DescribeEventSubscriptionsInput, opts ...request.Option) (*DescribeEventSubscriptionsOutput, error) {
2570	req, out := c.DescribeEventSubscriptionsRequest(input)
2571	req.SetContext(ctx)
2572	req.ApplyOptions(opts...)
2573	return out, req.Send()
2574}
2575
2576// DescribeEventSubscriptionsPages iterates over the pages of a DescribeEventSubscriptions operation,
2577// calling the "fn" function with the response data for each page. To stop
2578// iterating, return false from the fn function.
2579//
2580// See DescribeEventSubscriptions method for more information on how to use this operation.
2581//
2582// Note: This operation can generate multiple requests to a service.
2583//
2584//    // Example iterating over at most 3 pages of a DescribeEventSubscriptions operation.
2585//    pageNum := 0
2586//    err := client.DescribeEventSubscriptionsPages(params,
2587//        func(page *databasemigrationservice.DescribeEventSubscriptionsOutput, lastPage bool) bool {
2588//            pageNum++
2589//            fmt.Println(page)
2590//            return pageNum <= 3
2591//        })
2592//
2593func (c *DatabaseMigrationService) DescribeEventSubscriptionsPages(input *DescribeEventSubscriptionsInput, fn func(*DescribeEventSubscriptionsOutput, bool) bool) error {
2594	return c.DescribeEventSubscriptionsPagesWithContext(aws.BackgroundContext(), input, fn)
2595}
2596
2597// DescribeEventSubscriptionsPagesWithContext same as DescribeEventSubscriptionsPages except
2598// it takes a Context and allows setting request options on the pages.
2599//
2600// The context must be non-nil and will be used for request cancellation. If
2601// the context is nil a panic will occur. In the future the SDK may create
2602// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2603// for more information on using Contexts.
2604func (c *DatabaseMigrationService) DescribeEventSubscriptionsPagesWithContext(ctx aws.Context, input *DescribeEventSubscriptionsInput, fn func(*DescribeEventSubscriptionsOutput, bool) bool, opts ...request.Option) error {
2605	p := request.Pagination{
2606		NewRequest: func() (*request.Request, error) {
2607			var inCpy *DescribeEventSubscriptionsInput
2608			if input != nil {
2609				tmp := *input
2610				inCpy = &tmp
2611			}
2612			req, _ := c.DescribeEventSubscriptionsRequest(inCpy)
2613			req.SetContext(ctx)
2614			req.ApplyOptions(opts...)
2615			return req, nil
2616		},
2617	}
2618
2619	for p.Next() {
2620		if !fn(p.Page().(*DescribeEventSubscriptionsOutput), !p.HasNextPage()) {
2621			break
2622		}
2623	}
2624
2625	return p.Err()
2626}
2627
2628const opDescribeEvents = "DescribeEvents"
2629
2630// DescribeEventsRequest generates a "aws/request.Request" representing the
2631// client's request for the DescribeEvents operation. The "output" return
2632// value will be populated with the request's response once the request completes
2633// successfully.
2634//
2635// Use "Send" method on the returned Request to send the API call to the service.
2636// the "output" return value is not valid until after Send returns without error.
2637//
2638// See DescribeEvents for more information on using the DescribeEvents
2639// API call, and error handling.
2640//
2641// This method is useful when you want to inject custom logic or configuration
2642// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2643//
2644//
2645//    // Example sending a request using the DescribeEventsRequest method.
2646//    req, resp := client.DescribeEventsRequest(params)
2647//
2648//    err := req.Send()
2649//    if err == nil { // resp is now filled
2650//        fmt.Println(resp)
2651//    }
2652//
2653// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeEvents
2654func (c *DatabaseMigrationService) DescribeEventsRequest(input *DescribeEventsInput) (req *request.Request, output *DescribeEventsOutput) {
2655	op := &request.Operation{
2656		Name:       opDescribeEvents,
2657		HTTPMethod: "POST",
2658		HTTPPath:   "/",
2659		Paginator: &request.Paginator{
2660			InputTokens:     []string{"Marker"},
2661			OutputTokens:    []string{"Marker"},
2662			LimitToken:      "MaxRecords",
2663			TruncationToken: "",
2664		},
2665	}
2666
2667	if input == nil {
2668		input = &DescribeEventsInput{}
2669	}
2670
2671	output = &DescribeEventsOutput{}
2672	req = c.newRequest(op, input, output)
2673	return
2674}
2675
2676// DescribeEvents API operation for AWS Database Migration Service.
2677//
2678// Lists events for a given source identifier and source type. You can also
2679// specify a start and end time. For more information on AWS DMS events, see
2680// Working with Events and Notifications (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Events.html)
2681// in the AWS Database Migration User Guide.
2682//
2683// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2684// with awserr.Error's Code and Message methods to get detailed information about
2685// the error.
2686//
2687// See the AWS API reference guide for AWS Database Migration Service's
2688// API operation DescribeEvents for usage and error information.
2689// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeEvents
2690func (c *DatabaseMigrationService) DescribeEvents(input *DescribeEventsInput) (*DescribeEventsOutput, error) {
2691	req, out := c.DescribeEventsRequest(input)
2692	return out, req.Send()
2693}
2694
2695// DescribeEventsWithContext is the same as DescribeEvents with the addition of
2696// the ability to pass a context and additional request options.
2697//
2698// See DescribeEvents for details on how to use this API operation.
2699//
2700// The context must be non-nil and will be used for request cancellation. If
2701// the context is nil a panic will occur. In the future the SDK may create
2702// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2703// for more information on using Contexts.
2704func (c *DatabaseMigrationService) DescribeEventsWithContext(ctx aws.Context, input *DescribeEventsInput, opts ...request.Option) (*DescribeEventsOutput, error) {
2705	req, out := c.DescribeEventsRequest(input)
2706	req.SetContext(ctx)
2707	req.ApplyOptions(opts...)
2708	return out, req.Send()
2709}
2710
2711// DescribeEventsPages iterates over the pages of a DescribeEvents operation,
2712// calling the "fn" function with the response data for each page. To stop
2713// iterating, return false from the fn function.
2714//
2715// See DescribeEvents method for more information on how to use this operation.
2716//
2717// Note: This operation can generate multiple requests to a service.
2718//
2719//    // Example iterating over at most 3 pages of a DescribeEvents operation.
2720//    pageNum := 0
2721//    err := client.DescribeEventsPages(params,
2722//        func(page *databasemigrationservice.DescribeEventsOutput, lastPage bool) bool {
2723//            pageNum++
2724//            fmt.Println(page)
2725//            return pageNum <= 3
2726//        })
2727//
2728func (c *DatabaseMigrationService) DescribeEventsPages(input *DescribeEventsInput, fn func(*DescribeEventsOutput, bool) bool) error {
2729	return c.DescribeEventsPagesWithContext(aws.BackgroundContext(), input, fn)
2730}
2731
2732// DescribeEventsPagesWithContext same as DescribeEventsPages except
2733// it takes a Context and allows setting request options on the pages.
2734//
2735// The context must be non-nil and will be used for request cancellation. If
2736// the context is nil a panic will occur. In the future the SDK may create
2737// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2738// for more information on using Contexts.
2739func (c *DatabaseMigrationService) DescribeEventsPagesWithContext(ctx aws.Context, input *DescribeEventsInput, fn func(*DescribeEventsOutput, bool) bool, opts ...request.Option) error {
2740	p := request.Pagination{
2741		NewRequest: func() (*request.Request, error) {
2742			var inCpy *DescribeEventsInput
2743			if input != nil {
2744				tmp := *input
2745				inCpy = &tmp
2746			}
2747			req, _ := c.DescribeEventsRequest(inCpy)
2748			req.SetContext(ctx)
2749			req.ApplyOptions(opts...)
2750			return req, nil
2751		},
2752	}
2753
2754	for p.Next() {
2755		if !fn(p.Page().(*DescribeEventsOutput), !p.HasNextPage()) {
2756			break
2757		}
2758	}
2759
2760	return p.Err()
2761}
2762
2763const opDescribeOrderableReplicationInstances = "DescribeOrderableReplicationInstances"
2764
2765// DescribeOrderableReplicationInstancesRequest generates a "aws/request.Request" representing the
2766// client's request for the DescribeOrderableReplicationInstances operation. The "output" return
2767// value will be populated with the request's response once the request completes
2768// successfully.
2769//
2770// Use "Send" method on the returned Request to send the API call to the service.
2771// the "output" return value is not valid until after Send returns without error.
2772//
2773// See DescribeOrderableReplicationInstances for more information on using the DescribeOrderableReplicationInstances
2774// API call, and error handling.
2775//
2776// This method is useful when you want to inject custom logic or configuration
2777// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2778//
2779//
2780//    // Example sending a request using the DescribeOrderableReplicationInstancesRequest method.
2781//    req, resp := client.DescribeOrderableReplicationInstancesRequest(params)
2782//
2783//    err := req.Send()
2784//    if err == nil { // resp is now filled
2785//        fmt.Println(resp)
2786//    }
2787//
2788// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeOrderableReplicationInstances
2789func (c *DatabaseMigrationService) DescribeOrderableReplicationInstancesRequest(input *DescribeOrderableReplicationInstancesInput) (req *request.Request, output *DescribeOrderableReplicationInstancesOutput) {
2790	op := &request.Operation{
2791		Name:       opDescribeOrderableReplicationInstances,
2792		HTTPMethod: "POST",
2793		HTTPPath:   "/",
2794		Paginator: &request.Paginator{
2795			InputTokens:     []string{"Marker"},
2796			OutputTokens:    []string{"Marker"},
2797			LimitToken:      "MaxRecords",
2798			TruncationToken: "",
2799		},
2800	}
2801
2802	if input == nil {
2803		input = &DescribeOrderableReplicationInstancesInput{}
2804	}
2805
2806	output = &DescribeOrderableReplicationInstancesOutput{}
2807	req = c.newRequest(op, input, output)
2808	return
2809}
2810
2811// DescribeOrderableReplicationInstances API operation for AWS Database Migration Service.
2812//
2813// Returns information about the replication instance types that can be created
2814// in the specified region.
2815//
2816// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2817// with awserr.Error's Code and Message methods to get detailed information about
2818// the error.
2819//
2820// See the AWS API reference guide for AWS Database Migration Service's
2821// API operation DescribeOrderableReplicationInstances for usage and error information.
2822// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeOrderableReplicationInstances
2823func (c *DatabaseMigrationService) DescribeOrderableReplicationInstances(input *DescribeOrderableReplicationInstancesInput) (*DescribeOrderableReplicationInstancesOutput, error) {
2824	req, out := c.DescribeOrderableReplicationInstancesRequest(input)
2825	return out, req.Send()
2826}
2827
2828// DescribeOrderableReplicationInstancesWithContext is the same as DescribeOrderableReplicationInstances with the addition of
2829// the ability to pass a context and additional request options.
2830//
2831// See DescribeOrderableReplicationInstances for details on how to use this API operation.
2832//
2833// The context must be non-nil and will be used for request cancellation. If
2834// the context is nil a panic will occur. In the future the SDK may create
2835// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2836// for more information on using Contexts.
2837func (c *DatabaseMigrationService) DescribeOrderableReplicationInstancesWithContext(ctx aws.Context, input *DescribeOrderableReplicationInstancesInput, opts ...request.Option) (*DescribeOrderableReplicationInstancesOutput, error) {
2838	req, out := c.DescribeOrderableReplicationInstancesRequest(input)
2839	req.SetContext(ctx)
2840	req.ApplyOptions(opts...)
2841	return out, req.Send()
2842}
2843
2844// DescribeOrderableReplicationInstancesPages iterates over the pages of a DescribeOrderableReplicationInstances operation,
2845// calling the "fn" function with the response data for each page. To stop
2846// iterating, return false from the fn function.
2847//
2848// See DescribeOrderableReplicationInstances method for more information on how to use this operation.
2849//
2850// Note: This operation can generate multiple requests to a service.
2851//
2852//    // Example iterating over at most 3 pages of a DescribeOrderableReplicationInstances operation.
2853//    pageNum := 0
2854//    err := client.DescribeOrderableReplicationInstancesPages(params,
2855//        func(page *databasemigrationservice.DescribeOrderableReplicationInstancesOutput, lastPage bool) bool {
2856//            pageNum++
2857//            fmt.Println(page)
2858//            return pageNum <= 3
2859//        })
2860//
2861func (c *DatabaseMigrationService) DescribeOrderableReplicationInstancesPages(input *DescribeOrderableReplicationInstancesInput, fn func(*DescribeOrderableReplicationInstancesOutput, bool) bool) error {
2862	return c.DescribeOrderableReplicationInstancesPagesWithContext(aws.BackgroundContext(), input, fn)
2863}
2864
2865// DescribeOrderableReplicationInstancesPagesWithContext same as DescribeOrderableReplicationInstancesPages except
2866// it takes a Context and allows setting request options on the pages.
2867//
2868// The context must be non-nil and will be used for request cancellation. If
2869// the context is nil a panic will occur. In the future the SDK may create
2870// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2871// for more information on using Contexts.
2872func (c *DatabaseMigrationService) DescribeOrderableReplicationInstancesPagesWithContext(ctx aws.Context, input *DescribeOrderableReplicationInstancesInput, fn func(*DescribeOrderableReplicationInstancesOutput, bool) bool, opts ...request.Option) error {
2873	p := request.Pagination{
2874		NewRequest: func() (*request.Request, error) {
2875			var inCpy *DescribeOrderableReplicationInstancesInput
2876			if input != nil {
2877				tmp := *input
2878				inCpy = &tmp
2879			}
2880			req, _ := c.DescribeOrderableReplicationInstancesRequest(inCpy)
2881			req.SetContext(ctx)
2882			req.ApplyOptions(opts...)
2883			return req, nil
2884		},
2885	}
2886
2887	for p.Next() {
2888		if !fn(p.Page().(*DescribeOrderableReplicationInstancesOutput), !p.HasNextPage()) {
2889			break
2890		}
2891	}
2892
2893	return p.Err()
2894}
2895
2896const opDescribePendingMaintenanceActions = "DescribePendingMaintenanceActions"
2897
2898// DescribePendingMaintenanceActionsRequest generates a "aws/request.Request" representing the
2899// client's request for the DescribePendingMaintenanceActions operation. The "output" return
2900// value will be populated with the request's response once the request completes
2901// successfully.
2902//
2903// Use "Send" method on the returned Request to send the API call to the service.
2904// the "output" return value is not valid until after Send returns without error.
2905//
2906// See DescribePendingMaintenanceActions for more information on using the DescribePendingMaintenanceActions
2907// API call, and error handling.
2908//
2909// This method is useful when you want to inject custom logic or configuration
2910// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2911//
2912//
2913//    // Example sending a request using the DescribePendingMaintenanceActionsRequest method.
2914//    req, resp := client.DescribePendingMaintenanceActionsRequest(params)
2915//
2916//    err := req.Send()
2917//    if err == nil { // resp is now filled
2918//        fmt.Println(resp)
2919//    }
2920//
2921// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribePendingMaintenanceActions
2922func (c *DatabaseMigrationService) DescribePendingMaintenanceActionsRequest(input *DescribePendingMaintenanceActionsInput) (req *request.Request, output *DescribePendingMaintenanceActionsOutput) {
2923	op := &request.Operation{
2924		Name:       opDescribePendingMaintenanceActions,
2925		HTTPMethod: "POST",
2926		HTTPPath:   "/",
2927		Paginator: &request.Paginator{
2928			InputTokens:     []string{"Marker"},
2929			OutputTokens:    []string{"Marker"},
2930			LimitToken:      "MaxRecords",
2931			TruncationToken: "",
2932		},
2933	}
2934
2935	if input == nil {
2936		input = &DescribePendingMaintenanceActionsInput{}
2937	}
2938
2939	output = &DescribePendingMaintenanceActionsOutput{}
2940	req = c.newRequest(op, input, output)
2941	return
2942}
2943
2944// DescribePendingMaintenanceActions API operation for AWS Database Migration Service.
2945//
2946// For internal use only
2947//
2948// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2949// with awserr.Error's Code and Message methods to get detailed information about
2950// the error.
2951//
2952// See the AWS API reference guide for AWS Database Migration Service's
2953// API operation DescribePendingMaintenanceActions for usage and error information.
2954//
2955// Returned Error Types:
2956//   * ResourceNotFoundFault
2957//   The resource could not be found.
2958//
2959// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribePendingMaintenanceActions
2960func (c *DatabaseMigrationService) DescribePendingMaintenanceActions(input *DescribePendingMaintenanceActionsInput) (*DescribePendingMaintenanceActionsOutput, error) {
2961	req, out := c.DescribePendingMaintenanceActionsRequest(input)
2962	return out, req.Send()
2963}
2964
2965// DescribePendingMaintenanceActionsWithContext is the same as DescribePendingMaintenanceActions with the addition of
2966// the ability to pass a context and additional request options.
2967//
2968// See DescribePendingMaintenanceActions for details on how to use this API operation.
2969//
2970// The context must be non-nil and will be used for request cancellation. If
2971// the context is nil a panic will occur. In the future the SDK may create
2972// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2973// for more information on using Contexts.
2974func (c *DatabaseMigrationService) DescribePendingMaintenanceActionsWithContext(ctx aws.Context, input *DescribePendingMaintenanceActionsInput, opts ...request.Option) (*DescribePendingMaintenanceActionsOutput, error) {
2975	req, out := c.DescribePendingMaintenanceActionsRequest(input)
2976	req.SetContext(ctx)
2977	req.ApplyOptions(opts...)
2978	return out, req.Send()
2979}
2980
2981// DescribePendingMaintenanceActionsPages iterates over the pages of a DescribePendingMaintenanceActions operation,
2982// calling the "fn" function with the response data for each page. To stop
2983// iterating, return false from the fn function.
2984//
2985// See DescribePendingMaintenanceActions method for more information on how to use this operation.
2986//
2987// Note: This operation can generate multiple requests to a service.
2988//
2989//    // Example iterating over at most 3 pages of a DescribePendingMaintenanceActions operation.
2990//    pageNum := 0
2991//    err := client.DescribePendingMaintenanceActionsPages(params,
2992//        func(page *databasemigrationservice.DescribePendingMaintenanceActionsOutput, lastPage bool) bool {
2993//            pageNum++
2994//            fmt.Println(page)
2995//            return pageNum <= 3
2996//        })
2997//
2998func (c *DatabaseMigrationService) DescribePendingMaintenanceActionsPages(input *DescribePendingMaintenanceActionsInput, fn func(*DescribePendingMaintenanceActionsOutput, bool) bool) error {
2999	return c.DescribePendingMaintenanceActionsPagesWithContext(aws.BackgroundContext(), input, fn)
3000}
3001
3002// DescribePendingMaintenanceActionsPagesWithContext same as DescribePendingMaintenanceActionsPages except
3003// it takes a Context and allows setting request options on the pages.
3004//
3005// The context must be non-nil and will be used for request cancellation. If
3006// the context is nil a panic will occur. In the future the SDK may create
3007// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3008// for more information on using Contexts.
3009func (c *DatabaseMigrationService) DescribePendingMaintenanceActionsPagesWithContext(ctx aws.Context, input *DescribePendingMaintenanceActionsInput, fn func(*DescribePendingMaintenanceActionsOutput, bool) bool, opts ...request.Option) error {
3010	p := request.Pagination{
3011		NewRequest: func() (*request.Request, error) {
3012			var inCpy *DescribePendingMaintenanceActionsInput
3013			if input != nil {
3014				tmp := *input
3015				inCpy = &tmp
3016			}
3017			req, _ := c.DescribePendingMaintenanceActionsRequest(inCpy)
3018			req.SetContext(ctx)
3019			req.ApplyOptions(opts...)
3020			return req, nil
3021		},
3022	}
3023
3024	for p.Next() {
3025		if !fn(p.Page().(*DescribePendingMaintenanceActionsOutput), !p.HasNextPage()) {
3026			break
3027		}
3028	}
3029
3030	return p.Err()
3031}
3032
3033const opDescribeRefreshSchemasStatus = "DescribeRefreshSchemasStatus"
3034
3035// DescribeRefreshSchemasStatusRequest generates a "aws/request.Request" representing the
3036// client's request for the DescribeRefreshSchemasStatus operation. The "output" return
3037// value will be populated with the request's response once the request completes
3038// successfully.
3039//
3040// Use "Send" method on the returned Request to send the API call to the service.
3041// the "output" return value is not valid until after Send returns without error.
3042//
3043// See DescribeRefreshSchemasStatus for more information on using the DescribeRefreshSchemasStatus
3044// API call, and error handling.
3045//
3046// This method is useful when you want to inject custom logic or configuration
3047// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3048//
3049//
3050//    // Example sending a request using the DescribeRefreshSchemasStatusRequest method.
3051//    req, resp := client.DescribeRefreshSchemasStatusRequest(params)
3052//
3053//    err := req.Send()
3054//    if err == nil { // resp is now filled
3055//        fmt.Println(resp)
3056//    }
3057//
3058// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeRefreshSchemasStatus
3059func (c *DatabaseMigrationService) DescribeRefreshSchemasStatusRequest(input *DescribeRefreshSchemasStatusInput) (req *request.Request, output *DescribeRefreshSchemasStatusOutput) {
3060	op := &request.Operation{
3061		Name:       opDescribeRefreshSchemasStatus,
3062		HTTPMethod: "POST",
3063		HTTPPath:   "/",
3064	}
3065
3066	if input == nil {
3067		input = &DescribeRefreshSchemasStatusInput{}
3068	}
3069
3070	output = &DescribeRefreshSchemasStatusOutput{}
3071	req = c.newRequest(op, input, output)
3072	return
3073}
3074
3075// DescribeRefreshSchemasStatus API operation for AWS Database Migration Service.
3076//
3077// Returns the status of the RefreshSchemas operation.
3078//
3079// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3080// with awserr.Error's Code and Message methods to get detailed information about
3081// the error.
3082//
3083// See the AWS API reference guide for AWS Database Migration Service's
3084// API operation DescribeRefreshSchemasStatus for usage and error information.
3085//
3086// Returned Error Types:
3087//   * InvalidResourceStateFault
3088//   The resource is in a state that prevents it from being used for database
3089//   migration.
3090//
3091//   * ResourceNotFoundFault
3092//   The resource could not be found.
3093//
3094// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeRefreshSchemasStatus
3095func (c *DatabaseMigrationService) DescribeRefreshSchemasStatus(input *DescribeRefreshSchemasStatusInput) (*DescribeRefreshSchemasStatusOutput, error) {
3096	req, out := c.DescribeRefreshSchemasStatusRequest(input)
3097	return out, req.Send()
3098}
3099
3100// DescribeRefreshSchemasStatusWithContext is the same as DescribeRefreshSchemasStatus with the addition of
3101// the ability to pass a context and additional request options.
3102//
3103// See DescribeRefreshSchemasStatus for details on how to use this API operation.
3104//
3105// The context must be non-nil and will be used for request cancellation. If
3106// the context is nil a panic will occur. In the future the SDK may create
3107// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3108// for more information on using Contexts.
3109func (c *DatabaseMigrationService) DescribeRefreshSchemasStatusWithContext(ctx aws.Context, input *DescribeRefreshSchemasStatusInput, opts ...request.Option) (*DescribeRefreshSchemasStatusOutput, error) {
3110	req, out := c.DescribeRefreshSchemasStatusRequest(input)
3111	req.SetContext(ctx)
3112	req.ApplyOptions(opts...)
3113	return out, req.Send()
3114}
3115
3116const opDescribeReplicationInstanceTaskLogs = "DescribeReplicationInstanceTaskLogs"
3117
3118// DescribeReplicationInstanceTaskLogsRequest generates a "aws/request.Request" representing the
3119// client's request for the DescribeReplicationInstanceTaskLogs operation. The "output" return
3120// value will be populated with the request's response once the request completes
3121// successfully.
3122//
3123// Use "Send" method on the returned Request to send the API call to the service.
3124// the "output" return value is not valid until after Send returns without error.
3125//
3126// See DescribeReplicationInstanceTaskLogs for more information on using the DescribeReplicationInstanceTaskLogs
3127// API call, and error handling.
3128//
3129// This method is useful when you want to inject custom logic or configuration
3130// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3131//
3132//
3133//    // Example sending a request using the DescribeReplicationInstanceTaskLogsRequest method.
3134//    req, resp := client.DescribeReplicationInstanceTaskLogsRequest(params)
3135//
3136//    err := req.Send()
3137//    if err == nil { // resp is now filled
3138//        fmt.Println(resp)
3139//    }
3140//
3141// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeReplicationInstanceTaskLogs
3142func (c *DatabaseMigrationService) DescribeReplicationInstanceTaskLogsRequest(input *DescribeReplicationInstanceTaskLogsInput) (req *request.Request, output *DescribeReplicationInstanceTaskLogsOutput) {
3143	op := &request.Operation{
3144		Name:       opDescribeReplicationInstanceTaskLogs,
3145		HTTPMethod: "POST",
3146		HTTPPath:   "/",
3147		Paginator: &request.Paginator{
3148			InputTokens:     []string{"Marker"},
3149			OutputTokens:    []string{"Marker"},
3150			LimitToken:      "MaxRecords",
3151			TruncationToken: "",
3152		},
3153	}
3154
3155	if input == nil {
3156		input = &DescribeReplicationInstanceTaskLogsInput{}
3157	}
3158
3159	output = &DescribeReplicationInstanceTaskLogsOutput{}
3160	req = c.newRequest(op, input, output)
3161	return
3162}
3163
3164// DescribeReplicationInstanceTaskLogs API operation for AWS Database Migration Service.
3165//
3166// Returns information about the task logs for the specified task.
3167//
3168// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3169// with awserr.Error's Code and Message methods to get detailed information about
3170// the error.
3171//
3172// See the AWS API reference guide for AWS Database Migration Service's
3173// API operation DescribeReplicationInstanceTaskLogs for usage and error information.
3174//
3175// Returned Error Types:
3176//   * ResourceNotFoundFault
3177//   The resource could not be found.
3178//
3179//   * InvalidResourceStateFault
3180//   The resource is in a state that prevents it from being used for database
3181//   migration.
3182//
3183// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeReplicationInstanceTaskLogs
3184func (c *DatabaseMigrationService) DescribeReplicationInstanceTaskLogs(input *DescribeReplicationInstanceTaskLogsInput) (*DescribeReplicationInstanceTaskLogsOutput, error) {
3185	req, out := c.DescribeReplicationInstanceTaskLogsRequest(input)
3186	return out, req.Send()
3187}
3188
3189// DescribeReplicationInstanceTaskLogsWithContext is the same as DescribeReplicationInstanceTaskLogs with the addition of
3190// the ability to pass a context and additional request options.
3191//
3192// See DescribeReplicationInstanceTaskLogs for details on how to use this API operation.
3193//
3194// The context must be non-nil and will be used for request cancellation. If
3195// the context is nil a panic will occur. In the future the SDK may create
3196// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3197// for more information on using Contexts.
3198func (c *DatabaseMigrationService) DescribeReplicationInstanceTaskLogsWithContext(ctx aws.Context, input *DescribeReplicationInstanceTaskLogsInput, opts ...request.Option) (*DescribeReplicationInstanceTaskLogsOutput, error) {
3199	req, out := c.DescribeReplicationInstanceTaskLogsRequest(input)
3200	req.SetContext(ctx)
3201	req.ApplyOptions(opts...)
3202	return out, req.Send()
3203}
3204
3205// DescribeReplicationInstanceTaskLogsPages iterates over the pages of a DescribeReplicationInstanceTaskLogs operation,
3206// calling the "fn" function with the response data for each page. To stop
3207// iterating, return false from the fn function.
3208//
3209// See DescribeReplicationInstanceTaskLogs method for more information on how to use this operation.
3210//
3211// Note: This operation can generate multiple requests to a service.
3212//
3213//    // Example iterating over at most 3 pages of a DescribeReplicationInstanceTaskLogs operation.
3214//    pageNum := 0
3215//    err := client.DescribeReplicationInstanceTaskLogsPages(params,
3216//        func(page *databasemigrationservice.DescribeReplicationInstanceTaskLogsOutput, lastPage bool) bool {
3217//            pageNum++
3218//            fmt.Println(page)
3219//            return pageNum <= 3
3220//        })
3221//
3222func (c *DatabaseMigrationService) DescribeReplicationInstanceTaskLogsPages(input *DescribeReplicationInstanceTaskLogsInput, fn func(*DescribeReplicationInstanceTaskLogsOutput, bool) bool) error {
3223	return c.DescribeReplicationInstanceTaskLogsPagesWithContext(aws.BackgroundContext(), input, fn)
3224}
3225
3226// DescribeReplicationInstanceTaskLogsPagesWithContext same as DescribeReplicationInstanceTaskLogsPages except
3227// it takes a Context and allows setting request options on the pages.
3228//
3229// The context must be non-nil and will be used for request cancellation. If
3230// the context is nil a panic will occur. In the future the SDK may create
3231// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3232// for more information on using Contexts.
3233func (c *DatabaseMigrationService) DescribeReplicationInstanceTaskLogsPagesWithContext(ctx aws.Context, input *DescribeReplicationInstanceTaskLogsInput, fn func(*DescribeReplicationInstanceTaskLogsOutput, bool) bool, opts ...request.Option) error {
3234	p := request.Pagination{
3235		NewRequest: func() (*request.Request, error) {
3236			var inCpy *DescribeReplicationInstanceTaskLogsInput
3237			if input != nil {
3238				tmp := *input
3239				inCpy = &tmp
3240			}
3241			req, _ := c.DescribeReplicationInstanceTaskLogsRequest(inCpy)
3242			req.SetContext(ctx)
3243			req.ApplyOptions(opts...)
3244			return req, nil
3245		},
3246	}
3247
3248	for p.Next() {
3249		if !fn(p.Page().(*DescribeReplicationInstanceTaskLogsOutput), !p.HasNextPage()) {
3250			break
3251		}
3252	}
3253
3254	return p.Err()
3255}
3256
3257const opDescribeReplicationInstances = "DescribeReplicationInstances"
3258
3259// DescribeReplicationInstancesRequest generates a "aws/request.Request" representing the
3260// client's request for the DescribeReplicationInstances operation. The "output" return
3261// value will be populated with the request's response once the request completes
3262// successfully.
3263//
3264// Use "Send" method on the returned Request to send the API call to the service.
3265// the "output" return value is not valid until after Send returns without error.
3266//
3267// See DescribeReplicationInstances for more information on using the DescribeReplicationInstances
3268// API call, and error handling.
3269//
3270// This method is useful when you want to inject custom logic or configuration
3271// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3272//
3273//
3274//    // Example sending a request using the DescribeReplicationInstancesRequest method.
3275//    req, resp := client.DescribeReplicationInstancesRequest(params)
3276//
3277//    err := req.Send()
3278//    if err == nil { // resp is now filled
3279//        fmt.Println(resp)
3280//    }
3281//
3282// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeReplicationInstances
3283func (c *DatabaseMigrationService) DescribeReplicationInstancesRequest(input *DescribeReplicationInstancesInput) (req *request.Request, output *DescribeReplicationInstancesOutput) {
3284	op := &request.Operation{
3285		Name:       opDescribeReplicationInstances,
3286		HTTPMethod: "POST",
3287		HTTPPath:   "/",
3288		Paginator: &request.Paginator{
3289			InputTokens:     []string{"Marker"},
3290			OutputTokens:    []string{"Marker"},
3291			LimitToken:      "MaxRecords",
3292			TruncationToken: "",
3293		},
3294	}
3295
3296	if input == nil {
3297		input = &DescribeReplicationInstancesInput{}
3298	}
3299
3300	output = &DescribeReplicationInstancesOutput{}
3301	req = c.newRequest(op, input, output)
3302	return
3303}
3304
3305// DescribeReplicationInstances API operation for AWS Database Migration Service.
3306//
3307// Returns information about replication instances for your account in the current
3308// region.
3309//
3310// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3311// with awserr.Error's Code and Message methods to get detailed information about
3312// the error.
3313//
3314// See the AWS API reference guide for AWS Database Migration Service's
3315// API operation DescribeReplicationInstances for usage and error information.
3316//
3317// Returned Error Types:
3318//   * ResourceNotFoundFault
3319//   The resource could not be found.
3320//
3321// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeReplicationInstances
3322func (c *DatabaseMigrationService) DescribeReplicationInstances(input *DescribeReplicationInstancesInput) (*DescribeReplicationInstancesOutput, error) {
3323	req, out := c.DescribeReplicationInstancesRequest(input)
3324	return out, req.Send()
3325}
3326
3327// DescribeReplicationInstancesWithContext is the same as DescribeReplicationInstances with the addition of
3328// the ability to pass a context and additional request options.
3329//
3330// See DescribeReplicationInstances for details on how to use this API operation.
3331//
3332// The context must be non-nil and will be used for request cancellation. If
3333// the context is nil a panic will occur. In the future the SDK may create
3334// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3335// for more information on using Contexts.
3336func (c *DatabaseMigrationService) DescribeReplicationInstancesWithContext(ctx aws.Context, input *DescribeReplicationInstancesInput, opts ...request.Option) (*DescribeReplicationInstancesOutput, error) {
3337	req, out := c.DescribeReplicationInstancesRequest(input)
3338	req.SetContext(ctx)
3339	req.ApplyOptions(opts...)
3340	return out, req.Send()
3341}
3342
3343// DescribeReplicationInstancesPages iterates over the pages of a DescribeReplicationInstances operation,
3344// calling the "fn" function with the response data for each page. To stop
3345// iterating, return false from the fn function.
3346//
3347// See DescribeReplicationInstances method for more information on how to use this operation.
3348//
3349// Note: This operation can generate multiple requests to a service.
3350//
3351//    // Example iterating over at most 3 pages of a DescribeReplicationInstances operation.
3352//    pageNum := 0
3353//    err := client.DescribeReplicationInstancesPages(params,
3354//        func(page *databasemigrationservice.DescribeReplicationInstancesOutput, lastPage bool) bool {
3355//            pageNum++
3356//            fmt.Println(page)
3357//            return pageNum <= 3
3358//        })
3359//
3360func (c *DatabaseMigrationService) DescribeReplicationInstancesPages(input *DescribeReplicationInstancesInput, fn func(*DescribeReplicationInstancesOutput, bool) bool) error {
3361	return c.DescribeReplicationInstancesPagesWithContext(aws.BackgroundContext(), input, fn)
3362}
3363
3364// DescribeReplicationInstancesPagesWithContext same as DescribeReplicationInstancesPages except
3365// it takes a Context and allows setting request options on the pages.
3366//
3367// The context must be non-nil and will be used for request cancellation. If
3368// the context is nil a panic will occur. In the future the SDK may create
3369// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3370// for more information on using Contexts.
3371func (c *DatabaseMigrationService) DescribeReplicationInstancesPagesWithContext(ctx aws.Context, input *DescribeReplicationInstancesInput, fn func(*DescribeReplicationInstancesOutput, bool) bool, opts ...request.Option) error {
3372	p := request.Pagination{
3373		NewRequest: func() (*request.Request, error) {
3374			var inCpy *DescribeReplicationInstancesInput
3375			if input != nil {
3376				tmp := *input
3377				inCpy = &tmp
3378			}
3379			req, _ := c.DescribeReplicationInstancesRequest(inCpy)
3380			req.SetContext(ctx)
3381			req.ApplyOptions(opts...)
3382			return req, nil
3383		},
3384	}
3385
3386	for p.Next() {
3387		if !fn(p.Page().(*DescribeReplicationInstancesOutput), !p.HasNextPage()) {
3388			break
3389		}
3390	}
3391
3392	return p.Err()
3393}
3394
3395const opDescribeReplicationSubnetGroups = "DescribeReplicationSubnetGroups"
3396
3397// DescribeReplicationSubnetGroupsRequest generates a "aws/request.Request" representing the
3398// client's request for the DescribeReplicationSubnetGroups operation. The "output" return
3399// value will be populated with the request's response once the request completes
3400// successfully.
3401//
3402// Use "Send" method on the returned Request to send the API call to the service.
3403// the "output" return value is not valid until after Send returns without error.
3404//
3405// See DescribeReplicationSubnetGroups for more information on using the DescribeReplicationSubnetGroups
3406// API call, and error handling.
3407//
3408// This method is useful when you want to inject custom logic or configuration
3409// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3410//
3411//
3412//    // Example sending a request using the DescribeReplicationSubnetGroupsRequest method.
3413//    req, resp := client.DescribeReplicationSubnetGroupsRequest(params)
3414//
3415//    err := req.Send()
3416//    if err == nil { // resp is now filled
3417//        fmt.Println(resp)
3418//    }
3419//
3420// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeReplicationSubnetGroups
3421func (c *DatabaseMigrationService) DescribeReplicationSubnetGroupsRequest(input *DescribeReplicationSubnetGroupsInput) (req *request.Request, output *DescribeReplicationSubnetGroupsOutput) {
3422	op := &request.Operation{
3423		Name:       opDescribeReplicationSubnetGroups,
3424		HTTPMethod: "POST",
3425		HTTPPath:   "/",
3426		Paginator: &request.Paginator{
3427			InputTokens:     []string{"Marker"},
3428			OutputTokens:    []string{"Marker"},
3429			LimitToken:      "MaxRecords",
3430			TruncationToken: "",
3431		},
3432	}
3433
3434	if input == nil {
3435		input = &DescribeReplicationSubnetGroupsInput{}
3436	}
3437
3438	output = &DescribeReplicationSubnetGroupsOutput{}
3439	req = c.newRequest(op, input, output)
3440	return
3441}
3442
3443// DescribeReplicationSubnetGroups API operation for AWS Database Migration Service.
3444//
3445// Returns information about the replication subnet groups.
3446//
3447// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3448// with awserr.Error's Code and Message methods to get detailed information about
3449// the error.
3450//
3451// See the AWS API reference guide for AWS Database Migration Service's
3452// API operation DescribeReplicationSubnetGroups for usage and error information.
3453//
3454// Returned Error Types:
3455//   * ResourceNotFoundFault
3456//   The resource could not be found.
3457//
3458// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeReplicationSubnetGroups
3459func (c *DatabaseMigrationService) DescribeReplicationSubnetGroups(input *DescribeReplicationSubnetGroupsInput) (*DescribeReplicationSubnetGroupsOutput, error) {
3460	req, out := c.DescribeReplicationSubnetGroupsRequest(input)
3461	return out, req.Send()
3462}
3463
3464// DescribeReplicationSubnetGroupsWithContext is the same as DescribeReplicationSubnetGroups with the addition of
3465// the ability to pass a context and additional request options.
3466//
3467// See DescribeReplicationSubnetGroups for details on how to use this API operation.
3468//
3469// The context must be non-nil and will be used for request cancellation. If
3470// the context is nil a panic will occur. In the future the SDK may create
3471// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3472// for more information on using Contexts.
3473func (c *DatabaseMigrationService) DescribeReplicationSubnetGroupsWithContext(ctx aws.Context, input *DescribeReplicationSubnetGroupsInput, opts ...request.Option) (*DescribeReplicationSubnetGroupsOutput, error) {
3474	req, out := c.DescribeReplicationSubnetGroupsRequest(input)
3475	req.SetContext(ctx)
3476	req.ApplyOptions(opts...)
3477	return out, req.Send()
3478}
3479
3480// DescribeReplicationSubnetGroupsPages iterates over the pages of a DescribeReplicationSubnetGroups operation,
3481// calling the "fn" function with the response data for each page. To stop
3482// iterating, return false from the fn function.
3483//
3484// See DescribeReplicationSubnetGroups method for more information on how to use this operation.
3485//
3486// Note: This operation can generate multiple requests to a service.
3487//
3488//    // Example iterating over at most 3 pages of a DescribeReplicationSubnetGroups operation.
3489//    pageNum := 0
3490//    err := client.DescribeReplicationSubnetGroupsPages(params,
3491//        func(page *databasemigrationservice.DescribeReplicationSubnetGroupsOutput, lastPage bool) bool {
3492//            pageNum++
3493//            fmt.Println(page)
3494//            return pageNum <= 3
3495//        })
3496//
3497func (c *DatabaseMigrationService) DescribeReplicationSubnetGroupsPages(input *DescribeReplicationSubnetGroupsInput, fn func(*DescribeReplicationSubnetGroupsOutput, bool) bool) error {
3498	return c.DescribeReplicationSubnetGroupsPagesWithContext(aws.BackgroundContext(), input, fn)
3499}
3500
3501// DescribeReplicationSubnetGroupsPagesWithContext same as DescribeReplicationSubnetGroupsPages except
3502// it takes a Context and allows setting request options on the pages.
3503//
3504// The context must be non-nil and will be used for request cancellation. If
3505// the context is nil a panic will occur. In the future the SDK may create
3506// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3507// for more information on using Contexts.
3508func (c *DatabaseMigrationService) DescribeReplicationSubnetGroupsPagesWithContext(ctx aws.Context, input *DescribeReplicationSubnetGroupsInput, fn func(*DescribeReplicationSubnetGroupsOutput, bool) bool, opts ...request.Option) error {
3509	p := request.Pagination{
3510		NewRequest: func() (*request.Request, error) {
3511			var inCpy *DescribeReplicationSubnetGroupsInput
3512			if input != nil {
3513				tmp := *input
3514				inCpy = &tmp
3515			}
3516			req, _ := c.DescribeReplicationSubnetGroupsRequest(inCpy)
3517			req.SetContext(ctx)
3518			req.ApplyOptions(opts...)
3519			return req, nil
3520		},
3521	}
3522
3523	for p.Next() {
3524		if !fn(p.Page().(*DescribeReplicationSubnetGroupsOutput), !p.HasNextPage()) {
3525			break
3526		}
3527	}
3528
3529	return p.Err()
3530}
3531
3532const opDescribeReplicationTaskAssessmentResults = "DescribeReplicationTaskAssessmentResults"
3533
3534// DescribeReplicationTaskAssessmentResultsRequest generates a "aws/request.Request" representing the
3535// client's request for the DescribeReplicationTaskAssessmentResults operation. The "output" return
3536// value will be populated with the request's response once the request completes
3537// successfully.
3538//
3539// Use "Send" method on the returned Request to send the API call to the service.
3540// the "output" return value is not valid until after Send returns without error.
3541//
3542// See DescribeReplicationTaskAssessmentResults for more information on using the DescribeReplicationTaskAssessmentResults
3543// API call, and error handling.
3544//
3545// This method is useful when you want to inject custom logic or configuration
3546// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3547//
3548//
3549//    // Example sending a request using the DescribeReplicationTaskAssessmentResultsRequest method.
3550//    req, resp := client.DescribeReplicationTaskAssessmentResultsRequest(params)
3551//
3552//    err := req.Send()
3553//    if err == nil { // resp is now filled
3554//        fmt.Println(resp)
3555//    }
3556//
3557// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeReplicationTaskAssessmentResults
3558func (c *DatabaseMigrationService) DescribeReplicationTaskAssessmentResultsRequest(input *DescribeReplicationTaskAssessmentResultsInput) (req *request.Request, output *DescribeReplicationTaskAssessmentResultsOutput) {
3559	op := &request.Operation{
3560		Name:       opDescribeReplicationTaskAssessmentResults,
3561		HTTPMethod: "POST",
3562		HTTPPath:   "/",
3563		Paginator: &request.Paginator{
3564			InputTokens:     []string{"Marker"},
3565			OutputTokens:    []string{"Marker"},
3566			LimitToken:      "MaxRecords",
3567			TruncationToken: "",
3568		},
3569	}
3570
3571	if input == nil {
3572		input = &DescribeReplicationTaskAssessmentResultsInput{}
3573	}
3574
3575	output = &DescribeReplicationTaskAssessmentResultsOutput{}
3576	req = c.newRequest(op, input, output)
3577	return
3578}
3579
3580// DescribeReplicationTaskAssessmentResults API operation for AWS Database Migration Service.
3581//
3582// Returns the task assessment results from Amazon S3. This action always returns
3583// the latest results.
3584//
3585// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3586// with awserr.Error's Code and Message methods to get detailed information about
3587// the error.
3588//
3589// See the AWS API reference guide for AWS Database Migration Service's
3590// API operation DescribeReplicationTaskAssessmentResults for usage and error information.
3591//
3592// Returned Error Types:
3593//   * ResourceNotFoundFault
3594//   The resource could not be found.
3595//
3596// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeReplicationTaskAssessmentResults
3597func (c *DatabaseMigrationService) DescribeReplicationTaskAssessmentResults(input *DescribeReplicationTaskAssessmentResultsInput) (*DescribeReplicationTaskAssessmentResultsOutput, error) {
3598	req, out := c.DescribeReplicationTaskAssessmentResultsRequest(input)
3599	return out, req.Send()
3600}
3601
3602// DescribeReplicationTaskAssessmentResultsWithContext is the same as DescribeReplicationTaskAssessmentResults with the addition of
3603// the ability to pass a context and additional request options.
3604//
3605// See DescribeReplicationTaskAssessmentResults for details on how to use this API operation.
3606//
3607// The context must be non-nil and will be used for request cancellation. If
3608// the context is nil a panic will occur. In the future the SDK may create
3609// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3610// for more information on using Contexts.
3611func (c *DatabaseMigrationService) DescribeReplicationTaskAssessmentResultsWithContext(ctx aws.Context, input *DescribeReplicationTaskAssessmentResultsInput, opts ...request.Option) (*DescribeReplicationTaskAssessmentResultsOutput, error) {
3612	req, out := c.DescribeReplicationTaskAssessmentResultsRequest(input)
3613	req.SetContext(ctx)
3614	req.ApplyOptions(opts...)
3615	return out, req.Send()
3616}
3617
3618// DescribeReplicationTaskAssessmentResultsPages iterates over the pages of a DescribeReplicationTaskAssessmentResults operation,
3619// calling the "fn" function with the response data for each page. To stop
3620// iterating, return false from the fn function.
3621//
3622// See DescribeReplicationTaskAssessmentResults method for more information on how to use this operation.
3623//
3624// Note: This operation can generate multiple requests to a service.
3625//
3626//    // Example iterating over at most 3 pages of a DescribeReplicationTaskAssessmentResults operation.
3627//    pageNum := 0
3628//    err := client.DescribeReplicationTaskAssessmentResultsPages(params,
3629//        func(page *databasemigrationservice.DescribeReplicationTaskAssessmentResultsOutput, lastPage bool) bool {
3630//            pageNum++
3631//            fmt.Println(page)
3632//            return pageNum <= 3
3633//        })
3634//
3635func (c *DatabaseMigrationService) DescribeReplicationTaskAssessmentResultsPages(input *DescribeReplicationTaskAssessmentResultsInput, fn func(*DescribeReplicationTaskAssessmentResultsOutput, bool) bool) error {
3636	return c.DescribeReplicationTaskAssessmentResultsPagesWithContext(aws.BackgroundContext(), input, fn)
3637}
3638
3639// DescribeReplicationTaskAssessmentResultsPagesWithContext same as DescribeReplicationTaskAssessmentResultsPages except
3640// it takes a Context and allows setting request options on the pages.
3641//
3642// The context must be non-nil and will be used for request cancellation. If
3643// the context is nil a panic will occur. In the future the SDK may create
3644// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3645// for more information on using Contexts.
3646func (c *DatabaseMigrationService) DescribeReplicationTaskAssessmentResultsPagesWithContext(ctx aws.Context, input *DescribeReplicationTaskAssessmentResultsInput, fn func(*DescribeReplicationTaskAssessmentResultsOutput, bool) bool, opts ...request.Option) error {
3647	p := request.Pagination{
3648		NewRequest: func() (*request.Request, error) {
3649			var inCpy *DescribeReplicationTaskAssessmentResultsInput
3650			if input != nil {
3651				tmp := *input
3652				inCpy = &tmp
3653			}
3654			req, _ := c.DescribeReplicationTaskAssessmentResultsRequest(inCpy)
3655			req.SetContext(ctx)
3656			req.ApplyOptions(opts...)
3657			return req, nil
3658		},
3659	}
3660
3661	for p.Next() {
3662		if !fn(p.Page().(*DescribeReplicationTaskAssessmentResultsOutput), !p.HasNextPage()) {
3663			break
3664		}
3665	}
3666
3667	return p.Err()
3668}
3669
3670const opDescribeReplicationTaskAssessmentRuns = "DescribeReplicationTaskAssessmentRuns"
3671
3672// DescribeReplicationTaskAssessmentRunsRequest generates a "aws/request.Request" representing the
3673// client's request for the DescribeReplicationTaskAssessmentRuns operation. The "output" return
3674// value will be populated with the request's response once the request completes
3675// successfully.
3676//
3677// Use "Send" method on the returned Request to send the API call to the service.
3678// the "output" return value is not valid until after Send returns without error.
3679//
3680// See DescribeReplicationTaskAssessmentRuns for more information on using the DescribeReplicationTaskAssessmentRuns
3681// API call, and error handling.
3682//
3683// This method is useful when you want to inject custom logic or configuration
3684// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3685//
3686//
3687//    // Example sending a request using the DescribeReplicationTaskAssessmentRunsRequest method.
3688//    req, resp := client.DescribeReplicationTaskAssessmentRunsRequest(params)
3689//
3690//    err := req.Send()
3691//    if err == nil { // resp is now filled
3692//        fmt.Println(resp)
3693//    }
3694//
3695// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeReplicationTaskAssessmentRuns
3696func (c *DatabaseMigrationService) DescribeReplicationTaskAssessmentRunsRequest(input *DescribeReplicationTaskAssessmentRunsInput) (req *request.Request, output *DescribeReplicationTaskAssessmentRunsOutput) {
3697	op := &request.Operation{
3698		Name:       opDescribeReplicationTaskAssessmentRuns,
3699		HTTPMethod: "POST",
3700		HTTPPath:   "/",
3701		Paginator: &request.Paginator{
3702			InputTokens:     []string{"Marker"},
3703			OutputTokens:    []string{"Marker"},
3704			LimitToken:      "MaxRecords",
3705			TruncationToken: "",
3706		},
3707	}
3708
3709	if input == nil {
3710		input = &DescribeReplicationTaskAssessmentRunsInput{}
3711	}
3712
3713	output = &DescribeReplicationTaskAssessmentRunsOutput{}
3714	req = c.newRequest(op, input, output)
3715	return
3716}
3717
3718// DescribeReplicationTaskAssessmentRuns API operation for AWS Database Migration Service.
3719//
3720// Returns a paginated list of premigration assessment runs based on filter
3721// settings.
3722//
3723// These filter settings can specify a combination of premigration assessment
3724// runs, migration tasks, replication instances, and assessment run status values.
3725//
3726// This operation doesn't return information about individual assessments. For
3727// this information, see the DescribeReplicationTaskIndividualAssessments operation.
3728//
3729// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3730// with awserr.Error's Code and Message methods to get detailed information about
3731// the error.
3732//
3733// See the AWS API reference guide for AWS Database Migration Service's
3734// API operation DescribeReplicationTaskAssessmentRuns for usage and error information.
3735//
3736// Returned Error Types:
3737//   * ResourceNotFoundFault
3738//   The resource could not be found.
3739//
3740// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeReplicationTaskAssessmentRuns
3741func (c *DatabaseMigrationService) DescribeReplicationTaskAssessmentRuns(input *DescribeReplicationTaskAssessmentRunsInput) (*DescribeReplicationTaskAssessmentRunsOutput, error) {
3742	req, out := c.DescribeReplicationTaskAssessmentRunsRequest(input)
3743	return out, req.Send()
3744}
3745
3746// DescribeReplicationTaskAssessmentRunsWithContext is the same as DescribeReplicationTaskAssessmentRuns with the addition of
3747// the ability to pass a context and additional request options.
3748//
3749// See DescribeReplicationTaskAssessmentRuns for details on how to use this API operation.
3750//
3751// The context must be non-nil and will be used for request cancellation. If
3752// the context is nil a panic will occur. In the future the SDK may create
3753// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3754// for more information on using Contexts.
3755func (c *DatabaseMigrationService) DescribeReplicationTaskAssessmentRunsWithContext(ctx aws.Context, input *DescribeReplicationTaskAssessmentRunsInput, opts ...request.Option) (*DescribeReplicationTaskAssessmentRunsOutput, error) {
3756	req, out := c.DescribeReplicationTaskAssessmentRunsRequest(input)
3757	req.SetContext(ctx)
3758	req.ApplyOptions(opts...)
3759	return out, req.Send()
3760}
3761
3762// DescribeReplicationTaskAssessmentRunsPages iterates over the pages of a DescribeReplicationTaskAssessmentRuns operation,
3763// calling the "fn" function with the response data for each page. To stop
3764// iterating, return false from the fn function.
3765//
3766// See DescribeReplicationTaskAssessmentRuns method for more information on how to use this operation.
3767//
3768// Note: This operation can generate multiple requests to a service.
3769//
3770//    // Example iterating over at most 3 pages of a DescribeReplicationTaskAssessmentRuns operation.
3771//    pageNum := 0
3772//    err := client.DescribeReplicationTaskAssessmentRunsPages(params,
3773//        func(page *databasemigrationservice.DescribeReplicationTaskAssessmentRunsOutput, lastPage bool) bool {
3774//            pageNum++
3775//            fmt.Println(page)
3776//            return pageNum <= 3
3777//        })
3778//
3779func (c *DatabaseMigrationService) DescribeReplicationTaskAssessmentRunsPages(input *DescribeReplicationTaskAssessmentRunsInput, fn func(*DescribeReplicationTaskAssessmentRunsOutput, bool) bool) error {
3780	return c.DescribeReplicationTaskAssessmentRunsPagesWithContext(aws.BackgroundContext(), input, fn)
3781}
3782
3783// DescribeReplicationTaskAssessmentRunsPagesWithContext same as DescribeReplicationTaskAssessmentRunsPages except
3784// it takes a Context and allows setting request options on the pages.
3785//
3786// The context must be non-nil and will be used for request cancellation. If
3787// the context is nil a panic will occur. In the future the SDK may create
3788// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3789// for more information on using Contexts.
3790func (c *DatabaseMigrationService) DescribeReplicationTaskAssessmentRunsPagesWithContext(ctx aws.Context, input *DescribeReplicationTaskAssessmentRunsInput, fn func(*DescribeReplicationTaskAssessmentRunsOutput, bool) bool, opts ...request.Option) error {
3791	p := request.Pagination{
3792		NewRequest: func() (*request.Request, error) {
3793			var inCpy *DescribeReplicationTaskAssessmentRunsInput
3794			if input != nil {
3795				tmp := *input
3796				inCpy = &tmp
3797			}
3798			req, _ := c.DescribeReplicationTaskAssessmentRunsRequest(inCpy)
3799			req.SetContext(ctx)
3800			req.ApplyOptions(opts...)
3801			return req, nil
3802		},
3803	}
3804
3805	for p.Next() {
3806		if !fn(p.Page().(*DescribeReplicationTaskAssessmentRunsOutput), !p.HasNextPage()) {
3807			break
3808		}
3809	}
3810
3811	return p.Err()
3812}
3813
3814const opDescribeReplicationTaskIndividualAssessments = "DescribeReplicationTaskIndividualAssessments"
3815
3816// DescribeReplicationTaskIndividualAssessmentsRequest generates a "aws/request.Request" representing the
3817// client's request for the DescribeReplicationTaskIndividualAssessments operation. The "output" return
3818// value will be populated with the request's response once the request completes
3819// successfully.
3820//
3821// Use "Send" method on the returned Request to send the API call to the service.
3822// the "output" return value is not valid until after Send returns without error.
3823//
3824// See DescribeReplicationTaskIndividualAssessments for more information on using the DescribeReplicationTaskIndividualAssessments
3825// API call, and error handling.
3826//
3827// This method is useful when you want to inject custom logic or configuration
3828// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3829//
3830//
3831//    // Example sending a request using the DescribeReplicationTaskIndividualAssessmentsRequest method.
3832//    req, resp := client.DescribeReplicationTaskIndividualAssessmentsRequest(params)
3833//
3834//    err := req.Send()
3835//    if err == nil { // resp is now filled
3836//        fmt.Println(resp)
3837//    }
3838//
3839// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeReplicationTaskIndividualAssessments
3840func (c *DatabaseMigrationService) DescribeReplicationTaskIndividualAssessmentsRequest(input *DescribeReplicationTaskIndividualAssessmentsInput) (req *request.Request, output *DescribeReplicationTaskIndividualAssessmentsOutput) {
3841	op := &request.Operation{
3842		Name:       opDescribeReplicationTaskIndividualAssessments,
3843		HTTPMethod: "POST",
3844		HTTPPath:   "/",
3845		Paginator: &request.Paginator{
3846			InputTokens:     []string{"Marker"},
3847			OutputTokens:    []string{"Marker"},
3848			LimitToken:      "MaxRecords",
3849			TruncationToken: "",
3850		},
3851	}
3852
3853	if input == nil {
3854		input = &DescribeReplicationTaskIndividualAssessmentsInput{}
3855	}
3856
3857	output = &DescribeReplicationTaskIndividualAssessmentsOutput{}
3858	req = c.newRequest(op, input, output)
3859	return
3860}
3861
3862// DescribeReplicationTaskIndividualAssessments API operation for AWS Database Migration Service.
3863//
3864// Returns a paginated list of individual assessments based on filter settings.
3865//
3866// These filter settings can specify a combination of premigration assessment
3867// runs, migration tasks, and assessment status values.
3868//
3869// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3870// with awserr.Error's Code and Message methods to get detailed information about
3871// the error.
3872//
3873// See the AWS API reference guide for AWS Database Migration Service's
3874// API operation DescribeReplicationTaskIndividualAssessments for usage and error information.
3875//
3876// Returned Error Types:
3877//   * ResourceNotFoundFault
3878//   The resource could not be found.
3879//
3880// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeReplicationTaskIndividualAssessments
3881func (c *DatabaseMigrationService) DescribeReplicationTaskIndividualAssessments(input *DescribeReplicationTaskIndividualAssessmentsInput) (*DescribeReplicationTaskIndividualAssessmentsOutput, error) {
3882	req, out := c.DescribeReplicationTaskIndividualAssessmentsRequest(input)
3883	return out, req.Send()
3884}
3885
3886// DescribeReplicationTaskIndividualAssessmentsWithContext is the same as DescribeReplicationTaskIndividualAssessments with the addition of
3887// the ability to pass a context and additional request options.
3888//
3889// See DescribeReplicationTaskIndividualAssessments for details on how to use this API operation.
3890//
3891// The context must be non-nil and will be used for request cancellation. If
3892// the context is nil a panic will occur. In the future the SDK may create
3893// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3894// for more information on using Contexts.
3895func (c *DatabaseMigrationService) DescribeReplicationTaskIndividualAssessmentsWithContext(ctx aws.Context, input *DescribeReplicationTaskIndividualAssessmentsInput, opts ...request.Option) (*DescribeReplicationTaskIndividualAssessmentsOutput, error) {
3896	req, out := c.DescribeReplicationTaskIndividualAssessmentsRequest(input)
3897	req.SetContext(ctx)
3898	req.ApplyOptions(opts...)
3899	return out, req.Send()
3900}
3901
3902// DescribeReplicationTaskIndividualAssessmentsPages iterates over the pages of a DescribeReplicationTaskIndividualAssessments operation,
3903// calling the "fn" function with the response data for each page. To stop
3904// iterating, return false from the fn function.
3905//
3906// See DescribeReplicationTaskIndividualAssessments method for more information on how to use this operation.
3907//
3908// Note: This operation can generate multiple requests to a service.
3909//
3910//    // Example iterating over at most 3 pages of a DescribeReplicationTaskIndividualAssessments operation.
3911//    pageNum := 0
3912//    err := client.DescribeReplicationTaskIndividualAssessmentsPages(params,
3913//        func(page *databasemigrationservice.DescribeReplicationTaskIndividualAssessmentsOutput, lastPage bool) bool {
3914//            pageNum++
3915//            fmt.Println(page)
3916//            return pageNum <= 3
3917//        })
3918//
3919func (c *DatabaseMigrationService) DescribeReplicationTaskIndividualAssessmentsPages(input *DescribeReplicationTaskIndividualAssessmentsInput, fn func(*DescribeReplicationTaskIndividualAssessmentsOutput, bool) bool) error {
3920	return c.DescribeReplicationTaskIndividualAssessmentsPagesWithContext(aws.BackgroundContext(), input, fn)
3921}
3922
3923// DescribeReplicationTaskIndividualAssessmentsPagesWithContext same as DescribeReplicationTaskIndividualAssessmentsPages except
3924// it takes a Context and allows setting request options on the pages.
3925//
3926// The context must be non-nil and will be used for request cancellation. If
3927// the context is nil a panic will occur. In the future the SDK may create
3928// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3929// for more information on using Contexts.
3930func (c *DatabaseMigrationService) DescribeReplicationTaskIndividualAssessmentsPagesWithContext(ctx aws.Context, input *DescribeReplicationTaskIndividualAssessmentsInput, fn func(*DescribeReplicationTaskIndividualAssessmentsOutput, bool) bool, opts ...request.Option) error {
3931	p := request.Pagination{
3932		NewRequest: func() (*request.Request, error) {
3933			var inCpy *DescribeReplicationTaskIndividualAssessmentsInput
3934			if input != nil {
3935				tmp := *input
3936				inCpy = &tmp
3937			}
3938			req, _ := c.DescribeReplicationTaskIndividualAssessmentsRequest(inCpy)
3939			req.SetContext(ctx)
3940			req.ApplyOptions(opts...)
3941			return req, nil
3942		},
3943	}
3944
3945	for p.Next() {
3946		if !fn(p.Page().(*DescribeReplicationTaskIndividualAssessmentsOutput), !p.HasNextPage()) {
3947			break
3948		}
3949	}
3950
3951	return p.Err()
3952}
3953
3954const opDescribeReplicationTasks = "DescribeReplicationTasks"
3955
3956// DescribeReplicationTasksRequest generates a "aws/request.Request" representing the
3957// client's request for the DescribeReplicationTasks operation. The "output" return
3958// value will be populated with the request's response once the request completes
3959// successfully.
3960//
3961// Use "Send" method on the returned Request to send the API call to the service.
3962// the "output" return value is not valid until after Send returns without error.
3963//
3964// See DescribeReplicationTasks for more information on using the DescribeReplicationTasks
3965// API call, and error handling.
3966//
3967// This method is useful when you want to inject custom logic or configuration
3968// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3969//
3970//
3971//    // Example sending a request using the DescribeReplicationTasksRequest method.
3972//    req, resp := client.DescribeReplicationTasksRequest(params)
3973//
3974//    err := req.Send()
3975//    if err == nil { // resp is now filled
3976//        fmt.Println(resp)
3977//    }
3978//
3979// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeReplicationTasks
3980func (c *DatabaseMigrationService) DescribeReplicationTasksRequest(input *DescribeReplicationTasksInput) (req *request.Request, output *DescribeReplicationTasksOutput) {
3981	op := &request.Operation{
3982		Name:       opDescribeReplicationTasks,
3983		HTTPMethod: "POST",
3984		HTTPPath:   "/",
3985		Paginator: &request.Paginator{
3986			InputTokens:     []string{"Marker"},
3987			OutputTokens:    []string{"Marker"},
3988			LimitToken:      "MaxRecords",
3989			TruncationToken: "",
3990		},
3991	}
3992
3993	if input == nil {
3994		input = &DescribeReplicationTasksInput{}
3995	}
3996
3997	output = &DescribeReplicationTasksOutput{}
3998	req = c.newRequest(op, input, output)
3999	return
4000}
4001
4002// DescribeReplicationTasks API operation for AWS Database Migration Service.
4003//
4004// Returns information about replication tasks for your account in the current
4005// region.
4006//
4007// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4008// with awserr.Error's Code and Message methods to get detailed information about
4009// the error.
4010//
4011// See the AWS API reference guide for AWS Database Migration Service's
4012// API operation DescribeReplicationTasks for usage and error information.
4013//
4014// Returned Error Types:
4015//   * ResourceNotFoundFault
4016//   The resource could not be found.
4017//
4018// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeReplicationTasks
4019func (c *DatabaseMigrationService) DescribeReplicationTasks(input *DescribeReplicationTasksInput) (*DescribeReplicationTasksOutput, error) {
4020	req, out := c.DescribeReplicationTasksRequest(input)
4021	return out, req.Send()
4022}
4023
4024// DescribeReplicationTasksWithContext is the same as DescribeReplicationTasks with the addition of
4025// the ability to pass a context and additional request options.
4026//
4027// See DescribeReplicationTasks for details on how to use this API operation.
4028//
4029// The context must be non-nil and will be used for request cancellation. If
4030// the context is nil a panic will occur. In the future the SDK may create
4031// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4032// for more information on using Contexts.
4033func (c *DatabaseMigrationService) DescribeReplicationTasksWithContext(ctx aws.Context, input *DescribeReplicationTasksInput, opts ...request.Option) (*DescribeReplicationTasksOutput, error) {
4034	req, out := c.DescribeReplicationTasksRequest(input)
4035	req.SetContext(ctx)
4036	req.ApplyOptions(opts...)
4037	return out, req.Send()
4038}
4039
4040// DescribeReplicationTasksPages iterates over the pages of a DescribeReplicationTasks operation,
4041// calling the "fn" function with the response data for each page. To stop
4042// iterating, return false from the fn function.
4043//
4044// See DescribeReplicationTasks method for more information on how to use this operation.
4045//
4046// Note: This operation can generate multiple requests to a service.
4047//
4048//    // Example iterating over at most 3 pages of a DescribeReplicationTasks operation.
4049//    pageNum := 0
4050//    err := client.DescribeReplicationTasksPages(params,
4051//        func(page *databasemigrationservice.DescribeReplicationTasksOutput, lastPage bool) bool {
4052//            pageNum++
4053//            fmt.Println(page)
4054//            return pageNum <= 3
4055//        })
4056//
4057func (c *DatabaseMigrationService) DescribeReplicationTasksPages(input *DescribeReplicationTasksInput, fn func(*DescribeReplicationTasksOutput, bool) bool) error {
4058	return c.DescribeReplicationTasksPagesWithContext(aws.BackgroundContext(), input, fn)
4059}
4060
4061// DescribeReplicationTasksPagesWithContext same as DescribeReplicationTasksPages except
4062// it takes a Context and allows setting request options on the pages.
4063//
4064// The context must be non-nil and will be used for request cancellation. If
4065// the context is nil a panic will occur. In the future the SDK may create
4066// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4067// for more information on using Contexts.
4068func (c *DatabaseMigrationService) DescribeReplicationTasksPagesWithContext(ctx aws.Context, input *DescribeReplicationTasksInput, fn func(*DescribeReplicationTasksOutput, bool) bool, opts ...request.Option) error {
4069	p := request.Pagination{
4070		NewRequest: func() (*request.Request, error) {
4071			var inCpy *DescribeReplicationTasksInput
4072			if input != nil {
4073				tmp := *input
4074				inCpy = &tmp
4075			}
4076			req, _ := c.DescribeReplicationTasksRequest(inCpy)
4077			req.SetContext(ctx)
4078			req.ApplyOptions(opts...)
4079			return req, nil
4080		},
4081	}
4082
4083	for p.Next() {
4084		if !fn(p.Page().(*DescribeReplicationTasksOutput), !p.HasNextPage()) {
4085			break
4086		}
4087	}
4088
4089	return p.Err()
4090}
4091
4092const opDescribeSchemas = "DescribeSchemas"
4093
4094// DescribeSchemasRequest generates a "aws/request.Request" representing the
4095// client's request for the DescribeSchemas operation. The "output" return
4096// value will be populated with the request's response once the request completes
4097// successfully.
4098//
4099// Use "Send" method on the returned Request to send the API call to the service.
4100// the "output" return value is not valid until after Send returns without error.
4101//
4102// See DescribeSchemas for more information on using the DescribeSchemas
4103// API call, and error handling.
4104//
4105// This method is useful when you want to inject custom logic or configuration
4106// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4107//
4108//
4109//    // Example sending a request using the DescribeSchemasRequest method.
4110//    req, resp := client.DescribeSchemasRequest(params)
4111//
4112//    err := req.Send()
4113//    if err == nil { // resp is now filled
4114//        fmt.Println(resp)
4115//    }
4116//
4117// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeSchemas
4118func (c *DatabaseMigrationService) DescribeSchemasRequest(input *DescribeSchemasInput) (req *request.Request, output *DescribeSchemasOutput) {
4119	op := &request.Operation{
4120		Name:       opDescribeSchemas,
4121		HTTPMethod: "POST",
4122		HTTPPath:   "/",
4123		Paginator: &request.Paginator{
4124			InputTokens:     []string{"Marker"},
4125			OutputTokens:    []string{"Marker"},
4126			LimitToken:      "MaxRecords",
4127			TruncationToken: "",
4128		},
4129	}
4130
4131	if input == nil {
4132		input = &DescribeSchemasInput{}
4133	}
4134
4135	output = &DescribeSchemasOutput{}
4136	req = c.newRequest(op, input, output)
4137	return
4138}
4139
4140// DescribeSchemas API operation for AWS Database Migration Service.
4141//
4142// Returns information about the schema for the specified endpoint.
4143//
4144// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4145// with awserr.Error's Code and Message methods to get detailed information about
4146// the error.
4147//
4148// See the AWS API reference guide for AWS Database Migration Service's
4149// API operation DescribeSchemas for usage and error information.
4150//
4151// Returned Error Types:
4152//   * InvalidResourceStateFault
4153//   The resource is in a state that prevents it from being used for database
4154//   migration.
4155//
4156//   * ResourceNotFoundFault
4157//   The resource could not be found.
4158//
4159// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeSchemas
4160func (c *DatabaseMigrationService) DescribeSchemas(input *DescribeSchemasInput) (*DescribeSchemasOutput, error) {
4161	req, out := c.DescribeSchemasRequest(input)
4162	return out, req.Send()
4163}
4164
4165// DescribeSchemasWithContext is the same as DescribeSchemas with the addition of
4166// the ability to pass a context and additional request options.
4167//
4168// See DescribeSchemas for details on how to use this API operation.
4169//
4170// The context must be non-nil and will be used for request cancellation. If
4171// the context is nil a panic will occur. In the future the SDK may create
4172// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4173// for more information on using Contexts.
4174func (c *DatabaseMigrationService) DescribeSchemasWithContext(ctx aws.Context, input *DescribeSchemasInput, opts ...request.Option) (*DescribeSchemasOutput, error) {
4175	req, out := c.DescribeSchemasRequest(input)
4176	req.SetContext(ctx)
4177	req.ApplyOptions(opts...)
4178	return out, req.Send()
4179}
4180
4181// DescribeSchemasPages iterates over the pages of a DescribeSchemas operation,
4182// calling the "fn" function with the response data for each page. To stop
4183// iterating, return false from the fn function.
4184//
4185// See DescribeSchemas method for more information on how to use this operation.
4186//
4187// Note: This operation can generate multiple requests to a service.
4188//
4189//    // Example iterating over at most 3 pages of a DescribeSchemas operation.
4190//    pageNum := 0
4191//    err := client.DescribeSchemasPages(params,
4192//        func(page *databasemigrationservice.DescribeSchemasOutput, lastPage bool) bool {
4193//            pageNum++
4194//            fmt.Println(page)
4195//            return pageNum <= 3
4196//        })
4197//
4198func (c *DatabaseMigrationService) DescribeSchemasPages(input *DescribeSchemasInput, fn func(*DescribeSchemasOutput, bool) bool) error {
4199	return c.DescribeSchemasPagesWithContext(aws.BackgroundContext(), input, fn)
4200}
4201
4202// DescribeSchemasPagesWithContext same as DescribeSchemasPages except
4203// it takes a Context and allows setting request options on the pages.
4204//
4205// The context must be non-nil and will be used for request cancellation. If
4206// the context is nil a panic will occur. In the future the SDK may create
4207// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4208// for more information on using Contexts.
4209func (c *DatabaseMigrationService) DescribeSchemasPagesWithContext(ctx aws.Context, input *DescribeSchemasInput, fn func(*DescribeSchemasOutput, bool) bool, opts ...request.Option) error {
4210	p := request.Pagination{
4211		NewRequest: func() (*request.Request, error) {
4212			var inCpy *DescribeSchemasInput
4213			if input != nil {
4214				tmp := *input
4215				inCpy = &tmp
4216			}
4217			req, _ := c.DescribeSchemasRequest(inCpy)
4218			req.SetContext(ctx)
4219			req.ApplyOptions(opts...)
4220			return req, nil
4221		},
4222	}
4223
4224	for p.Next() {
4225		if !fn(p.Page().(*DescribeSchemasOutput), !p.HasNextPage()) {
4226			break
4227		}
4228	}
4229
4230	return p.Err()
4231}
4232
4233const opDescribeTableStatistics = "DescribeTableStatistics"
4234
4235// DescribeTableStatisticsRequest generates a "aws/request.Request" representing the
4236// client's request for the DescribeTableStatistics operation. The "output" return
4237// value will be populated with the request's response once the request completes
4238// successfully.
4239//
4240// Use "Send" method on the returned Request to send the API call to the service.
4241// the "output" return value is not valid until after Send returns without error.
4242//
4243// See DescribeTableStatistics for more information on using the DescribeTableStatistics
4244// API call, and error handling.
4245//
4246// This method is useful when you want to inject custom logic or configuration
4247// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4248//
4249//
4250//    // Example sending a request using the DescribeTableStatisticsRequest method.
4251//    req, resp := client.DescribeTableStatisticsRequest(params)
4252//
4253//    err := req.Send()
4254//    if err == nil { // resp is now filled
4255//        fmt.Println(resp)
4256//    }
4257//
4258// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeTableStatistics
4259func (c *DatabaseMigrationService) DescribeTableStatisticsRequest(input *DescribeTableStatisticsInput) (req *request.Request, output *DescribeTableStatisticsOutput) {
4260	op := &request.Operation{
4261		Name:       opDescribeTableStatistics,
4262		HTTPMethod: "POST",
4263		HTTPPath:   "/",
4264		Paginator: &request.Paginator{
4265			InputTokens:     []string{"Marker"},
4266			OutputTokens:    []string{"Marker"},
4267			LimitToken:      "MaxRecords",
4268			TruncationToken: "",
4269		},
4270	}
4271
4272	if input == nil {
4273		input = &DescribeTableStatisticsInput{}
4274	}
4275
4276	output = &DescribeTableStatisticsOutput{}
4277	req = c.newRequest(op, input, output)
4278	return
4279}
4280
4281// DescribeTableStatistics API operation for AWS Database Migration Service.
4282//
4283// Returns table statistics on the database migration task, including table
4284// name, rows inserted, rows updated, and rows deleted.
4285//
4286// Note that the "last updated" column the DMS console only indicates the time
4287// that AWS DMS last updated the table statistics record for a table. It does
4288// not indicate the time of the last update to the table.
4289//
4290// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4291// with awserr.Error's Code and Message methods to get detailed information about
4292// the error.
4293//
4294// See the AWS API reference guide for AWS Database Migration Service's
4295// API operation DescribeTableStatistics for usage and error information.
4296//
4297// Returned Error Types:
4298//   * ResourceNotFoundFault
4299//   The resource could not be found.
4300//
4301//   * InvalidResourceStateFault
4302//   The resource is in a state that prevents it from being used for database
4303//   migration.
4304//
4305// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/DescribeTableStatistics
4306func (c *DatabaseMigrationService) DescribeTableStatistics(input *DescribeTableStatisticsInput) (*DescribeTableStatisticsOutput, error) {
4307	req, out := c.DescribeTableStatisticsRequest(input)
4308	return out, req.Send()
4309}
4310
4311// DescribeTableStatisticsWithContext is the same as DescribeTableStatistics with the addition of
4312// the ability to pass a context and additional request options.
4313//
4314// See DescribeTableStatistics for details on how to use this API operation.
4315//
4316// The context must be non-nil and will be used for request cancellation. If
4317// the context is nil a panic will occur. In the future the SDK may create
4318// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4319// for more information on using Contexts.
4320func (c *DatabaseMigrationService) DescribeTableStatisticsWithContext(ctx aws.Context, input *DescribeTableStatisticsInput, opts ...request.Option) (*DescribeTableStatisticsOutput, error) {
4321	req, out := c.DescribeTableStatisticsRequest(input)
4322	req.SetContext(ctx)
4323	req.ApplyOptions(opts...)
4324	return out, req.Send()
4325}
4326
4327// DescribeTableStatisticsPages iterates over the pages of a DescribeTableStatistics operation,
4328// calling the "fn" function with the response data for each page. To stop
4329// iterating, return false from the fn function.
4330//
4331// See DescribeTableStatistics method for more information on how to use this operation.
4332//
4333// Note: This operation can generate multiple requests to a service.
4334//
4335//    // Example iterating over at most 3 pages of a DescribeTableStatistics operation.
4336//    pageNum := 0
4337//    err := client.DescribeTableStatisticsPages(params,
4338//        func(page *databasemigrationservice.DescribeTableStatisticsOutput, lastPage bool) bool {
4339//            pageNum++
4340//            fmt.Println(page)
4341//            return pageNum <= 3
4342//        })
4343//
4344func (c *DatabaseMigrationService) DescribeTableStatisticsPages(input *DescribeTableStatisticsInput, fn func(*DescribeTableStatisticsOutput, bool) bool) error {
4345	return c.DescribeTableStatisticsPagesWithContext(aws.BackgroundContext(), input, fn)
4346}
4347
4348// DescribeTableStatisticsPagesWithContext same as DescribeTableStatisticsPages except
4349// it takes a Context and allows setting request options on the pages.
4350//
4351// The context must be non-nil and will be used for request cancellation. If
4352// the context is nil a panic will occur. In the future the SDK may create
4353// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4354// for more information on using Contexts.
4355func (c *DatabaseMigrationService) DescribeTableStatisticsPagesWithContext(ctx aws.Context, input *DescribeTableStatisticsInput, fn func(*DescribeTableStatisticsOutput, bool) bool, opts ...request.Option) error {
4356	p := request.Pagination{
4357		NewRequest: func() (*request.Request, error) {
4358			var inCpy *DescribeTableStatisticsInput
4359			if input != nil {
4360				tmp := *input
4361				inCpy = &tmp
4362			}
4363			req, _ := c.DescribeTableStatisticsRequest(inCpy)
4364			req.SetContext(ctx)
4365			req.ApplyOptions(opts...)
4366			return req, nil
4367		},
4368	}
4369
4370	for p.Next() {
4371		if !fn(p.Page().(*DescribeTableStatisticsOutput), !p.HasNextPage()) {
4372			break
4373		}
4374	}
4375
4376	return p.Err()
4377}
4378
4379const opImportCertificate = "ImportCertificate"
4380
4381// ImportCertificateRequest generates a "aws/request.Request" representing the
4382// client's request for the ImportCertificate operation. The "output" return
4383// value will be populated with the request's response once the request completes
4384// successfully.
4385//
4386// Use "Send" method on the returned Request to send the API call to the service.
4387// the "output" return value is not valid until after Send returns without error.
4388//
4389// See ImportCertificate for more information on using the ImportCertificate
4390// API call, and error handling.
4391//
4392// This method is useful when you want to inject custom logic or configuration
4393// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4394//
4395//
4396//    // Example sending a request using the ImportCertificateRequest method.
4397//    req, resp := client.ImportCertificateRequest(params)
4398//
4399//    err := req.Send()
4400//    if err == nil { // resp is now filled
4401//        fmt.Println(resp)
4402//    }
4403//
4404// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/ImportCertificate
4405func (c *DatabaseMigrationService) ImportCertificateRequest(input *ImportCertificateInput) (req *request.Request, output *ImportCertificateOutput) {
4406	op := &request.Operation{
4407		Name:       opImportCertificate,
4408		HTTPMethod: "POST",
4409		HTTPPath:   "/",
4410	}
4411
4412	if input == nil {
4413		input = &ImportCertificateInput{}
4414	}
4415
4416	output = &ImportCertificateOutput{}
4417	req = c.newRequest(op, input, output)
4418	return
4419}
4420
4421// ImportCertificate API operation for AWS Database Migration Service.
4422//
4423// Uploads the specified certificate.
4424//
4425// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4426// with awserr.Error's Code and Message methods to get detailed information about
4427// the error.
4428//
4429// See the AWS API reference guide for AWS Database Migration Service's
4430// API operation ImportCertificate for usage and error information.
4431//
4432// Returned Error Types:
4433//   * ResourceAlreadyExistsFault
4434//   The resource you are attempting to create already exists.
4435//
4436//   * InvalidCertificateFault
4437//   The certificate was not valid.
4438//
4439//   * ResourceQuotaExceededFault
4440//   The quota for this resource quota has been exceeded.
4441//
4442// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/ImportCertificate
4443func (c *DatabaseMigrationService) ImportCertificate(input *ImportCertificateInput) (*ImportCertificateOutput, error) {
4444	req, out := c.ImportCertificateRequest(input)
4445	return out, req.Send()
4446}
4447
4448// ImportCertificateWithContext is the same as ImportCertificate with the addition of
4449// the ability to pass a context and additional request options.
4450//
4451// See ImportCertificate for details on how to use this API operation.
4452//
4453// The context must be non-nil and will be used for request cancellation. If
4454// the context is nil a panic will occur. In the future the SDK may create
4455// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4456// for more information on using Contexts.
4457func (c *DatabaseMigrationService) ImportCertificateWithContext(ctx aws.Context, input *ImportCertificateInput, opts ...request.Option) (*ImportCertificateOutput, error) {
4458	req, out := c.ImportCertificateRequest(input)
4459	req.SetContext(ctx)
4460	req.ApplyOptions(opts...)
4461	return out, req.Send()
4462}
4463
4464const opListTagsForResource = "ListTagsForResource"
4465
4466// ListTagsForResourceRequest generates a "aws/request.Request" representing the
4467// client's request for the ListTagsForResource operation. The "output" return
4468// value will be populated with the request's response once the request completes
4469// successfully.
4470//
4471// Use "Send" method on the returned Request to send the API call to the service.
4472// the "output" return value is not valid until after Send returns without error.
4473//
4474// See ListTagsForResource for more information on using the ListTagsForResource
4475// API call, and error handling.
4476//
4477// This method is useful when you want to inject custom logic or configuration
4478// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4479//
4480//
4481//    // Example sending a request using the ListTagsForResourceRequest method.
4482//    req, resp := client.ListTagsForResourceRequest(params)
4483//
4484//    err := req.Send()
4485//    if err == nil { // resp is now filled
4486//        fmt.Println(resp)
4487//    }
4488//
4489// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/ListTagsForResource
4490func (c *DatabaseMigrationService) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
4491	op := &request.Operation{
4492		Name:       opListTagsForResource,
4493		HTTPMethod: "POST",
4494		HTTPPath:   "/",
4495	}
4496
4497	if input == nil {
4498		input = &ListTagsForResourceInput{}
4499	}
4500
4501	output = &ListTagsForResourceOutput{}
4502	req = c.newRequest(op, input, output)
4503	return
4504}
4505
4506// ListTagsForResource API operation for AWS Database Migration Service.
4507//
4508// Lists all metadata tags attached to an AWS DMS resource, including replication
4509// instance, endpoint, security group, and migration task. For more information,
4510// see Tag (https://docs.aws.amazon.com/dms/latest/APIReference/API_Tag.html)
4511// data type description.
4512//
4513// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4514// with awserr.Error's Code and Message methods to get detailed information about
4515// the error.
4516//
4517// See the AWS API reference guide for AWS Database Migration Service's
4518// API operation ListTagsForResource for usage and error information.
4519//
4520// Returned Error Types:
4521//   * ResourceNotFoundFault
4522//   The resource could not be found.
4523//
4524// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/ListTagsForResource
4525func (c *DatabaseMigrationService) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
4526	req, out := c.ListTagsForResourceRequest(input)
4527	return out, req.Send()
4528}
4529
4530// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
4531// the ability to pass a context and additional request options.
4532//
4533// See ListTagsForResource for details on how to use this API operation.
4534//
4535// The context must be non-nil and will be used for request cancellation. If
4536// the context is nil a panic will occur. In the future the SDK may create
4537// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4538// for more information on using Contexts.
4539func (c *DatabaseMigrationService) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
4540	req, out := c.ListTagsForResourceRequest(input)
4541	req.SetContext(ctx)
4542	req.ApplyOptions(opts...)
4543	return out, req.Send()
4544}
4545
4546const opModifyEndpoint = "ModifyEndpoint"
4547
4548// ModifyEndpointRequest generates a "aws/request.Request" representing the
4549// client's request for the ModifyEndpoint operation. The "output" return
4550// value will be populated with the request's response once the request completes
4551// successfully.
4552//
4553// Use "Send" method on the returned Request to send the API call to the service.
4554// the "output" return value is not valid until after Send returns without error.
4555//
4556// See ModifyEndpoint for more information on using the ModifyEndpoint
4557// API call, and error handling.
4558//
4559// This method is useful when you want to inject custom logic or configuration
4560// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4561//
4562//
4563//    // Example sending a request using the ModifyEndpointRequest method.
4564//    req, resp := client.ModifyEndpointRequest(params)
4565//
4566//    err := req.Send()
4567//    if err == nil { // resp is now filled
4568//        fmt.Println(resp)
4569//    }
4570//
4571// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/ModifyEndpoint
4572func (c *DatabaseMigrationService) ModifyEndpointRequest(input *ModifyEndpointInput) (req *request.Request, output *ModifyEndpointOutput) {
4573	op := &request.Operation{
4574		Name:       opModifyEndpoint,
4575		HTTPMethod: "POST",
4576		HTTPPath:   "/",
4577	}
4578
4579	if input == nil {
4580		input = &ModifyEndpointInput{}
4581	}
4582
4583	output = &ModifyEndpointOutput{}
4584	req = c.newRequest(op, input, output)
4585	return
4586}
4587
4588// ModifyEndpoint API operation for AWS Database Migration Service.
4589//
4590// Modifies the specified endpoint.
4591//
4592// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4593// with awserr.Error's Code and Message methods to get detailed information about
4594// the error.
4595//
4596// See the AWS API reference guide for AWS Database Migration Service's
4597// API operation ModifyEndpoint for usage and error information.
4598//
4599// Returned Error Types:
4600//   * InvalidResourceStateFault
4601//   The resource is in a state that prevents it from being used for database
4602//   migration.
4603//
4604//   * ResourceNotFoundFault
4605//   The resource could not be found.
4606//
4607//   * ResourceAlreadyExistsFault
4608//   The resource you are attempting to create already exists.
4609//
4610//   * KMSKeyNotAccessibleFault
4611//   AWS DMS cannot access the AWS KMS key.
4612//
4613//   * AccessDeniedFault
4614//   AWS DMS was denied access to the endpoint. Check that the role is correctly
4615//   configured.
4616//
4617// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/ModifyEndpoint
4618func (c *DatabaseMigrationService) ModifyEndpoint(input *ModifyEndpointInput) (*ModifyEndpointOutput, error) {
4619	req, out := c.ModifyEndpointRequest(input)
4620	return out, req.Send()
4621}
4622
4623// ModifyEndpointWithContext is the same as ModifyEndpoint with the addition of
4624// the ability to pass a context and additional request options.
4625//
4626// See ModifyEndpoint for details on how to use this API operation.
4627//
4628// The context must be non-nil and will be used for request cancellation. If
4629// the context is nil a panic will occur. In the future the SDK may create
4630// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4631// for more information on using Contexts.
4632func (c *DatabaseMigrationService) ModifyEndpointWithContext(ctx aws.Context, input *ModifyEndpointInput, opts ...request.Option) (*ModifyEndpointOutput, error) {
4633	req, out := c.ModifyEndpointRequest(input)
4634	req.SetContext(ctx)
4635	req.ApplyOptions(opts...)
4636	return out, req.Send()
4637}
4638
4639const opModifyEventSubscription = "ModifyEventSubscription"
4640
4641// ModifyEventSubscriptionRequest generates a "aws/request.Request" representing the
4642// client's request for the ModifyEventSubscription operation. The "output" return
4643// value will be populated with the request's response once the request completes
4644// successfully.
4645//
4646// Use "Send" method on the returned Request to send the API call to the service.
4647// the "output" return value is not valid until after Send returns without error.
4648//
4649// See ModifyEventSubscription for more information on using the ModifyEventSubscription
4650// API call, and error handling.
4651//
4652// This method is useful when you want to inject custom logic or configuration
4653// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4654//
4655//
4656//    // Example sending a request using the ModifyEventSubscriptionRequest method.
4657//    req, resp := client.ModifyEventSubscriptionRequest(params)
4658//
4659//    err := req.Send()
4660//    if err == nil { // resp is now filled
4661//        fmt.Println(resp)
4662//    }
4663//
4664// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/ModifyEventSubscription
4665func (c *DatabaseMigrationService) ModifyEventSubscriptionRequest(input *ModifyEventSubscriptionInput) (req *request.Request, output *ModifyEventSubscriptionOutput) {
4666	op := &request.Operation{
4667		Name:       opModifyEventSubscription,
4668		HTTPMethod: "POST",
4669		HTTPPath:   "/",
4670	}
4671
4672	if input == nil {
4673		input = &ModifyEventSubscriptionInput{}
4674	}
4675
4676	output = &ModifyEventSubscriptionOutput{}
4677	req = c.newRequest(op, input, output)
4678	return
4679}
4680
4681// ModifyEventSubscription API operation for AWS Database Migration Service.
4682//
4683// Modifies an existing AWS DMS event notification subscription.
4684//
4685// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4686// with awserr.Error's Code and Message methods to get detailed information about
4687// the error.
4688//
4689// See the AWS API reference guide for AWS Database Migration Service's
4690// API operation ModifyEventSubscription for usage and error information.
4691//
4692// Returned Error Types:
4693//   * ResourceQuotaExceededFault
4694//   The quota for this resource quota has been exceeded.
4695//
4696//   * ResourceNotFoundFault
4697//   The resource could not be found.
4698//
4699//   * SNSInvalidTopicFault
4700//   The SNS topic is invalid.
4701//
4702//   * SNSNoAuthorizationFault
4703//   You are not authorized for the SNS subscription.
4704//
4705//   * KMSAccessDeniedFault
4706//   The ciphertext references a key that doesn't exist or that the DMS account
4707//   doesn't have access to.
4708//
4709//   * KMSDisabledFault
4710//   The specified master key (CMK) isn't enabled.
4711//
4712//   * KMSInvalidStateFault
4713//   The state of the specified AWS KMS resource isn't valid for this request.
4714//
4715//   * KMSNotFoundFault
4716//   The specified AWS KMS entity or resource can't be found.
4717//
4718//   * KMSThrottlingFault
4719//   This request triggered AWS KMS request throttling.
4720//
4721// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/ModifyEventSubscription
4722func (c *DatabaseMigrationService) ModifyEventSubscription(input *ModifyEventSubscriptionInput) (*ModifyEventSubscriptionOutput, error) {
4723	req, out := c.ModifyEventSubscriptionRequest(input)
4724	return out, req.Send()
4725}
4726
4727// ModifyEventSubscriptionWithContext is the same as ModifyEventSubscription with the addition of
4728// the ability to pass a context and additional request options.
4729//
4730// See ModifyEventSubscription for details on how to use this API operation.
4731//
4732// The context must be non-nil and will be used for request cancellation. If
4733// the context is nil a panic will occur. In the future the SDK may create
4734// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4735// for more information on using Contexts.
4736func (c *DatabaseMigrationService) ModifyEventSubscriptionWithContext(ctx aws.Context, input *ModifyEventSubscriptionInput, opts ...request.Option) (*ModifyEventSubscriptionOutput, error) {
4737	req, out := c.ModifyEventSubscriptionRequest(input)
4738	req.SetContext(ctx)
4739	req.ApplyOptions(opts...)
4740	return out, req.Send()
4741}
4742
4743const opModifyReplicationInstance = "ModifyReplicationInstance"
4744
4745// ModifyReplicationInstanceRequest generates a "aws/request.Request" representing the
4746// client's request for the ModifyReplicationInstance operation. The "output" return
4747// value will be populated with the request's response once the request completes
4748// successfully.
4749//
4750// Use "Send" method on the returned Request to send the API call to the service.
4751// the "output" return value is not valid until after Send returns without error.
4752//
4753// See ModifyReplicationInstance for more information on using the ModifyReplicationInstance
4754// API call, and error handling.
4755//
4756// This method is useful when you want to inject custom logic or configuration
4757// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4758//
4759//
4760//    // Example sending a request using the ModifyReplicationInstanceRequest method.
4761//    req, resp := client.ModifyReplicationInstanceRequest(params)
4762//
4763//    err := req.Send()
4764//    if err == nil { // resp is now filled
4765//        fmt.Println(resp)
4766//    }
4767//
4768// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/ModifyReplicationInstance
4769func (c *DatabaseMigrationService) ModifyReplicationInstanceRequest(input *ModifyReplicationInstanceInput) (req *request.Request, output *ModifyReplicationInstanceOutput) {
4770	op := &request.Operation{
4771		Name:       opModifyReplicationInstance,
4772		HTTPMethod: "POST",
4773		HTTPPath:   "/",
4774	}
4775
4776	if input == nil {
4777		input = &ModifyReplicationInstanceInput{}
4778	}
4779
4780	output = &ModifyReplicationInstanceOutput{}
4781	req = c.newRequest(op, input, output)
4782	return
4783}
4784
4785// ModifyReplicationInstance API operation for AWS Database Migration Service.
4786//
4787// Modifies the replication instance to apply new settings. You can change one
4788// or more parameters by specifying these parameters and the new values in the
4789// request.
4790//
4791// Some settings are applied during the maintenance window.
4792//
4793// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4794// with awserr.Error's Code and Message methods to get detailed information about
4795// the error.
4796//
4797// See the AWS API reference guide for AWS Database Migration Service's
4798// API operation ModifyReplicationInstance for usage and error information.
4799//
4800// Returned Error Types:
4801//   * AccessDeniedFault
4802//   AWS DMS was denied access to the endpoint. Check that the role is correctly
4803//   configured.
4804//
4805//   * InvalidResourceStateFault
4806//   The resource is in a state that prevents it from being used for database
4807//   migration.
4808//
4809//   * ResourceAlreadyExistsFault
4810//   The resource you are attempting to create already exists.
4811//
4812//   * ResourceNotFoundFault
4813//   The resource could not be found.
4814//
4815//   * InsufficientResourceCapacityFault
4816//   There are not enough resources allocated to the database migration.
4817//
4818//   * StorageQuotaExceededFault
4819//   The storage quota has been exceeded.
4820//
4821//   * UpgradeDependencyFailureFault
4822//   An upgrade dependency is preventing the database migration.
4823//
4824// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/ModifyReplicationInstance
4825func (c *DatabaseMigrationService) ModifyReplicationInstance(input *ModifyReplicationInstanceInput) (*ModifyReplicationInstanceOutput, error) {
4826	req, out := c.ModifyReplicationInstanceRequest(input)
4827	return out, req.Send()
4828}
4829
4830// ModifyReplicationInstanceWithContext is the same as ModifyReplicationInstance with the addition of
4831// the ability to pass a context and additional request options.
4832//
4833// See ModifyReplicationInstance for details on how to use this API operation.
4834//
4835// The context must be non-nil and will be used for request cancellation. If
4836// the context is nil a panic will occur. In the future the SDK may create
4837// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4838// for more information on using Contexts.
4839func (c *DatabaseMigrationService) ModifyReplicationInstanceWithContext(ctx aws.Context, input *ModifyReplicationInstanceInput, opts ...request.Option) (*ModifyReplicationInstanceOutput, error) {
4840	req, out := c.ModifyReplicationInstanceRequest(input)
4841	req.SetContext(ctx)
4842	req.ApplyOptions(opts...)
4843	return out, req.Send()
4844}
4845
4846const opModifyReplicationSubnetGroup = "ModifyReplicationSubnetGroup"
4847
4848// ModifyReplicationSubnetGroupRequest generates a "aws/request.Request" representing the
4849// client's request for the ModifyReplicationSubnetGroup operation. The "output" return
4850// value will be populated with the request's response once the request completes
4851// successfully.
4852//
4853// Use "Send" method on the returned Request to send the API call to the service.
4854// the "output" return value is not valid until after Send returns without error.
4855//
4856// See ModifyReplicationSubnetGroup for more information on using the ModifyReplicationSubnetGroup
4857// API call, and error handling.
4858//
4859// This method is useful when you want to inject custom logic or configuration
4860// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4861//
4862//
4863//    // Example sending a request using the ModifyReplicationSubnetGroupRequest method.
4864//    req, resp := client.ModifyReplicationSubnetGroupRequest(params)
4865//
4866//    err := req.Send()
4867//    if err == nil { // resp is now filled
4868//        fmt.Println(resp)
4869//    }
4870//
4871// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/ModifyReplicationSubnetGroup
4872func (c *DatabaseMigrationService) ModifyReplicationSubnetGroupRequest(input *ModifyReplicationSubnetGroupInput) (req *request.Request, output *ModifyReplicationSubnetGroupOutput) {
4873	op := &request.Operation{
4874		Name:       opModifyReplicationSubnetGroup,
4875		HTTPMethod: "POST",
4876		HTTPPath:   "/",
4877	}
4878
4879	if input == nil {
4880		input = &ModifyReplicationSubnetGroupInput{}
4881	}
4882
4883	output = &ModifyReplicationSubnetGroupOutput{}
4884	req = c.newRequest(op, input, output)
4885	return
4886}
4887
4888// ModifyReplicationSubnetGroup API operation for AWS Database Migration Service.
4889//
4890// Modifies the settings for the specified replication subnet group.
4891//
4892// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4893// with awserr.Error's Code and Message methods to get detailed information about
4894// the error.
4895//
4896// See the AWS API reference guide for AWS Database Migration Service's
4897// API operation ModifyReplicationSubnetGroup for usage and error information.
4898//
4899// Returned Error Types:
4900//   * AccessDeniedFault
4901//   AWS DMS was denied access to the endpoint. Check that the role is correctly
4902//   configured.
4903//
4904//   * ResourceNotFoundFault
4905//   The resource could not be found.
4906//
4907//   * ResourceQuotaExceededFault
4908//   The quota for this resource quota has been exceeded.
4909//
4910//   * SubnetAlreadyInUse
4911//   The specified subnet is already in use.
4912//
4913//   * ReplicationSubnetGroupDoesNotCoverEnoughAZs
4914//   The replication subnet group does not cover enough Availability Zones (AZs).
4915//   Edit the replication subnet group and add more AZs.
4916//
4917//   * InvalidSubnet
4918//   The subnet provided is invalid.
4919//
4920// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/ModifyReplicationSubnetGroup
4921func (c *DatabaseMigrationService) ModifyReplicationSubnetGroup(input *ModifyReplicationSubnetGroupInput) (*ModifyReplicationSubnetGroupOutput, error) {
4922	req, out := c.ModifyReplicationSubnetGroupRequest(input)
4923	return out, req.Send()
4924}
4925
4926// ModifyReplicationSubnetGroupWithContext is the same as ModifyReplicationSubnetGroup with the addition of
4927// the ability to pass a context and additional request options.
4928//
4929// See ModifyReplicationSubnetGroup for details on how to use this API operation.
4930//
4931// The context must be non-nil and will be used for request cancellation. If
4932// the context is nil a panic will occur. In the future the SDK may create
4933// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4934// for more information on using Contexts.
4935func (c *DatabaseMigrationService) ModifyReplicationSubnetGroupWithContext(ctx aws.Context, input *ModifyReplicationSubnetGroupInput, opts ...request.Option) (*ModifyReplicationSubnetGroupOutput, error) {
4936	req, out := c.ModifyReplicationSubnetGroupRequest(input)
4937	req.SetContext(ctx)
4938	req.ApplyOptions(opts...)
4939	return out, req.Send()
4940}
4941
4942const opModifyReplicationTask = "ModifyReplicationTask"
4943
4944// ModifyReplicationTaskRequest generates a "aws/request.Request" representing the
4945// client's request for the ModifyReplicationTask operation. The "output" return
4946// value will be populated with the request's response once the request completes
4947// successfully.
4948//
4949// Use "Send" method on the returned Request to send the API call to the service.
4950// the "output" return value is not valid until after Send returns without error.
4951//
4952// See ModifyReplicationTask for more information on using the ModifyReplicationTask
4953// API call, and error handling.
4954//
4955// This method is useful when you want to inject custom logic or configuration
4956// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4957//
4958//
4959//    // Example sending a request using the ModifyReplicationTaskRequest method.
4960//    req, resp := client.ModifyReplicationTaskRequest(params)
4961//
4962//    err := req.Send()
4963//    if err == nil { // resp is now filled
4964//        fmt.Println(resp)
4965//    }
4966//
4967// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/ModifyReplicationTask
4968func (c *DatabaseMigrationService) ModifyReplicationTaskRequest(input *ModifyReplicationTaskInput) (req *request.Request, output *ModifyReplicationTaskOutput) {
4969	op := &request.Operation{
4970		Name:       opModifyReplicationTask,
4971		HTTPMethod: "POST",
4972		HTTPPath:   "/",
4973	}
4974
4975	if input == nil {
4976		input = &ModifyReplicationTaskInput{}
4977	}
4978
4979	output = &ModifyReplicationTaskOutput{}
4980	req = c.newRequest(op, input, output)
4981	return
4982}
4983
4984// ModifyReplicationTask API operation for AWS Database Migration Service.
4985//
4986// Modifies the specified replication task.
4987//
4988// You can't modify the task endpoints. The task must be stopped before you
4989// can modify it.
4990//
4991// For more information about AWS DMS tasks, see Working with Migration Tasks
4992// (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Tasks.html) in the
4993// AWS Database Migration Service User Guide.
4994//
4995// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4996// with awserr.Error's Code and Message methods to get detailed information about
4997// the error.
4998//
4999// See the AWS API reference guide for AWS Database Migration Service's
5000// API operation ModifyReplicationTask for usage and error information.
5001//
5002// Returned Error Types:
5003//   * InvalidResourceStateFault
5004//   The resource is in a state that prevents it from being used for database
5005//   migration.
5006//
5007//   * ResourceNotFoundFault
5008//   The resource could not be found.
5009//
5010//   * ResourceAlreadyExistsFault
5011//   The resource you are attempting to create already exists.
5012//
5013//   * KMSKeyNotAccessibleFault
5014//   AWS DMS cannot access the AWS KMS key.
5015//
5016// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/ModifyReplicationTask
5017func (c *DatabaseMigrationService) ModifyReplicationTask(input *ModifyReplicationTaskInput) (*ModifyReplicationTaskOutput, error) {
5018	req, out := c.ModifyReplicationTaskRequest(input)
5019	return out, req.Send()
5020}
5021
5022// ModifyReplicationTaskWithContext is the same as ModifyReplicationTask with the addition of
5023// the ability to pass a context and additional request options.
5024//
5025// See ModifyReplicationTask for details on how to use this API operation.
5026//
5027// The context must be non-nil and will be used for request cancellation. If
5028// the context is nil a panic will occur. In the future the SDK may create
5029// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5030// for more information on using Contexts.
5031func (c *DatabaseMigrationService) ModifyReplicationTaskWithContext(ctx aws.Context, input *ModifyReplicationTaskInput, opts ...request.Option) (*ModifyReplicationTaskOutput, error) {
5032	req, out := c.ModifyReplicationTaskRequest(input)
5033	req.SetContext(ctx)
5034	req.ApplyOptions(opts...)
5035	return out, req.Send()
5036}
5037
5038const opMoveReplicationTask = "MoveReplicationTask"
5039
5040// MoveReplicationTaskRequest generates a "aws/request.Request" representing the
5041// client's request for the MoveReplicationTask operation. The "output" return
5042// value will be populated with the request's response once the request completes
5043// successfully.
5044//
5045// Use "Send" method on the returned Request to send the API call to the service.
5046// the "output" return value is not valid until after Send returns without error.
5047//
5048// See MoveReplicationTask for more information on using the MoveReplicationTask
5049// API call, and error handling.
5050//
5051// This method is useful when you want to inject custom logic or configuration
5052// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5053//
5054//
5055//    // Example sending a request using the MoveReplicationTaskRequest method.
5056//    req, resp := client.MoveReplicationTaskRequest(params)
5057//
5058//    err := req.Send()
5059//    if err == nil { // resp is now filled
5060//        fmt.Println(resp)
5061//    }
5062//
5063// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/MoveReplicationTask
5064func (c *DatabaseMigrationService) MoveReplicationTaskRequest(input *MoveReplicationTaskInput) (req *request.Request, output *MoveReplicationTaskOutput) {
5065	op := &request.Operation{
5066		Name:       opMoveReplicationTask,
5067		HTTPMethod: "POST",
5068		HTTPPath:   "/",
5069	}
5070
5071	if input == nil {
5072		input = &MoveReplicationTaskInput{}
5073	}
5074
5075	output = &MoveReplicationTaskOutput{}
5076	req = c.newRequest(op, input, output)
5077	return
5078}
5079
5080// MoveReplicationTask API operation for AWS Database Migration Service.
5081//
5082// Moves a replication task from its current replication instance to a different
5083// target replication instance using the specified parameters. The target replication
5084// instance must be created with the same or later AWS DMS version as the current
5085// replication instance.
5086//
5087// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5088// with awserr.Error's Code and Message methods to get detailed information about
5089// the error.
5090//
5091// See the AWS API reference guide for AWS Database Migration Service's
5092// API operation MoveReplicationTask for usage and error information.
5093//
5094// Returned Error Types:
5095//   * AccessDeniedFault
5096//   AWS DMS was denied access to the endpoint. Check that the role is correctly
5097//   configured.
5098//
5099//   * InvalidResourceStateFault
5100//   The resource is in a state that prevents it from being used for database
5101//   migration.
5102//
5103//   * ResourceNotFoundFault
5104//   The resource could not be found.
5105//
5106//   * KMSKeyNotAccessibleFault
5107//   AWS DMS cannot access the AWS KMS key.
5108//
5109// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/MoveReplicationTask
5110func (c *DatabaseMigrationService) MoveReplicationTask(input *MoveReplicationTaskInput) (*MoveReplicationTaskOutput, error) {
5111	req, out := c.MoveReplicationTaskRequest(input)
5112	return out, req.Send()
5113}
5114
5115// MoveReplicationTaskWithContext is the same as MoveReplicationTask with the addition of
5116// the ability to pass a context and additional request options.
5117//
5118// See MoveReplicationTask for details on how to use this API operation.
5119//
5120// The context must be non-nil and will be used for request cancellation. If
5121// the context is nil a panic will occur. In the future the SDK may create
5122// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5123// for more information on using Contexts.
5124func (c *DatabaseMigrationService) MoveReplicationTaskWithContext(ctx aws.Context, input *MoveReplicationTaskInput, opts ...request.Option) (*MoveReplicationTaskOutput, error) {
5125	req, out := c.MoveReplicationTaskRequest(input)
5126	req.SetContext(ctx)
5127	req.ApplyOptions(opts...)
5128	return out, req.Send()
5129}
5130
5131const opRebootReplicationInstance = "RebootReplicationInstance"
5132
5133// RebootReplicationInstanceRequest generates a "aws/request.Request" representing the
5134// client's request for the RebootReplicationInstance operation. The "output" return
5135// value will be populated with the request's response once the request completes
5136// successfully.
5137//
5138// Use "Send" method on the returned Request to send the API call to the service.
5139// the "output" return value is not valid until after Send returns without error.
5140//
5141// See RebootReplicationInstance for more information on using the RebootReplicationInstance
5142// API call, and error handling.
5143//
5144// This method is useful when you want to inject custom logic or configuration
5145// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5146//
5147//
5148//    // Example sending a request using the RebootReplicationInstanceRequest method.
5149//    req, resp := client.RebootReplicationInstanceRequest(params)
5150//
5151//    err := req.Send()
5152//    if err == nil { // resp is now filled
5153//        fmt.Println(resp)
5154//    }
5155//
5156// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/RebootReplicationInstance
5157func (c *DatabaseMigrationService) RebootReplicationInstanceRequest(input *RebootReplicationInstanceInput) (req *request.Request, output *RebootReplicationInstanceOutput) {
5158	op := &request.Operation{
5159		Name:       opRebootReplicationInstance,
5160		HTTPMethod: "POST",
5161		HTTPPath:   "/",
5162	}
5163
5164	if input == nil {
5165		input = &RebootReplicationInstanceInput{}
5166	}
5167
5168	output = &RebootReplicationInstanceOutput{}
5169	req = c.newRequest(op, input, output)
5170	return
5171}
5172
5173// RebootReplicationInstance API operation for AWS Database Migration Service.
5174//
5175// Reboots a replication instance. Rebooting results in a momentary outage,
5176// until the replication instance becomes available again.
5177//
5178// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5179// with awserr.Error's Code and Message methods to get detailed information about
5180// the error.
5181//
5182// See the AWS API reference guide for AWS Database Migration Service's
5183// API operation RebootReplicationInstance for usage and error information.
5184//
5185// Returned Error Types:
5186//   * ResourceNotFoundFault
5187//   The resource could not be found.
5188//
5189//   * InvalidResourceStateFault
5190//   The resource is in a state that prevents it from being used for database
5191//   migration.
5192//
5193// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/RebootReplicationInstance
5194func (c *DatabaseMigrationService) RebootReplicationInstance(input *RebootReplicationInstanceInput) (*RebootReplicationInstanceOutput, error) {
5195	req, out := c.RebootReplicationInstanceRequest(input)
5196	return out, req.Send()
5197}
5198
5199// RebootReplicationInstanceWithContext is the same as RebootReplicationInstance with the addition of
5200// the ability to pass a context and additional request options.
5201//
5202// See RebootReplicationInstance for details on how to use this API operation.
5203//
5204// The context must be non-nil and will be used for request cancellation. If
5205// the context is nil a panic will occur. In the future the SDK may create
5206// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5207// for more information on using Contexts.
5208func (c *DatabaseMigrationService) RebootReplicationInstanceWithContext(ctx aws.Context, input *RebootReplicationInstanceInput, opts ...request.Option) (*RebootReplicationInstanceOutput, error) {
5209	req, out := c.RebootReplicationInstanceRequest(input)
5210	req.SetContext(ctx)
5211	req.ApplyOptions(opts...)
5212	return out, req.Send()
5213}
5214
5215const opRefreshSchemas = "RefreshSchemas"
5216
5217// RefreshSchemasRequest generates a "aws/request.Request" representing the
5218// client's request for the RefreshSchemas operation. The "output" return
5219// value will be populated with the request's response once the request completes
5220// successfully.
5221//
5222// Use "Send" method on the returned Request to send the API call to the service.
5223// the "output" return value is not valid until after Send returns without error.
5224//
5225// See RefreshSchemas for more information on using the RefreshSchemas
5226// API call, and error handling.
5227//
5228// This method is useful when you want to inject custom logic or configuration
5229// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5230//
5231//
5232//    // Example sending a request using the RefreshSchemasRequest method.
5233//    req, resp := client.RefreshSchemasRequest(params)
5234//
5235//    err := req.Send()
5236//    if err == nil { // resp is now filled
5237//        fmt.Println(resp)
5238//    }
5239//
5240// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/RefreshSchemas
5241func (c *DatabaseMigrationService) RefreshSchemasRequest(input *RefreshSchemasInput) (req *request.Request, output *RefreshSchemasOutput) {
5242	op := &request.Operation{
5243		Name:       opRefreshSchemas,
5244		HTTPMethod: "POST",
5245		HTTPPath:   "/",
5246	}
5247
5248	if input == nil {
5249		input = &RefreshSchemasInput{}
5250	}
5251
5252	output = &RefreshSchemasOutput{}
5253	req = c.newRequest(op, input, output)
5254	return
5255}
5256
5257// RefreshSchemas API operation for AWS Database Migration Service.
5258//
5259// Populates the schema for the specified endpoint. This is an asynchronous
5260// operation and can take several minutes. You can check the status of this
5261// operation by calling the DescribeRefreshSchemasStatus operation.
5262//
5263// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5264// with awserr.Error's Code and Message methods to get detailed information about
5265// the error.
5266//
5267// See the AWS API reference guide for AWS Database Migration Service's
5268// API operation RefreshSchemas for usage and error information.
5269//
5270// Returned Error Types:
5271//   * InvalidResourceStateFault
5272//   The resource is in a state that prevents it from being used for database
5273//   migration.
5274//
5275//   * ResourceNotFoundFault
5276//   The resource could not be found.
5277//
5278//   * KMSKeyNotAccessibleFault
5279//   AWS DMS cannot access the AWS KMS key.
5280//
5281//   * ResourceQuotaExceededFault
5282//   The quota for this resource quota has been exceeded.
5283//
5284// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/RefreshSchemas
5285func (c *DatabaseMigrationService) RefreshSchemas(input *RefreshSchemasInput) (*RefreshSchemasOutput, error) {
5286	req, out := c.RefreshSchemasRequest(input)
5287	return out, req.Send()
5288}
5289
5290// RefreshSchemasWithContext is the same as RefreshSchemas with the addition of
5291// the ability to pass a context and additional request options.
5292//
5293// See RefreshSchemas for details on how to use this API operation.
5294//
5295// The context must be non-nil and will be used for request cancellation. If
5296// the context is nil a panic will occur. In the future the SDK may create
5297// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5298// for more information on using Contexts.
5299func (c *DatabaseMigrationService) RefreshSchemasWithContext(ctx aws.Context, input *RefreshSchemasInput, opts ...request.Option) (*RefreshSchemasOutput, error) {
5300	req, out := c.RefreshSchemasRequest(input)
5301	req.SetContext(ctx)
5302	req.ApplyOptions(opts...)
5303	return out, req.Send()
5304}
5305
5306const opReloadTables = "ReloadTables"
5307
5308// ReloadTablesRequest generates a "aws/request.Request" representing the
5309// client's request for the ReloadTables operation. The "output" return
5310// value will be populated with the request's response once the request completes
5311// successfully.
5312//
5313// Use "Send" method on the returned Request to send the API call to the service.
5314// the "output" return value is not valid until after Send returns without error.
5315//
5316// See ReloadTables for more information on using the ReloadTables
5317// API call, and error handling.
5318//
5319// This method is useful when you want to inject custom logic or configuration
5320// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5321//
5322//
5323//    // Example sending a request using the ReloadTablesRequest method.
5324//    req, resp := client.ReloadTablesRequest(params)
5325//
5326//    err := req.Send()
5327//    if err == nil { // resp is now filled
5328//        fmt.Println(resp)
5329//    }
5330//
5331// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/ReloadTables
5332func (c *DatabaseMigrationService) ReloadTablesRequest(input *ReloadTablesInput) (req *request.Request, output *ReloadTablesOutput) {
5333	op := &request.Operation{
5334		Name:       opReloadTables,
5335		HTTPMethod: "POST",
5336		HTTPPath:   "/",
5337	}
5338
5339	if input == nil {
5340		input = &ReloadTablesInput{}
5341	}
5342
5343	output = &ReloadTablesOutput{}
5344	req = c.newRequest(op, input, output)
5345	return
5346}
5347
5348// ReloadTables API operation for AWS Database Migration Service.
5349//
5350// Reloads the target database table with the source data.
5351//
5352// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5353// with awserr.Error's Code and Message methods to get detailed information about
5354// the error.
5355//
5356// See the AWS API reference guide for AWS Database Migration Service's
5357// API operation ReloadTables for usage and error information.
5358//
5359// Returned Error Types:
5360//   * ResourceNotFoundFault
5361//   The resource could not be found.
5362//
5363//   * InvalidResourceStateFault
5364//   The resource is in a state that prevents it from being used for database
5365//   migration.
5366//
5367// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/ReloadTables
5368func (c *DatabaseMigrationService) ReloadTables(input *ReloadTablesInput) (*ReloadTablesOutput, error) {
5369	req, out := c.ReloadTablesRequest(input)
5370	return out, req.Send()
5371}
5372
5373// ReloadTablesWithContext is the same as ReloadTables with the addition of
5374// the ability to pass a context and additional request options.
5375//
5376// See ReloadTables for details on how to use this API operation.
5377//
5378// The context must be non-nil and will be used for request cancellation. If
5379// the context is nil a panic will occur. In the future the SDK may create
5380// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5381// for more information on using Contexts.
5382func (c *DatabaseMigrationService) ReloadTablesWithContext(ctx aws.Context, input *ReloadTablesInput, opts ...request.Option) (*ReloadTablesOutput, error) {
5383	req, out := c.ReloadTablesRequest(input)
5384	req.SetContext(ctx)
5385	req.ApplyOptions(opts...)
5386	return out, req.Send()
5387}
5388
5389const opRemoveTagsFromResource = "RemoveTagsFromResource"
5390
5391// RemoveTagsFromResourceRequest generates a "aws/request.Request" representing the
5392// client's request for the RemoveTagsFromResource operation. The "output" return
5393// value will be populated with the request's response once the request completes
5394// successfully.
5395//
5396// Use "Send" method on the returned Request to send the API call to the service.
5397// the "output" return value is not valid until after Send returns without error.
5398//
5399// See RemoveTagsFromResource for more information on using the RemoveTagsFromResource
5400// API call, and error handling.
5401//
5402// This method is useful when you want to inject custom logic or configuration
5403// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5404//
5405//
5406//    // Example sending a request using the RemoveTagsFromResourceRequest method.
5407//    req, resp := client.RemoveTagsFromResourceRequest(params)
5408//
5409//    err := req.Send()
5410//    if err == nil { // resp is now filled
5411//        fmt.Println(resp)
5412//    }
5413//
5414// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/RemoveTagsFromResource
5415func (c *DatabaseMigrationService) RemoveTagsFromResourceRequest(input *RemoveTagsFromResourceInput) (req *request.Request, output *RemoveTagsFromResourceOutput) {
5416	op := &request.Operation{
5417		Name:       opRemoveTagsFromResource,
5418		HTTPMethod: "POST",
5419		HTTPPath:   "/",
5420	}
5421
5422	if input == nil {
5423		input = &RemoveTagsFromResourceInput{}
5424	}
5425
5426	output = &RemoveTagsFromResourceOutput{}
5427	req = c.newRequest(op, input, output)
5428	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5429	return
5430}
5431
5432// RemoveTagsFromResource API operation for AWS Database Migration Service.
5433//
5434// Removes metadata tags from an AWS DMS resource, including replication instance,
5435// endpoint, security group, and migration task. For more information, see Tag
5436// (https://docs.aws.amazon.com/dms/latest/APIReference/API_Tag.html) data type
5437// description.
5438//
5439// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5440// with awserr.Error's Code and Message methods to get detailed information about
5441// the error.
5442//
5443// See the AWS API reference guide for AWS Database Migration Service's
5444// API operation RemoveTagsFromResource for usage and error information.
5445//
5446// Returned Error Types:
5447//   * ResourceNotFoundFault
5448//   The resource could not be found.
5449//
5450// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/RemoveTagsFromResource
5451func (c *DatabaseMigrationService) RemoveTagsFromResource(input *RemoveTagsFromResourceInput) (*RemoveTagsFromResourceOutput, error) {
5452	req, out := c.RemoveTagsFromResourceRequest(input)
5453	return out, req.Send()
5454}
5455
5456// RemoveTagsFromResourceWithContext is the same as RemoveTagsFromResource with the addition of
5457// the ability to pass a context and additional request options.
5458//
5459// See RemoveTagsFromResource for details on how to use this API operation.
5460//
5461// The context must be non-nil and will be used for request cancellation. If
5462// the context is nil a panic will occur. In the future the SDK may create
5463// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5464// for more information on using Contexts.
5465func (c *DatabaseMigrationService) RemoveTagsFromResourceWithContext(ctx aws.Context, input *RemoveTagsFromResourceInput, opts ...request.Option) (*RemoveTagsFromResourceOutput, error) {
5466	req, out := c.RemoveTagsFromResourceRequest(input)
5467	req.SetContext(ctx)
5468	req.ApplyOptions(opts...)
5469	return out, req.Send()
5470}
5471
5472const opStartReplicationTask = "StartReplicationTask"
5473
5474// StartReplicationTaskRequest generates a "aws/request.Request" representing the
5475// client's request for the StartReplicationTask operation. The "output" return
5476// value will be populated with the request's response once the request completes
5477// successfully.
5478//
5479// Use "Send" method on the returned Request to send the API call to the service.
5480// the "output" return value is not valid until after Send returns without error.
5481//
5482// See StartReplicationTask for more information on using the StartReplicationTask
5483// API call, and error handling.
5484//
5485// This method is useful when you want to inject custom logic or configuration
5486// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5487//
5488//
5489//    // Example sending a request using the StartReplicationTaskRequest method.
5490//    req, resp := client.StartReplicationTaskRequest(params)
5491//
5492//    err := req.Send()
5493//    if err == nil { // resp is now filled
5494//        fmt.Println(resp)
5495//    }
5496//
5497// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/StartReplicationTask
5498func (c *DatabaseMigrationService) StartReplicationTaskRequest(input *StartReplicationTaskInput) (req *request.Request, output *StartReplicationTaskOutput) {
5499	op := &request.Operation{
5500		Name:       opStartReplicationTask,
5501		HTTPMethod: "POST",
5502		HTTPPath:   "/",
5503	}
5504
5505	if input == nil {
5506		input = &StartReplicationTaskInput{}
5507	}
5508
5509	output = &StartReplicationTaskOutput{}
5510	req = c.newRequest(op, input, output)
5511	return
5512}
5513
5514// StartReplicationTask API operation for AWS Database Migration Service.
5515//
5516// Starts the replication task.
5517//
5518// For more information about AWS DMS tasks, see Working with Migration Tasks
5519// (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Tasks.html) in the
5520// AWS Database Migration Service User Guide.
5521//
5522// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5523// with awserr.Error's Code and Message methods to get detailed information about
5524// the error.
5525//
5526// See the AWS API reference guide for AWS Database Migration Service's
5527// API operation StartReplicationTask for usage and error information.
5528//
5529// Returned Error Types:
5530//   * ResourceNotFoundFault
5531//   The resource could not be found.
5532//
5533//   * InvalidResourceStateFault
5534//   The resource is in a state that prevents it from being used for database
5535//   migration.
5536//
5537//   * AccessDeniedFault
5538//   AWS DMS was denied access to the endpoint. Check that the role is correctly
5539//   configured.
5540//
5541// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/StartReplicationTask
5542func (c *DatabaseMigrationService) StartReplicationTask(input *StartReplicationTaskInput) (*StartReplicationTaskOutput, error) {
5543	req, out := c.StartReplicationTaskRequest(input)
5544	return out, req.Send()
5545}
5546
5547// StartReplicationTaskWithContext is the same as StartReplicationTask with the addition of
5548// the ability to pass a context and additional request options.
5549//
5550// See StartReplicationTask for details on how to use this API operation.
5551//
5552// The context must be non-nil and will be used for request cancellation. If
5553// the context is nil a panic will occur. In the future the SDK may create
5554// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5555// for more information on using Contexts.
5556func (c *DatabaseMigrationService) StartReplicationTaskWithContext(ctx aws.Context, input *StartReplicationTaskInput, opts ...request.Option) (*StartReplicationTaskOutput, error) {
5557	req, out := c.StartReplicationTaskRequest(input)
5558	req.SetContext(ctx)
5559	req.ApplyOptions(opts...)
5560	return out, req.Send()
5561}
5562
5563const opStartReplicationTaskAssessment = "StartReplicationTaskAssessment"
5564
5565// StartReplicationTaskAssessmentRequest generates a "aws/request.Request" representing the
5566// client's request for the StartReplicationTaskAssessment operation. The "output" return
5567// value will be populated with the request's response once the request completes
5568// successfully.
5569//
5570// Use "Send" method on the returned Request to send the API call to the service.
5571// the "output" return value is not valid until after Send returns without error.
5572//
5573// See StartReplicationTaskAssessment for more information on using the StartReplicationTaskAssessment
5574// API call, and error handling.
5575//
5576// This method is useful when you want to inject custom logic or configuration
5577// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5578//
5579//
5580//    // Example sending a request using the StartReplicationTaskAssessmentRequest method.
5581//    req, resp := client.StartReplicationTaskAssessmentRequest(params)
5582//
5583//    err := req.Send()
5584//    if err == nil { // resp is now filled
5585//        fmt.Println(resp)
5586//    }
5587//
5588// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/StartReplicationTaskAssessment
5589func (c *DatabaseMigrationService) StartReplicationTaskAssessmentRequest(input *StartReplicationTaskAssessmentInput) (req *request.Request, output *StartReplicationTaskAssessmentOutput) {
5590	op := &request.Operation{
5591		Name:       opStartReplicationTaskAssessment,
5592		HTTPMethod: "POST",
5593		HTTPPath:   "/",
5594	}
5595
5596	if input == nil {
5597		input = &StartReplicationTaskAssessmentInput{}
5598	}
5599
5600	output = &StartReplicationTaskAssessmentOutput{}
5601	req = c.newRequest(op, input, output)
5602	return
5603}
5604
5605// StartReplicationTaskAssessment API operation for AWS Database Migration Service.
5606//
5607// Starts the replication task assessment for unsupported data types in the
5608// source database.
5609//
5610// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5611// with awserr.Error's Code and Message methods to get detailed information about
5612// the error.
5613//
5614// See the AWS API reference guide for AWS Database Migration Service's
5615// API operation StartReplicationTaskAssessment for usage and error information.
5616//
5617// Returned Error Types:
5618//   * InvalidResourceStateFault
5619//   The resource is in a state that prevents it from being used for database
5620//   migration.
5621//
5622//   * ResourceNotFoundFault
5623//   The resource could not be found.
5624//
5625// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/StartReplicationTaskAssessment
5626func (c *DatabaseMigrationService) StartReplicationTaskAssessment(input *StartReplicationTaskAssessmentInput) (*StartReplicationTaskAssessmentOutput, error) {
5627	req, out := c.StartReplicationTaskAssessmentRequest(input)
5628	return out, req.Send()
5629}
5630
5631// StartReplicationTaskAssessmentWithContext is the same as StartReplicationTaskAssessment with the addition of
5632// the ability to pass a context and additional request options.
5633//
5634// See StartReplicationTaskAssessment for details on how to use this API operation.
5635//
5636// The context must be non-nil and will be used for request cancellation. If
5637// the context is nil a panic will occur. In the future the SDK may create
5638// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5639// for more information on using Contexts.
5640func (c *DatabaseMigrationService) StartReplicationTaskAssessmentWithContext(ctx aws.Context, input *StartReplicationTaskAssessmentInput, opts ...request.Option) (*StartReplicationTaskAssessmentOutput, error) {
5641	req, out := c.StartReplicationTaskAssessmentRequest(input)
5642	req.SetContext(ctx)
5643	req.ApplyOptions(opts...)
5644	return out, req.Send()
5645}
5646
5647const opStartReplicationTaskAssessmentRun = "StartReplicationTaskAssessmentRun"
5648
5649// StartReplicationTaskAssessmentRunRequest generates a "aws/request.Request" representing the
5650// client's request for the StartReplicationTaskAssessmentRun operation. The "output" return
5651// value will be populated with the request's response once the request completes
5652// successfully.
5653//
5654// Use "Send" method on the returned Request to send the API call to the service.
5655// the "output" return value is not valid until after Send returns without error.
5656//
5657// See StartReplicationTaskAssessmentRun for more information on using the StartReplicationTaskAssessmentRun
5658// API call, and error handling.
5659//
5660// This method is useful when you want to inject custom logic or configuration
5661// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5662//
5663//
5664//    // Example sending a request using the StartReplicationTaskAssessmentRunRequest method.
5665//    req, resp := client.StartReplicationTaskAssessmentRunRequest(params)
5666//
5667//    err := req.Send()
5668//    if err == nil { // resp is now filled
5669//        fmt.Println(resp)
5670//    }
5671//
5672// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/StartReplicationTaskAssessmentRun
5673func (c *DatabaseMigrationService) StartReplicationTaskAssessmentRunRequest(input *StartReplicationTaskAssessmentRunInput) (req *request.Request, output *StartReplicationTaskAssessmentRunOutput) {
5674	op := &request.Operation{
5675		Name:       opStartReplicationTaskAssessmentRun,
5676		HTTPMethod: "POST",
5677		HTTPPath:   "/",
5678	}
5679
5680	if input == nil {
5681		input = &StartReplicationTaskAssessmentRunInput{}
5682	}
5683
5684	output = &StartReplicationTaskAssessmentRunOutput{}
5685	req = c.newRequest(op, input, output)
5686	return
5687}
5688
5689// StartReplicationTaskAssessmentRun API operation for AWS Database Migration Service.
5690//
5691// Starts a new premigration assessment run for one or more individual assessments
5692// of a migration task.
5693//
5694// The assessments that you can specify depend on the source and target database
5695// engine and the migration type defined for the given task. To run this operation,
5696// your migration task must already be created. After you run this operation,
5697// you can review the status of each individual assessment. You can also run
5698// the migration task manually after the assessment run and its individual assessments
5699// complete.
5700//
5701// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5702// with awserr.Error's Code and Message methods to get detailed information about
5703// the error.
5704//
5705// See the AWS API reference guide for AWS Database Migration Service's
5706// API operation StartReplicationTaskAssessmentRun for usage and error information.
5707//
5708// Returned Error Types:
5709//   * AccessDeniedFault
5710//   AWS DMS was denied access to the endpoint. Check that the role is correctly
5711//   configured.
5712//
5713//   * ResourceNotFoundFault
5714//   The resource could not be found.
5715//
5716//   * InvalidResourceStateFault
5717//   The resource is in a state that prevents it from being used for database
5718//   migration.
5719//
5720//   * KMSAccessDeniedFault
5721//   The ciphertext references a key that doesn't exist or that the DMS account
5722//   doesn't have access to.
5723//
5724//   * KMSDisabledFault
5725//   The specified master key (CMK) isn't enabled.
5726//
5727//   * KMSFault
5728//   An AWS Key Management Service (AWS KMS) error is preventing access to AWS
5729//   KMS.
5730//
5731//   * KMSInvalidStateFault
5732//   The state of the specified AWS KMS resource isn't valid for this request.
5733//
5734//   * KMSNotFoundFault
5735//   The specified AWS KMS entity or resource can't be found.
5736//
5737//   * KMSKeyNotAccessibleFault
5738//   AWS DMS cannot access the AWS KMS key.
5739//
5740//   * S3AccessDeniedFault
5741//   Insufficient privileges are preventing access to an Amazon S3 object.
5742//
5743//   * S3ResourceNotFoundFault
5744//   A specified Amazon S3 bucket, bucket folder, or other object can't be found.
5745//
5746//   * ResourceAlreadyExistsFault
5747//   The resource you are attempting to create already exists.
5748//
5749// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/StartReplicationTaskAssessmentRun
5750func (c *DatabaseMigrationService) StartReplicationTaskAssessmentRun(input *StartReplicationTaskAssessmentRunInput) (*StartReplicationTaskAssessmentRunOutput, error) {
5751	req, out := c.StartReplicationTaskAssessmentRunRequest(input)
5752	return out, req.Send()
5753}
5754
5755// StartReplicationTaskAssessmentRunWithContext is the same as StartReplicationTaskAssessmentRun with the addition of
5756// the ability to pass a context and additional request options.
5757//
5758// See StartReplicationTaskAssessmentRun for details on how to use this API operation.
5759//
5760// The context must be non-nil and will be used for request cancellation. If
5761// the context is nil a panic will occur. In the future the SDK may create
5762// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5763// for more information on using Contexts.
5764func (c *DatabaseMigrationService) StartReplicationTaskAssessmentRunWithContext(ctx aws.Context, input *StartReplicationTaskAssessmentRunInput, opts ...request.Option) (*StartReplicationTaskAssessmentRunOutput, error) {
5765	req, out := c.StartReplicationTaskAssessmentRunRequest(input)
5766	req.SetContext(ctx)
5767	req.ApplyOptions(opts...)
5768	return out, req.Send()
5769}
5770
5771const opStopReplicationTask = "StopReplicationTask"
5772
5773// StopReplicationTaskRequest generates a "aws/request.Request" representing the
5774// client's request for the StopReplicationTask operation. The "output" return
5775// value will be populated with the request's response once the request completes
5776// successfully.
5777//
5778// Use "Send" method on the returned Request to send the API call to the service.
5779// the "output" return value is not valid until after Send returns without error.
5780//
5781// See StopReplicationTask for more information on using the StopReplicationTask
5782// API call, and error handling.
5783//
5784// This method is useful when you want to inject custom logic or configuration
5785// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5786//
5787//
5788//    // Example sending a request using the StopReplicationTaskRequest method.
5789//    req, resp := client.StopReplicationTaskRequest(params)
5790//
5791//    err := req.Send()
5792//    if err == nil { // resp is now filled
5793//        fmt.Println(resp)
5794//    }
5795//
5796// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/StopReplicationTask
5797func (c *DatabaseMigrationService) StopReplicationTaskRequest(input *StopReplicationTaskInput) (req *request.Request, output *StopReplicationTaskOutput) {
5798	op := &request.Operation{
5799		Name:       opStopReplicationTask,
5800		HTTPMethod: "POST",
5801		HTTPPath:   "/",
5802	}
5803
5804	if input == nil {
5805		input = &StopReplicationTaskInput{}
5806	}
5807
5808	output = &StopReplicationTaskOutput{}
5809	req = c.newRequest(op, input, output)
5810	return
5811}
5812
5813// StopReplicationTask API operation for AWS Database Migration Service.
5814//
5815// Stops the replication task.
5816//
5817// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5818// with awserr.Error's Code and Message methods to get detailed information about
5819// the error.
5820//
5821// See the AWS API reference guide for AWS Database Migration Service's
5822// API operation StopReplicationTask for usage and error information.
5823//
5824// Returned Error Types:
5825//   * ResourceNotFoundFault
5826//   The resource could not be found.
5827//
5828//   * InvalidResourceStateFault
5829//   The resource is in a state that prevents it from being used for database
5830//   migration.
5831//
5832// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/StopReplicationTask
5833func (c *DatabaseMigrationService) StopReplicationTask(input *StopReplicationTaskInput) (*StopReplicationTaskOutput, error) {
5834	req, out := c.StopReplicationTaskRequest(input)
5835	return out, req.Send()
5836}
5837
5838// StopReplicationTaskWithContext is the same as StopReplicationTask with the addition of
5839// the ability to pass a context and additional request options.
5840//
5841// See StopReplicationTask for details on how to use this API operation.
5842//
5843// The context must be non-nil and will be used for request cancellation. If
5844// the context is nil a panic will occur. In the future the SDK may create
5845// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5846// for more information on using Contexts.
5847func (c *DatabaseMigrationService) StopReplicationTaskWithContext(ctx aws.Context, input *StopReplicationTaskInput, opts ...request.Option) (*StopReplicationTaskOutput, error) {
5848	req, out := c.StopReplicationTaskRequest(input)
5849	req.SetContext(ctx)
5850	req.ApplyOptions(opts...)
5851	return out, req.Send()
5852}
5853
5854const opTestConnection = "TestConnection"
5855
5856// TestConnectionRequest generates a "aws/request.Request" representing the
5857// client's request for the TestConnection operation. The "output" return
5858// value will be populated with the request's response once the request completes
5859// successfully.
5860//
5861// Use "Send" method on the returned Request to send the API call to the service.
5862// the "output" return value is not valid until after Send returns without error.
5863//
5864// See TestConnection for more information on using the TestConnection
5865// API call, and error handling.
5866//
5867// This method is useful when you want to inject custom logic or configuration
5868// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5869//
5870//
5871//    // Example sending a request using the TestConnectionRequest method.
5872//    req, resp := client.TestConnectionRequest(params)
5873//
5874//    err := req.Send()
5875//    if err == nil { // resp is now filled
5876//        fmt.Println(resp)
5877//    }
5878//
5879// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/TestConnection
5880func (c *DatabaseMigrationService) TestConnectionRequest(input *TestConnectionInput) (req *request.Request, output *TestConnectionOutput) {
5881	op := &request.Operation{
5882		Name:       opTestConnection,
5883		HTTPMethod: "POST",
5884		HTTPPath:   "/",
5885	}
5886
5887	if input == nil {
5888		input = &TestConnectionInput{}
5889	}
5890
5891	output = &TestConnectionOutput{}
5892	req = c.newRequest(op, input, output)
5893	return
5894}
5895
5896// TestConnection API operation for AWS Database Migration Service.
5897//
5898// Tests the connection between the replication instance and the endpoint.
5899//
5900// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5901// with awserr.Error's Code and Message methods to get detailed information about
5902// the error.
5903//
5904// See the AWS API reference guide for AWS Database Migration Service's
5905// API operation TestConnection for usage and error information.
5906//
5907// Returned Error Types:
5908//   * ResourceNotFoundFault
5909//   The resource could not be found.
5910//
5911//   * InvalidResourceStateFault
5912//   The resource is in a state that prevents it from being used for database
5913//   migration.
5914//
5915//   * KMSKeyNotAccessibleFault
5916//   AWS DMS cannot access the AWS KMS key.
5917//
5918//   * ResourceQuotaExceededFault
5919//   The quota for this resource quota has been exceeded.
5920//
5921//   * AccessDeniedFault
5922//   AWS DMS was denied access to the endpoint. Check that the role is correctly
5923//   configured.
5924//
5925// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/TestConnection
5926func (c *DatabaseMigrationService) TestConnection(input *TestConnectionInput) (*TestConnectionOutput, error) {
5927	req, out := c.TestConnectionRequest(input)
5928	return out, req.Send()
5929}
5930
5931// TestConnectionWithContext is the same as TestConnection with the addition of
5932// the ability to pass a context and additional request options.
5933//
5934// See TestConnection for details on how to use this API operation.
5935//
5936// The context must be non-nil and will be used for request cancellation. If
5937// the context is nil a panic will occur. In the future the SDK may create
5938// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5939// for more information on using Contexts.
5940func (c *DatabaseMigrationService) TestConnectionWithContext(ctx aws.Context, input *TestConnectionInput, opts ...request.Option) (*TestConnectionOutput, error) {
5941	req, out := c.TestConnectionRequest(input)
5942	req.SetContext(ctx)
5943	req.ApplyOptions(opts...)
5944	return out, req.Send()
5945}
5946
5947// AWS DMS was denied access to the endpoint. Check that the role is correctly
5948// configured.
5949type AccessDeniedFault struct {
5950	_            struct{}                  `type:"structure"`
5951	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
5952
5953	Message_ *string `locationName:"message" type:"string"`
5954}
5955
5956// String returns the string representation
5957func (s AccessDeniedFault) String() string {
5958	return awsutil.Prettify(s)
5959}
5960
5961// GoString returns the string representation
5962func (s AccessDeniedFault) GoString() string {
5963	return s.String()
5964}
5965
5966func newErrorAccessDeniedFault(v protocol.ResponseMetadata) error {
5967	return &AccessDeniedFault{
5968		RespMetadata: v,
5969	}
5970}
5971
5972// Code returns the exception type name.
5973func (s *AccessDeniedFault) Code() string {
5974	return "AccessDeniedFault"
5975}
5976
5977// Message returns the exception's message.
5978func (s *AccessDeniedFault) Message() string {
5979	if s.Message_ != nil {
5980		return *s.Message_
5981	}
5982	return ""
5983}
5984
5985// OrigErr always returns nil, satisfies awserr.Error interface.
5986func (s *AccessDeniedFault) OrigErr() error {
5987	return nil
5988}
5989
5990func (s *AccessDeniedFault) Error() string {
5991	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
5992}
5993
5994// Status code returns the HTTP status code for the request's response error.
5995func (s *AccessDeniedFault) StatusCode() int {
5996	return s.RespMetadata.StatusCode
5997}
5998
5999// RequestID returns the service's response RequestID for request.
6000func (s *AccessDeniedFault) RequestID() string {
6001	return s.RespMetadata.RequestID
6002}
6003
6004// Describes a quota for an AWS account, for example, the number of replication
6005// instances allowed.
6006type AccountQuota struct {
6007	_ struct{} `type:"structure"`
6008
6009	// The name of the AWS DMS quota for this AWS account.
6010	AccountQuotaName *string `type:"string"`
6011
6012	// The maximum allowed value for the quota.
6013	Max *int64 `type:"long"`
6014
6015	// The amount currently used toward the quota maximum.
6016	Used *int64 `type:"long"`
6017}
6018
6019// String returns the string representation
6020func (s AccountQuota) String() string {
6021	return awsutil.Prettify(s)
6022}
6023
6024// GoString returns the string representation
6025func (s AccountQuota) GoString() string {
6026	return s.String()
6027}
6028
6029// SetAccountQuotaName sets the AccountQuotaName field's value.
6030func (s *AccountQuota) SetAccountQuotaName(v string) *AccountQuota {
6031	s.AccountQuotaName = &v
6032	return s
6033}
6034
6035// SetMax sets the Max field's value.
6036func (s *AccountQuota) SetMax(v int64) *AccountQuota {
6037	s.Max = &v
6038	return s
6039}
6040
6041// SetUsed sets the Used field's value.
6042func (s *AccountQuota) SetUsed(v int64) *AccountQuota {
6043	s.Used = &v
6044	return s
6045}
6046
6047// Associates a set of tags with an AWS DMS resource.
6048type AddTagsToResourceInput struct {
6049	_ struct{} `type:"structure"`
6050
6051	// Identifies the AWS DMS resource to which tags should be added. The value
6052	// for this parameter is an Amazon Resource Name (ARN).
6053	//
6054	// For AWS DMS, you can tag a replication instance, an endpoint, or a replication
6055	// task.
6056	//
6057	// ResourceArn is a required field
6058	ResourceArn *string `type:"string" required:"true"`
6059
6060	// One or more tags to be assigned to the resource.
6061	//
6062	// Tags is a required field
6063	Tags []*Tag `type:"list" required:"true"`
6064}
6065
6066// String returns the string representation
6067func (s AddTagsToResourceInput) String() string {
6068	return awsutil.Prettify(s)
6069}
6070
6071// GoString returns the string representation
6072func (s AddTagsToResourceInput) GoString() string {
6073	return s.String()
6074}
6075
6076// Validate inspects the fields of the type to determine if they are valid.
6077func (s *AddTagsToResourceInput) Validate() error {
6078	invalidParams := request.ErrInvalidParams{Context: "AddTagsToResourceInput"}
6079	if s.ResourceArn == nil {
6080		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
6081	}
6082	if s.Tags == nil {
6083		invalidParams.Add(request.NewErrParamRequired("Tags"))
6084	}
6085
6086	if invalidParams.Len() > 0 {
6087		return invalidParams
6088	}
6089	return nil
6090}
6091
6092// SetResourceArn sets the ResourceArn field's value.
6093func (s *AddTagsToResourceInput) SetResourceArn(v string) *AddTagsToResourceInput {
6094	s.ResourceArn = &v
6095	return s
6096}
6097
6098// SetTags sets the Tags field's value.
6099func (s *AddTagsToResourceInput) SetTags(v []*Tag) *AddTagsToResourceInput {
6100	s.Tags = v
6101	return s
6102}
6103
6104type AddTagsToResourceOutput struct {
6105	_ struct{} `type:"structure"`
6106}
6107
6108// String returns the string representation
6109func (s AddTagsToResourceOutput) String() string {
6110	return awsutil.Prettify(s)
6111}
6112
6113// GoString returns the string representation
6114func (s AddTagsToResourceOutput) GoString() string {
6115	return s.String()
6116}
6117
6118type ApplyPendingMaintenanceActionInput struct {
6119	_ struct{} `type:"structure"`
6120
6121	// The pending maintenance action to apply to this resource.
6122	//
6123	// ApplyAction is a required field
6124	ApplyAction *string `type:"string" required:"true"`
6125
6126	// A value that specifies the type of opt-in request, or undoes an opt-in request.
6127	// You can't undo an opt-in request of type immediate.
6128	//
6129	// Valid values:
6130	//
6131	//    * immediate - Apply the maintenance action immediately.
6132	//
6133	//    * next-maintenance - Apply the maintenance action during the next maintenance
6134	//    window for the resource.
6135	//
6136	//    * undo-opt-in - Cancel any existing next-maintenance opt-in requests.
6137	//
6138	// OptInType is a required field
6139	OptInType *string `type:"string" required:"true"`
6140
6141	// The Amazon Resource Name (ARN) of the AWS DMS resource that the pending maintenance
6142	// action applies to.
6143	//
6144	// ReplicationInstanceArn is a required field
6145	ReplicationInstanceArn *string `type:"string" required:"true"`
6146}
6147
6148// String returns the string representation
6149func (s ApplyPendingMaintenanceActionInput) String() string {
6150	return awsutil.Prettify(s)
6151}
6152
6153// GoString returns the string representation
6154func (s ApplyPendingMaintenanceActionInput) GoString() string {
6155	return s.String()
6156}
6157
6158// Validate inspects the fields of the type to determine if they are valid.
6159func (s *ApplyPendingMaintenanceActionInput) Validate() error {
6160	invalidParams := request.ErrInvalidParams{Context: "ApplyPendingMaintenanceActionInput"}
6161	if s.ApplyAction == nil {
6162		invalidParams.Add(request.NewErrParamRequired("ApplyAction"))
6163	}
6164	if s.OptInType == nil {
6165		invalidParams.Add(request.NewErrParamRequired("OptInType"))
6166	}
6167	if s.ReplicationInstanceArn == nil {
6168		invalidParams.Add(request.NewErrParamRequired("ReplicationInstanceArn"))
6169	}
6170
6171	if invalidParams.Len() > 0 {
6172		return invalidParams
6173	}
6174	return nil
6175}
6176
6177// SetApplyAction sets the ApplyAction field's value.
6178func (s *ApplyPendingMaintenanceActionInput) SetApplyAction(v string) *ApplyPendingMaintenanceActionInput {
6179	s.ApplyAction = &v
6180	return s
6181}
6182
6183// SetOptInType sets the OptInType field's value.
6184func (s *ApplyPendingMaintenanceActionInput) SetOptInType(v string) *ApplyPendingMaintenanceActionInput {
6185	s.OptInType = &v
6186	return s
6187}
6188
6189// SetReplicationInstanceArn sets the ReplicationInstanceArn field's value.
6190func (s *ApplyPendingMaintenanceActionInput) SetReplicationInstanceArn(v string) *ApplyPendingMaintenanceActionInput {
6191	s.ReplicationInstanceArn = &v
6192	return s
6193}
6194
6195type ApplyPendingMaintenanceActionOutput struct {
6196	_ struct{} `type:"structure"`
6197
6198	// The AWS DMS resource that the pending maintenance action will be applied
6199	// to.
6200	ResourcePendingMaintenanceActions *ResourcePendingMaintenanceActions `type:"structure"`
6201}
6202
6203// String returns the string representation
6204func (s ApplyPendingMaintenanceActionOutput) String() string {
6205	return awsutil.Prettify(s)
6206}
6207
6208// GoString returns the string representation
6209func (s ApplyPendingMaintenanceActionOutput) GoString() string {
6210	return s.String()
6211}
6212
6213// SetResourcePendingMaintenanceActions sets the ResourcePendingMaintenanceActions field's value.
6214func (s *ApplyPendingMaintenanceActionOutput) SetResourcePendingMaintenanceActions(v *ResourcePendingMaintenanceActions) *ApplyPendingMaintenanceActionOutput {
6215	s.ResourcePendingMaintenanceActions = v
6216	return s
6217}
6218
6219// The name of an Availability Zone for use during database migration. AvailabilityZone
6220// is an optional parameter to the CreateReplicationInstance (https://docs.aws.amazon.com/dms/latest/APIReference/API_CreateReplicationInstance.html)
6221// operation, and it’s value relates to the AWS Region of an endpoint. For
6222// example, the availability zone of an endpoint in the us-east-1 region might
6223// be us-east-1a, us-east-1b, us-east-1c, or us-east-1d.
6224type AvailabilityZone struct {
6225	_ struct{} `type:"structure"`
6226
6227	// The name of the Availability Zone.
6228	Name *string `type:"string"`
6229}
6230
6231// String returns the string representation
6232func (s AvailabilityZone) String() string {
6233	return awsutil.Prettify(s)
6234}
6235
6236// GoString returns the string representation
6237func (s AvailabilityZone) GoString() string {
6238	return s.String()
6239}
6240
6241// SetName sets the Name field's value.
6242func (s *AvailabilityZone) SetName(v string) *AvailabilityZone {
6243	s.Name = &v
6244	return s
6245}
6246
6247type CancelReplicationTaskAssessmentRunInput struct {
6248	_ struct{} `type:"structure"`
6249
6250	// Amazon Resource Name (ARN) of the premigration assessment run to be canceled.
6251	//
6252	// ReplicationTaskAssessmentRunArn is a required field
6253	ReplicationTaskAssessmentRunArn *string `type:"string" required:"true"`
6254}
6255
6256// String returns the string representation
6257func (s CancelReplicationTaskAssessmentRunInput) String() string {
6258	return awsutil.Prettify(s)
6259}
6260
6261// GoString returns the string representation
6262func (s CancelReplicationTaskAssessmentRunInput) GoString() string {
6263	return s.String()
6264}
6265
6266// Validate inspects the fields of the type to determine if they are valid.
6267func (s *CancelReplicationTaskAssessmentRunInput) Validate() error {
6268	invalidParams := request.ErrInvalidParams{Context: "CancelReplicationTaskAssessmentRunInput"}
6269	if s.ReplicationTaskAssessmentRunArn == nil {
6270		invalidParams.Add(request.NewErrParamRequired("ReplicationTaskAssessmentRunArn"))
6271	}
6272
6273	if invalidParams.Len() > 0 {
6274		return invalidParams
6275	}
6276	return nil
6277}
6278
6279// SetReplicationTaskAssessmentRunArn sets the ReplicationTaskAssessmentRunArn field's value.
6280func (s *CancelReplicationTaskAssessmentRunInput) SetReplicationTaskAssessmentRunArn(v string) *CancelReplicationTaskAssessmentRunInput {
6281	s.ReplicationTaskAssessmentRunArn = &v
6282	return s
6283}
6284
6285type CancelReplicationTaskAssessmentRunOutput struct {
6286	_ struct{} `type:"structure"`
6287
6288	// The ReplicationTaskAssessmentRun object for the canceled assessment run.
6289	ReplicationTaskAssessmentRun *ReplicationTaskAssessmentRun `type:"structure"`
6290}
6291
6292// String returns the string representation
6293func (s CancelReplicationTaskAssessmentRunOutput) String() string {
6294	return awsutil.Prettify(s)
6295}
6296
6297// GoString returns the string representation
6298func (s CancelReplicationTaskAssessmentRunOutput) GoString() string {
6299	return s.String()
6300}
6301
6302// SetReplicationTaskAssessmentRun sets the ReplicationTaskAssessmentRun field's value.
6303func (s *CancelReplicationTaskAssessmentRunOutput) SetReplicationTaskAssessmentRun(v *ReplicationTaskAssessmentRun) *CancelReplicationTaskAssessmentRunOutput {
6304	s.ReplicationTaskAssessmentRun = v
6305	return s
6306}
6307
6308// The SSL certificate that can be used to encrypt connections between the endpoints
6309// and the replication instance.
6310type Certificate struct {
6311	_ struct{} `type:"structure"`
6312
6313	// The Amazon Resource Name (ARN) for the certificate.
6314	CertificateArn *string `type:"string"`
6315
6316	// The date that the certificate was created.
6317	CertificateCreationDate *time.Time `type:"timestamp"`
6318
6319	// A customer-assigned name for the certificate. Identifiers must begin with
6320	// a letter and must contain only ASCII letters, digits, and hyphens. They can't
6321	// end with a hyphen or contain two consecutive hyphens.
6322	CertificateIdentifier *string `type:"string"`
6323
6324	// The owner of the certificate.
6325	CertificateOwner *string `type:"string"`
6326
6327	// The contents of a .pem file, which contains an X.509 certificate.
6328	CertificatePem *string `type:"string"`
6329
6330	// The location of an imported Oracle Wallet certificate for use with SSL.
6331	//
6332	// CertificateWallet is automatically base64 encoded/decoded by the SDK.
6333	CertificateWallet []byte `type:"blob"`
6334
6335	// The key length of the cryptographic algorithm being used.
6336	KeyLength *int64 `type:"integer"`
6337
6338	// The signing algorithm for the certificate.
6339	SigningAlgorithm *string `type:"string"`
6340
6341	// The beginning date that the certificate is valid.
6342	ValidFromDate *time.Time `type:"timestamp"`
6343
6344	// The final date that the certificate is valid.
6345	ValidToDate *time.Time `type:"timestamp"`
6346}
6347
6348// String returns the string representation
6349func (s Certificate) String() string {
6350	return awsutil.Prettify(s)
6351}
6352
6353// GoString returns the string representation
6354func (s Certificate) GoString() string {
6355	return s.String()
6356}
6357
6358// SetCertificateArn sets the CertificateArn field's value.
6359func (s *Certificate) SetCertificateArn(v string) *Certificate {
6360	s.CertificateArn = &v
6361	return s
6362}
6363
6364// SetCertificateCreationDate sets the CertificateCreationDate field's value.
6365func (s *Certificate) SetCertificateCreationDate(v time.Time) *Certificate {
6366	s.CertificateCreationDate = &v
6367	return s
6368}
6369
6370// SetCertificateIdentifier sets the CertificateIdentifier field's value.
6371func (s *Certificate) SetCertificateIdentifier(v string) *Certificate {
6372	s.CertificateIdentifier = &v
6373	return s
6374}
6375
6376// SetCertificateOwner sets the CertificateOwner field's value.
6377func (s *Certificate) SetCertificateOwner(v string) *Certificate {
6378	s.CertificateOwner = &v
6379	return s
6380}
6381
6382// SetCertificatePem sets the CertificatePem field's value.
6383func (s *Certificate) SetCertificatePem(v string) *Certificate {
6384	s.CertificatePem = &v
6385	return s
6386}
6387
6388// SetCertificateWallet sets the CertificateWallet field's value.
6389func (s *Certificate) SetCertificateWallet(v []byte) *Certificate {
6390	s.CertificateWallet = v
6391	return s
6392}
6393
6394// SetKeyLength sets the KeyLength field's value.
6395func (s *Certificate) SetKeyLength(v int64) *Certificate {
6396	s.KeyLength = &v
6397	return s
6398}
6399
6400// SetSigningAlgorithm sets the SigningAlgorithm field's value.
6401func (s *Certificate) SetSigningAlgorithm(v string) *Certificate {
6402	s.SigningAlgorithm = &v
6403	return s
6404}
6405
6406// SetValidFromDate sets the ValidFromDate field's value.
6407func (s *Certificate) SetValidFromDate(v time.Time) *Certificate {
6408	s.ValidFromDate = &v
6409	return s
6410}
6411
6412// SetValidToDate sets the ValidToDate field's value.
6413func (s *Certificate) SetValidToDate(v time.Time) *Certificate {
6414	s.ValidToDate = &v
6415	return s
6416}
6417
6418// Status of the connection between an endpoint and a replication instance,
6419// including Amazon Resource Names (ARNs) and the last error message issued.
6420type Connection struct {
6421	_ struct{} `type:"structure"`
6422
6423	// The ARN string that uniquely identifies the endpoint.
6424	EndpointArn *string `type:"string"`
6425
6426	// The identifier of the endpoint. Identifiers must begin with a letter and
6427	// must contain only ASCII letters, digits, and hyphens. They can't end with
6428	// a hyphen or contain two consecutive hyphens.
6429	EndpointIdentifier *string `type:"string"`
6430
6431	// The error message when the connection last failed.
6432	LastFailureMessage *string `type:"string"`
6433
6434	// The ARN of the replication instance.
6435	ReplicationInstanceArn *string `type:"string"`
6436
6437	// The replication instance identifier. This parameter is stored as a lowercase
6438	// string.
6439	ReplicationInstanceIdentifier *string `type:"string"`
6440
6441	// The connection status. This parameter can return one of the following values:
6442	//
6443	//    * "successful"
6444	//
6445	//    * "testing"
6446	//
6447	//    * "failed"
6448	//
6449	//    * "deleting"
6450	Status *string `type:"string"`
6451}
6452
6453// String returns the string representation
6454func (s Connection) String() string {
6455	return awsutil.Prettify(s)
6456}
6457
6458// GoString returns the string representation
6459func (s Connection) GoString() string {
6460	return s.String()
6461}
6462
6463// SetEndpointArn sets the EndpointArn field's value.
6464func (s *Connection) SetEndpointArn(v string) *Connection {
6465	s.EndpointArn = &v
6466	return s
6467}
6468
6469// SetEndpointIdentifier sets the EndpointIdentifier field's value.
6470func (s *Connection) SetEndpointIdentifier(v string) *Connection {
6471	s.EndpointIdentifier = &v
6472	return s
6473}
6474
6475// SetLastFailureMessage sets the LastFailureMessage field's value.
6476func (s *Connection) SetLastFailureMessage(v string) *Connection {
6477	s.LastFailureMessage = &v
6478	return s
6479}
6480
6481// SetReplicationInstanceArn sets the ReplicationInstanceArn field's value.
6482func (s *Connection) SetReplicationInstanceArn(v string) *Connection {
6483	s.ReplicationInstanceArn = &v
6484	return s
6485}
6486
6487// SetReplicationInstanceIdentifier sets the ReplicationInstanceIdentifier field's value.
6488func (s *Connection) SetReplicationInstanceIdentifier(v string) *Connection {
6489	s.ReplicationInstanceIdentifier = &v
6490	return s
6491}
6492
6493// SetStatus sets the Status field's value.
6494func (s *Connection) SetStatus(v string) *Connection {
6495	s.Status = &v
6496	return s
6497}
6498
6499type CreateEndpointInput struct {
6500	_ struct{} `type:"structure"`
6501
6502	// The Amazon Resource Name (ARN) for the certificate.
6503	CertificateArn *string `type:"string"`
6504
6505	// The name of the endpoint database.
6506	DatabaseName *string `type:"string"`
6507
6508	// The settings in JSON format for the DMS transfer type of source endpoint.
6509	//
6510	// Possible settings include the following:
6511	//
6512	//    * ServiceAccessRoleArn - The IAM role that has permission to access the
6513	//    Amazon S3 bucket.
6514	//
6515	//    * BucketName - The name of the S3 bucket to use.
6516	//
6517	//    * CompressionType - An optional parameter to use GZIP to compress the
6518	//    target files. To use GZIP, set this value to NONE (the default). To keep
6519	//    the files uncompressed, don't use this value.
6520	//
6521	// Shorthand syntax for these settings is as follows: ServiceAccessRoleArn=string,BucketName=string,CompressionType=string
6522	//
6523	// JSON syntax for these settings is as follows: { "ServiceAccessRoleArn": "string",
6524	// "BucketName": "string", "CompressionType": "none"|"gzip" }
6525	DmsTransferSettings *DmsTransferSettings `type:"structure"`
6526
6527	// Provides information that defines a DocumentDB endpoint.
6528	DocDbSettings *DocDbSettings `type:"structure"`
6529
6530	// Settings in JSON format for the target Amazon DynamoDB endpoint. For information
6531	// about other available settings, see Using Object Mapping to Migrate Data
6532	// to DynamoDB (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.DynamoDB.html)
6533	// in the AWS Database Migration Service User Guide.
6534	DynamoDbSettings *DynamoDbSettings `type:"structure"`
6535
6536	// Settings in JSON format for the target Elasticsearch endpoint. For more information
6537	// about the available settings, see Extra Connection Attributes When Using
6538	// Elasticsearch as a Target for AWS DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Elasticsearch.html#CHAP_Target.Elasticsearch.Configuration)
6539	// in the AWS Database Migration Service User Guide.
6540	ElasticsearchSettings *ElasticsearchSettings `type:"structure"`
6541
6542	// The database endpoint identifier. Identifiers must begin with a letter and
6543	// must contain only ASCII letters, digits, and hyphens. They can't end with
6544	// a hyphen, or contain two consecutive hyphens.
6545	//
6546	// EndpointIdentifier is a required field
6547	EndpointIdentifier *string `type:"string" required:"true"`
6548
6549	// The type of endpoint. Valid values are source and target.
6550	//
6551	// EndpointType is a required field
6552	EndpointType *string `type:"string" required:"true" enum:"ReplicationEndpointTypeValue"`
6553
6554	// The type of engine for the endpoint. Valid values, depending on the EndpointType
6555	// value, include "mysql", "oracle", "postgres", "mariadb", "aurora", "aurora-postgresql",
6556	// "redshift", "s3", "db2", "azuredb", "sybase", "dynamodb", "mongodb", "kinesis",
6557	// "kafka", "elasticsearch", "docdb", "sqlserver", and "neptune".
6558	//
6559	// EngineName is a required field
6560	EngineName *string `type:"string" required:"true"`
6561
6562	// The external table definition.
6563	ExternalTableDefinition *string `type:"string"`
6564
6565	// Additional attributes associated with the connection. Each attribute is specified
6566	// as a name-value pair associated by an equal sign (=). Multiple attributes
6567	// are separated by a semicolon (;) with no additional white space. For information
6568	// on the attributes available for connecting your source or target endpoint,
6569	// see Working with AWS DMS Endpoints (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Endpoints.html)
6570	// in the AWS Database Migration Service User Guide.
6571	ExtraConnectionAttributes *string `type:"string"`
6572
6573	// Settings in JSON format for the source IBM Db2 LUW endpoint. For information
6574	// about other available settings, see Extra connection attributes when using
6575	// Db2 LUW as a source for AWS DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.DB2.html)
6576	// in the AWS Database Migration Service User Guide.
6577	IBMDb2Settings *IBMDb2Settings `type:"structure"`
6578
6579	// Settings in JSON format for the target Apache Kafka endpoint. For more information
6580	// about the available settings, see Using Apache Kafka as a Target for AWS
6581	// Database Migration Service (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Kafka.html)
6582	// in the AWS Database Migration Service User Guide.
6583	KafkaSettings *KafkaSettings `type:"structure"`
6584
6585	// Settings in JSON format for the target endpoint for Amazon Kinesis Data Streams.
6586	// For more information about the available settings, see Using Amazon Kinesis
6587	// Data Streams as a Target for AWS Database Migration Service (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Kinesis.html)
6588	// in the AWS Database Migration Service User Guide.
6589	KinesisSettings *KinesisSettings `type:"structure"`
6590
6591	// An AWS KMS key identifier that is used to encrypt the connection parameters
6592	// for the endpoint.
6593	//
6594	// If you don't specify a value for the KmsKeyId parameter, then AWS DMS uses
6595	// your default encryption key.
6596	//
6597	// AWS KMS creates the default encryption key for your AWS account. Your AWS
6598	// account has a different default encryption key for each AWS Region.
6599	KmsKeyId *string `type:"string"`
6600
6601	// Settings in JSON format for the source and target Microsoft SQL Server endpoint.
6602	// For information about other available settings, see Extra connection attributes
6603	// when using SQL Server as a source for AWS DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.SQLServer.html)
6604	// and Extra connection attributes when using SQL Server as a target for AWS
6605	// DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.SQLServer.html)
6606	// in the AWS Database Migration Service User Guide.
6607	MicrosoftSQLServerSettings *MicrosoftSQLServerSettings `type:"structure"`
6608
6609	// Settings in JSON format for the source MongoDB endpoint. For more information
6610	// about the available settings, see Using MongoDB as a Target for AWS Database
6611	// Migration Service (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MongoDB.html#CHAP_Source.MongoDB.Configuration)
6612	// in the AWS Database Migration Service User Guide.
6613	MongoDbSettings *MongoDbSettings `type:"structure"`
6614
6615	// Settings in JSON format for the source and target MySQL endpoint. For information
6616	// about other available settings, see Extra connection attributes when using
6617	// MySQL as a source for AWS DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MySQL.html)
6618	// and Extra connection attributes when using a MySQL-compatible database as
6619	// a target for AWS DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.MySQL.html)
6620	// in the AWS Database Migration Service User Guide.
6621	MySQLSettings *MySQLSettings `type:"structure"`
6622
6623	// Settings in JSON format for the target Amazon Neptune endpoint. For more
6624	// information about the available settings, see Specifying Endpoint Settings
6625	// for Amazon Neptune as a Target (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Neptune.html#CHAP_Target.Neptune.EndpointSettings)
6626	// in the AWS Database Migration Service User Guide.
6627	NeptuneSettings *NeptuneSettings `type:"structure"`
6628
6629	// Settings in JSON format for the source and target Oracle endpoint. For information
6630	// about other available settings, see Extra connection attributes when using
6631	// Oracle as a source for AWS DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html)
6632	// and Extra connection attributes when using Oracle as a target for AWS DMS
6633	// (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Oracle.html)
6634	// in the AWS Database Migration Service User Guide.
6635	OracleSettings *OracleSettings `type:"structure"`
6636
6637	// The password to be used to log in to the endpoint database.
6638	Password *string `type:"string" sensitive:"true"`
6639
6640	// The port used by the endpoint database.
6641	Port *int64 `type:"integer"`
6642
6643	// Settings in JSON format for the source and target PostgreSQL endpoint. For
6644	// information about other available settings, see Extra connection attributes
6645	// when using PostgreSQL as a source for AWS DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.PostgreSQL.html)
6646	// and Extra connection attributes when using PostgreSQL as a target for AWS
6647	// DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.PostgreSQL.html)
6648	// in the AWS Database Migration Service User Guide.
6649	PostgreSQLSettings *PostgreSQLSettings `type:"structure"`
6650
6651	// Provides information that defines an Amazon Redshift endpoint.
6652	RedshiftSettings *RedshiftSettings `type:"structure"`
6653
6654	// A friendly name for the resource identifier at the end of the EndpointArn
6655	// response parameter that is returned in the created Endpoint object. The value
6656	// for this parameter can have up to 31 characters. It can contain only ASCII
6657	// letters, digits, and hyphen ('-'). Also, it can't end with a hyphen or contain
6658	// two consecutive hyphens, and can only begin with a letter, such as Example-App-ARN1.
6659	// For example, this value might result in the EndpointArn value arn:aws:dms:eu-west-1:012345678901:rep:Example-App-ARN1.
6660	// If you don't specify a ResourceIdentifier value, AWS DMS generates a default
6661	// identifier value for the end of EndpointArn.
6662	ResourceIdentifier *string `type:"string"`
6663
6664	// Settings in JSON format for the target Amazon S3 endpoint. For more information
6665	// about the available settings, see Extra Connection Attributes When Using
6666	// Amazon S3 as a Target for AWS DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.S3.html#CHAP_Target.S3.Configuring)
6667	// in the AWS Database Migration Service User Guide.
6668	S3Settings *S3Settings `type:"structure"`
6669
6670	// The name of the server where the endpoint database resides.
6671	ServerName *string `type:"string"`
6672
6673	// The Amazon Resource Name (ARN) for the service access role that you want
6674	// to use to create the endpoint.
6675	ServiceAccessRoleArn *string `type:"string"`
6676
6677	// The Secure Sockets Layer (SSL) mode to use for the SSL connection. The default
6678	// is none
6679	SslMode *string `type:"string" enum:"DmsSslModeValue"`
6680
6681	// Settings in JSON format for the source and target SAP ASE endpoint. For information
6682	// about other available settings, see Extra connection attributes when using
6683	// SAP ASE as a source for AWS DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.SAP.html)
6684	// and Extra connection attributes when using SAP ASE as a target for AWS DMS
6685	// (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.SAP.html) in
6686	// the AWS Database Migration Service User Guide.
6687	SybaseSettings *SybaseSettings `type:"structure"`
6688
6689	// One or more tags to be assigned to the endpoint.
6690	Tags []*Tag `type:"list"`
6691
6692	// The user name to be used to log in to the endpoint database.
6693	Username *string `type:"string"`
6694}
6695
6696// String returns the string representation
6697func (s CreateEndpointInput) String() string {
6698	return awsutil.Prettify(s)
6699}
6700
6701// GoString returns the string representation
6702func (s CreateEndpointInput) GoString() string {
6703	return s.String()
6704}
6705
6706// Validate inspects the fields of the type to determine if they are valid.
6707func (s *CreateEndpointInput) Validate() error {
6708	invalidParams := request.ErrInvalidParams{Context: "CreateEndpointInput"}
6709	if s.EndpointIdentifier == nil {
6710		invalidParams.Add(request.NewErrParamRequired("EndpointIdentifier"))
6711	}
6712	if s.EndpointType == nil {
6713		invalidParams.Add(request.NewErrParamRequired("EndpointType"))
6714	}
6715	if s.EngineName == nil {
6716		invalidParams.Add(request.NewErrParamRequired("EngineName"))
6717	}
6718	if s.DynamoDbSettings != nil {
6719		if err := s.DynamoDbSettings.Validate(); err != nil {
6720			invalidParams.AddNested("DynamoDbSettings", err.(request.ErrInvalidParams))
6721		}
6722	}
6723	if s.ElasticsearchSettings != nil {
6724		if err := s.ElasticsearchSettings.Validate(); err != nil {
6725			invalidParams.AddNested("ElasticsearchSettings", err.(request.ErrInvalidParams))
6726		}
6727	}
6728	if s.NeptuneSettings != nil {
6729		if err := s.NeptuneSettings.Validate(); err != nil {
6730			invalidParams.AddNested("NeptuneSettings", err.(request.ErrInvalidParams))
6731		}
6732	}
6733
6734	if invalidParams.Len() > 0 {
6735		return invalidParams
6736	}
6737	return nil
6738}
6739
6740// SetCertificateArn sets the CertificateArn field's value.
6741func (s *CreateEndpointInput) SetCertificateArn(v string) *CreateEndpointInput {
6742	s.CertificateArn = &v
6743	return s
6744}
6745
6746// SetDatabaseName sets the DatabaseName field's value.
6747func (s *CreateEndpointInput) SetDatabaseName(v string) *CreateEndpointInput {
6748	s.DatabaseName = &v
6749	return s
6750}
6751
6752// SetDmsTransferSettings sets the DmsTransferSettings field's value.
6753func (s *CreateEndpointInput) SetDmsTransferSettings(v *DmsTransferSettings) *CreateEndpointInput {
6754	s.DmsTransferSettings = v
6755	return s
6756}
6757
6758// SetDocDbSettings sets the DocDbSettings field's value.
6759func (s *CreateEndpointInput) SetDocDbSettings(v *DocDbSettings) *CreateEndpointInput {
6760	s.DocDbSettings = v
6761	return s
6762}
6763
6764// SetDynamoDbSettings sets the DynamoDbSettings field's value.
6765func (s *CreateEndpointInput) SetDynamoDbSettings(v *DynamoDbSettings) *CreateEndpointInput {
6766	s.DynamoDbSettings = v
6767	return s
6768}
6769
6770// SetElasticsearchSettings sets the ElasticsearchSettings field's value.
6771func (s *CreateEndpointInput) SetElasticsearchSettings(v *ElasticsearchSettings) *CreateEndpointInput {
6772	s.ElasticsearchSettings = v
6773	return s
6774}
6775
6776// SetEndpointIdentifier sets the EndpointIdentifier field's value.
6777func (s *CreateEndpointInput) SetEndpointIdentifier(v string) *CreateEndpointInput {
6778	s.EndpointIdentifier = &v
6779	return s
6780}
6781
6782// SetEndpointType sets the EndpointType field's value.
6783func (s *CreateEndpointInput) SetEndpointType(v string) *CreateEndpointInput {
6784	s.EndpointType = &v
6785	return s
6786}
6787
6788// SetEngineName sets the EngineName field's value.
6789func (s *CreateEndpointInput) SetEngineName(v string) *CreateEndpointInput {
6790	s.EngineName = &v
6791	return s
6792}
6793
6794// SetExternalTableDefinition sets the ExternalTableDefinition field's value.
6795func (s *CreateEndpointInput) SetExternalTableDefinition(v string) *CreateEndpointInput {
6796	s.ExternalTableDefinition = &v
6797	return s
6798}
6799
6800// SetExtraConnectionAttributes sets the ExtraConnectionAttributes field's value.
6801func (s *CreateEndpointInput) SetExtraConnectionAttributes(v string) *CreateEndpointInput {
6802	s.ExtraConnectionAttributes = &v
6803	return s
6804}
6805
6806// SetIBMDb2Settings sets the IBMDb2Settings field's value.
6807func (s *CreateEndpointInput) SetIBMDb2Settings(v *IBMDb2Settings) *CreateEndpointInput {
6808	s.IBMDb2Settings = v
6809	return s
6810}
6811
6812// SetKafkaSettings sets the KafkaSettings field's value.
6813func (s *CreateEndpointInput) SetKafkaSettings(v *KafkaSettings) *CreateEndpointInput {
6814	s.KafkaSettings = v
6815	return s
6816}
6817
6818// SetKinesisSettings sets the KinesisSettings field's value.
6819func (s *CreateEndpointInput) SetKinesisSettings(v *KinesisSettings) *CreateEndpointInput {
6820	s.KinesisSettings = v
6821	return s
6822}
6823
6824// SetKmsKeyId sets the KmsKeyId field's value.
6825func (s *CreateEndpointInput) SetKmsKeyId(v string) *CreateEndpointInput {
6826	s.KmsKeyId = &v
6827	return s
6828}
6829
6830// SetMicrosoftSQLServerSettings sets the MicrosoftSQLServerSettings field's value.
6831func (s *CreateEndpointInput) SetMicrosoftSQLServerSettings(v *MicrosoftSQLServerSettings) *CreateEndpointInput {
6832	s.MicrosoftSQLServerSettings = v
6833	return s
6834}
6835
6836// SetMongoDbSettings sets the MongoDbSettings field's value.
6837func (s *CreateEndpointInput) SetMongoDbSettings(v *MongoDbSettings) *CreateEndpointInput {
6838	s.MongoDbSettings = v
6839	return s
6840}
6841
6842// SetMySQLSettings sets the MySQLSettings field's value.
6843func (s *CreateEndpointInput) SetMySQLSettings(v *MySQLSettings) *CreateEndpointInput {
6844	s.MySQLSettings = v
6845	return s
6846}
6847
6848// SetNeptuneSettings sets the NeptuneSettings field's value.
6849func (s *CreateEndpointInput) SetNeptuneSettings(v *NeptuneSettings) *CreateEndpointInput {
6850	s.NeptuneSettings = v
6851	return s
6852}
6853
6854// SetOracleSettings sets the OracleSettings field's value.
6855func (s *CreateEndpointInput) SetOracleSettings(v *OracleSettings) *CreateEndpointInput {
6856	s.OracleSettings = v
6857	return s
6858}
6859
6860// SetPassword sets the Password field's value.
6861func (s *CreateEndpointInput) SetPassword(v string) *CreateEndpointInput {
6862	s.Password = &v
6863	return s
6864}
6865
6866// SetPort sets the Port field's value.
6867func (s *CreateEndpointInput) SetPort(v int64) *CreateEndpointInput {
6868	s.Port = &v
6869	return s
6870}
6871
6872// SetPostgreSQLSettings sets the PostgreSQLSettings field's value.
6873func (s *CreateEndpointInput) SetPostgreSQLSettings(v *PostgreSQLSettings) *CreateEndpointInput {
6874	s.PostgreSQLSettings = v
6875	return s
6876}
6877
6878// SetRedshiftSettings sets the RedshiftSettings field's value.
6879func (s *CreateEndpointInput) SetRedshiftSettings(v *RedshiftSettings) *CreateEndpointInput {
6880	s.RedshiftSettings = v
6881	return s
6882}
6883
6884// SetResourceIdentifier sets the ResourceIdentifier field's value.
6885func (s *CreateEndpointInput) SetResourceIdentifier(v string) *CreateEndpointInput {
6886	s.ResourceIdentifier = &v
6887	return s
6888}
6889
6890// SetS3Settings sets the S3Settings field's value.
6891func (s *CreateEndpointInput) SetS3Settings(v *S3Settings) *CreateEndpointInput {
6892	s.S3Settings = v
6893	return s
6894}
6895
6896// SetServerName sets the ServerName field's value.
6897func (s *CreateEndpointInput) SetServerName(v string) *CreateEndpointInput {
6898	s.ServerName = &v
6899	return s
6900}
6901
6902// SetServiceAccessRoleArn sets the ServiceAccessRoleArn field's value.
6903func (s *CreateEndpointInput) SetServiceAccessRoleArn(v string) *CreateEndpointInput {
6904	s.ServiceAccessRoleArn = &v
6905	return s
6906}
6907
6908// SetSslMode sets the SslMode field's value.
6909func (s *CreateEndpointInput) SetSslMode(v string) *CreateEndpointInput {
6910	s.SslMode = &v
6911	return s
6912}
6913
6914// SetSybaseSettings sets the SybaseSettings field's value.
6915func (s *CreateEndpointInput) SetSybaseSettings(v *SybaseSettings) *CreateEndpointInput {
6916	s.SybaseSettings = v
6917	return s
6918}
6919
6920// SetTags sets the Tags field's value.
6921func (s *CreateEndpointInput) SetTags(v []*Tag) *CreateEndpointInput {
6922	s.Tags = v
6923	return s
6924}
6925
6926// SetUsername sets the Username field's value.
6927func (s *CreateEndpointInput) SetUsername(v string) *CreateEndpointInput {
6928	s.Username = &v
6929	return s
6930}
6931
6932type CreateEndpointOutput struct {
6933	_ struct{} `type:"structure"`
6934
6935	// The endpoint that was created.
6936	Endpoint *Endpoint `type:"structure"`
6937}
6938
6939// String returns the string representation
6940func (s CreateEndpointOutput) String() string {
6941	return awsutil.Prettify(s)
6942}
6943
6944// GoString returns the string representation
6945func (s CreateEndpointOutput) GoString() string {
6946	return s.String()
6947}
6948
6949// SetEndpoint sets the Endpoint field's value.
6950func (s *CreateEndpointOutput) SetEndpoint(v *Endpoint) *CreateEndpointOutput {
6951	s.Endpoint = v
6952	return s
6953}
6954
6955type CreateEventSubscriptionInput struct {
6956	_ struct{} `type:"structure"`
6957
6958	// A Boolean value; set to true to activate the subscription, or set to false
6959	// to create the subscription but not activate it.
6960	Enabled *bool `type:"boolean"`
6961
6962	// A list of event categories for a source type that you want to subscribe to.
6963	// For more information, see Working with Events and Notifications (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Events.html)
6964	// in the AWS Database Migration Service User Guide.
6965	EventCategories []*string `type:"list"`
6966
6967	// The Amazon Resource Name (ARN) of the Amazon SNS topic created for event
6968	// notification. The ARN is created by Amazon SNS when you create a topic and
6969	// subscribe to it.
6970	//
6971	// SnsTopicArn is a required field
6972	SnsTopicArn *string `type:"string" required:"true"`
6973
6974	// A list of identifiers for which AWS DMS provides notification events.
6975	//
6976	// If you don't specify a value, notifications are provided for all sources.
6977	//
6978	// If you specify multiple values, they must be of the same type. For example,
6979	// if you specify a database instance ID, then all of the other values must
6980	// be database instance IDs.
6981	SourceIds []*string `type:"list"`
6982
6983	// The type of AWS DMS resource that generates the events. For example, if you
6984	// want to be notified of events generated by a replication instance, you set
6985	// this parameter to replication-instance. If this value isn't specified, all
6986	// events are returned.
6987	//
6988	// Valid values: replication-instance | replication-task
6989	SourceType *string `type:"string"`
6990
6991	// The name of the AWS DMS event notification subscription. This name must be
6992	// less than 255 characters.
6993	//
6994	// SubscriptionName is a required field
6995	SubscriptionName *string `type:"string" required:"true"`
6996
6997	// One or more tags to be assigned to the event subscription.
6998	Tags []*Tag `type:"list"`
6999}
7000
7001// String returns the string representation
7002func (s CreateEventSubscriptionInput) String() string {
7003	return awsutil.Prettify(s)
7004}
7005
7006// GoString returns the string representation
7007func (s CreateEventSubscriptionInput) GoString() string {
7008	return s.String()
7009}
7010
7011// Validate inspects the fields of the type to determine if they are valid.
7012func (s *CreateEventSubscriptionInput) Validate() error {
7013	invalidParams := request.ErrInvalidParams{Context: "CreateEventSubscriptionInput"}
7014	if s.SnsTopicArn == nil {
7015		invalidParams.Add(request.NewErrParamRequired("SnsTopicArn"))
7016	}
7017	if s.SubscriptionName == nil {
7018		invalidParams.Add(request.NewErrParamRequired("SubscriptionName"))
7019	}
7020
7021	if invalidParams.Len() > 0 {
7022		return invalidParams
7023	}
7024	return nil
7025}
7026
7027// SetEnabled sets the Enabled field's value.
7028func (s *CreateEventSubscriptionInput) SetEnabled(v bool) *CreateEventSubscriptionInput {
7029	s.Enabled = &v
7030	return s
7031}
7032
7033// SetEventCategories sets the EventCategories field's value.
7034func (s *CreateEventSubscriptionInput) SetEventCategories(v []*string) *CreateEventSubscriptionInput {
7035	s.EventCategories = v
7036	return s
7037}
7038
7039// SetSnsTopicArn sets the SnsTopicArn field's value.
7040func (s *CreateEventSubscriptionInput) SetSnsTopicArn(v string) *CreateEventSubscriptionInput {
7041	s.SnsTopicArn = &v
7042	return s
7043}
7044
7045// SetSourceIds sets the SourceIds field's value.
7046func (s *CreateEventSubscriptionInput) SetSourceIds(v []*string) *CreateEventSubscriptionInput {
7047	s.SourceIds = v
7048	return s
7049}
7050
7051// SetSourceType sets the SourceType field's value.
7052func (s *CreateEventSubscriptionInput) SetSourceType(v string) *CreateEventSubscriptionInput {
7053	s.SourceType = &v
7054	return s
7055}
7056
7057// SetSubscriptionName sets the SubscriptionName field's value.
7058func (s *CreateEventSubscriptionInput) SetSubscriptionName(v string) *CreateEventSubscriptionInput {
7059	s.SubscriptionName = &v
7060	return s
7061}
7062
7063// SetTags sets the Tags field's value.
7064func (s *CreateEventSubscriptionInput) SetTags(v []*Tag) *CreateEventSubscriptionInput {
7065	s.Tags = v
7066	return s
7067}
7068
7069type CreateEventSubscriptionOutput struct {
7070	_ struct{} `type:"structure"`
7071
7072	// The event subscription that was created.
7073	EventSubscription *EventSubscription `type:"structure"`
7074}
7075
7076// String returns the string representation
7077func (s CreateEventSubscriptionOutput) String() string {
7078	return awsutil.Prettify(s)
7079}
7080
7081// GoString returns the string representation
7082func (s CreateEventSubscriptionOutput) GoString() string {
7083	return s.String()
7084}
7085
7086// SetEventSubscription sets the EventSubscription field's value.
7087func (s *CreateEventSubscriptionOutput) SetEventSubscription(v *EventSubscription) *CreateEventSubscriptionOutput {
7088	s.EventSubscription = v
7089	return s
7090}
7091
7092type CreateReplicationInstanceInput struct {
7093	_ struct{} `type:"structure"`
7094
7095	// The amount of storage (in gigabytes) to be initially allocated for the replication
7096	// instance.
7097	AllocatedStorage *int64 `type:"integer"`
7098
7099	// A value that indicates whether minor engine upgrades are applied automatically
7100	// to the replication instance during the maintenance window. This parameter
7101	// defaults to true.
7102	//
7103	// Default: true
7104	AutoMinorVersionUpgrade *bool `type:"boolean"`
7105
7106	// The Availability Zone where the replication instance will be created. The
7107	// default value is a random, system-chosen Availability Zone in the endpoint's
7108	// AWS Region, for example: us-east-1d
7109	AvailabilityZone *string `type:"string"`
7110
7111	// A list of custom DNS name servers supported for the replication instance
7112	// to access your on-premise source or target database. This list overrides
7113	// the default name servers supported by the replication instance. You can specify
7114	// a comma-separated list of internet addresses for up to four on-premise DNS
7115	// name servers. For example: "1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4"
7116	DnsNameServers *string `type:"string"`
7117
7118	// The engine version number of the replication instance.
7119	//
7120	// If an engine version number is not specified when a replication instance
7121	// is created, the default is the latest engine version available.
7122	EngineVersion *string `type:"string"`
7123
7124	// An AWS KMS key identifier that is used to encrypt the data on the replication
7125	// instance.
7126	//
7127	// If you don't specify a value for the KmsKeyId parameter, then AWS DMS uses
7128	// your default encryption key.
7129	//
7130	// AWS KMS creates the default encryption key for your AWS account. Your AWS
7131	// account has a different default encryption key for each AWS Region.
7132	KmsKeyId *string `type:"string"`
7133
7134	// Specifies whether the replication instance is a Multi-AZ deployment. You
7135	// can't set the AvailabilityZone parameter if the Multi-AZ parameter is set
7136	// to true.
7137	MultiAZ *bool `type:"boolean"`
7138
7139	// The weekly time range during which system maintenance can occur, in Universal
7140	// Coordinated Time (UTC).
7141	//
7142	// Format: ddd:hh24:mi-ddd:hh24:mi
7143	//
7144	// Default: A 30-minute window selected at random from an 8-hour block of time
7145	// per AWS Region, occurring on a random day of the week.
7146	//
7147	// Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun
7148	//
7149	// Constraints: Minimum 30-minute window.
7150	PreferredMaintenanceWindow *string `type:"string"`
7151
7152	// Specifies the accessibility options for the replication instance. A value
7153	// of true represents an instance with a public IP address. A value of false
7154	// represents an instance with a private IP address. The default value is true.
7155	PubliclyAccessible *bool `type:"boolean"`
7156
7157	// The compute and memory capacity of the replication instance as defined for
7158	// the specified replication instance class. For example to specify the instance
7159	// class dms.c4.large, set this parameter to "dms.c4.large".
7160	//
7161	// For more information on the settings and capacities for the available replication
7162	// instance classes, see Selecting the right AWS DMS replication instance for
7163	// your migration (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_ReplicationInstance.html#CHAP_ReplicationInstance.InDepth).
7164	//
7165	// ReplicationInstanceClass is a required field
7166	ReplicationInstanceClass *string `type:"string" required:"true"`
7167
7168	// The replication instance identifier. This parameter is stored as a lowercase
7169	// string.
7170	//
7171	// Constraints:
7172	//
7173	//    * Must contain 1-63 alphanumeric characters or hyphens.
7174	//
7175	//    * First character must be a letter.
7176	//
7177	//    * Can't end with a hyphen or contain two consecutive hyphens.
7178	//
7179	// Example: myrepinstance
7180	//
7181	// ReplicationInstanceIdentifier is a required field
7182	ReplicationInstanceIdentifier *string `type:"string" required:"true"`
7183
7184	// A subnet group to associate with the replication instance.
7185	ReplicationSubnetGroupIdentifier *string `type:"string"`
7186
7187	// A friendly name for the resource identifier at the end of the EndpointArn
7188	// response parameter that is returned in the created Endpoint object. The value
7189	// for this parameter can have up to 31 characters. It can contain only ASCII
7190	// letters, digits, and hyphen ('-'). Also, it can't end with a hyphen or contain
7191	// two consecutive hyphens, and can only begin with a letter, such as Example-App-ARN1.
7192	// For example, this value might result in the EndpointArn value arn:aws:dms:eu-west-1:012345678901:rep:Example-App-ARN1.
7193	// If you don't specify a ResourceIdentifier value, AWS DMS generates a default
7194	// identifier value for the end of EndpointArn.
7195	ResourceIdentifier *string `type:"string"`
7196
7197	// One or more tags to be assigned to the replication instance.
7198	Tags []*Tag `type:"list"`
7199
7200	// Specifies the VPC security group to be used with the replication instance.
7201	// The VPC security group must work with the VPC containing the replication
7202	// instance.
7203	VpcSecurityGroupIds []*string `type:"list"`
7204}
7205
7206// String returns the string representation
7207func (s CreateReplicationInstanceInput) String() string {
7208	return awsutil.Prettify(s)
7209}
7210
7211// GoString returns the string representation
7212func (s CreateReplicationInstanceInput) GoString() string {
7213	return s.String()
7214}
7215
7216// Validate inspects the fields of the type to determine if they are valid.
7217func (s *CreateReplicationInstanceInput) Validate() error {
7218	invalidParams := request.ErrInvalidParams{Context: "CreateReplicationInstanceInput"}
7219	if s.ReplicationInstanceClass == nil {
7220		invalidParams.Add(request.NewErrParamRequired("ReplicationInstanceClass"))
7221	}
7222	if s.ReplicationInstanceIdentifier == nil {
7223		invalidParams.Add(request.NewErrParamRequired("ReplicationInstanceIdentifier"))
7224	}
7225
7226	if invalidParams.Len() > 0 {
7227		return invalidParams
7228	}
7229	return nil
7230}
7231
7232// SetAllocatedStorage sets the AllocatedStorage field's value.
7233func (s *CreateReplicationInstanceInput) SetAllocatedStorage(v int64) *CreateReplicationInstanceInput {
7234	s.AllocatedStorage = &v
7235	return s
7236}
7237
7238// SetAutoMinorVersionUpgrade sets the AutoMinorVersionUpgrade field's value.
7239func (s *CreateReplicationInstanceInput) SetAutoMinorVersionUpgrade(v bool) *CreateReplicationInstanceInput {
7240	s.AutoMinorVersionUpgrade = &v
7241	return s
7242}
7243
7244// SetAvailabilityZone sets the AvailabilityZone field's value.
7245func (s *CreateReplicationInstanceInput) SetAvailabilityZone(v string) *CreateReplicationInstanceInput {
7246	s.AvailabilityZone = &v
7247	return s
7248}
7249
7250// SetDnsNameServers sets the DnsNameServers field's value.
7251func (s *CreateReplicationInstanceInput) SetDnsNameServers(v string) *CreateReplicationInstanceInput {
7252	s.DnsNameServers = &v
7253	return s
7254}
7255
7256// SetEngineVersion sets the EngineVersion field's value.
7257func (s *CreateReplicationInstanceInput) SetEngineVersion(v string) *CreateReplicationInstanceInput {
7258	s.EngineVersion = &v
7259	return s
7260}
7261
7262// SetKmsKeyId sets the KmsKeyId field's value.
7263func (s *CreateReplicationInstanceInput) SetKmsKeyId(v string) *CreateReplicationInstanceInput {
7264	s.KmsKeyId = &v
7265	return s
7266}
7267
7268// SetMultiAZ sets the MultiAZ field's value.
7269func (s *CreateReplicationInstanceInput) SetMultiAZ(v bool) *CreateReplicationInstanceInput {
7270	s.MultiAZ = &v
7271	return s
7272}
7273
7274// SetPreferredMaintenanceWindow sets the PreferredMaintenanceWindow field's value.
7275func (s *CreateReplicationInstanceInput) SetPreferredMaintenanceWindow(v string) *CreateReplicationInstanceInput {
7276	s.PreferredMaintenanceWindow = &v
7277	return s
7278}
7279
7280// SetPubliclyAccessible sets the PubliclyAccessible field's value.
7281func (s *CreateReplicationInstanceInput) SetPubliclyAccessible(v bool) *CreateReplicationInstanceInput {
7282	s.PubliclyAccessible = &v
7283	return s
7284}
7285
7286// SetReplicationInstanceClass sets the ReplicationInstanceClass field's value.
7287func (s *CreateReplicationInstanceInput) SetReplicationInstanceClass(v string) *CreateReplicationInstanceInput {
7288	s.ReplicationInstanceClass = &v
7289	return s
7290}
7291
7292// SetReplicationInstanceIdentifier sets the ReplicationInstanceIdentifier field's value.
7293func (s *CreateReplicationInstanceInput) SetReplicationInstanceIdentifier(v string) *CreateReplicationInstanceInput {
7294	s.ReplicationInstanceIdentifier = &v
7295	return s
7296}
7297
7298// SetReplicationSubnetGroupIdentifier sets the ReplicationSubnetGroupIdentifier field's value.
7299func (s *CreateReplicationInstanceInput) SetReplicationSubnetGroupIdentifier(v string) *CreateReplicationInstanceInput {
7300	s.ReplicationSubnetGroupIdentifier = &v
7301	return s
7302}
7303
7304// SetResourceIdentifier sets the ResourceIdentifier field's value.
7305func (s *CreateReplicationInstanceInput) SetResourceIdentifier(v string) *CreateReplicationInstanceInput {
7306	s.ResourceIdentifier = &v
7307	return s
7308}
7309
7310// SetTags sets the Tags field's value.
7311func (s *CreateReplicationInstanceInput) SetTags(v []*Tag) *CreateReplicationInstanceInput {
7312	s.Tags = v
7313	return s
7314}
7315
7316// SetVpcSecurityGroupIds sets the VpcSecurityGroupIds field's value.
7317func (s *CreateReplicationInstanceInput) SetVpcSecurityGroupIds(v []*string) *CreateReplicationInstanceInput {
7318	s.VpcSecurityGroupIds = v
7319	return s
7320}
7321
7322type CreateReplicationInstanceOutput struct {
7323	_ struct{} `type:"structure"`
7324
7325	// The replication instance that was created.
7326	ReplicationInstance *ReplicationInstance `type:"structure"`
7327}
7328
7329// String returns the string representation
7330func (s CreateReplicationInstanceOutput) String() string {
7331	return awsutil.Prettify(s)
7332}
7333
7334// GoString returns the string representation
7335func (s CreateReplicationInstanceOutput) GoString() string {
7336	return s.String()
7337}
7338
7339// SetReplicationInstance sets the ReplicationInstance field's value.
7340func (s *CreateReplicationInstanceOutput) SetReplicationInstance(v *ReplicationInstance) *CreateReplicationInstanceOutput {
7341	s.ReplicationInstance = v
7342	return s
7343}
7344
7345type CreateReplicationSubnetGroupInput struct {
7346	_ struct{} `type:"structure"`
7347
7348	// The description for the subnet group.
7349	//
7350	// ReplicationSubnetGroupDescription is a required field
7351	ReplicationSubnetGroupDescription *string `type:"string" required:"true"`
7352
7353	// The name for the replication subnet group. This value is stored as a lowercase
7354	// string.
7355	//
7356	// Constraints: Must contain no more than 255 alphanumeric characters, periods,
7357	// spaces, underscores, or hyphens. Must not be "default".
7358	//
7359	// Example: mySubnetgroup
7360	//
7361	// ReplicationSubnetGroupIdentifier is a required field
7362	ReplicationSubnetGroupIdentifier *string `type:"string" required:"true"`
7363
7364	// One or more subnet IDs to be assigned to the subnet group.
7365	//
7366	// SubnetIds is a required field
7367	SubnetIds []*string `type:"list" required:"true"`
7368
7369	// One or more tags to be assigned to the subnet group.
7370	Tags []*Tag `type:"list"`
7371}
7372
7373// String returns the string representation
7374func (s CreateReplicationSubnetGroupInput) String() string {
7375	return awsutil.Prettify(s)
7376}
7377
7378// GoString returns the string representation
7379func (s CreateReplicationSubnetGroupInput) GoString() string {
7380	return s.String()
7381}
7382
7383// Validate inspects the fields of the type to determine if they are valid.
7384func (s *CreateReplicationSubnetGroupInput) Validate() error {
7385	invalidParams := request.ErrInvalidParams{Context: "CreateReplicationSubnetGroupInput"}
7386	if s.ReplicationSubnetGroupDescription == nil {
7387		invalidParams.Add(request.NewErrParamRequired("ReplicationSubnetGroupDescription"))
7388	}
7389	if s.ReplicationSubnetGroupIdentifier == nil {
7390		invalidParams.Add(request.NewErrParamRequired("ReplicationSubnetGroupIdentifier"))
7391	}
7392	if s.SubnetIds == nil {
7393		invalidParams.Add(request.NewErrParamRequired("SubnetIds"))
7394	}
7395
7396	if invalidParams.Len() > 0 {
7397		return invalidParams
7398	}
7399	return nil
7400}
7401
7402// SetReplicationSubnetGroupDescription sets the ReplicationSubnetGroupDescription field's value.
7403func (s *CreateReplicationSubnetGroupInput) SetReplicationSubnetGroupDescription(v string) *CreateReplicationSubnetGroupInput {
7404	s.ReplicationSubnetGroupDescription = &v
7405	return s
7406}
7407
7408// SetReplicationSubnetGroupIdentifier sets the ReplicationSubnetGroupIdentifier field's value.
7409func (s *CreateReplicationSubnetGroupInput) SetReplicationSubnetGroupIdentifier(v string) *CreateReplicationSubnetGroupInput {
7410	s.ReplicationSubnetGroupIdentifier = &v
7411	return s
7412}
7413
7414// SetSubnetIds sets the SubnetIds field's value.
7415func (s *CreateReplicationSubnetGroupInput) SetSubnetIds(v []*string) *CreateReplicationSubnetGroupInput {
7416	s.SubnetIds = v
7417	return s
7418}
7419
7420// SetTags sets the Tags field's value.
7421func (s *CreateReplicationSubnetGroupInput) SetTags(v []*Tag) *CreateReplicationSubnetGroupInput {
7422	s.Tags = v
7423	return s
7424}
7425
7426type CreateReplicationSubnetGroupOutput struct {
7427	_ struct{} `type:"structure"`
7428
7429	// The replication subnet group that was created.
7430	ReplicationSubnetGroup *ReplicationSubnetGroup `type:"structure"`
7431}
7432
7433// String returns the string representation
7434func (s CreateReplicationSubnetGroupOutput) String() string {
7435	return awsutil.Prettify(s)
7436}
7437
7438// GoString returns the string representation
7439func (s CreateReplicationSubnetGroupOutput) GoString() string {
7440	return s.String()
7441}
7442
7443// SetReplicationSubnetGroup sets the ReplicationSubnetGroup field's value.
7444func (s *CreateReplicationSubnetGroupOutput) SetReplicationSubnetGroup(v *ReplicationSubnetGroup) *CreateReplicationSubnetGroupOutput {
7445	s.ReplicationSubnetGroup = v
7446	return s
7447}
7448
7449type CreateReplicationTaskInput struct {
7450	_ struct{} `type:"structure"`
7451
7452	// Indicates when you want a change data capture (CDC) operation to start. Use
7453	// either CdcStartPosition or CdcStartTime to specify when you want a CDC operation
7454	// to start. Specifying both values results in an error.
7455	//
7456	// The value can be in date, checkpoint, or LSN/SCN format.
7457	//
7458	// Date Example: --cdc-start-position “2018-03-08T12:12:12”
7459	//
7460	// Checkpoint Example: --cdc-start-position "checkpoint:V1#27#mysql-bin-changelog.157832:1975:-1:2002:677883278264080:mysql-bin-changelog.157832:1876#0#0#*#0#93"
7461	//
7462	// LSN Example: --cdc-start-position “mysql-bin-changelog.000024:373”
7463	//
7464	// When you use this task setting with a source PostgreSQL database, a logical
7465	// replication slot should already be created and associated with the source
7466	// endpoint. You can verify this by setting the slotName extra connection attribute
7467	// to the name of this logical replication slot. For more information, see Extra
7468	// Connection Attributes When Using PostgreSQL as a Source for AWS DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.PostgreSQL.html#CHAP_Source.PostgreSQL.ConnectionAttrib).
7469	CdcStartPosition *string `type:"string"`
7470
7471	// Indicates the start time for a change data capture (CDC) operation. Use either
7472	// CdcStartTime or CdcStartPosition to specify when you want a CDC operation
7473	// to start. Specifying both values results in an error.
7474	//
7475	// Timestamp Example: --cdc-start-time “2018-03-08T12:12:12”
7476	CdcStartTime *time.Time `type:"timestamp"`
7477
7478	// Indicates when you want a change data capture (CDC) operation to stop. The
7479	// value can be either server time or commit time.
7480	//
7481	// Server time example: --cdc-stop-position “server_time:2018-02-09T12:12:12”
7482	//
7483	// Commit time example: --cdc-stop-position “commit_time: 2018-02-09T12:12:12
7484	// “
7485	CdcStopPosition *string `type:"string"`
7486
7487	// The migration type. Valid values: full-load | cdc | full-load-and-cdc
7488	//
7489	// MigrationType is a required field
7490	MigrationType *string `type:"string" required:"true" enum:"MigrationTypeValue"`
7491
7492	// The Amazon Resource Name (ARN) of a replication instance.
7493	//
7494	// ReplicationInstanceArn is a required field
7495	ReplicationInstanceArn *string `type:"string" required:"true"`
7496
7497	// An identifier for the replication task.
7498	//
7499	// Constraints:
7500	//
7501	//    * Must contain 1-255 alphanumeric characters or hyphens.
7502	//
7503	//    * First character must be a letter.
7504	//
7505	//    * Cannot end with a hyphen or contain two consecutive hyphens.
7506	//
7507	// ReplicationTaskIdentifier is a required field
7508	ReplicationTaskIdentifier *string `type:"string" required:"true"`
7509
7510	// Overall settings for the task, in JSON format. For more information, see
7511	// Specifying Task Settings for AWS Database Migration Service Tasks (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Tasks.CustomizingTasks.TaskSettings.html)
7512	// in the AWS Database Migration User Guide.
7513	ReplicationTaskSettings *string `type:"string"`
7514
7515	// A friendly name for the resource identifier at the end of the EndpointArn
7516	// response parameter that is returned in the created Endpoint object. The value
7517	// for this parameter can have up to 31 characters. It can contain only ASCII
7518	// letters, digits, and hyphen ('-'). Also, it can't end with a hyphen or contain
7519	// two consecutive hyphens, and can only begin with a letter, such as Example-App-ARN1.
7520	// For example, this value might result in the EndpointArn value arn:aws:dms:eu-west-1:012345678901:rep:Example-App-ARN1.
7521	// If you don't specify a ResourceIdentifier value, AWS DMS generates a default
7522	// identifier value for the end of EndpointArn.
7523	ResourceIdentifier *string `type:"string"`
7524
7525	// An Amazon Resource Name (ARN) that uniquely identifies the source endpoint.
7526	//
7527	// SourceEndpointArn is a required field
7528	SourceEndpointArn *string `type:"string" required:"true"`
7529
7530	// The table mappings for the task, in JSON format. For more information, see
7531	// Using Table Mapping to Specify Task Settings (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Tasks.CustomizingTasks.TableMapping.html)
7532	// in the AWS Database Migration Service User Guide.
7533	//
7534	// TableMappings is a required field
7535	TableMappings *string `type:"string" required:"true"`
7536
7537	// One or more tags to be assigned to the replication task.
7538	Tags []*Tag `type:"list"`
7539
7540	// An Amazon Resource Name (ARN) that uniquely identifies the target endpoint.
7541	//
7542	// TargetEndpointArn is a required field
7543	TargetEndpointArn *string `type:"string" required:"true"`
7544
7545	// Supplemental information that the task requires to migrate the data for certain
7546	// source and target endpoints. For more information, see Specifying Supplemental
7547	// Data for Task Settings (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Tasks.TaskData.html)
7548	// in the AWS Database Migration Service User Guide.
7549	TaskData *string `type:"string"`
7550}
7551
7552// String returns the string representation
7553func (s CreateReplicationTaskInput) String() string {
7554	return awsutil.Prettify(s)
7555}
7556
7557// GoString returns the string representation
7558func (s CreateReplicationTaskInput) GoString() string {
7559	return s.String()
7560}
7561
7562// Validate inspects the fields of the type to determine if they are valid.
7563func (s *CreateReplicationTaskInput) Validate() error {
7564	invalidParams := request.ErrInvalidParams{Context: "CreateReplicationTaskInput"}
7565	if s.MigrationType == nil {
7566		invalidParams.Add(request.NewErrParamRequired("MigrationType"))
7567	}
7568	if s.ReplicationInstanceArn == nil {
7569		invalidParams.Add(request.NewErrParamRequired("ReplicationInstanceArn"))
7570	}
7571	if s.ReplicationTaskIdentifier == nil {
7572		invalidParams.Add(request.NewErrParamRequired("ReplicationTaskIdentifier"))
7573	}
7574	if s.SourceEndpointArn == nil {
7575		invalidParams.Add(request.NewErrParamRequired("SourceEndpointArn"))
7576	}
7577	if s.TableMappings == nil {
7578		invalidParams.Add(request.NewErrParamRequired("TableMappings"))
7579	}
7580	if s.TargetEndpointArn == nil {
7581		invalidParams.Add(request.NewErrParamRequired("TargetEndpointArn"))
7582	}
7583
7584	if invalidParams.Len() > 0 {
7585		return invalidParams
7586	}
7587	return nil
7588}
7589
7590// SetCdcStartPosition sets the CdcStartPosition field's value.
7591func (s *CreateReplicationTaskInput) SetCdcStartPosition(v string) *CreateReplicationTaskInput {
7592	s.CdcStartPosition = &v
7593	return s
7594}
7595
7596// SetCdcStartTime sets the CdcStartTime field's value.
7597func (s *CreateReplicationTaskInput) SetCdcStartTime(v time.Time) *CreateReplicationTaskInput {
7598	s.CdcStartTime = &v
7599	return s
7600}
7601
7602// SetCdcStopPosition sets the CdcStopPosition field's value.
7603func (s *CreateReplicationTaskInput) SetCdcStopPosition(v string) *CreateReplicationTaskInput {
7604	s.CdcStopPosition = &v
7605	return s
7606}
7607
7608// SetMigrationType sets the MigrationType field's value.
7609func (s *CreateReplicationTaskInput) SetMigrationType(v string) *CreateReplicationTaskInput {
7610	s.MigrationType = &v
7611	return s
7612}
7613
7614// SetReplicationInstanceArn sets the ReplicationInstanceArn field's value.
7615func (s *CreateReplicationTaskInput) SetReplicationInstanceArn(v string) *CreateReplicationTaskInput {
7616	s.ReplicationInstanceArn = &v
7617	return s
7618}
7619
7620// SetReplicationTaskIdentifier sets the ReplicationTaskIdentifier field's value.
7621func (s *CreateReplicationTaskInput) SetReplicationTaskIdentifier(v string) *CreateReplicationTaskInput {
7622	s.ReplicationTaskIdentifier = &v
7623	return s
7624}
7625
7626// SetReplicationTaskSettings sets the ReplicationTaskSettings field's value.
7627func (s *CreateReplicationTaskInput) SetReplicationTaskSettings(v string) *CreateReplicationTaskInput {
7628	s.ReplicationTaskSettings = &v
7629	return s
7630}
7631
7632// SetResourceIdentifier sets the ResourceIdentifier field's value.
7633func (s *CreateReplicationTaskInput) SetResourceIdentifier(v string) *CreateReplicationTaskInput {
7634	s.ResourceIdentifier = &v
7635	return s
7636}
7637
7638// SetSourceEndpointArn sets the SourceEndpointArn field's value.
7639func (s *CreateReplicationTaskInput) SetSourceEndpointArn(v string) *CreateReplicationTaskInput {
7640	s.SourceEndpointArn = &v
7641	return s
7642}
7643
7644// SetTableMappings sets the TableMappings field's value.
7645func (s *CreateReplicationTaskInput) SetTableMappings(v string) *CreateReplicationTaskInput {
7646	s.TableMappings = &v
7647	return s
7648}
7649
7650// SetTags sets the Tags field's value.
7651func (s *CreateReplicationTaskInput) SetTags(v []*Tag) *CreateReplicationTaskInput {
7652	s.Tags = v
7653	return s
7654}
7655
7656// SetTargetEndpointArn sets the TargetEndpointArn field's value.
7657func (s *CreateReplicationTaskInput) SetTargetEndpointArn(v string) *CreateReplicationTaskInput {
7658	s.TargetEndpointArn = &v
7659	return s
7660}
7661
7662// SetTaskData sets the TaskData field's value.
7663func (s *CreateReplicationTaskInput) SetTaskData(v string) *CreateReplicationTaskInput {
7664	s.TaskData = &v
7665	return s
7666}
7667
7668type CreateReplicationTaskOutput struct {
7669	_ struct{} `type:"structure"`
7670
7671	// The replication task that was created.
7672	ReplicationTask *ReplicationTask `type:"structure"`
7673}
7674
7675// String returns the string representation
7676func (s CreateReplicationTaskOutput) String() string {
7677	return awsutil.Prettify(s)
7678}
7679
7680// GoString returns the string representation
7681func (s CreateReplicationTaskOutput) GoString() string {
7682	return s.String()
7683}
7684
7685// SetReplicationTask sets the ReplicationTask field's value.
7686func (s *CreateReplicationTaskOutput) SetReplicationTask(v *ReplicationTask) *CreateReplicationTaskOutput {
7687	s.ReplicationTask = v
7688	return s
7689}
7690
7691type DeleteCertificateInput struct {
7692	_ struct{} `type:"structure"`
7693
7694	// The Amazon Resource Name (ARN) of the deleted certificate.
7695	//
7696	// CertificateArn is a required field
7697	CertificateArn *string `type:"string" required:"true"`
7698}
7699
7700// String returns the string representation
7701func (s DeleteCertificateInput) String() string {
7702	return awsutil.Prettify(s)
7703}
7704
7705// GoString returns the string representation
7706func (s DeleteCertificateInput) GoString() string {
7707	return s.String()
7708}
7709
7710// Validate inspects the fields of the type to determine if they are valid.
7711func (s *DeleteCertificateInput) Validate() error {
7712	invalidParams := request.ErrInvalidParams{Context: "DeleteCertificateInput"}
7713	if s.CertificateArn == nil {
7714		invalidParams.Add(request.NewErrParamRequired("CertificateArn"))
7715	}
7716
7717	if invalidParams.Len() > 0 {
7718		return invalidParams
7719	}
7720	return nil
7721}
7722
7723// SetCertificateArn sets the CertificateArn field's value.
7724func (s *DeleteCertificateInput) SetCertificateArn(v string) *DeleteCertificateInput {
7725	s.CertificateArn = &v
7726	return s
7727}
7728
7729type DeleteCertificateOutput struct {
7730	_ struct{} `type:"structure"`
7731
7732	// The Secure Sockets Layer (SSL) certificate.
7733	Certificate *Certificate `type:"structure"`
7734}
7735
7736// String returns the string representation
7737func (s DeleteCertificateOutput) String() string {
7738	return awsutil.Prettify(s)
7739}
7740
7741// GoString returns the string representation
7742func (s DeleteCertificateOutput) GoString() string {
7743	return s.String()
7744}
7745
7746// SetCertificate sets the Certificate field's value.
7747func (s *DeleteCertificateOutput) SetCertificate(v *Certificate) *DeleteCertificateOutput {
7748	s.Certificate = v
7749	return s
7750}
7751
7752type DeleteConnectionInput struct {
7753	_ struct{} `type:"structure"`
7754
7755	// The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.
7756	//
7757	// EndpointArn is a required field
7758	EndpointArn *string `type:"string" required:"true"`
7759
7760	// The Amazon Resource Name (ARN) of the replication instance.
7761	//
7762	// ReplicationInstanceArn is a required field
7763	ReplicationInstanceArn *string `type:"string" required:"true"`
7764}
7765
7766// String returns the string representation
7767func (s DeleteConnectionInput) String() string {
7768	return awsutil.Prettify(s)
7769}
7770
7771// GoString returns the string representation
7772func (s DeleteConnectionInput) GoString() string {
7773	return s.String()
7774}
7775
7776// Validate inspects the fields of the type to determine if they are valid.
7777func (s *DeleteConnectionInput) Validate() error {
7778	invalidParams := request.ErrInvalidParams{Context: "DeleteConnectionInput"}
7779	if s.EndpointArn == nil {
7780		invalidParams.Add(request.NewErrParamRequired("EndpointArn"))
7781	}
7782	if s.ReplicationInstanceArn == nil {
7783		invalidParams.Add(request.NewErrParamRequired("ReplicationInstanceArn"))
7784	}
7785
7786	if invalidParams.Len() > 0 {
7787		return invalidParams
7788	}
7789	return nil
7790}
7791
7792// SetEndpointArn sets the EndpointArn field's value.
7793func (s *DeleteConnectionInput) SetEndpointArn(v string) *DeleteConnectionInput {
7794	s.EndpointArn = &v
7795	return s
7796}
7797
7798// SetReplicationInstanceArn sets the ReplicationInstanceArn field's value.
7799func (s *DeleteConnectionInput) SetReplicationInstanceArn(v string) *DeleteConnectionInput {
7800	s.ReplicationInstanceArn = &v
7801	return s
7802}
7803
7804type DeleteConnectionOutput struct {
7805	_ struct{} `type:"structure"`
7806
7807	// The connection that is being deleted.
7808	Connection *Connection `type:"structure"`
7809}
7810
7811// String returns the string representation
7812func (s DeleteConnectionOutput) String() string {
7813	return awsutil.Prettify(s)
7814}
7815
7816// GoString returns the string representation
7817func (s DeleteConnectionOutput) GoString() string {
7818	return s.String()
7819}
7820
7821// SetConnection sets the Connection field's value.
7822func (s *DeleteConnectionOutput) SetConnection(v *Connection) *DeleteConnectionOutput {
7823	s.Connection = v
7824	return s
7825}
7826
7827type DeleteEndpointInput struct {
7828	_ struct{} `type:"structure"`
7829
7830	// The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.
7831	//
7832	// EndpointArn is a required field
7833	EndpointArn *string `type:"string" required:"true"`
7834}
7835
7836// String returns the string representation
7837func (s DeleteEndpointInput) String() string {
7838	return awsutil.Prettify(s)
7839}
7840
7841// GoString returns the string representation
7842func (s DeleteEndpointInput) GoString() string {
7843	return s.String()
7844}
7845
7846// Validate inspects the fields of the type to determine if they are valid.
7847func (s *DeleteEndpointInput) Validate() error {
7848	invalidParams := request.ErrInvalidParams{Context: "DeleteEndpointInput"}
7849	if s.EndpointArn == nil {
7850		invalidParams.Add(request.NewErrParamRequired("EndpointArn"))
7851	}
7852
7853	if invalidParams.Len() > 0 {
7854		return invalidParams
7855	}
7856	return nil
7857}
7858
7859// SetEndpointArn sets the EndpointArn field's value.
7860func (s *DeleteEndpointInput) SetEndpointArn(v string) *DeleteEndpointInput {
7861	s.EndpointArn = &v
7862	return s
7863}
7864
7865type DeleteEndpointOutput struct {
7866	_ struct{} `type:"structure"`
7867
7868	// The endpoint that was deleted.
7869	Endpoint *Endpoint `type:"structure"`
7870}
7871
7872// String returns the string representation
7873func (s DeleteEndpointOutput) String() string {
7874	return awsutil.Prettify(s)
7875}
7876
7877// GoString returns the string representation
7878func (s DeleteEndpointOutput) GoString() string {
7879	return s.String()
7880}
7881
7882// SetEndpoint sets the Endpoint field's value.
7883func (s *DeleteEndpointOutput) SetEndpoint(v *Endpoint) *DeleteEndpointOutput {
7884	s.Endpoint = v
7885	return s
7886}
7887
7888type DeleteEventSubscriptionInput struct {
7889	_ struct{} `type:"structure"`
7890
7891	// The name of the DMS event notification subscription to be deleted.
7892	//
7893	// SubscriptionName is a required field
7894	SubscriptionName *string `type:"string" required:"true"`
7895}
7896
7897// String returns the string representation
7898func (s DeleteEventSubscriptionInput) String() string {
7899	return awsutil.Prettify(s)
7900}
7901
7902// GoString returns the string representation
7903func (s DeleteEventSubscriptionInput) GoString() string {
7904	return s.String()
7905}
7906
7907// Validate inspects the fields of the type to determine if they are valid.
7908func (s *DeleteEventSubscriptionInput) Validate() error {
7909	invalidParams := request.ErrInvalidParams{Context: "DeleteEventSubscriptionInput"}
7910	if s.SubscriptionName == nil {
7911		invalidParams.Add(request.NewErrParamRequired("SubscriptionName"))
7912	}
7913
7914	if invalidParams.Len() > 0 {
7915		return invalidParams
7916	}
7917	return nil
7918}
7919
7920// SetSubscriptionName sets the SubscriptionName field's value.
7921func (s *DeleteEventSubscriptionInput) SetSubscriptionName(v string) *DeleteEventSubscriptionInput {
7922	s.SubscriptionName = &v
7923	return s
7924}
7925
7926type DeleteEventSubscriptionOutput struct {
7927	_ struct{} `type:"structure"`
7928
7929	// The event subscription that was deleted.
7930	EventSubscription *EventSubscription `type:"structure"`
7931}
7932
7933// String returns the string representation
7934func (s DeleteEventSubscriptionOutput) String() string {
7935	return awsutil.Prettify(s)
7936}
7937
7938// GoString returns the string representation
7939func (s DeleteEventSubscriptionOutput) GoString() string {
7940	return s.String()
7941}
7942
7943// SetEventSubscription sets the EventSubscription field's value.
7944func (s *DeleteEventSubscriptionOutput) SetEventSubscription(v *EventSubscription) *DeleteEventSubscriptionOutput {
7945	s.EventSubscription = v
7946	return s
7947}
7948
7949type DeleteReplicationInstanceInput struct {
7950	_ struct{} `type:"structure"`
7951
7952	// The Amazon Resource Name (ARN) of the replication instance to be deleted.
7953	//
7954	// ReplicationInstanceArn is a required field
7955	ReplicationInstanceArn *string `type:"string" required:"true"`
7956}
7957
7958// String returns the string representation
7959func (s DeleteReplicationInstanceInput) String() string {
7960	return awsutil.Prettify(s)
7961}
7962
7963// GoString returns the string representation
7964func (s DeleteReplicationInstanceInput) GoString() string {
7965	return s.String()
7966}
7967
7968// Validate inspects the fields of the type to determine if they are valid.
7969func (s *DeleteReplicationInstanceInput) Validate() error {
7970	invalidParams := request.ErrInvalidParams{Context: "DeleteReplicationInstanceInput"}
7971	if s.ReplicationInstanceArn == nil {
7972		invalidParams.Add(request.NewErrParamRequired("ReplicationInstanceArn"))
7973	}
7974
7975	if invalidParams.Len() > 0 {
7976		return invalidParams
7977	}
7978	return nil
7979}
7980
7981// SetReplicationInstanceArn sets the ReplicationInstanceArn field's value.
7982func (s *DeleteReplicationInstanceInput) SetReplicationInstanceArn(v string) *DeleteReplicationInstanceInput {
7983	s.ReplicationInstanceArn = &v
7984	return s
7985}
7986
7987type DeleteReplicationInstanceOutput struct {
7988	_ struct{} `type:"structure"`
7989
7990	// The replication instance that was deleted.
7991	ReplicationInstance *ReplicationInstance `type:"structure"`
7992}
7993
7994// String returns the string representation
7995func (s DeleteReplicationInstanceOutput) String() string {
7996	return awsutil.Prettify(s)
7997}
7998
7999// GoString returns the string representation
8000func (s DeleteReplicationInstanceOutput) GoString() string {
8001	return s.String()
8002}
8003
8004// SetReplicationInstance sets the ReplicationInstance field's value.
8005func (s *DeleteReplicationInstanceOutput) SetReplicationInstance(v *ReplicationInstance) *DeleteReplicationInstanceOutput {
8006	s.ReplicationInstance = v
8007	return s
8008}
8009
8010type DeleteReplicationSubnetGroupInput struct {
8011	_ struct{} `type:"structure"`
8012
8013	// The subnet group name of the replication instance.
8014	//
8015	// ReplicationSubnetGroupIdentifier is a required field
8016	ReplicationSubnetGroupIdentifier *string `type:"string" required:"true"`
8017}
8018
8019// String returns the string representation
8020func (s DeleteReplicationSubnetGroupInput) String() string {
8021	return awsutil.Prettify(s)
8022}
8023
8024// GoString returns the string representation
8025func (s DeleteReplicationSubnetGroupInput) GoString() string {
8026	return s.String()
8027}
8028
8029// Validate inspects the fields of the type to determine if they are valid.
8030func (s *DeleteReplicationSubnetGroupInput) Validate() error {
8031	invalidParams := request.ErrInvalidParams{Context: "DeleteReplicationSubnetGroupInput"}
8032	if s.ReplicationSubnetGroupIdentifier == nil {
8033		invalidParams.Add(request.NewErrParamRequired("ReplicationSubnetGroupIdentifier"))
8034	}
8035
8036	if invalidParams.Len() > 0 {
8037		return invalidParams
8038	}
8039	return nil
8040}
8041
8042// SetReplicationSubnetGroupIdentifier sets the ReplicationSubnetGroupIdentifier field's value.
8043func (s *DeleteReplicationSubnetGroupInput) SetReplicationSubnetGroupIdentifier(v string) *DeleteReplicationSubnetGroupInput {
8044	s.ReplicationSubnetGroupIdentifier = &v
8045	return s
8046}
8047
8048type DeleteReplicationSubnetGroupOutput struct {
8049	_ struct{} `type:"structure"`
8050}
8051
8052// String returns the string representation
8053func (s DeleteReplicationSubnetGroupOutput) String() string {
8054	return awsutil.Prettify(s)
8055}
8056
8057// GoString returns the string representation
8058func (s DeleteReplicationSubnetGroupOutput) GoString() string {
8059	return s.String()
8060}
8061
8062type DeleteReplicationTaskAssessmentRunInput struct {
8063	_ struct{} `type:"structure"`
8064
8065	// Amazon Resource Name (ARN) of the premigration assessment run to be deleted.
8066	//
8067	// ReplicationTaskAssessmentRunArn is a required field
8068	ReplicationTaskAssessmentRunArn *string `type:"string" required:"true"`
8069}
8070
8071// String returns the string representation
8072func (s DeleteReplicationTaskAssessmentRunInput) String() string {
8073	return awsutil.Prettify(s)
8074}
8075
8076// GoString returns the string representation
8077func (s DeleteReplicationTaskAssessmentRunInput) GoString() string {
8078	return s.String()
8079}
8080
8081// Validate inspects the fields of the type to determine if they are valid.
8082func (s *DeleteReplicationTaskAssessmentRunInput) Validate() error {
8083	invalidParams := request.ErrInvalidParams{Context: "DeleteReplicationTaskAssessmentRunInput"}
8084	if s.ReplicationTaskAssessmentRunArn == nil {
8085		invalidParams.Add(request.NewErrParamRequired("ReplicationTaskAssessmentRunArn"))
8086	}
8087
8088	if invalidParams.Len() > 0 {
8089		return invalidParams
8090	}
8091	return nil
8092}
8093
8094// SetReplicationTaskAssessmentRunArn sets the ReplicationTaskAssessmentRunArn field's value.
8095func (s *DeleteReplicationTaskAssessmentRunInput) SetReplicationTaskAssessmentRunArn(v string) *DeleteReplicationTaskAssessmentRunInput {
8096	s.ReplicationTaskAssessmentRunArn = &v
8097	return s
8098}
8099
8100type DeleteReplicationTaskAssessmentRunOutput struct {
8101	_ struct{} `type:"structure"`
8102
8103	// The ReplicationTaskAssessmentRun object for the deleted assessment run.
8104	ReplicationTaskAssessmentRun *ReplicationTaskAssessmentRun `type:"structure"`
8105}
8106
8107// String returns the string representation
8108func (s DeleteReplicationTaskAssessmentRunOutput) String() string {
8109	return awsutil.Prettify(s)
8110}
8111
8112// GoString returns the string representation
8113func (s DeleteReplicationTaskAssessmentRunOutput) GoString() string {
8114	return s.String()
8115}
8116
8117// SetReplicationTaskAssessmentRun sets the ReplicationTaskAssessmentRun field's value.
8118func (s *DeleteReplicationTaskAssessmentRunOutput) SetReplicationTaskAssessmentRun(v *ReplicationTaskAssessmentRun) *DeleteReplicationTaskAssessmentRunOutput {
8119	s.ReplicationTaskAssessmentRun = v
8120	return s
8121}
8122
8123type DeleteReplicationTaskInput struct {
8124	_ struct{} `type:"structure"`
8125
8126	// The Amazon Resource Name (ARN) of the replication task to be deleted.
8127	//
8128	// ReplicationTaskArn is a required field
8129	ReplicationTaskArn *string `type:"string" required:"true"`
8130}
8131
8132// String returns the string representation
8133func (s DeleteReplicationTaskInput) String() string {
8134	return awsutil.Prettify(s)
8135}
8136
8137// GoString returns the string representation
8138func (s DeleteReplicationTaskInput) GoString() string {
8139	return s.String()
8140}
8141
8142// Validate inspects the fields of the type to determine if they are valid.
8143func (s *DeleteReplicationTaskInput) Validate() error {
8144	invalidParams := request.ErrInvalidParams{Context: "DeleteReplicationTaskInput"}
8145	if s.ReplicationTaskArn == nil {
8146		invalidParams.Add(request.NewErrParamRequired("ReplicationTaskArn"))
8147	}
8148
8149	if invalidParams.Len() > 0 {
8150		return invalidParams
8151	}
8152	return nil
8153}
8154
8155// SetReplicationTaskArn sets the ReplicationTaskArn field's value.
8156func (s *DeleteReplicationTaskInput) SetReplicationTaskArn(v string) *DeleteReplicationTaskInput {
8157	s.ReplicationTaskArn = &v
8158	return s
8159}
8160
8161type DeleteReplicationTaskOutput struct {
8162	_ struct{} `type:"structure"`
8163
8164	// The deleted replication task.
8165	ReplicationTask *ReplicationTask `type:"structure"`
8166}
8167
8168// String returns the string representation
8169func (s DeleteReplicationTaskOutput) String() string {
8170	return awsutil.Prettify(s)
8171}
8172
8173// GoString returns the string representation
8174func (s DeleteReplicationTaskOutput) GoString() string {
8175	return s.String()
8176}
8177
8178// SetReplicationTask sets the ReplicationTask field's value.
8179func (s *DeleteReplicationTaskOutput) SetReplicationTask(v *ReplicationTask) *DeleteReplicationTaskOutput {
8180	s.ReplicationTask = v
8181	return s
8182}
8183
8184type DescribeAccountAttributesInput struct {
8185	_ struct{} `type:"structure"`
8186}
8187
8188// String returns the string representation
8189func (s DescribeAccountAttributesInput) String() string {
8190	return awsutil.Prettify(s)
8191}
8192
8193// GoString returns the string representation
8194func (s DescribeAccountAttributesInput) GoString() string {
8195	return s.String()
8196}
8197
8198type DescribeAccountAttributesOutput struct {
8199	_ struct{} `type:"structure"`
8200
8201	// Account quota information.
8202	AccountQuotas []*AccountQuota `type:"list"`
8203
8204	// A unique AWS DMS identifier for an account in a particular AWS Region. The
8205	// value of this identifier has the following format: c99999999999. DMS uses
8206	// this identifier to name artifacts. For example, DMS uses this identifier
8207	// to name the default Amazon S3 bucket for storing task assessment reports
8208	// in a given AWS Region. The format of this S3 bucket name is the following:
8209	// dms-AccountNumber-UniqueAccountIdentifier. Here is an example name for this
8210	// default S3 bucket: dms-111122223333-c44445555666.
8211	//
8212	// AWS DMS supports the UniqueAccountIdentifier parameter in versions 3.1.4
8213	// and later.
8214	UniqueAccountIdentifier *string `type:"string"`
8215}
8216
8217// String returns the string representation
8218func (s DescribeAccountAttributesOutput) String() string {
8219	return awsutil.Prettify(s)
8220}
8221
8222// GoString returns the string representation
8223func (s DescribeAccountAttributesOutput) GoString() string {
8224	return s.String()
8225}
8226
8227// SetAccountQuotas sets the AccountQuotas field's value.
8228func (s *DescribeAccountAttributesOutput) SetAccountQuotas(v []*AccountQuota) *DescribeAccountAttributesOutput {
8229	s.AccountQuotas = v
8230	return s
8231}
8232
8233// SetUniqueAccountIdentifier sets the UniqueAccountIdentifier field's value.
8234func (s *DescribeAccountAttributesOutput) SetUniqueAccountIdentifier(v string) *DescribeAccountAttributesOutput {
8235	s.UniqueAccountIdentifier = &v
8236	return s
8237}
8238
8239type DescribeApplicableIndividualAssessmentsInput struct {
8240	_ struct{} `type:"structure"`
8241
8242	// Optional pagination token provided by a previous request. If this parameter
8243	// is specified, the response includes only records beyond the marker, up to
8244	// the value specified by MaxRecords.
8245	Marker *string `type:"string"`
8246
8247	// Maximum number of records to include in the response. If more records exist
8248	// than the specified MaxRecords value, a pagination token called a marker is
8249	// included in the response so that the remaining results can be retrieved.
8250	MaxRecords *int64 `type:"integer"`
8251
8252	// Name of the migration type that each provided individual assessment must
8253	// support.
8254	MigrationType *string `type:"string" enum:"MigrationTypeValue"`
8255
8256	// ARN of a replication instance on which you want to base the default list
8257	// of individual assessments.
8258	ReplicationInstanceArn *string `type:"string"`
8259
8260	// Amazon Resource Name (ARN) of a migration task on which you want to base
8261	// the default list of individual assessments.
8262	ReplicationTaskArn *string `type:"string"`
8263
8264	// Name of a database engine that the specified replication instance supports
8265	// as a source.
8266	SourceEngineName *string `type:"string"`
8267
8268	// Name of a database engine that the specified replication instance supports
8269	// as a target.
8270	TargetEngineName *string `type:"string"`
8271}
8272
8273// String returns the string representation
8274func (s DescribeApplicableIndividualAssessmentsInput) String() string {
8275	return awsutil.Prettify(s)
8276}
8277
8278// GoString returns the string representation
8279func (s DescribeApplicableIndividualAssessmentsInput) GoString() string {
8280	return s.String()
8281}
8282
8283// SetMarker sets the Marker field's value.
8284func (s *DescribeApplicableIndividualAssessmentsInput) SetMarker(v string) *DescribeApplicableIndividualAssessmentsInput {
8285	s.Marker = &v
8286	return s
8287}
8288
8289// SetMaxRecords sets the MaxRecords field's value.
8290func (s *DescribeApplicableIndividualAssessmentsInput) SetMaxRecords(v int64) *DescribeApplicableIndividualAssessmentsInput {
8291	s.MaxRecords = &v
8292	return s
8293}
8294
8295// SetMigrationType sets the MigrationType field's value.
8296func (s *DescribeApplicableIndividualAssessmentsInput) SetMigrationType(v string) *DescribeApplicableIndividualAssessmentsInput {
8297	s.MigrationType = &v
8298	return s
8299}
8300
8301// SetReplicationInstanceArn sets the ReplicationInstanceArn field's value.
8302func (s *DescribeApplicableIndividualAssessmentsInput) SetReplicationInstanceArn(v string) *DescribeApplicableIndividualAssessmentsInput {
8303	s.ReplicationInstanceArn = &v
8304	return s
8305}
8306
8307// SetReplicationTaskArn sets the ReplicationTaskArn field's value.
8308func (s *DescribeApplicableIndividualAssessmentsInput) SetReplicationTaskArn(v string) *DescribeApplicableIndividualAssessmentsInput {
8309	s.ReplicationTaskArn = &v
8310	return s
8311}
8312
8313// SetSourceEngineName sets the SourceEngineName field's value.
8314func (s *DescribeApplicableIndividualAssessmentsInput) SetSourceEngineName(v string) *DescribeApplicableIndividualAssessmentsInput {
8315	s.SourceEngineName = &v
8316	return s
8317}
8318
8319// SetTargetEngineName sets the TargetEngineName field's value.
8320func (s *DescribeApplicableIndividualAssessmentsInput) SetTargetEngineName(v string) *DescribeApplicableIndividualAssessmentsInput {
8321	s.TargetEngineName = &v
8322	return s
8323}
8324
8325type DescribeApplicableIndividualAssessmentsOutput struct {
8326	_ struct{} `type:"structure"`
8327
8328	// List of names for the individual assessments supported by the premigration
8329	// assessment run that you start based on the specified request parameters.
8330	// For more information on the available individual assessments, including compatibility
8331	// with different migration task configurations, see Working with premigration
8332	// assessment runs (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Tasks.AssessmentReport.html)
8333	// in the AWS Database Migration Service User Guide.
8334	IndividualAssessmentNames []*string `type:"list"`
8335
8336	// Pagination token returned for you to pass to a subsequent request. If you
8337	// pass this token as the Marker value in a subsequent request, the response
8338	// includes only records beyond the marker, up to the value specified in the
8339	// request by MaxRecords.
8340	Marker *string `type:"string"`
8341}
8342
8343// String returns the string representation
8344func (s DescribeApplicableIndividualAssessmentsOutput) String() string {
8345	return awsutil.Prettify(s)
8346}
8347
8348// GoString returns the string representation
8349func (s DescribeApplicableIndividualAssessmentsOutput) GoString() string {
8350	return s.String()
8351}
8352
8353// SetIndividualAssessmentNames sets the IndividualAssessmentNames field's value.
8354func (s *DescribeApplicableIndividualAssessmentsOutput) SetIndividualAssessmentNames(v []*string) *DescribeApplicableIndividualAssessmentsOutput {
8355	s.IndividualAssessmentNames = v
8356	return s
8357}
8358
8359// SetMarker sets the Marker field's value.
8360func (s *DescribeApplicableIndividualAssessmentsOutput) SetMarker(v string) *DescribeApplicableIndividualAssessmentsOutput {
8361	s.Marker = &v
8362	return s
8363}
8364
8365type DescribeCertificatesInput struct {
8366	_ struct{} `type:"structure"`
8367
8368	// Filters applied to the certificates described in the form of key-value pairs.
8369	Filters []*Filter `type:"list"`
8370
8371	// An optional pagination token provided by a previous request. If this parameter
8372	// is specified, the response includes only records beyond the marker, up to
8373	// the value specified by MaxRecords.
8374	Marker *string `type:"string"`
8375
8376	// The maximum number of records to include in the response. If more records
8377	// exist than the specified MaxRecords value, a pagination token called a marker
8378	// is included in the response so that the remaining results can be retrieved.
8379	//
8380	// Default: 10
8381	MaxRecords *int64 `type:"integer"`
8382}
8383
8384// String returns the string representation
8385func (s DescribeCertificatesInput) String() string {
8386	return awsutil.Prettify(s)
8387}
8388
8389// GoString returns the string representation
8390func (s DescribeCertificatesInput) GoString() string {
8391	return s.String()
8392}
8393
8394// Validate inspects the fields of the type to determine if they are valid.
8395func (s *DescribeCertificatesInput) Validate() error {
8396	invalidParams := request.ErrInvalidParams{Context: "DescribeCertificatesInput"}
8397	if s.Filters != nil {
8398		for i, v := range s.Filters {
8399			if v == nil {
8400				continue
8401			}
8402			if err := v.Validate(); err != nil {
8403				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
8404			}
8405		}
8406	}
8407
8408	if invalidParams.Len() > 0 {
8409		return invalidParams
8410	}
8411	return nil
8412}
8413
8414// SetFilters sets the Filters field's value.
8415func (s *DescribeCertificatesInput) SetFilters(v []*Filter) *DescribeCertificatesInput {
8416	s.Filters = v
8417	return s
8418}
8419
8420// SetMarker sets the Marker field's value.
8421func (s *DescribeCertificatesInput) SetMarker(v string) *DescribeCertificatesInput {
8422	s.Marker = &v
8423	return s
8424}
8425
8426// SetMaxRecords sets the MaxRecords field's value.
8427func (s *DescribeCertificatesInput) SetMaxRecords(v int64) *DescribeCertificatesInput {
8428	s.MaxRecords = &v
8429	return s
8430}
8431
8432type DescribeCertificatesOutput struct {
8433	_ struct{} `type:"structure"`
8434
8435	// The Secure Sockets Layer (SSL) certificates associated with the replication
8436	// instance.
8437	Certificates []*Certificate `type:"list"`
8438
8439	// The pagination token.
8440	Marker *string `type:"string"`
8441}
8442
8443// String returns the string representation
8444func (s DescribeCertificatesOutput) String() string {
8445	return awsutil.Prettify(s)
8446}
8447
8448// GoString returns the string representation
8449func (s DescribeCertificatesOutput) GoString() string {
8450	return s.String()
8451}
8452
8453// SetCertificates sets the Certificates field's value.
8454func (s *DescribeCertificatesOutput) SetCertificates(v []*Certificate) *DescribeCertificatesOutput {
8455	s.Certificates = v
8456	return s
8457}
8458
8459// SetMarker sets the Marker field's value.
8460func (s *DescribeCertificatesOutput) SetMarker(v string) *DescribeCertificatesOutput {
8461	s.Marker = &v
8462	return s
8463}
8464
8465type DescribeConnectionsInput struct {
8466	_ struct{} `type:"structure"`
8467
8468	// The filters applied to the connection.
8469	//
8470	// Valid filter names: endpoint-arn | replication-instance-arn
8471	Filters []*Filter `type:"list"`
8472
8473	// An optional pagination token provided by a previous request. If this parameter
8474	// is specified, the response includes only records beyond the marker, up to
8475	// the value specified by MaxRecords.
8476	Marker *string `type:"string"`
8477
8478	// The maximum number of records to include in the response. If more records
8479	// exist than the specified MaxRecords value, a pagination token called a marker
8480	// is included in the response so that the remaining results can be retrieved.
8481	//
8482	// Default: 100
8483	//
8484	// Constraints: Minimum 20, maximum 100.
8485	MaxRecords *int64 `type:"integer"`
8486}
8487
8488// String returns the string representation
8489func (s DescribeConnectionsInput) String() string {
8490	return awsutil.Prettify(s)
8491}
8492
8493// GoString returns the string representation
8494func (s DescribeConnectionsInput) GoString() string {
8495	return s.String()
8496}
8497
8498// Validate inspects the fields of the type to determine if they are valid.
8499func (s *DescribeConnectionsInput) Validate() error {
8500	invalidParams := request.ErrInvalidParams{Context: "DescribeConnectionsInput"}
8501	if s.Filters != nil {
8502		for i, v := range s.Filters {
8503			if v == nil {
8504				continue
8505			}
8506			if err := v.Validate(); err != nil {
8507				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
8508			}
8509		}
8510	}
8511
8512	if invalidParams.Len() > 0 {
8513		return invalidParams
8514	}
8515	return nil
8516}
8517
8518// SetFilters sets the Filters field's value.
8519func (s *DescribeConnectionsInput) SetFilters(v []*Filter) *DescribeConnectionsInput {
8520	s.Filters = v
8521	return s
8522}
8523
8524// SetMarker sets the Marker field's value.
8525func (s *DescribeConnectionsInput) SetMarker(v string) *DescribeConnectionsInput {
8526	s.Marker = &v
8527	return s
8528}
8529
8530// SetMaxRecords sets the MaxRecords field's value.
8531func (s *DescribeConnectionsInput) SetMaxRecords(v int64) *DescribeConnectionsInput {
8532	s.MaxRecords = &v
8533	return s
8534}
8535
8536type DescribeConnectionsOutput struct {
8537	_ struct{} `type:"structure"`
8538
8539	// A description of the connections.
8540	Connections []*Connection `type:"list"`
8541
8542	// An optional pagination token provided by a previous request. If this parameter
8543	// is specified, the response includes only records beyond the marker, up to
8544	// the value specified by MaxRecords.
8545	Marker *string `type:"string"`
8546}
8547
8548// String returns the string representation
8549func (s DescribeConnectionsOutput) String() string {
8550	return awsutil.Prettify(s)
8551}
8552
8553// GoString returns the string representation
8554func (s DescribeConnectionsOutput) GoString() string {
8555	return s.String()
8556}
8557
8558// SetConnections sets the Connections field's value.
8559func (s *DescribeConnectionsOutput) SetConnections(v []*Connection) *DescribeConnectionsOutput {
8560	s.Connections = v
8561	return s
8562}
8563
8564// SetMarker sets the Marker field's value.
8565func (s *DescribeConnectionsOutput) SetMarker(v string) *DescribeConnectionsOutput {
8566	s.Marker = &v
8567	return s
8568}
8569
8570type DescribeEndpointSettingsInput struct {
8571	_ struct{} `type:"structure"`
8572
8573	// The databse engine used for your source or target endpoint.
8574	//
8575	// EngineName is a required field
8576	EngineName *string `type:"string" required:"true"`
8577
8578	// An optional pagination token provided by a previous request. If this parameter
8579	// is specified, the response includes only records beyond the marker, up to
8580	// the value specified by MaxRecords.
8581	Marker *string `type:"string"`
8582
8583	// The maximum number of records to include in the response. If more records
8584	// exist than the specified MaxRecords value, a pagination token called a marker
8585	// is included in the response so that the remaining results can be retrieved.
8586	MaxRecords *int64 `type:"integer"`
8587}
8588
8589// String returns the string representation
8590func (s DescribeEndpointSettingsInput) String() string {
8591	return awsutil.Prettify(s)
8592}
8593
8594// GoString returns the string representation
8595func (s DescribeEndpointSettingsInput) GoString() string {
8596	return s.String()
8597}
8598
8599// Validate inspects the fields of the type to determine if they are valid.
8600func (s *DescribeEndpointSettingsInput) Validate() error {
8601	invalidParams := request.ErrInvalidParams{Context: "DescribeEndpointSettingsInput"}
8602	if s.EngineName == nil {
8603		invalidParams.Add(request.NewErrParamRequired("EngineName"))
8604	}
8605
8606	if invalidParams.Len() > 0 {
8607		return invalidParams
8608	}
8609	return nil
8610}
8611
8612// SetEngineName sets the EngineName field's value.
8613func (s *DescribeEndpointSettingsInput) SetEngineName(v string) *DescribeEndpointSettingsInput {
8614	s.EngineName = &v
8615	return s
8616}
8617
8618// SetMarker sets the Marker field's value.
8619func (s *DescribeEndpointSettingsInput) SetMarker(v string) *DescribeEndpointSettingsInput {
8620	s.Marker = &v
8621	return s
8622}
8623
8624// SetMaxRecords sets the MaxRecords field's value.
8625func (s *DescribeEndpointSettingsInput) SetMaxRecords(v int64) *DescribeEndpointSettingsInput {
8626	s.MaxRecords = &v
8627	return s
8628}
8629
8630type DescribeEndpointSettingsOutput struct {
8631	_ struct{} `type:"structure"`
8632
8633	// Descriptions of the endpoint settings available for your source or target
8634	// database engine.
8635	EndpointSettings []*EndpointSetting `type:"list"`
8636
8637	// An optional pagination token provided by a previous request. If this parameter
8638	// is specified, the response includes only records beyond the marker, up to
8639	// the value specified by MaxRecords.
8640	Marker *string `type:"string"`
8641}
8642
8643// String returns the string representation
8644func (s DescribeEndpointSettingsOutput) String() string {
8645	return awsutil.Prettify(s)
8646}
8647
8648// GoString returns the string representation
8649func (s DescribeEndpointSettingsOutput) GoString() string {
8650	return s.String()
8651}
8652
8653// SetEndpointSettings sets the EndpointSettings field's value.
8654func (s *DescribeEndpointSettingsOutput) SetEndpointSettings(v []*EndpointSetting) *DescribeEndpointSettingsOutput {
8655	s.EndpointSettings = v
8656	return s
8657}
8658
8659// SetMarker sets the Marker field's value.
8660func (s *DescribeEndpointSettingsOutput) SetMarker(v string) *DescribeEndpointSettingsOutput {
8661	s.Marker = &v
8662	return s
8663}
8664
8665type DescribeEndpointTypesInput struct {
8666	_ struct{} `type:"structure"`
8667
8668	// Filters applied to the endpoint types.
8669	//
8670	// Valid filter names: engine-name | endpoint-type
8671	Filters []*Filter `type:"list"`
8672
8673	// An optional pagination token provided by a previous request. If this parameter
8674	// is specified, the response includes only records beyond the marker, up to
8675	// the value specified by MaxRecords.
8676	Marker *string `type:"string"`
8677
8678	// The maximum number of records to include in the response. If more records
8679	// exist than the specified MaxRecords value, a pagination token called a marker
8680	// is included in the response so that the remaining results can be retrieved.
8681	//
8682	// Default: 100
8683	//
8684	// Constraints: Minimum 20, maximum 100.
8685	MaxRecords *int64 `type:"integer"`
8686}
8687
8688// String returns the string representation
8689func (s DescribeEndpointTypesInput) String() string {
8690	return awsutil.Prettify(s)
8691}
8692
8693// GoString returns the string representation
8694func (s DescribeEndpointTypesInput) GoString() string {
8695	return s.String()
8696}
8697
8698// Validate inspects the fields of the type to determine if they are valid.
8699func (s *DescribeEndpointTypesInput) Validate() error {
8700	invalidParams := request.ErrInvalidParams{Context: "DescribeEndpointTypesInput"}
8701	if s.Filters != nil {
8702		for i, v := range s.Filters {
8703			if v == nil {
8704				continue
8705			}
8706			if err := v.Validate(); err != nil {
8707				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
8708			}
8709		}
8710	}
8711
8712	if invalidParams.Len() > 0 {
8713		return invalidParams
8714	}
8715	return nil
8716}
8717
8718// SetFilters sets the Filters field's value.
8719func (s *DescribeEndpointTypesInput) SetFilters(v []*Filter) *DescribeEndpointTypesInput {
8720	s.Filters = v
8721	return s
8722}
8723
8724// SetMarker sets the Marker field's value.
8725func (s *DescribeEndpointTypesInput) SetMarker(v string) *DescribeEndpointTypesInput {
8726	s.Marker = &v
8727	return s
8728}
8729
8730// SetMaxRecords sets the MaxRecords field's value.
8731func (s *DescribeEndpointTypesInput) SetMaxRecords(v int64) *DescribeEndpointTypesInput {
8732	s.MaxRecords = &v
8733	return s
8734}
8735
8736type DescribeEndpointTypesOutput struct {
8737	_ struct{} `type:"structure"`
8738
8739	// An optional pagination token provided by a previous request. If this parameter
8740	// is specified, the response includes only records beyond the marker, up to
8741	// the value specified by MaxRecords.
8742	Marker *string `type:"string"`
8743
8744	// The types of endpoints that are supported.
8745	SupportedEndpointTypes []*SupportedEndpointType `type:"list"`
8746}
8747
8748// String returns the string representation
8749func (s DescribeEndpointTypesOutput) String() string {
8750	return awsutil.Prettify(s)
8751}
8752
8753// GoString returns the string representation
8754func (s DescribeEndpointTypesOutput) GoString() string {
8755	return s.String()
8756}
8757
8758// SetMarker sets the Marker field's value.
8759func (s *DescribeEndpointTypesOutput) SetMarker(v string) *DescribeEndpointTypesOutput {
8760	s.Marker = &v
8761	return s
8762}
8763
8764// SetSupportedEndpointTypes sets the SupportedEndpointTypes field's value.
8765func (s *DescribeEndpointTypesOutput) SetSupportedEndpointTypes(v []*SupportedEndpointType) *DescribeEndpointTypesOutput {
8766	s.SupportedEndpointTypes = v
8767	return s
8768}
8769
8770type DescribeEndpointsInput struct {
8771	_ struct{} `type:"structure"`
8772
8773	// Filters applied to the endpoints.
8774	//
8775	// Valid filter names: endpoint-arn | endpoint-type | endpoint-id | engine-name
8776	Filters []*Filter `type:"list"`
8777
8778	// An optional pagination token provided by a previous request. If this parameter
8779	// is specified, the response includes only records beyond the marker, up to
8780	// the value specified by MaxRecords.
8781	Marker *string `type:"string"`
8782
8783	// The maximum number of records to include in the response. If more records
8784	// exist than the specified MaxRecords value, a pagination token called a marker
8785	// is included in the response so that the remaining results can be retrieved.
8786	//
8787	// Default: 100
8788	//
8789	// Constraints: Minimum 20, maximum 100.
8790	MaxRecords *int64 `type:"integer"`
8791}
8792
8793// String returns the string representation
8794func (s DescribeEndpointsInput) String() string {
8795	return awsutil.Prettify(s)
8796}
8797
8798// GoString returns the string representation
8799func (s DescribeEndpointsInput) GoString() string {
8800	return s.String()
8801}
8802
8803// Validate inspects the fields of the type to determine if they are valid.
8804func (s *DescribeEndpointsInput) Validate() error {
8805	invalidParams := request.ErrInvalidParams{Context: "DescribeEndpointsInput"}
8806	if s.Filters != nil {
8807		for i, v := range s.Filters {
8808			if v == nil {
8809				continue
8810			}
8811			if err := v.Validate(); err != nil {
8812				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
8813			}
8814		}
8815	}
8816
8817	if invalidParams.Len() > 0 {
8818		return invalidParams
8819	}
8820	return nil
8821}
8822
8823// SetFilters sets the Filters field's value.
8824func (s *DescribeEndpointsInput) SetFilters(v []*Filter) *DescribeEndpointsInput {
8825	s.Filters = v
8826	return s
8827}
8828
8829// SetMarker sets the Marker field's value.
8830func (s *DescribeEndpointsInput) SetMarker(v string) *DescribeEndpointsInput {
8831	s.Marker = &v
8832	return s
8833}
8834
8835// SetMaxRecords sets the MaxRecords field's value.
8836func (s *DescribeEndpointsInput) SetMaxRecords(v int64) *DescribeEndpointsInput {
8837	s.MaxRecords = &v
8838	return s
8839}
8840
8841type DescribeEndpointsOutput struct {
8842	_ struct{} `type:"structure"`
8843
8844	// Endpoint description.
8845	Endpoints []*Endpoint `type:"list"`
8846
8847	// An optional pagination token provided by a previous request. If this parameter
8848	// is specified, the response includes only records beyond the marker, up to
8849	// the value specified by MaxRecords.
8850	Marker *string `type:"string"`
8851}
8852
8853// String returns the string representation
8854func (s DescribeEndpointsOutput) String() string {
8855	return awsutil.Prettify(s)
8856}
8857
8858// GoString returns the string representation
8859func (s DescribeEndpointsOutput) GoString() string {
8860	return s.String()
8861}
8862
8863// SetEndpoints sets the Endpoints field's value.
8864func (s *DescribeEndpointsOutput) SetEndpoints(v []*Endpoint) *DescribeEndpointsOutput {
8865	s.Endpoints = v
8866	return s
8867}
8868
8869// SetMarker sets the Marker field's value.
8870func (s *DescribeEndpointsOutput) SetMarker(v string) *DescribeEndpointsOutput {
8871	s.Marker = &v
8872	return s
8873}
8874
8875type DescribeEventCategoriesInput struct {
8876	_ struct{} `type:"structure"`
8877
8878	// Filters applied to the event categories.
8879	Filters []*Filter `type:"list"`
8880
8881	// The type of AWS DMS resource that generates events.
8882	//
8883	// Valid values: replication-instance | replication-task
8884	SourceType *string `type:"string"`
8885}
8886
8887// String returns the string representation
8888func (s DescribeEventCategoriesInput) String() string {
8889	return awsutil.Prettify(s)
8890}
8891
8892// GoString returns the string representation
8893func (s DescribeEventCategoriesInput) GoString() string {
8894	return s.String()
8895}
8896
8897// Validate inspects the fields of the type to determine if they are valid.
8898func (s *DescribeEventCategoriesInput) Validate() error {
8899	invalidParams := request.ErrInvalidParams{Context: "DescribeEventCategoriesInput"}
8900	if s.Filters != nil {
8901		for i, v := range s.Filters {
8902			if v == nil {
8903				continue
8904			}
8905			if err := v.Validate(); err != nil {
8906				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
8907			}
8908		}
8909	}
8910
8911	if invalidParams.Len() > 0 {
8912		return invalidParams
8913	}
8914	return nil
8915}
8916
8917// SetFilters sets the Filters field's value.
8918func (s *DescribeEventCategoriesInput) SetFilters(v []*Filter) *DescribeEventCategoriesInput {
8919	s.Filters = v
8920	return s
8921}
8922
8923// SetSourceType sets the SourceType field's value.
8924func (s *DescribeEventCategoriesInput) SetSourceType(v string) *DescribeEventCategoriesInput {
8925	s.SourceType = &v
8926	return s
8927}
8928
8929type DescribeEventCategoriesOutput struct {
8930	_ struct{} `type:"structure"`
8931
8932	// A list of event categories.
8933	EventCategoryGroupList []*EventCategoryGroup `type:"list"`
8934}
8935
8936// String returns the string representation
8937func (s DescribeEventCategoriesOutput) String() string {
8938	return awsutil.Prettify(s)
8939}
8940
8941// GoString returns the string representation
8942func (s DescribeEventCategoriesOutput) GoString() string {
8943	return s.String()
8944}
8945
8946// SetEventCategoryGroupList sets the EventCategoryGroupList field's value.
8947func (s *DescribeEventCategoriesOutput) SetEventCategoryGroupList(v []*EventCategoryGroup) *DescribeEventCategoriesOutput {
8948	s.EventCategoryGroupList = v
8949	return s
8950}
8951
8952type DescribeEventSubscriptionsInput struct {
8953	_ struct{} `type:"structure"`
8954
8955	// Filters applied to event subscriptions.
8956	Filters []*Filter `type:"list"`
8957
8958	// An optional pagination token provided by a previous request. If this parameter
8959	// is specified, the response includes only records beyond the marker, up to
8960	// the value specified by MaxRecords.
8961	Marker *string `type:"string"`
8962
8963	// The maximum number of records to include in the response. If more records
8964	// exist than the specified MaxRecords value, a pagination token called a marker
8965	// is included in the response so that the remaining results can be retrieved.
8966	//
8967	// Default: 100
8968	//
8969	// Constraints: Minimum 20, maximum 100.
8970	MaxRecords *int64 `type:"integer"`
8971
8972	// The name of the AWS DMS event subscription to be described.
8973	SubscriptionName *string `type:"string"`
8974}
8975
8976// String returns the string representation
8977func (s DescribeEventSubscriptionsInput) String() string {
8978	return awsutil.Prettify(s)
8979}
8980
8981// GoString returns the string representation
8982func (s DescribeEventSubscriptionsInput) GoString() string {
8983	return s.String()
8984}
8985
8986// Validate inspects the fields of the type to determine if they are valid.
8987func (s *DescribeEventSubscriptionsInput) Validate() error {
8988	invalidParams := request.ErrInvalidParams{Context: "DescribeEventSubscriptionsInput"}
8989	if s.Filters != nil {
8990		for i, v := range s.Filters {
8991			if v == nil {
8992				continue
8993			}
8994			if err := v.Validate(); err != nil {
8995				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
8996			}
8997		}
8998	}
8999
9000	if invalidParams.Len() > 0 {
9001		return invalidParams
9002	}
9003	return nil
9004}
9005
9006// SetFilters sets the Filters field's value.
9007func (s *DescribeEventSubscriptionsInput) SetFilters(v []*Filter) *DescribeEventSubscriptionsInput {
9008	s.Filters = v
9009	return s
9010}
9011
9012// SetMarker sets the Marker field's value.
9013func (s *DescribeEventSubscriptionsInput) SetMarker(v string) *DescribeEventSubscriptionsInput {
9014	s.Marker = &v
9015	return s
9016}
9017
9018// SetMaxRecords sets the MaxRecords field's value.
9019func (s *DescribeEventSubscriptionsInput) SetMaxRecords(v int64) *DescribeEventSubscriptionsInput {
9020	s.MaxRecords = &v
9021	return s
9022}
9023
9024// SetSubscriptionName sets the SubscriptionName field's value.
9025func (s *DescribeEventSubscriptionsInput) SetSubscriptionName(v string) *DescribeEventSubscriptionsInput {
9026	s.SubscriptionName = &v
9027	return s
9028}
9029
9030type DescribeEventSubscriptionsOutput struct {
9031	_ struct{} `type:"structure"`
9032
9033	// A list of event subscriptions.
9034	EventSubscriptionsList []*EventSubscription `type:"list"`
9035
9036	// An optional pagination token provided by a previous request. If this parameter
9037	// is specified, the response includes only records beyond the marker, up to
9038	// the value specified by MaxRecords.
9039	Marker *string `type:"string"`
9040}
9041
9042// String returns the string representation
9043func (s DescribeEventSubscriptionsOutput) String() string {
9044	return awsutil.Prettify(s)
9045}
9046
9047// GoString returns the string representation
9048func (s DescribeEventSubscriptionsOutput) GoString() string {
9049	return s.String()
9050}
9051
9052// SetEventSubscriptionsList sets the EventSubscriptionsList field's value.
9053func (s *DescribeEventSubscriptionsOutput) SetEventSubscriptionsList(v []*EventSubscription) *DescribeEventSubscriptionsOutput {
9054	s.EventSubscriptionsList = v
9055	return s
9056}
9057
9058// SetMarker sets the Marker field's value.
9059func (s *DescribeEventSubscriptionsOutput) SetMarker(v string) *DescribeEventSubscriptionsOutput {
9060	s.Marker = &v
9061	return s
9062}
9063
9064type DescribeEventsInput struct {
9065	_ struct{} `type:"structure"`
9066
9067	// The duration of the events to be listed.
9068	Duration *int64 `type:"integer"`
9069
9070	// The end time for the events to be listed.
9071	EndTime *time.Time `type:"timestamp"`
9072
9073	// A list of event categories for the source type that you've chosen.
9074	EventCategories []*string `type:"list"`
9075
9076	// Filters applied to events.
9077	Filters []*Filter `type:"list"`
9078
9079	// An optional pagination token provided by a previous request. If this parameter
9080	// is specified, the response includes only records beyond the marker, up to
9081	// the value specified by MaxRecords.
9082	Marker *string `type:"string"`
9083
9084	// The maximum number of records to include in the response. If more records
9085	// exist than the specified MaxRecords value, a pagination token called a marker
9086	// is included in the response so that the remaining results can be retrieved.
9087	//
9088	// Default: 100
9089	//
9090	// Constraints: Minimum 20, maximum 100.
9091	MaxRecords *int64 `type:"integer"`
9092
9093	// The identifier of an event source.
9094	SourceIdentifier *string `type:"string"`
9095
9096	// The type of AWS DMS resource that generates events.
9097	//
9098	// Valid values: replication-instance | replication-task
9099	SourceType *string `type:"string" enum:"SourceType"`
9100
9101	// The start time for the events to be listed.
9102	StartTime *time.Time `type:"timestamp"`
9103}
9104
9105// String returns the string representation
9106func (s DescribeEventsInput) String() string {
9107	return awsutil.Prettify(s)
9108}
9109
9110// GoString returns the string representation
9111func (s DescribeEventsInput) GoString() string {
9112	return s.String()
9113}
9114
9115// Validate inspects the fields of the type to determine if they are valid.
9116func (s *DescribeEventsInput) Validate() error {
9117	invalidParams := request.ErrInvalidParams{Context: "DescribeEventsInput"}
9118	if s.Filters != nil {
9119		for i, v := range s.Filters {
9120			if v == nil {
9121				continue
9122			}
9123			if err := v.Validate(); err != nil {
9124				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
9125			}
9126		}
9127	}
9128
9129	if invalidParams.Len() > 0 {
9130		return invalidParams
9131	}
9132	return nil
9133}
9134
9135// SetDuration sets the Duration field's value.
9136func (s *DescribeEventsInput) SetDuration(v int64) *DescribeEventsInput {
9137	s.Duration = &v
9138	return s
9139}
9140
9141// SetEndTime sets the EndTime field's value.
9142func (s *DescribeEventsInput) SetEndTime(v time.Time) *DescribeEventsInput {
9143	s.EndTime = &v
9144	return s
9145}
9146
9147// SetEventCategories sets the EventCategories field's value.
9148func (s *DescribeEventsInput) SetEventCategories(v []*string) *DescribeEventsInput {
9149	s.EventCategories = v
9150	return s
9151}
9152
9153// SetFilters sets the Filters field's value.
9154func (s *DescribeEventsInput) SetFilters(v []*Filter) *DescribeEventsInput {
9155	s.Filters = v
9156	return s
9157}
9158
9159// SetMarker sets the Marker field's value.
9160func (s *DescribeEventsInput) SetMarker(v string) *DescribeEventsInput {
9161	s.Marker = &v
9162	return s
9163}
9164
9165// SetMaxRecords sets the MaxRecords field's value.
9166func (s *DescribeEventsInput) SetMaxRecords(v int64) *DescribeEventsInput {
9167	s.MaxRecords = &v
9168	return s
9169}
9170
9171// SetSourceIdentifier sets the SourceIdentifier field's value.
9172func (s *DescribeEventsInput) SetSourceIdentifier(v string) *DescribeEventsInput {
9173	s.SourceIdentifier = &v
9174	return s
9175}
9176
9177// SetSourceType sets the SourceType field's value.
9178func (s *DescribeEventsInput) SetSourceType(v string) *DescribeEventsInput {
9179	s.SourceType = &v
9180	return s
9181}
9182
9183// SetStartTime sets the StartTime field's value.
9184func (s *DescribeEventsInput) SetStartTime(v time.Time) *DescribeEventsInput {
9185	s.StartTime = &v
9186	return s
9187}
9188
9189type DescribeEventsOutput struct {
9190	_ struct{} `type:"structure"`
9191
9192	// The events described.
9193	Events []*Event `type:"list"`
9194
9195	// An optional pagination token provided by a previous request. If this parameter
9196	// is specified, the response includes only records beyond the marker, up to
9197	// the value specified by MaxRecords.
9198	Marker *string `type:"string"`
9199}
9200
9201// String returns the string representation
9202func (s DescribeEventsOutput) String() string {
9203	return awsutil.Prettify(s)
9204}
9205
9206// GoString returns the string representation
9207func (s DescribeEventsOutput) GoString() string {
9208	return s.String()
9209}
9210
9211// SetEvents sets the Events field's value.
9212func (s *DescribeEventsOutput) SetEvents(v []*Event) *DescribeEventsOutput {
9213	s.Events = v
9214	return s
9215}
9216
9217// SetMarker sets the Marker field's value.
9218func (s *DescribeEventsOutput) SetMarker(v string) *DescribeEventsOutput {
9219	s.Marker = &v
9220	return s
9221}
9222
9223type DescribeOrderableReplicationInstancesInput struct {
9224	_ struct{} `type:"structure"`
9225
9226	// An optional pagination token provided by a previous request. If this parameter
9227	// is specified, the response includes only records beyond the marker, up to
9228	// the value specified by MaxRecords.
9229	Marker *string `type:"string"`
9230
9231	// The maximum number of records to include in the response. If more records
9232	// exist than the specified MaxRecords value, a pagination token called a marker
9233	// is included in the response so that the remaining results can be retrieved.
9234	//
9235	// Default: 100
9236	//
9237	// Constraints: Minimum 20, maximum 100.
9238	MaxRecords *int64 `type:"integer"`
9239}
9240
9241// String returns the string representation
9242func (s DescribeOrderableReplicationInstancesInput) String() string {
9243	return awsutil.Prettify(s)
9244}
9245
9246// GoString returns the string representation
9247func (s DescribeOrderableReplicationInstancesInput) GoString() string {
9248	return s.String()
9249}
9250
9251// SetMarker sets the Marker field's value.
9252func (s *DescribeOrderableReplicationInstancesInput) SetMarker(v string) *DescribeOrderableReplicationInstancesInput {
9253	s.Marker = &v
9254	return s
9255}
9256
9257// SetMaxRecords sets the MaxRecords field's value.
9258func (s *DescribeOrderableReplicationInstancesInput) SetMaxRecords(v int64) *DescribeOrderableReplicationInstancesInput {
9259	s.MaxRecords = &v
9260	return s
9261}
9262
9263type DescribeOrderableReplicationInstancesOutput struct {
9264	_ struct{} `type:"structure"`
9265
9266	// An optional pagination token provided by a previous request. If this parameter
9267	// is specified, the response includes only records beyond the marker, up to
9268	// the value specified by MaxRecords.
9269	Marker *string `type:"string"`
9270
9271	// The order-able replication instances available.
9272	OrderableReplicationInstances []*OrderableReplicationInstance `type:"list"`
9273}
9274
9275// String returns the string representation
9276func (s DescribeOrderableReplicationInstancesOutput) String() string {
9277	return awsutil.Prettify(s)
9278}
9279
9280// GoString returns the string representation
9281func (s DescribeOrderableReplicationInstancesOutput) GoString() string {
9282	return s.String()
9283}
9284
9285// SetMarker sets the Marker field's value.
9286func (s *DescribeOrderableReplicationInstancesOutput) SetMarker(v string) *DescribeOrderableReplicationInstancesOutput {
9287	s.Marker = &v
9288	return s
9289}
9290
9291// SetOrderableReplicationInstances sets the OrderableReplicationInstances field's value.
9292func (s *DescribeOrderableReplicationInstancesOutput) SetOrderableReplicationInstances(v []*OrderableReplicationInstance) *DescribeOrderableReplicationInstancesOutput {
9293	s.OrderableReplicationInstances = v
9294	return s
9295}
9296
9297type DescribePendingMaintenanceActionsInput struct {
9298	_ struct{} `type:"structure"`
9299
9300	Filters []*Filter `type:"list"`
9301
9302	// An optional pagination token provided by a previous request. If this parameter
9303	// is specified, the response includes only records beyond the marker, up to
9304	// the value specified by MaxRecords.
9305	Marker *string `type:"string"`
9306
9307	// The maximum number of records to include in the response. If more records
9308	// exist than the specified MaxRecords value, a pagination token called a marker
9309	// is included in the response so that the remaining results can be retrieved.
9310	//
9311	// Default: 100
9312	//
9313	// Constraints: Minimum 20, maximum 100.
9314	MaxRecords *int64 `type:"integer"`
9315
9316	// The Amazon Resource Name (ARN) of the replication instance.
9317	ReplicationInstanceArn *string `type:"string"`
9318}
9319
9320// String returns the string representation
9321func (s DescribePendingMaintenanceActionsInput) String() string {
9322	return awsutil.Prettify(s)
9323}
9324
9325// GoString returns the string representation
9326func (s DescribePendingMaintenanceActionsInput) GoString() string {
9327	return s.String()
9328}
9329
9330// Validate inspects the fields of the type to determine if they are valid.
9331func (s *DescribePendingMaintenanceActionsInput) Validate() error {
9332	invalidParams := request.ErrInvalidParams{Context: "DescribePendingMaintenanceActionsInput"}
9333	if s.Filters != nil {
9334		for i, v := range s.Filters {
9335			if v == nil {
9336				continue
9337			}
9338			if err := v.Validate(); err != nil {
9339				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
9340			}
9341		}
9342	}
9343
9344	if invalidParams.Len() > 0 {
9345		return invalidParams
9346	}
9347	return nil
9348}
9349
9350// SetFilters sets the Filters field's value.
9351func (s *DescribePendingMaintenanceActionsInput) SetFilters(v []*Filter) *DescribePendingMaintenanceActionsInput {
9352	s.Filters = v
9353	return s
9354}
9355
9356// SetMarker sets the Marker field's value.
9357func (s *DescribePendingMaintenanceActionsInput) SetMarker(v string) *DescribePendingMaintenanceActionsInput {
9358	s.Marker = &v
9359	return s
9360}
9361
9362// SetMaxRecords sets the MaxRecords field's value.
9363func (s *DescribePendingMaintenanceActionsInput) SetMaxRecords(v int64) *DescribePendingMaintenanceActionsInput {
9364	s.MaxRecords = &v
9365	return s
9366}
9367
9368// SetReplicationInstanceArn sets the ReplicationInstanceArn field's value.
9369func (s *DescribePendingMaintenanceActionsInput) SetReplicationInstanceArn(v string) *DescribePendingMaintenanceActionsInput {
9370	s.ReplicationInstanceArn = &v
9371	return s
9372}
9373
9374type DescribePendingMaintenanceActionsOutput struct {
9375	_ struct{} `type:"structure"`
9376
9377	// An optional pagination token provided by a previous request. If this parameter
9378	// is specified, the response includes only records beyond the marker, up to
9379	// the value specified by MaxRecords.
9380	Marker *string `type:"string"`
9381
9382	// The pending maintenance action.
9383	PendingMaintenanceActions []*ResourcePendingMaintenanceActions `type:"list"`
9384}
9385
9386// String returns the string representation
9387func (s DescribePendingMaintenanceActionsOutput) String() string {
9388	return awsutil.Prettify(s)
9389}
9390
9391// GoString returns the string representation
9392func (s DescribePendingMaintenanceActionsOutput) GoString() string {
9393	return s.String()
9394}
9395
9396// SetMarker sets the Marker field's value.
9397func (s *DescribePendingMaintenanceActionsOutput) SetMarker(v string) *DescribePendingMaintenanceActionsOutput {
9398	s.Marker = &v
9399	return s
9400}
9401
9402// SetPendingMaintenanceActions sets the PendingMaintenanceActions field's value.
9403func (s *DescribePendingMaintenanceActionsOutput) SetPendingMaintenanceActions(v []*ResourcePendingMaintenanceActions) *DescribePendingMaintenanceActionsOutput {
9404	s.PendingMaintenanceActions = v
9405	return s
9406}
9407
9408type DescribeRefreshSchemasStatusInput struct {
9409	_ struct{} `type:"structure"`
9410
9411	// The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.
9412	//
9413	// EndpointArn is a required field
9414	EndpointArn *string `type:"string" required:"true"`
9415}
9416
9417// String returns the string representation
9418func (s DescribeRefreshSchemasStatusInput) String() string {
9419	return awsutil.Prettify(s)
9420}
9421
9422// GoString returns the string representation
9423func (s DescribeRefreshSchemasStatusInput) GoString() string {
9424	return s.String()
9425}
9426
9427// Validate inspects the fields of the type to determine if they are valid.
9428func (s *DescribeRefreshSchemasStatusInput) Validate() error {
9429	invalidParams := request.ErrInvalidParams{Context: "DescribeRefreshSchemasStatusInput"}
9430	if s.EndpointArn == nil {
9431		invalidParams.Add(request.NewErrParamRequired("EndpointArn"))
9432	}
9433
9434	if invalidParams.Len() > 0 {
9435		return invalidParams
9436	}
9437	return nil
9438}
9439
9440// SetEndpointArn sets the EndpointArn field's value.
9441func (s *DescribeRefreshSchemasStatusInput) SetEndpointArn(v string) *DescribeRefreshSchemasStatusInput {
9442	s.EndpointArn = &v
9443	return s
9444}
9445
9446type DescribeRefreshSchemasStatusOutput struct {
9447	_ struct{} `type:"structure"`
9448
9449	// The status of the schema.
9450	RefreshSchemasStatus *RefreshSchemasStatus `type:"structure"`
9451}
9452
9453// String returns the string representation
9454func (s DescribeRefreshSchemasStatusOutput) String() string {
9455	return awsutil.Prettify(s)
9456}
9457
9458// GoString returns the string representation
9459func (s DescribeRefreshSchemasStatusOutput) GoString() string {
9460	return s.String()
9461}
9462
9463// SetRefreshSchemasStatus sets the RefreshSchemasStatus field's value.
9464func (s *DescribeRefreshSchemasStatusOutput) SetRefreshSchemasStatus(v *RefreshSchemasStatus) *DescribeRefreshSchemasStatusOutput {
9465	s.RefreshSchemasStatus = v
9466	return s
9467}
9468
9469type DescribeReplicationInstanceTaskLogsInput struct {
9470	_ struct{} `type:"structure"`
9471
9472	// An optional pagination token provided by a previous request. If this parameter
9473	// is specified, the response includes only records beyond the marker, up to
9474	// the value specified by MaxRecords.
9475	Marker *string `type:"string"`
9476
9477	// The maximum number of records to include in the response. If more records
9478	// exist than the specified MaxRecords value, a pagination token called a marker
9479	// is included in the response so that the remaining results can be retrieved.
9480	//
9481	// Default: 100
9482	//
9483	// Constraints: Minimum 20, maximum 100.
9484	MaxRecords *int64 `type:"integer"`
9485
9486	// The Amazon Resource Name (ARN) of the replication instance.
9487	//
9488	// ReplicationInstanceArn is a required field
9489	ReplicationInstanceArn *string `type:"string" required:"true"`
9490}
9491
9492// String returns the string representation
9493func (s DescribeReplicationInstanceTaskLogsInput) String() string {
9494	return awsutil.Prettify(s)
9495}
9496
9497// GoString returns the string representation
9498func (s DescribeReplicationInstanceTaskLogsInput) GoString() string {
9499	return s.String()
9500}
9501
9502// Validate inspects the fields of the type to determine if they are valid.
9503func (s *DescribeReplicationInstanceTaskLogsInput) Validate() error {
9504	invalidParams := request.ErrInvalidParams{Context: "DescribeReplicationInstanceTaskLogsInput"}
9505	if s.ReplicationInstanceArn == nil {
9506		invalidParams.Add(request.NewErrParamRequired("ReplicationInstanceArn"))
9507	}
9508
9509	if invalidParams.Len() > 0 {
9510		return invalidParams
9511	}
9512	return nil
9513}
9514
9515// SetMarker sets the Marker field's value.
9516func (s *DescribeReplicationInstanceTaskLogsInput) SetMarker(v string) *DescribeReplicationInstanceTaskLogsInput {
9517	s.Marker = &v
9518	return s
9519}
9520
9521// SetMaxRecords sets the MaxRecords field's value.
9522func (s *DescribeReplicationInstanceTaskLogsInput) SetMaxRecords(v int64) *DescribeReplicationInstanceTaskLogsInput {
9523	s.MaxRecords = &v
9524	return s
9525}
9526
9527// SetReplicationInstanceArn sets the ReplicationInstanceArn field's value.
9528func (s *DescribeReplicationInstanceTaskLogsInput) SetReplicationInstanceArn(v string) *DescribeReplicationInstanceTaskLogsInput {
9529	s.ReplicationInstanceArn = &v
9530	return s
9531}
9532
9533type DescribeReplicationInstanceTaskLogsOutput struct {
9534	_ struct{} `type:"structure"`
9535
9536	// An optional pagination token provided by a previous request. If this parameter
9537	// is specified, the response includes only records beyond the marker, up to
9538	// the value specified by MaxRecords.
9539	Marker *string `type:"string"`
9540
9541	// The Amazon Resource Name (ARN) of the replication instance.
9542	ReplicationInstanceArn *string `type:"string"`
9543
9544	// An array of replication task log metadata. Each member of the array contains
9545	// the replication task name, ARN, and task log size (in bytes).
9546	ReplicationInstanceTaskLogs []*ReplicationInstanceTaskLog `type:"list"`
9547}
9548
9549// String returns the string representation
9550func (s DescribeReplicationInstanceTaskLogsOutput) String() string {
9551	return awsutil.Prettify(s)
9552}
9553
9554// GoString returns the string representation
9555func (s DescribeReplicationInstanceTaskLogsOutput) GoString() string {
9556	return s.String()
9557}
9558
9559// SetMarker sets the Marker field's value.
9560func (s *DescribeReplicationInstanceTaskLogsOutput) SetMarker(v string) *DescribeReplicationInstanceTaskLogsOutput {
9561	s.Marker = &v
9562	return s
9563}
9564
9565// SetReplicationInstanceArn sets the ReplicationInstanceArn field's value.
9566func (s *DescribeReplicationInstanceTaskLogsOutput) SetReplicationInstanceArn(v string) *DescribeReplicationInstanceTaskLogsOutput {
9567	s.ReplicationInstanceArn = &v
9568	return s
9569}
9570
9571// SetReplicationInstanceTaskLogs sets the ReplicationInstanceTaskLogs field's value.
9572func (s *DescribeReplicationInstanceTaskLogsOutput) SetReplicationInstanceTaskLogs(v []*ReplicationInstanceTaskLog) *DescribeReplicationInstanceTaskLogsOutput {
9573	s.ReplicationInstanceTaskLogs = v
9574	return s
9575}
9576
9577type DescribeReplicationInstancesInput struct {
9578	_ struct{} `type:"structure"`
9579
9580	// Filters applied to replication instances.
9581	//
9582	// Valid filter names: replication-instance-arn | replication-instance-id |
9583	// replication-instance-class | engine-version
9584	Filters []*Filter `type:"list"`
9585
9586	// An optional pagination token provided by a previous request. If this parameter
9587	// is specified, the response includes only records beyond the marker, up to
9588	// the value specified by MaxRecords.
9589	Marker *string `type:"string"`
9590
9591	// The maximum number of records to include in the response. If more records
9592	// exist than the specified MaxRecords value, a pagination token called a marker
9593	// is included in the response so that the remaining results can be retrieved.
9594	//
9595	// Default: 100
9596	//
9597	// Constraints: Minimum 20, maximum 100.
9598	MaxRecords *int64 `type:"integer"`
9599}
9600
9601// String returns the string representation
9602func (s DescribeReplicationInstancesInput) String() string {
9603	return awsutil.Prettify(s)
9604}
9605
9606// GoString returns the string representation
9607func (s DescribeReplicationInstancesInput) GoString() string {
9608	return s.String()
9609}
9610
9611// Validate inspects the fields of the type to determine if they are valid.
9612func (s *DescribeReplicationInstancesInput) Validate() error {
9613	invalidParams := request.ErrInvalidParams{Context: "DescribeReplicationInstancesInput"}
9614	if s.Filters != nil {
9615		for i, v := range s.Filters {
9616			if v == nil {
9617				continue
9618			}
9619			if err := v.Validate(); err != nil {
9620				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
9621			}
9622		}
9623	}
9624
9625	if invalidParams.Len() > 0 {
9626		return invalidParams
9627	}
9628	return nil
9629}
9630
9631// SetFilters sets the Filters field's value.
9632func (s *DescribeReplicationInstancesInput) SetFilters(v []*Filter) *DescribeReplicationInstancesInput {
9633	s.Filters = v
9634	return s
9635}
9636
9637// SetMarker sets the Marker field's value.
9638func (s *DescribeReplicationInstancesInput) SetMarker(v string) *DescribeReplicationInstancesInput {
9639	s.Marker = &v
9640	return s
9641}
9642
9643// SetMaxRecords sets the MaxRecords field's value.
9644func (s *DescribeReplicationInstancesInput) SetMaxRecords(v int64) *DescribeReplicationInstancesInput {
9645	s.MaxRecords = &v
9646	return s
9647}
9648
9649type DescribeReplicationInstancesOutput struct {
9650	_ struct{} `type:"structure"`
9651
9652	// An optional pagination token provided by a previous request. If this parameter
9653	// is specified, the response includes only records beyond the marker, up to
9654	// the value specified by MaxRecords.
9655	Marker *string `type:"string"`
9656
9657	// The replication instances described.
9658	ReplicationInstances []*ReplicationInstance `type:"list"`
9659}
9660
9661// String returns the string representation
9662func (s DescribeReplicationInstancesOutput) String() string {
9663	return awsutil.Prettify(s)
9664}
9665
9666// GoString returns the string representation
9667func (s DescribeReplicationInstancesOutput) GoString() string {
9668	return s.String()
9669}
9670
9671// SetMarker sets the Marker field's value.
9672func (s *DescribeReplicationInstancesOutput) SetMarker(v string) *DescribeReplicationInstancesOutput {
9673	s.Marker = &v
9674	return s
9675}
9676
9677// SetReplicationInstances sets the ReplicationInstances field's value.
9678func (s *DescribeReplicationInstancesOutput) SetReplicationInstances(v []*ReplicationInstance) *DescribeReplicationInstancesOutput {
9679	s.ReplicationInstances = v
9680	return s
9681}
9682
9683type DescribeReplicationSubnetGroupsInput struct {
9684	_ struct{} `type:"structure"`
9685
9686	// Filters applied to replication subnet groups.
9687	//
9688	// Valid filter names: replication-subnet-group-id
9689	Filters []*Filter `type:"list"`
9690
9691	// An optional pagination token provided by a previous request. If this parameter
9692	// is specified, the response includes only records beyond the marker, up to
9693	// the value specified by MaxRecords.
9694	Marker *string `type:"string"`
9695
9696	// The maximum number of records to include in the response. If more records
9697	// exist than the specified MaxRecords value, a pagination token called a marker
9698	// is included in the response so that the remaining results can be retrieved.
9699	//
9700	// Default: 100
9701	//
9702	// Constraints: Minimum 20, maximum 100.
9703	MaxRecords *int64 `type:"integer"`
9704}
9705
9706// String returns the string representation
9707func (s DescribeReplicationSubnetGroupsInput) String() string {
9708	return awsutil.Prettify(s)
9709}
9710
9711// GoString returns the string representation
9712func (s DescribeReplicationSubnetGroupsInput) GoString() string {
9713	return s.String()
9714}
9715
9716// Validate inspects the fields of the type to determine if they are valid.
9717func (s *DescribeReplicationSubnetGroupsInput) Validate() error {
9718	invalidParams := request.ErrInvalidParams{Context: "DescribeReplicationSubnetGroupsInput"}
9719	if s.Filters != nil {
9720		for i, v := range s.Filters {
9721			if v == nil {
9722				continue
9723			}
9724			if err := v.Validate(); err != nil {
9725				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
9726			}
9727		}
9728	}
9729
9730	if invalidParams.Len() > 0 {
9731		return invalidParams
9732	}
9733	return nil
9734}
9735
9736// SetFilters sets the Filters field's value.
9737func (s *DescribeReplicationSubnetGroupsInput) SetFilters(v []*Filter) *DescribeReplicationSubnetGroupsInput {
9738	s.Filters = v
9739	return s
9740}
9741
9742// SetMarker sets the Marker field's value.
9743func (s *DescribeReplicationSubnetGroupsInput) SetMarker(v string) *DescribeReplicationSubnetGroupsInput {
9744	s.Marker = &v
9745	return s
9746}
9747
9748// SetMaxRecords sets the MaxRecords field's value.
9749func (s *DescribeReplicationSubnetGroupsInput) SetMaxRecords(v int64) *DescribeReplicationSubnetGroupsInput {
9750	s.MaxRecords = &v
9751	return s
9752}
9753
9754type DescribeReplicationSubnetGroupsOutput struct {
9755	_ struct{} `type:"structure"`
9756
9757	// An optional pagination token provided by a previous request. If this parameter
9758	// is specified, the response includes only records beyond the marker, up to
9759	// the value specified by MaxRecords.
9760	Marker *string `type:"string"`
9761
9762	// A description of the replication subnet groups.
9763	ReplicationSubnetGroups []*ReplicationSubnetGroup `type:"list"`
9764}
9765
9766// String returns the string representation
9767func (s DescribeReplicationSubnetGroupsOutput) String() string {
9768	return awsutil.Prettify(s)
9769}
9770
9771// GoString returns the string representation
9772func (s DescribeReplicationSubnetGroupsOutput) GoString() string {
9773	return s.String()
9774}
9775
9776// SetMarker sets the Marker field's value.
9777func (s *DescribeReplicationSubnetGroupsOutput) SetMarker(v string) *DescribeReplicationSubnetGroupsOutput {
9778	s.Marker = &v
9779	return s
9780}
9781
9782// SetReplicationSubnetGroups sets the ReplicationSubnetGroups field's value.
9783func (s *DescribeReplicationSubnetGroupsOutput) SetReplicationSubnetGroups(v []*ReplicationSubnetGroup) *DescribeReplicationSubnetGroupsOutput {
9784	s.ReplicationSubnetGroups = v
9785	return s
9786}
9787
9788type DescribeReplicationTaskAssessmentResultsInput struct {
9789	_ struct{} `type:"structure"`
9790
9791	// An optional pagination token provided by a previous request. If this parameter
9792	// is specified, the response includes only records beyond the marker, up to
9793	// the value specified by MaxRecords.
9794	Marker *string `type:"string"`
9795
9796	// The maximum number of records to include in the response. If more records
9797	// exist than the specified MaxRecords value, a pagination token called a marker
9798	// is included in the response so that the remaining results can be retrieved.
9799	//
9800	// Default: 100
9801	//
9802	// Constraints: Minimum 20, maximum 100.
9803	MaxRecords *int64 `type:"integer"`
9804
9805	// The Amazon Resource Name (ARN) string that uniquely identifies the task.
9806	// When this input parameter is specified, the API returns only one result and
9807	// ignore the values of the MaxRecords and Marker parameters.
9808	ReplicationTaskArn *string `type:"string"`
9809}
9810
9811// String returns the string representation
9812func (s DescribeReplicationTaskAssessmentResultsInput) String() string {
9813	return awsutil.Prettify(s)
9814}
9815
9816// GoString returns the string representation
9817func (s DescribeReplicationTaskAssessmentResultsInput) GoString() string {
9818	return s.String()
9819}
9820
9821// SetMarker sets the Marker field's value.
9822func (s *DescribeReplicationTaskAssessmentResultsInput) SetMarker(v string) *DescribeReplicationTaskAssessmentResultsInput {
9823	s.Marker = &v
9824	return s
9825}
9826
9827// SetMaxRecords sets the MaxRecords field's value.
9828func (s *DescribeReplicationTaskAssessmentResultsInput) SetMaxRecords(v int64) *DescribeReplicationTaskAssessmentResultsInput {
9829	s.MaxRecords = &v
9830	return s
9831}
9832
9833// SetReplicationTaskArn sets the ReplicationTaskArn field's value.
9834func (s *DescribeReplicationTaskAssessmentResultsInput) SetReplicationTaskArn(v string) *DescribeReplicationTaskAssessmentResultsInput {
9835	s.ReplicationTaskArn = &v
9836	return s
9837}
9838
9839type DescribeReplicationTaskAssessmentResultsOutput struct {
9840	_ struct{} `type:"structure"`
9841
9842	// - The Amazon S3 bucket where the task assessment report is located.
9843	BucketName *string `type:"string"`
9844
9845	// An optional pagination token provided by a previous request. If this parameter
9846	// is specified, the response includes only records beyond the marker, up to
9847	// the value specified by MaxRecords.
9848	Marker *string `type:"string"`
9849
9850	// The task assessment report.
9851	ReplicationTaskAssessmentResults []*ReplicationTaskAssessmentResult `type:"list"`
9852}
9853
9854// String returns the string representation
9855func (s DescribeReplicationTaskAssessmentResultsOutput) String() string {
9856	return awsutil.Prettify(s)
9857}
9858
9859// GoString returns the string representation
9860func (s DescribeReplicationTaskAssessmentResultsOutput) GoString() string {
9861	return s.String()
9862}
9863
9864// SetBucketName sets the BucketName field's value.
9865func (s *DescribeReplicationTaskAssessmentResultsOutput) SetBucketName(v string) *DescribeReplicationTaskAssessmentResultsOutput {
9866	s.BucketName = &v
9867	return s
9868}
9869
9870// SetMarker sets the Marker field's value.
9871func (s *DescribeReplicationTaskAssessmentResultsOutput) SetMarker(v string) *DescribeReplicationTaskAssessmentResultsOutput {
9872	s.Marker = &v
9873	return s
9874}
9875
9876// SetReplicationTaskAssessmentResults sets the ReplicationTaskAssessmentResults field's value.
9877func (s *DescribeReplicationTaskAssessmentResultsOutput) SetReplicationTaskAssessmentResults(v []*ReplicationTaskAssessmentResult) *DescribeReplicationTaskAssessmentResultsOutput {
9878	s.ReplicationTaskAssessmentResults = v
9879	return s
9880}
9881
9882type DescribeReplicationTaskAssessmentRunsInput struct {
9883	_ struct{} `type:"structure"`
9884
9885	// Filters applied to the premigration assessment runs described in the form
9886	// of key-value pairs.
9887	//
9888	// Valid filter names: replication-task-assessment-run-arn, replication-task-arn,
9889	// replication-instance-arn, status
9890	Filters []*Filter `type:"list"`
9891
9892	// An optional pagination token provided by a previous request. If this parameter
9893	// is specified, the response includes only records beyond the marker, up to
9894	// the value specified by MaxRecords.
9895	Marker *string `type:"string"`
9896
9897	// The maximum number of records to include in the response. If more records
9898	// exist than the specified MaxRecords value, a pagination token called a marker
9899	// is included in the response so that the remaining results can be retrieved.
9900	MaxRecords *int64 `type:"integer"`
9901}
9902
9903// String returns the string representation
9904func (s DescribeReplicationTaskAssessmentRunsInput) String() string {
9905	return awsutil.Prettify(s)
9906}
9907
9908// GoString returns the string representation
9909func (s DescribeReplicationTaskAssessmentRunsInput) GoString() string {
9910	return s.String()
9911}
9912
9913// Validate inspects the fields of the type to determine if they are valid.
9914func (s *DescribeReplicationTaskAssessmentRunsInput) Validate() error {
9915	invalidParams := request.ErrInvalidParams{Context: "DescribeReplicationTaskAssessmentRunsInput"}
9916	if s.Filters != nil {
9917		for i, v := range s.Filters {
9918			if v == nil {
9919				continue
9920			}
9921			if err := v.Validate(); err != nil {
9922				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
9923			}
9924		}
9925	}
9926
9927	if invalidParams.Len() > 0 {
9928		return invalidParams
9929	}
9930	return nil
9931}
9932
9933// SetFilters sets the Filters field's value.
9934func (s *DescribeReplicationTaskAssessmentRunsInput) SetFilters(v []*Filter) *DescribeReplicationTaskAssessmentRunsInput {
9935	s.Filters = v
9936	return s
9937}
9938
9939// SetMarker sets the Marker field's value.
9940func (s *DescribeReplicationTaskAssessmentRunsInput) SetMarker(v string) *DescribeReplicationTaskAssessmentRunsInput {
9941	s.Marker = &v
9942	return s
9943}
9944
9945// SetMaxRecords sets the MaxRecords field's value.
9946func (s *DescribeReplicationTaskAssessmentRunsInput) SetMaxRecords(v int64) *DescribeReplicationTaskAssessmentRunsInput {
9947	s.MaxRecords = &v
9948	return s
9949}
9950
9951type DescribeReplicationTaskAssessmentRunsOutput struct {
9952	_ struct{} `type:"structure"`
9953
9954	// A pagination token returned for you to pass to a subsequent request. If you
9955	// pass this token as the Marker value in a subsequent request, the response
9956	// includes only records beyond the marker, up to the value specified in the
9957	// request by MaxRecords.
9958	Marker *string `type:"string"`
9959
9960	// One or more premigration assessment runs as specified by Filters.
9961	ReplicationTaskAssessmentRuns []*ReplicationTaskAssessmentRun `type:"list"`
9962}
9963
9964// String returns the string representation
9965func (s DescribeReplicationTaskAssessmentRunsOutput) String() string {
9966	return awsutil.Prettify(s)
9967}
9968
9969// GoString returns the string representation
9970func (s DescribeReplicationTaskAssessmentRunsOutput) GoString() string {
9971	return s.String()
9972}
9973
9974// SetMarker sets the Marker field's value.
9975func (s *DescribeReplicationTaskAssessmentRunsOutput) SetMarker(v string) *DescribeReplicationTaskAssessmentRunsOutput {
9976	s.Marker = &v
9977	return s
9978}
9979
9980// SetReplicationTaskAssessmentRuns sets the ReplicationTaskAssessmentRuns field's value.
9981func (s *DescribeReplicationTaskAssessmentRunsOutput) SetReplicationTaskAssessmentRuns(v []*ReplicationTaskAssessmentRun) *DescribeReplicationTaskAssessmentRunsOutput {
9982	s.ReplicationTaskAssessmentRuns = v
9983	return s
9984}
9985
9986type DescribeReplicationTaskIndividualAssessmentsInput struct {
9987	_ struct{} `type:"structure"`
9988
9989	// Filters applied to the individual assessments described in the form of key-value
9990	// pairs.
9991	//
9992	// Valid filter names: replication-task-assessment-run-arn, replication-task-arn,
9993	// status
9994	Filters []*Filter `type:"list"`
9995
9996	// An optional pagination token provided by a previous request. If this parameter
9997	// is specified, the response includes only records beyond the marker, up to
9998	// the value specified by MaxRecords.
9999	Marker *string `type:"string"`
10000
10001	// The maximum number of records to include in the response. If more records
10002	// exist than the specified MaxRecords value, a pagination token called a marker
10003	// is included in the response so that the remaining results can be retrieved.
10004	MaxRecords *int64 `type:"integer"`
10005}
10006
10007// String returns the string representation
10008func (s DescribeReplicationTaskIndividualAssessmentsInput) String() string {
10009	return awsutil.Prettify(s)
10010}
10011
10012// GoString returns the string representation
10013func (s DescribeReplicationTaskIndividualAssessmentsInput) GoString() string {
10014	return s.String()
10015}
10016
10017// Validate inspects the fields of the type to determine if they are valid.
10018func (s *DescribeReplicationTaskIndividualAssessmentsInput) Validate() error {
10019	invalidParams := request.ErrInvalidParams{Context: "DescribeReplicationTaskIndividualAssessmentsInput"}
10020	if s.Filters != nil {
10021		for i, v := range s.Filters {
10022			if v == nil {
10023				continue
10024			}
10025			if err := v.Validate(); err != nil {
10026				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
10027			}
10028		}
10029	}
10030
10031	if invalidParams.Len() > 0 {
10032		return invalidParams
10033	}
10034	return nil
10035}
10036
10037// SetFilters sets the Filters field's value.
10038func (s *DescribeReplicationTaskIndividualAssessmentsInput) SetFilters(v []*Filter) *DescribeReplicationTaskIndividualAssessmentsInput {
10039	s.Filters = v
10040	return s
10041}
10042
10043// SetMarker sets the Marker field's value.
10044func (s *DescribeReplicationTaskIndividualAssessmentsInput) SetMarker(v string) *DescribeReplicationTaskIndividualAssessmentsInput {
10045	s.Marker = &v
10046	return s
10047}
10048
10049// SetMaxRecords sets the MaxRecords field's value.
10050func (s *DescribeReplicationTaskIndividualAssessmentsInput) SetMaxRecords(v int64) *DescribeReplicationTaskIndividualAssessmentsInput {
10051	s.MaxRecords = &v
10052	return s
10053}
10054
10055type DescribeReplicationTaskIndividualAssessmentsOutput struct {
10056	_ struct{} `type:"structure"`
10057
10058	// A pagination token returned for you to pass to a subsequent request. If you
10059	// pass this token as the Marker value in a subsequent request, the response
10060	// includes only records beyond the marker, up to the value specified in the
10061	// request by MaxRecords.
10062	Marker *string `type:"string"`
10063
10064	// One or more individual assessments as specified by Filters.
10065	ReplicationTaskIndividualAssessments []*ReplicationTaskIndividualAssessment `type:"list"`
10066}
10067
10068// String returns the string representation
10069func (s DescribeReplicationTaskIndividualAssessmentsOutput) String() string {
10070	return awsutil.Prettify(s)
10071}
10072
10073// GoString returns the string representation
10074func (s DescribeReplicationTaskIndividualAssessmentsOutput) GoString() string {
10075	return s.String()
10076}
10077
10078// SetMarker sets the Marker field's value.
10079func (s *DescribeReplicationTaskIndividualAssessmentsOutput) SetMarker(v string) *DescribeReplicationTaskIndividualAssessmentsOutput {
10080	s.Marker = &v
10081	return s
10082}
10083
10084// SetReplicationTaskIndividualAssessments sets the ReplicationTaskIndividualAssessments field's value.
10085func (s *DescribeReplicationTaskIndividualAssessmentsOutput) SetReplicationTaskIndividualAssessments(v []*ReplicationTaskIndividualAssessment) *DescribeReplicationTaskIndividualAssessmentsOutput {
10086	s.ReplicationTaskIndividualAssessments = v
10087	return s
10088}
10089
10090type DescribeReplicationTasksInput struct {
10091	_ struct{} `type:"structure"`
10092
10093	// Filters applied to replication tasks.
10094	//
10095	// Valid filter names: replication-task-arn | replication-task-id | migration-type
10096	// | endpoint-arn | replication-instance-arn
10097	Filters []*Filter `type:"list"`
10098
10099	// An optional pagination token provided by a previous request. If this parameter
10100	// is specified, the response includes only records beyond the marker, up to
10101	// the value specified by MaxRecords.
10102	Marker *string `type:"string"`
10103
10104	// The maximum number of records to include in the response. If more records
10105	// exist than the specified MaxRecords value, a pagination token called a marker
10106	// is included in the response so that the remaining results can be retrieved.
10107	//
10108	// Default: 100
10109	//
10110	// Constraints: Minimum 20, maximum 100.
10111	MaxRecords *int64 `type:"integer"`
10112
10113	// An option to set to avoid returning information about settings. Use this
10114	// to reduce overhead when setting information is too large. To use this option,
10115	// choose true; otherwise, choose false (the default).
10116	WithoutSettings *bool `type:"boolean"`
10117}
10118
10119// String returns the string representation
10120func (s DescribeReplicationTasksInput) String() string {
10121	return awsutil.Prettify(s)
10122}
10123
10124// GoString returns the string representation
10125func (s DescribeReplicationTasksInput) GoString() string {
10126	return s.String()
10127}
10128
10129// Validate inspects the fields of the type to determine if they are valid.
10130func (s *DescribeReplicationTasksInput) Validate() error {
10131	invalidParams := request.ErrInvalidParams{Context: "DescribeReplicationTasksInput"}
10132	if s.Filters != nil {
10133		for i, v := range s.Filters {
10134			if v == nil {
10135				continue
10136			}
10137			if err := v.Validate(); err != nil {
10138				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
10139			}
10140		}
10141	}
10142
10143	if invalidParams.Len() > 0 {
10144		return invalidParams
10145	}
10146	return nil
10147}
10148
10149// SetFilters sets the Filters field's value.
10150func (s *DescribeReplicationTasksInput) SetFilters(v []*Filter) *DescribeReplicationTasksInput {
10151	s.Filters = v
10152	return s
10153}
10154
10155// SetMarker sets the Marker field's value.
10156func (s *DescribeReplicationTasksInput) SetMarker(v string) *DescribeReplicationTasksInput {
10157	s.Marker = &v
10158	return s
10159}
10160
10161// SetMaxRecords sets the MaxRecords field's value.
10162func (s *DescribeReplicationTasksInput) SetMaxRecords(v int64) *DescribeReplicationTasksInput {
10163	s.MaxRecords = &v
10164	return s
10165}
10166
10167// SetWithoutSettings sets the WithoutSettings field's value.
10168func (s *DescribeReplicationTasksInput) SetWithoutSettings(v bool) *DescribeReplicationTasksInput {
10169	s.WithoutSettings = &v
10170	return s
10171}
10172
10173type DescribeReplicationTasksOutput struct {
10174	_ struct{} `type:"structure"`
10175
10176	// An optional pagination token provided by a previous request. If this parameter
10177	// is specified, the response includes only records beyond the marker, up to
10178	// the value specified by MaxRecords.
10179	Marker *string `type:"string"`
10180
10181	// A description of the replication tasks.
10182	ReplicationTasks []*ReplicationTask `type:"list"`
10183}
10184
10185// String returns the string representation
10186func (s DescribeReplicationTasksOutput) String() string {
10187	return awsutil.Prettify(s)
10188}
10189
10190// GoString returns the string representation
10191func (s DescribeReplicationTasksOutput) GoString() string {
10192	return s.String()
10193}
10194
10195// SetMarker sets the Marker field's value.
10196func (s *DescribeReplicationTasksOutput) SetMarker(v string) *DescribeReplicationTasksOutput {
10197	s.Marker = &v
10198	return s
10199}
10200
10201// SetReplicationTasks sets the ReplicationTasks field's value.
10202func (s *DescribeReplicationTasksOutput) SetReplicationTasks(v []*ReplicationTask) *DescribeReplicationTasksOutput {
10203	s.ReplicationTasks = v
10204	return s
10205}
10206
10207type DescribeSchemasInput struct {
10208	_ struct{} `type:"structure"`
10209
10210	// The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.
10211	//
10212	// EndpointArn is a required field
10213	EndpointArn *string `type:"string" required:"true"`
10214
10215	// An optional pagination token provided by a previous request. If this parameter
10216	// is specified, the response includes only records beyond the marker, up to
10217	// the value specified by MaxRecords.
10218	Marker *string `type:"string"`
10219
10220	// The maximum number of records to include in the response. If more records
10221	// exist than the specified MaxRecords value, a pagination token called a marker
10222	// is included in the response so that the remaining results can be retrieved.
10223	//
10224	// Default: 100
10225	//
10226	// Constraints: Minimum 20, maximum 100.
10227	MaxRecords *int64 `type:"integer"`
10228}
10229
10230// String returns the string representation
10231func (s DescribeSchemasInput) String() string {
10232	return awsutil.Prettify(s)
10233}
10234
10235// GoString returns the string representation
10236func (s DescribeSchemasInput) GoString() string {
10237	return s.String()
10238}
10239
10240// Validate inspects the fields of the type to determine if they are valid.
10241func (s *DescribeSchemasInput) Validate() error {
10242	invalidParams := request.ErrInvalidParams{Context: "DescribeSchemasInput"}
10243	if s.EndpointArn == nil {
10244		invalidParams.Add(request.NewErrParamRequired("EndpointArn"))
10245	}
10246
10247	if invalidParams.Len() > 0 {
10248		return invalidParams
10249	}
10250	return nil
10251}
10252
10253// SetEndpointArn sets the EndpointArn field's value.
10254func (s *DescribeSchemasInput) SetEndpointArn(v string) *DescribeSchemasInput {
10255	s.EndpointArn = &v
10256	return s
10257}
10258
10259// SetMarker sets the Marker field's value.
10260func (s *DescribeSchemasInput) SetMarker(v string) *DescribeSchemasInput {
10261	s.Marker = &v
10262	return s
10263}
10264
10265// SetMaxRecords sets the MaxRecords field's value.
10266func (s *DescribeSchemasInput) SetMaxRecords(v int64) *DescribeSchemasInput {
10267	s.MaxRecords = &v
10268	return s
10269}
10270
10271type DescribeSchemasOutput struct {
10272	_ struct{} `type:"structure"`
10273
10274	// An optional pagination token provided by a previous request. If this parameter
10275	// is specified, the response includes only records beyond the marker, up to
10276	// the value specified by MaxRecords.
10277	Marker *string `type:"string"`
10278
10279	// The described schema.
10280	Schemas []*string `type:"list"`
10281}
10282
10283// String returns the string representation
10284func (s DescribeSchemasOutput) String() string {
10285	return awsutil.Prettify(s)
10286}
10287
10288// GoString returns the string representation
10289func (s DescribeSchemasOutput) GoString() string {
10290	return s.String()
10291}
10292
10293// SetMarker sets the Marker field's value.
10294func (s *DescribeSchemasOutput) SetMarker(v string) *DescribeSchemasOutput {
10295	s.Marker = &v
10296	return s
10297}
10298
10299// SetSchemas sets the Schemas field's value.
10300func (s *DescribeSchemasOutput) SetSchemas(v []*string) *DescribeSchemasOutput {
10301	s.Schemas = v
10302	return s
10303}
10304
10305type DescribeTableStatisticsInput struct {
10306	_ struct{} `type:"structure"`
10307
10308	// Filters applied to table statistics.
10309	//
10310	// Valid filter names: schema-name | table-name | table-state
10311	//
10312	// A combination of filters creates an AND condition where each record matches
10313	// all specified filters.
10314	Filters []*Filter `type:"list"`
10315
10316	// An optional pagination token provided by a previous request. If this parameter
10317	// is specified, the response includes only records beyond the marker, up to
10318	// the value specified by MaxRecords.
10319	Marker *string `type:"string"`
10320
10321	// The maximum number of records to include in the response. If more records
10322	// exist than the specified MaxRecords value, a pagination token called a marker
10323	// is included in the response so that the remaining results can be retrieved.
10324	//
10325	// Default: 100
10326	//
10327	// Constraints: Minimum 20, maximum 500.
10328	MaxRecords *int64 `type:"integer"`
10329
10330	// The Amazon Resource Name (ARN) of the replication task.
10331	//
10332	// ReplicationTaskArn is a required field
10333	ReplicationTaskArn *string `type:"string" required:"true"`
10334}
10335
10336// String returns the string representation
10337func (s DescribeTableStatisticsInput) String() string {
10338	return awsutil.Prettify(s)
10339}
10340
10341// GoString returns the string representation
10342func (s DescribeTableStatisticsInput) GoString() string {
10343	return s.String()
10344}
10345
10346// Validate inspects the fields of the type to determine if they are valid.
10347func (s *DescribeTableStatisticsInput) Validate() error {
10348	invalidParams := request.ErrInvalidParams{Context: "DescribeTableStatisticsInput"}
10349	if s.ReplicationTaskArn == nil {
10350		invalidParams.Add(request.NewErrParamRequired("ReplicationTaskArn"))
10351	}
10352	if s.Filters != nil {
10353		for i, v := range s.Filters {
10354			if v == nil {
10355				continue
10356			}
10357			if err := v.Validate(); err != nil {
10358				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
10359			}
10360		}
10361	}
10362
10363	if invalidParams.Len() > 0 {
10364		return invalidParams
10365	}
10366	return nil
10367}
10368
10369// SetFilters sets the Filters field's value.
10370func (s *DescribeTableStatisticsInput) SetFilters(v []*Filter) *DescribeTableStatisticsInput {
10371	s.Filters = v
10372	return s
10373}
10374
10375// SetMarker sets the Marker field's value.
10376func (s *DescribeTableStatisticsInput) SetMarker(v string) *DescribeTableStatisticsInput {
10377	s.Marker = &v
10378	return s
10379}
10380
10381// SetMaxRecords sets the MaxRecords field's value.
10382func (s *DescribeTableStatisticsInput) SetMaxRecords(v int64) *DescribeTableStatisticsInput {
10383	s.MaxRecords = &v
10384	return s
10385}
10386
10387// SetReplicationTaskArn sets the ReplicationTaskArn field's value.
10388func (s *DescribeTableStatisticsInput) SetReplicationTaskArn(v string) *DescribeTableStatisticsInput {
10389	s.ReplicationTaskArn = &v
10390	return s
10391}
10392
10393type DescribeTableStatisticsOutput struct {
10394	_ struct{} `type:"structure"`
10395
10396	// An optional pagination token provided by a previous request. If this parameter
10397	// is specified, the response includes only records beyond the marker, up to
10398	// the value specified by MaxRecords.
10399	Marker *string `type:"string"`
10400
10401	// The Amazon Resource Name (ARN) of the replication task.
10402	ReplicationTaskArn *string `type:"string"`
10403
10404	// The table statistics.
10405	TableStatistics []*TableStatistics `type:"list"`
10406}
10407
10408// String returns the string representation
10409func (s DescribeTableStatisticsOutput) String() string {
10410	return awsutil.Prettify(s)
10411}
10412
10413// GoString returns the string representation
10414func (s DescribeTableStatisticsOutput) GoString() string {
10415	return s.String()
10416}
10417
10418// SetMarker sets the Marker field's value.
10419func (s *DescribeTableStatisticsOutput) SetMarker(v string) *DescribeTableStatisticsOutput {
10420	s.Marker = &v
10421	return s
10422}
10423
10424// SetReplicationTaskArn sets the ReplicationTaskArn field's value.
10425func (s *DescribeTableStatisticsOutput) SetReplicationTaskArn(v string) *DescribeTableStatisticsOutput {
10426	s.ReplicationTaskArn = &v
10427	return s
10428}
10429
10430// SetTableStatistics sets the TableStatistics field's value.
10431func (s *DescribeTableStatisticsOutput) SetTableStatistics(v []*TableStatistics) *DescribeTableStatisticsOutput {
10432	s.TableStatistics = v
10433	return s
10434}
10435
10436// The settings in JSON format for the DMS Transfer type source endpoint.
10437type DmsTransferSettings struct {
10438	_ struct{} `type:"structure"`
10439
10440	// The name of the S3 bucket to use.
10441	BucketName *string `type:"string"`
10442
10443	// The IAM role that has permission to access the Amazon S3 bucket.
10444	ServiceAccessRoleArn *string `type:"string"`
10445}
10446
10447// String returns the string representation
10448func (s DmsTransferSettings) String() string {
10449	return awsutil.Prettify(s)
10450}
10451
10452// GoString returns the string representation
10453func (s DmsTransferSettings) GoString() string {
10454	return s.String()
10455}
10456
10457// SetBucketName sets the BucketName field's value.
10458func (s *DmsTransferSettings) SetBucketName(v string) *DmsTransferSettings {
10459	s.BucketName = &v
10460	return s
10461}
10462
10463// SetServiceAccessRoleArn sets the ServiceAccessRoleArn field's value.
10464func (s *DmsTransferSettings) SetServiceAccessRoleArn(v string) *DmsTransferSettings {
10465	s.ServiceAccessRoleArn = &v
10466	return s
10467}
10468
10469// Provides information that defines a DocumentDB endpoint.
10470type DocDbSettings struct {
10471	_ struct{} `type:"structure"`
10472
10473	// The database name on the DocumentDB source endpoint.
10474	DatabaseName *string `type:"string"`
10475
10476	// Indicates the number of documents to preview to determine the document organization.
10477	// Use this setting when NestingLevel is set to "one".
10478	//
10479	// Must be a positive value greater than 0. Default value is 1000.
10480	DocsToInvestigate *int64 `type:"integer"`
10481
10482	// Specifies the document ID. Use this setting when NestingLevel is set to "none".
10483	//
10484	// Default value is "false".
10485	ExtractDocId *bool `type:"boolean"`
10486
10487	// The AWS KMS key identifier that is used to encrypt the content on the replication
10488	// instance. If you don't specify a value for the KmsKeyId parameter, then AWS
10489	// DMS uses your default encryption key. AWS KMS creates the default encryption
10490	// key for your AWS account. Your AWS account has a different default encryption
10491	// key for each AWS Region.
10492	KmsKeyId *string `type:"string"`
10493
10494	// Specifies either document or table mode.
10495	//
10496	// Default value is "none". Specify "none" to use document mode. Specify "one"
10497	// to use table mode.
10498	NestingLevel *string `type:"string" enum:"NestingLevelValue"`
10499
10500	// The password for the user account you use to access the DocumentDB source
10501	// endpoint.
10502	Password *string `type:"string" sensitive:"true"`
10503
10504	// The port value for the DocumentDB source endpoint.
10505	Port *int64 `type:"integer"`
10506
10507	// The full Amazon Resource Name (ARN) of the IAM role that specifies AWS DMS
10508	// as the trusted entity and grants the required permissions to access the value
10509	// in SecretsManagerSecret. SecretsManagerSecret has the value of the AWS Secrets
10510	// Manager secret that allows access to the DocumentDB endpoint.
10511	//
10512	// You can specify one of two sets of values for these permissions. You can
10513	// specify the values for this setting and SecretsManagerSecretId. Or you can
10514	// specify clear-text values for UserName, Password, ServerName, and Port. You
10515	// can't specify both. For more information on creating this SecretsManagerSecret
10516	// and the SecretsManagerAccessRoleArn and SecretsManagerSecretId required to
10517	// access it, see Using secrets to access AWS Database Migration Service resources
10518	// (https://docs.aws.amazon.com/https:/docs.aws.amazon.com/dms/latest/userguide/CHAP_Security.html#security-iam-secretsmanager)
10519	// in the AWS Database Migration Service User Guide.
10520	SecretsManagerAccessRoleArn *string `type:"string"`
10521
10522	// The full ARN, partial ARN, or friendly name of the SecretsManagerSecret that
10523	// contains the DocumentDB endpoint connection details.
10524	SecretsManagerSecretId *string `type:"string"`
10525
10526	// The name of the server on the DocumentDB source endpoint.
10527	ServerName *string `type:"string"`
10528
10529	// The user name you use to access the DocumentDB source endpoint.
10530	Username *string `type:"string"`
10531}
10532
10533// String returns the string representation
10534func (s DocDbSettings) String() string {
10535	return awsutil.Prettify(s)
10536}
10537
10538// GoString returns the string representation
10539func (s DocDbSettings) GoString() string {
10540	return s.String()
10541}
10542
10543// SetDatabaseName sets the DatabaseName field's value.
10544func (s *DocDbSettings) SetDatabaseName(v string) *DocDbSettings {
10545	s.DatabaseName = &v
10546	return s
10547}
10548
10549// SetDocsToInvestigate sets the DocsToInvestigate field's value.
10550func (s *DocDbSettings) SetDocsToInvestigate(v int64) *DocDbSettings {
10551	s.DocsToInvestigate = &v
10552	return s
10553}
10554
10555// SetExtractDocId sets the ExtractDocId field's value.
10556func (s *DocDbSettings) SetExtractDocId(v bool) *DocDbSettings {
10557	s.ExtractDocId = &v
10558	return s
10559}
10560
10561// SetKmsKeyId sets the KmsKeyId field's value.
10562func (s *DocDbSettings) SetKmsKeyId(v string) *DocDbSettings {
10563	s.KmsKeyId = &v
10564	return s
10565}
10566
10567// SetNestingLevel sets the NestingLevel field's value.
10568func (s *DocDbSettings) SetNestingLevel(v string) *DocDbSettings {
10569	s.NestingLevel = &v
10570	return s
10571}
10572
10573// SetPassword sets the Password field's value.
10574func (s *DocDbSettings) SetPassword(v string) *DocDbSettings {
10575	s.Password = &v
10576	return s
10577}
10578
10579// SetPort sets the Port field's value.
10580func (s *DocDbSettings) SetPort(v int64) *DocDbSettings {
10581	s.Port = &v
10582	return s
10583}
10584
10585// SetSecretsManagerAccessRoleArn sets the SecretsManagerAccessRoleArn field's value.
10586func (s *DocDbSettings) SetSecretsManagerAccessRoleArn(v string) *DocDbSettings {
10587	s.SecretsManagerAccessRoleArn = &v
10588	return s
10589}
10590
10591// SetSecretsManagerSecretId sets the SecretsManagerSecretId field's value.
10592func (s *DocDbSettings) SetSecretsManagerSecretId(v string) *DocDbSettings {
10593	s.SecretsManagerSecretId = &v
10594	return s
10595}
10596
10597// SetServerName sets the ServerName field's value.
10598func (s *DocDbSettings) SetServerName(v string) *DocDbSettings {
10599	s.ServerName = &v
10600	return s
10601}
10602
10603// SetUsername sets the Username field's value.
10604func (s *DocDbSettings) SetUsername(v string) *DocDbSettings {
10605	s.Username = &v
10606	return s
10607}
10608
10609// Provides the Amazon Resource Name (ARN) of the AWS Identity and Access Management
10610// (IAM) role used to define an Amazon DynamoDB target endpoint.
10611type DynamoDbSettings struct {
10612	_ struct{} `type:"structure"`
10613
10614	// The Amazon Resource Name (ARN) used by the service access IAM role.
10615	//
10616	// ServiceAccessRoleArn is a required field
10617	ServiceAccessRoleArn *string `type:"string" required:"true"`
10618}
10619
10620// String returns the string representation
10621func (s DynamoDbSettings) String() string {
10622	return awsutil.Prettify(s)
10623}
10624
10625// GoString returns the string representation
10626func (s DynamoDbSettings) GoString() string {
10627	return s.String()
10628}
10629
10630// Validate inspects the fields of the type to determine if they are valid.
10631func (s *DynamoDbSettings) Validate() error {
10632	invalidParams := request.ErrInvalidParams{Context: "DynamoDbSettings"}
10633	if s.ServiceAccessRoleArn == nil {
10634		invalidParams.Add(request.NewErrParamRequired("ServiceAccessRoleArn"))
10635	}
10636
10637	if invalidParams.Len() > 0 {
10638		return invalidParams
10639	}
10640	return nil
10641}
10642
10643// SetServiceAccessRoleArn sets the ServiceAccessRoleArn field's value.
10644func (s *DynamoDbSettings) SetServiceAccessRoleArn(v string) *DynamoDbSettings {
10645	s.ServiceAccessRoleArn = &v
10646	return s
10647}
10648
10649// Provides information that defines an Elasticsearch endpoint.
10650type ElasticsearchSettings struct {
10651	_ struct{} `type:"structure"`
10652
10653	// The endpoint for the Elasticsearch cluster. AWS DMS uses HTTPS if a transport
10654	// protocol (http/https) is not specified.
10655	//
10656	// EndpointUri is a required field
10657	EndpointUri *string `type:"string" required:"true"`
10658
10659	// The maximum number of seconds for which DMS retries failed API requests to
10660	// the Elasticsearch cluster.
10661	ErrorRetryDuration *int64 `type:"integer"`
10662
10663	// The maximum percentage of records that can fail to be written before a full
10664	// load operation stops.
10665	//
10666	// To avoid early failure, this counter is only effective after 1000 records
10667	// are transferred. Elasticsearch also has the concept of error monitoring during
10668	// the last 10 minutes of an Observation Window. If transfer of all records
10669	// fail in the last 10 minutes, the full load operation stops.
10670	FullLoadErrorPercentage *int64 `type:"integer"`
10671
10672	// The Amazon Resource Name (ARN) used by service to access the IAM role.
10673	//
10674	// ServiceAccessRoleArn is a required field
10675	ServiceAccessRoleArn *string `type:"string" required:"true"`
10676}
10677
10678// String returns the string representation
10679func (s ElasticsearchSettings) String() string {
10680	return awsutil.Prettify(s)
10681}
10682
10683// GoString returns the string representation
10684func (s ElasticsearchSettings) GoString() string {
10685	return s.String()
10686}
10687
10688// Validate inspects the fields of the type to determine if they are valid.
10689func (s *ElasticsearchSettings) Validate() error {
10690	invalidParams := request.ErrInvalidParams{Context: "ElasticsearchSettings"}
10691	if s.EndpointUri == nil {
10692		invalidParams.Add(request.NewErrParamRequired("EndpointUri"))
10693	}
10694	if s.ServiceAccessRoleArn == nil {
10695		invalidParams.Add(request.NewErrParamRequired("ServiceAccessRoleArn"))
10696	}
10697
10698	if invalidParams.Len() > 0 {
10699		return invalidParams
10700	}
10701	return nil
10702}
10703
10704// SetEndpointUri sets the EndpointUri field's value.
10705func (s *ElasticsearchSettings) SetEndpointUri(v string) *ElasticsearchSettings {
10706	s.EndpointUri = &v
10707	return s
10708}
10709
10710// SetErrorRetryDuration sets the ErrorRetryDuration field's value.
10711func (s *ElasticsearchSettings) SetErrorRetryDuration(v int64) *ElasticsearchSettings {
10712	s.ErrorRetryDuration = &v
10713	return s
10714}
10715
10716// SetFullLoadErrorPercentage sets the FullLoadErrorPercentage field's value.
10717func (s *ElasticsearchSettings) SetFullLoadErrorPercentage(v int64) *ElasticsearchSettings {
10718	s.FullLoadErrorPercentage = &v
10719	return s
10720}
10721
10722// SetServiceAccessRoleArn sets the ServiceAccessRoleArn field's value.
10723func (s *ElasticsearchSettings) SetServiceAccessRoleArn(v string) *ElasticsearchSettings {
10724	s.ServiceAccessRoleArn = &v
10725	return s
10726}
10727
10728// Describes an endpoint of a database instance in response to operations such
10729// as the following:
10730//
10731//    * CreateEndpoint
10732//
10733//    * DescribeEndpoint
10734//
10735//    * DescribeEndpointTypes
10736//
10737//    * ModifyEndpoint
10738type Endpoint struct {
10739	_ struct{} `type:"structure"`
10740
10741	// The Amazon Resource Name (ARN) used for SSL connection to the endpoint.
10742	CertificateArn *string `type:"string"`
10743
10744	// The name of the database at the endpoint.
10745	DatabaseName *string `type:"string"`
10746
10747	// The settings in JSON format for the DMS transfer type of source endpoint.
10748	//
10749	// Possible settings include the following:
10750	//
10751	//    * ServiceAccessRoleArn - The IAM role that has permission to access the
10752	//    Amazon S3 bucket.
10753	//
10754	//    * BucketName - The name of the S3 bucket to use.
10755	//
10756	//    * CompressionType - An optional parameter to use GZIP to compress the
10757	//    target files. To use GZIP, set this value to NONE (the default). To keep
10758	//    the files uncompressed, don't use this value.
10759	//
10760	// Shorthand syntax for these settings is as follows: ServiceAccessRoleArn=string,BucketName=string,CompressionType=string
10761	//
10762	// JSON syntax for these settings is as follows: { "ServiceAccessRoleArn": "string",
10763	// "BucketName": "string", "CompressionType": "none"|"gzip" }
10764	DmsTransferSettings *DmsTransferSettings `type:"structure"`
10765
10766	// Provides information that defines a DocumentDB endpoint.
10767	DocDbSettings *DocDbSettings `type:"structure"`
10768
10769	// The settings for the DynamoDB target endpoint. For more information, see
10770	// the DynamoDBSettings structure.
10771	DynamoDbSettings *DynamoDbSettings `type:"structure"`
10772
10773	// The settings for the Elasticsearch source endpoint. For more information,
10774	// see the ElasticsearchSettings structure.
10775	ElasticsearchSettings *ElasticsearchSettings `type:"structure"`
10776
10777	// The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.
10778	EndpointArn *string `type:"string"`
10779
10780	// The database endpoint identifier. Identifiers must begin with a letter and
10781	// must contain only ASCII letters, digits, and hyphens. They can't end with
10782	// a hyphen or contain two consecutive hyphens.
10783	EndpointIdentifier *string `type:"string"`
10784
10785	// The type of endpoint. Valid values are source and target.
10786	EndpointType *string `type:"string" enum:"ReplicationEndpointTypeValue"`
10787
10788	// The expanded name for the engine name. For example, if the EngineName parameter
10789	// is "aurora," this value would be "Amazon Aurora MySQL."
10790	EngineDisplayName *string `type:"string"`
10791
10792	// The database engine name. Valid values, depending on the EndpointType, include
10793	// "mysql", "oracle", "postgres", "mariadb", "aurora", "aurora-postgresql",
10794	// "redshift", "s3", "db2", "azuredb", "sybase", "dynamodb", "mongodb", "kinesis",
10795	// "kafka", "elasticsearch", "documentdb", "sqlserver", and "neptune".
10796	EngineName *string `type:"string"`
10797
10798	// Value returned by a call to CreateEndpoint that can be used for cross-account
10799	// validation. Use it on a subsequent call to CreateEndpoint to create the endpoint
10800	// with a cross-account.
10801	ExternalId *string `type:"string"`
10802
10803	// The external table definition.
10804	ExternalTableDefinition *string `type:"string"`
10805
10806	// Additional connection attributes used to connect to the endpoint.
10807	ExtraConnectionAttributes *string `type:"string"`
10808
10809	// The settings for the IBM Db2 LUW source endpoint. For more information, see
10810	// the IBMDb2Settings structure.
10811	IBMDb2Settings *IBMDb2Settings `type:"structure"`
10812
10813	// The settings for the Apache Kafka target endpoint. For more information,
10814	// see the KafkaSettings structure.
10815	KafkaSettings *KafkaSettings `type:"structure"`
10816
10817	// The settings for the Amazon Kinesis target endpoint. For more information,
10818	// see the KinesisSettings structure.
10819	KinesisSettings *KinesisSettings `type:"structure"`
10820
10821	// An AWS KMS key identifier that is used to encrypt the connection parameters
10822	// for the endpoint.
10823	//
10824	// If you don't specify a value for the KmsKeyId parameter, then AWS DMS uses
10825	// your default encryption key.
10826	//
10827	// AWS KMS creates the default encryption key for your AWS account. Your AWS
10828	// account has a different default encryption key for each AWS Region.
10829	KmsKeyId *string `type:"string"`
10830
10831	// The settings for the Microsoft SQL Server source and target endpoint. For
10832	// more information, see the MicrosoftSQLServerSettings structure.
10833	MicrosoftSQLServerSettings *MicrosoftSQLServerSettings `type:"structure"`
10834
10835	// The settings for the MongoDB source endpoint. For more information, see the
10836	// MongoDbSettings structure.
10837	MongoDbSettings *MongoDbSettings `type:"structure"`
10838
10839	// The settings for the MySQL source and target endpoint. For more information,
10840	// see the MySQLSettings structure.
10841	MySQLSettings *MySQLSettings `type:"structure"`
10842
10843	// The settings for the Amazon Neptune target endpoint. For more information,
10844	// see the NeptuneSettings structure.
10845	NeptuneSettings *NeptuneSettings `type:"structure"`
10846
10847	// The settings for the Oracle source and target endpoint. For more information,
10848	// see the OracleSettings structure.
10849	OracleSettings *OracleSettings `type:"structure"`
10850
10851	// The port value used to access the endpoint.
10852	Port *int64 `type:"integer"`
10853
10854	// The settings for the PostgreSQL source and target endpoint. For more information,
10855	// see the PostgreSQLSettings structure.
10856	PostgreSQLSettings *PostgreSQLSettings `type:"structure"`
10857
10858	// Settings for the Amazon Redshift endpoint.
10859	RedshiftSettings *RedshiftSettings `type:"structure"`
10860
10861	// The settings for the S3 target endpoint. For more information, see the S3Settings
10862	// structure.
10863	S3Settings *S3Settings `type:"structure"`
10864
10865	// The name of the server at the endpoint.
10866	ServerName *string `type:"string"`
10867
10868	// The Amazon Resource Name (ARN) used by the service access IAM role.
10869	ServiceAccessRoleArn *string `type:"string"`
10870
10871	// The SSL mode used to connect to the endpoint. The default value is none.
10872	SslMode *string `type:"string" enum:"DmsSslModeValue"`
10873
10874	// The status of the endpoint.
10875	Status *string `type:"string"`
10876
10877	// The settings for the SAP ASE source and target endpoint. For more information,
10878	// see the SybaseSettings structure.
10879	SybaseSettings *SybaseSettings `type:"structure"`
10880
10881	// The user name used to connect to the endpoint.
10882	Username *string `type:"string"`
10883}
10884
10885// String returns the string representation
10886func (s Endpoint) String() string {
10887	return awsutil.Prettify(s)
10888}
10889
10890// GoString returns the string representation
10891func (s Endpoint) GoString() string {
10892	return s.String()
10893}
10894
10895// SetCertificateArn sets the CertificateArn field's value.
10896func (s *Endpoint) SetCertificateArn(v string) *Endpoint {
10897	s.CertificateArn = &v
10898	return s
10899}
10900
10901// SetDatabaseName sets the DatabaseName field's value.
10902func (s *Endpoint) SetDatabaseName(v string) *Endpoint {
10903	s.DatabaseName = &v
10904	return s
10905}
10906
10907// SetDmsTransferSettings sets the DmsTransferSettings field's value.
10908func (s *Endpoint) SetDmsTransferSettings(v *DmsTransferSettings) *Endpoint {
10909	s.DmsTransferSettings = v
10910	return s
10911}
10912
10913// SetDocDbSettings sets the DocDbSettings field's value.
10914func (s *Endpoint) SetDocDbSettings(v *DocDbSettings) *Endpoint {
10915	s.DocDbSettings = v
10916	return s
10917}
10918
10919// SetDynamoDbSettings sets the DynamoDbSettings field's value.
10920func (s *Endpoint) SetDynamoDbSettings(v *DynamoDbSettings) *Endpoint {
10921	s.DynamoDbSettings = v
10922	return s
10923}
10924
10925// SetElasticsearchSettings sets the ElasticsearchSettings field's value.
10926func (s *Endpoint) SetElasticsearchSettings(v *ElasticsearchSettings) *Endpoint {
10927	s.ElasticsearchSettings = v
10928	return s
10929}
10930
10931// SetEndpointArn sets the EndpointArn field's value.
10932func (s *Endpoint) SetEndpointArn(v string) *Endpoint {
10933	s.EndpointArn = &v
10934	return s
10935}
10936
10937// SetEndpointIdentifier sets the EndpointIdentifier field's value.
10938func (s *Endpoint) SetEndpointIdentifier(v string) *Endpoint {
10939	s.EndpointIdentifier = &v
10940	return s
10941}
10942
10943// SetEndpointType sets the EndpointType field's value.
10944func (s *Endpoint) SetEndpointType(v string) *Endpoint {
10945	s.EndpointType = &v
10946	return s
10947}
10948
10949// SetEngineDisplayName sets the EngineDisplayName field's value.
10950func (s *Endpoint) SetEngineDisplayName(v string) *Endpoint {
10951	s.EngineDisplayName = &v
10952	return s
10953}
10954
10955// SetEngineName sets the EngineName field's value.
10956func (s *Endpoint) SetEngineName(v string) *Endpoint {
10957	s.EngineName = &v
10958	return s
10959}
10960
10961// SetExternalId sets the ExternalId field's value.
10962func (s *Endpoint) SetExternalId(v string) *Endpoint {
10963	s.ExternalId = &v
10964	return s
10965}
10966
10967// SetExternalTableDefinition sets the ExternalTableDefinition field's value.
10968func (s *Endpoint) SetExternalTableDefinition(v string) *Endpoint {
10969	s.ExternalTableDefinition = &v
10970	return s
10971}
10972
10973// SetExtraConnectionAttributes sets the ExtraConnectionAttributes field's value.
10974func (s *Endpoint) SetExtraConnectionAttributes(v string) *Endpoint {
10975	s.ExtraConnectionAttributes = &v
10976	return s
10977}
10978
10979// SetIBMDb2Settings sets the IBMDb2Settings field's value.
10980func (s *Endpoint) SetIBMDb2Settings(v *IBMDb2Settings) *Endpoint {
10981	s.IBMDb2Settings = v
10982	return s
10983}
10984
10985// SetKafkaSettings sets the KafkaSettings field's value.
10986func (s *Endpoint) SetKafkaSettings(v *KafkaSettings) *Endpoint {
10987	s.KafkaSettings = v
10988	return s
10989}
10990
10991// SetKinesisSettings sets the KinesisSettings field's value.
10992func (s *Endpoint) SetKinesisSettings(v *KinesisSettings) *Endpoint {
10993	s.KinesisSettings = v
10994	return s
10995}
10996
10997// SetKmsKeyId sets the KmsKeyId field's value.
10998func (s *Endpoint) SetKmsKeyId(v string) *Endpoint {
10999	s.KmsKeyId = &v
11000	return s
11001}
11002
11003// SetMicrosoftSQLServerSettings sets the MicrosoftSQLServerSettings field's value.
11004func (s *Endpoint) SetMicrosoftSQLServerSettings(v *MicrosoftSQLServerSettings) *Endpoint {
11005	s.MicrosoftSQLServerSettings = v
11006	return s
11007}
11008
11009// SetMongoDbSettings sets the MongoDbSettings field's value.
11010func (s *Endpoint) SetMongoDbSettings(v *MongoDbSettings) *Endpoint {
11011	s.MongoDbSettings = v
11012	return s
11013}
11014
11015// SetMySQLSettings sets the MySQLSettings field's value.
11016func (s *Endpoint) SetMySQLSettings(v *MySQLSettings) *Endpoint {
11017	s.MySQLSettings = v
11018	return s
11019}
11020
11021// SetNeptuneSettings sets the NeptuneSettings field's value.
11022func (s *Endpoint) SetNeptuneSettings(v *NeptuneSettings) *Endpoint {
11023	s.NeptuneSettings = v
11024	return s
11025}
11026
11027// SetOracleSettings sets the OracleSettings field's value.
11028func (s *Endpoint) SetOracleSettings(v *OracleSettings) *Endpoint {
11029	s.OracleSettings = v
11030	return s
11031}
11032
11033// SetPort sets the Port field's value.
11034func (s *Endpoint) SetPort(v int64) *Endpoint {
11035	s.Port = &v
11036	return s
11037}
11038
11039// SetPostgreSQLSettings sets the PostgreSQLSettings field's value.
11040func (s *Endpoint) SetPostgreSQLSettings(v *PostgreSQLSettings) *Endpoint {
11041	s.PostgreSQLSettings = v
11042	return s
11043}
11044
11045// SetRedshiftSettings sets the RedshiftSettings field's value.
11046func (s *Endpoint) SetRedshiftSettings(v *RedshiftSettings) *Endpoint {
11047	s.RedshiftSettings = v
11048	return s
11049}
11050
11051// SetS3Settings sets the S3Settings field's value.
11052func (s *Endpoint) SetS3Settings(v *S3Settings) *Endpoint {
11053	s.S3Settings = v
11054	return s
11055}
11056
11057// SetServerName sets the ServerName field's value.
11058func (s *Endpoint) SetServerName(v string) *Endpoint {
11059	s.ServerName = &v
11060	return s
11061}
11062
11063// SetServiceAccessRoleArn sets the ServiceAccessRoleArn field's value.
11064func (s *Endpoint) SetServiceAccessRoleArn(v string) *Endpoint {
11065	s.ServiceAccessRoleArn = &v
11066	return s
11067}
11068
11069// SetSslMode sets the SslMode field's value.
11070func (s *Endpoint) SetSslMode(v string) *Endpoint {
11071	s.SslMode = &v
11072	return s
11073}
11074
11075// SetStatus sets the Status field's value.
11076func (s *Endpoint) SetStatus(v string) *Endpoint {
11077	s.Status = &v
11078	return s
11079}
11080
11081// SetSybaseSettings sets the SybaseSettings field's value.
11082func (s *Endpoint) SetSybaseSettings(v *SybaseSettings) *Endpoint {
11083	s.SybaseSettings = v
11084	return s
11085}
11086
11087// SetUsername sets the Username field's value.
11088func (s *Endpoint) SetUsername(v string) *Endpoint {
11089	s.Username = &v
11090	return s
11091}
11092
11093// Endpoint settings.
11094type EndpointSetting struct {
11095	_ struct{} `type:"structure"`
11096
11097	// The relevance or validity of an endpoint setting for an engine name and its
11098	// endpoint type.
11099	Applicability *string `type:"string"`
11100
11101	// Enumerated values to use for this endpoint.
11102	EnumValues []*string `type:"list"`
11103
11104	// The maximum value of an endpoint setting that is of type int.
11105	IntValueMax *int64 `type:"integer"`
11106
11107	// The minimum value of an endpoint setting that is of type int.
11108	IntValueMin *int64 `type:"integer"`
11109
11110	// The name that you want to give the endpoint settings.
11111	Name *string `type:"string"`
11112
11113	// A value that marks this endpoint setting as sensitive.
11114	Sensitive *bool `type:"boolean"`
11115
11116	// The type of endpoint. Valid values are source and target.
11117	Type *string `type:"string" enum:"EndpointSettingTypeValue"`
11118
11119	// The unit of measure for this endpoint setting.
11120	Units *string `type:"string"`
11121}
11122
11123// String returns the string representation
11124func (s EndpointSetting) String() string {
11125	return awsutil.Prettify(s)
11126}
11127
11128// GoString returns the string representation
11129func (s EndpointSetting) GoString() string {
11130	return s.String()
11131}
11132
11133// SetApplicability sets the Applicability field's value.
11134func (s *EndpointSetting) SetApplicability(v string) *EndpointSetting {
11135	s.Applicability = &v
11136	return s
11137}
11138
11139// SetEnumValues sets the EnumValues field's value.
11140func (s *EndpointSetting) SetEnumValues(v []*string) *EndpointSetting {
11141	s.EnumValues = v
11142	return s
11143}
11144
11145// SetIntValueMax sets the IntValueMax field's value.
11146func (s *EndpointSetting) SetIntValueMax(v int64) *EndpointSetting {
11147	s.IntValueMax = &v
11148	return s
11149}
11150
11151// SetIntValueMin sets the IntValueMin field's value.
11152func (s *EndpointSetting) SetIntValueMin(v int64) *EndpointSetting {
11153	s.IntValueMin = &v
11154	return s
11155}
11156
11157// SetName sets the Name field's value.
11158func (s *EndpointSetting) SetName(v string) *EndpointSetting {
11159	s.Name = &v
11160	return s
11161}
11162
11163// SetSensitive sets the Sensitive field's value.
11164func (s *EndpointSetting) SetSensitive(v bool) *EndpointSetting {
11165	s.Sensitive = &v
11166	return s
11167}
11168
11169// SetType sets the Type field's value.
11170func (s *EndpointSetting) SetType(v string) *EndpointSetting {
11171	s.Type = &v
11172	return s
11173}
11174
11175// SetUnits sets the Units field's value.
11176func (s *EndpointSetting) SetUnits(v string) *EndpointSetting {
11177	s.Units = &v
11178	return s
11179}
11180
11181// Describes an identifiable significant activity that affects a replication
11182// instance or task. This object can provide the message, the available event
11183// categories, the date and source of the event, and the AWS DMS resource type.
11184type Event struct {
11185	_ struct{} `type:"structure"`
11186
11187	// The date of the event.
11188	Date *time.Time `type:"timestamp"`
11189
11190	// The event categories available for the specified source type.
11191	EventCategories []*string `type:"list"`
11192
11193	// The event message.
11194	Message *string `type:"string"`
11195
11196	// The identifier of an event source.
11197	SourceIdentifier *string `type:"string"`
11198
11199	// The type of AWS DMS resource that generates events.
11200	//
11201	// Valid values: replication-instance | endpoint | replication-task
11202	SourceType *string `type:"string" enum:"SourceType"`
11203}
11204
11205// String returns the string representation
11206func (s Event) String() string {
11207	return awsutil.Prettify(s)
11208}
11209
11210// GoString returns the string representation
11211func (s Event) GoString() string {
11212	return s.String()
11213}
11214
11215// SetDate sets the Date field's value.
11216func (s *Event) SetDate(v time.Time) *Event {
11217	s.Date = &v
11218	return s
11219}
11220
11221// SetEventCategories sets the EventCategories field's value.
11222func (s *Event) SetEventCategories(v []*string) *Event {
11223	s.EventCategories = v
11224	return s
11225}
11226
11227// SetMessage sets the Message field's value.
11228func (s *Event) SetMessage(v string) *Event {
11229	s.Message = &v
11230	return s
11231}
11232
11233// SetSourceIdentifier sets the SourceIdentifier field's value.
11234func (s *Event) SetSourceIdentifier(v string) *Event {
11235	s.SourceIdentifier = &v
11236	return s
11237}
11238
11239// SetSourceType sets the SourceType field's value.
11240func (s *Event) SetSourceType(v string) *Event {
11241	s.SourceType = &v
11242	return s
11243}
11244
11245// Lists categories of events subscribed to, and generated by, the applicable
11246// AWS DMS resource type. This data type appears in response to the DescribeEventCategories
11247// (https://docs.aws.amazon.com/dms/latest/APIReference/API_EventCategoryGroup.html)
11248// action.
11249type EventCategoryGroup struct {
11250	_ struct{} `type:"structure"`
11251
11252	// A list of event categories from a source type that you've chosen.
11253	EventCategories []*string `type:"list"`
11254
11255	// The type of AWS DMS resource that generates events.
11256	//
11257	// Valid values: replication-instance | replication-server | security-group
11258	// | replication-task
11259	SourceType *string `type:"string"`
11260}
11261
11262// String returns the string representation
11263func (s EventCategoryGroup) String() string {
11264	return awsutil.Prettify(s)
11265}
11266
11267// GoString returns the string representation
11268func (s EventCategoryGroup) GoString() string {
11269	return s.String()
11270}
11271
11272// SetEventCategories sets the EventCategories field's value.
11273func (s *EventCategoryGroup) SetEventCategories(v []*string) *EventCategoryGroup {
11274	s.EventCategories = v
11275	return s
11276}
11277
11278// SetSourceType sets the SourceType field's value.
11279func (s *EventCategoryGroup) SetSourceType(v string) *EventCategoryGroup {
11280	s.SourceType = &v
11281	return s
11282}
11283
11284// Describes an event notification subscription created by the CreateEventSubscription
11285// operation.
11286type EventSubscription struct {
11287	_ struct{} `type:"structure"`
11288
11289	// The AWS DMS event notification subscription Id.
11290	CustSubscriptionId *string `type:"string"`
11291
11292	// The AWS customer account associated with the AWS DMS event notification subscription.
11293	CustomerAwsId *string `type:"string"`
11294
11295	// Boolean value that indicates if the event subscription is enabled.
11296	Enabled *bool `type:"boolean"`
11297
11298	// A lists of event categories.
11299	EventCategoriesList []*string `type:"list"`
11300
11301	// The topic ARN of the AWS DMS event notification subscription.
11302	SnsTopicArn *string `type:"string"`
11303
11304	// A list of source Ids for the event subscription.
11305	SourceIdsList []*string `type:"list"`
11306
11307	// The type of AWS DMS resource that generates events.
11308	//
11309	// Valid values: replication-instance | replication-server | security-group
11310	// | replication-task
11311	SourceType *string `type:"string"`
11312
11313	// The status of the AWS DMS event notification subscription.
11314	//
11315	// Constraints:
11316	//
11317	// Can be one of the following: creating | modifying | deleting | active | no-permission
11318	// | topic-not-exist
11319	//
11320	// The status "no-permission" indicates that AWS DMS no longer has permission
11321	// to post to the SNS topic. The status "topic-not-exist" indicates that the
11322	// topic was deleted after the subscription was created.
11323	Status *string `type:"string"`
11324
11325	// The time the AWS DMS event notification subscription was created.
11326	SubscriptionCreationTime *string `type:"string"`
11327}
11328
11329// String returns the string representation
11330func (s EventSubscription) String() string {
11331	return awsutil.Prettify(s)
11332}
11333
11334// GoString returns the string representation
11335func (s EventSubscription) GoString() string {
11336	return s.String()
11337}
11338
11339// SetCustSubscriptionId sets the CustSubscriptionId field's value.
11340func (s *EventSubscription) SetCustSubscriptionId(v string) *EventSubscription {
11341	s.CustSubscriptionId = &v
11342	return s
11343}
11344
11345// SetCustomerAwsId sets the CustomerAwsId field's value.
11346func (s *EventSubscription) SetCustomerAwsId(v string) *EventSubscription {
11347	s.CustomerAwsId = &v
11348	return s
11349}
11350
11351// SetEnabled sets the Enabled field's value.
11352func (s *EventSubscription) SetEnabled(v bool) *EventSubscription {
11353	s.Enabled = &v
11354	return s
11355}
11356
11357// SetEventCategoriesList sets the EventCategoriesList field's value.
11358func (s *EventSubscription) SetEventCategoriesList(v []*string) *EventSubscription {
11359	s.EventCategoriesList = v
11360	return s
11361}
11362
11363// SetSnsTopicArn sets the SnsTopicArn field's value.
11364func (s *EventSubscription) SetSnsTopicArn(v string) *EventSubscription {
11365	s.SnsTopicArn = &v
11366	return s
11367}
11368
11369// SetSourceIdsList sets the SourceIdsList field's value.
11370func (s *EventSubscription) SetSourceIdsList(v []*string) *EventSubscription {
11371	s.SourceIdsList = v
11372	return s
11373}
11374
11375// SetSourceType sets the SourceType field's value.
11376func (s *EventSubscription) SetSourceType(v string) *EventSubscription {
11377	s.SourceType = &v
11378	return s
11379}
11380
11381// SetStatus sets the Status field's value.
11382func (s *EventSubscription) SetStatus(v string) *EventSubscription {
11383	s.Status = &v
11384	return s
11385}
11386
11387// SetSubscriptionCreationTime sets the SubscriptionCreationTime field's value.
11388func (s *EventSubscription) SetSubscriptionCreationTime(v string) *EventSubscription {
11389	s.SubscriptionCreationTime = &v
11390	return s
11391}
11392
11393// Identifies the name and value of a filter object. This filter is used to
11394// limit the number and type of AWS DMS objects that are returned for a particular
11395// Describe* call or similar operation. Filters are used as an optional parameter
11396// for certain API operations.
11397type Filter struct {
11398	_ struct{} `type:"structure"`
11399
11400	// The name of the filter as specified for a Describe* or similar operation.
11401	//
11402	// Name is a required field
11403	Name *string `type:"string" required:"true"`
11404
11405	// The filter value, which can specify one or more values used to narrow the
11406	// returned results.
11407	//
11408	// Values is a required field
11409	Values []*string `type:"list" required:"true"`
11410}
11411
11412// String returns the string representation
11413func (s Filter) String() string {
11414	return awsutil.Prettify(s)
11415}
11416
11417// GoString returns the string representation
11418func (s Filter) GoString() string {
11419	return s.String()
11420}
11421
11422// Validate inspects the fields of the type to determine if they are valid.
11423func (s *Filter) Validate() error {
11424	invalidParams := request.ErrInvalidParams{Context: "Filter"}
11425	if s.Name == nil {
11426		invalidParams.Add(request.NewErrParamRequired("Name"))
11427	}
11428	if s.Values == nil {
11429		invalidParams.Add(request.NewErrParamRequired("Values"))
11430	}
11431
11432	if invalidParams.Len() > 0 {
11433		return invalidParams
11434	}
11435	return nil
11436}
11437
11438// SetName sets the Name field's value.
11439func (s *Filter) SetName(v string) *Filter {
11440	s.Name = &v
11441	return s
11442}
11443
11444// SetValues sets the Values field's value.
11445func (s *Filter) SetValues(v []*string) *Filter {
11446	s.Values = v
11447	return s
11448}
11449
11450// Provides information that defines an IBM Db2 LUW endpoint.
11451type IBMDb2Settings struct {
11452	_ struct{} `type:"structure"`
11453
11454	// For ongoing replication (CDC), use CurrentLSN to specify a log sequence number
11455	// (LSN) where you want the replication to start.
11456	CurrentLsn *string `type:"string"`
11457
11458	// Database name for the endpoint.
11459	DatabaseName *string `type:"string"`
11460
11461	// Maximum number of bytes per read, as a NUMBER value. The default is 64 KB.
11462	MaxKBytesPerRead *int64 `type:"integer"`
11463
11464	// Endpoint connection password.
11465	Password *string `type:"string" sensitive:"true"`
11466
11467	// Endpoint TCP port.
11468	Port *int64 `type:"integer"`
11469
11470	// The full Amazon Resource Name (ARN) of the IAM role that specifies AWS DMS
11471	// as the trusted entity and grants the required permissions to access the value
11472	// in SecretsManagerSecret. SecretsManagerSecret has the value of the AWS Secrets
11473	// Manager secret that allows access to the Db2 LUW endpoint.
11474	//
11475	// You can specify one of two sets of values for these permissions. You can
11476	// specify the values for this setting and SecretsManagerSecretId. Or you can
11477	// specify clear-text values for UserName, Password, ServerName, and Port. You
11478	// can't specify both. For more information on creating this SecretsManagerSecret
11479	// and the SecretsManagerAccessRoleArn and SecretsManagerSecretId required to
11480	// access it, see Using secrets to access AWS Database Migration Service resources
11481	// (https://docs.aws.amazon.com/https:/docs.aws.amazon.com/dms/latest/userguide/CHAP_Security.html#security-iam-secretsmanager)
11482	// in the AWS Database Migration Service User Guide.
11483	SecretsManagerAccessRoleArn *string `type:"string"`
11484
11485	// The full ARN, partial ARN, or friendly name of the SecretsManagerSecret that
11486	// contains the Db2 LUW endpoint connection details.
11487	SecretsManagerSecretId *string `type:"string"`
11488
11489	// Fully qualified domain name of the endpoint.
11490	ServerName *string `type:"string"`
11491
11492	// Enables ongoing replication (CDC) as a BOOLEAN value. The default is true.
11493	SetDataCaptureChanges *bool `type:"boolean"`
11494
11495	// Endpoint connection user name.
11496	Username *string `type:"string"`
11497}
11498
11499// String returns the string representation
11500func (s IBMDb2Settings) String() string {
11501	return awsutil.Prettify(s)
11502}
11503
11504// GoString returns the string representation
11505func (s IBMDb2Settings) GoString() string {
11506	return s.String()
11507}
11508
11509// SetCurrentLsn sets the CurrentLsn field's value.
11510func (s *IBMDb2Settings) SetCurrentLsn(v string) *IBMDb2Settings {
11511	s.CurrentLsn = &v
11512	return s
11513}
11514
11515// SetDatabaseName sets the DatabaseName field's value.
11516func (s *IBMDb2Settings) SetDatabaseName(v string) *IBMDb2Settings {
11517	s.DatabaseName = &v
11518	return s
11519}
11520
11521// SetMaxKBytesPerRead sets the MaxKBytesPerRead field's value.
11522func (s *IBMDb2Settings) SetMaxKBytesPerRead(v int64) *IBMDb2Settings {
11523	s.MaxKBytesPerRead = &v
11524	return s
11525}
11526
11527// SetPassword sets the Password field's value.
11528func (s *IBMDb2Settings) SetPassword(v string) *IBMDb2Settings {
11529	s.Password = &v
11530	return s
11531}
11532
11533// SetPort sets the Port field's value.
11534func (s *IBMDb2Settings) SetPort(v int64) *IBMDb2Settings {
11535	s.Port = &v
11536	return s
11537}
11538
11539// SetSecretsManagerAccessRoleArn sets the SecretsManagerAccessRoleArn field's value.
11540func (s *IBMDb2Settings) SetSecretsManagerAccessRoleArn(v string) *IBMDb2Settings {
11541	s.SecretsManagerAccessRoleArn = &v
11542	return s
11543}
11544
11545// SetSecretsManagerSecretId sets the SecretsManagerSecretId field's value.
11546func (s *IBMDb2Settings) SetSecretsManagerSecretId(v string) *IBMDb2Settings {
11547	s.SecretsManagerSecretId = &v
11548	return s
11549}
11550
11551// SetServerName sets the ServerName field's value.
11552func (s *IBMDb2Settings) SetServerName(v string) *IBMDb2Settings {
11553	s.ServerName = &v
11554	return s
11555}
11556
11557// SetSetDataCaptureChanges sets the SetDataCaptureChanges field's value.
11558func (s *IBMDb2Settings) SetSetDataCaptureChanges(v bool) *IBMDb2Settings {
11559	s.SetDataCaptureChanges = &v
11560	return s
11561}
11562
11563// SetUsername sets the Username field's value.
11564func (s *IBMDb2Settings) SetUsername(v string) *IBMDb2Settings {
11565	s.Username = &v
11566	return s
11567}
11568
11569type ImportCertificateInput struct {
11570	_ struct{} `type:"structure"`
11571
11572	// A customer-assigned name for the certificate. Identifiers must begin with
11573	// a letter and must contain only ASCII letters, digits, and hyphens. They can't
11574	// end with a hyphen or contain two consecutive hyphens.
11575	//
11576	// CertificateIdentifier is a required field
11577	CertificateIdentifier *string `type:"string" required:"true"`
11578
11579	// The contents of a .pem file, which contains an X.509 certificate.
11580	CertificatePem *string `type:"string" sensitive:"true"`
11581
11582	// The location of an imported Oracle Wallet certificate for use with SSL.
11583	//
11584	// CertificateWallet is automatically base64 encoded/decoded by the SDK.
11585	CertificateWallet []byte `type:"blob"`
11586
11587	// The tags associated with the certificate.
11588	Tags []*Tag `type:"list"`
11589}
11590
11591// String returns the string representation
11592func (s ImportCertificateInput) String() string {
11593	return awsutil.Prettify(s)
11594}
11595
11596// GoString returns the string representation
11597func (s ImportCertificateInput) GoString() string {
11598	return s.String()
11599}
11600
11601// Validate inspects the fields of the type to determine if they are valid.
11602func (s *ImportCertificateInput) Validate() error {
11603	invalidParams := request.ErrInvalidParams{Context: "ImportCertificateInput"}
11604	if s.CertificateIdentifier == nil {
11605		invalidParams.Add(request.NewErrParamRequired("CertificateIdentifier"))
11606	}
11607
11608	if invalidParams.Len() > 0 {
11609		return invalidParams
11610	}
11611	return nil
11612}
11613
11614// SetCertificateIdentifier sets the CertificateIdentifier field's value.
11615func (s *ImportCertificateInput) SetCertificateIdentifier(v string) *ImportCertificateInput {
11616	s.CertificateIdentifier = &v
11617	return s
11618}
11619
11620// SetCertificatePem sets the CertificatePem field's value.
11621func (s *ImportCertificateInput) SetCertificatePem(v string) *ImportCertificateInput {
11622	s.CertificatePem = &v
11623	return s
11624}
11625
11626// SetCertificateWallet sets the CertificateWallet field's value.
11627func (s *ImportCertificateInput) SetCertificateWallet(v []byte) *ImportCertificateInput {
11628	s.CertificateWallet = v
11629	return s
11630}
11631
11632// SetTags sets the Tags field's value.
11633func (s *ImportCertificateInput) SetTags(v []*Tag) *ImportCertificateInput {
11634	s.Tags = v
11635	return s
11636}
11637
11638type ImportCertificateOutput struct {
11639	_ struct{} `type:"structure"`
11640
11641	// The certificate to be uploaded.
11642	Certificate *Certificate `type:"structure"`
11643}
11644
11645// String returns the string representation
11646func (s ImportCertificateOutput) String() string {
11647	return awsutil.Prettify(s)
11648}
11649
11650// GoString returns the string representation
11651func (s ImportCertificateOutput) GoString() string {
11652	return s.String()
11653}
11654
11655// SetCertificate sets the Certificate field's value.
11656func (s *ImportCertificateOutput) SetCertificate(v *Certificate) *ImportCertificateOutput {
11657	s.Certificate = v
11658	return s
11659}
11660
11661// There are not enough resources allocated to the database migration.
11662type InsufficientResourceCapacityFault struct {
11663	_            struct{}                  `type:"structure"`
11664	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11665
11666	Message_ *string `locationName:"message" type:"string"`
11667}
11668
11669// String returns the string representation
11670func (s InsufficientResourceCapacityFault) String() string {
11671	return awsutil.Prettify(s)
11672}
11673
11674// GoString returns the string representation
11675func (s InsufficientResourceCapacityFault) GoString() string {
11676	return s.String()
11677}
11678
11679func newErrorInsufficientResourceCapacityFault(v protocol.ResponseMetadata) error {
11680	return &InsufficientResourceCapacityFault{
11681		RespMetadata: v,
11682	}
11683}
11684
11685// Code returns the exception type name.
11686func (s *InsufficientResourceCapacityFault) Code() string {
11687	return "InsufficientResourceCapacityFault"
11688}
11689
11690// Message returns the exception's message.
11691func (s *InsufficientResourceCapacityFault) Message() string {
11692	if s.Message_ != nil {
11693		return *s.Message_
11694	}
11695	return ""
11696}
11697
11698// OrigErr always returns nil, satisfies awserr.Error interface.
11699func (s *InsufficientResourceCapacityFault) OrigErr() error {
11700	return nil
11701}
11702
11703func (s *InsufficientResourceCapacityFault) Error() string {
11704	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
11705}
11706
11707// Status code returns the HTTP status code for the request's response error.
11708func (s *InsufficientResourceCapacityFault) StatusCode() int {
11709	return s.RespMetadata.StatusCode
11710}
11711
11712// RequestID returns the service's response RequestID for request.
11713func (s *InsufficientResourceCapacityFault) RequestID() string {
11714	return s.RespMetadata.RequestID
11715}
11716
11717// The certificate was not valid.
11718type InvalidCertificateFault struct {
11719	_            struct{}                  `type:"structure"`
11720	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11721
11722	Message_ *string `locationName:"message" type:"string"`
11723}
11724
11725// String returns the string representation
11726func (s InvalidCertificateFault) String() string {
11727	return awsutil.Prettify(s)
11728}
11729
11730// GoString returns the string representation
11731func (s InvalidCertificateFault) GoString() string {
11732	return s.String()
11733}
11734
11735func newErrorInvalidCertificateFault(v protocol.ResponseMetadata) error {
11736	return &InvalidCertificateFault{
11737		RespMetadata: v,
11738	}
11739}
11740
11741// Code returns the exception type name.
11742func (s *InvalidCertificateFault) Code() string {
11743	return "InvalidCertificateFault"
11744}
11745
11746// Message returns the exception's message.
11747func (s *InvalidCertificateFault) Message() string {
11748	if s.Message_ != nil {
11749		return *s.Message_
11750	}
11751	return ""
11752}
11753
11754// OrigErr always returns nil, satisfies awserr.Error interface.
11755func (s *InvalidCertificateFault) OrigErr() error {
11756	return nil
11757}
11758
11759func (s *InvalidCertificateFault) Error() string {
11760	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
11761}
11762
11763// Status code returns the HTTP status code for the request's response error.
11764func (s *InvalidCertificateFault) StatusCode() int {
11765	return s.RespMetadata.StatusCode
11766}
11767
11768// RequestID returns the service's response RequestID for request.
11769func (s *InvalidCertificateFault) RequestID() string {
11770	return s.RespMetadata.RequestID
11771}
11772
11773// The resource is in a state that prevents it from being used for database
11774// migration.
11775type InvalidResourceStateFault struct {
11776	_            struct{}                  `type:"structure"`
11777	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11778
11779	Message_ *string `locationName:"message" type:"string"`
11780}
11781
11782// String returns the string representation
11783func (s InvalidResourceStateFault) String() string {
11784	return awsutil.Prettify(s)
11785}
11786
11787// GoString returns the string representation
11788func (s InvalidResourceStateFault) GoString() string {
11789	return s.String()
11790}
11791
11792func newErrorInvalidResourceStateFault(v protocol.ResponseMetadata) error {
11793	return &InvalidResourceStateFault{
11794		RespMetadata: v,
11795	}
11796}
11797
11798// Code returns the exception type name.
11799func (s *InvalidResourceStateFault) Code() string {
11800	return "InvalidResourceStateFault"
11801}
11802
11803// Message returns the exception's message.
11804func (s *InvalidResourceStateFault) Message() string {
11805	if s.Message_ != nil {
11806		return *s.Message_
11807	}
11808	return ""
11809}
11810
11811// OrigErr always returns nil, satisfies awserr.Error interface.
11812func (s *InvalidResourceStateFault) OrigErr() error {
11813	return nil
11814}
11815
11816func (s *InvalidResourceStateFault) Error() string {
11817	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
11818}
11819
11820// Status code returns the HTTP status code for the request's response error.
11821func (s *InvalidResourceStateFault) StatusCode() int {
11822	return s.RespMetadata.StatusCode
11823}
11824
11825// RequestID returns the service's response RequestID for request.
11826func (s *InvalidResourceStateFault) RequestID() string {
11827	return s.RespMetadata.RequestID
11828}
11829
11830// The subnet provided is invalid.
11831type InvalidSubnet struct {
11832	_            struct{}                  `type:"structure"`
11833	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11834
11835	Message_ *string `locationName:"message" type:"string"`
11836}
11837
11838// String returns the string representation
11839func (s InvalidSubnet) String() string {
11840	return awsutil.Prettify(s)
11841}
11842
11843// GoString returns the string representation
11844func (s InvalidSubnet) GoString() string {
11845	return s.String()
11846}
11847
11848func newErrorInvalidSubnet(v protocol.ResponseMetadata) error {
11849	return &InvalidSubnet{
11850		RespMetadata: v,
11851	}
11852}
11853
11854// Code returns the exception type name.
11855func (s *InvalidSubnet) Code() string {
11856	return "InvalidSubnet"
11857}
11858
11859// Message returns the exception's message.
11860func (s *InvalidSubnet) Message() string {
11861	if s.Message_ != nil {
11862		return *s.Message_
11863	}
11864	return ""
11865}
11866
11867// OrigErr always returns nil, satisfies awserr.Error interface.
11868func (s *InvalidSubnet) OrigErr() error {
11869	return nil
11870}
11871
11872func (s *InvalidSubnet) Error() string {
11873	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
11874}
11875
11876// Status code returns the HTTP status code for the request's response error.
11877func (s *InvalidSubnet) StatusCode() int {
11878	return s.RespMetadata.StatusCode
11879}
11880
11881// RequestID returns the service's response RequestID for request.
11882func (s *InvalidSubnet) RequestID() string {
11883	return s.RespMetadata.RequestID
11884}
11885
11886// The ciphertext references a key that doesn't exist or that the DMS account
11887// doesn't have access to.
11888type KMSAccessDeniedFault struct {
11889	_            struct{}                  `type:"structure"`
11890	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11891
11892	Message_ *string `locationName:"message" type:"string"`
11893}
11894
11895// String returns the string representation
11896func (s KMSAccessDeniedFault) String() string {
11897	return awsutil.Prettify(s)
11898}
11899
11900// GoString returns the string representation
11901func (s KMSAccessDeniedFault) GoString() string {
11902	return s.String()
11903}
11904
11905func newErrorKMSAccessDeniedFault(v protocol.ResponseMetadata) error {
11906	return &KMSAccessDeniedFault{
11907		RespMetadata: v,
11908	}
11909}
11910
11911// Code returns the exception type name.
11912func (s *KMSAccessDeniedFault) Code() string {
11913	return "KMSAccessDeniedFault"
11914}
11915
11916// Message returns the exception's message.
11917func (s *KMSAccessDeniedFault) Message() string {
11918	if s.Message_ != nil {
11919		return *s.Message_
11920	}
11921	return ""
11922}
11923
11924// OrigErr always returns nil, satisfies awserr.Error interface.
11925func (s *KMSAccessDeniedFault) OrigErr() error {
11926	return nil
11927}
11928
11929func (s *KMSAccessDeniedFault) Error() string {
11930	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
11931}
11932
11933// Status code returns the HTTP status code for the request's response error.
11934func (s *KMSAccessDeniedFault) StatusCode() int {
11935	return s.RespMetadata.StatusCode
11936}
11937
11938// RequestID returns the service's response RequestID for request.
11939func (s *KMSAccessDeniedFault) RequestID() string {
11940	return s.RespMetadata.RequestID
11941}
11942
11943// The specified master key (CMK) isn't enabled.
11944type KMSDisabledFault struct {
11945	_            struct{}                  `type:"structure"`
11946	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11947
11948	Message_ *string `locationName:"message" type:"string"`
11949}
11950
11951// String returns the string representation
11952func (s KMSDisabledFault) String() string {
11953	return awsutil.Prettify(s)
11954}
11955
11956// GoString returns the string representation
11957func (s KMSDisabledFault) GoString() string {
11958	return s.String()
11959}
11960
11961func newErrorKMSDisabledFault(v protocol.ResponseMetadata) error {
11962	return &KMSDisabledFault{
11963		RespMetadata: v,
11964	}
11965}
11966
11967// Code returns the exception type name.
11968func (s *KMSDisabledFault) Code() string {
11969	return "KMSDisabledFault"
11970}
11971
11972// Message returns the exception's message.
11973func (s *KMSDisabledFault) Message() string {
11974	if s.Message_ != nil {
11975		return *s.Message_
11976	}
11977	return ""
11978}
11979
11980// OrigErr always returns nil, satisfies awserr.Error interface.
11981func (s *KMSDisabledFault) OrigErr() error {
11982	return nil
11983}
11984
11985func (s *KMSDisabledFault) Error() string {
11986	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
11987}
11988
11989// Status code returns the HTTP status code for the request's response error.
11990func (s *KMSDisabledFault) StatusCode() int {
11991	return s.RespMetadata.StatusCode
11992}
11993
11994// RequestID returns the service's response RequestID for request.
11995func (s *KMSDisabledFault) RequestID() string {
11996	return s.RespMetadata.RequestID
11997}
11998
11999// An AWS Key Management Service (AWS KMS) error is preventing access to AWS
12000// KMS.
12001type KMSFault struct {
12002	_            struct{}                  `type:"structure"`
12003	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12004
12005	Message_ *string `locationName:"message" type:"string"`
12006}
12007
12008// String returns the string representation
12009func (s KMSFault) String() string {
12010	return awsutil.Prettify(s)
12011}
12012
12013// GoString returns the string representation
12014func (s KMSFault) GoString() string {
12015	return s.String()
12016}
12017
12018func newErrorKMSFault(v protocol.ResponseMetadata) error {
12019	return &KMSFault{
12020		RespMetadata: v,
12021	}
12022}
12023
12024// Code returns the exception type name.
12025func (s *KMSFault) Code() string {
12026	return "KMSFault"
12027}
12028
12029// Message returns the exception's message.
12030func (s *KMSFault) Message() string {
12031	if s.Message_ != nil {
12032		return *s.Message_
12033	}
12034	return ""
12035}
12036
12037// OrigErr always returns nil, satisfies awserr.Error interface.
12038func (s *KMSFault) OrigErr() error {
12039	return nil
12040}
12041
12042func (s *KMSFault) Error() string {
12043	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
12044}
12045
12046// Status code returns the HTTP status code for the request's response error.
12047func (s *KMSFault) StatusCode() int {
12048	return s.RespMetadata.StatusCode
12049}
12050
12051// RequestID returns the service's response RequestID for request.
12052func (s *KMSFault) RequestID() string {
12053	return s.RespMetadata.RequestID
12054}
12055
12056// The state of the specified AWS KMS resource isn't valid for this request.
12057type KMSInvalidStateFault struct {
12058	_            struct{}                  `type:"structure"`
12059	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12060
12061	Message_ *string `locationName:"message" type:"string"`
12062}
12063
12064// String returns the string representation
12065func (s KMSInvalidStateFault) String() string {
12066	return awsutil.Prettify(s)
12067}
12068
12069// GoString returns the string representation
12070func (s KMSInvalidStateFault) GoString() string {
12071	return s.String()
12072}
12073
12074func newErrorKMSInvalidStateFault(v protocol.ResponseMetadata) error {
12075	return &KMSInvalidStateFault{
12076		RespMetadata: v,
12077	}
12078}
12079
12080// Code returns the exception type name.
12081func (s *KMSInvalidStateFault) Code() string {
12082	return "KMSInvalidStateFault"
12083}
12084
12085// Message returns the exception's message.
12086func (s *KMSInvalidStateFault) Message() string {
12087	if s.Message_ != nil {
12088		return *s.Message_
12089	}
12090	return ""
12091}
12092
12093// OrigErr always returns nil, satisfies awserr.Error interface.
12094func (s *KMSInvalidStateFault) OrigErr() error {
12095	return nil
12096}
12097
12098func (s *KMSInvalidStateFault) Error() string {
12099	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
12100}
12101
12102// Status code returns the HTTP status code for the request's response error.
12103func (s *KMSInvalidStateFault) StatusCode() int {
12104	return s.RespMetadata.StatusCode
12105}
12106
12107// RequestID returns the service's response RequestID for request.
12108func (s *KMSInvalidStateFault) RequestID() string {
12109	return s.RespMetadata.RequestID
12110}
12111
12112// AWS DMS cannot access the AWS KMS key.
12113type KMSKeyNotAccessibleFault struct {
12114	_            struct{}                  `type:"structure"`
12115	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12116
12117	Message_ *string `locationName:"message" type:"string"`
12118}
12119
12120// String returns the string representation
12121func (s KMSKeyNotAccessibleFault) String() string {
12122	return awsutil.Prettify(s)
12123}
12124
12125// GoString returns the string representation
12126func (s KMSKeyNotAccessibleFault) GoString() string {
12127	return s.String()
12128}
12129
12130func newErrorKMSKeyNotAccessibleFault(v protocol.ResponseMetadata) error {
12131	return &KMSKeyNotAccessibleFault{
12132		RespMetadata: v,
12133	}
12134}
12135
12136// Code returns the exception type name.
12137func (s *KMSKeyNotAccessibleFault) Code() string {
12138	return "KMSKeyNotAccessibleFault"
12139}
12140
12141// Message returns the exception's message.
12142func (s *KMSKeyNotAccessibleFault) Message() string {
12143	if s.Message_ != nil {
12144		return *s.Message_
12145	}
12146	return ""
12147}
12148
12149// OrigErr always returns nil, satisfies awserr.Error interface.
12150func (s *KMSKeyNotAccessibleFault) OrigErr() error {
12151	return nil
12152}
12153
12154func (s *KMSKeyNotAccessibleFault) Error() string {
12155	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
12156}
12157
12158// Status code returns the HTTP status code for the request's response error.
12159func (s *KMSKeyNotAccessibleFault) StatusCode() int {
12160	return s.RespMetadata.StatusCode
12161}
12162
12163// RequestID returns the service's response RequestID for request.
12164func (s *KMSKeyNotAccessibleFault) RequestID() string {
12165	return s.RespMetadata.RequestID
12166}
12167
12168// The specified AWS KMS entity or resource can't be found.
12169type KMSNotFoundFault struct {
12170	_            struct{}                  `type:"structure"`
12171	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12172
12173	Message_ *string `locationName:"message" type:"string"`
12174}
12175
12176// String returns the string representation
12177func (s KMSNotFoundFault) String() string {
12178	return awsutil.Prettify(s)
12179}
12180
12181// GoString returns the string representation
12182func (s KMSNotFoundFault) GoString() string {
12183	return s.String()
12184}
12185
12186func newErrorKMSNotFoundFault(v protocol.ResponseMetadata) error {
12187	return &KMSNotFoundFault{
12188		RespMetadata: v,
12189	}
12190}
12191
12192// Code returns the exception type name.
12193func (s *KMSNotFoundFault) Code() string {
12194	return "KMSNotFoundFault"
12195}
12196
12197// Message returns the exception's message.
12198func (s *KMSNotFoundFault) Message() string {
12199	if s.Message_ != nil {
12200		return *s.Message_
12201	}
12202	return ""
12203}
12204
12205// OrigErr always returns nil, satisfies awserr.Error interface.
12206func (s *KMSNotFoundFault) OrigErr() error {
12207	return nil
12208}
12209
12210func (s *KMSNotFoundFault) Error() string {
12211	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
12212}
12213
12214// Status code returns the HTTP status code for the request's response error.
12215func (s *KMSNotFoundFault) StatusCode() int {
12216	return s.RespMetadata.StatusCode
12217}
12218
12219// RequestID returns the service's response RequestID for request.
12220func (s *KMSNotFoundFault) RequestID() string {
12221	return s.RespMetadata.RequestID
12222}
12223
12224// This request triggered AWS KMS request throttling.
12225type KMSThrottlingFault struct {
12226	_            struct{}                  `type:"structure"`
12227	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12228
12229	Message_ *string `locationName:"message" type:"string"`
12230}
12231
12232// String returns the string representation
12233func (s KMSThrottlingFault) String() string {
12234	return awsutil.Prettify(s)
12235}
12236
12237// GoString returns the string representation
12238func (s KMSThrottlingFault) GoString() string {
12239	return s.String()
12240}
12241
12242func newErrorKMSThrottlingFault(v protocol.ResponseMetadata) error {
12243	return &KMSThrottlingFault{
12244		RespMetadata: v,
12245	}
12246}
12247
12248// Code returns the exception type name.
12249func (s *KMSThrottlingFault) Code() string {
12250	return "KMSThrottlingFault"
12251}
12252
12253// Message returns the exception's message.
12254func (s *KMSThrottlingFault) Message() string {
12255	if s.Message_ != nil {
12256		return *s.Message_
12257	}
12258	return ""
12259}
12260
12261// OrigErr always returns nil, satisfies awserr.Error interface.
12262func (s *KMSThrottlingFault) OrigErr() error {
12263	return nil
12264}
12265
12266func (s *KMSThrottlingFault) Error() string {
12267	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
12268}
12269
12270// Status code returns the HTTP status code for the request's response error.
12271func (s *KMSThrottlingFault) StatusCode() int {
12272	return s.RespMetadata.StatusCode
12273}
12274
12275// RequestID returns the service's response RequestID for request.
12276func (s *KMSThrottlingFault) RequestID() string {
12277	return s.RespMetadata.RequestID
12278}
12279
12280// Provides information that describes an Apache Kafka endpoint. This information
12281// includes the output format of records applied to the endpoint and details
12282// of transaction and control table data information.
12283type KafkaSettings struct {
12284	_ struct{} `type:"structure"`
12285
12286	// A comma-separated list of one or more broker locations in your Kafka cluster
12287	// that host your Kafka instance. Specify each broker location in the form broker-hostname-or-ip:port
12288	// . For example, "ec2-12-345-678-901.compute-1.amazonaws.com:2345". For more
12289	// information and examples of specifying a list of broker locations, see Using
12290	// Apache Kafka as a target for AWS Database Migration Service (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Kafka.html)
12291	// in the AWS Data Migration Service User Guide.
12292	Broker *string `type:"string"`
12293
12294	// Shows detailed control information for table definition, column definition,
12295	// and table and column changes in the Kafka message output. The default is
12296	// false.
12297	IncludeControlDetails *bool `type:"boolean"`
12298
12299	// Include NULL and empty columns for records migrated to the endpoint. The
12300	// default is false.
12301	IncludeNullAndEmpty *bool `type:"boolean"`
12302
12303	// Shows the partition value within the Kafka message output, unless the partition
12304	// type is schema-table-type. The default is false.
12305	IncludePartitionValue *bool `type:"boolean"`
12306
12307	// Includes any data definition language (DDL) operations that change the table
12308	// in the control data, such as rename-table, drop-table, add-column, drop-column,
12309	// and rename-column. The default is false.
12310	IncludeTableAlterOperations *bool `type:"boolean"`
12311
12312	// Provides detailed transaction information from the source database. This
12313	// information includes a commit timestamp, a log position, and values for transaction_id,
12314	// previous transaction_id, and transaction_record_id (the record offset within
12315	// a transaction). The default is false.
12316	IncludeTransactionDetails *bool `type:"boolean"`
12317
12318	// The output format for the records created on the endpoint. The message format
12319	// is JSON (default) or JSON_UNFORMATTED (a single line with no tab).
12320	MessageFormat *string `type:"string" enum:"MessageFormatValue"`
12321
12322	// The maximum size in bytes for records created on the endpoint The default
12323	// is 1,000,000.
12324	MessageMaxBytes *int64 `type:"integer"`
12325
12326	// Prefixes schema and table names to partition values, when the partition type
12327	// is primary-key-type. Doing this increases data distribution among Kafka partitions.
12328	// For example, suppose that a SysBench schema has thousands of tables and each
12329	// table has only limited range for a primary key. In this case, the same primary
12330	// key is sent from thousands of tables to the same partition, which causes
12331	// throttling. The default is false.
12332	PartitionIncludeSchemaTable *bool `type:"boolean"`
12333
12334	// The secure password you created when you first set up your MSK cluster to
12335	// validate a client identity and make an encrypted connection between server
12336	// and client using SASL-SSL authentication.
12337	SaslPassword *string `type:"string" sensitive:"true"`
12338
12339	// The secure username you created when you first set up your MSK cluster to
12340	// validate a client identity and make an encrypted connection between server
12341	// and client using SASL-SSL authentication.
12342	SaslUsername *string `type:"string"`
12343
12344	// Set secure connection to a Kafka target endpoint using Transport Layer Security
12345	// (TLS). Options include ssl-encryption, ssl-authentication, and sasl-ssl.
12346	// sasl-ssl requires SaslUsername and SaslPassword.
12347	SecurityProtocol *string `type:"string" enum:"KafkaSecurityProtocol"`
12348
12349	// The Amazon Resource Name (ARN) for the private Certification Authority (CA)
12350	// cert that AWS DMS uses to securely connect to your Kafka target endpoint.
12351	SslCaCertificateArn *string `type:"string"`
12352
12353	// The Amazon Resource Name (ARN) of the client certificate used to securely
12354	// connect to a Kafka target endpoint.
12355	SslClientCertificateArn *string `type:"string"`
12356
12357	// The Amazon Resource Name (ARN) for the client private key used to securely
12358	// connect to a Kafka target endpoint.
12359	SslClientKeyArn *string `type:"string"`
12360
12361	// The password for the client private key used to securely connect to a Kafka
12362	// target endpoint.
12363	SslClientKeyPassword *string `type:"string" sensitive:"true"`
12364
12365	// The topic to which you migrate the data. If you don't specify a topic, AWS
12366	// DMS specifies "kafka-default-topic" as the migration topic.
12367	Topic *string `type:"string"`
12368}
12369
12370// String returns the string representation
12371func (s KafkaSettings) String() string {
12372	return awsutil.Prettify(s)
12373}
12374
12375// GoString returns the string representation
12376func (s KafkaSettings) GoString() string {
12377	return s.String()
12378}
12379
12380// SetBroker sets the Broker field's value.
12381func (s *KafkaSettings) SetBroker(v string) *KafkaSettings {
12382	s.Broker = &v
12383	return s
12384}
12385
12386// SetIncludeControlDetails sets the IncludeControlDetails field's value.
12387func (s *KafkaSettings) SetIncludeControlDetails(v bool) *KafkaSettings {
12388	s.IncludeControlDetails = &v
12389	return s
12390}
12391
12392// SetIncludeNullAndEmpty sets the IncludeNullAndEmpty field's value.
12393func (s *KafkaSettings) SetIncludeNullAndEmpty(v bool) *KafkaSettings {
12394	s.IncludeNullAndEmpty = &v
12395	return s
12396}
12397
12398// SetIncludePartitionValue sets the IncludePartitionValue field's value.
12399func (s *KafkaSettings) SetIncludePartitionValue(v bool) *KafkaSettings {
12400	s.IncludePartitionValue = &v
12401	return s
12402}
12403
12404// SetIncludeTableAlterOperations sets the IncludeTableAlterOperations field's value.
12405func (s *KafkaSettings) SetIncludeTableAlterOperations(v bool) *KafkaSettings {
12406	s.IncludeTableAlterOperations = &v
12407	return s
12408}
12409
12410// SetIncludeTransactionDetails sets the IncludeTransactionDetails field's value.
12411func (s *KafkaSettings) SetIncludeTransactionDetails(v bool) *KafkaSettings {
12412	s.IncludeTransactionDetails = &v
12413	return s
12414}
12415
12416// SetMessageFormat sets the MessageFormat field's value.
12417func (s *KafkaSettings) SetMessageFormat(v string) *KafkaSettings {
12418	s.MessageFormat = &v
12419	return s
12420}
12421
12422// SetMessageMaxBytes sets the MessageMaxBytes field's value.
12423func (s *KafkaSettings) SetMessageMaxBytes(v int64) *KafkaSettings {
12424	s.MessageMaxBytes = &v
12425	return s
12426}
12427
12428// SetPartitionIncludeSchemaTable sets the PartitionIncludeSchemaTable field's value.
12429func (s *KafkaSettings) SetPartitionIncludeSchemaTable(v bool) *KafkaSettings {
12430	s.PartitionIncludeSchemaTable = &v
12431	return s
12432}
12433
12434// SetSaslPassword sets the SaslPassword field's value.
12435func (s *KafkaSettings) SetSaslPassword(v string) *KafkaSettings {
12436	s.SaslPassword = &v
12437	return s
12438}
12439
12440// SetSaslUsername sets the SaslUsername field's value.
12441func (s *KafkaSettings) SetSaslUsername(v string) *KafkaSettings {
12442	s.SaslUsername = &v
12443	return s
12444}
12445
12446// SetSecurityProtocol sets the SecurityProtocol field's value.
12447func (s *KafkaSettings) SetSecurityProtocol(v string) *KafkaSettings {
12448	s.SecurityProtocol = &v
12449	return s
12450}
12451
12452// SetSslCaCertificateArn sets the SslCaCertificateArn field's value.
12453func (s *KafkaSettings) SetSslCaCertificateArn(v string) *KafkaSettings {
12454	s.SslCaCertificateArn = &v
12455	return s
12456}
12457
12458// SetSslClientCertificateArn sets the SslClientCertificateArn field's value.
12459func (s *KafkaSettings) SetSslClientCertificateArn(v string) *KafkaSettings {
12460	s.SslClientCertificateArn = &v
12461	return s
12462}
12463
12464// SetSslClientKeyArn sets the SslClientKeyArn field's value.
12465func (s *KafkaSettings) SetSslClientKeyArn(v string) *KafkaSettings {
12466	s.SslClientKeyArn = &v
12467	return s
12468}
12469
12470// SetSslClientKeyPassword sets the SslClientKeyPassword field's value.
12471func (s *KafkaSettings) SetSslClientKeyPassword(v string) *KafkaSettings {
12472	s.SslClientKeyPassword = &v
12473	return s
12474}
12475
12476// SetTopic sets the Topic field's value.
12477func (s *KafkaSettings) SetTopic(v string) *KafkaSettings {
12478	s.Topic = &v
12479	return s
12480}
12481
12482// Provides information that describes an Amazon Kinesis Data Stream endpoint.
12483// This information includes the output format of records applied to the endpoint
12484// and details of transaction and control table data information.
12485type KinesisSettings struct {
12486	_ struct{} `type:"structure"`
12487
12488	// Shows detailed control information for table definition, column definition,
12489	// and table and column changes in the Kinesis message output. The default is
12490	// false.
12491	IncludeControlDetails *bool `type:"boolean"`
12492
12493	// Include NULL and empty columns for records migrated to the endpoint. The
12494	// default is false.
12495	IncludeNullAndEmpty *bool `type:"boolean"`
12496
12497	// Shows the partition value within the Kinesis message output, unless the partition
12498	// type is schema-table-type. The default is false.
12499	IncludePartitionValue *bool `type:"boolean"`
12500
12501	// Includes any data definition language (DDL) operations that change the table
12502	// in the control data, such as rename-table, drop-table, add-column, drop-column,
12503	// and rename-column. The default is false.
12504	IncludeTableAlterOperations *bool `type:"boolean"`
12505
12506	// Provides detailed transaction information from the source database. This
12507	// information includes a commit timestamp, a log position, and values for transaction_id,
12508	// previous transaction_id, and transaction_record_id (the record offset within
12509	// a transaction). The default is false.
12510	IncludeTransactionDetails *bool `type:"boolean"`
12511
12512	// The output format for the records created on the endpoint. The message format
12513	// is JSON (default) or JSON_UNFORMATTED (a single line with no tab).
12514	MessageFormat *string `type:"string" enum:"MessageFormatValue"`
12515
12516	// Prefixes schema and table names to partition values, when the partition type
12517	// is primary-key-type. Doing this increases data distribution among Kinesis
12518	// shards. For example, suppose that a SysBench schema has thousands of tables
12519	// and each table has only limited range for a primary key. In this case, the
12520	// same primary key is sent from thousands of tables to the same shard, which
12521	// causes throttling. The default is false.
12522	PartitionIncludeSchemaTable *bool `type:"boolean"`
12523
12524	// The Amazon Resource Name (ARN) for the AWS Identity and Access Management
12525	// (IAM) role that AWS DMS uses to write to the Kinesis data stream.
12526	ServiceAccessRoleArn *string `type:"string"`
12527
12528	// The Amazon Resource Name (ARN) for the Amazon Kinesis Data Streams endpoint.
12529	StreamArn *string `type:"string"`
12530}
12531
12532// String returns the string representation
12533func (s KinesisSettings) String() string {
12534	return awsutil.Prettify(s)
12535}
12536
12537// GoString returns the string representation
12538func (s KinesisSettings) GoString() string {
12539	return s.String()
12540}
12541
12542// SetIncludeControlDetails sets the IncludeControlDetails field's value.
12543func (s *KinesisSettings) SetIncludeControlDetails(v bool) *KinesisSettings {
12544	s.IncludeControlDetails = &v
12545	return s
12546}
12547
12548// SetIncludeNullAndEmpty sets the IncludeNullAndEmpty field's value.
12549func (s *KinesisSettings) SetIncludeNullAndEmpty(v bool) *KinesisSettings {
12550	s.IncludeNullAndEmpty = &v
12551	return s
12552}
12553
12554// SetIncludePartitionValue sets the IncludePartitionValue field's value.
12555func (s *KinesisSettings) SetIncludePartitionValue(v bool) *KinesisSettings {
12556	s.IncludePartitionValue = &v
12557	return s
12558}
12559
12560// SetIncludeTableAlterOperations sets the IncludeTableAlterOperations field's value.
12561func (s *KinesisSettings) SetIncludeTableAlterOperations(v bool) *KinesisSettings {
12562	s.IncludeTableAlterOperations = &v
12563	return s
12564}
12565
12566// SetIncludeTransactionDetails sets the IncludeTransactionDetails field's value.
12567func (s *KinesisSettings) SetIncludeTransactionDetails(v bool) *KinesisSettings {
12568	s.IncludeTransactionDetails = &v
12569	return s
12570}
12571
12572// SetMessageFormat sets the MessageFormat field's value.
12573func (s *KinesisSettings) SetMessageFormat(v string) *KinesisSettings {
12574	s.MessageFormat = &v
12575	return s
12576}
12577
12578// SetPartitionIncludeSchemaTable sets the PartitionIncludeSchemaTable field's value.
12579func (s *KinesisSettings) SetPartitionIncludeSchemaTable(v bool) *KinesisSettings {
12580	s.PartitionIncludeSchemaTable = &v
12581	return s
12582}
12583
12584// SetServiceAccessRoleArn sets the ServiceAccessRoleArn field's value.
12585func (s *KinesisSettings) SetServiceAccessRoleArn(v string) *KinesisSettings {
12586	s.ServiceAccessRoleArn = &v
12587	return s
12588}
12589
12590// SetStreamArn sets the StreamArn field's value.
12591func (s *KinesisSettings) SetStreamArn(v string) *KinesisSettings {
12592	s.StreamArn = &v
12593	return s
12594}
12595
12596type ListTagsForResourceInput struct {
12597	_ struct{} `type:"structure"`
12598
12599	// The Amazon Resource Name (ARN) string that uniquely identifies the AWS DMS
12600	// resource.
12601	//
12602	// ResourceArn is a required field
12603	ResourceArn *string `type:"string" required:"true"`
12604}
12605
12606// String returns the string representation
12607func (s ListTagsForResourceInput) String() string {
12608	return awsutil.Prettify(s)
12609}
12610
12611// GoString returns the string representation
12612func (s ListTagsForResourceInput) GoString() string {
12613	return s.String()
12614}
12615
12616// Validate inspects the fields of the type to determine if they are valid.
12617func (s *ListTagsForResourceInput) Validate() error {
12618	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
12619	if s.ResourceArn == nil {
12620		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
12621	}
12622
12623	if invalidParams.Len() > 0 {
12624		return invalidParams
12625	}
12626	return nil
12627}
12628
12629// SetResourceArn sets the ResourceArn field's value.
12630func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
12631	s.ResourceArn = &v
12632	return s
12633}
12634
12635type ListTagsForResourceOutput struct {
12636	_ struct{} `type:"structure"`
12637
12638	// A list of tags for the resource.
12639	TagList []*Tag `type:"list"`
12640}
12641
12642// String returns the string representation
12643func (s ListTagsForResourceOutput) String() string {
12644	return awsutil.Prettify(s)
12645}
12646
12647// GoString returns the string representation
12648func (s ListTagsForResourceOutput) GoString() string {
12649	return s.String()
12650}
12651
12652// SetTagList sets the TagList field's value.
12653func (s *ListTagsForResourceOutput) SetTagList(v []*Tag) *ListTagsForResourceOutput {
12654	s.TagList = v
12655	return s
12656}
12657
12658// Provides information that defines a Microsoft SQL Server endpoint.
12659type MicrosoftSQLServerSettings struct {
12660	_ struct{} `type:"structure"`
12661
12662	// The maximum size of the packets (in bytes) used to transfer data using BCP.
12663	BcpPacketSize *int64 `type:"integer"`
12664
12665	// Specifies a file group for the AWS DMS internal tables. When the replication
12666	// task starts, all the internal AWS DMS control tables (awsdms_ apply_exception,
12667	// awsdms_apply, awsdms_changes) are created for the specified file group.
12668	ControlTablesFileGroup *string `type:"string"`
12669
12670	// Database name for the endpoint.
12671	DatabaseName *string `type:"string"`
12672
12673	// Endpoint connection password.
12674	Password *string `type:"string" sensitive:"true"`
12675
12676	// Endpoint TCP port.
12677	Port *int64 `type:"integer"`
12678
12679	// Cleans and recreates table metadata information on the replication instance
12680	// when a mismatch occurs. An example is a situation where running an alter
12681	// DDL statement on a table might result in different information about the
12682	// table cached in the replication instance.
12683	QuerySingleAlwaysOnNode *bool `type:"boolean"`
12684
12685	// When this attribute is set to Y, AWS DMS only reads changes from transaction
12686	// log backups and doesn't read from the active transaction log file during
12687	// ongoing replication. Setting this parameter to Y enables you to control active
12688	// transaction log file growth during full load and ongoing replication tasks.
12689	// However, it can add some source latency to ongoing replication.
12690	ReadBackupOnly *bool `type:"boolean"`
12691
12692	// Use this attribute to minimize the need to access the backup log and enable
12693	// AWS DMS to prevent truncation using one of the following two methods.
12694	//
12695	// Start transactions in the database: This is the default method. When this
12696	// method is used, AWS DMS prevents TLOG truncation by mimicking a transaction
12697	// in the database. As long as such a transaction is open, changes that appear
12698	// after the transaction started aren't truncated. If you need Microsoft Replication
12699	// to be enabled in your database, then you must choose this method.
12700	//
12701	// Exclusively use sp_repldone within a single task: When this method is used,
12702	// AWS DMS reads the changes and then uses sp_repldone to mark the TLOG transactions
12703	// as ready for truncation. Although this method doesn't involve any transactional
12704	// activities, it can only be used when Microsoft Replication isn't running.
12705	// Also, when using this method, only one AWS DMS task can access the database
12706	// at any given time. Therefore, if you need to run parallel AWS DMS tasks against
12707	// the same database, use the default method.
12708	SafeguardPolicy *string `type:"string" enum:"SafeguardPolicy"`
12709
12710	// The full Amazon Resource Name (ARN) of the IAM role that specifies AWS DMS
12711	// as the trusted entity and grants the required permissions to access the value
12712	// in SecretsManagerSecret. SecretsManagerSecret has the value of the AWS Secrets
12713	// Manager secret that allows access to the SQL Server endpoint.
12714	//
12715	// You can specify one of two sets of values for these permissions. You can
12716	// specify the values for this setting and SecretsManagerSecretId. Or you can
12717	// specify clear-text values for UserName, Password, ServerName, and Port. You
12718	// can't specify both. For more information on creating this SecretsManagerSecret
12719	// and the SecretsManagerAccessRoleArn and SecretsManagerSecretId required to
12720	// access it, see Using secrets to access AWS Database Migration Service resources
12721	// (https://docs.aws.amazon.com/https:/docs.aws.amazon.com/dms/latest/userguide/CHAP_Security.html#security-iam-secretsmanager)
12722	// in the AWS Database Migration Service User Guide.
12723	SecretsManagerAccessRoleArn *string `type:"string"`
12724
12725	// The full ARN, partial ARN, or friendly name of the SecretsManagerSecret that
12726	// contains the SQL Server endpoint connection details.
12727	SecretsManagerSecretId *string `type:"string"`
12728
12729	// Fully qualified domain name of the endpoint.
12730	ServerName *string `type:"string"`
12731
12732	// Use this to attribute to transfer data for full-load operations using BCP.
12733	// When the target table contains an identity column that does not exist in
12734	// the source table, you must disable the use BCP for loading table option.
12735	UseBcpFullLoad *bool `type:"boolean"`
12736
12737	// When this attribute is set to Y, DMS processes third-party transaction log
12738	// backups if they are created in native format.
12739	UseThirdPartyBackupDevice *bool `type:"boolean"`
12740
12741	// Endpoint connection user name.
12742	Username *string `type:"string"`
12743}
12744
12745// String returns the string representation
12746func (s MicrosoftSQLServerSettings) String() string {
12747	return awsutil.Prettify(s)
12748}
12749
12750// GoString returns the string representation
12751func (s MicrosoftSQLServerSettings) GoString() string {
12752	return s.String()
12753}
12754
12755// SetBcpPacketSize sets the BcpPacketSize field's value.
12756func (s *MicrosoftSQLServerSettings) SetBcpPacketSize(v int64) *MicrosoftSQLServerSettings {
12757	s.BcpPacketSize = &v
12758	return s
12759}
12760
12761// SetControlTablesFileGroup sets the ControlTablesFileGroup field's value.
12762func (s *MicrosoftSQLServerSettings) SetControlTablesFileGroup(v string) *MicrosoftSQLServerSettings {
12763	s.ControlTablesFileGroup = &v
12764	return s
12765}
12766
12767// SetDatabaseName sets the DatabaseName field's value.
12768func (s *MicrosoftSQLServerSettings) SetDatabaseName(v string) *MicrosoftSQLServerSettings {
12769	s.DatabaseName = &v
12770	return s
12771}
12772
12773// SetPassword sets the Password field's value.
12774func (s *MicrosoftSQLServerSettings) SetPassword(v string) *MicrosoftSQLServerSettings {
12775	s.Password = &v
12776	return s
12777}
12778
12779// SetPort sets the Port field's value.
12780func (s *MicrosoftSQLServerSettings) SetPort(v int64) *MicrosoftSQLServerSettings {
12781	s.Port = &v
12782	return s
12783}
12784
12785// SetQuerySingleAlwaysOnNode sets the QuerySingleAlwaysOnNode field's value.
12786func (s *MicrosoftSQLServerSettings) SetQuerySingleAlwaysOnNode(v bool) *MicrosoftSQLServerSettings {
12787	s.QuerySingleAlwaysOnNode = &v
12788	return s
12789}
12790
12791// SetReadBackupOnly sets the ReadBackupOnly field's value.
12792func (s *MicrosoftSQLServerSettings) SetReadBackupOnly(v bool) *MicrosoftSQLServerSettings {
12793	s.ReadBackupOnly = &v
12794	return s
12795}
12796
12797// SetSafeguardPolicy sets the SafeguardPolicy field's value.
12798func (s *MicrosoftSQLServerSettings) SetSafeguardPolicy(v string) *MicrosoftSQLServerSettings {
12799	s.SafeguardPolicy = &v
12800	return s
12801}
12802
12803// SetSecretsManagerAccessRoleArn sets the SecretsManagerAccessRoleArn field's value.
12804func (s *MicrosoftSQLServerSettings) SetSecretsManagerAccessRoleArn(v string) *MicrosoftSQLServerSettings {
12805	s.SecretsManagerAccessRoleArn = &v
12806	return s
12807}
12808
12809// SetSecretsManagerSecretId sets the SecretsManagerSecretId field's value.
12810func (s *MicrosoftSQLServerSettings) SetSecretsManagerSecretId(v string) *MicrosoftSQLServerSettings {
12811	s.SecretsManagerSecretId = &v
12812	return s
12813}
12814
12815// SetServerName sets the ServerName field's value.
12816func (s *MicrosoftSQLServerSettings) SetServerName(v string) *MicrosoftSQLServerSettings {
12817	s.ServerName = &v
12818	return s
12819}
12820
12821// SetUseBcpFullLoad sets the UseBcpFullLoad field's value.
12822func (s *MicrosoftSQLServerSettings) SetUseBcpFullLoad(v bool) *MicrosoftSQLServerSettings {
12823	s.UseBcpFullLoad = &v
12824	return s
12825}
12826
12827// SetUseThirdPartyBackupDevice sets the UseThirdPartyBackupDevice field's value.
12828func (s *MicrosoftSQLServerSettings) SetUseThirdPartyBackupDevice(v bool) *MicrosoftSQLServerSettings {
12829	s.UseThirdPartyBackupDevice = &v
12830	return s
12831}
12832
12833// SetUsername sets the Username field's value.
12834func (s *MicrosoftSQLServerSettings) SetUsername(v string) *MicrosoftSQLServerSettings {
12835	s.Username = &v
12836	return s
12837}
12838
12839type ModifyEndpointInput struct {
12840	_ struct{} `type:"structure"`
12841
12842	// The Amazon Resource Name (ARN) of the certificate used for SSL connection.
12843	CertificateArn *string `type:"string"`
12844
12845	// The name of the endpoint database.
12846	DatabaseName *string `type:"string"`
12847
12848	// The settings in JSON format for the DMS transfer type of source endpoint.
12849	//
12850	// Attributes include the following:
12851	//
12852	//    * serviceAccessRoleArn - The AWS Identity and Access Management (IAM)
12853	//    role that has permission to access the Amazon S3 bucket.
12854	//
12855	//    * BucketName - The name of the S3 bucket to use.
12856	//
12857	//    * compressionType - An optional parameter to use GZIP to compress the
12858	//    target files. Either set this parameter to NONE (the default) or don't
12859	//    use it to leave the files uncompressed.
12860	//
12861	// Shorthand syntax for these settings is as follows: ServiceAccessRoleArn=string
12862	// ,BucketName=string,CompressionType=string
12863	//
12864	// JSON syntax for these settings is as follows: { "ServiceAccessRoleArn": "string",
12865	// "BucketName": "string", "CompressionType": "none"|"gzip" }
12866	DmsTransferSettings *DmsTransferSettings `type:"structure"`
12867
12868	// Settings in JSON format for the source DocumentDB endpoint. For more information
12869	// about the available settings, see the configuration properties section in
12870	// Using DocumentDB as a Target for AWS Database Migration Service (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.DocumentDB.html)
12871	// in the AWS Database Migration Service User Guide.
12872	DocDbSettings *DocDbSettings `type:"structure"`
12873
12874	// Settings in JSON format for the target Amazon DynamoDB endpoint. For information
12875	// about other available settings, see Using Object Mapping to Migrate Data
12876	// to DynamoDB (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.DynamoDB.html)
12877	// in the AWS Database Migration Service User Guide.
12878	DynamoDbSettings *DynamoDbSettings `type:"structure"`
12879
12880	// Settings in JSON format for the target Elasticsearch endpoint. For more information
12881	// about the available settings, see Extra Connection Attributes When Using
12882	// Elasticsearch as a Target for AWS DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Elasticsearch.html#CHAP_Target.Elasticsearch.Configuration)
12883	// in the AWS Database Migration Service User Guide.
12884	ElasticsearchSettings *ElasticsearchSettings `type:"structure"`
12885
12886	// The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.
12887	//
12888	// EndpointArn is a required field
12889	EndpointArn *string `type:"string" required:"true"`
12890
12891	// The database endpoint identifier. Identifiers must begin with a letter and
12892	// must contain only ASCII letters, digits, and hyphens. They can't end with
12893	// a hyphen or contain two consecutive hyphens.
12894	EndpointIdentifier *string `type:"string"`
12895
12896	// The type of endpoint. Valid values are source and target.
12897	EndpointType *string `type:"string" enum:"ReplicationEndpointTypeValue"`
12898
12899	// The type of engine for the endpoint. Valid values, depending on the EndpointType,
12900	// include "mysql", "oracle", "postgres", "mariadb", "aurora", "aurora-postgresql",
12901	// "redshift", "s3", "db2", "azuredb", "sybase", "dynamodb", "mongodb", "kinesis",
12902	// "kafka", "elasticsearch", "documentdb", "sqlserver", and "neptune".
12903	EngineName *string `type:"string"`
12904
12905	// The external table definition.
12906	ExternalTableDefinition *string `type:"string"`
12907
12908	// Additional attributes associated with the connection. To reset this parameter,
12909	// pass the empty string ("") as an argument.
12910	ExtraConnectionAttributes *string `type:"string"`
12911
12912	// Settings in JSON format for the source IBM Db2 LUW endpoint. For information
12913	// about other available settings, see Extra connection attributes when using
12914	// Db2 LUW as a source for AWS DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.DB2.ConnectionAttrib)
12915	// in the AWS Database Migration Service User Guide.
12916	IBMDb2Settings *IBMDb2Settings `type:"structure"`
12917
12918	// Settings in JSON format for the target Apache Kafka endpoint. For more information
12919	// about the available settings, see Using Apache Kafka as a Target for AWS
12920	// Database Migration Service (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Kafka.html)
12921	// in the AWS Database Migration Service User Guide.
12922	KafkaSettings *KafkaSettings `type:"structure"`
12923
12924	// Settings in JSON format for the target endpoint for Amazon Kinesis Data Streams.
12925	// For more information about the available settings, see Using Amazon Kinesis
12926	// Data Streams as a Target for AWS Database Migration Service (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Kinesis.html)
12927	// in the AWS Database Migration Service User Guide.
12928	KinesisSettings *KinesisSettings `type:"structure"`
12929
12930	// Settings in JSON format for the source and target Microsoft SQL Server endpoint.
12931	// For information about other available settings, see Extra connection attributes
12932	// when using SQL Server as a source for AWS DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.SQLServer.ConnectionAttrib)
12933	// and Extra connection attributes when using SQL Server as a target for AWS
12934	// DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.SQLServer.ConnectionAttrib)
12935	// in the AWS Database Migration Service User Guide.
12936	MicrosoftSQLServerSettings *MicrosoftSQLServerSettings `type:"structure"`
12937
12938	// Settings in JSON format for the source MongoDB endpoint. For more information
12939	// about the available settings, see the configuration properties section in
12940	// Using MongoDB as a Target for AWS Database Migration Service (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MongoDB.html)
12941	// in the AWS Database Migration Service User Guide.
12942	MongoDbSettings *MongoDbSettings `type:"structure"`
12943
12944	// Settings in JSON format for the source and target MySQL endpoint. For information
12945	// about other available settings, see Extra connection attributes when using
12946	// MySQL as a source for AWS DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MySQL.ConnectionAttrib)
12947	// and Extra connection attributes when using a MySQL-compatible database as
12948	// a target for AWS DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.MySQL.ConnectionAttrib)
12949	// in the AWS Database Migration Service User Guide.
12950	MySQLSettings *MySQLSettings `type:"structure"`
12951
12952	// Settings in JSON format for the target Amazon Neptune endpoint. For more
12953	// information about the available settings, see Specifying Endpoint Settings
12954	// for Amazon Neptune as a Target (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Neptune.html#CHAP_Target.Neptune.EndpointSettings)
12955	// in the AWS Database Migration Service User Guide.
12956	NeptuneSettings *NeptuneSettings `type:"structure"`
12957
12958	// Settings in JSON format for the source and target Oracle endpoint. For information
12959	// about other available settings, see Extra connection attributes when using
12960	// Oracle as a source for AWS DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.ConnectionAttrib)
12961	// and Extra connection attributes when using Oracle as a target for AWS DMS
12962	// (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Oracle.ConnectionAttrib)
12963	// in the AWS Database Migration Service User Guide.
12964	OracleSettings *OracleSettings `type:"structure"`
12965
12966	// The password to be used to login to the endpoint database.
12967	Password *string `type:"string" sensitive:"true"`
12968
12969	// The port used by the endpoint database.
12970	Port *int64 `type:"integer"`
12971
12972	// Settings in JSON format for the source and target PostgreSQL endpoint. For
12973	// information about other available settings, see Extra connection attributes
12974	// when using PostgreSQL as a source for AWS DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.PostgreSQL.ConnectionAttrib)
12975	// and Extra connection attributes when using PostgreSQL as a target for AWS
12976	// DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.PostgreSQL.ConnectionAttrib)
12977	// in the AWS Database Migration Service User Guide.
12978	PostgreSQLSettings *PostgreSQLSettings `type:"structure"`
12979
12980	// Provides information that defines an Amazon Redshift endpoint.
12981	RedshiftSettings *RedshiftSettings `type:"structure"`
12982
12983	// Settings in JSON format for the target Amazon S3 endpoint. For more information
12984	// about the available settings, see Extra Connection Attributes When Using
12985	// Amazon S3 as a Target for AWS DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.S3.html#CHAP_Target.S3.Configuring)
12986	// in the AWS Database Migration Service User Guide.
12987	S3Settings *S3Settings `type:"structure"`
12988
12989	// The name of the server where the endpoint database resides.
12990	ServerName *string `type:"string"`
12991
12992	// The Amazon Resource Name (ARN) for the service access role you want to use
12993	// to modify the endpoint.
12994	ServiceAccessRoleArn *string `type:"string"`
12995
12996	// The SSL mode used to connect to the endpoint. The default value is none.
12997	SslMode *string `type:"string" enum:"DmsSslModeValue"`
12998
12999	// Settings in JSON format for the source and target SAP ASE endpoint. For information
13000	// about other available settings, see Extra connection attributes when using
13001	// SAP ASE as a source for AWS DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.SAP.ConnectionAttrib)
13002	// and Extra connection attributes when using SAP ASE as a target for AWS DMS
13003	// (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.SAP.ConnectionAttrib)
13004	// in the AWS Database Migration Service User Guide.
13005	SybaseSettings *SybaseSettings `type:"structure"`
13006
13007	// The user name to be used to login to the endpoint database.
13008	Username *string `type:"string"`
13009}
13010
13011// String returns the string representation
13012func (s ModifyEndpointInput) String() string {
13013	return awsutil.Prettify(s)
13014}
13015
13016// GoString returns the string representation
13017func (s ModifyEndpointInput) GoString() string {
13018	return s.String()
13019}
13020
13021// Validate inspects the fields of the type to determine if they are valid.
13022func (s *ModifyEndpointInput) Validate() error {
13023	invalidParams := request.ErrInvalidParams{Context: "ModifyEndpointInput"}
13024	if s.EndpointArn == nil {
13025		invalidParams.Add(request.NewErrParamRequired("EndpointArn"))
13026	}
13027	if s.DynamoDbSettings != nil {
13028		if err := s.DynamoDbSettings.Validate(); err != nil {
13029			invalidParams.AddNested("DynamoDbSettings", err.(request.ErrInvalidParams))
13030		}
13031	}
13032	if s.ElasticsearchSettings != nil {
13033		if err := s.ElasticsearchSettings.Validate(); err != nil {
13034			invalidParams.AddNested("ElasticsearchSettings", err.(request.ErrInvalidParams))
13035		}
13036	}
13037	if s.NeptuneSettings != nil {
13038		if err := s.NeptuneSettings.Validate(); err != nil {
13039			invalidParams.AddNested("NeptuneSettings", err.(request.ErrInvalidParams))
13040		}
13041	}
13042
13043	if invalidParams.Len() > 0 {
13044		return invalidParams
13045	}
13046	return nil
13047}
13048
13049// SetCertificateArn sets the CertificateArn field's value.
13050func (s *ModifyEndpointInput) SetCertificateArn(v string) *ModifyEndpointInput {
13051	s.CertificateArn = &v
13052	return s
13053}
13054
13055// SetDatabaseName sets the DatabaseName field's value.
13056func (s *ModifyEndpointInput) SetDatabaseName(v string) *ModifyEndpointInput {
13057	s.DatabaseName = &v
13058	return s
13059}
13060
13061// SetDmsTransferSettings sets the DmsTransferSettings field's value.
13062func (s *ModifyEndpointInput) SetDmsTransferSettings(v *DmsTransferSettings) *ModifyEndpointInput {
13063	s.DmsTransferSettings = v
13064	return s
13065}
13066
13067// SetDocDbSettings sets the DocDbSettings field's value.
13068func (s *ModifyEndpointInput) SetDocDbSettings(v *DocDbSettings) *ModifyEndpointInput {
13069	s.DocDbSettings = v
13070	return s
13071}
13072
13073// SetDynamoDbSettings sets the DynamoDbSettings field's value.
13074func (s *ModifyEndpointInput) SetDynamoDbSettings(v *DynamoDbSettings) *ModifyEndpointInput {
13075	s.DynamoDbSettings = v
13076	return s
13077}
13078
13079// SetElasticsearchSettings sets the ElasticsearchSettings field's value.
13080func (s *ModifyEndpointInput) SetElasticsearchSettings(v *ElasticsearchSettings) *ModifyEndpointInput {
13081	s.ElasticsearchSettings = v
13082	return s
13083}
13084
13085// SetEndpointArn sets the EndpointArn field's value.
13086func (s *ModifyEndpointInput) SetEndpointArn(v string) *ModifyEndpointInput {
13087	s.EndpointArn = &v
13088	return s
13089}
13090
13091// SetEndpointIdentifier sets the EndpointIdentifier field's value.
13092func (s *ModifyEndpointInput) SetEndpointIdentifier(v string) *ModifyEndpointInput {
13093	s.EndpointIdentifier = &v
13094	return s
13095}
13096
13097// SetEndpointType sets the EndpointType field's value.
13098func (s *ModifyEndpointInput) SetEndpointType(v string) *ModifyEndpointInput {
13099	s.EndpointType = &v
13100	return s
13101}
13102
13103// SetEngineName sets the EngineName field's value.
13104func (s *ModifyEndpointInput) SetEngineName(v string) *ModifyEndpointInput {
13105	s.EngineName = &v
13106	return s
13107}
13108
13109// SetExternalTableDefinition sets the ExternalTableDefinition field's value.
13110func (s *ModifyEndpointInput) SetExternalTableDefinition(v string) *ModifyEndpointInput {
13111	s.ExternalTableDefinition = &v
13112	return s
13113}
13114
13115// SetExtraConnectionAttributes sets the ExtraConnectionAttributes field's value.
13116func (s *ModifyEndpointInput) SetExtraConnectionAttributes(v string) *ModifyEndpointInput {
13117	s.ExtraConnectionAttributes = &v
13118	return s
13119}
13120
13121// SetIBMDb2Settings sets the IBMDb2Settings field's value.
13122func (s *ModifyEndpointInput) SetIBMDb2Settings(v *IBMDb2Settings) *ModifyEndpointInput {
13123	s.IBMDb2Settings = v
13124	return s
13125}
13126
13127// SetKafkaSettings sets the KafkaSettings field's value.
13128func (s *ModifyEndpointInput) SetKafkaSettings(v *KafkaSettings) *ModifyEndpointInput {
13129	s.KafkaSettings = v
13130	return s
13131}
13132
13133// SetKinesisSettings sets the KinesisSettings field's value.
13134func (s *ModifyEndpointInput) SetKinesisSettings(v *KinesisSettings) *ModifyEndpointInput {
13135	s.KinesisSettings = v
13136	return s
13137}
13138
13139// SetMicrosoftSQLServerSettings sets the MicrosoftSQLServerSettings field's value.
13140func (s *ModifyEndpointInput) SetMicrosoftSQLServerSettings(v *MicrosoftSQLServerSettings) *ModifyEndpointInput {
13141	s.MicrosoftSQLServerSettings = v
13142	return s
13143}
13144
13145// SetMongoDbSettings sets the MongoDbSettings field's value.
13146func (s *ModifyEndpointInput) SetMongoDbSettings(v *MongoDbSettings) *ModifyEndpointInput {
13147	s.MongoDbSettings = v
13148	return s
13149}
13150
13151// SetMySQLSettings sets the MySQLSettings field's value.
13152func (s *ModifyEndpointInput) SetMySQLSettings(v *MySQLSettings) *ModifyEndpointInput {
13153	s.MySQLSettings = v
13154	return s
13155}
13156
13157// SetNeptuneSettings sets the NeptuneSettings field's value.
13158func (s *ModifyEndpointInput) SetNeptuneSettings(v *NeptuneSettings) *ModifyEndpointInput {
13159	s.NeptuneSettings = v
13160	return s
13161}
13162
13163// SetOracleSettings sets the OracleSettings field's value.
13164func (s *ModifyEndpointInput) SetOracleSettings(v *OracleSettings) *ModifyEndpointInput {
13165	s.OracleSettings = v
13166	return s
13167}
13168
13169// SetPassword sets the Password field's value.
13170func (s *ModifyEndpointInput) SetPassword(v string) *ModifyEndpointInput {
13171	s.Password = &v
13172	return s
13173}
13174
13175// SetPort sets the Port field's value.
13176func (s *ModifyEndpointInput) SetPort(v int64) *ModifyEndpointInput {
13177	s.Port = &v
13178	return s
13179}
13180
13181// SetPostgreSQLSettings sets the PostgreSQLSettings field's value.
13182func (s *ModifyEndpointInput) SetPostgreSQLSettings(v *PostgreSQLSettings) *ModifyEndpointInput {
13183	s.PostgreSQLSettings = v
13184	return s
13185}
13186
13187// SetRedshiftSettings sets the RedshiftSettings field's value.
13188func (s *ModifyEndpointInput) SetRedshiftSettings(v *RedshiftSettings) *ModifyEndpointInput {
13189	s.RedshiftSettings = v
13190	return s
13191}
13192
13193// SetS3Settings sets the S3Settings field's value.
13194func (s *ModifyEndpointInput) SetS3Settings(v *S3Settings) *ModifyEndpointInput {
13195	s.S3Settings = v
13196	return s
13197}
13198
13199// SetServerName sets the ServerName field's value.
13200func (s *ModifyEndpointInput) SetServerName(v string) *ModifyEndpointInput {
13201	s.ServerName = &v
13202	return s
13203}
13204
13205// SetServiceAccessRoleArn sets the ServiceAccessRoleArn field's value.
13206func (s *ModifyEndpointInput) SetServiceAccessRoleArn(v string) *ModifyEndpointInput {
13207	s.ServiceAccessRoleArn = &v
13208	return s
13209}
13210
13211// SetSslMode sets the SslMode field's value.
13212func (s *ModifyEndpointInput) SetSslMode(v string) *ModifyEndpointInput {
13213	s.SslMode = &v
13214	return s
13215}
13216
13217// SetSybaseSettings sets the SybaseSettings field's value.
13218func (s *ModifyEndpointInput) SetSybaseSettings(v *SybaseSettings) *ModifyEndpointInput {
13219	s.SybaseSettings = v
13220	return s
13221}
13222
13223// SetUsername sets the Username field's value.
13224func (s *ModifyEndpointInput) SetUsername(v string) *ModifyEndpointInput {
13225	s.Username = &v
13226	return s
13227}
13228
13229type ModifyEndpointOutput struct {
13230	_ struct{} `type:"structure"`
13231
13232	// The modified endpoint.
13233	Endpoint *Endpoint `type:"structure"`
13234}
13235
13236// String returns the string representation
13237func (s ModifyEndpointOutput) String() string {
13238	return awsutil.Prettify(s)
13239}
13240
13241// GoString returns the string representation
13242func (s ModifyEndpointOutput) GoString() string {
13243	return s.String()
13244}
13245
13246// SetEndpoint sets the Endpoint field's value.
13247func (s *ModifyEndpointOutput) SetEndpoint(v *Endpoint) *ModifyEndpointOutput {
13248	s.Endpoint = v
13249	return s
13250}
13251
13252type ModifyEventSubscriptionInput struct {
13253	_ struct{} `type:"structure"`
13254
13255	// A Boolean value; set to true to activate the subscription.
13256	Enabled *bool `type:"boolean"`
13257
13258	// A list of event categories for a source type that you want to subscribe to.
13259	// Use the DescribeEventCategories action to see a list of event categories.
13260	EventCategories []*string `type:"list"`
13261
13262	// The Amazon Resource Name (ARN) of the Amazon SNS topic created for event
13263	// notification. The ARN is created by Amazon SNS when you create a topic and
13264	// subscribe to it.
13265	SnsTopicArn *string `type:"string"`
13266
13267	// The type of AWS DMS resource that generates the events you want to subscribe
13268	// to.
13269	//
13270	// Valid values: replication-instance | replication-task
13271	SourceType *string `type:"string"`
13272
13273	// The name of the AWS DMS event notification subscription to be modified.
13274	//
13275	// SubscriptionName is a required field
13276	SubscriptionName *string `type:"string" required:"true"`
13277}
13278
13279// String returns the string representation
13280func (s ModifyEventSubscriptionInput) String() string {
13281	return awsutil.Prettify(s)
13282}
13283
13284// GoString returns the string representation
13285func (s ModifyEventSubscriptionInput) GoString() string {
13286	return s.String()
13287}
13288
13289// Validate inspects the fields of the type to determine if they are valid.
13290func (s *ModifyEventSubscriptionInput) Validate() error {
13291	invalidParams := request.ErrInvalidParams{Context: "ModifyEventSubscriptionInput"}
13292	if s.SubscriptionName == nil {
13293		invalidParams.Add(request.NewErrParamRequired("SubscriptionName"))
13294	}
13295
13296	if invalidParams.Len() > 0 {
13297		return invalidParams
13298	}
13299	return nil
13300}
13301
13302// SetEnabled sets the Enabled field's value.
13303func (s *ModifyEventSubscriptionInput) SetEnabled(v bool) *ModifyEventSubscriptionInput {
13304	s.Enabled = &v
13305	return s
13306}
13307
13308// SetEventCategories sets the EventCategories field's value.
13309func (s *ModifyEventSubscriptionInput) SetEventCategories(v []*string) *ModifyEventSubscriptionInput {
13310	s.EventCategories = v
13311	return s
13312}
13313
13314// SetSnsTopicArn sets the SnsTopicArn field's value.
13315func (s *ModifyEventSubscriptionInput) SetSnsTopicArn(v string) *ModifyEventSubscriptionInput {
13316	s.SnsTopicArn = &v
13317	return s
13318}
13319
13320// SetSourceType sets the SourceType field's value.
13321func (s *ModifyEventSubscriptionInput) SetSourceType(v string) *ModifyEventSubscriptionInput {
13322	s.SourceType = &v
13323	return s
13324}
13325
13326// SetSubscriptionName sets the SubscriptionName field's value.
13327func (s *ModifyEventSubscriptionInput) SetSubscriptionName(v string) *ModifyEventSubscriptionInput {
13328	s.SubscriptionName = &v
13329	return s
13330}
13331
13332type ModifyEventSubscriptionOutput struct {
13333	_ struct{} `type:"structure"`
13334
13335	// The modified event subscription.
13336	EventSubscription *EventSubscription `type:"structure"`
13337}
13338
13339// String returns the string representation
13340func (s ModifyEventSubscriptionOutput) String() string {
13341	return awsutil.Prettify(s)
13342}
13343
13344// GoString returns the string representation
13345func (s ModifyEventSubscriptionOutput) GoString() string {
13346	return s.String()
13347}
13348
13349// SetEventSubscription sets the EventSubscription field's value.
13350func (s *ModifyEventSubscriptionOutput) SetEventSubscription(v *EventSubscription) *ModifyEventSubscriptionOutput {
13351	s.EventSubscription = v
13352	return s
13353}
13354
13355type ModifyReplicationInstanceInput struct {
13356	_ struct{} `type:"structure"`
13357
13358	// The amount of storage (in gigabytes) to be allocated for the replication
13359	// instance.
13360	AllocatedStorage *int64 `type:"integer"`
13361
13362	// Indicates that major version upgrades are allowed. Changing this parameter
13363	// does not result in an outage, and the change is asynchronously applied as
13364	// soon as possible.
13365	//
13366	// This parameter must be set to true when specifying a value for the EngineVersion
13367	// parameter that is a different major version than the replication instance's
13368	// current version.
13369	AllowMajorVersionUpgrade *bool `type:"boolean"`
13370
13371	// Indicates whether the changes should be applied immediately or during the
13372	// next maintenance window.
13373	ApplyImmediately *bool `type:"boolean"`
13374
13375	// A value that indicates that minor version upgrades are applied automatically
13376	// to the replication instance during the maintenance window. Changing this
13377	// parameter doesn't result in an outage, except in the case described following.
13378	// The change is asynchronously applied as soon as possible.
13379	//
13380	// An outage does result if these factors apply:
13381	//
13382	//    * This parameter is set to true during the maintenance window.
13383	//
13384	//    * A newer minor version is available.
13385	//
13386	//    * AWS DMS has enabled automatic patching for the given engine version.
13387	AutoMinorVersionUpgrade *bool `type:"boolean"`
13388
13389	// The engine version number of the replication instance.
13390	//
13391	// When modifying a major engine version of an instance, also set AllowMajorVersionUpgrade
13392	// to true.
13393	EngineVersion *string `type:"string"`
13394
13395	// Specifies whether the replication instance is a Multi-AZ deployment. You
13396	// can't set the AvailabilityZone parameter if the Multi-AZ parameter is set
13397	// to true.
13398	MultiAZ *bool `type:"boolean"`
13399
13400	// The weekly time range (in UTC) during which system maintenance can occur,
13401	// which might result in an outage. Changing this parameter does not result
13402	// in an outage, except in the following situation, and the change is asynchronously
13403	// applied as soon as possible. If moving this window to the current time, there
13404	// must be at least 30 minutes between the current time and end of the window
13405	// to ensure pending changes are applied.
13406	//
13407	// Default: Uses existing setting
13408	//
13409	// Format: ddd:hh24:mi-ddd:hh24:mi
13410	//
13411	// Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun
13412	//
13413	// Constraints: Must be at least 30 minutes
13414	PreferredMaintenanceWindow *string `type:"string"`
13415
13416	// The Amazon Resource Name (ARN) of the replication instance.
13417	//
13418	// ReplicationInstanceArn is a required field
13419	ReplicationInstanceArn *string `type:"string" required:"true"`
13420
13421	// The compute and memory capacity of the replication instance as defined for
13422	// the specified replication instance class. For example to specify the instance
13423	// class dms.c4.large, set this parameter to "dms.c4.large".
13424	//
13425	// For more information on the settings and capacities for the available replication
13426	// instance classes, see Selecting the right AWS DMS replication instance for
13427	// your migration (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_ReplicationInstance.html#CHAP_ReplicationInstance.InDepth).
13428	ReplicationInstanceClass *string `type:"string"`
13429
13430	// The replication instance identifier. This parameter is stored as a lowercase
13431	// string.
13432	ReplicationInstanceIdentifier *string `type:"string"`
13433
13434	// Specifies the VPC security group to be used with the replication instance.
13435	// The VPC security group must work with the VPC containing the replication
13436	// instance.
13437	VpcSecurityGroupIds []*string `type:"list"`
13438}
13439
13440// String returns the string representation
13441func (s ModifyReplicationInstanceInput) String() string {
13442	return awsutil.Prettify(s)
13443}
13444
13445// GoString returns the string representation
13446func (s ModifyReplicationInstanceInput) GoString() string {
13447	return s.String()
13448}
13449
13450// Validate inspects the fields of the type to determine if they are valid.
13451func (s *ModifyReplicationInstanceInput) Validate() error {
13452	invalidParams := request.ErrInvalidParams{Context: "ModifyReplicationInstanceInput"}
13453	if s.ReplicationInstanceArn == nil {
13454		invalidParams.Add(request.NewErrParamRequired("ReplicationInstanceArn"))
13455	}
13456
13457	if invalidParams.Len() > 0 {
13458		return invalidParams
13459	}
13460	return nil
13461}
13462
13463// SetAllocatedStorage sets the AllocatedStorage field's value.
13464func (s *ModifyReplicationInstanceInput) SetAllocatedStorage(v int64) *ModifyReplicationInstanceInput {
13465	s.AllocatedStorage = &v
13466	return s
13467}
13468
13469// SetAllowMajorVersionUpgrade sets the AllowMajorVersionUpgrade field's value.
13470func (s *ModifyReplicationInstanceInput) SetAllowMajorVersionUpgrade(v bool) *ModifyReplicationInstanceInput {
13471	s.AllowMajorVersionUpgrade = &v
13472	return s
13473}
13474
13475// SetApplyImmediately sets the ApplyImmediately field's value.
13476func (s *ModifyReplicationInstanceInput) SetApplyImmediately(v bool) *ModifyReplicationInstanceInput {
13477	s.ApplyImmediately = &v
13478	return s
13479}
13480
13481// SetAutoMinorVersionUpgrade sets the AutoMinorVersionUpgrade field's value.
13482func (s *ModifyReplicationInstanceInput) SetAutoMinorVersionUpgrade(v bool) *ModifyReplicationInstanceInput {
13483	s.AutoMinorVersionUpgrade = &v
13484	return s
13485}
13486
13487// SetEngineVersion sets the EngineVersion field's value.
13488func (s *ModifyReplicationInstanceInput) SetEngineVersion(v string) *ModifyReplicationInstanceInput {
13489	s.EngineVersion = &v
13490	return s
13491}
13492
13493// SetMultiAZ sets the MultiAZ field's value.
13494func (s *ModifyReplicationInstanceInput) SetMultiAZ(v bool) *ModifyReplicationInstanceInput {
13495	s.MultiAZ = &v
13496	return s
13497}
13498
13499// SetPreferredMaintenanceWindow sets the PreferredMaintenanceWindow field's value.
13500func (s *ModifyReplicationInstanceInput) SetPreferredMaintenanceWindow(v string) *ModifyReplicationInstanceInput {
13501	s.PreferredMaintenanceWindow = &v
13502	return s
13503}
13504
13505// SetReplicationInstanceArn sets the ReplicationInstanceArn field's value.
13506func (s *ModifyReplicationInstanceInput) SetReplicationInstanceArn(v string) *ModifyReplicationInstanceInput {
13507	s.ReplicationInstanceArn = &v
13508	return s
13509}
13510
13511// SetReplicationInstanceClass sets the ReplicationInstanceClass field's value.
13512func (s *ModifyReplicationInstanceInput) SetReplicationInstanceClass(v string) *ModifyReplicationInstanceInput {
13513	s.ReplicationInstanceClass = &v
13514	return s
13515}
13516
13517// SetReplicationInstanceIdentifier sets the ReplicationInstanceIdentifier field's value.
13518func (s *ModifyReplicationInstanceInput) SetReplicationInstanceIdentifier(v string) *ModifyReplicationInstanceInput {
13519	s.ReplicationInstanceIdentifier = &v
13520	return s
13521}
13522
13523// SetVpcSecurityGroupIds sets the VpcSecurityGroupIds field's value.
13524func (s *ModifyReplicationInstanceInput) SetVpcSecurityGroupIds(v []*string) *ModifyReplicationInstanceInput {
13525	s.VpcSecurityGroupIds = v
13526	return s
13527}
13528
13529type ModifyReplicationInstanceOutput struct {
13530	_ struct{} `type:"structure"`
13531
13532	// The modified replication instance.
13533	ReplicationInstance *ReplicationInstance `type:"structure"`
13534}
13535
13536// String returns the string representation
13537func (s ModifyReplicationInstanceOutput) String() string {
13538	return awsutil.Prettify(s)
13539}
13540
13541// GoString returns the string representation
13542func (s ModifyReplicationInstanceOutput) GoString() string {
13543	return s.String()
13544}
13545
13546// SetReplicationInstance sets the ReplicationInstance field's value.
13547func (s *ModifyReplicationInstanceOutput) SetReplicationInstance(v *ReplicationInstance) *ModifyReplicationInstanceOutput {
13548	s.ReplicationInstance = v
13549	return s
13550}
13551
13552type ModifyReplicationSubnetGroupInput struct {
13553	_ struct{} `type:"structure"`
13554
13555	// A description for the replication instance subnet group.
13556	ReplicationSubnetGroupDescription *string `type:"string"`
13557
13558	// The name of the replication instance subnet group.
13559	//
13560	// ReplicationSubnetGroupIdentifier is a required field
13561	ReplicationSubnetGroupIdentifier *string `type:"string" required:"true"`
13562
13563	// A list of subnet IDs.
13564	//
13565	// SubnetIds is a required field
13566	SubnetIds []*string `type:"list" required:"true"`
13567}
13568
13569// String returns the string representation
13570func (s ModifyReplicationSubnetGroupInput) String() string {
13571	return awsutil.Prettify(s)
13572}
13573
13574// GoString returns the string representation
13575func (s ModifyReplicationSubnetGroupInput) GoString() string {
13576	return s.String()
13577}
13578
13579// Validate inspects the fields of the type to determine if they are valid.
13580func (s *ModifyReplicationSubnetGroupInput) Validate() error {
13581	invalidParams := request.ErrInvalidParams{Context: "ModifyReplicationSubnetGroupInput"}
13582	if s.ReplicationSubnetGroupIdentifier == nil {
13583		invalidParams.Add(request.NewErrParamRequired("ReplicationSubnetGroupIdentifier"))
13584	}
13585	if s.SubnetIds == nil {
13586		invalidParams.Add(request.NewErrParamRequired("SubnetIds"))
13587	}
13588
13589	if invalidParams.Len() > 0 {
13590		return invalidParams
13591	}
13592	return nil
13593}
13594
13595// SetReplicationSubnetGroupDescription sets the ReplicationSubnetGroupDescription field's value.
13596func (s *ModifyReplicationSubnetGroupInput) SetReplicationSubnetGroupDescription(v string) *ModifyReplicationSubnetGroupInput {
13597	s.ReplicationSubnetGroupDescription = &v
13598	return s
13599}
13600
13601// SetReplicationSubnetGroupIdentifier sets the ReplicationSubnetGroupIdentifier field's value.
13602func (s *ModifyReplicationSubnetGroupInput) SetReplicationSubnetGroupIdentifier(v string) *ModifyReplicationSubnetGroupInput {
13603	s.ReplicationSubnetGroupIdentifier = &v
13604	return s
13605}
13606
13607// SetSubnetIds sets the SubnetIds field's value.
13608func (s *ModifyReplicationSubnetGroupInput) SetSubnetIds(v []*string) *ModifyReplicationSubnetGroupInput {
13609	s.SubnetIds = v
13610	return s
13611}
13612
13613type ModifyReplicationSubnetGroupOutput struct {
13614	_ struct{} `type:"structure"`
13615
13616	// The modified replication subnet group.
13617	ReplicationSubnetGroup *ReplicationSubnetGroup `type:"structure"`
13618}
13619
13620// String returns the string representation
13621func (s ModifyReplicationSubnetGroupOutput) String() string {
13622	return awsutil.Prettify(s)
13623}
13624
13625// GoString returns the string representation
13626func (s ModifyReplicationSubnetGroupOutput) GoString() string {
13627	return s.String()
13628}
13629
13630// SetReplicationSubnetGroup sets the ReplicationSubnetGroup field's value.
13631func (s *ModifyReplicationSubnetGroupOutput) SetReplicationSubnetGroup(v *ReplicationSubnetGroup) *ModifyReplicationSubnetGroupOutput {
13632	s.ReplicationSubnetGroup = v
13633	return s
13634}
13635
13636type ModifyReplicationTaskInput struct {
13637	_ struct{} `type:"structure"`
13638
13639	// Indicates when you want a change data capture (CDC) operation to start. Use
13640	// either CdcStartPosition or CdcStartTime to specify when you want a CDC operation
13641	// to start. Specifying both values results in an error.
13642	//
13643	// The value can be in date, checkpoint, or LSN/SCN format.
13644	//
13645	// Date Example: --cdc-start-position “2018-03-08T12:12:12”
13646	//
13647	// Checkpoint Example: --cdc-start-position "checkpoint:V1#27#mysql-bin-changelog.157832:1975:-1:2002:677883278264080:mysql-bin-changelog.157832:1876#0#0#*#0#93"
13648	//
13649	// LSN Example: --cdc-start-position “mysql-bin-changelog.000024:373”
13650	//
13651	// When you use this task setting with a source PostgreSQL database, a logical
13652	// replication slot should already be created and associated with the source
13653	// endpoint. You can verify this by setting the slotName extra connection attribute
13654	// to the name of this logical replication slot. For more information, see Extra
13655	// Connection Attributes When Using PostgreSQL as a Source for AWS DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.PostgreSQL.html#CHAP_Source.PostgreSQL.ConnectionAttrib).
13656	CdcStartPosition *string `type:"string"`
13657
13658	// Indicates the start time for a change data capture (CDC) operation. Use either
13659	// CdcStartTime or CdcStartPosition to specify when you want a CDC operation
13660	// to start. Specifying both values results in an error.
13661	//
13662	// Timestamp Example: --cdc-start-time “2018-03-08T12:12:12”
13663	CdcStartTime *time.Time `type:"timestamp"`
13664
13665	// Indicates when you want a change data capture (CDC) operation to stop. The
13666	// value can be either server time or commit time.
13667	//
13668	// Server time example: --cdc-stop-position “server_time:2018-02-09T12:12:12”
13669	//
13670	// Commit time example: --cdc-stop-position “commit_time: 2018-02-09T12:12:12
13671	// “
13672	CdcStopPosition *string `type:"string"`
13673
13674	// The migration type. Valid values: full-load | cdc | full-load-and-cdc
13675	MigrationType *string `type:"string" enum:"MigrationTypeValue"`
13676
13677	// The Amazon Resource Name (ARN) of the replication task.
13678	//
13679	// ReplicationTaskArn is a required field
13680	ReplicationTaskArn *string `type:"string" required:"true"`
13681
13682	// The replication task identifier.
13683	//
13684	// Constraints:
13685	//
13686	//    * Must contain 1-255 alphanumeric characters or hyphens.
13687	//
13688	//    * First character must be a letter.
13689	//
13690	//    * Cannot end with a hyphen or contain two consecutive hyphens.
13691	ReplicationTaskIdentifier *string `type:"string"`
13692
13693	// JSON file that contains settings for the task, such as task metadata settings.
13694	ReplicationTaskSettings *string `type:"string"`
13695
13696	// When using the AWS CLI or boto3, provide the path of the JSON file that contains
13697	// the table mappings. Precede the path with file://. For example, --table-mappings
13698	// file://mappingfile.json. When working with the DMS API, provide the JSON
13699	// as the parameter value.
13700	TableMappings *string `type:"string"`
13701
13702	// Supplemental information that the task requires to migrate the data for certain
13703	// source and target endpoints. For more information, see Specifying Supplemental
13704	// Data for Task Settings (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Tasks.TaskData.html)
13705	// in the AWS Database Migration Service User Guide.
13706	TaskData *string `type:"string"`
13707}
13708
13709// String returns the string representation
13710func (s ModifyReplicationTaskInput) String() string {
13711	return awsutil.Prettify(s)
13712}
13713
13714// GoString returns the string representation
13715func (s ModifyReplicationTaskInput) GoString() string {
13716	return s.String()
13717}
13718
13719// Validate inspects the fields of the type to determine if they are valid.
13720func (s *ModifyReplicationTaskInput) Validate() error {
13721	invalidParams := request.ErrInvalidParams{Context: "ModifyReplicationTaskInput"}
13722	if s.ReplicationTaskArn == nil {
13723		invalidParams.Add(request.NewErrParamRequired("ReplicationTaskArn"))
13724	}
13725
13726	if invalidParams.Len() > 0 {
13727		return invalidParams
13728	}
13729	return nil
13730}
13731
13732// SetCdcStartPosition sets the CdcStartPosition field's value.
13733func (s *ModifyReplicationTaskInput) SetCdcStartPosition(v string) *ModifyReplicationTaskInput {
13734	s.CdcStartPosition = &v
13735	return s
13736}
13737
13738// SetCdcStartTime sets the CdcStartTime field's value.
13739func (s *ModifyReplicationTaskInput) SetCdcStartTime(v time.Time) *ModifyReplicationTaskInput {
13740	s.CdcStartTime = &v
13741	return s
13742}
13743
13744// SetCdcStopPosition sets the CdcStopPosition field's value.
13745func (s *ModifyReplicationTaskInput) SetCdcStopPosition(v string) *ModifyReplicationTaskInput {
13746	s.CdcStopPosition = &v
13747	return s
13748}
13749
13750// SetMigrationType sets the MigrationType field's value.
13751func (s *ModifyReplicationTaskInput) SetMigrationType(v string) *ModifyReplicationTaskInput {
13752	s.MigrationType = &v
13753	return s
13754}
13755
13756// SetReplicationTaskArn sets the ReplicationTaskArn field's value.
13757func (s *ModifyReplicationTaskInput) SetReplicationTaskArn(v string) *ModifyReplicationTaskInput {
13758	s.ReplicationTaskArn = &v
13759	return s
13760}
13761
13762// SetReplicationTaskIdentifier sets the ReplicationTaskIdentifier field's value.
13763func (s *ModifyReplicationTaskInput) SetReplicationTaskIdentifier(v string) *ModifyReplicationTaskInput {
13764	s.ReplicationTaskIdentifier = &v
13765	return s
13766}
13767
13768// SetReplicationTaskSettings sets the ReplicationTaskSettings field's value.
13769func (s *ModifyReplicationTaskInput) SetReplicationTaskSettings(v string) *ModifyReplicationTaskInput {
13770	s.ReplicationTaskSettings = &v
13771	return s
13772}
13773
13774// SetTableMappings sets the TableMappings field's value.
13775func (s *ModifyReplicationTaskInput) SetTableMappings(v string) *ModifyReplicationTaskInput {
13776	s.TableMappings = &v
13777	return s
13778}
13779
13780// SetTaskData sets the TaskData field's value.
13781func (s *ModifyReplicationTaskInput) SetTaskData(v string) *ModifyReplicationTaskInput {
13782	s.TaskData = &v
13783	return s
13784}
13785
13786type ModifyReplicationTaskOutput struct {
13787	_ struct{} `type:"structure"`
13788
13789	// The replication task that was modified.
13790	ReplicationTask *ReplicationTask `type:"structure"`
13791}
13792
13793// String returns the string representation
13794func (s ModifyReplicationTaskOutput) String() string {
13795	return awsutil.Prettify(s)
13796}
13797
13798// GoString returns the string representation
13799func (s ModifyReplicationTaskOutput) GoString() string {
13800	return s.String()
13801}
13802
13803// SetReplicationTask sets the ReplicationTask field's value.
13804func (s *ModifyReplicationTaskOutput) SetReplicationTask(v *ReplicationTask) *ModifyReplicationTaskOutput {
13805	s.ReplicationTask = v
13806	return s
13807}
13808
13809// Provides information that defines a MongoDB endpoint.
13810type MongoDbSettings struct {
13811	_ struct{} `type:"structure"`
13812
13813	// The authentication mechanism you use to access the MongoDB source endpoint.
13814	//
13815	// For the default value, in MongoDB version 2.x, "default" is "mongodb_cr".
13816	// For MongoDB version 3.x or later, "default" is "scram_sha_1". This setting
13817	// isn't used when AuthType is set to "no".
13818	AuthMechanism *string `type:"string" enum:"AuthMechanismValue"`
13819
13820	// The MongoDB database name. This setting isn't used when AuthType is set to
13821	// "no".
13822	//
13823	// The default is "admin".
13824	AuthSource *string `type:"string"`
13825
13826	// The authentication type you use to access the MongoDB source endpoint.
13827	//
13828	// When when set to "no", user name and password parameters are not used and
13829	// can be empty.
13830	AuthType *string `type:"string" enum:"AuthTypeValue"`
13831
13832	// The database name on the MongoDB source endpoint.
13833	DatabaseName *string `type:"string"`
13834
13835	// Indicates the number of documents to preview to determine the document organization.
13836	// Use this setting when NestingLevel is set to "one".
13837	//
13838	// Must be a positive value greater than 0. Default value is 1000.
13839	DocsToInvestigate *string `type:"string"`
13840
13841	// Specifies the document ID. Use this setting when NestingLevel is set to "none".
13842	//
13843	// Default value is "false".
13844	ExtractDocId *string `type:"string"`
13845
13846	// The AWS KMS key identifier that is used to encrypt the content on the replication
13847	// instance. If you don't specify a value for the KmsKeyId parameter, then AWS
13848	// DMS uses your default encryption key. AWS KMS creates the default encryption
13849	// key for your AWS account. Your AWS account has a different default encryption
13850	// key for each AWS Region.
13851	KmsKeyId *string `type:"string"`
13852
13853	// Specifies either document or table mode.
13854	//
13855	// Default value is "none". Specify "none" to use document mode. Specify "one"
13856	// to use table mode.
13857	NestingLevel *string `type:"string" enum:"NestingLevelValue"`
13858
13859	// The password for the user account you use to access the MongoDB source endpoint.
13860	Password *string `type:"string" sensitive:"true"`
13861
13862	// The port value for the MongoDB source endpoint.
13863	Port *int64 `type:"integer"`
13864
13865	// The full Amazon Resource Name (ARN) of the IAM role that specifies AWS DMS
13866	// as the trusted entity and grants the required permissions to access the value
13867	// in SecretsManagerSecret. SecretsManagerSecret has the value of the AWS Secrets
13868	// Manager secret that allows access to the MongoDB endpoint.
13869	//
13870	// You can specify one of two sets of values for these permissions. You can
13871	// specify the values for this setting and SecretsManagerSecretId. Or you can
13872	// specify clear-text values for UserName, Password, ServerName, and Port. You
13873	// can't specify both. For more information on creating this SecretsManagerSecret
13874	// and the SecretsManagerAccessRoleArn and SecretsManagerSecretId required to
13875	// access it, see Using secrets to access AWS Database Migration Service resources
13876	// (https://docs.aws.amazon.com/https:/docs.aws.amazon.com/dms/latest/userguide/CHAP_Security.html#security-iam-secretsmanager)
13877	// in the AWS Database Migration Service User Guide.
13878	SecretsManagerAccessRoleArn *string `type:"string"`
13879
13880	// The full ARN, partial ARN, or friendly name of the SecretsManagerSecret that
13881	// contains the MongoDB endpoint connection details.
13882	SecretsManagerSecretId *string `type:"string"`
13883
13884	// The name of the server on the MongoDB source endpoint.
13885	ServerName *string `type:"string"`
13886
13887	// The user name you use to access the MongoDB source endpoint.
13888	Username *string `type:"string"`
13889}
13890
13891// String returns the string representation
13892func (s MongoDbSettings) String() string {
13893	return awsutil.Prettify(s)
13894}
13895
13896// GoString returns the string representation
13897func (s MongoDbSettings) GoString() string {
13898	return s.String()
13899}
13900
13901// SetAuthMechanism sets the AuthMechanism field's value.
13902func (s *MongoDbSettings) SetAuthMechanism(v string) *MongoDbSettings {
13903	s.AuthMechanism = &v
13904	return s
13905}
13906
13907// SetAuthSource sets the AuthSource field's value.
13908func (s *MongoDbSettings) SetAuthSource(v string) *MongoDbSettings {
13909	s.AuthSource = &v
13910	return s
13911}
13912
13913// SetAuthType sets the AuthType field's value.
13914func (s *MongoDbSettings) SetAuthType(v string) *MongoDbSettings {
13915	s.AuthType = &v
13916	return s
13917}
13918
13919// SetDatabaseName sets the DatabaseName field's value.
13920func (s *MongoDbSettings) SetDatabaseName(v string) *MongoDbSettings {
13921	s.DatabaseName = &v
13922	return s
13923}
13924
13925// SetDocsToInvestigate sets the DocsToInvestigate field's value.
13926func (s *MongoDbSettings) SetDocsToInvestigate(v string) *MongoDbSettings {
13927	s.DocsToInvestigate = &v
13928	return s
13929}
13930
13931// SetExtractDocId sets the ExtractDocId field's value.
13932func (s *MongoDbSettings) SetExtractDocId(v string) *MongoDbSettings {
13933	s.ExtractDocId = &v
13934	return s
13935}
13936
13937// SetKmsKeyId sets the KmsKeyId field's value.
13938func (s *MongoDbSettings) SetKmsKeyId(v string) *MongoDbSettings {
13939	s.KmsKeyId = &v
13940	return s
13941}
13942
13943// SetNestingLevel sets the NestingLevel field's value.
13944func (s *MongoDbSettings) SetNestingLevel(v string) *MongoDbSettings {
13945	s.NestingLevel = &v
13946	return s
13947}
13948
13949// SetPassword sets the Password field's value.
13950func (s *MongoDbSettings) SetPassword(v string) *MongoDbSettings {
13951	s.Password = &v
13952	return s
13953}
13954
13955// SetPort sets the Port field's value.
13956func (s *MongoDbSettings) SetPort(v int64) *MongoDbSettings {
13957	s.Port = &v
13958	return s
13959}
13960
13961// SetSecretsManagerAccessRoleArn sets the SecretsManagerAccessRoleArn field's value.
13962func (s *MongoDbSettings) SetSecretsManagerAccessRoleArn(v string) *MongoDbSettings {
13963	s.SecretsManagerAccessRoleArn = &v
13964	return s
13965}
13966
13967// SetSecretsManagerSecretId sets the SecretsManagerSecretId field's value.
13968func (s *MongoDbSettings) SetSecretsManagerSecretId(v string) *MongoDbSettings {
13969	s.SecretsManagerSecretId = &v
13970	return s
13971}
13972
13973// SetServerName sets the ServerName field's value.
13974func (s *MongoDbSettings) SetServerName(v string) *MongoDbSettings {
13975	s.ServerName = &v
13976	return s
13977}
13978
13979// SetUsername sets the Username field's value.
13980func (s *MongoDbSettings) SetUsername(v string) *MongoDbSettings {
13981	s.Username = &v
13982	return s
13983}
13984
13985type MoveReplicationTaskInput struct {
13986	_ struct{} `type:"structure"`
13987
13988	// The Amazon Resource Name (ARN) of the task that you want to move.
13989	//
13990	// ReplicationTaskArn is a required field
13991	ReplicationTaskArn *string `type:"string" required:"true"`
13992
13993	// The ARN of the replication instance where you want to move the task to.
13994	//
13995	// TargetReplicationInstanceArn is a required field
13996	TargetReplicationInstanceArn *string `type:"string" required:"true"`
13997}
13998
13999// String returns the string representation
14000func (s MoveReplicationTaskInput) String() string {
14001	return awsutil.Prettify(s)
14002}
14003
14004// GoString returns the string representation
14005func (s MoveReplicationTaskInput) GoString() string {
14006	return s.String()
14007}
14008
14009// Validate inspects the fields of the type to determine if they are valid.
14010func (s *MoveReplicationTaskInput) Validate() error {
14011	invalidParams := request.ErrInvalidParams{Context: "MoveReplicationTaskInput"}
14012	if s.ReplicationTaskArn == nil {
14013		invalidParams.Add(request.NewErrParamRequired("ReplicationTaskArn"))
14014	}
14015	if s.TargetReplicationInstanceArn == nil {
14016		invalidParams.Add(request.NewErrParamRequired("TargetReplicationInstanceArn"))
14017	}
14018
14019	if invalidParams.Len() > 0 {
14020		return invalidParams
14021	}
14022	return nil
14023}
14024
14025// SetReplicationTaskArn sets the ReplicationTaskArn field's value.
14026func (s *MoveReplicationTaskInput) SetReplicationTaskArn(v string) *MoveReplicationTaskInput {
14027	s.ReplicationTaskArn = &v
14028	return s
14029}
14030
14031// SetTargetReplicationInstanceArn sets the TargetReplicationInstanceArn field's value.
14032func (s *MoveReplicationTaskInput) SetTargetReplicationInstanceArn(v string) *MoveReplicationTaskInput {
14033	s.TargetReplicationInstanceArn = &v
14034	return s
14035}
14036
14037type MoveReplicationTaskOutput struct {
14038	_ struct{} `type:"structure"`
14039
14040	// The replication task that was moved.
14041	ReplicationTask *ReplicationTask `type:"structure"`
14042}
14043
14044// String returns the string representation
14045func (s MoveReplicationTaskOutput) String() string {
14046	return awsutil.Prettify(s)
14047}
14048
14049// GoString returns the string representation
14050func (s MoveReplicationTaskOutput) GoString() string {
14051	return s.String()
14052}
14053
14054// SetReplicationTask sets the ReplicationTask field's value.
14055func (s *MoveReplicationTaskOutput) SetReplicationTask(v *ReplicationTask) *MoveReplicationTaskOutput {
14056	s.ReplicationTask = v
14057	return s
14058}
14059
14060// Provides information that defines a MySQL endpoint.
14061type MySQLSettings struct {
14062	_ struct{} `type:"structure"`
14063
14064	// Specifies a script to run immediately after AWS DMS connects to the endpoint.
14065	// The migration task continues running regardless if the SQL statement succeeds
14066	// or fails.
14067	AfterConnectScript *string `type:"string"`
14068
14069	// Adjusts the behavior of DMS when migrating from an SQL Server source database
14070	// that is hosted as part of an Always On availability group cluster. If you
14071	// need DMS to poll all the nodes in the Always On cluster for transaction backups,
14072	// set this attribute to false.
14073	CleanSourceMetadataOnMismatch *bool `type:"boolean"`
14074
14075	// Database name for the endpoint.
14076	DatabaseName *string `type:"string"`
14077
14078	// Specifies how often to check the binary log for new changes/events when the
14079	// database is idle.
14080	//
14081	// Example: eventsPollInterval=5;
14082	//
14083	// In the example, AWS DMS checks for changes in the binary logs every five
14084	// seconds.
14085	EventsPollInterval *int64 `type:"integer"`
14086
14087	// Specifies the maximum size (in KB) of any .csv file used to transfer data
14088	// to a MySQL-compatible database.
14089	//
14090	// Example: maxFileSize=512
14091	MaxFileSize *int64 `type:"integer"`
14092
14093	// Improves performance when loading data into the MySQL-compatible target database.
14094	// Specifies how many threads to use to load the data into the MySQL-compatible
14095	// target database. Setting a large number of threads can have an adverse effect
14096	// on database performance, because a separate connection is required for each
14097	// thread.
14098	//
14099	// Example: parallelLoadThreads=1
14100	ParallelLoadThreads *int64 `type:"integer"`
14101
14102	// Endpoint connection password.
14103	Password *string `type:"string" sensitive:"true"`
14104
14105	// Endpoint TCP port.
14106	Port *int64 `type:"integer"`
14107
14108	// The full Amazon Resource Name (ARN) of the IAM role that specifies AWS DMS
14109	// as the trusted entity and grants the required permissions to access the value
14110	// in SecretsManagerSecret. SecretsManagerSecret has the value of the AWS Secrets
14111	// Manager secret that allows access to the MySQL endpoint.
14112	//
14113	// You can specify one of two sets of values for these permissions. You can
14114	// specify the values for this setting and SecretsManagerSecretId. Or you can
14115	// specify clear-text values for UserName, Password, ServerName, and Port. You
14116	// can't specify both. For more information on creating this SecretsManagerSecret
14117	// and the SecretsManagerAccessRoleArn and SecretsManagerSecretId required to
14118	// access it, see Using secrets to access AWS Database Migration Service resources
14119	// (https://docs.aws.amazon.com/https:/docs.aws.amazon.com/dms/latest/userguide/CHAP_Security.html#security-iam-secretsmanager)
14120	// in the AWS Database Migration Service User Guide.
14121	SecretsManagerAccessRoleArn *string `type:"string"`
14122
14123	// The full ARN, partial ARN, or friendly name of the SecretsManagerSecret that
14124	// contains the MySQL endpoint connection details.
14125	SecretsManagerSecretId *string `type:"string"`
14126
14127	// Fully qualified domain name of the endpoint.
14128	ServerName *string `type:"string"`
14129
14130	// Specifies the time zone for the source MySQL database.
14131	//
14132	// Example: serverTimezone=US/Pacific;
14133	//
14134	// Note: Do not enclose time zones in single quotes.
14135	ServerTimezone *string `type:"string"`
14136
14137	// Specifies where to migrate source tables on the target, either to a single
14138	// database or multiple databases.
14139	//
14140	// Example: targetDbType=MULTIPLE_DATABASES
14141	TargetDbType *string `type:"string" enum:"TargetDbType"`
14142
14143	// Endpoint connection user name.
14144	Username *string `type:"string"`
14145}
14146
14147// String returns the string representation
14148func (s MySQLSettings) String() string {
14149	return awsutil.Prettify(s)
14150}
14151
14152// GoString returns the string representation
14153func (s MySQLSettings) GoString() string {
14154	return s.String()
14155}
14156
14157// SetAfterConnectScript sets the AfterConnectScript field's value.
14158func (s *MySQLSettings) SetAfterConnectScript(v string) *MySQLSettings {
14159	s.AfterConnectScript = &v
14160	return s
14161}
14162
14163// SetCleanSourceMetadataOnMismatch sets the CleanSourceMetadataOnMismatch field's value.
14164func (s *MySQLSettings) SetCleanSourceMetadataOnMismatch(v bool) *MySQLSettings {
14165	s.CleanSourceMetadataOnMismatch = &v
14166	return s
14167}
14168
14169// SetDatabaseName sets the DatabaseName field's value.
14170func (s *MySQLSettings) SetDatabaseName(v string) *MySQLSettings {
14171	s.DatabaseName = &v
14172	return s
14173}
14174
14175// SetEventsPollInterval sets the EventsPollInterval field's value.
14176func (s *MySQLSettings) SetEventsPollInterval(v int64) *MySQLSettings {
14177	s.EventsPollInterval = &v
14178	return s
14179}
14180
14181// SetMaxFileSize sets the MaxFileSize field's value.
14182func (s *MySQLSettings) SetMaxFileSize(v int64) *MySQLSettings {
14183	s.MaxFileSize = &v
14184	return s
14185}
14186
14187// SetParallelLoadThreads sets the ParallelLoadThreads field's value.
14188func (s *MySQLSettings) SetParallelLoadThreads(v int64) *MySQLSettings {
14189	s.ParallelLoadThreads = &v
14190	return s
14191}
14192
14193// SetPassword sets the Password field's value.
14194func (s *MySQLSettings) SetPassword(v string) *MySQLSettings {
14195	s.Password = &v
14196	return s
14197}
14198
14199// SetPort sets the Port field's value.
14200func (s *MySQLSettings) SetPort(v int64) *MySQLSettings {
14201	s.Port = &v
14202	return s
14203}
14204
14205// SetSecretsManagerAccessRoleArn sets the SecretsManagerAccessRoleArn field's value.
14206func (s *MySQLSettings) SetSecretsManagerAccessRoleArn(v string) *MySQLSettings {
14207	s.SecretsManagerAccessRoleArn = &v
14208	return s
14209}
14210
14211// SetSecretsManagerSecretId sets the SecretsManagerSecretId field's value.
14212func (s *MySQLSettings) SetSecretsManagerSecretId(v string) *MySQLSettings {
14213	s.SecretsManagerSecretId = &v
14214	return s
14215}
14216
14217// SetServerName sets the ServerName field's value.
14218func (s *MySQLSettings) SetServerName(v string) *MySQLSettings {
14219	s.ServerName = &v
14220	return s
14221}
14222
14223// SetServerTimezone sets the ServerTimezone field's value.
14224func (s *MySQLSettings) SetServerTimezone(v string) *MySQLSettings {
14225	s.ServerTimezone = &v
14226	return s
14227}
14228
14229// SetTargetDbType sets the TargetDbType field's value.
14230func (s *MySQLSettings) SetTargetDbType(v string) *MySQLSettings {
14231	s.TargetDbType = &v
14232	return s
14233}
14234
14235// SetUsername sets the Username field's value.
14236func (s *MySQLSettings) SetUsername(v string) *MySQLSettings {
14237	s.Username = &v
14238	return s
14239}
14240
14241// Provides information that defines an Amazon Neptune endpoint.
14242type NeptuneSettings struct {
14243	_ struct{} `type:"structure"`
14244
14245	// The number of milliseconds for AWS DMS to wait to retry a bulk-load of migrated
14246	// graph data to the Neptune target database before raising an error. The default
14247	// is 250.
14248	ErrorRetryDuration *int64 `type:"integer"`
14249
14250	// If you want AWS Identity and Access Management (IAM) authorization enabled
14251	// for this endpoint, set this parameter to true. Then attach the appropriate
14252	// IAM policy document to your service role specified by ServiceAccessRoleArn.
14253	// The default is false.
14254	IamAuthEnabled *bool `type:"boolean"`
14255
14256	// The maximum size in kilobytes of migrated graph data stored in a .csv file
14257	// before AWS DMS bulk-loads the data to the Neptune target database. The default
14258	// is 1,048,576 KB. If the bulk load is successful, AWS DMS clears the bucket,
14259	// ready to store the next batch of migrated graph data.
14260	MaxFileSize *int64 `type:"integer"`
14261
14262	// The number of times for AWS DMS to retry a bulk load of migrated graph data
14263	// to the Neptune target database before raising an error. The default is 5.
14264	MaxRetryCount *int64 `type:"integer"`
14265
14266	// A folder path where you want AWS DMS to store migrated graph data in the
14267	// S3 bucket specified by S3BucketName
14268	//
14269	// S3BucketFolder is a required field
14270	S3BucketFolder *string `type:"string" required:"true"`
14271
14272	// The name of the Amazon S3 bucket where AWS DMS can temporarily store migrated
14273	// graph data in .csv files before bulk-loading it to the Neptune target database.
14274	// AWS DMS maps the SQL source data to graph data before storing it in these
14275	// .csv files.
14276	//
14277	// S3BucketName is a required field
14278	S3BucketName *string `type:"string" required:"true"`
14279
14280	// The Amazon Resource Name (ARN) of the service role that you created for the
14281	// Neptune target endpoint. For more information, see Creating an IAM Service
14282	// Role for Accessing Amazon Neptune as a Target (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Neptune.html#CHAP_Target.Neptune.ServiceRole)
14283	// in the AWS Database Migration Service User Guide.
14284	ServiceAccessRoleArn *string `type:"string"`
14285}
14286
14287// String returns the string representation
14288func (s NeptuneSettings) String() string {
14289	return awsutil.Prettify(s)
14290}
14291
14292// GoString returns the string representation
14293func (s NeptuneSettings) GoString() string {
14294	return s.String()
14295}
14296
14297// Validate inspects the fields of the type to determine if they are valid.
14298func (s *NeptuneSettings) Validate() error {
14299	invalidParams := request.ErrInvalidParams{Context: "NeptuneSettings"}
14300	if s.S3BucketFolder == nil {
14301		invalidParams.Add(request.NewErrParamRequired("S3BucketFolder"))
14302	}
14303	if s.S3BucketName == nil {
14304		invalidParams.Add(request.NewErrParamRequired("S3BucketName"))
14305	}
14306
14307	if invalidParams.Len() > 0 {
14308		return invalidParams
14309	}
14310	return nil
14311}
14312
14313// SetErrorRetryDuration sets the ErrorRetryDuration field's value.
14314func (s *NeptuneSettings) SetErrorRetryDuration(v int64) *NeptuneSettings {
14315	s.ErrorRetryDuration = &v
14316	return s
14317}
14318
14319// SetIamAuthEnabled sets the IamAuthEnabled field's value.
14320func (s *NeptuneSettings) SetIamAuthEnabled(v bool) *NeptuneSettings {
14321	s.IamAuthEnabled = &v
14322	return s
14323}
14324
14325// SetMaxFileSize sets the MaxFileSize field's value.
14326func (s *NeptuneSettings) SetMaxFileSize(v int64) *NeptuneSettings {
14327	s.MaxFileSize = &v
14328	return s
14329}
14330
14331// SetMaxRetryCount sets the MaxRetryCount field's value.
14332func (s *NeptuneSettings) SetMaxRetryCount(v int64) *NeptuneSettings {
14333	s.MaxRetryCount = &v
14334	return s
14335}
14336
14337// SetS3BucketFolder sets the S3BucketFolder field's value.
14338func (s *NeptuneSettings) SetS3BucketFolder(v string) *NeptuneSettings {
14339	s.S3BucketFolder = &v
14340	return s
14341}
14342
14343// SetS3BucketName sets the S3BucketName field's value.
14344func (s *NeptuneSettings) SetS3BucketName(v string) *NeptuneSettings {
14345	s.S3BucketName = &v
14346	return s
14347}
14348
14349// SetServiceAccessRoleArn sets the ServiceAccessRoleArn field's value.
14350func (s *NeptuneSettings) SetServiceAccessRoleArn(v string) *NeptuneSettings {
14351	s.ServiceAccessRoleArn = &v
14352	return s
14353}
14354
14355// Provides information that defines an Oracle endpoint.
14356type OracleSettings struct {
14357	_ struct{} `type:"structure"`
14358
14359	// Set this attribute to false in order to use the Binary Reader to capture
14360	// change data for an Amazon RDS for Oracle as the source. This tells the DMS
14361	// instance to not access redo logs through any specified path prefix replacement
14362	// using direct file access.
14363	AccessAlternateDirectly *bool `type:"boolean"`
14364
14365	// Set this attribute to set up table-level supplemental logging for the Oracle
14366	// database. This attribute enables PRIMARY KEY supplemental logging on all
14367	// tables selected for a migration task.
14368	//
14369	// If you use this option, you still need to enable database-level supplemental
14370	// logging.
14371	AddSupplementalLogging *bool `type:"boolean"`
14372
14373	// Set this attribute with archivedLogDestId in a primary/ standby setup. This
14374	// attribute is useful in the case of a switchover. In this case, AWS DMS needs
14375	// to know which destination to get archive redo logs from to read changes.
14376	// This need arises because the previous primary instance is now a standby instance
14377	// after switchover.
14378	AdditionalArchivedLogDestId *int64 `type:"integer"`
14379
14380	// Set this attribute to true to enable replication of Oracle tables containing
14381	// columns that are nested tables or defined types.
14382	AllowSelectNestedTables *bool `type:"boolean"`
14383
14384	// Specifies the destination of the archived redo logs. The value should be
14385	// the same as the DEST_ID number in the v$archived_log table. When working
14386	// with multiple log destinations (DEST_ID), we recommend that you to specify
14387	// an archived redo logs location identifier. Doing this improves performance
14388	// by ensuring that the correct logs are accessed from the outset.
14389	ArchivedLogDestId *int64 `type:"integer"`
14390
14391	// When this field is set to Y, AWS DMS only accesses the archived redo logs.
14392	// If the archived redo logs are stored on Oracle ASM only, the AWS DMS user
14393	// account needs to be granted ASM privileges.
14394	ArchivedLogsOnly *bool `type:"boolean"`
14395
14396	// For an Oracle source endpoint, your Oracle Automatic Storage Management (ASM)
14397	// password. You can set this value from the asm_user_password value. You set
14398	// this value as part of the comma-separated value that you set to the Password
14399	// request parameter when you create the endpoint to access transaction logs
14400	// using Binary Reader. For more information, see Configuration for change data
14401	// capture (CDC) on an Oracle source database (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.CDC.Configuration).
14402	AsmPassword *string `type:"string" sensitive:"true"`
14403
14404	// For an Oracle source endpoint, your ASM server address. You can set this
14405	// value from the asm_server value. You set asm_server as part of the extra
14406	// connection attribute string to access an Oracle server with Binary Reader
14407	// that uses ASM. For more information, see Configuration for change data capture
14408	// (CDC) on an Oracle source database (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.CDC.Configuration).
14409	AsmServer *string `type:"string"`
14410
14411	// For an Oracle source endpoint, your ASM user name. You can set this value
14412	// from the asm_user value. You set asm_user as part of the extra connection
14413	// attribute string to access an Oracle server with Binary Reader that uses
14414	// ASM. For more information, see Configuration for change data capture (CDC)
14415	// on an Oracle source database (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.CDC.Configuration).
14416	AsmUser *string `type:"string"`
14417
14418	// Specifies whether the length of a character column is in bytes or in characters.
14419	// To indicate that the character column length is in characters, set this attribute
14420	// to CHAR. Otherwise, the character column length is in bytes.
14421	//
14422	// Example: charLengthSemantics=CHAR;
14423	CharLengthSemantics *string `type:"string" enum:"CharLengthSemantics"`
14424
14425	// Database name for the endpoint.
14426	DatabaseName *string `type:"string"`
14427
14428	// When set to true, this attribute helps to increase the commit rate on the
14429	// Oracle target database by writing directly to tables and not writing a trail
14430	// to database logs.
14431	DirectPathNoLog *bool `type:"boolean"`
14432
14433	// When set to true, this attribute specifies a parallel load when useDirectPathFullLoad
14434	// is set to Y. This attribute also only applies when you use the AWS DMS parallel
14435	// load feature. Note that the target table cannot have any constraints or indexes.
14436	DirectPathParallelLoad *bool `type:"boolean"`
14437
14438	// Set this attribute to enable homogenous tablespace replication and create
14439	// existing tables or indexes under the same tablespace on the target.
14440	EnableHomogenousTablespace *bool `type:"boolean"`
14441
14442	// When set to true, this attribute causes a task to fail if the actual size
14443	// of an LOB column is greater than the specified LobMaxSize.
14444	//
14445	// If a task is set to limited LOB mode and this option is set to true, the
14446	// task fails instead of truncating the LOB data.
14447	FailTasksOnLobTruncation *bool `type:"boolean"`
14448
14449	// Specifies the number scale. You can select a scale up to 38, or you can select
14450	// FLOAT. By default, the NUMBER data type is converted to precision 38, scale
14451	// 10.
14452	//
14453	// Example: numberDataTypeScale=12
14454	NumberDatatypeScale *int64 `type:"integer"`
14455
14456	// Set this string attribute to the required value in order to use the Binary
14457	// Reader to capture change data for an Amazon RDS for Oracle as the source.
14458	// This value specifies the default Oracle root used to access the redo logs.
14459	OraclePathPrefix *string `type:"string"`
14460
14461	// Set this attribute to change the number of threads that DMS configures to
14462	// perform a Change Data Capture (CDC) load using Oracle Automatic Storage Management
14463	// (ASM). You can specify an integer value between 2 (the default) and 8 (the
14464	// maximum). Use this attribute together with the readAheadBlocks attribute.
14465	ParallelAsmReadThreads *int64 `type:"integer"`
14466
14467	// Endpoint connection password.
14468	Password *string `type:"string" sensitive:"true"`
14469
14470	// Endpoint TCP port.
14471	Port *int64 `type:"integer"`
14472
14473	// Set this attribute to change the number of read-ahead blocks that DMS configures
14474	// to perform a Change Data Capture (CDC) load using Oracle Automatic Storage
14475	// Management (ASM). You can specify an integer value between 1000 (the default)
14476	// and 200,000 (the maximum).
14477	ReadAheadBlocks *int64 `type:"integer"`
14478
14479	// When set to true, this attribute supports tablespace replication.
14480	ReadTableSpaceName *bool `type:"boolean"`
14481
14482	// Set this attribute to true in order to use the Binary Reader to capture change
14483	// data for an Amazon RDS for Oracle as the source. This setting tells DMS instance
14484	// to replace the default Oracle root with the specified usePathPrefix setting
14485	// to access the redo logs.
14486	ReplacePathPrefix *bool `type:"boolean"`
14487
14488	// Specifies the number of seconds that the system waits before resending a
14489	// query.
14490	//
14491	// Example: retryInterval=6;
14492	RetryInterval *int64 `type:"integer"`
14493
14494	// The full Amazon Resource Name (ARN) of the IAM role that specifies AWS DMS
14495	// as the trusted entity and grants the required permissions to access the value
14496	// in SecretsManagerSecret. SecretsManagerSecret has the value of the AWS Secrets
14497	// Manager secret that allows access to the Oracle endpoint.
14498	//
14499	// You can specify one of two sets of values for these permissions. You can
14500	// specify the values for this setting and SecretsManagerSecretId. Or you can
14501	// specify clear-text values for UserName, Password, ServerName, and Port. You
14502	// can't specify both. For more information on creating this SecretsManagerSecret
14503	// and the SecretsManagerAccessRoleArn and SecretsManagerSecretId required to
14504	// access it, see Using secrets to access AWS Database Migration Service resources
14505	// (https://docs.aws.amazon.com/https:/docs.aws.amazon.com/dms/latest/userguide/CHAP_Security.html#security-iam-secretsmanager)
14506	// in the AWS Database Migration Service User Guide.
14507	SecretsManagerAccessRoleArn *string `type:"string"`
14508
14509	// Required only if your Oracle endpoint uses Advanced Storage Manager (ASM).
14510	// The full ARN of the IAM role that specifies AWS DMS as the trusted entity
14511	// and grants the required permissions to access the SecretsManagerOracleAsmSecret.
14512	// This SecretsManagerOracleAsmSecret has the secret value that allows access
14513	// to the Oracle ASM of the endpoint.
14514	//
14515	// You can specify one of two sets of values for these permissions. You can
14516	// specify the values for this setting and SecretsManagerOracleAsmSecretId.
14517	// Or you can specify clear-text values for AsmUserName, AsmPassword, and AsmServerName.
14518	// You can't specify both. For more information on creating this SecretsManagerOracleAsmSecret
14519	// and the SecretsManagerOracleAsmAccessRoleArn and SecretsManagerOracleAsmSecretId
14520	// required to access it, see Using secrets to access AWS Database Migration
14521	// Service resources (https://docs.aws.amazon.com/https:/docs.aws.amazon.com/dms/latest/userguide/CHAP_Security.html#security-iam-secretsmanager)
14522	// in the AWS Database Migration Service User Guide.
14523	SecretsManagerOracleAsmAccessRoleArn *string `type:"string"`
14524
14525	// Required only if your Oracle endpoint uses Advanced Storage Manager (ASM).
14526	// The full ARN, partial ARN, or friendly name of the SecretsManagerOracleAsmSecret
14527	// that contains the Oracle ASM connection details for the Oracle endpoint.
14528	SecretsManagerOracleAsmSecretId *string `type:"string"`
14529
14530	// The full ARN, partial ARN, or friendly name of the SecretsManagerSecret that
14531	// contains the Oracle endpoint connection details.
14532	SecretsManagerSecretId *string `type:"string"`
14533
14534	// For an Oracle source endpoint, the transparent data encryption (TDE) password
14535	// required by AWM DMS to access Oracle redo logs encrypted by TDE using Binary
14536	// Reader. It is also the TDE_Password part of the comma-separated value you
14537	// set to the Password request parameter when you create the endpoint. The SecurityDbEncryptian
14538	// setting is related to this SecurityDbEncryptionName setting. For more information,
14539	// see Supported encryption methods for using Oracle as a source for AWS DMS
14540	// (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.Encryption)
14541	// in the AWS Database Migration Service User Guide.
14542	SecurityDbEncryption *string `type:"string" sensitive:"true"`
14543
14544	// For an Oracle source endpoint, the name of a key used for the transparent
14545	// data encryption (TDE) of the columns and tablespaces in an Oracle source
14546	// database that is encrypted using TDE. The key value is the value of the SecurityDbEncryption
14547	// setting. For more information on setting the key name value of SecurityDbEncryptionName,
14548	// see the information and example for setting the securityDbEncryptionName
14549	// extra connection attribute in Supported encryption methods for using Oracle
14550	// as a source for AWS DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.Encryption)
14551	// in the AWS Database Migration Service User Guide.
14552	SecurityDbEncryptionName *string `type:"string"`
14553
14554	// Fully qualified domain name of the endpoint.
14555	ServerName *string `type:"string"`
14556
14557	// Use this attribute to convert SDO_GEOMETRY to GEOJSON format. By default,
14558	// DMS calls the SDO2GEOJSON custom function if present and accessible. Or you
14559	// can create your own custom function that mimics the operation of SDOGEOJSON
14560	// and set SpatialDataOptionToGeoJsonFunctionName to call it instead.
14561	SpatialDataOptionToGeoJsonFunctionName *string `type:"string"`
14562
14563	// Set this attribute to true in order to use the Binary Reader to capture change
14564	// data for an Amazon RDS for Oracle as the source. This tells the DMS instance
14565	// to use any specified prefix replacement to access all online redo logs.
14566	UseAlternateFolderForOnline *bool `type:"boolean"`
14567
14568	// Set this string attribute to the required value in order to use the Binary
14569	// Reader to capture change data for an Amazon RDS for Oracle as the source.
14570	// This value specifies the path prefix used to replace the default Oracle root
14571	// to access the redo logs.
14572	UsePathPrefix *string `type:"string"`
14573
14574	// Endpoint connection user name.
14575	Username *string `type:"string"`
14576}
14577
14578// String returns the string representation
14579func (s OracleSettings) String() string {
14580	return awsutil.Prettify(s)
14581}
14582
14583// GoString returns the string representation
14584func (s OracleSettings) GoString() string {
14585	return s.String()
14586}
14587
14588// SetAccessAlternateDirectly sets the AccessAlternateDirectly field's value.
14589func (s *OracleSettings) SetAccessAlternateDirectly(v bool) *OracleSettings {
14590	s.AccessAlternateDirectly = &v
14591	return s
14592}
14593
14594// SetAddSupplementalLogging sets the AddSupplementalLogging field's value.
14595func (s *OracleSettings) SetAddSupplementalLogging(v bool) *OracleSettings {
14596	s.AddSupplementalLogging = &v
14597	return s
14598}
14599
14600// SetAdditionalArchivedLogDestId sets the AdditionalArchivedLogDestId field's value.
14601func (s *OracleSettings) SetAdditionalArchivedLogDestId(v int64) *OracleSettings {
14602	s.AdditionalArchivedLogDestId = &v
14603	return s
14604}
14605
14606// SetAllowSelectNestedTables sets the AllowSelectNestedTables field's value.
14607func (s *OracleSettings) SetAllowSelectNestedTables(v bool) *OracleSettings {
14608	s.AllowSelectNestedTables = &v
14609	return s
14610}
14611
14612// SetArchivedLogDestId sets the ArchivedLogDestId field's value.
14613func (s *OracleSettings) SetArchivedLogDestId(v int64) *OracleSettings {
14614	s.ArchivedLogDestId = &v
14615	return s
14616}
14617
14618// SetArchivedLogsOnly sets the ArchivedLogsOnly field's value.
14619func (s *OracleSettings) SetArchivedLogsOnly(v bool) *OracleSettings {
14620	s.ArchivedLogsOnly = &v
14621	return s
14622}
14623
14624// SetAsmPassword sets the AsmPassword field's value.
14625func (s *OracleSettings) SetAsmPassword(v string) *OracleSettings {
14626	s.AsmPassword = &v
14627	return s
14628}
14629
14630// SetAsmServer sets the AsmServer field's value.
14631func (s *OracleSettings) SetAsmServer(v string) *OracleSettings {
14632	s.AsmServer = &v
14633	return s
14634}
14635
14636// SetAsmUser sets the AsmUser field's value.
14637func (s *OracleSettings) SetAsmUser(v string) *OracleSettings {
14638	s.AsmUser = &v
14639	return s
14640}
14641
14642// SetCharLengthSemantics sets the CharLengthSemantics field's value.
14643func (s *OracleSettings) SetCharLengthSemantics(v string) *OracleSettings {
14644	s.CharLengthSemantics = &v
14645	return s
14646}
14647
14648// SetDatabaseName sets the DatabaseName field's value.
14649func (s *OracleSettings) SetDatabaseName(v string) *OracleSettings {
14650	s.DatabaseName = &v
14651	return s
14652}
14653
14654// SetDirectPathNoLog sets the DirectPathNoLog field's value.
14655func (s *OracleSettings) SetDirectPathNoLog(v bool) *OracleSettings {
14656	s.DirectPathNoLog = &v
14657	return s
14658}
14659
14660// SetDirectPathParallelLoad sets the DirectPathParallelLoad field's value.
14661func (s *OracleSettings) SetDirectPathParallelLoad(v bool) *OracleSettings {
14662	s.DirectPathParallelLoad = &v
14663	return s
14664}
14665
14666// SetEnableHomogenousTablespace sets the EnableHomogenousTablespace field's value.
14667func (s *OracleSettings) SetEnableHomogenousTablespace(v bool) *OracleSettings {
14668	s.EnableHomogenousTablespace = &v
14669	return s
14670}
14671
14672// SetFailTasksOnLobTruncation sets the FailTasksOnLobTruncation field's value.
14673func (s *OracleSettings) SetFailTasksOnLobTruncation(v bool) *OracleSettings {
14674	s.FailTasksOnLobTruncation = &v
14675	return s
14676}
14677
14678// SetNumberDatatypeScale sets the NumberDatatypeScale field's value.
14679func (s *OracleSettings) SetNumberDatatypeScale(v int64) *OracleSettings {
14680	s.NumberDatatypeScale = &v
14681	return s
14682}
14683
14684// SetOraclePathPrefix sets the OraclePathPrefix field's value.
14685func (s *OracleSettings) SetOraclePathPrefix(v string) *OracleSettings {
14686	s.OraclePathPrefix = &v
14687	return s
14688}
14689
14690// SetParallelAsmReadThreads sets the ParallelAsmReadThreads field's value.
14691func (s *OracleSettings) SetParallelAsmReadThreads(v int64) *OracleSettings {
14692	s.ParallelAsmReadThreads = &v
14693	return s
14694}
14695
14696// SetPassword sets the Password field's value.
14697func (s *OracleSettings) SetPassword(v string) *OracleSettings {
14698	s.Password = &v
14699	return s
14700}
14701
14702// SetPort sets the Port field's value.
14703func (s *OracleSettings) SetPort(v int64) *OracleSettings {
14704	s.Port = &v
14705	return s
14706}
14707
14708// SetReadAheadBlocks sets the ReadAheadBlocks field's value.
14709func (s *OracleSettings) SetReadAheadBlocks(v int64) *OracleSettings {
14710	s.ReadAheadBlocks = &v
14711	return s
14712}
14713
14714// SetReadTableSpaceName sets the ReadTableSpaceName field's value.
14715func (s *OracleSettings) SetReadTableSpaceName(v bool) *OracleSettings {
14716	s.ReadTableSpaceName = &v
14717	return s
14718}
14719
14720// SetReplacePathPrefix sets the ReplacePathPrefix field's value.
14721func (s *OracleSettings) SetReplacePathPrefix(v bool) *OracleSettings {
14722	s.ReplacePathPrefix = &v
14723	return s
14724}
14725
14726// SetRetryInterval sets the RetryInterval field's value.
14727func (s *OracleSettings) SetRetryInterval(v int64) *OracleSettings {
14728	s.RetryInterval = &v
14729	return s
14730}
14731
14732// SetSecretsManagerAccessRoleArn sets the SecretsManagerAccessRoleArn field's value.
14733func (s *OracleSettings) SetSecretsManagerAccessRoleArn(v string) *OracleSettings {
14734	s.SecretsManagerAccessRoleArn = &v
14735	return s
14736}
14737
14738// SetSecretsManagerOracleAsmAccessRoleArn sets the SecretsManagerOracleAsmAccessRoleArn field's value.
14739func (s *OracleSettings) SetSecretsManagerOracleAsmAccessRoleArn(v string) *OracleSettings {
14740	s.SecretsManagerOracleAsmAccessRoleArn = &v
14741	return s
14742}
14743
14744// SetSecretsManagerOracleAsmSecretId sets the SecretsManagerOracleAsmSecretId field's value.
14745func (s *OracleSettings) SetSecretsManagerOracleAsmSecretId(v string) *OracleSettings {
14746	s.SecretsManagerOracleAsmSecretId = &v
14747	return s
14748}
14749
14750// SetSecretsManagerSecretId sets the SecretsManagerSecretId field's value.
14751func (s *OracleSettings) SetSecretsManagerSecretId(v string) *OracleSettings {
14752	s.SecretsManagerSecretId = &v
14753	return s
14754}
14755
14756// SetSecurityDbEncryption sets the SecurityDbEncryption field's value.
14757func (s *OracleSettings) SetSecurityDbEncryption(v string) *OracleSettings {
14758	s.SecurityDbEncryption = &v
14759	return s
14760}
14761
14762// SetSecurityDbEncryptionName sets the SecurityDbEncryptionName field's value.
14763func (s *OracleSettings) SetSecurityDbEncryptionName(v string) *OracleSettings {
14764	s.SecurityDbEncryptionName = &v
14765	return s
14766}
14767
14768// SetServerName sets the ServerName field's value.
14769func (s *OracleSettings) SetServerName(v string) *OracleSettings {
14770	s.ServerName = &v
14771	return s
14772}
14773
14774// SetSpatialDataOptionToGeoJsonFunctionName sets the SpatialDataOptionToGeoJsonFunctionName field's value.
14775func (s *OracleSettings) SetSpatialDataOptionToGeoJsonFunctionName(v string) *OracleSettings {
14776	s.SpatialDataOptionToGeoJsonFunctionName = &v
14777	return s
14778}
14779
14780// SetUseAlternateFolderForOnline sets the UseAlternateFolderForOnline field's value.
14781func (s *OracleSettings) SetUseAlternateFolderForOnline(v bool) *OracleSettings {
14782	s.UseAlternateFolderForOnline = &v
14783	return s
14784}
14785
14786// SetUsePathPrefix sets the UsePathPrefix field's value.
14787func (s *OracleSettings) SetUsePathPrefix(v string) *OracleSettings {
14788	s.UsePathPrefix = &v
14789	return s
14790}
14791
14792// SetUsername sets the Username field's value.
14793func (s *OracleSettings) SetUsername(v string) *OracleSettings {
14794	s.Username = &v
14795	return s
14796}
14797
14798// In response to the DescribeOrderableReplicationInstances operation, this
14799// object describes an available replication instance. This description includes
14800// the replication instance's type, engine version, and allocated storage.
14801type OrderableReplicationInstance struct {
14802	_ struct{} `type:"structure"`
14803
14804	// List of Availability Zones for this replication instance.
14805	AvailabilityZones []*string `type:"list"`
14806
14807	// The default amount of storage (in gigabytes) that is allocated for the replication
14808	// instance.
14809	DefaultAllocatedStorage *int64 `type:"integer"`
14810
14811	// The version of the replication engine.
14812	EngineVersion *string `type:"string"`
14813
14814	// The amount of storage (in gigabytes) that is allocated for the replication
14815	// instance.
14816	IncludedAllocatedStorage *int64 `type:"integer"`
14817
14818	// The minimum amount of storage (in gigabytes) that can be allocated for the
14819	// replication instance.
14820	MaxAllocatedStorage *int64 `type:"integer"`
14821
14822	// The minimum amount of storage (in gigabytes) that can be allocated for the
14823	// replication instance.
14824	MinAllocatedStorage *int64 `type:"integer"`
14825
14826	// The value returned when the specified EngineVersion of the replication instance
14827	// is in Beta or test mode. This indicates some features might not work as expected.
14828	//
14829	// AWS DMS supports the ReleaseStatus parameter in versions 3.1.4 and later.
14830	ReleaseStatus *string `type:"string" enum:"ReleaseStatusValues"`
14831
14832	// The compute and memory capacity of the replication instance as defined for
14833	// the specified replication instance class. For example to specify the instance
14834	// class dms.c4.large, set this parameter to "dms.c4.large".
14835	//
14836	// For more information on the settings and capacities for the available replication
14837	// instance classes, see Selecting the right AWS DMS replication instance for
14838	// your migration (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_ReplicationInstance.html#CHAP_ReplicationInstance.InDepth).
14839	ReplicationInstanceClass *string `type:"string"`
14840
14841	// The type of storage used by the replication instance.
14842	StorageType *string `type:"string"`
14843}
14844
14845// String returns the string representation
14846func (s OrderableReplicationInstance) String() string {
14847	return awsutil.Prettify(s)
14848}
14849
14850// GoString returns the string representation
14851func (s OrderableReplicationInstance) GoString() string {
14852	return s.String()
14853}
14854
14855// SetAvailabilityZones sets the AvailabilityZones field's value.
14856func (s *OrderableReplicationInstance) SetAvailabilityZones(v []*string) *OrderableReplicationInstance {
14857	s.AvailabilityZones = v
14858	return s
14859}
14860
14861// SetDefaultAllocatedStorage sets the DefaultAllocatedStorage field's value.
14862func (s *OrderableReplicationInstance) SetDefaultAllocatedStorage(v int64) *OrderableReplicationInstance {
14863	s.DefaultAllocatedStorage = &v
14864	return s
14865}
14866
14867// SetEngineVersion sets the EngineVersion field's value.
14868func (s *OrderableReplicationInstance) SetEngineVersion(v string) *OrderableReplicationInstance {
14869	s.EngineVersion = &v
14870	return s
14871}
14872
14873// SetIncludedAllocatedStorage sets the IncludedAllocatedStorage field's value.
14874func (s *OrderableReplicationInstance) SetIncludedAllocatedStorage(v int64) *OrderableReplicationInstance {
14875	s.IncludedAllocatedStorage = &v
14876	return s
14877}
14878
14879// SetMaxAllocatedStorage sets the MaxAllocatedStorage field's value.
14880func (s *OrderableReplicationInstance) SetMaxAllocatedStorage(v int64) *OrderableReplicationInstance {
14881	s.MaxAllocatedStorage = &v
14882	return s
14883}
14884
14885// SetMinAllocatedStorage sets the MinAllocatedStorage field's value.
14886func (s *OrderableReplicationInstance) SetMinAllocatedStorage(v int64) *OrderableReplicationInstance {
14887	s.MinAllocatedStorage = &v
14888	return s
14889}
14890
14891// SetReleaseStatus sets the ReleaseStatus field's value.
14892func (s *OrderableReplicationInstance) SetReleaseStatus(v string) *OrderableReplicationInstance {
14893	s.ReleaseStatus = &v
14894	return s
14895}
14896
14897// SetReplicationInstanceClass sets the ReplicationInstanceClass field's value.
14898func (s *OrderableReplicationInstance) SetReplicationInstanceClass(v string) *OrderableReplicationInstance {
14899	s.ReplicationInstanceClass = &v
14900	return s
14901}
14902
14903// SetStorageType sets the StorageType field's value.
14904func (s *OrderableReplicationInstance) SetStorageType(v string) *OrderableReplicationInstance {
14905	s.StorageType = &v
14906	return s
14907}
14908
14909// Describes a maintenance action pending for an AWS DMS resource, including
14910// when and how it will be applied. This data type is a response element to
14911// the DescribePendingMaintenanceActions operation.
14912type PendingMaintenanceAction struct {
14913	_ struct{} `type:"structure"`
14914
14915	// The type of pending maintenance action that is available for the resource.
14916	Action *string `type:"string"`
14917
14918	// The date of the maintenance window when the action is to be applied. The
14919	// maintenance action is applied to the resource during its first maintenance
14920	// window after this date. If this date is specified, any next-maintenance opt-in
14921	// requests are ignored.
14922	AutoAppliedAfterDate *time.Time `type:"timestamp"`
14923
14924	// The effective date when the pending maintenance action will be applied to
14925	// the resource. This date takes into account opt-in requests received from
14926	// the ApplyPendingMaintenanceAction API operation, and also the AutoAppliedAfterDate
14927	// and ForcedApplyDate parameter values. This value is blank if an opt-in request
14928	// has not been received and nothing has been specified for AutoAppliedAfterDate
14929	// or ForcedApplyDate.
14930	CurrentApplyDate *time.Time `type:"timestamp"`
14931
14932	// A description providing more detail about the maintenance action.
14933	Description *string `type:"string"`
14934
14935	// The date when the maintenance action will be automatically applied. The maintenance
14936	// action is applied to the resource on this date regardless of the maintenance
14937	// window for the resource. If this date is specified, any immediate opt-in
14938	// requests are ignored.
14939	ForcedApplyDate *time.Time `type:"timestamp"`
14940
14941	// The type of opt-in request that has been received for the resource.
14942	OptInStatus *string `type:"string"`
14943}
14944
14945// String returns the string representation
14946func (s PendingMaintenanceAction) String() string {
14947	return awsutil.Prettify(s)
14948}
14949
14950// GoString returns the string representation
14951func (s PendingMaintenanceAction) GoString() string {
14952	return s.String()
14953}
14954
14955// SetAction sets the Action field's value.
14956func (s *PendingMaintenanceAction) SetAction(v string) *PendingMaintenanceAction {
14957	s.Action = &v
14958	return s
14959}
14960
14961// SetAutoAppliedAfterDate sets the AutoAppliedAfterDate field's value.
14962func (s *PendingMaintenanceAction) SetAutoAppliedAfterDate(v time.Time) *PendingMaintenanceAction {
14963	s.AutoAppliedAfterDate = &v
14964	return s
14965}
14966
14967// SetCurrentApplyDate sets the CurrentApplyDate field's value.
14968func (s *PendingMaintenanceAction) SetCurrentApplyDate(v time.Time) *PendingMaintenanceAction {
14969	s.CurrentApplyDate = &v
14970	return s
14971}
14972
14973// SetDescription sets the Description field's value.
14974func (s *PendingMaintenanceAction) SetDescription(v string) *PendingMaintenanceAction {
14975	s.Description = &v
14976	return s
14977}
14978
14979// SetForcedApplyDate sets the ForcedApplyDate field's value.
14980func (s *PendingMaintenanceAction) SetForcedApplyDate(v time.Time) *PendingMaintenanceAction {
14981	s.ForcedApplyDate = &v
14982	return s
14983}
14984
14985// SetOptInStatus sets the OptInStatus field's value.
14986func (s *PendingMaintenanceAction) SetOptInStatus(v string) *PendingMaintenanceAction {
14987	s.OptInStatus = &v
14988	return s
14989}
14990
14991// Provides information that defines a PostgreSQL endpoint.
14992type PostgreSQLSettings struct {
14993	_ struct{} `type:"structure"`
14994
14995	// For use with change data capture (CDC) only, this attribute has AWS DMS bypass
14996	// foreign keys and user triggers to reduce the time it takes to bulk load data.
14997	//
14998	// Example: afterConnectScript=SET session_replication_role='replica'
14999	AfterConnectScript *string `type:"string"`
15000
15001	// To capture DDL events, AWS DMS creates various artifacts in the PostgreSQL
15002	// database when the task starts. You can later remove these artifacts.
15003	//
15004	// If this value is set to N, you don't have to create tables or triggers on
15005	// the source database.
15006	CaptureDdls *bool `type:"boolean"`
15007
15008	// Database name for the endpoint.
15009	DatabaseName *string `type:"string"`
15010
15011	// The schema in which the operational DDL database artifacts are created.
15012	//
15013	// Example: ddlArtifactsSchema=xyzddlschema;
15014	DdlArtifactsSchema *string `type:"string"`
15015
15016	// Sets the client statement timeout for the PostgreSQL instance, in seconds.
15017	// The default value is 60 seconds.
15018	//
15019	// Example: executeTimeout=100;
15020	ExecuteTimeout *int64 `type:"integer"`
15021
15022	// When set to true, this value causes a task to fail if the actual size of
15023	// a LOB column is greater than the specified LobMaxSize.
15024	//
15025	// If task is set to Limited LOB mode and this option is set to true, the task
15026	// fails instead of truncating the LOB data.
15027	FailTasksOnLobTruncation *bool `type:"boolean"`
15028
15029	// Specifies the maximum size (in KB) of any .csv file used to transfer data
15030	// to PostgreSQL.
15031	//
15032	// Example: maxFileSize=512
15033	MaxFileSize *int64 `type:"integer"`
15034
15035	// Endpoint connection password.
15036	Password *string `type:"string" sensitive:"true"`
15037
15038	// Endpoint TCP port.
15039	Port *int64 `type:"integer"`
15040
15041	// The full Amazon Resource Name (ARN) of the IAM role that specifies AWS DMS
15042	// as the trusted entity and grants the required permissions to access the value
15043	// in SecretsManagerSecret. SecretsManagerSecret has the value of the AWS Secrets
15044	// Manager secret that allows access to the PostgreSQL endpoint.
15045	//
15046	// You can specify one of two sets of values for these permissions. You can
15047	// specify the values for this setting and SecretsManagerSecretId. Or you can
15048	// specify clear-text values for UserName, Password, ServerName, and Port. You
15049	// can't specify both. For more information on creating this SecretsManagerSecret
15050	// and the SecretsManagerAccessRoleArn and SecretsManagerSecretId required to
15051	// access it, see Using secrets to access AWS Database Migration Service resources
15052	// (https://docs.aws.amazon.com/https:/docs.aws.amazon.com/dms/latest/userguide/CHAP_Security.html#security-iam-secretsmanager)
15053	// in the AWS Database Migration Service User Guide.
15054	SecretsManagerAccessRoleArn *string `type:"string"`
15055
15056	// The full ARN, partial ARN, or friendly name of the SecretsManagerSecret that
15057	// contains the PostgreSQL endpoint connection details.
15058	SecretsManagerSecretId *string `type:"string"`
15059
15060	// Fully qualified domain name of the endpoint.
15061	ServerName *string `type:"string"`
15062
15063	// Sets the name of a previously created logical replication slot for a CDC
15064	// load of the PostgreSQL source instance.
15065	//
15066	// When used with the AWS DMS API CdcStartPosition request parameter, this attribute
15067	// also enables using native CDC start points.
15068	SlotName *string `type:"string"`
15069
15070	// Endpoint connection user name.
15071	Username *string `type:"string"`
15072}
15073
15074// String returns the string representation
15075func (s PostgreSQLSettings) String() string {
15076	return awsutil.Prettify(s)
15077}
15078
15079// GoString returns the string representation
15080func (s PostgreSQLSettings) GoString() string {
15081	return s.String()
15082}
15083
15084// SetAfterConnectScript sets the AfterConnectScript field's value.
15085func (s *PostgreSQLSettings) SetAfterConnectScript(v string) *PostgreSQLSettings {
15086	s.AfterConnectScript = &v
15087	return s
15088}
15089
15090// SetCaptureDdls sets the CaptureDdls field's value.
15091func (s *PostgreSQLSettings) SetCaptureDdls(v bool) *PostgreSQLSettings {
15092	s.CaptureDdls = &v
15093	return s
15094}
15095
15096// SetDatabaseName sets the DatabaseName field's value.
15097func (s *PostgreSQLSettings) SetDatabaseName(v string) *PostgreSQLSettings {
15098	s.DatabaseName = &v
15099	return s
15100}
15101
15102// SetDdlArtifactsSchema sets the DdlArtifactsSchema field's value.
15103func (s *PostgreSQLSettings) SetDdlArtifactsSchema(v string) *PostgreSQLSettings {
15104	s.DdlArtifactsSchema = &v
15105	return s
15106}
15107
15108// SetExecuteTimeout sets the ExecuteTimeout field's value.
15109func (s *PostgreSQLSettings) SetExecuteTimeout(v int64) *PostgreSQLSettings {
15110	s.ExecuteTimeout = &v
15111	return s
15112}
15113
15114// SetFailTasksOnLobTruncation sets the FailTasksOnLobTruncation field's value.
15115func (s *PostgreSQLSettings) SetFailTasksOnLobTruncation(v bool) *PostgreSQLSettings {
15116	s.FailTasksOnLobTruncation = &v
15117	return s
15118}
15119
15120// SetMaxFileSize sets the MaxFileSize field's value.
15121func (s *PostgreSQLSettings) SetMaxFileSize(v int64) *PostgreSQLSettings {
15122	s.MaxFileSize = &v
15123	return s
15124}
15125
15126// SetPassword sets the Password field's value.
15127func (s *PostgreSQLSettings) SetPassword(v string) *PostgreSQLSettings {
15128	s.Password = &v
15129	return s
15130}
15131
15132// SetPort sets the Port field's value.
15133func (s *PostgreSQLSettings) SetPort(v int64) *PostgreSQLSettings {
15134	s.Port = &v
15135	return s
15136}
15137
15138// SetSecretsManagerAccessRoleArn sets the SecretsManagerAccessRoleArn field's value.
15139func (s *PostgreSQLSettings) SetSecretsManagerAccessRoleArn(v string) *PostgreSQLSettings {
15140	s.SecretsManagerAccessRoleArn = &v
15141	return s
15142}
15143
15144// SetSecretsManagerSecretId sets the SecretsManagerSecretId field's value.
15145func (s *PostgreSQLSettings) SetSecretsManagerSecretId(v string) *PostgreSQLSettings {
15146	s.SecretsManagerSecretId = &v
15147	return s
15148}
15149
15150// SetServerName sets the ServerName field's value.
15151func (s *PostgreSQLSettings) SetServerName(v string) *PostgreSQLSettings {
15152	s.ServerName = &v
15153	return s
15154}
15155
15156// SetSlotName sets the SlotName field's value.
15157func (s *PostgreSQLSettings) SetSlotName(v string) *PostgreSQLSettings {
15158	s.SlotName = &v
15159	return s
15160}
15161
15162// SetUsername sets the Username field's value.
15163func (s *PostgreSQLSettings) SetUsername(v string) *PostgreSQLSettings {
15164	s.Username = &v
15165	return s
15166}
15167
15168type RebootReplicationInstanceInput struct {
15169	_ struct{} `type:"structure"`
15170
15171	// If this parameter is true, the reboot is conducted through a Multi-AZ failover.
15172	// (If the instance isn't configured for Multi-AZ, then you can't specify true.)
15173	ForceFailover *bool `type:"boolean"`
15174
15175	// The Amazon Resource Name (ARN) of the replication instance.
15176	//
15177	// ReplicationInstanceArn is a required field
15178	ReplicationInstanceArn *string `type:"string" required:"true"`
15179}
15180
15181// String returns the string representation
15182func (s RebootReplicationInstanceInput) String() string {
15183	return awsutil.Prettify(s)
15184}
15185
15186// GoString returns the string representation
15187func (s RebootReplicationInstanceInput) GoString() string {
15188	return s.String()
15189}
15190
15191// Validate inspects the fields of the type to determine if they are valid.
15192func (s *RebootReplicationInstanceInput) Validate() error {
15193	invalidParams := request.ErrInvalidParams{Context: "RebootReplicationInstanceInput"}
15194	if s.ReplicationInstanceArn == nil {
15195		invalidParams.Add(request.NewErrParamRequired("ReplicationInstanceArn"))
15196	}
15197
15198	if invalidParams.Len() > 0 {
15199		return invalidParams
15200	}
15201	return nil
15202}
15203
15204// SetForceFailover sets the ForceFailover field's value.
15205func (s *RebootReplicationInstanceInput) SetForceFailover(v bool) *RebootReplicationInstanceInput {
15206	s.ForceFailover = &v
15207	return s
15208}
15209
15210// SetReplicationInstanceArn sets the ReplicationInstanceArn field's value.
15211func (s *RebootReplicationInstanceInput) SetReplicationInstanceArn(v string) *RebootReplicationInstanceInput {
15212	s.ReplicationInstanceArn = &v
15213	return s
15214}
15215
15216type RebootReplicationInstanceOutput struct {
15217	_ struct{} `type:"structure"`
15218
15219	// The replication instance that is being rebooted.
15220	ReplicationInstance *ReplicationInstance `type:"structure"`
15221}
15222
15223// String returns the string representation
15224func (s RebootReplicationInstanceOutput) String() string {
15225	return awsutil.Prettify(s)
15226}
15227
15228// GoString returns the string representation
15229func (s RebootReplicationInstanceOutput) GoString() string {
15230	return s.String()
15231}
15232
15233// SetReplicationInstance sets the ReplicationInstance field's value.
15234func (s *RebootReplicationInstanceOutput) SetReplicationInstance(v *ReplicationInstance) *RebootReplicationInstanceOutput {
15235	s.ReplicationInstance = v
15236	return s
15237}
15238
15239// Provides information that defines an Amazon Redshift endpoint.
15240type RedshiftSettings struct {
15241	_ struct{} `type:"structure"`
15242
15243	// A value that indicates to allow any date format, including invalid formats
15244	// such as 00/00/00 00:00:00, to be loaded without generating an error. You
15245	// can choose true or false (the default).
15246	//
15247	// This parameter applies only to TIMESTAMP and DATE columns. Always use ACCEPTANYDATE
15248	// with the DATEFORMAT parameter. If the date format for the data doesn't match
15249	// the DATEFORMAT specification, Amazon Redshift inserts a NULL value into that
15250	// field.
15251	AcceptAnyDate *bool `type:"boolean"`
15252
15253	// Code to run after connecting. This parameter should contain the code itself,
15254	// not the name of a file containing the code.
15255	AfterConnectScript *string `type:"string"`
15256
15257	// An S3 folder where the comma-separated-value (.csv) files are stored before
15258	// being uploaded to the target Redshift cluster.
15259	//
15260	// For full load mode, AWS DMS converts source records into .csv files and loads
15261	// them to the BucketFolder/TableID path. AWS DMS uses the Redshift COPY command
15262	// to upload the .csv files to the target table. The files are deleted once
15263	// the COPY operation has finished. For more information, see COPY (https://docs.aws.amazon.com/redshift/latest/dg/r_COPY.html)
15264	// in the Amazon Redshift Database Developer Guide.
15265	//
15266	// For change-data-capture (CDC) mode, AWS DMS creates a NetChanges table, and
15267	// loads the .csv files to this BucketFolder/NetChangesTableID path.
15268	BucketFolder *string `type:"string"`
15269
15270	// The name of the intermediate S3 bucket used to store .csv files before uploading
15271	// data to Redshift.
15272	BucketName *string `type:"string"`
15273
15274	// If Amazon Redshift is configured to support case sensitive schema names,
15275	// set CaseSensitiveNames to true. The default is false.
15276	CaseSensitiveNames *bool `type:"boolean"`
15277
15278	// If you set CompUpdate to true Amazon Redshift applies automatic compression
15279	// if the table is empty. This applies even if the table columns already have
15280	// encodings other than RAW. If you set CompUpdate to false, automatic compression
15281	// is disabled and existing column encodings aren't changed. The default is
15282	// true.
15283	CompUpdate *bool `type:"boolean"`
15284
15285	// A value that sets the amount of time to wait (in milliseconds) before timing
15286	// out, beginning from when you initially establish a connection.
15287	ConnectionTimeout *int64 `type:"integer"`
15288
15289	// The name of the Amazon Redshift data warehouse (service) that you are working
15290	// with.
15291	DatabaseName *string `type:"string"`
15292
15293	// The date format that you are using. Valid values are auto (case-sensitive),
15294	// your date format string enclosed in quotes, or NULL. If this parameter is
15295	// left unset (NULL), it defaults to a format of 'YYYY-MM-DD'. Using auto recognizes
15296	// most strings, even some that aren't supported when you use a date format
15297	// string.
15298	//
15299	// If your date and time values use formats different from each other, set this
15300	// to auto.
15301	DateFormat *string `type:"string"`
15302
15303	// A value that specifies whether AWS DMS should migrate empty CHAR and VARCHAR
15304	// fields as NULL. A value of true sets empty CHAR and VARCHAR fields to null.
15305	// The default is false.
15306	EmptyAsNull *bool `type:"boolean"`
15307
15308	// The type of server-side encryption that you want to use for your data. This
15309	// encryption type is part of the endpoint settings or the extra connections
15310	// attributes for Amazon S3. You can choose either SSE_S3 (the default) or SSE_KMS.
15311	//
15312	// For the ModifyEndpoint operation, you can change the existing value of the
15313	// EncryptionMode parameter from SSE_KMS to SSE_S3. But you can’t change the
15314	// existing value from SSE_S3 to SSE_KMS.
15315	//
15316	// To use SSE_S3, create an AWS Identity and Access Management (IAM) role with
15317	// a policy that allows "arn:aws:s3:::*" to use the following actions: "s3:PutObject",
15318	// "s3:ListBucket"
15319	EncryptionMode *string `type:"string" enum:"EncryptionModeValue"`
15320
15321	// This setting is only valid for a full-load migration task. Set ExplicitIds
15322	// to true to have tables with IDENTITY columns override their auto-generated
15323	// values with explicit values loaded from the source data files used to populate
15324	// the tables. The default is false.
15325	ExplicitIds *bool `type:"boolean"`
15326
15327	// The number of threads used to upload a single file. This parameter accepts
15328	// a value from 1 through 64. It defaults to 10.
15329	//
15330	// The number of parallel streams used to upload a single .csv file to an S3
15331	// bucket using S3 Multipart Upload. For more information, see Multipart upload
15332	// overview (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html).
15333	//
15334	// FileTransferUploadStreams accepts a value from 1 through 64. It defaults
15335	// to 10.
15336	FileTransferUploadStreams *int64 `type:"integer"`
15337
15338	// The amount of time to wait (in milliseconds) before timing out of operations
15339	// performed by AWS DMS on a Redshift cluster, such as Redshift COPY, INSERT,
15340	// DELETE, and UPDATE.
15341	LoadTimeout *int64 `type:"integer"`
15342
15343	// The maximum size (in KB) of any .csv file used to load data on an S3 bucket
15344	// and transfer data to Amazon Redshift. It defaults to 1048576KB (1 GB).
15345	MaxFileSize *int64 `type:"integer"`
15346
15347	// The password for the user named in the username property.
15348	Password *string `type:"string" sensitive:"true"`
15349
15350	// The port number for Amazon Redshift. The default value is 5439.
15351	Port *int64 `type:"integer"`
15352
15353	// A value that specifies to remove surrounding quotation marks from strings
15354	// in the incoming data. All characters within the quotation marks, including
15355	// delimiters, are retained. Choose true to remove quotation marks. The default
15356	// is false.
15357	RemoveQuotes *bool `type:"boolean"`
15358
15359	// A value that specifies to replaces the invalid characters specified in ReplaceInvalidChars,
15360	// substituting the specified characters instead. The default is "?".
15361	ReplaceChars *string `type:"string"`
15362
15363	// A list of characters that you want to replace. Use with ReplaceChars.
15364	ReplaceInvalidChars *string `type:"string"`
15365
15366	// The full Amazon Resource Name (ARN) of the IAM role that specifies AWS DMS
15367	// as the trusted entity and grants the required permissions to access the value
15368	// in SecretsManagerSecret. SecretsManagerSecret has the value of the AWS Secrets
15369	// Manager secret that allows access to the Amazon Redshift endpoint.
15370	//
15371	// You can specify one of two sets of values for these permissions. You can
15372	// specify the values for this setting and SecretsManagerSecretId. Or you can
15373	// specify clear-text values for UserName, Password, ServerName, and Port. You
15374	// can't specify both. For more information on creating this SecretsManagerSecret
15375	// and the SecretsManagerAccessRoleArn and SecretsManagerSecretId required to
15376	// access it, see Using secrets to access AWS Database Migration Service resources
15377	// (https://docs.aws.amazon.com/https:/docs.aws.amazon.com/dms/latest/userguide/CHAP_Security.html#security-iam-secretsmanager)
15378	// in the AWS Database Migration Service User Guide.
15379	SecretsManagerAccessRoleArn *string `type:"string"`
15380
15381	// The full ARN, partial ARN, or friendly name of the SecretsManagerSecret that
15382	// contains the Amazon Redshift endpoint connection details.
15383	SecretsManagerSecretId *string `type:"string"`
15384
15385	// The name of the Amazon Redshift cluster you are using.
15386	ServerName *string `type:"string"`
15387
15388	// The AWS KMS key ID. If you are using SSE_KMS for the EncryptionMode, provide
15389	// this key ID. The key that you use needs an attached policy that enables IAM
15390	// user permissions and allows use of the key.
15391	ServerSideEncryptionKmsKeyId *string `type:"string"`
15392
15393	// The Amazon Resource Name (ARN) of the IAM role that has access to the Amazon
15394	// Redshift service.
15395	ServiceAccessRoleArn *string `type:"string"`
15396
15397	// The time format that you want to use. Valid values are auto (case-sensitive),
15398	// 'timeformat_string', 'epochsecs', or 'epochmillisecs'. It defaults to 10.
15399	// Using auto recognizes most strings, even some that aren't supported when
15400	// you use a time format string.
15401	//
15402	// If your date and time values use formats different from each other, set this
15403	// parameter to auto.
15404	TimeFormat *string `type:"string"`
15405
15406	// A value that specifies to remove the trailing white space characters from
15407	// a VARCHAR string. This parameter applies only to columns with a VARCHAR data
15408	// type. Choose true to remove unneeded white space. The default is false.
15409	TrimBlanks *bool `type:"boolean"`
15410
15411	// A value that specifies to truncate data in columns to the appropriate number
15412	// of characters, so that the data fits in the column. This parameter applies
15413	// only to columns with a VARCHAR or CHAR data type, and rows with a size of
15414	// 4 MB or less. Choose true to truncate data. The default is false.
15415	TruncateColumns *bool `type:"boolean"`
15416
15417	// An Amazon Redshift user name for a registered user.
15418	Username *string `type:"string"`
15419
15420	// The size (in KB) of the in-memory file write buffer used when generating
15421	// .csv files on the local disk at the DMS replication instance. The default
15422	// value is 1000 (buffer size is 1000KB).
15423	WriteBufferSize *int64 `type:"integer"`
15424}
15425
15426// String returns the string representation
15427func (s RedshiftSettings) String() string {
15428	return awsutil.Prettify(s)
15429}
15430
15431// GoString returns the string representation
15432func (s RedshiftSettings) GoString() string {
15433	return s.String()
15434}
15435
15436// SetAcceptAnyDate sets the AcceptAnyDate field's value.
15437func (s *RedshiftSettings) SetAcceptAnyDate(v bool) *RedshiftSettings {
15438	s.AcceptAnyDate = &v
15439	return s
15440}
15441
15442// SetAfterConnectScript sets the AfterConnectScript field's value.
15443func (s *RedshiftSettings) SetAfterConnectScript(v string) *RedshiftSettings {
15444	s.AfterConnectScript = &v
15445	return s
15446}
15447
15448// SetBucketFolder sets the BucketFolder field's value.
15449func (s *RedshiftSettings) SetBucketFolder(v string) *RedshiftSettings {
15450	s.BucketFolder = &v
15451	return s
15452}
15453
15454// SetBucketName sets the BucketName field's value.
15455func (s *RedshiftSettings) SetBucketName(v string) *RedshiftSettings {
15456	s.BucketName = &v
15457	return s
15458}
15459
15460// SetCaseSensitiveNames sets the CaseSensitiveNames field's value.
15461func (s *RedshiftSettings) SetCaseSensitiveNames(v bool) *RedshiftSettings {
15462	s.CaseSensitiveNames = &v
15463	return s
15464}
15465
15466// SetCompUpdate sets the CompUpdate field's value.
15467func (s *RedshiftSettings) SetCompUpdate(v bool) *RedshiftSettings {
15468	s.CompUpdate = &v
15469	return s
15470}
15471
15472// SetConnectionTimeout sets the ConnectionTimeout field's value.
15473func (s *RedshiftSettings) SetConnectionTimeout(v int64) *RedshiftSettings {
15474	s.ConnectionTimeout = &v
15475	return s
15476}
15477
15478// SetDatabaseName sets the DatabaseName field's value.
15479func (s *RedshiftSettings) SetDatabaseName(v string) *RedshiftSettings {
15480	s.DatabaseName = &v
15481	return s
15482}
15483
15484// SetDateFormat sets the DateFormat field's value.
15485func (s *RedshiftSettings) SetDateFormat(v string) *RedshiftSettings {
15486	s.DateFormat = &v
15487	return s
15488}
15489
15490// SetEmptyAsNull sets the EmptyAsNull field's value.
15491func (s *RedshiftSettings) SetEmptyAsNull(v bool) *RedshiftSettings {
15492	s.EmptyAsNull = &v
15493	return s
15494}
15495
15496// SetEncryptionMode sets the EncryptionMode field's value.
15497func (s *RedshiftSettings) SetEncryptionMode(v string) *RedshiftSettings {
15498	s.EncryptionMode = &v
15499	return s
15500}
15501
15502// SetExplicitIds sets the ExplicitIds field's value.
15503func (s *RedshiftSettings) SetExplicitIds(v bool) *RedshiftSettings {
15504	s.ExplicitIds = &v
15505	return s
15506}
15507
15508// SetFileTransferUploadStreams sets the FileTransferUploadStreams field's value.
15509func (s *RedshiftSettings) SetFileTransferUploadStreams(v int64) *RedshiftSettings {
15510	s.FileTransferUploadStreams = &v
15511	return s
15512}
15513
15514// SetLoadTimeout sets the LoadTimeout field's value.
15515func (s *RedshiftSettings) SetLoadTimeout(v int64) *RedshiftSettings {
15516	s.LoadTimeout = &v
15517	return s
15518}
15519
15520// SetMaxFileSize sets the MaxFileSize field's value.
15521func (s *RedshiftSettings) SetMaxFileSize(v int64) *RedshiftSettings {
15522	s.MaxFileSize = &v
15523	return s
15524}
15525
15526// SetPassword sets the Password field's value.
15527func (s *RedshiftSettings) SetPassword(v string) *RedshiftSettings {
15528	s.Password = &v
15529	return s
15530}
15531
15532// SetPort sets the Port field's value.
15533func (s *RedshiftSettings) SetPort(v int64) *RedshiftSettings {
15534	s.Port = &v
15535	return s
15536}
15537
15538// SetRemoveQuotes sets the RemoveQuotes field's value.
15539func (s *RedshiftSettings) SetRemoveQuotes(v bool) *RedshiftSettings {
15540	s.RemoveQuotes = &v
15541	return s
15542}
15543
15544// SetReplaceChars sets the ReplaceChars field's value.
15545func (s *RedshiftSettings) SetReplaceChars(v string) *RedshiftSettings {
15546	s.ReplaceChars = &v
15547	return s
15548}
15549
15550// SetReplaceInvalidChars sets the ReplaceInvalidChars field's value.
15551func (s *RedshiftSettings) SetReplaceInvalidChars(v string) *RedshiftSettings {
15552	s.ReplaceInvalidChars = &v
15553	return s
15554}
15555
15556// SetSecretsManagerAccessRoleArn sets the SecretsManagerAccessRoleArn field's value.
15557func (s *RedshiftSettings) SetSecretsManagerAccessRoleArn(v string) *RedshiftSettings {
15558	s.SecretsManagerAccessRoleArn = &v
15559	return s
15560}
15561
15562// SetSecretsManagerSecretId sets the SecretsManagerSecretId field's value.
15563func (s *RedshiftSettings) SetSecretsManagerSecretId(v string) *RedshiftSettings {
15564	s.SecretsManagerSecretId = &v
15565	return s
15566}
15567
15568// SetServerName sets the ServerName field's value.
15569func (s *RedshiftSettings) SetServerName(v string) *RedshiftSettings {
15570	s.ServerName = &v
15571	return s
15572}
15573
15574// SetServerSideEncryptionKmsKeyId sets the ServerSideEncryptionKmsKeyId field's value.
15575func (s *RedshiftSettings) SetServerSideEncryptionKmsKeyId(v string) *RedshiftSettings {
15576	s.ServerSideEncryptionKmsKeyId = &v
15577	return s
15578}
15579
15580// SetServiceAccessRoleArn sets the ServiceAccessRoleArn field's value.
15581func (s *RedshiftSettings) SetServiceAccessRoleArn(v string) *RedshiftSettings {
15582	s.ServiceAccessRoleArn = &v
15583	return s
15584}
15585
15586// SetTimeFormat sets the TimeFormat field's value.
15587func (s *RedshiftSettings) SetTimeFormat(v string) *RedshiftSettings {
15588	s.TimeFormat = &v
15589	return s
15590}
15591
15592// SetTrimBlanks sets the TrimBlanks field's value.
15593func (s *RedshiftSettings) SetTrimBlanks(v bool) *RedshiftSettings {
15594	s.TrimBlanks = &v
15595	return s
15596}
15597
15598// SetTruncateColumns sets the TruncateColumns field's value.
15599func (s *RedshiftSettings) SetTruncateColumns(v bool) *RedshiftSettings {
15600	s.TruncateColumns = &v
15601	return s
15602}
15603
15604// SetUsername sets the Username field's value.
15605func (s *RedshiftSettings) SetUsername(v string) *RedshiftSettings {
15606	s.Username = &v
15607	return s
15608}
15609
15610// SetWriteBufferSize sets the WriteBufferSize field's value.
15611func (s *RedshiftSettings) SetWriteBufferSize(v int64) *RedshiftSettings {
15612	s.WriteBufferSize = &v
15613	return s
15614}
15615
15616type RefreshSchemasInput struct {
15617	_ struct{} `type:"structure"`
15618
15619	// The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.
15620	//
15621	// EndpointArn is a required field
15622	EndpointArn *string `type:"string" required:"true"`
15623
15624	// The Amazon Resource Name (ARN) of the replication instance.
15625	//
15626	// ReplicationInstanceArn is a required field
15627	ReplicationInstanceArn *string `type:"string" required:"true"`
15628}
15629
15630// String returns the string representation
15631func (s RefreshSchemasInput) String() string {
15632	return awsutil.Prettify(s)
15633}
15634
15635// GoString returns the string representation
15636func (s RefreshSchemasInput) GoString() string {
15637	return s.String()
15638}
15639
15640// Validate inspects the fields of the type to determine if they are valid.
15641func (s *RefreshSchemasInput) Validate() error {
15642	invalidParams := request.ErrInvalidParams{Context: "RefreshSchemasInput"}
15643	if s.EndpointArn == nil {
15644		invalidParams.Add(request.NewErrParamRequired("EndpointArn"))
15645	}
15646	if s.ReplicationInstanceArn == nil {
15647		invalidParams.Add(request.NewErrParamRequired("ReplicationInstanceArn"))
15648	}
15649
15650	if invalidParams.Len() > 0 {
15651		return invalidParams
15652	}
15653	return nil
15654}
15655
15656// SetEndpointArn sets the EndpointArn field's value.
15657func (s *RefreshSchemasInput) SetEndpointArn(v string) *RefreshSchemasInput {
15658	s.EndpointArn = &v
15659	return s
15660}
15661
15662// SetReplicationInstanceArn sets the ReplicationInstanceArn field's value.
15663func (s *RefreshSchemasInput) SetReplicationInstanceArn(v string) *RefreshSchemasInput {
15664	s.ReplicationInstanceArn = &v
15665	return s
15666}
15667
15668type RefreshSchemasOutput struct {
15669	_ struct{} `type:"structure"`
15670
15671	// The status of the refreshed schema.
15672	RefreshSchemasStatus *RefreshSchemasStatus `type:"structure"`
15673}
15674
15675// String returns the string representation
15676func (s RefreshSchemasOutput) String() string {
15677	return awsutil.Prettify(s)
15678}
15679
15680// GoString returns the string representation
15681func (s RefreshSchemasOutput) GoString() string {
15682	return s.String()
15683}
15684
15685// SetRefreshSchemasStatus sets the RefreshSchemasStatus field's value.
15686func (s *RefreshSchemasOutput) SetRefreshSchemasStatus(v *RefreshSchemasStatus) *RefreshSchemasOutput {
15687	s.RefreshSchemasStatus = v
15688	return s
15689}
15690
15691// Provides information that describes status of a schema at an endpoint specified
15692// by the DescribeRefreshSchemaStatus operation.
15693type RefreshSchemasStatus struct {
15694	_ struct{} `type:"structure"`
15695
15696	// The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.
15697	EndpointArn *string `type:"string"`
15698
15699	// The last failure message for the schema.
15700	LastFailureMessage *string `type:"string"`
15701
15702	// The date the schema was last refreshed.
15703	LastRefreshDate *time.Time `type:"timestamp"`
15704
15705	// The Amazon Resource Name (ARN) of the replication instance.
15706	ReplicationInstanceArn *string `type:"string"`
15707
15708	// The status of the schema.
15709	Status *string `type:"string" enum:"RefreshSchemasStatusTypeValue"`
15710}
15711
15712// String returns the string representation
15713func (s RefreshSchemasStatus) String() string {
15714	return awsutil.Prettify(s)
15715}
15716
15717// GoString returns the string representation
15718func (s RefreshSchemasStatus) GoString() string {
15719	return s.String()
15720}
15721
15722// SetEndpointArn sets the EndpointArn field's value.
15723func (s *RefreshSchemasStatus) SetEndpointArn(v string) *RefreshSchemasStatus {
15724	s.EndpointArn = &v
15725	return s
15726}
15727
15728// SetLastFailureMessage sets the LastFailureMessage field's value.
15729func (s *RefreshSchemasStatus) SetLastFailureMessage(v string) *RefreshSchemasStatus {
15730	s.LastFailureMessage = &v
15731	return s
15732}
15733
15734// SetLastRefreshDate sets the LastRefreshDate field's value.
15735func (s *RefreshSchemasStatus) SetLastRefreshDate(v time.Time) *RefreshSchemasStatus {
15736	s.LastRefreshDate = &v
15737	return s
15738}
15739
15740// SetReplicationInstanceArn sets the ReplicationInstanceArn field's value.
15741func (s *RefreshSchemasStatus) SetReplicationInstanceArn(v string) *RefreshSchemasStatus {
15742	s.ReplicationInstanceArn = &v
15743	return s
15744}
15745
15746// SetStatus sets the Status field's value.
15747func (s *RefreshSchemasStatus) SetStatus(v string) *RefreshSchemasStatus {
15748	s.Status = &v
15749	return s
15750}
15751
15752type ReloadTablesInput struct {
15753	_ struct{} `type:"structure"`
15754
15755	// Options for reload. Specify data-reload to reload the data and re-validate
15756	// it if validation is enabled. Specify validate-only to re-validate the table.
15757	// This option applies only when validation is enabled for the task.
15758	//
15759	// Valid values: data-reload, validate-only
15760	//
15761	// Default value is data-reload.
15762	ReloadOption *string `type:"string" enum:"ReloadOptionValue"`
15763
15764	// The Amazon Resource Name (ARN) of the replication task.
15765	//
15766	// ReplicationTaskArn is a required field
15767	ReplicationTaskArn *string `type:"string" required:"true"`
15768
15769	// The name and schema of the table to be reloaded.
15770	//
15771	// TablesToReload is a required field
15772	TablesToReload []*TableToReload `type:"list" required:"true"`
15773}
15774
15775// String returns the string representation
15776func (s ReloadTablesInput) String() string {
15777	return awsutil.Prettify(s)
15778}
15779
15780// GoString returns the string representation
15781func (s ReloadTablesInput) GoString() string {
15782	return s.String()
15783}
15784
15785// Validate inspects the fields of the type to determine if they are valid.
15786func (s *ReloadTablesInput) Validate() error {
15787	invalidParams := request.ErrInvalidParams{Context: "ReloadTablesInput"}
15788	if s.ReplicationTaskArn == nil {
15789		invalidParams.Add(request.NewErrParamRequired("ReplicationTaskArn"))
15790	}
15791	if s.TablesToReload == nil {
15792		invalidParams.Add(request.NewErrParamRequired("TablesToReload"))
15793	}
15794	if s.TablesToReload != nil {
15795		for i, v := range s.TablesToReload {
15796			if v == nil {
15797				continue
15798			}
15799			if err := v.Validate(); err != nil {
15800				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TablesToReload", i), err.(request.ErrInvalidParams))
15801			}
15802		}
15803	}
15804
15805	if invalidParams.Len() > 0 {
15806		return invalidParams
15807	}
15808	return nil
15809}
15810
15811// SetReloadOption sets the ReloadOption field's value.
15812func (s *ReloadTablesInput) SetReloadOption(v string) *ReloadTablesInput {
15813	s.ReloadOption = &v
15814	return s
15815}
15816
15817// SetReplicationTaskArn sets the ReplicationTaskArn field's value.
15818func (s *ReloadTablesInput) SetReplicationTaskArn(v string) *ReloadTablesInput {
15819	s.ReplicationTaskArn = &v
15820	return s
15821}
15822
15823// SetTablesToReload sets the TablesToReload field's value.
15824func (s *ReloadTablesInput) SetTablesToReload(v []*TableToReload) *ReloadTablesInput {
15825	s.TablesToReload = v
15826	return s
15827}
15828
15829type ReloadTablesOutput struct {
15830	_ struct{} `type:"structure"`
15831
15832	// The Amazon Resource Name (ARN) of the replication task.
15833	ReplicationTaskArn *string `type:"string"`
15834}
15835
15836// String returns the string representation
15837func (s ReloadTablesOutput) String() string {
15838	return awsutil.Prettify(s)
15839}
15840
15841// GoString returns the string representation
15842func (s ReloadTablesOutput) GoString() string {
15843	return s.String()
15844}
15845
15846// SetReplicationTaskArn sets the ReplicationTaskArn field's value.
15847func (s *ReloadTablesOutput) SetReplicationTaskArn(v string) *ReloadTablesOutput {
15848	s.ReplicationTaskArn = &v
15849	return s
15850}
15851
15852// Removes one or more tags from an AWS DMS resource.
15853type RemoveTagsFromResourceInput struct {
15854	_ struct{} `type:"structure"`
15855
15856	// An AWS DMS resource from which you want to remove tag(s). The value for this
15857	// parameter is an Amazon Resource Name (ARN).
15858	//
15859	// ResourceArn is a required field
15860	ResourceArn *string `type:"string" required:"true"`
15861
15862	// The tag key (name) of the tag to be removed.
15863	//
15864	// TagKeys is a required field
15865	TagKeys []*string `type:"list" required:"true"`
15866}
15867
15868// String returns the string representation
15869func (s RemoveTagsFromResourceInput) String() string {
15870	return awsutil.Prettify(s)
15871}
15872
15873// GoString returns the string representation
15874func (s RemoveTagsFromResourceInput) GoString() string {
15875	return s.String()
15876}
15877
15878// Validate inspects the fields of the type to determine if they are valid.
15879func (s *RemoveTagsFromResourceInput) Validate() error {
15880	invalidParams := request.ErrInvalidParams{Context: "RemoveTagsFromResourceInput"}
15881	if s.ResourceArn == nil {
15882		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
15883	}
15884	if s.TagKeys == nil {
15885		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
15886	}
15887
15888	if invalidParams.Len() > 0 {
15889		return invalidParams
15890	}
15891	return nil
15892}
15893
15894// SetResourceArn sets the ResourceArn field's value.
15895func (s *RemoveTagsFromResourceInput) SetResourceArn(v string) *RemoveTagsFromResourceInput {
15896	s.ResourceArn = &v
15897	return s
15898}
15899
15900// SetTagKeys sets the TagKeys field's value.
15901func (s *RemoveTagsFromResourceInput) SetTagKeys(v []*string) *RemoveTagsFromResourceInput {
15902	s.TagKeys = v
15903	return s
15904}
15905
15906type RemoveTagsFromResourceOutput struct {
15907	_ struct{} `type:"structure"`
15908}
15909
15910// String returns the string representation
15911func (s RemoveTagsFromResourceOutput) String() string {
15912	return awsutil.Prettify(s)
15913}
15914
15915// GoString returns the string representation
15916func (s RemoveTagsFromResourceOutput) GoString() string {
15917	return s.String()
15918}
15919
15920// Provides information that defines a replication instance.
15921type ReplicationInstance struct {
15922	_ struct{} `type:"structure"`
15923
15924	// The amount of storage (in gigabytes) that is allocated for the replication
15925	// instance.
15926	AllocatedStorage *int64 `type:"integer"`
15927
15928	// Boolean value indicating if minor version upgrades will be automatically
15929	// applied to the instance.
15930	AutoMinorVersionUpgrade *bool `type:"boolean"`
15931
15932	// The Availability Zone for the instance.
15933	AvailabilityZone *string `type:"string"`
15934
15935	// The DNS name servers supported for the replication instance to access your
15936	// on-premise source or target database.
15937	DnsNameServers *string `type:"string"`
15938
15939	// The engine version number of the replication instance.
15940	//
15941	// If an engine version number is not specified when a replication instance
15942	// is created, the default is the latest engine version available.
15943	//
15944	// When modifying a major engine version of an instance, also set AllowMajorVersionUpgrade
15945	// to true.
15946	EngineVersion *string `type:"string"`
15947
15948	// The expiration date of the free replication instance that is part of the
15949	// Free DMS program.
15950	FreeUntil *time.Time `type:"timestamp"`
15951
15952	// The time the replication instance was created.
15953	InstanceCreateTime *time.Time `type:"timestamp"`
15954
15955	// An AWS KMS key identifier that is used to encrypt the data on the replication
15956	// instance.
15957	//
15958	// If you don't specify a value for the KmsKeyId parameter, then AWS DMS uses
15959	// your default encryption key.
15960	//
15961	// AWS KMS creates the default encryption key for your AWS account. Your AWS
15962	// account has a different default encryption key for each AWS Region.
15963	KmsKeyId *string `type:"string"`
15964
15965	// Specifies whether the replication instance is a Multi-AZ deployment. You
15966	// can't set the AvailabilityZone parameter if the Multi-AZ parameter is set
15967	// to true.
15968	MultiAZ *bool `type:"boolean"`
15969
15970	// The pending modification values.
15971	PendingModifiedValues *ReplicationPendingModifiedValues `type:"structure"`
15972
15973	// The maintenance window times for the replication instance. Any pending upgrades
15974	// to the replication instance are performed during this time.
15975	PreferredMaintenanceWindow *string `type:"string"`
15976
15977	// Specifies the accessibility options for the replication instance. A value
15978	// of true represents an instance with a public IP address. A value of false
15979	// represents an instance with a private IP address. The default value is true.
15980	PubliclyAccessible *bool `type:"boolean"`
15981
15982	// The Amazon Resource Name (ARN) of the replication instance.
15983	ReplicationInstanceArn *string `type:"string"`
15984
15985	// The compute and memory capacity of the replication instance as defined for
15986	// the specified replication instance class. It is a required parameter, although
15987	// a defualt value is pre-selected in the DMS console.
15988	//
15989	// For more information on the settings and capacities for the available replication
15990	// instance classes, see Selecting the right AWS DMS replication instance for
15991	// your migration (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_ReplicationInstance.html#CHAP_ReplicationInstance.InDepth).
15992	ReplicationInstanceClass *string `type:"string"`
15993
15994	// The replication instance identifier is a required parameter. This parameter
15995	// is stored as a lowercase string.
15996	//
15997	// Constraints:
15998	//
15999	//    * Must contain 1-63 alphanumeric characters or hyphens.
16000	//
16001	//    * First character must be a letter.
16002	//
16003	//    * Cannot end with a hyphen or contain two consecutive hyphens.
16004	//
16005	// Example: myrepinstance
16006	ReplicationInstanceIdentifier *string `type:"string"`
16007
16008	// The private IP address of the replication instance.
16009	//
16010	// Deprecated: ReplicationInstancePrivateIpAddress has been deprecated
16011	ReplicationInstancePrivateIpAddress *string `deprecated:"true" type:"string"`
16012
16013	// One or more private IP addresses for the replication instance.
16014	ReplicationInstancePrivateIpAddresses []*string `type:"list"`
16015
16016	// The public IP address of the replication instance.
16017	//
16018	// Deprecated: ReplicationInstancePublicIpAddress has been deprecated
16019	ReplicationInstancePublicIpAddress *string `deprecated:"true" type:"string"`
16020
16021	// One or more public IP addresses for the replication instance.
16022	ReplicationInstancePublicIpAddresses []*string `type:"list"`
16023
16024	// The status of the replication instance. The possible return values include:
16025	//
16026	//    * "available"
16027	//
16028	//    * "creating"
16029	//
16030	//    * "deleted"
16031	//
16032	//    * "deleting"
16033	//
16034	//    * "failed"
16035	//
16036	//    * "modifying"
16037	//
16038	//    * "upgrading"
16039	//
16040	//    * "rebooting"
16041	//
16042	//    * "resetting-master-credentials"
16043	//
16044	//    * "storage-full"
16045	//
16046	//    * "incompatible-credentials"
16047	//
16048	//    * "incompatible-network"
16049	//
16050	//    * "maintenance"
16051	ReplicationInstanceStatus *string `type:"string"`
16052
16053	// The subnet group for the replication instance.
16054	ReplicationSubnetGroup *ReplicationSubnetGroup `type:"structure"`
16055
16056	// The Availability Zone of the standby replication instance in a Multi-AZ deployment.
16057	SecondaryAvailabilityZone *string `type:"string"`
16058
16059	// The VPC security group for the instance.
16060	VpcSecurityGroups []*VpcSecurityGroupMembership `type:"list"`
16061}
16062
16063// String returns the string representation
16064func (s ReplicationInstance) String() string {
16065	return awsutil.Prettify(s)
16066}
16067
16068// GoString returns the string representation
16069func (s ReplicationInstance) GoString() string {
16070	return s.String()
16071}
16072
16073// SetAllocatedStorage sets the AllocatedStorage field's value.
16074func (s *ReplicationInstance) SetAllocatedStorage(v int64) *ReplicationInstance {
16075	s.AllocatedStorage = &v
16076	return s
16077}
16078
16079// SetAutoMinorVersionUpgrade sets the AutoMinorVersionUpgrade field's value.
16080func (s *ReplicationInstance) SetAutoMinorVersionUpgrade(v bool) *ReplicationInstance {
16081	s.AutoMinorVersionUpgrade = &v
16082	return s
16083}
16084
16085// SetAvailabilityZone sets the AvailabilityZone field's value.
16086func (s *ReplicationInstance) SetAvailabilityZone(v string) *ReplicationInstance {
16087	s.AvailabilityZone = &v
16088	return s
16089}
16090
16091// SetDnsNameServers sets the DnsNameServers field's value.
16092func (s *ReplicationInstance) SetDnsNameServers(v string) *ReplicationInstance {
16093	s.DnsNameServers = &v
16094	return s
16095}
16096
16097// SetEngineVersion sets the EngineVersion field's value.
16098func (s *ReplicationInstance) SetEngineVersion(v string) *ReplicationInstance {
16099	s.EngineVersion = &v
16100	return s
16101}
16102
16103// SetFreeUntil sets the FreeUntil field's value.
16104func (s *ReplicationInstance) SetFreeUntil(v time.Time) *ReplicationInstance {
16105	s.FreeUntil = &v
16106	return s
16107}
16108
16109// SetInstanceCreateTime sets the InstanceCreateTime field's value.
16110func (s *ReplicationInstance) SetInstanceCreateTime(v time.Time) *ReplicationInstance {
16111	s.InstanceCreateTime = &v
16112	return s
16113}
16114
16115// SetKmsKeyId sets the KmsKeyId field's value.
16116func (s *ReplicationInstance) SetKmsKeyId(v string) *ReplicationInstance {
16117	s.KmsKeyId = &v
16118	return s
16119}
16120
16121// SetMultiAZ sets the MultiAZ field's value.
16122func (s *ReplicationInstance) SetMultiAZ(v bool) *ReplicationInstance {
16123	s.MultiAZ = &v
16124	return s
16125}
16126
16127// SetPendingModifiedValues sets the PendingModifiedValues field's value.
16128func (s *ReplicationInstance) SetPendingModifiedValues(v *ReplicationPendingModifiedValues) *ReplicationInstance {
16129	s.PendingModifiedValues = v
16130	return s
16131}
16132
16133// SetPreferredMaintenanceWindow sets the PreferredMaintenanceWindow field's value.
16134func (s *ReplicationInstance) SetPreferredMaintenanceWindow(v string) *ReplicationInstance {
16135	s.PreferredMaintenanceWindow = &v
16136	return s
16137}
16138
16139// SetPubliclyAccessible sets the PubliclyAccessible field's value.
16140func (s *ReplicationInstance) SetPubliclyAccessible(v bool) *ReplicationInstance {
16141	s.PubliclyAccessible = &v
16142	return s
16143}
16144
16145// SetReplicationInstanceArn sets the ReplicationInstanceArn field's value.
16146func (s *ReplicationInstance) SetReplicationInstanceArn(v string) *ReplicationInstance {
16147	s.ReplicationInstanceArn = &v
16148	return s
16149}
16150
16151// SetReplicationInstanceClass sets the ReplicationInstanceClass field's value.
16152func (s *ReplicationInstance) SetReplicationInstanceClass(v string) *ReplicationInstance {
16153	s.ReplicationInstanceClass = &v
16154	return s
16155}
16156
16157// SetReplicationInstanceIdentifier sets the ReplicationInstanceIdentifier field's value.
16158func (s *ReplicationInstance) SetReplicationInstanceIdentifier(v string) *ReplicationInstance {
16159	s.ReplicationInstanceIdentifier = &v
16160	return s
16161}
16162
16163// SetReplicationInstancePrivateIpAddress sets the ReplicationInstancePrivateIpAddress field's value.
16164func (s *ReplicationInstance) SetReplicationInstancePrivateIpAddress(v string) *ReplicationInstance {
16165	s.ReplicationInstancePrivateIpAddress = &v
16166	return s
16167}
16168
16169// SetReplicationInstancePrivateIpAddresses sets the ReplicationInstancePrivateIpAddresses field's value.
16170func (s *ReplicationInstance) SetReplicationInstancePrivateIpAddresses(v []*string) *ReplicationInstance {
16171	s.ReplicationInstancePrivateIpAddresses = v
16172	return s
16173}
16174
16175// SetReplicationInstancePublicIpAddress sets the ReplicationInstancePublicIpAddress field's value.
16176func (s *ReplicationInstance) SetReplicationInstancePublicIpAddress(v string) *ReplicationInstance {
16177	s.ReplicationInstancePublicIpAddress = &v
16178	return s
16179}
16180
16181// SetReplicationInstancePublicIpAddresses sets the ReplicationInstancePublicIpAddresses field's value.
16182func (s *ReplicationInstance) SetReplicationInstancePublicIpAddresses(v []*string) *ReplicationInstance {
16183	s.ReplicationInstancePublicIpAddresses = v
16184	return s
16185}
16186
16187// SetReplicationInstanceStatus sets the ReplicationInstanceStatus field's value.
16188func (s *ReplicationInstance) SetReplicationInstanceStatus(v string) *ReplicationInstance {
16189	s.ReplicationInstanceStatus = &v
16190	return s
16191}
16192
16193// SetReplicationSubnetGroup sets the ReplicationSubnetGroup field's value.
16194func (s *ReplicationInstance) SetReplicationSubnetGroup(v *ReplicationSubnetGroup) *ReplicationInstance {
16195	s.ReplicationSubnetGroup = v
16196	return s
16197}
16198
16199// SetSecondaryAvailabilityZone sets the SecondaryAvailabilityZone field's value.
16200func (s *ReplicationInstance) SetSecondaryAvailabilityZone(v string) *ReplicationInstance {
16201	s.SecondaryAvailabilityZone = &v
16202	return s
16203}
16204
16205// SetVpcSecurityGroups sets the VpcSecurityGroups field's value.
16206func (s *ReplicationInstance) SetVpcSecurityGroups(v []*VpcSecurityGroupMembership) *ReplicationInstance {
16207	s.VpcSecurityGroups = v
16208	return s
16209}
16210
16211// Contains metadata for a replication instance task log.
16212type ReplicationInstanceTaskLog struct {
16213	_ struct{} `type:"structure"`
16214
16215	// The size, in bytes, of the replication task log.
16216	ReplicationInstanceTaskLogSize *int64 `type:"long"`
16217
16218	// The Amazon Resource Name (ARN) of the replication task.
16219	ReplicationTaskArn *string `type:"string"`
16220
16221	// The name of the replication task.
16222	ReplicationTaskName *string `type:"string"`
16223}
16224
16225// String returns the string representation
16226func (s ReplicationInstanceTaskLog) String() string {
16227	return awsutil.Prettify(s)
16228}
16229
16230// GoString returns the string representation
16231func (s ReplicationInstanceTaskLog) GoString() string {
16232	return s.String()
16233}
16234
16235// SetReplicationInstanceTaskLogSize sets the ReplicationInstanceTaskLogSize field's value.
16236func (s *ReplicationInstanceTaskLog) SetReplicationInstanceTaskLogSize(v int64) *ReplicationInstanceTaskLog {
16237	s.ReplicationInstanceTaskLogSize = &v
16238	return s
16239}
16240
16241// SetReplicationTaskArn sets the ReplicationTaskArn field's value.
16242func (s *ReplicationInstanceTaskLog) SetReplicationTaskArn(v string) *ReplicationInstanceTaskLog {
16243	s.ReplicationTaskArn = &v
16244	return s
16245}
16246
16247// SetReplicationTaskName sets the ReplicationTaskName field's value.
16248func (s *ReplicationInstanceTaskLog) SetReplicationTaskName(v string) *ReplicationInstanceTaskLog {
16249	s.ReplicationTaskName = &v
16250	return s
16251}
16252
16253// Provides information about the values of pending modifications to a replication
16254// instance. This data type is an object of the ReplicationInstance (https://docs.aws.amazon.com/dms/latest/APIReference/API_ReplicationInstance.html)
16255// user-defined data type.
16256type ReplicationPendingModifiedValues struct {
16257	_ struct{} `type:"structure"`
16258
16259	// The amount of storage (in gigabytes) that is allocated for the replication
16260	// instance.
16261	AllocatedStorage *int64 `type:"integer"`
16262
16263	// The engine version number of the replication instance.
16264	EngineVersion *string `type:"string"`
16265
16266	// Specifies whether the replication instance is a Multi-AZ deployment. You
16267	// can't set the AvailabilityZone parameter if the Multi-AZ parameter is set
16268	// to true.
16269	MultiAZ *bool `type:"boolean"`
16270
16271	// The compute and memory capacity of the replication instance as defined for
16272	// the specified replication instance class.
16273	//
16274	// For more information on the settings and capacities for the available replication
16275	// instance classes, see Selecting the right AWS DMS replication instance for
16276	// your migration (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_ReplicationInstance.html#CHAP_ReplicationInstance.InDepth).
16277	ReplicationInstanceClass *string `type:"string"`
16278}
16279
16280// String returns the string representation
16281func (s ReplicationPendingModifiedValues) String() string {
16282	return awsutil.Prettify(s)
16283}
16284
16285// GoString returns the string representation
16286func (s ReplicationPendingModifiedValues) GoString() string {
16287	return s.String()
16288}
16289
16290// SetAllocatedStorage sets the AllocatedStorage field's value.
16291func (s *ReplicationPendingModifiedValues) SetAllocatedStorage(v int64) *ReplicationPendingModifiedValues {
16292	s.AllocatedStorage = &v
16293	return s
16294}
16295
16296// SetEngineVersion sets the EngineVersion field's value.
16297func (s *ReplicationPendingModifiedValues) SetEngineVersion(v string) *ReplicationPendingModifiedValues {
16298	s.EngineVersion = &v
16299	return s
16300}
16301
16302// SetMultiAZ sets the MultiAZ field's value.
16303func (s *ReplicationPendingModifiedValues) SetMultiAZ(v bool) *ReplicationPendingModifiedValues {
16304	s.MultiAZ = &v
16305	return s
16306}
16307
16308// SetReplicationInstanceClass sets the ReplicationInstanceClass field's value.
16309func (s *ReplicationPendingModifiedValues) SetReplicationInstanceClass(v string) *ReplicationPendingModifiedValues {
16310	s.ReplicationInstanceClass = &v
16311	return s
16312}
16313
16314// Describes a subnet group in response to a request by the DescribeReplicationSubnetGroups
16315// operation.
16316type ReplicationSubnetGroup struct {
16317	_ struct{} `type:"structure"`
16318
16319	// A description for the replication subnet group.
16320	ReplicationSubnetGroupDescription *string `type:"string"`
16321
16322	// The identifier of the replication instance subnet group.
16323	ReplicationSubnetGroupIdentifier *string `type:"string"`
16324
16325	// The status of the subnet group.
16326	SubnetGroupStatus *string `type:"string"`
16327
16328	// The subnets that are in the subnet group.
16329	Subnets []*Subnet `type:"list"`
16330
16331	// The ID of the VPC.
16332	VpcId *string `type:"string"`
16333}
16334
16335// String returns the string representation
16336func (s ReplicationSubnetGroup) String() string {
16337	return awsutil.Prettify(s)
16338}
16339
16340// GoString returns the string representation
16341func (s ReplicationSubnetGroup) GoString() string {
16342	return s.String()
16343}
16344
16345// SetReplicationSubnetGroupDescription sets the ReplicationSubnetGroupDescription field's value.
16346func (s *ReplicationSubnetGroup) SetReplicationSubnetGroupDescription(v string) *ReplicationSubnetGroup {
16347	s.ReplicationSubnetGroupDescription = &v
16348	return s
16349}
16350
16351// SetReplicationSubnetGroupIdentifier sets the ReplicationSubnetGroupIdentifier field's value.
16352func (s *ReplicationSubnetGroup) SetReplicationSubnetGroupIdentifier(v string) *ReplicationSubnetGroup {
16353	s.ReplicationSubnetGroupIdentifier = &v
16354	return s
16355}
16356
16357// SetSubnetGroupStatus sets the SubnetGroupStatus field's value.
16358func (s *ReplicationSubnetGroup) SetSubnetGroupStatus(v string) *ReplicationSubnetGroup {
16359	s.SubnetGroupStatus = &v
16360	return s
16361}
16362
16363// SetSubnets sets the Subnets field's value.
16364func (s *ReplicationSubnetGroup) SetSubnets(v []*Subnet) *ReplicationSubnetGroup {
16365	s.Subnets = v
16366	return s
16367}
16368
16369// SetVpcId sets the VpcId field's value.
16370func (s *ReplicationSubnetGroup) SetVpcId(v string) *ReplicationSubnetGroup {
16371	s.VpcId = &v
16372	return s
16373}
16374
16375// The replication subnet group does not cover enough Availability Zones (AZs).
16376// Edit the replication subnet group and add more AZs.
16377type ReplicationSubnetGroupDoesNotCoverEnoughAZs struct {
16378	_            struct{}                  `type:"structure"`
16379	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
16380
16381	Message_ *string `locationName:"message" type:"string"`
16382}
16383
16384// String returns the string representation
16385func (s ReplicationSubnetGroupDoesNotCoverEnoughAZs) String() string {
16386	return awsutil.Prettify(s)
16387}
16388
16389// GoString returns the string representation
16390func (s ReplicationSubnetGroupDoesNotCoverEnoughAZs) GoString() string {
16391	return s.String()
16392}
16393
16394func newErrorReplicationSubnetGroupDoesNotCoverEnoughAZs(v protocol.ResponseMetadata) error {
16395	return &ReplicationSubnetGroupDoesNotCoverEnoughAZs{
16396		RespMetadata: v,
16397	}
16398}
16399
16400// Code returns the exception type name.
16401func (s *ReplicationSubnetGroupDoesNotCoverEnoughAZs) Code() string {
16402	return "ReplicationSubnetGroupDoesNotCoverEnoughAZs"
16403}
16404
16405// Message returns the exception's message.
16406func (s *ReplicationSubnetGroupDoesNotCoverEnoughAZs) Message() string {
16407	if s.Message_ != nil {
16408		return *s.Message_
16409	}
16410	return ""
16411}
16412
16413// OrigErr always returns nil, satisfies awserr.Error interface.
16414func (s *ReplicationSubnetGroupDoesNotCoverEnoughAZs) OrigErr() error {
16415	return nil
16416}
16417
16418func (s *ReplicationSubnetGroupDoesNotCoverEnoughAZs) Error() string {
16419	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
16420}
16421
16422// Status code returns the HTTP status code for the request's response error.
16423func (s *ReplicationSubnetGroupDoesNotCoverEnoughAZs) StatusCode() int {
16424	return s.RespMetadata.StatusCode
16425}
16426
16427// RequestID returns the service's response RequestID for request.
16428func (s *ReplicationSubnetGroupDoesNotCoverEnoughAZs) RequestID() string {
16429	return s.RespMetadata.RequestID
16430}
16431
16432// Provides information that describes a replication task created by the CreateReplicationTask
16433// operation.
16434type ReplicationTask struct {
16435	_ struct{} `type:"structure"`
16436
16437	// Indicates when you want a change data capture (CDC) operation to start. Use
16438	// either CdcStartPosition or CdcStartTime to specify when you want the CDC
16439	// operation to start. Specifying both values results in an error.
16440	//
16441	// The value can be in date, checkpoint, or LSN/SCN format.
16442	//
16443	// Date Example: --cdc-start-position “2018-03-08T12:12:12”
16444	//
16445	// Checkpoint Example: --cdc-start-position "checkpoint:V1#27#mysql-bin-changelog.157832:1975:-1:2002:677883278264080:mysql-bin-changelog.157832:1876#0#0#*#0#93"
16446	//
16447	// LSN Example: --cdc-start-position “mysql-bin-changelog.000024:373”
16448	CdcStartPosition *string `type:"string"`
16449
16450	// Indicates when you want a change data capture (CDC) operation to stop. The
16451	// value can be either server time or commit time.
16452	//
16453	// Server time example: --cdc-stop-position “server_time:2018-02-09T12:12:12”
16454	//
16455	// Commit time example: --cdc-stop-position “commit_time: 2018-02-09T12:12:12
16456	// “
16457	CdcStopPosition *string `type:"string"`
16458
16459	// The last error (failure) message generated for the replication task.
16460	LastFailureMessage *string `type:"string"`
16461
16462	// The type of migration.
16463	MigrationType *string `type:"string" enum:"MigrationTypeValue"`
16464
16465	// Indicates the last checkpoint that occurred during a change data capture
16466	// (CDC) operation. You can provide this value to the CdcStartPosition parameter
16467	// to start a CDC operation that begins at that checkpoint.
16468	RecoveryCheckpoint *string `type:"string"`
16469
16470	// The ARN of the replication instance.
16471	ReplicationInstanceArn *string `type:"string"`
16472
16473	// The Amazon Resource Name (ARN) of the replication task.
16474	ReplicationTaskArn *string `type:"string"`
16475
16476	// The date the replication task was created.
16477	ReplicationTaskCreationDate *time.Time `type:"timestamp"`
16478
16479	// The user-assigned replication task identifier or name.
16480	//
16481	// Constraints:
16482	//
16483	//    * Must contain 1-255 alphanumeric characters or hyphens.
16484	//
16485	//    * First character must be a letter.
16486	//
16487	//    * Cannot end with a hyphen or contain two consecutive hyphens.
16488	ReplicationTaskIdentifier *string `type:"string"`
16489
16490	// The settings for the replication task.
16491	ReplicationTaskSettings *string `type:"string"`
16492
16493	// The date the replication task is scheduled to start.
16494	ReplicationTaskStartDate *time.Time `type:"timestamp"`
16495
16496	// The statistics for the task, including elapsed time, tables loaded, and table
16497	// errors.
16498	ReplicationTaskStats *ReplicationTaskStats `type:"structure"`
16499
16500	// The Amazon Resource Name (ARN) that uniquely identifies the endpoint.
16501	SourceEndpointArn *string `type:"string"`
16502
16503	// The status of the replication task. This response parameter can return one
16504	// of the following values:
16505	//
16506	//    * "moving" – The task is being moved in response to running the MoveReplicationTask
16507	//    (https://docs.aws.amazon.com/dms/latest/APIReference/API_MoveReplicationTask.html)
16508	//    operation.
16509	//
16510	//    * "creating" – The task is being created in response to running the
16511	//    CreateReplicationTask (https://docs.aws.amazon.com/dms/latest/APIReference/API_CreateReplicationTask.html)
16512	//    operation.
16513	//
16514	//    * "deleting" – The task is being deleted in response to running the
16515	//    DeleteReplicationTask (https://docs.aws.amazon.com/dms/latest/APIReference/API_DeleteReplicationTask.html)
16516	//    operation.
16517	//
16518	//    * "failed" – The task failed to successfully complete the database migration
16519	//    in response to running the StartReplicationTask (https://docs.aws.amazon.com/dms/latest/APIReference/API_StartReplicationTask.html)
16520	//    operation.
16521	//
16522	//    * "failed-move" – The task failed to move in response to running the
16523	//    MoveReplicationTask (https://docs.aws.amazon.com/dms/latest/APIReference/API_MoveReplicationTask.html)
16524	//    operation.
16525	//
16526	//    * "modifying" – The task definition is being modified in response to
16527	//    running the ModifyReplicationTask (https://docs.aws.amazon.com/dms/latest/APIReference/API_ModifyReplicationTask.html)
16528	//    operation.
16529	//
16530	//    * "ready" – The task is in a ready state where it can respond to other
16531	//    task operations, such as StartReplicationTask (https://docs.aws.amazon.com/dms/latest/APIReference/API_StartReplicationTask.html)
16532	//    or DeleteReplicationTask (https://docs.aws.amazon.com/dms/latest/APIReference/API_DeleteReplicationTask.html).
16533	//
16534	//    * "running" – The task is performing a database migration in response
16535	//    to running the StartReplicationTask (https://docs.aws.amazon.com/dms/latest/APIReference/API_StartReplicationTask.html)
16536	//    operation.
16537	//
16538	//    * "starting" – The task is preparing to perform a database migration
16539	//    in response to running the StartReplicationTask (https://docs.aws.amazon.com/dms/latest/APIReference/API_StartReplicationTask.html)
16540	//    operation.
16541	//
16542	//    * "stopped" – The task has stopped in response to running the StopReplicationTask
16543	//    (https://docs.aws.amazon.com/dms/latest/APIReference/API_StopReplicationTask.html)
16544	//    operation.
16545	//
16546	//    * "stopping" – The task is preparing to stop in response to running
16547	//    the StopReplicationTask (https://docs.aws.amazon.com/dms/latest/APIReference/API_StopReplicationTask.html)
16548	//    operation.
16549	//
16550	//    * "testing" – The database migration specified for this task is being
16551	//    tested in response to running either the StartReplicationTaskAssessmentRun
16552	//    (https://docs.aws.amazon.com/dms/latest/APIReference/API_StartReplicationTaskAssessmentRun.html)
16553	//    or the StartReplicationTaskAssessment (https://docs.aws.amazon.com/dms/latest/APIReference/API_StartReplicationTaskAssessment.html)
16554	//    operation. StartReplicationTaskAssessmentRun (https://docs.aws.amazon.com/dms/latest/APIReference/API_StartReplicationTaskAssessmentRun.html)
16555	//    is an improved premigration task assessment operation. The StartReplicationTaskAssessment
16556	//    (https://docs.aws.amazon.com/dms/latest/APIReference/API_StartReplicationTaskAssessment.html)
16557	//    operation assesses data type compatibility only between the source and
16558	//    target database of a given migration task. In contrast, StartReplicationTaskAssessmentRun
16559	//    (https://docs.aws.amazon.com/dms/latest/APIReference/API_StartReplicationTaskAssessmentRun.html)
16560	//    enables you to specify a variety of premigration task assessments in addition
16561	//    to data type compatibility. These assessments include ones for the validity
16562	//    of primary key definitions and likely issues with database migration performance,
16563	//    among others.
16564	Status *string `type:"string"`
16565
16566	// The reason the replication task was stopped. This response parameter can
16567	// return one of the following values:
16568	//
16569	//    * "STOP_REASON_FULL_LOAD_COMPLETED" – Full-load migration completed.
16570	//
16571	//    * "STOP_REASON_CACHED_CHANGES_APPLIED" – Change data capture (CDC) load
16572	//    completed.
16573	//
16574	//    * "STOP_REASON_CACHED_CHANGES_NOT_APPLIED" – In a full-load and CDC
16575	//    migration, the full load stopped as specified before starting the CDC
16576	//    migration.
16577	//
16578	//    * "STOP_REASON_SERVER_TIME" – The migration stopped at the specified
16579	//    server time.
16580	StopReason *string `type:"string"`
16581
16582	// Table mappings specified in the task.
16583	TableMappings *string `type:"string"`
16584
16585	// The ARN that uniquely identifies the endpoint.
16586	TargetEndpointArn *string `type:"string"`
16587
16588	// The ARN of the replication instance to which this task is moved in response
16589	// to running the MoveReplicationTask (https://docs.aws.amazon.com/dms/latest/APIReference/API_MoveReplicationTask.html)
16590	// operation. Otherwise, this response parameter isn't a member of the ReplicationTask
16591	// object.
16592	TargetReplicationInstanceArn *string `type:"string"`
16593
16594	// Supplemental information that the task requires to migrate the data for certain
16595	// source and target endpoints. For more information, see Specifying Supplemental
16596	// Data for Task Settings (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Tasks.TaskData.html)
16597	// in the AWS Database Migration Service User Guide.
16598	TaskData *string `type:"string"`
16599}
16600
16601// String returns the string representation
16602func (s ReplicationTask) String() string {
16603	return awsutil.Prettify(s)
16604}
16605
16606// GoString returns the string representation
16607func (s ReplicationTask) GoString() string {
16608	return s.String()
16609}
16610
16611// SetCdcStartPosition sets the CdcStartPosition field's value.
16612func (s *ReplicationTask) SetCdcStartPosition(v string) *ReplicationTask {
16613	s.CdcStartPosition = &v
16614	return s
16615}
16616
16617// SetCdcStopPosition sets the CdcStopPosition field's value.
16618func (s *ReplicationTask) SetCdcStopPosition(v string) *ReplicationTask {
16619	s.CdcStopPosition = &v
16620	return s
16621}
16622
16623// SetLastFailureMessage sets the LastFailureMessage field's value.
16624func (s *ReplicationTask) SetLastFailureMessage(v string) *ReplicationTask {
16625	s.LastFailureMessage = &v
16626	return s
16627}
16628
16629// SetMigrationType sets the MigrationType field's value.
16630func (s *ReplicationTask) SetMigrationType(v string) *ReplicationTask {
16631	s.MigrationType = &v
16632	return s
16633}
16634
16635// SetRecoveryCheckpoint sets the RecoveryCheckpoint field's value.
16636func (s *ReplicationTask) SetRecoveryCheckpoint(v string) *ReplicationTask {
16637	s.RecoveryCheckpoint = &v
16638	return s
16639}
16640
16641// SetReplicationInstanceArn sets the ReplicationInstanceArn field's value.
16642func (s *ReplicationTask) SetReplicationInstanceArn(v string) *ReplicationTask {
16643	s.ReplicationInstanceArn = &v
16644	return s
16645}
16646
16647// SetReplicationTaskArn sets the ReplicationTaskArn field's value.
16648func (s *ReplicationTask) SetReplicationTaskArn(v string) *ReplicationTask {
16649	s.ReplicationTaskArn = &v
16650	return s
16651}
16652
16653// SetReplicationTaskCreationDate sets the ReplicationTaskCreationDate field's value.
16654func (s *ReplicationTask) SetReplicationTaskCreationDate(v time.Time) *ReplicationTask {
16655	s.ReplicationTaskCreationDate = &v
16656	return s
16657}
16658
16659// SetReplicationTaskIdentifier sets the ReplicationTaskIdentifier field's value.
16660func (s *ReplicationTask) SetReplicationTaskIdentifier(v string) *ReplicationTask {
16661	s.ReplicationTaskIdentifier = &v
16662	return s
16663}
16664
16665// SetReplicationTaskSettings sets the ReplicationTaskSettings field's value.
16666func (s *ReplicationTask) SetReplicationTaskSettings(v string) *ReplicationTask {
16667	s.ReplicationTaskSettings = &v
16668	return s
16669}
16670
16671// SetReplicationTaskStartDate sets the ReplicationTaskStartDate field's value.
16672func (s *ReplicationTask) SetReplicationTaskStartDate(v time.Time) *ReplicationTask {
16673	s.ReplicationTaskStartDate = &v
16674	return s
16675}
16676
16677// SetReplicationTaskStats sets the ReplicationTaskStats field's value.
16678func (s *ReplicationTask) SetReplicationTaskStats(v *ReplicationTaskStats) *ReplicationTask {
16679	s.ReplicationTaskStats = v
16680	return s
16681}
16682
16683// SetSourceEndpointArn sets the SourceEndpointArn field's value.
16684func (s *ReplicationTask) SetSourceEndpointArn(v string) *ReplicationTask {
16685	s.SourceEndpointArn = &v
16686	return s
16687}
16688
16689// SetStatus sets the Status field's value.
16690func (s *ReplicationTask) SetStatus(v string) *ReplicationTask {
16691	s.Status = &v
16692	return s
16693}
16694
16695// SetStopReason sets the StopReason field's value.
16696func (s *ReplicationTask) SetStopReason(v string) *ReplicationTask {
16697	s.StopReason = &v
16698	return s
16699}
16700
16701// SetTableMappings sets the TableMappings field's value.
16702func (s *ReplicationTask) SetTableMappings(v string) *ReplicationTask {
16703	s.TableMappings = &v
16704	return s
16705}
16706
16707// SetTargetEndpointArn sets the TargetEndpointArn field's value.
16708func (s *ReplicationTask) SetTargetEndpointArn(v string) *ReplicationTask {
16709	s.TargetEndpointArn = &v
16710	return s
16711}
16712
16713// SetTargetReplicationInstanceArn sets the TargetReplicationInstanceArn field's value.
16714func (s *ReplicationTask) SetTargetReplicationInstanceArn(v string) *ReplicationTask {
16715	s.TargetReplicationInstanceArn = &v
16716	return s
16717}
16718
16719// SetTaskData sets the TaskData field's value.
16720func (s *ReplicationTask) SetTaskData(v string) *ReplicationTask {
16721	s.TaskData = &v
16722	return s
16723}
16724
16725// The task assessment report in JSON format.
16726type ReplicationTaskAssessmentResult struct {
16727	_ struct{} `type:"structure"`
16728
16729	// The task assessment results in JSON format.
16730	AssessmentResults *string `type:"string"`
16731
16732	// The file containing the results of the task assessment.
16733	AssessmentResultsFile *string `type:"string"`
16734
16735	// The status of the task assessment.
16736	AssessmentStatus *string `type:"string"`
16737
16738	// The Amazon Resource Name (ARN) of the replication task.
16739	ReplicationTaskArn *string `type:"string"`
16740
16741	// The replication task identifier of the task on which the task assessment
16742	// was run.
16743	ReplicationTaskIdentifier *string `type:"string"`
16744
16745	// The date the task assessment was completed.
16746	ReplicationTaskLastAssessmentDate *time.Time `type:"timestamp"`
16747
16748	// The URL of the S3 object containing the task assessment results.
16749	S3ObjectUrl *string `type:"string"`
16750}
16751
16752// String returns the string representation
16753func (s ReplicationTaskAssessmentResult) String() string {
16754	return awsutil.Prettify(s)
16755}
16756
16757// GoString returns the string representation
16758func (s ReplicationTaskAssessmentResult) GoString() string {
16759	return s.String()
16760}
16761
16762// SetAssessmentResults sets the AssessmentResults field's value.
16763func (s *ReplicationTaskAssessmentResult) SetAssessmentResults(v string) *ReplicationTaskAssessmentResult {
16764	s.AssessmentResults = &v
16765	return s
16766}
16767
16768// SetAssessmentResultsFile sets the AssessmentResultsFile field's value.
16769func (s *ReplicationTaskAssessmentResult) SetAssessmentResultsFile(v string) *ReplicationTaskAssessmentResult {
16770	s.AssessmentResultsFile = &v
16771	return s
16772}
16773
16774// SetAssessmentStatus sets the AssessmentStatus field's value.
16775func (s *ReplicationTaskAssessmentResult) SetAssessmentStatus(v string) *ReplicationTaskAssessmentResult {
16776	s.AssessmentStatus = &v
16777	return s
16778}
16779
16780// SetReplicationTaskArn sets the ReplicationTaskArn field's value.
16781func (s *ReplicationTaskAssessmentResult) SetReplicationTaskArn(v string) *ReplicationTaskAssessmentResult {
16782	s.ReplicationTaskArn = &v
16783	return s
16784}
16785
16786// SetReplicationTaskIdentifier sets the ReplicationTaskIdentifier field's value.
16787func (s *ReplicationTaskAssessmentResult) SetReplicationTaskIdentifier(v string) *ReplicationTaskAssessmentResult {
16788	s.ReplicationTaskIdentifier = &v
16789	return s
16790}
16791
16792// SetReplicationTaskLastAssessmentDate sets the ReplicationTaskLastAssessmentDate field's value.
16793func (s *ReplicationTaskAssessmentResult) SetReplicationTaskLastAssessmentDate(v time.Time) *ReplicationTaskAssessmentResult {
16794	s.ReplicationTaskLastAssessmentDate = &v
16795	return s
16796}
16797
16798// SetS3ObjectUrl sets the S3ObjectUrl field's value.
16799func (s *ReplicationTaskAssessmentResult) SetS3ObjectUrl(v string) *ReplicationTaskAssessmentResult {
16800	s.S3ObjectUrl = &v
16801	return s
16802}
16803
16804// Provides information that describes a premigration assessment run that you
16805// have started using the StartReplicationTaskAssessmentRun operation.
16806//
16807// Some of the information appears based on other operations that can return
16808// the ReplicationTaskAssessmentRun object.
16809type ReplicationTaskAssessmentRun struct {
16810	_ struct{} `type:"structure"`
16811
16812	// Indication of the completion progress for the individual assessments specified
16813	// to run.
16814	AssessmentProgress *ReplicationTaskAssessmentRunProgress `type:"structure"`
16815
16816	// Unique name of the assessment run.
16817	AssessmentRunName *string `type:"string"`
16818
16819	// Last message generated by an individual assessment failure.
16820	LastFailureMessage *string `type:"string"`
16821
16822	// ARN of the migration task associated with this premigration assessment run.
16823	ReplicationTaskArn *string `type:"string"`
16824
16825	// Amazon Resource Name (ARN) of this assessment run.
16826	ReplicationTaskAssessmentRunArn *string `type:"string"`
16827
16828	// Date on which the assessment run was created using the StartReplicationTaskAssessmentRun
16829	// operation.
16830	ReplicationTaskAssessmentRunCreationDate *time.Time `type:"timestamp"`
16831
16832	// Encryption mode used to encrypt the assessment run results.
16833	ResultEncryptionMode *string `type:"string"`
16834
16835	// ARN of the AWS KMS encryption key used to encrypt the assessment run results.
16836	ResultKmsKeyArn *string `type:"string"`
16837
16838	// Amazon S3 bucket where AWS DMS stores the results of this assessment run.
16839	ResultLocationBucket *string `type:"string"`
16840
16841	// Folder in an Amazon S3 bucket where AWS DMS stores the results of this assessment
16842	// run.
16843	ResultLocationFolder *string `type:"string"`
16844
16845	// ARN of the service role used to start the assessment run using the StartReplicationTaskAssessmentRun
16846	// operation.
16847	ServiceAccessRoleArn *string `type:"string"`
16848
16849	// Assessment run status.
16850	//
16851	// This status can have one of the following values:
16852	//
16853	//    * "cancelling" – The assessment run was canceled by the CancelReplicationTaskAssessmentRun
16854	//    operation.
16855	//
16856	//    * "deleting" – The assessment run was deleted by the DeleteReplicationTaskAssessmentRun
16857	//    operation.
16858	//
16859	//    * "failed" – At least one individual assessment completed with a failed
16860	//    status.
16861	//
16862	//    * "error-provisioning" – An internal error occurred while resources
16863	//    were provisioned (during provisioning status).
16864	//
16865	//    * "error-executing" – An internal error occurred while individual assessments
16866	//    ran (during running status).
16867	//
16868	//    * "invalid state" – The assessment run is in an unknown state.
16869	//
16870	//    * "passed" – All individual assessments have completed, and none has
16871	//    a failed status.
16872	//
16873	//    * "provisioning" – Resources required to run individual assessments
16874	//    are being provisioned.
16875	//
16876	//    * "running" – Individual assessments are being run.
16877	//
16878	//    * "starting" – The assessment run is starting, but resources are not
16879	//    yet being provisioned for individual assessments.
16880	Status *string `type:"string"`
16881}
16882
16883// String returns the string representation
16884func (s ReplicationTaskAssessmentRun) String() string {
16885	return awsutil.Prettify(s)
16886}
16887
16888// GoString returns the string representation
16889func (s ReplicationTaskAssessmentRun) GoString() string {
16890	return s.String()
16891}
16892
16893// SetAssessmentProgress sets the AssessmentProgress field's value.
16894func (s *ReplicationTaskAssessmentRun) SetAssessmentProgress(v *ReplicationTaskAssessmentRunProgress) *ReplicationTaskAssessmentRun {
16895	s.AssessmentProgress = v
16896	return s
16897}
16898
16899// SetAssessmentRunName sets the AssessmentRunName field's value.
16900func (s *ReplicationTaskAssessmentRun) SetAssessmentRunName(v string) *ReplicationTaskAssessmentRun {
16901	s.AssessmentRunName = &v
16902	return s
16903}
16904
16905// SetLastFailureMessage sets the LastFailureMessage field's value.
16906func (s *ReplicationTaskAssessmentRun) SetLastFailureMessage(v string) *ReplicationTaskAssessmentRun {
16907	s.LastFailureMessage = &v
16908	return s
16909}
16910
16911// SetReplicationTaskArn sets the ReplicationTaskArn field's value.
16912func (s *ReplicationTaskAssessmentRun) SetReplicationTaskArn(v string) *ReplicationTaskAssessmentRun {
16913	s.ReplicationTaskArn = &v
16914	return s
16915}
16916
16917// SetReplicationTaskAssessmentRunArn sets the ReplicationTaskAssessmentRunArn field's value.
16918func (s *ReplicationTaskAssessmentRun) SetReplicationTaskAssessmentRunArn(v string) *ReplicationTaskAssessmentRun {
16919	s.ReplicationTaskAssessmentRunArn = &v
16920	return s
16921}
16922
16923// SetReplicationTaskAssessmentRunCreationDate sets the ReplicationTaskAssessmentRunCreationDate field's value.
16924func (s *ReplicationTaskAssessmentRun) SetReplicationTaskAssessmentRunCreationDate(v time.Time) *ReplicationTaskAssessmentRun {
16925	s.ReplicationTaskAssessmentRunCreationDate = &v
16926	return s
16927}
16928
16929// SetResultEncryptionMode sets the ResultEncryptionMode field's value.
16930func (s *ReplicationTaskAssessmentRun) SetResultEncryptionMode(v string) *ReplicationTaskAssessmentRun {
16931	s.ResultEncryptionMode = &v
16932	return s
16933}
16934
16935// SetResultKmsKeyArn sets the ResultKmsKeyArn field's value.
16936func (s *ReplicationTaskAssessmentRun) SetResultKmsKeyArn(v string) *ReplicationTaskAssessmentRun {
16937	s.ResultKmsKeyArn = &v
16938	return s
16939}
16940
16941// SetResultLocationBucket sets the ResultLocationBucket field's value.
16942func (s *ReplicationTaskAssessmentRun) SetResultLocationBucket(v string) *ReplicationTaskAssessmentRun {
16943	s.ResultLocationBucket = &v
16944	return s
16945}
16946
16947// SetResultLocationFolder sets the ResultLocationFolder field's value.
16948func (s *ReplicationTaskAssessmentRun) SetResultLocationFolder(v string) *ReplicationTaskAssessmentRun {
16949	s.ResultLocationFolder = &v
16950	return s
16951}
16952
16953// SetServiceAccessRoleArn sets the ServiceAccessRoleArn field's value.
16954func (s *ReplicationTaskAssessmentRun) SetServiceAccessRoleArn(v string) *ReplicationTaskAssessmentRun {
16955	s.ServiceAccessRoleArn = &v
16956	return s
16957}
16958
16959// SetStatus sets the Status field's value.
16960func (s *ReplicationTaskAssessmentRun) SetStatus(v string) *ReplicationTaskAssessmentRun {
16961	s.Status = &v
16962	return s
16963}
16964
16965// The progress values reported by the AssessmentProgress response element.
16966type ReplicationTaskAssessmentRunProgress struct {
16967	_ struct{} `type:"structure"`
16968
16969	// The number of individual assessments that have completed, successfully or
16970	// not.
16971	IndividualAssessmentCompletedCount *int64 `type:"integer"`
16972
16973	// The number of individual assessments that are specified to run.
16974	IndividualAssessmentCount *int64 `type:"integer"`
16975}
16976
16977// String returns the string representation
16978func (s ReplicationTaskAssessmentRunProgress) String() string {
16979	return awsutil.Prettify(s)
16980}
16981
16982// GoString returns the string representation
16983func (s ReplicationTaskAssessmentRunProgress) GoString() string {
16984	return s.String()
16985}
16986
16987// SetIndividualAssessmentCompletedCount sets the IndividualAssessmentCompletedCount field's value.
16988func (s *ReplicationTaskAssessmentRunProgress) SetIndividualAssessmentCompletedCount(v int64) *ReplicationTaskAssessmentRunProgress {
16989	s.IndividualAssessmentCompletedCount = &v
16990	return s
16991}
16992
16993// SetIndividualAssessmentCount sets the IndividualAssessmentCount field's value.
16994func (s *ReplicationTaskAssessmentRunProgress) SetIndividualAssessmentCount(v int64) *ReplicationTaskAssessmentRunProgress {
16995	s.IndividualAssessmentCount = &v
16996	return s
16997}
16998
16999// Provides information that describes an individual assessment from a premigration
17000// assessment run.
17001type ReplicationTaskIndividualAssessment struct {
17002	_ struct{} `type:"structure"`
17003
17004	// Name of this individual assessment.
17005	IndividualAssessmentName *string `type:"string"`
17006
17007	// ARN of the premigration assessment run that is created to run this individual
17008	// assessment.
17009	ReplicationTaskAssessmentRunArn *string `type:"string"`
17010
17011	// Amazon Resource Name (ARN) of this individual assessment.
17012	ReplicationTaskIndividualAssessmentArn *string `type:"string"`
17013
17014	// Date when this individual assessment was started as part of running the StartReplicationTaskAssessmentRun
17015	// operation.
17016	ReplicationTaskIndividualAssessmentStartDate *time.Time `type:"timestamp"`
17017
17018	// Individual assessment status.
17019	//
17020	// This status can have one of the following values:
17021	//
17022	//    * "cancelled"
17023	//
17024	//    * "error"
17025	//
17026	//    * "failed"
17027	//
17028	//    * "passed"
17029	//
17030	//    * "pending"
17031	//
17032	//    * "running"
17033	Status *string `type:"string"`
17034}
17035
17036// String returns the string representation
17037func (s ReplicationTaskIndividualAssessment) String() string {
17038	return awsutil.Prettify(s)
17039}
17040
17041// GoString returns the string representation
17042func (s ReplicationTaskIndividualAssessment) GoString() string {
17043	return s.String()
17044}
17045
17046// SetIndividualAssessmentName sets the IndividualAssessmentName field's value.
17047func (s *ReplicationTaskIndividualAssessment) SetIndividualAssessmentName(v string) *ReplicationTaskIndividualAssessment {
17048	s.IndividualAssessmentName = &v
17049	return s
17050}
17051
17052// SetReplicationTaskAssessmentRunArn sets the ReplicationTaskAssessmentRunArn field's value.
17053func (s *ReplicationTaskIndividualAssessment) SetReplicationTaskAssessmentRunArn(v string) *ReplicationTaskIndividualAssessment {
17054	s.ReplicationTaskAssessmentRunArn = &v
17055	return s
17056}
17057
17058// SetReplicationTaskIndividualAssessmentArn sets the ReplicationTaskIndividualAssessmentArn field's value.
17059func (s *ReplicationTaskIndividualAssessment) SetReplicationTaskIndividualAssessmentArn(v string) *ReplicationTaskIndividualAssessment {
17060	s.ReplicationTaskIndividualAssessmentArn = &v
17061	return s
17062}
17063
17064// SetReplicationTaskIndividualAssessmentStartDate sets the ReplicationTaskIndividualAssessmentStartDate field's value.
17065func (s *ReplicationTaskIndividualAssessment) SetReplicationTaskIndividualAssessmentStartDate(v time.Time) *ReplicationTaskIndividualAssessment {
17066	s.ReplicationTaskIndividualAssessmentStartDate = &v
17067	return s
17068}
17069
17070// SetStatus sets the Status field's value.
17071func (s *ReplicationTaskIndividualAssessment) SetStatus(v string) *ReplicationTaskIndividualAssessment {
17072	s.Status = &v
17073	return s
17074}
17075
17076// In response to a request by the DescribeReplicationTasks operation, this
17077// object provides a collection of statistics about a replication task.
17078type ReplicationTaskStats struct {
17079	_ struct{} `type:"structure"`
17080
17081	// The elapsed time of the task, in milliseconds.
17082	ElapsedTimeMillis *int64 `type:"long"`
17083
17084	// The date the replication task was started either with a fresh start or a
17085	// target reload.
17086	FreshStartDate *time.Time `type:"timestamp"`
17087
17088	// The date the replication task full load was completed.
17089	FullLoadFinishDate *time.Time `type:"timestamp"`
17090
17091	// The percent complete for the full load migration task.
17092	FullLoadProgressPercent *int64 `type:"integer"`
17093
17094	// The date the replication task full load was started.
17095	FullLoadStartDate *time.Time `type:"timestamp"`
17096
17097	// The date the replication task was started either with a fresh start or a
17098	// resume. For more information, see StartReplicationTaskType (https://docs.aws.amazon.com/dms/latest/APIReference/API_StartReplicationTask.html#DMS-StartReplicationTask-request-StartReplicationTaskType).
17099	StartDate *time.Time `type:"timestamp"`
17100
17101	// The date the replication task was stopped.
17102	StopDate *time.Time `type:"timestamp"`
17103
17104	// The number of errors that have occurred during this task.
17105	TablesErrored *int64 `type:"integer"`
17106
17107	// The number of tables loaded for this task.
17108	TablesLoaded *int64 `type:"integer"`
17109
17110	// The number of tables currently loading for this task.
17111	TablesLoading *int64 `type:"integer"`
17112
17113	// The number of tables queued for this task.
17114	TablesQueued *int64 `type:"integer"`
17115}
17116
17117// String returns the string representation
17118func (s ReplicationTaskStats) String() string {
17119	return awsutil.Prettify(s)
17120}
17121
17122// GoString returns the string representation
17123func (s ReplicationTaskStats) GoString() string {
17124	return s.String()
17125}
17126
17127// SetElapsedTimeMillis sets the ElapsedTimeMillis field's value.
17128func (s *ReplicationTaskStats) SetElapsedTimeMillis(v int64) *ReplicationTaskStats {
17129	s.ElapsedTimeMillis = &v
17130	return s
17131}
17132
17133// SetFreshStartDate sets the FreshStartDate field's value.
17134func (s *ReplicationTaskStats) SetFreshStartDate(v time.Time) *ReplicationTaskStats {
17135	s.FreshStartDate = &v
17136	return s
17137}
17138
17139// SetFullLoadFinishDate sets the FullLoadFinishDate field's value.
17140func (s *ReplicationTaskStats) SetFullLoadFinishDate(v time.Time) *ReplicationTaskStats {
17141	s.FullLoadFinishDate = &v
17142	return s
17143}
17144
17145// SetFullLoadProgressPercent sets the FullLoadProgressPercent field's value.
17146func (s *ReplicationTaskStats) SetFullLoadProgressPercent(v int64) *ReplicationTaskStats {
17147	s.FullLoadProgressPercent = &v
17148	return s
17149}
17150
17151// SetFullLoadStartDate sets the FullLoadStartDate field's value.
17152func (s *ReplicationTaskStats) SetFullLoadStartDate(v time.Time) *ReplicationTaskStats {
17153	s.FullLoadStartDate = &v
17154	return s
17155}
17156
17157// SetStartDate sets the StartDate field's value.
17158func (s *ReplicationTaskStats) SetStartDate(v time.Time) *ReplicationTaskStats {
17159	s.StartDate = &v
17160	return s
17161}
17162
17163// SetStopDate sets the StopDate field's value.
17164func (s *ReplicationTaskStats) SetStopDate(v time.Time) *ReplicationTaskStats {
17165	s.StopDate = &v
17166	return s
17167}
17168
17169// SetTablesErrored sets the TablesErrored field's value.
17170func (s *ReplicationTaskStats) SetTablesErrored(v int64) *ReplicationTaskStats {
17171	s.TablesErrored = &v
17172	return s
17173}
17174
17175// SetTablesLoaded sets the TablesLoaded field's value.
17176func (s *ReplicationTaskStats) SetTablesLoaded(v int64) *ReplicationTaskStats {
17177	s.TablesLoaded = &v
17178	return s
17179}
17180
17181// SetTablesLoading sets the TablesLoading field's value.
17182func (s *ReplicationTaskStats) SetTablesLoading(v int64) *ReplicationTaskStats {
17183	s.TablesLoading = &v
17184	return s
17185}
17186
17187// SetTablesQueued sets the TablesQueued field's value.
17188func (s *ReplicationTaskStats) SetTablesQueued(v int64) *ReplicationTaskStats {
17189	s.TablesQueued = &v
17190	return s
17191}
17192
17193// The resource you are attempting to create already exists.
17194type ResourceAlreadyExistsFault struct {
17195	_            struct{}                  `type:"structure"`
17196	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
17197
17198	Message_ *string `locationName:"message" type:"string"`
17199
17200	ResourceArn *string `locationName:"resourceArn" type:"string"`
17201}
17202
17203// String returns the string representation
17204func (s ResourceAlreadyExistsFault) String() string {
17205	return awsutil.Prettify(s)
17206}
17207
17208// GoString returns the string representation
17209func (s ResourceAlreadyExistsFault) GoString() string {
17210	return s.String()
17211}
17212
17213func newErrorResourceAlreadyExistsFault(v protocol.ResponseMetadata) error {
17214	return &ResourceAlreadyExistsFault{
17215		RespMetadata: v,
17216	}
17217}
17218
17219// Code returns the exception type name.
17220func (s *ResourceAlreadyExistsFault) Code() string {
17221	return "ResourceAlreadyExistsFault"
17222}
17223
17224// Message returns the exception's message.
17225func (s *ResourceAlreadyExistsFault) Message() string {
17226	if s.Message_ != nil {
17227		return *s.Message_
17228	}
17229	return ""
17230}
17231
17232// OrigErr always returns nil, satisfies awserr.Error interface.
17233func (s *ResourceAlreadyExistsFault) OrigErr() error {
17234	return nil
17235}
17236
17237func (s *ResourceAlreadyExistsFault) Error() string {
17238	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
17239}
17240
17241// Status code returns the HTTP status code for the request's response error.
17242func (s *ResourceAlreadyExistsFault) StatusCode() int {
17243	return s.RespMetadata.StatusCode
17244}
17245
17246// RequestID returns the service's response RequestID for request.
17247func (s *ResourceAlreadyExistsFault) RequestID() string {
17248	return s.RespMetadata.RequestID
17249}
17250
17251// The resource could not be found.
17252type ResourceNotFoundFault struct {
17253	_            struct{}                  `type:"structure"`
17254	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
17255
17256	Message_ *string `locationName:"message" type:"string"`
17257}
17258
17259// String returns the string representation
17260func (s ResourceNotFoundFault) String() string {
17261	return awsutil.Prettify(s)
17262}
17263
17264// GoString returns the string representation
17265func (s ResourceNotFoundFault) GoString() string {
17266	return s.String()
17267}
17268
17269func newErrorResourceNotFoundFault(v protocol.ResponseMetadata) error {
17270	return &ResourceNotFoundFault{
17271		RespMetadata: v,
17272	}
17273}
17274
17275// Code returns the exception type name.
17276func (s *ResourceNotFoundFault) Code() string {
17277	return "ResourceNotFoundFault"
17278}
17279
17280// Message returns the exception's message.
17281func (s *ResourceNotFoundFault) Message() string {
17282	if s.Message_ != nil {
17283		return *s.Message_
17284	}
17285	return ""
17286}
17287
17288// OrigErr always returns nil, satisfies awserr.Error interface.
17289func (s *ResourceNotFoundFault) OrigErr() error {
17290	return nil
17291}
17292
17293func (s *ResourceNotFoundFault) Error() string {
17294	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
17295}
17296
17297// Status code returns the HTTP status code for the request's response error.
17298func (s *ResourceNotFoundFault) StatusCode() int {
17299	return s.RespMetadata.StatusCode
17300}
17301
17302// RequestID returns the service's response RequestID for request.
17303func (s *ResourceNotFoundFault) RequestID() string {
17304	return s.RespMetadata.RequestID
17305}
17306
17307// Identifies an AWS DMS resource and any pending actions for it.
17308type ResourcePendingMaintenanceActions struct {
17309	_ struct{} `type:"structure"`
17310
17311	// Detailed information about the pending maintenance action.
17312	PendingMaintenanceActionDetails []*PendingMaintenanceAction `type:"list"`
17313
17314	// The Amazon Resource Name (ARN) of the DMS resource that the pending maintenance
17315	// action applies to. For information about creating an ARN, see Constructing
17316	// an Amazon Resource Name (ARN) for AWS DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Introduction.AWS.ARN.html)
17317	// in the DMS documentation.
17318	ResourceIdentifier *string `type:"string"`
17319}
17320
17321// String returns the string representation
17322func (s ResourcePendingMaintenanceActions) String() string {
17323	return awsutil.Prettify(s)
17324}
17325
17326// GoString returns the string representation
17327func (s ResourcePendingMaintenanceActions) GoString() string {
17328	return s.String()
17329}
17330
17331// SetPendingMaintenanceActionDetails sets the PendingMaintenanceActionDetails field's value.
17332func (s *ResourcePendingMaintenanceActions) SetPendingMaintenanceActionDetails(v []*PendingMaintenanceAction) *ResourcePendingMaintenanceActions {
17333	s.PendingMaintenanceActionDetails = v
17334	return s
17335}
17336
17337// SetResourceIdentifier sets the ResourceIdentifier field's value.
17338func (s *ResourcePendingMaintenanceActions) SetResourceIdentifier(v string) *ResourcePendingMaintenanceActions {
17339	s.ResourceIdentifier = &v
17340	return s
17341}
17342
17343// The quota for this resource quota has been exceeded.
17344type ResourceQuotaExceededFault struct {
17345	_            struct{}                  `type:"structure"`
17346	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
17347
17348	Message_ *string `locationName:"message" type:"string"`
17349}
17350
17351// String returns the string representation
17352func (s ResourceQuotaExceededFault) String() string {
17353	return awsutil.Prettify(s)
17354}
17355
17356// GoString returns the string representation
17357func (s ResourceQuotaExceededFault) GoString() string {
17358	return s.String()
17359}
17360
17361func newErrorResourceQuotaExceededFault(v protocol.ResponseMetadata) error {
17362	return &ResourceQuotaExceededFault{
17363		RespMetadata: v,
17364	}
17365}
17366
17367// Code returns the exception type name.
17368func (s *ResourceQuotaExceededFault) Code() string {
17369	return "ResourceQuotaExceededFault"
17370}
17371
17372// Message returns the exception's message.
17373func (s *ResourceQuotaExceededFault) Message() string {
17374	if s.Message_ != nil {
17375		return *s.Message_
17376	}
17377	return ""
17378}
17379
17380// OrigErr always returns nil, satisfies awserr.Error interface.
17381func (s *ResourceQuotaExceededFault) OrigErr() error {
17382	return nil
17383}
17384
17385func (s *ResourceQuotaExceededFault) Error() string {
17386	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
17387}
17388
17389// Status code returns the HTTP status code for the request's response error.
17390func (s *ResourceQuotaExceededFault) StatusCode() int {
17391	return s.RespMetadata.StatusCode
17392}
17393
17394// RequestID returns the service's response RequestID for request.
17395func (s *ResourceQuotaExceededFault) RequestID() string {
17396	return s.RespMetadata.RequestID
17397}
17398
17399// Insufficient privileges are preventing access to an Amazon S3 object.
17400type S3AccessDeniedFault struct {
17401	_            struct{}                  `type:"structure"`
17402	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
17403
17404	Message_ *string `locationName:"message" type:"string"`
17405}
17406
17407// String returns the string representation
17408func (s S3AccessDeniedFault) String() string {
17409	return awsutil.Prettify(s)
17410}
17411
17412// GoString returns the string representation
17413func (s S3AccessDeniedFault) GoString() string {
17414	return s.String()
17415}
17416
17417func newErrorS3AccessDeniedFault(v protocol.ResponseMetadata) error {
17418	return &S3AccessDeniedFault{
17419		RespMetadata: v,
17420	}
17421}
17422
17423// Code returns the exception type name.
17424func (s *S3AccessDeniedFault) Code() string {
17425	return "S3AccessDeniedFault"
17426}
17427
17428// Message returns the exception's message.
17429func (s *S3AccessDeniedFault) Message() string {
17430	if s.Message_ != nil {
17431		return *s.Message_
17432	}
17433	return ""
17434}
17435
17436// OrigErr always returns nil, satisfies awserr.Error interface.
17437func (s *S3AccessDeniedFault) OrigErr() error {
17438	return nil
17439}
17440
17441func (s *S3AccessDeniedFault) Error() string {
17442	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
17443}
17444
17445// Status code returns the HTTP status code for the request's response error.
17446func (s *S3AccessDeniedFault) StatusCode() int {
17447	return s.RespMetadata.StatusCode
17448}
17449
17450// RequestID returns the service's response RequestID for request.
17451func (s *S3AccessDeniedFault) RequestID() string {
17452	return s.RespMetadata.RequestID
17453}
17454
17455// A specified Amazon S3 bucket, bucket folder, or other object can't be found.
17456type S3ResourceNotFoundFault struct {
17457	_            struct{}                  `type:"structure"`
17458	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
17459
17460	Message_ *string `locationName:"message" type:"string"`
17461}
17462
17463// String returns the string representation
17464func (s S3ResourceNotFoundFault) String() string {
17465	return awsutil.Prettify(s)
17466}
17467
17468// GoString returns the string representation
17469func (s S3ResourceNotFoundFault) GoString() string {
17470	return s.String()
17471}
17472
17473func newErrorS3ResourceNotFoundFault(v protocol.ResponseMetadata) error {
17474	return &S3ResourceNotFoundFault{
17475		RespMetadata: v,
17476	}
17477}
17478
17479// Code returns the exception type name.
17480func (s *S3ResourceNotFoundFault) Code() string {
17481	return "S3ResourceNotFoundFault"
17482}
17483
17484// Message returns the exception's message.
17485func (s *S3ResourceNotFoundFault) Message() string {
17486	if s.Message_ != nil {
17487		return *s.Message_
17488	}
17489	return ""
17490}
17491
17492// OrigErr always returns nil, satisfies awserr.Error interface.
17493func (s *S3ResourceNotFoundFault) OrigErr() error {
17494	return nil
17495}
17496
17497func (s *S3ResourceNotFoundFault) Error() string {
17498	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
17499}
17500
17501// Status code returns the HTTP status code for the request's response error.
17502func (s *S3ResourceNotFoundFault) StatusCode() int {
17503	return s.RespMetadata.StatusCode
17504}
17505
17506// RequestID returns the service's response RequestID for request.
17507func (s *S3ResourceNotFoundFault) RequestID() string {
17508	return s.RespMetadata.RequestID
17509}
17510
17511// Settings for exporting data to Amazon S3.
17512type S3Settings struct {
17513	_ struct{} `type:"structure"`
17514
17515	// An optional parameter to set a folder name in the S3 bucket. If provided,
17516	// tables are created in the path bucketFolder/schema_name/table_name/. If this
17517	// parameter isn't specified, then the path used is schema_name/table_name/.
17518	BucketFolder *string `type:"string"`
17519
17520	// The name of the S3 bucket.
17521	BucketName *string `type:"string"`
17522
17523	// A value that enables a change data capture (CDC) load to write INSERT and
17524	// UPDATE operations to .csv or .parquet (columnar storage) output files. The
17525	// default setting is false, but when CdcInsertsAndUpdates is set to true or
17526	// y, only INSERTs and UPDATEs from the source database are migrated to the
17527	// .csv or .parquet file.
17528	//
17529	// For .csv file format only, how these INSERTs and UPDATEs are recorded depends
17530	// on the value of the IncludeOpForFullLoad parameter. If IncludeOpForFullLoad
17531	// is set to true, the first field of every CDC record is set to either I or
17532	// U to indicate INSERT and UPDATE operations at the source. But if IncludeOpForFullLoad
17533	// is set to false, CDC records are written without an indication of INSERT
17534	// or UPDATE operations at the source. For more information about how these
17535	// settings work together, see Indicating Source DB Operations in Migrated S3
17536	// Data (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.S3.html#CHAP_Target.S3.Configuring.InsertOps)
17537	// in the AWS Database Migration Service User Guide..
17538	//
17539	// AWS DMS supports the use of the CdcInsertsAndUpdates parameter in versions
17540	// 3.3.1 and later.
17541	//
17542	// CdcInsertsOnly and CdcInsertsAndUpdates can't both be set to true for the
17543	// same endpoint. Set either CdcInsertsOnly or CdcInsertsAndUpdates to true
17544	// for the same endpoint, but not both.
17545	CdcInsertsAndUpdates *bool `type:"boolean"`
17546
17547	// A value that enables a change data capture (CDC) load to write only INSERT
17548	// operations to .csv or columnar storage (.parquet) output files. By default
17549	// (the false setting), the first field in a .csv or .parquet record contains
17550	// the letter I (INSERT), U (UPDATE), or D (DELETE). These values indicate whether
17551	// the row was inserted, updated, or deleted at the source database for a CDC
17552	// load to the target.
17553	//
17554	// If CdcInsertsOnly is set to true or y, only INSERTs from the source database
17555	// are migrated to the .csv or .parquet file. For .csv format only, how these
17556	// INSERTs are recorded depends on the value of IncludeOpForFullLoad. If IncludeOpForFullLoad
17557	// is set to true, the first field of every CDC record is set to I to indicate
17558	// the INSERT operation at the source. If IncludeOpForFullLoad is set to false,
17559	// every CDC record is written without a first field to indicate the INSERT
17560	// operation at the source. For more information about how these settings work
17561	// together, see Indicating Source DB Operations in Migrated S3 Data (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.S3.html#CHAP_Target.S3.Configuring.InsertOps)
17562	// in the AWS Database Migration Service User Guide..
17563	//
17564	// AWS DMS supports the interaction described preceding between the CdcInsertsOnly
17565	// and IncludeOpForFullLoad parameters in versions 3.1.4 and later.
17566	//
17567	// CdcInsertsOnly and CdcInsertsAndUpdates can't both be set to true for the
17568	// same endpoint. Set either CdcInsertsOnly or CdcInsertsAndUpdates to true
17569	// for the same endpoint, but not both.
17570	CdcInsertsOnly *bool `type:"boolean"`
17571
17572	// Specifies the folder path of CDC files. For an S3 source, this setting is
17573	// required if a task captures change data; otherwise, it's optional. If CdcPath
17574	// is set, AWS DMS reads CDC files from this path and replicates the data changes
17575	// to the target endpoint. For an S3 target if you set PreserveTransactions
17576	// (https://docs.aws.amazon.com/dms/latest/APIReference/API_S3Settings.html#DMS-Type-S3Settings-PreserveTransactions)
17577	// to true, AWS DMS verifies that you have set this parameter to a folder path
17578	// on your S3 target where AWS DMS can save the transaction order for the CDC
17579	// load. AWS DMS creates this CDC folder path in either your S3 target working
17580	// directory or the S3 target location specified by BucketFolder (https://docs.aws.amazon.com/dms/latest/APIReference/API_S3Settings.html#DMS-Type-S3Settings-BucketFolder)
17581	// and BucketName (https://docs.aws.amazon.com/dms/latest/APIReference/API_S3Settings.html#DMS-Type-S3Settings-BucketName).
17582	//
17583	// For example, if you specify CdcPath as MyChangedData, and you specify BucketName
17584	// as MyTargetBucket but do not specify BucketFolder, AWS DMS creates the CDC
17585	// folder path following: MyTargetBucket/MyChangedData.
17586	//
17587	// If you specify the same CdcPath, and you specify BucketName as MyTargetBucket
17588	// and BucketFolder as MyTargetData, AWS DMS creates the CDC folder path following:
17589	// MyTargetBucket/MyTargetData/MyChangedData.
17590	//
17591	// For more information on CDC including transaction order on an S3 target,
17592	// see Capturing data changes (CDC) including transaction order on the S3 target
17593	// (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.S3.html#CHAP_Target.S3.EndpointSettings.CdcPath).
17594	//
17595	// This setting is supported in AWS DMS versions 3.4.2 and later.
17596	CdcPath *string `type:"string"`
17597
17598	// An optional parameter to use GZIP to compress the target files. Set to GZIP
17599	// to compress the target files. Either set this parameter to NONE (the default)
17600	// or don't use it to leave the files uncompressed. This parameter applies to
17601	// both .csv and .parquet file formats.
17602	CompressionType *string `type:"string" enum:"CompressionTypeValue"`
17603
17604	// The delimiter used to separate columns in the .csv file for both source and
17605	// target. The default is a comma.
17606	CsvDelimiter *string `type:"string"`
17607
17608	// This setting only applies if your Amazon S3 output files during a change
17609	// data capture (CDC) load are written in .csv format. If UseCsvNoSupValue (https://docs.aws.amazon.com/dms/latest/APIReference/API_S3Settings.html#DMS-Type-S3Settings-UseCsvNoSupValue)
17610	// is set to true, specify a string value that you want AWS DMS to use for all
17611	// columns not included in the supplemental log. If you do not specify a string
17612	// value, AWS DMS uses the null value for these columns regardless of the UseCsvNoSupValue
17613	// setting.
17614	//
17615	// This setting is supported in AWS DMS versions 3.4.1 and later.
17616	CsvNoSupValue *string `type:"string"`
17617
17618	// The delimiter used to separate rows in the .csv file for both source and
17619	// target. The default is a carriage return (\n).
17620	CsvRowDelimiter *string `type:"string"`
17621
17622	// The format of the data that you want to use for output. You can choose one
17623	// of the following:
17624	//
17625	//    * csv : This is a row-based file format with comma-separated values (.csv).
17626	//
17627	//    * parquet : Apache Parquet (.parquet) is a columnar storage file format
17628	//    that features efficient compression and provides faster query response.
17629	DataFormat *string `type:"string" enum:"DataFormatValue"`
17630
17631	// The size of one data page in bytes. This parameter defaults to 1024 * 1024
17632	// bytes (1 MiB). This number is used for .parquet file format only.
17633	DataPageSize *int64 `type:"integer"`
17634
17635	// Specifies a date separating delimiter to use during folder partitioning.
17636	// The default value is SLASH. Use this parameter when DatePartitionedEnabled
17637	// is set to true.
17638	DatePartitionDelimiter *string `type:"string" enum:"DatePartitionDelimiterValue"`
17639
17640	// When set to true, this parameter partitions S3 bucket folders based on transaction
17641	// commit dates. The default value is false. For more information about date-based
17642	// folder partitoning, see Using date-based folder partitioning (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.S3.html#CHAP_Target.S3.DatePartitioning).
17643	DatePartitionEnabled *bool `type:"boolean"`
17644
17645	// Identifies the sequence of the date format to use during folder partitioning.
17646	// The default value is YYYYMMDD. Use this parameter when DatePartitionedEnabled
17647	// is set to true.
17648	DatePartitionSequence *string `type:"string" enum:"DatePartitionSequenceValue"`
17649
17650	// The maximum size of an encoded dictionary page of a column. If the dictionary
17651	// page exceeds this, this column is stored using an encoding type of PLAIN.
17652	// This parameter defaults to 1024 * 1024 bytes (1 MiB), the maximum size of
17653	// a dictionary page before it reverts to PLAIN encoding. This size is used
17654	// for .parquet file format only.
17655	DictPageSizeLimit *int64 `type:"integer"`
17656
17657	// A value that enables statistics for Parquet pages and row groups. Choose
17658	// true to enable statistics, false to disable. Statistics include NULL, DISTINCT,
17659	// MAX, and MIN values. This parameter defaults to true. This value is used
17660	// for .parquet file format only.
17661	EnableStatistics *bool `type:"boolean"`
17662
17663	// The type of encoding you are using:
17664	//
17665	//    * RLE_DICTIONARY uses a combination of bit-packing and run-length encoding
17666	//    to store repeated values more efficiently. This is the default.
17667	//
17668	//    * PLAIN doesn't use encoding at all. Values are stored as they are.
17669	//
17670	//    * PLAIN_DICTIONARY builds a dictionary of the values encountered in a
17671	//    given column. The dictionary is stored in a dictionary page for each column
17672	//    chunk.
17673	EncodingType *string `type:"string" enum:"EncodingTypeValue"`
17674
17675	// The type of server-side encryption that you want to use for your data. This
17676	// encryption type is part of the endpoint settings or the extra connections
17677	// attributes for Amazon S3. You can choose either SSE_S3 (the default) or SSE_KMS.
17678	//
17679	// For the ModifyEndpoint operation, you can change the existing value of the
17680	// EncryptionMode parameter from SSE_KMS to SSE_S3. But you can’t change the
17681	// existing value from SSE_S3 to SSE_KMS.
17682	//
17683	// To use SSE_S3, you need an AWS Identity and Access Management (IAM) role
17684	// with permission to allow "arn:aws:s3:::dms-*" to use the following actions:
17685	//
17686	//    * s3:CreateBucket
17687	//
17688	//    * s3:ListBucket
17689	//
17690	//    * s3:DeleteBucket
17691	//
17692	//    * s3:GetBucketLocation
17693	//
17694	//    * s3:GetObject
17695	//
17696	//    * s3:PutObject
17697	//
17698	//    * s3:DeleteObject
17699	//
17700	//    * s3:GetObjectVersion
17701	//
17702	//    * s3:GetBucketPolicy
17703	//
17704	//    * s3:PutBucketPolicy
17705	//
17706	//    * s3:DeleteBucketPolicy
17707	EncryptionMode *string `type:"string" enum:"EncryptionModeValue"`
17708
17709	// Specifies how tables are defined in the S3 source files only.
17710	ExternalTableDefinition *string `type:"string"`
17711
17712	// A value that enables a full load to write INSERT operations to the comma-separated
17713	// value (.csv) output files only to indicate how the rows were added to the
17714	// source database.
17715	//
17716	// AWS DMS supports the IncludeOpForFullLoad parameter in versions 3.1.4 and
17717	// later.
17718	//
17719	// For full load, records can only be inserted. By default (the false setting),
17720	// no information is recorded in these output files for a full load to indicate
17721	// that the rows were inserted at the source database. If IncludeOpForFullLoad
17722	// is set to true or y, the INSERT is recorded as an I annotation in the first
17723	// field of the .csv file. This allows the format of your target records from
17724	// a full load to be consistent with the target records from a CDC load.
17725	//
17726	// This setting works together with the CdcInsertsOnly and the CdcInsertsAndUpdates
17727	// parameters for output to .csv files only. For more information about how
17728	// these settings work together, see Indicating Source DB Operations in Migrated
17729	// S3 Data (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.S3.html#CHAP_Target.S3.Configuring.InsertOps)
17730	// in the AWS Database Migration Service User Guide..
17731	IncludeOpForFullLoad *bool `type:"boolean"`
17732
17733	// A value that specifies the precision of any TIMESTAMP column values that
17734	// are written to an Amazon S3 object file in .parquet format.
17735	//
17736	// AWS DMS supports the ParquetTimestampInMillisecond parameter in versions
17737	// 3.1.4 and later.
17738	//
17739	// When ParquetTimestampInMillisecond is set to true or y, AWS DMS writes all
17740	// TIMESTAMP columns in a .parquet formatted file with millisecond precision.
17741	// Otherwise, DMS writes them with microsecond precision.
17742	//
17743	// Currently, Amazon Athena and AWS Glue can handle only millisecond precision
17744	// for TIMESTAMP values. Set this parameter to true for S3 endpoint object files
17745	// that are .parquet formatted only if you plan to query or process the data
17746	// with Athena or AWS Glue.
17747	//
17748	// AWS DMS writes any TIMESTAMP column values written to an S3 file in .csv
17749	// format with microsecond precision.
17750	//
17751	// Setting ParquetTimestampInMillisecond has no effect on the string format
17752	// of the timestamp column value that is inserted by setting the TimestampColumnName
17753	// parameter.
17754	ParquetTimestampInMillisecond *bool `type:"boolean"`
17755
17756	// The version of the Apache Parquet format that you want to use: parquet_1_0
17757	// (the default) or parquet_2_0.
17758	ParquetVersion *string `type:"string" enum:"ParquetVersionValue"`
17759
17760	// If set to true, AWS DMS saves the transaction order for a change data capture
17761	// (CDC) load on the Amazon S3 target specified by CdcPath (https://docs.aws.amazon.com/dms/latest/APIReference/API_S3Settings.html#DMS-Type-S3Settings-CdcPath).
17762	// For more information, see Capturing data changes (CDC) including transaction
17763	// order on the S3 target (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.S3.html#CHAP_Target.S3.EndpointSettings.CdcPath).
17764	//
17765	// This setting is supported in AWS DMS versions 3.4.2 and later.
17766	PreserveTransactions *bool `type:"boolean"`
17767
17768	// The number of rows in a row group. A smaller row group size provides faster
17769	// reads. But as the number of row groups grows, the slower writes become. This
17770	// parameter defaults to 10,000 rows. This number is used for .parquet file
17771	// format only.
17772	//
17773	// If you choose a value larger than the maximum, RowGroupLength is set to the
17774	// max row group length in bytes (64 * 1024 * 1024).
17775	RowGroupLength *int64 `type:"integer"`
17776
17777	// If you are using SSE_KMS for the EncryptionMode, provide the AWS KMS key
17778	// ID. The key that you use needs an attached policy that enables AWS Identity
17779	// and Access Management (IAM) user permissions and allows use of the key.
17780	//
17781	// Here is a CLI example: aws dms create-endpoint --endpoint-identifier value
17782	// --endpoint-type target --engine-name s3 --s3-settings ServiceAccessRoleArn=value,BucketFolder=value,BucketName=value,EncryptionMode=SSE_KMS,ServerSideEncryptionKmsKeyId=value
17783	ServerSideEncryptionKmsKeyId *string `type:"string"`
17784
17785	// The Amazon Resource Name (ARN) used by the service access IAM role. It is
17786	// a required parameter that enables DMS to write and read objects from an S3
17787	// bucket.
17788	ServiceAccessRoleArn *string `type:"string"`
17789
17790	// A value that when nonblank causes AWS DMS to add a column with timestamp
17791	// information to the endpoint data for an Amazon S3 target.
17792	//
17793	// AWS DMS supports the TimestampColumnName parameter in versions 3.1.4 and
17794	// later.
17795	//
17796	// DMS includes an additional STRING column in the .csv or .parquet object files
17797	// of your migrated data when you set TimestampColumnName to a nonblank value.
17798	//
17799	// For a full load, each row of this timestamp column contains a timestamp for
17800	// when the data was transferred from the source to the target by DMS.
17801	//
17802	// For a change data capture (CDC) load, each row of the timestamp column contains
17803	// the timestamp for the commit of that row in the source database.
17804	//
17805	// The string format for this timestamp column value is yyyy-MM-dd HH:mm:ss.SSSSSS.
17806	// By default, the precision of this value is in microseconds. For a CDC load,
17807	// the rounding of the precision depends on the commit timestamp supported by
17808	// DMS for the source database.
17809	//
17810	// When the AddColumnName parameter is set to true, DMS also includes a name
17811	// for the timestamp column that you set with TimestampColumnName.
17812	TimestampColumnName *string `type:"string"`
17813
17814	// This setting applies if the S3 output files during a change data capture
17815	// (CDC) load are written in .csv format. If set to true for columns not included
17816	// in the supplemental log, AWS DMS uses the value specified by CsvNoSupValue
17817	// (https://docs.aws.amazon.com/dms/latest/APIReference/API_S3Settings.html#DMS-Type-S3Settings-CsvNoSupValue).
17818	// If not set or set to false, AWS DMS uses the null value for these columns.
17819	//
17820	// This setting is supported in AWS DMS versions 3.4.1 and later.
17821	UseCsvNoSupValue *bool `type:"boolean"`
17822}
17823
17824// String returns the string representation
17825func (s S3Settings) String() string {
17826	return awsutil.Prettify(s)
17827}
17828
17829// GoString returns the string representation
17830func (s S3Settings) GoString() string {
17831	return s.String()
17832}
17833
17834// SetBucketFolder sets the BucketFolder field's value.
17835func (s *S3Settings) SetBucketFolder(v string) *S3Settings {
17836	s.BucketFolder = &v
17837	return s
17838}
17839
17840// SetBucketName sets the BucketName field's value.
17841func (s *S3Settings) SetBucketName(v string) *S3Settings {
17842	s.BucketName = &v
17843	return s
17844}
17845
17846// SetCdcInsertsAndUpdates sets the CdcInsertsAndUpdates field's value.
17847func (s *S3Settings) SetCdcInsertsAndUpdates(v bool) *S3Settings {
17848	s.CdcInsertsAndUpdates = &v
17849	return s
17850}
17851
17852// SetCdcInsertsOnly sets the CdcInsertsOnly field's value.
17853func (s *S3Settings) SetCdcInsertsOnly(v bool) *S3Settings {
17854	s.CdcInsertsOnly = &v
17855	return s
17856}
17857
17858// SetCdcPath sets the CdcPath field's value.
17859func (s *S3Settings) SetCdcPath(v string) *S3Settings {
17860	s.CdcPath = &v
17861	return s
17862}
17863
17864// SetCompressionType sets the CompressionType field's value.
17865func (s *S3Settings) SetCompressionType(v string) *S3Settings {
17866	s.CompressionType = &v
17867	return s
17868}
17869
17870// SetCsvDelimiter sets the CsvDelimiter field's value.
17871func (s *S3Settings) SetCsvDelimiter(v string) *S3Settings {
17872	s.CsvDelimiter = &v
17873	return s
17874}
17875
17876// SetCsvNoSupValue sets the CsvNoSupValue field's value.
17877func (s *S3Settings) SetCsvNoSupValue(v string) *S3Settings {
17878	s.CsvNoSupValue = &v
17879	return s
17880}
17881
17882// SetCsvRowDelimiter sets the CsvRowDelimiter field's value.
17883func (s *S3Settings) SetCsvRowDelimiter(v string) *S3Settings {
17884	s.CsvRowDelimiter = &v
17885	return s
17886}
17887
17888// SetDataFormat sets the DataFormat field's value.
17889func (s *S3Settings) SetDataFormat(v string) *S3Settings {
17890	s.DataFormat = &v
17891	return s
17892}
17893
17894// SetDataPageSize sets the DataPageSize field's value.
17895func (s *S3Settings) SetDataPageSize(v int64) *S3Settings {
17896	s.DataPageSize = &v
17897	return s
17898}
17899
17900// SetDatePartitionDelimiter sets the DatePartitionDelimiter field's value.
17901func (s *S3Settings) SetDatePartitionDelimiter(v string) *S3Settings {
17902	s.DatePartitionDelimiter = &v
17903	return s
17904}
17905
17906// SetDatePartitionEnabled sets the DatePartitionEnabled field's value.
17907func (s *S3Settings) SetDatePartitionEnabled(v bool) *S3Settings {
17908	s.DatePartitionEnabled = &v
17909	return s
17910}
17911
17912// SetDatePartitionSequence sets the DatePartitionSequence field's value.
17913func (s *S3Settings) SetDatePartitionSequence(v string) *S3Settings {
17914	s.DatePartitionSequence = &v
17915	return s
17916}
17917
17918// SetDictPageSizeLimit sets the DictPageSizeLimit field's value.
17919func (s *S3Settings) SetDictPageSizeLimit(v int64) *S3Settings {
17920	s.DictPageSizeLimit = &v
17921	return s
17922}
17923
17924// SetEnableStatistics sets the EnableStatistics field's value.
17925func (s *S3Settings) SetEnableStatistics(v bool) *S3Settings {
17926	s.EnableStatistics = &v
17927	return s
17928}
17929
17930// SetEncodingType sets the EncodingType field's value.
17931func (s *S3Settings) SetEncodingType(v string) *S3Settings {
17932	s.EncodingType = &v
17933	return s
17934}
17935
17936// SetEncryptionMode sets the EncryptionMode field's value.
17937func (s *S3Settings) SetEncryptionMode(v string) *S3Settings {
17938	s.EncryptionMode = &v
17939	return s
17940}
17941
17942// SetExternalTableDefinition sets the ExternalTableDefinition field's value.
17943func (s *S3Settings) SetExternalTableDefinition(v string) *S3Settings {
17944	s.ExternalTableDefinition = &v
17945	return s
17946}
17947
17948// SetIncludeOpForFullLoad sets the IncludeOpForFullLoad field's value.
17949func (s *S3Settings) SetIncludeOpForFullLoad(v bool) *S3Settings {
17950	s.IncludeOpForFullLoad = &v
17951	return s
17952}
17953
17954// SetParquetTimestampInMillisecond sets the ParquetTimestampInMillisecond field's value.
17955func (s *S3Settings) SetParquetTimestampInMillisecond(v bool) *S3Settings {
17956	s.ParquetTimestampInMillisecond = &v
17957	return s
17958}
17959
17960// SetParquetVersion sets the ParquetVersion field's value.
17961func (s *S3Settings) SetParquetVersion(v string) *S3Settings {
17962	s.ParquetVersion = &v
17963	return s
17964}
17965
17966// SetPreserveTransactions sets the PreserveTransactions field's value.
17967func (s *S3Settings) SetPreserveTransactions(v bool) *S3Settings {
17968	s.PreserveTransactions = &v
17969	return s
17970}
17971
17972// SetRowGroupLength sets the RowGroupLength field's value.
17973func (s *S3Settings) SetRowGroupLength(v int64) *S3Settings {
17974	s.RowGroupLength = &v
17975	return s
17976}
17977
17978// SetServerSideEncryptionKmsKeyId sets the ServerSideEncryptionKmsKeyId field's value.
17979func (s *S3Settings) SetServerSideEncryptionKmsKeyId(v string) *S3Settings {
17980	s.ServerSideEncryptionKmsKeyId = &v
17981	return s
17982}
17983
17984// SetServiceAccessRoleArn sets the ServiceAccessRoleArn field's value.
17985func (s *S3Settings) SetServiceAccessRoleArn(v string) *S3Settings {
17986	s.ServiceAccessRoleArn = &v
17987	return s
17988}
17989
17990// SetTimestampColumnName sets the TimestampColumnName field's value.
17991func (s *S3Settings) SetTimestampColumnName(v string) *S3Settings {
17992	s.TimestampColumnName = &v
17993	return s
17994}
17995
17996// SetUseCsvNoSupValue sets the UseCsvNoSupValue field's value.
17997func (s *S3Settings) SetUseCsvNoSupValue(v bool) *S3Settings {
17998	s.UseCsvNoSupValue = &v
17999	return s
18000}
18001
18002// The SNS topic is invalid.
18003type SNSInvalidTopicFault struct {
18004	_            struct{}                  `type:"structure"`
18005	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
18006
18007	Message_ *string `locationName:"message" type:"string"`
18008}
18009
18010// String returns the string representation
18011func (s SNSInvalidTopicFault) String() string {
18012	return awsutil.Prettify(s)
18013}
18014
18015// GoString returns the string representation
18016func (s SNSInvalidTopicFault) GoString() string {
18017	return s.String()
18018}
18019
18020func newErrorSNSInvalidTopicFault(v protocol.ResponseMetadata) error {
18021	return &SNSInvalidTopicFault{
18022		RespMetadata: v,
18023	}
18024}
18025
18026// Code returns the exception type name.
18027func (s *SNSInvalidTopicFault) Code() string {
18028	return "SNSInvalidTopicFault"
18029}
18030
18031// Message returns the exception's message.
18032func (s *SNSInvalidTopicFault) Message() string {
18033	if s.Message_ != nil {
18034		return *s.Message_
18035	}
18036	return ""
18037}
18038
18039// OrigErr always returns nil, satisfies awserr.Error interface.
18040func (s *SNSInvalidTopicFault) OrigErr() error {
18041	return nil
18042}
18043
18044func (s *SNSInvalidTopicFault) Error() string {
18045	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
18046}
18047
18048// Status code returns the HTTP status code for the request's response error.
18049func (s *SNSInvalidTopicFault) StatusCode() int {
18050	return s.RespMetadata.StatusCode
18051}
18052
18053// RequestID returns the service's response RequestID for request.
18054func (s *SNSInvalidTopicFault) RequestID() string {
18055	return s.RespMetadata.RequestID
18056}
18057
18058// You are not authorized for the SNS subscription.
18059type SNSNoAuthorizationFault struct {
18060	_            struct{}                  `type:"structure"`
18061	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
18062
18063	Message_ *string `locationName:"message" type:"string"`
18064}
18065
18066// String returns the string representation
18067func (s SNSNoAuthorizationFault) String() string {
18068	return awsutil.Prettify(s)
18069}
18070
18071// GoString returns the string representation
18072func (s SNSNoAuthorizationFault) GoString() string {
18073	return s.String()
18074}
18075
18076func newErrorSNSNoAuthorizationFault(v protocol.ResponseMetadata) error {
18077	return &SNSNoAuthorizationFault{
18078		RespMetadata: v,
18079	}
18080}
18081
18082// Code returns the exception type name.
18083func (s *SNSNoAuthorizationFault) Code() string {
18084	return "SNSNoAuthorizationFault"
18085}
18086
18087// Message returns the exception's message.
18088func (s *SNSNoAuthorizationFault) Message() string {
18089	if s.Message_ != nil {
18090		return *s.Message_
18091	}
18092	return ""
18093}
18094
18095// OrigErr always returns nil, satisfies awserr.Error interface.
18096func (s *SNSNoAuthorizationFault) OrigErr() error {
18097	return nil
18098}
18099
18100func (s *SNSNoAuthorizationFault) Error() string {
18101	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
18102}
18103
18104// Status code returns the HTTP status code for the request's response error.
18105func (s *SNSNoAuthorizationFault) StatusCode() int {
18106	return s.RespMetadata.StatusCode
18107}
18108
18109// RequestID returns the service's response RequestID for request.
18110func (s *SNSNoAuthorizationFault) RequestID() string {
18111	return s.RespMetadata.RequestID
18112}
18113
18114type StartReplicationTaskAssessmentInput struct {
18115	_ struct{} `type:"structure"`
18116
18117	// The Amazon Resource Name (ARN) of the replication task.
18118	//
18119	// ReplicationTaskArn is a required field
18120	ReplicationTaskArn *string `type:"string" required:"true"`
18121}
18122
18123// String returns the string representation
18124func (s StartReplicationTaskAssessmentInput) String() string {
18125	return awsutil.Prettify(s)
18126}
18127
18128// GoString returns the string representation
18129func (s StartReplicationTaskAssessmentInput) GoString() string {
18130	return s.String()
18131}
18132
18133// Validate inspects the fields of the type to determine if they are valid.
18134func (s *StartReplicationTaskAssessmentInput) Validate() error {
18135	invalidParams := request.ErrInvalidParams{Context: "StartReplicationTaskAssessmentInput"}
18136	if s.ReplicationTaskArn == nil {
18137		invalidParams.Add(request.NewErrParamRequired("ReplicationTaskArn"))
18138	}
18139
18140	if invalidParams.Len() > 0 {
18141		return invalidParams
18142	}
18143	return nil
18144}
18145
18146// SetReplicationTaskArn sets the ReplicationTaskArn field's value.
18147func (s *StartReplicationTaskAssessmentInput) SetReplicationTaskArn(v string) *StartReplicationTaskAssessmentInput {
18148	s.ReplicationTaskArn = &v
18149	return s
18150}
18151
18152type StartReplicationTaskAssessmentOutput struct {
18153	_ struct{} `type:"structure"`
18154
18155	// The assessed replication task.
18156	ReplicationTask *ReplicationTask `type:"structure"`
18157}
18158
18159// String returns the string representation
18160func (s StartReplicationTaskAssessmentOutput) String() string {
18161	return awsutil.Prettify(s)
18162}
18163
18164// GoString returns the string representation
18165func (s StartReplicationTaskAssessmentOutput) GoString() string {
18166	return s.String()
18167}
18168
18169// SetReplicationTask sets the ReplicationTask field's value.
18170func (s *StartReplicationTaskAssessmentOutput) SetReplicationTask(v *ReplicationTask) *StartReplicationTaskAssessmentOutput {
18171	s.ReplicationTask = v
18172	return s
18173}
18174
18175type StartReplicationTaskAssessmentRunInput struct {
18176	_ struct{} `type:"structure"`
18177
18178	// Unique name to identify the assessment run.
18179	//
18180	// AssessmentRunName is a required field
18181	AssessmentRunName *string `type:"string" required:"true"`
18182
18183	// Space-separated list of names for specific individual assessments that you
18184	// want to exclude. These names come from the default list of individual assessments
18185	// that AWS DMS supports for the associated migration task. This task is specified
18186	// by ReplicationTaskArn.
18187	//
18188	// You can't set a value for Exclude if you also set a value for IncludeOnly
18189	// in the API operation.
18190	//
18191	// To identify the names of the default individual assessments that AWS DMS
18192	// supports for the associated migration task, run the DescribeApplicableIndividualAssessments
18193	// operation using its own ReplicationTaskArn request parameter.
18194	Exclude []*string `type:"list"`
18195
18196	// Space-separated list of names for specific individual assessments that you
18197	// want to include. These names come from the default list of individual assessments
18198	// that AWS DMS supports for the associated migration task. This task is specified
18199	// by ReplicationTaskArn.
18200	//
18201	// You can't set a value for IncludeOnly if you also set a value for Exclude
18202	// in the API operation.
18203	//
18204	// To identify the names of the default individual assessments that AWS DMS
18205	// supports for the associated migration task, run the DescribeApplicableIndividualAssessments
18206	// operation using its own ReplicationTaskArn request parameter.
18207	IncludeOnly []*string `type:"list"`
18208
18209	// Amazon Resource Name (ARN) of the migration task associated with the premigration
18210	// assessment run that you want to start.
18211	//
18212	// ReplicationTaskArn is a required field
18213	ReplicationTaskArn *string `type:"string" required:"true"`
18214
18215	// Encryption mode that you can specify to encrypt the results of this assessment
18216	// run. If you don't specify this request parameter, AWS DMS stores the assessment
18217	// run results without encryption. You can specify one of the options following:
18218	//
18219	//    * "SSE_S3" – The server-side encryption provided as a default by Amazon
18220	//    S3.
18221	//
18222	//    * "SSE_KMS" – AWS Key Management Service (AWS KMS) encryption. This
18223	//    encryption can use either a custom KMS encryption key that you specify
18224	//    or the default KMS encryption key that DMS provides.
18225	ResultEncryptionMode *string `type:"string"`
18226
18227	// ARN of a custom KMS encryption key that you specify when you set ResultEncryptionMode
18228	// to "SSE_KMS".
18229	ResultKmsKeyArn *string `type:"string"`
18230
18231	// Amazon S3 bucket where you want AWS DMS to store the results of this assessment
18232	// run.
18233	//
18234	// ResultLocationBucket is a required field
18235	ResultLocationBucket *string `type:"string" required:"true"`
18236
18237	// Folder within an Amazon S3 bucket where you want AWS DMS to store the results
18238	// of this assessment run.
18239	ResultLocationFolder *string `type:"string"`
18240
18241	// ARN of a service role needed to start the assessment run.
18242	//
18243	// ServiceAccessRoleArn is a required field
18244	ServiceAccessRoleArn *string `type:"string" required:"true"`
18245}
18246
18247// String returns the string representation
18248func (s StartReplicationTaskAssessmentRunInput) String() string {
18249	return awsutil.Prettify(s)
18250}
18251
18252// GoString returns the string representation
18253func (s StartReplicationTaskAssessmentRunInput) GoString() string {
18254	return s.String()
18255}
18256
18257// Validate inspects the fields of the type to determine if they are valid.
18258func (s *StartReplicationTaskAssessmentRunInput) Validate() error {
18259	invalidParams := request.ErrInvalidParams{Context: "StartReplicationTaskAssessmentRunInput"}
18260	if s.AssessmentRunName == nil {
18261		invalidParams.Add(request.NewErrParamRequired("AssessmentRunName"))
18262	}
18263	if s.ReplicationTaskArn == nil {
18264		invalidParams.Add(request.NewErrParamRequired("ReplicationTaskArn"))
18265	}
18266	if s.ResultLocationBucket == nil {
18267		invalidParams.Add(request.NewErrParamRequired("ResultLocationBucket"))
18268	}
18269	if s.ServiceAccessRoleArn == nil {
18270		invalidParams.Add(request.NewErrParamRequired("ServiceAccessRoleArn"))
18271	}
18272
18273	if invalidParams.Len() > 0 {
18274		return invalidParams
18275	}
18276	return nil
18277}
18278
18279// SetAssessmentRunName sets the AssessmentRunName field's value.
18280func (s *StartReplicationTaskAssessmentRunInput) SetAssessmentRunName(v string) *StartReplicationTaskAssessmentRunInput {
18281	s.AssessmentRunName = &v
18282	return s
18283}
18284
18285// SetExclude sets the Exclude field's value.
18286func (s *StartReplicationTaskAssessmentRunInput) SetExclude(v []*string) *StartReplicationTaskAssessmentRunInput {
18287	s.Exclude = v
18288	return s
18289}
18290
18291// SetIncludeOnly sets the IncludeOnly field's value.
18292func (s *StartReplicationTaskAssessmentRunInput) SetIncludeOnly(v []*string) *StartReplicationTaskAssessmentRunInput {
18293	s.IncludeOnly = v
18294	return s
18295}
18296
18297// SetReplicationTaskArn sets the ReplicationTaskArn field's value.
18298func (s *StartReplicationTaskAssessmentRunInput) SetReplicationTaskArn(v string) *StartReplicationTaskAssessmentRunInput {
18299	s.ReplicationTaskArn = &v
18300	return s
18301}
18302
18303// SetResultEncryptionMode sets the ResultEncryptionMode field's value.
18304func (s *StartReplicationTaskAssessmentRunInput) SetResultEncryptionMode(v string) *StartReplicationTaskAssessmentRunInput {
18305	s.ResultEncryptionMode = &v
18306	return s
18307}
18308
18309// SetResultKmsKeyArn sets the ResultKmsKeyArn field's value.
18310func (s *StartReplicationTaskAssessmentRunInput) SetResultKmsKeyArn(v string) *StartReplicationTaskAssessmentRunInput {
18311	s.ResultKmsKeyArn = &v
18312	return s
18313}
18314
18315// SetResultLocationBucket sets the ResultLocationBucket field's value.
18316func (s *StartReplicationTaskAssessmentRunInput) SetResultLocationBucket(v string) *StartReplicationTaskAssessmentRunInput {
18317	s.ResultLocationBucket = &v
18318	return s
18319}
18320
18321// SetResultLocationFolder sets the ResultLocationFolder field's value.
18322func (s *StartReplicationTaskAssessmentRunInput) SetResultLocationFolder(v string) *StartReplicationTaskAssessmentRunInput {
18323	s.ResultLocationFolder = &v
18324	return s
18325}
18326
18327// SetServiceAccessRoleArn sets the ServiceAccessRoleArn field's value.
18328func (s *StartReplicationTaskAssessmentRunInput) SetServiceAccessRoleArn(v string) *StartReplicationTaskAssessmentRunInput {
18329	s.ServiceAccessRoleArn = &v
18330	return s
18331}
18332
18333type StartReplicationTaskAssessmentRunOutput struct {
18334	_ struct{} `type:"structure"`
18335
18336	// The premigration assessment run that was started.
18337	ReplicationTaskAssessmentRun *ReplicationTaskAssessmentRun `type:"structure"`
18338}
18339
18340// String returns the string representation
18341func (s StartReplicationTaskAssessmentRunOutput) String() string {
18342	return awsutil.Prettify(s)
18343}
18344
18345// GoString returns the string representation
18346func (s StartReplicationTaskAssessmentRunOutput) GoString() string {
18347	return s.String()
18348}
18349
18350// SetReplicationTaskAssessmentRun sets the ReplicationTaskAssessmentRun field's value.
18351func (s *StartReplicationTaskAssessmentRunOutput) SetReplicationTaskAssessmentRun(v *ReplicationTaskAssessmentRun) *StartReplicationTaskAssessmentRunOutput {
18352	s.ReplicationTaskAssessmentRun = v
18353	return s
18354}
18355
18356type StartReplicationTaskInput struct {
18357	_ struct{} `type:"structure"`
18358
18359	// Indicates when you want a change data capture (CDC) operation to start. Use
18360	// either CdcStartPosition or CdcStartTime to specify when you want a CDC operation
18361	// to start. Specifying both values results in an error.
18362	//
18363	// The value can be in date, checkpoint, or LSN/SCN format.
18364	//
18365	// Date Example: --cdc-start-position “2018-03-08T12:12:12”
18366	//
18367	// Checkpoint Example: --cdc-start-position "checkpoint:V1#27#mysql-bin-changelog.157832:1975:-1:2002:677883278264080:mysql-bin-changelog.157832:1876#0#0#*#0#93"
18368	//
18369	// LSN Example: --cdc-start-position “mysql-bin-changelog.000024:373”
18370	//
18371	// When you use this task setting with a source PostgreSQL database, a logical
18372	// replication slot should already be created and associated with the source
18373	// endpoint. You can verify this by setting the slotName extra connection attribute
18374	// to the name of this logical replication slot. For more information, see Extra
18375	// Connection Attributes When Using PostgreSQL as a Source for AWS DMS (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.PostgreSQL.html#CHAP_Source.PostgreSQL.ConnectionAttrib).
18376	CdcStartPosition *string `type:"string"`
18377
18378	// Indicates the start time for a change data capture (CDC) operation. Use either
18379	// CdcStartTime or CdcStartPosition to specify when you want a CDC operation
18380	// to start. Specifying both values results in an error.
18381	//
18382	// Timestamp Example: --cdc-start-time “2018-03-08T12:12:12”
18383	CdcStartTime *time.Time `type:"timestamp"`
18384
18385	// Indicates when you want a change data capture (CDC) operation to stop. The
18386	// value can be either server time or commit time.
18387	//
18388	// Server time example: --cdc-stop-position “server_time:2018-02-09T12:12:12”
18389	//
18390	// Commit time example: --cdc-stop-position “commit_time: 2018-02-09T12:12:12
18391	// “
18392	CdcStopPosition *string `type:"string"`
18393
18394	// The Amazon Resource Name (ARN) of the replication task to be started.
18395	//
18396	// ReplicationTaskArn is a required field
18397	ReplicationTaskArn *string `type:"string" required:"true"`
18398
18399	// A type of replication task.
18400	//
18401	// StartReplicationTaskType is a required field
18402	StartReplicationTaskType *string `type:"string" required:"true" enum:"StartReplicationTaskTypeValue"`
18403}
18404
18405// String returns the string representation
18406func (s StartReplicationTaskInput) String() string {
18407	return awsutil.Prettify(s)
18408}
18409
18410// GoString returns the string representation
18411func (s StartReplicationTaskInput) GoString() string {
18412	return s.String()
18413}
18414
18415// Validate inspects the fields of the type to determine if they are valid.
18416func (s *StartReplicationTaskInput) Validate() error {
18417	invalidParams := request.ErrInvalidParams{Context: "StartReplicationTaskInput"}
18418	if s.ReplicationTaskArn == nil {
18419		invalidParams.Add(request.NewErrParamRequired("ReplicationTaskArn"))
18420	}
18421	if s.StartReplicationTaskType == nil {
18422		invalidParams.Add(request.NewErrParamRequired("StartReplicationTaskType"))
18423	}
18424
18425	if invalidParams.Len() > 0 {
18426		return invalidParams
18427	}
18428	return nil
18429}
18430
18431// SetCdcStartPosition sets the CdcStartPosition field's value.
18432func (s *StartReplicationTaskInput) SetCdcStartPosition(v string) *StartReplicationTaskInput {
18433	s.CdcStartPosition = &v
18434	return s
18435}
18436
18437// SetCdcStartTime sets the CdcStartTime field's value.
18438func (s *StartReplicationTaskInput) SetCdcStartTime(v time.Time) *StartReplicationTaskInput {
18439	s.CdcStartTime = &v
18440	return s
18441}
18442
18443// SetCdcStopPosition sets the CdcStopPosition field's value.
18444func (s *StartReplicationTaskInput) SetCdcStopPosition(v string) *StartReplicationTaskInput {
18445	s.CdcStopPosition = &v
18446	return s
18447}
18448
18449// SetReplicationTaskArn sets the ReplicationTaskArn field's value.
18450func (s *StartReplicationTaskInput) SetReplicationTaskArn(v string) *StartReplicationTaskInput {
18451	s.ReplicationTaskArn = &v
18452	return s
18453}
18454
18455// SetStartReplicationTaskType sets the StartReplicationTaskType field's value.
18456func (s *StartReplicationTaskInput) SetStartReplicationTaskType(v string) *StartReplicationTaskInput {
18457	s.StartReplicationTaskType = &v
18458	return s
18459}
18460
18461type StartReplicationTaskOutput struct {
18462	_ struct{} `type:"structure"`
18463
18464	// The replication task started.
18465	ReplicationTask *ReplicationTask `type:"structure"`
18466}
18467
18468// String returns the string representation
18469func (s StartReplicationTaskOutput) String() string {
18470	return awsutil.Prettify(s)
18471}
18472
18473// GoString returns the string representation
18474func (s StartReplicationTaskOutput) GoString() string {
18475	return s.String()
18476}
18477
18478// SetReplicationTask sets the ReplicationTask field's value.
18479func (s *StartReplicationTaskOutput) SetReplicationTask(v *ReplicationTask) *StartReplicationTaskOutput {
18480	s.ReplicationTask = v
18481	return s
18482}
18483
18484type StopReplicationTaskInput struct {
18485	_ struct{} `type:"structure"`
18486
18487	// The Amazon Resource Name(ARN) of the replication task to be stopped.
18488	//
18489	// ReplicationTaskArn is a required field
18490	ReplicationTaskArn *string `type:"string" required:"true"`
18491}
18492
18493// String returns the string representation
18494func (s StopReplicationTaskInput) String() string {
18495	return awsutil.Prettify(s)
18496}
18497
18498// GoString returns the string representation
18499func (s StopReplicationTaskInput) GoString() string {
18500	return s.String()
18501}
18502
18503// Validate inspects the fields of the type to determine if they are valid.
18504func (s *StopReplicationTaskInput) Validate() error {
18505	invalidParams := request.ErrInvalidParams{Context: "StopReplicationTaskInput"}
18506	if s.ReplicationTaskArn == nil {
18507		invalidParams.Add(request.NewErrParamRequired("ReplicationTaskArn"))
18508	}
18509
18510	if invalidParams.Len() > 0 {
18511		return invalidParams
18512	}
18513	return nil
18514}
18515
18516// SetReplicationTaskArn sets the ReplicationTaskArn field's value.
18517func (s *StopReplicationTaskInput) SetReplicationTaskArn(v string) *StopReplicationTaskInput {
18518	s.ReplicationTaskArn = &v
18519	return s
18520}
18521
18522type StopReplicationTaskOutput struct {
18523	_ struct{} `type:"structure"`
18524
18525	// The replication task stopped.
18526	ReplicationTask *ReplicationTask `type:"structure"`
18527}
18528
18529// String returns the string representation
18530func (s StopReplicationTaskOutput) String() string {
18531	return awsutil.Prettify(s)
18532}
18533
18534// GoString returns the string representation
18535func (s StopReplicationTaskOutput) GoString() string {
18536	return s.String()
18537}
18538
18539// SetReplicationTask sets the ReplicationTask field's value.
18540func (s *StopReplicationTaskOutput) SetReplicationTask(v *ReplicationTask) *StopReplicationTaskOutput {
18541	s.ReplicationTask = v
18542	return s
18543}
18544
18545// The storage quota has been exceeded.
18546type StorageQuotaExceededFault struct {
18547	_            struct{}                  `type:"structure"`
18548	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
18549
18550	Message_ *string `locationName:"message" type:"string"`
18551}
18552
18553// String returns the string representation
18554func (s StorageQuotaExceededFault) String() string {
18555	return awsutil.Prettify(s)
18556}
18557
18558// GoString returns the string representation
18559func (s StorageQuotaExceededFault) GoString() string {
18560	return s.String()
18561}
18562
18563func newErrorStorageQuotaExceededFault(v protocol.ResponseMetadata) error {
18564	return &StorageQuotaExceededFault{
18565		RespMetadata: v,
18566	}
18567}
18568
18569// Code returns the exception type name.
18570func (s *StorageQuotaExceededFault) Code() string {
18571	return "StorageQuotaExceededFault"
18572}
18573
18574// Message returns the exception's message.
18575func (s *StorageQuotaExceededFault) Message() string {
18576	if s.Message_ != nil {
18577		return *s.Message_
18578	}
18579	return ""
18580}
18581
18582// OrigErr always returns nil, satisfies awserr.Error interface.
18583func (s *StorageQuotaExceededFault) OrigErr() error {
18584	return nil
18585}
18586
18587func (s *StorageQuotaExceededFault) Error() string {
18588	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
18589}
18590
18591// Status code returns the HTTP status code for the request's response error.
18592func (s *StorageQuotaExceededFault) StatusCode() int {
18593	return s.RespMetadata.StatusCode
18594}
18595
18596// RequestID returns the service's response RequestID for request.
18597func (s *StorageQuotaExceededFault) RequestID() string {
18598	return s.RespMetadata.RequestID
18599}
18600
18601// In response to a request by the DescribeReplicationSubnetGroups operation,
18602// this object identifies a subnet by its given Availability Zone, subnet identifier,
18603// and status.
18604type Subnet struct {
18605	_ struct{} `type:"structure"`
18606
18607	// The Availability Zone of the subnet.
18608	SubnetAvailabilityZone *AvailabilityZone `type:"structure"`
18609
18610	// The subnet identifier.
18611	SubnetIdentifier *string `type:"string"`
18612
18613	// The status of the subnet.
18614	SubnetStatus *string `type:"string"`
18615}
18616
18617// String returns the string representation
18618func (s Subnet) String() string {
18619	return awsutil.Prettify(s)
18620}
18621
18622// GoString returns the string representation
18623func (s Subnet) GoString() string {
18624	return s.String()
18625}
18626
18627// SetSubnetAvailabilityZone sets the SubnetAvailabilityZone field's value.
18628func (s *Subnet) SetSubnetAvailabilityZone(v *AvailabilityZone) *Subnet {
18629	s.SubnetAvailabilityZone = v
18630	return s
18631}
18632
18633// SetSubnetIdentifier sets the SubnetIdentifier field's value.
18634func (s *Subnet) SetSubnetIdentifier(v string) *Subnet {
18635	s.SubnetIdentifier = &v
18636	return s
18637}
18638
18639// SetSubnetStatus sets the SubnetStatus field's value.
18640func (s *Subnet) SetSubnetStatus(v string) *Subnet {
18641	s.SubnetStatus = &v
18642	return s
18643}
18644
18645// The specified subnet is already in use.
18646type SubnetAlreadyInUse struct {
18647	_            struct{}                  `type:"structure"`
18648	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
18649
18650	Message_ *string `locationName:"message" type:"string"`
18651}
18652
18653// String returns the string representation
18654func (s SubnetAlreadyInUse) String() string {
18655	return awsutil.Prettify(s)
18656}
18657
18658// GoString returns the string representation
18659func (s SubnetAlreadyInUse) GoString() string {
18660	return s.String()
18661}
18662
18663func newErrorSubnetAlreadyInUse(v protocol.ResponseMetadata) error {
18664	return &SubnetAlreadyInUse{
18665		RespMetadata: v,
18666	}
18667}
18668
18669// Code returns the exception type name.
18670func (s *SubnetAlreadyInUse) Code() string {
18671	return "SubnetAlreadyInUse"
18672}
18673
18674// Message returns the exception's message.
18675func (s *SubnetAlreadyInUse) Message() string {
18676	if s.Message_ != nil {
18677		return *s.Message_
18678	}
18679	return ""
18680}
18681
18682// OrigErr always returns nil, satisfies awserr.Error interface.
18683func (s *SubnetAlreadyInUse) OrigErr() error {
18684	return nil
18685}
18686
18687func (s *SubnetAlreadyInUse) Error() string {
18688	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
18689}
18690
18691// Status code returns the HTTP status code for the request's response error.
18692func (s *SubnetAlreadyInUse) StatusCode() int {
18693	return s.RespMetadata.StatusCode
18694}
18695
18696// RequestID returns the service's response RequestID for request.
18697func (s *SubnetAlreadyInUse) RequestID() string {
18698	return s.RespMetadata.RequestID
18699}
18700
18701// Provides information about types of supported endpoints in response to a
18702// request by the DescribeEndpointTypes operation. This information includes
18703// the type of endpoint, the database engine name, and whether change data capture
18704// (CDC) is supported.
18705type SupportedEndpointType struct {
18706	_ struct{} `type:"structure"`
18707
18708	// The type of endpoint. Valid values are source and target.
18709	EndpointType *string `type:"string" enum:"ReplicationEndpointTypeValue"`
18710
18711	// The expanded name for the engine name. For example, if the EngineName parameter
18712	// is "aurora," this value would be "Amazon Aurora MySQL."
18713	EngineDisplayName *string `type:"string"`
18714
18715	// The database engine name. Valid values, depending on the EndpointType, include
18716	// "mysql", "oracle", "postgres", "mariadb", "aurora", "aurora-postgresql",
18717	// "redshift", "s3", "db2", "azuredb", "sybase", "dynamodb", "mongodb", "kinesis",
18718	// "kafka", "elasticsearch", "documentdb", "sqlserver", and "neptune".
18719	EngineName *string `type:"string"`
18720
18721	// The earliest AWS DMS engine version that supports this endpoint engine. Note
18722	// that endpoint engines released with AWS DMS versions earlier than 3.1.1 do
18723	// not return a value for this parameter.
18724	ReplicationInstanceEngineMinimumVersion *string `type:"string"`
18725
18726	// Indicates if Change Data Capture (CDC) is supported.
18727	SupportsCDC *bool `type:"boolean"`
18728}
18729
18730// String returns the string representation
18731func (s SupportedEndpointType) String() string {
18732	return awsutil.Prettify(s)
18733}
18734
18735// GoString returns the string representation
18736func (s SupportedEndpointType) GoString() string {
18737	return s.String()
18738}
18739
18740// SetEndpointType sets the EndpointType field's value.
18741func (s *SupportedEndpointType) SetEndpointType(v string) *SupportedEndpointType {
18742	s.EndpointType = &v
18743	return s
18744}
18745
18746// SetEngineDisplayName sets the EngineDisplayName field's value.
18747func (s *SupportedEndpointType) SetEngineDisplayName(v string) *SupportedEndpointType {
18748	s.EngineDisplayName = &v
18749	return s
18750}
18751
18752// SetEngineName sets the EngineName field's value.
18753func (s *SupportedEndpointType) SetEngineName(v string) *SupportedEndpointType {
18754	s.EngineName = &v
18755	return s
18756}
18757
18758// SetReplicationInstanceEngineMinimumVersion sets the ReplicationInstanceEngineMinimumVersion field's value.
18759func (s *SupportedEndpointType) SetReplicationInstanceEngineMinimumVersion(v string) *SupportedEndpointType {
18760	s.ReplicationInstanceEngineMinimumVersion = &v
18761	return s
18762}
18763
18764// SetSupportsCDC sets the SupportsCDC field's value.
18765func (s *SupportedEndpointType) SetSupportsCDC(v bool) *SupportedEndpointType {
18766	s.SupportsCDC = &v
18767	return s
18768}
18769
18770// Provides information that defines a SAP ASE endpoint.
18771type SybaseSettings struct {
18772	_ struct{} `type:"structure"`
18773
18774	// Database name for the endpoint.
18775	DatabaseName *string `type:"string"`
18776
18777	// Endpoint connection password.
18778	Password *string `type:"string" sensitive:"true"`
18779
18780	// Endpoint TCP port.
18781	Port *int64 `type:"integer"`
18782
18783	// The full Amazon Resource Name (ARN) of the IAM role that specifies AWS DMS
18784	// as the trusted entity and grants the required permissions to access the value
18785	// in SecretsManagerSecret. SecretsManagerSecret has the value of the AWS Secrets
18786	// Manager secret that allows access to the SAP ASE endpoint.
18787	//
18788	// You can specify one of two sets of values for these permissions. You can
18789	// specify the values for this setting and SecretsManagerSecretId. Or you can
18790	// specify clear-text values for UserName, Password, ServerName, and Port. You
18791	// can't specify both. For more information on creating this SecretsManagerSecret
18792	// and the SecretsManagerAccessRoleArn and SecretsManagerSecretId required to
18793	// access it, see Using secrets to access AWS Database Migration Service resources
18794	// (https://docs.aws.amazon.com/https:/docs.aws.amazon.com/dms/latest/userguide/CHAP_Security.html#security-iam-secretsmanager)
18795	// in the AWS Database Migration Service User Guide.
18796	SecretsManagerAccessRoleArn *string `type:"string"`
18797
18798	// The full ARN, partial ARN, or friendly name of the SecretsManagerSecret that
18799	// contains the SAP SAE endpoint connection details.
18800	SecretsManagerSecretId *string `type:"string"`
18801
18802	// Fully qualified domain name of the endpoint.
18803	ServerName *string `type:"string"`
18804
18805	// Endpoint connection user name.
18806	Username *string `type:"string"`
18807}
18808
18809// String returns the string representation
18810func (s SybaseSettings) String() string {
18811	return awsutil.Prettify(s)
18812}
18813
18814// GoString returns the string representation
18815func (s SybaseSettings) GoString() string {
18816	return s.String()
18817}
18818
18819// SetDatabaseName sets the DatabaseName field's value.
18820func (s *SybaseSettings) SetDatabaseName(v string) *SybaseSettings {
18821	s.DatabaseName = &v
18822	return s
18823}
18824
18825// SetPassword sets the Password field's value.
18826func (s *SybaseSettings) SetPassword(v string) *SybaseSettings {
18827	s.Password = &v
18828	return s
18829}
18830
18831// SetPort sets the Port field's value.
18832func (s *SybaseSettings) SetPort(v int64) *SybaseSettings {
18833	s.Port = &v
18834	return s
18835}
18836
18837// SetSecretsManagerAccessRoleArn sets the SecretsManagerAccessRoleArn field's value.
18838func (s *SybaseSettings) SetSecretsManagerAccessRoleArn(v string) *SybaseSettings {
18839	s.SecretsManagerAccessRoleArn = &v
18840	return s
18841}
18842
18843// SetSecretsManagerSecretId sets the SecretsManagerSecretId field's value.
18844func (s *SybaseSettings) SetSecretsManagerSecretId(v string) *SybaseSettings {
18845	s.SecretsManagerSecretId = &v
18846	return s
18847}
18848
18849// SetServerName sets the ServerName field's value.
18850func (s *SybaseSettings) SetServerName(v string) *SybaseSettings {
18851	s.ServerName = &v
18852	return s
18853}
18854
18855// SetUsername sets the Username field's value.
18856func (s *SybaseSettings) SetUsername(v string) *SybaseSettings {
18857	s.Username = &v
18858	return s
18859}
18860
18861// Provides a collection of table statistics in response to a request by the
18862// DescribeTableStatistics operation.
18863type TableStatistics struct {
18864	_ struct{} `type:"structure"`
18865
18866	// The data definition language (DDL) used to build and modify the structure
18867	// of your tables.
18868	Ddls *int64 `type:"long"`
18869
18870	// The number of delete actions performed on a table.
18871	Deletes *int64 `type:"long"`
18872
18873	// The number of rows that failed conditional checks during the full load operation
18874	// (valid only for migrations where DynamoDB is the target).
18875	FullLoadCondtnlChkFailedRows *int64 `type:"long"`
18876
18877	// The time when the full load operation completed.
18878	FullLoadEndTime *time.Time `type:"timestamp"`
18879
18880	// The number of rows that failed to load during the full load operation (valid
18881	// only for migrations where DynamoDB is the target).
18882	FullLoadErrorRows *int64 `type:"long"`
18883
18884	// A value that indicates if the table was reloaded (true) or loaded as part
18885	// of a new full load operation (false).
18886	FullLoadReloaded *bool `type:"boolean"`
18887
18888	// The number of rows added during the full load operation.
18889	FullLoadRows *int64 `type:"long"`
18890
18891	// The time when the full load operation started.
18892	FullLoadStartTime *time.Time `type:"timestamp"`
18893
18894	// The number of insert actions performed on a table.
18895	Inserts *int64 `type:"long"`
18896
18897	// The last time a table was updated.
18898	LastUpdateTime *time.Time `type:"timestamp"`
18899
18900	// The schema name.
18901	SchemaName *string `type:"string"`
18902
18903	// The name of the table.
18904	TableName *string `type:"string"`
18905
18906	// The state of the tables described.
18907	//
18908	// Valid states: Table does not exist | Before load | Full load | Table completed
18909	// | Table cancelled | Table error | Table all | Table updates | Table is being
18910	// reloaded
18911	TableState *string `type:"string"`
18912
18913	// The number of update actions performed on a table.
18914	Updates *int64 `type:"long"`
18915
18916	// The number of records that failed validation.
18917	ValidationFailedRecords *int64 `type:"long"`
18918
18919	// The number of records that have yet to be validated.
18920	ValidationPendingRecords *int64 `type:"long"`
18921
18922	// The validation state of the table.
18923	//
18924	// This parameter can have the following values:
18925	//
18926	//    * Not enabled – Validation isn't enabled for the table in the migration
18927	//    task.
18928	//
18929	//    * Pending records – Some records in the table are waiting for validation.
18930	//
18931	//    * Mismatched records – Some records in the table don't match between
18932	//    the source and target.
18933	//
18934	//    * Suspended records – Some records in the table couldn't be validated.
18935	//
18936	//    * No primary key –The table couldn't be validated because it has no
18937	//    primary key.
18938	//
18939	//    * Table error – The table wasn't validated because it's in an error
18940	//    state and some data wasn't migrated.
18941	//
18942	//    * Validated – All rows in the table are validated. If the table is updated,
18943	//    the status can change from Validated.
18944	//
18945	//    * Error – The table couldn't be validated because of an unexpected error.
18946	//
18947	//    * Pending validation – The table is waiting validation.
18948	//
18949	//    * Preparing table – Preparing the table enabled in the migration task
18950	//    for validation.
18951	//
18952	//    * Pending revalidation – All rows in the table are pending validation
18953	//    after the table was updated.
18954	ValidationState *string `type:"string"`
18955
18956	// Additional details about the state of validation.
18957	ValidationStateDetails *string `type:"string"`
18958
18959	// The number of records that couldn't be validated.
18960	ValidationSuspendedRecords *int64 `type:"long"`
18961}
18962
18963// String returns the string representation
18964func (s TableStatistics) String() string {
18965	return awsutil.Prettify(s)
18966}
18967
18968// GoString returns the string representation
18969func (s TableStatistics) GoString() string {
18970	return s.String()
18971}
18972
18973// SetDdls sets the Ddls field's value.
18974func (s *TableStatistics) SetDdls(v int64) *TableStatistics {
18975	s.Ddls = &v
18976	return s
18977}
18978
18979// SetDeletes sets the Deletes field's value.
18980func (s *TableStatistics) SetDeletes(v int64) *TableStatistics {
18981	s.Deletes = &v
18982	return s
18983}
18984
18985// SetFullLoadCondtnlChkFailedRows sets the FullLoadCondtnlChkFailedRows field's value.
18986func (s *TableStatistics) SetFullLoadCondtnlChkFailedRows(v int64) *TableStatistics {
18987	s.FullLoadCondtnlChkFailedRows = &v
18988	return s
18989}
18990
18991// SetFullLoadEndTime sets the FullLoadEndTime field's value.
18992func (s *TableStatistics) SetFullLoadEndTime(v time.Time) *TableStatistics {
18993	s.FullLoadEndTime = &v
18994	return s
18995}
18996
18997// SetFullLoadErrorRows sets the FullLoadErrorRows field's value.
18998func (s *TableStatistics) SetFullLoadErrorRows(v int64) *TableStatistics {
18999	s.FullLoadErrorRows = &v
19000	return s
19001}
19002
19003// SetFullLoadReloaded sets the FullLoadReloaded field's value.
19004func (s *TableStatistics) SetFullLoadReloaded(v bool) *TableStatistics {
19005	s.FullLoadReloaded = &v
19006	return s
19007}
19008
19009// SetFullLoadRows sets the FullLoadRows field's value.
19010func (s *TableStatistics) SetFullLoadRows(v int64) *TableStatistics {
19011	s.FullLoadRows = &v
19012	return s
19013}
19014
19015// SetFullLoadStartTime sets the FullLoadStartTime field's value.
19016func (s *TableStatistics) SetFullLoadStartTime(v time.Time) *TableStatistics {
19017	s.FullLoadStartTime = &v
19018	return s
19019}
19020
19021// SetInserts sets the Inserts field's value.
19022func (s *TableStatistics) SetInserts(v int64) *TableStatistics {
19023	s.Inserts = &v
19024	return s
19025}
19026
19027// SetLastUpdateTime sets the LastUpdateTime field's value.
19028func (s *TableStatistics) SetLastUpdateTime(v time.Time) *TableStatistics {
19029	s.LastUpdateTime = &v
19030	return s
19031}
19032
19033// SetSchemaName sets the SchemaName field's value.
19034func (s *TableStatistics) SetSchemaName(v string) *TableStatistics {
19035	s.SchemaName = &v
19036	return s
19037}
19038
19039// SetTableName sets the TableName field's value.
19040func (s *TableStatistics) SetTableName(v string) *TableStatistics {
19041	s.TableName = &v
19042	return s
19043}
19044
19045// SetTableState sets the TableState field's value.
19046func (s *TableStatistics) SetTableState(v string) *TableStatistics {
19047	s.TableState = &v
19048	return s
19049}
19050
19051// SetUpdates sets the Updates field's value.
19052func (s *TableStatistics) SetUpdates(v int64) *TableStatistics {
19053	s.Updates = &v
19054	return s
19055}
19056
19057// SetValidationFailedRecords sets the ValidationFailedRecords field's value.
19058func (s *TableStatistics) SetValidationFailedRecords(v int64) *TableStatistics {
19059	s.ValidationFailedRecords = &v
19060	return s
19061}
19062
19063// SetValidationPendingRecords sets the ValidationPendingRecords field's value.
19064func (s *TableStatistics) SetValidationPendingRecords(v int64) *TableStatistics {
19065	s.ValidationPendingRecords = &v
19066	return s
19067}
19068
19069// SetValidationState sets the ValidationState field's value.
19070func (s *TableStatistics) SetValidationState(v string) *TableStatistics {
19071	s.ValidationState = &v
19072	return s
19073}
19074
19075// SetValidationStateDetails sets the ValidationStateDetails field's value.
19076func (s *TableStatistics) SetValidationStateDetails(v string) *TableStatistics {
19077	s.ValidationStateDetails = &v
19078	return s
19079}
19080
19081// SetValidationSuspendedRecords sets the ValidationSuspendedRecords field's value.
19082func (s *TableStatistics) SetValidationSuspendedRecords(v int64) *TableStatistics {
19083	s.ValidationSuspendedRecords = &v
19084	return s
19085}
19086
19087// Provides the name of the schema and table to be reloaded.
19088type TableToReload struct {
19089	_ struct{} `type:"structure"`
19090
19091	// The schema name of the table to be reloaded.
19092	//
19093	// SchemaName is a required field
19094	SchemaName *string `type:"string" required:"true"`
19095
19096	// The table name of the table to be reloaded.
19097	//
19098	// TableName is a required field
19099	TableName *string `type:"string" required:"true"`
19100}
19101
19102// String returns the string representation
19103func (s TableToReload) String() string {
19104	return awsutil.Prettify(s)
19105}
19106
19107// GoString returns the string representation
19108func (s TableToReload) GoString() string {
19109	return s.String()
19110}
19111
19112// Validate inspects the fields of the type to determine if they are valid.
19113func (s *TableToReload) Validate() error {
19114	invalidParams := request.ErrInvalidParams{Context: "TableToReload"}
19115	if s.SchemaName == nil {
19116		invalidParams.Add(request.NewErrParamRequired("SchemaName"))
19117	}
19118	if s.TableName == nil {
19119		invalidParams.Add(request.NewErrParamRequired("TableName"))
19120	}
19121
19122	if invalidParams.Len() > 0 {
19123		return invalidParams
19124	}
19125	return nil
19126}
19127
19128// SetSchemaName sets the SchemaName field's value.
19129func (s *TableToReload) SetSchemaName(v string) *TableToReload {
19130	s.SchemaName = &v
19131	return s
19132}
19133
19134// SetTableName sets the TableName field's value.
19135func (s *TableToReload) SetTableName(v string) *TableToReload {
19136	s.TableName = &v
19137	return s
19138}
19139
19140// A user-defined key-value pair that describes metadata added to an AWS DMS
19141// resource and that is used by operations such as the following:
19142//
19143//    * AddTagsToResource
19144//
19145//    * ListTagsForResource
19146//
19147//    * RemoveTagsFromResource
19148type Tag struct {
19149	_ struct{} `type:"structure"`
19150
19151	// A key is the required name of the tag. The string value can be 1-128 Unicode
19152	// characters in length and can't be prefixed with "aws:" or "dms:". The string
19153	// can only contain only the set of Unicode letters, digits, white-space, '_',
19154	// '.', '/', '=', '+', '-' (Java regular expressions: "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-]*)$").
19155	Key *string `type:"string"`
19156
19157	// A value is the optional value of the tag. The string value can be 1-256 Unicode
19158	// characters in length and can't be prefixed with "aws:" or "dms:". The string
19159	// can only contain only the set of Unicode letters, digits, white-space, '_',
19160	// '.', '/', '=', '+', '-' (Java regular expressions: "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-]*)$").
19161	Value *string `type:"string"`
19162}
19163
19164// String returns the string representation
19165func (s Tag) String() string {
19166	return awsutil.Prettify(s)
19167}
19168
19169// GoString returns the string representation
19170func (s Tag) GoString() string {
19171	return s.String()
19172}
19173
19174// SetKey sets the Key field's value.
19175func (s *Tag) SetKey(v string) *Tag {
19176	s.Key = &v
19177	return s
19178}
19179
19180// SetValue sets the Value field's value.
19181func (s *Tag) SetValue(v string) *Tag {
19182	s.Value = &v
19183	return s
19184}
19185
19186type TestConnectionInput struct {
19187	_ struct{} `type:"structure"`
19188
19189	// The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.
19190	//
19191	// EndpointArn is a required field
19192	EndpointArn *string `type:"string" required:"true"`
19193
19194	// The Amazon Resource Name (ARN) of the replication instance.
19195	//
19196	// ReplicationInstanceArn is a required field
19197	ReplicationInstanceArn *string `type:"string" required:"true"`
19198}
19199
19200// String returns the string representation
19201func (s TestConnectionInput) String() string {
19202	return awsutil.Prettify(s)
19203}
19204
19205// GoString returns the string representation
19206func (s TestConnectionInput) GoString() string {
19207	return s.String()
19208}
19209
19210// Validate inspects the fields of the type to determine if they are valid.
19211func (s *TestConnectionInput) Validate() error {
19212	invalidParams := request.ErrInvalidParams{Context: "TestConnectionInput"}
19213	if s.EndpointArn == nil {
19214		invalidParams.Add(request.NewErrParamRequired("EndpointArn"))
19215	}
19216	if s.ReplicationInstanceArn == nil {
19217		invalidParams.Add(request.NewErrParamRequired("ReplicationInstanceArn"))
19218	}
19219
19220	if invalidParams.Len() > 0 {
19221		return invalidParams
19222	}
19223	return nil
19224}
19225
19226// SetEndpointArn sets the EndpointArn field's value.
19227func (s *TestConnectionInput) SetEndpointArn(v string) *TestConnectionInput {
19228	s.EndpointArn = &v
19229	return s
19230}
19231
19232// SetReplicationInstanceArn sets the ReplicationInstanceArn field's value.
19233func (s *TestConnectionInput) SetReplicationInstanceArn(v string) *TestConnectionInput {
19234	s.ReplicationInstanceArn = &v
19235	return s
19236}
19237
19238type TestConnectionOutput struct {
19239	_ struct{} `type:"structure"`
19240
19241	// The connection tested.
19242	Connection *Connection `type:"structure"`
19243}
19244
19245// String returns the string representation
19246func (s TestConnectionOutput) String() string {
19247	return awsutil.Prettify(s)
19248}
19249
19250// GoString returns the string representation
19251func (s TestConnectionOutput) GoString() string {
19252	return s.String()
19253}
19254
19255// SetConnection sets the Connection field's value.
19256func (s *TestConnectionOutput) SetConnection(v *Connection) *TestConnectionOutput {
19257	s.Connection = v
19258	return s
19259}
19260
19261// An upgrade dependency is preventing the database migration.
19262type UpgradeDependencyFailureFault struct {
19263	_            struct{}                  `type:"structure"`
19264	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
19265
19266	Message_ *string `locationName:"message" type:"string"`
19267}
19268
19269// String returns the string representation
19270func (s UpgradeDependencyFailureFault) String() string {
19271	return awsutil.Prettify(s)
19272}
19273
19274// GoString returns the string representation
19275func (s UpgradeDependencyFailureFault) GoString() string {
19276	return s.String()
19277}
19278
19279func newErrorUpgradeDependencyFailureFault(v protocol.ResponseMetadata) error {
19280	return &UpgradeDependencyFailureFault{
19281		RespMetadata: v,
19282	}
19283}
19284
19285// Code returns the exception type name.
19286func (s *UpgradeDependencyFailureFault) Code() string {
19287	return "UpgradeDependencyFailureFault"
19288}
19289
19290// Message returns the exception's message.
19291func (s *UpgradeDependencyFailureFault) Message() string {
19292	if s.Message_ != nil {
19293		return *s.Message_
19294	}
19295	return ""
19296}
19297
19298// OrigErr always returns nil, satisfies awserr.Error interface.
19299func (s *UpgradeDependencyFailureFault) OrigErr() error {
19300	return nil
19301}
19302
19303func (s *UpgradeDependencyFailureFault) Error() string {
19304	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
19305}
19306
19307// Status code returns the HTTP status code for the request's response error.
19308func (s *UpgradeDependencyFailureFault) StatusCode() int {
19309	return s.RespMetadata.StatusCode
19310}
19311
19312// RequestID returns the service's response RequestID for request.
19313func (s *UpgradeDependencyFailureFault) RequestID() string {
19314	return s.RespMetadata.RequestID
19315}
19316
19317// Describes the status of a security group associated with the virtual private
19318// cloud (VPC) hosting your replication and DB instances.
19319type VpcSecurityGroupMembership struct {
19320	_ struct{} `type:"structure"`
19321
19322	// The status of the VPC security group.
19323	Status *string `type:"string"`
19324
19325	// The VPC security group ID.
19326	VpcSecurityGroupId *string `type:"string"`
19327}
19328
19329// String returns the string representation
19330func (s VpcSecurityGroupMembership) String() string {
19331	return awsutil.Prettify(s)
19332}
19333
19334// GoString returns the string representation
19335func (s VpcSecurityGroupMembership) GoString() string {
19336	return s.String()
19337}
19338
19339// SetStatus sets the Status field's value.
19340func (s *VpcSecurityGroupMembership) SetStatus(v string) *VpcSecurityGroupMembership {
19341	s.Status = &v
19342	return s
19343}
19344
19345// SetVpcSecurityGroupId sets the VpcSecurityGroupId field's value.
19346func (s *VpcSecurityGroupMembership) SetVpcSecurityGroupId(v string) *VpcSecurityGroupMembership {
19347	s.VpcSecurityGroupId = &v
19348	return s
19349}
19350
19351const (
19352	// AuthMechanismValueDefault is a AuthMechanismValue enum value
19353	AuthMechanismValueDefault = "default"
19354
19355	// AuthMechanismValueMongodbCr is a AuthMechanismValue enum value
19356	AuthMechanismValueMongodbCr = "mongodb_cr"
19357
19358	// AuthMechanismValueScramSha1 is a AuthMechanismValue enum value
19359	AuthMechanismValueScramSha1 = "scram_sha_1"
19360)
19361
19362// AuthMechanismValue_Values returns all elements of the AuthMechanismValue enum
19363func AuthMechanismValue_Values() []string {
19364	return []string{
19365		AuthMechanismValueDefault,
19366		AuthMechanismValueMongodbCr,
19367		AuthMechanismValueScramSha1,
19368	}
19369}
19370
19371const (
19372	// AuthTypeValueNo is a AuthTypeValue enum value
19373	AuthTypeValueNo = "no"
19374
19375	// AuthTypeValuePassword is a AuthTypeValue enum value
19376	AuthTypeValuePassword = "password"
19377)
19378
19379// AuthTypeValue_Values returns all elements of the AuthTypeValue enum
19380func AuthTypeValue_Values() []string {
19381	return []string{
19382		AuthTypeValueNo,
19383		AuthTypeValuePassword,
19384	}
19385}
19386
19387const (
19388	// CharLengthSemanticsDefault is a CharLengthSemantics enum value
19389	CharLengthSemanticsDefault = "default"
19390
19391	// CharLengthSemanticsChar is a CharLengthSemantics enum value
19392	CharLengthSemanticsChar = "char"
19393
19394	// CharLengthSemanticsByte is a CharLengthSemantics enum value
19395	CharLengthSemanticsByte = "byte"
19396)
19397
19398// CharLengthSemantics_Values returns all elements of the CharLengthSemantics enum
19399func CharLengthSemantics_Values() []string {
19400	return []string{
19401		CharLengthSemanticsDefault,
19402		CharLengthSemanticsChar,
19403		CharLengthSemanticsByte,
19404	}
19405}
19406
19407const (
19408	// CompressionTypeValueNone is a CompressionTypeValue enum value
19409	CompressionTypeValueNone = "none"
19410
19411	// CompressionTypeValueGzip is a CompressionTypeValue enum value
19412	CompressionTypeValueGzip = "gzip"
19413)
19414
19415// CompressionTypeValue_Values returns all elements of the CompressionTypeValue enum
19416func CompressionTypeValue_Values() []string {
19417	return []string{
19418		CompressionTypeValueNone,
19419		CompressionTypeValueGzip,
19420	}
19421}
19422
19423const (
19424	// DataFormatValueCsv is a DataFormatValue enum value
19425	DataFormatValueCsv = "csv"
19426
19427	// DataFormatValueParquet is a DataFormatValue enum value
19428	DataFormatValueParquet = "parquet"
19429)
19430
19431// DataFormatValue_Values returns all elements of the DataFormatValue enum
19432func DataFormatValue_Values() []string {
19433	return []string{
19434		DataFormatValueCsv,
19435		DataFormatValueParquet,
19436	}
19437}
19438
19439const (
19440	// DatePartitionDelimiterValueSlash is a DatePartitionDelimiterValue enum value
19441	DatePartitionDelimiterValueSlash = "SLASH"
19442
19443	// DatePartitionDelimiterValueUnderscore is a DatePartitionDelimiterValue enum value
19444	DatePartitionDelimiterValueUnderscore = "UNDERSCORE"
19445
19446	// DatePartitionDelimiterValueDash is a DatePartitionDelimiterValue enum value
19447	DatePartitionDelimiterValueDash = "DASH"
19448
19449	// DatePartitionDelimiterValueNone is a DatePartitionDelimiterValue enum value
19450	DatePartitionDelimiterValueNone = "NONE"
19451)
19452
19453// DatePartitionDelimiterValue_Values returns all elements of the DatePartitionDelimiterValue enum
19454func DatePartitionDelimiterValue_Values() []string {
19455	return []string{
19456		DatePartitionDelimiterValueSlash,
19457		DatePartitionDelimiterValueUnderscore,
19458		DatePartitionDelimiterValueDash,
19459		DatePartitionDelimiterValueNone,
19460	}
19461}
19462
19463const (
19464	// DatePartitionSequenceValueYyyymmdd is a DatePartitionSequenceValue enum value
19465	DatePartitionSequenceValueYyyymmdd = "YYYYMMDD"
19466
19467	// DatePartitionSequenceValueYyyymmddhh is a DatePartitionSequenceValue enum value
19468	DatePartitionSequenceValueYyyymmddhh = "YYYYMMDDHH"
19469
19470	// DatePartitionSequenceValueYyyymm is a DatePartitionSequenceValue enum value
19471	DatePartitionSequenceValueYyyymm = "YYYYMM"
19472
19473	// DatePartitionSequenceValueMmyyyydd is a DatePartitionSequenceValue enum value
19474	DatePartitionSequenceValueMmyyyydd = "MMYYYYDD"
19475
19476	// DatePartitionSequenceValueDdmmyyyy is a DatePartitionSequenceValue enum value
19477	DatePartitionSequenceValueDdmmyyyy = "DDMMYYYY"
19478)
19479
19480// DatePartitionSequenceValue_Values returns all elements of the DatePartitionSequenceValue enum
19481func DatePartitionSequenceValue_Values() []string {
19482	return []string{
19483		DatePartitionSequenceValueYyyymmdd,
19484		DatePartitionSequenceValueYyyymmddhh,
19485		DatePartitionSequenceValueYyyymm,
19486		DatePartitionSequenceValueMmyyyydd,
19487		DatePartitionSequenceValueDdmmyyyy,
19488	}
19489}
19490
19491const (
19492	// DmsSslModeValueNone is a DmsSslModeValue enum value
19493	DmsSslModeValueNone = "none"
19494
19495	// DmsSslModeValueRequire is a DmsSslModeValue enum value
19496	DmsSslModeValueRequire = "require"
19497
19498	// DmsSslModeValueVerifyCa is a DmsSslModeValue enum value
19499	DmsSslModeValueVerifyCa = "verify-ca"
19500
19501	// DmsSslModeValueVerifyFull is a DmsSslModeValue enum value
19502	DmsSslModeValueVerifyFull = "verify-full"
19503)
19504
19505// DmsSslModeValue_Values returns all elements of the DmsSslModeValue enum
19506func DmsSslModeValue_Values() []string {
19507	return []string{
19508		DmsSslModeValueNone,
19509		DmsSslModeValueRequire,
19510		DmsSslModeValueVerifyCa,
19511		DmsSslModeValueVerifyFull,
19512	}
19513}
19514
19515const (
19516	// EncodingTypeValuePlain is a EncodingTypeValue enum value
19517	EncodingTypeValuePlain = "plain"
19518
19519	// EncodingTypeValuePlainDictionary is a EncodingTypeValue enum value
19520	EncodingTypeValuePlainDictionary = "plain-dictionary"
19521
19522	// EncodingTypeValueRleDictionary is a EncodingTypeValue enum value
19523	EncodingTypeValueRleDictionary = "rle-dictionary"
19524)
19525
19526// EncodingTypeValue_Values returns all elements of the EncodingTypeValue enum
19527func EncodingTypeValue_Values() []string {
19528	return []string{
19529		EncodingTypeValuePlain,
19530		EncodingTypeValuePlainDictionary,
19531		EncodingTypeValueRleDictionary,
19532	}
19533}
19534
19535const (
19536	// EncryptionModeValueSseS3 is a EncryptionModeValue enum value
19537	EncryptionModeValueSseS3 = "sse-s3"
19538
19539	// EncryptionModeValueSseKms is a EncryptionModeValue enum value
19540	EncryptionModeValueSseKms = "sse-kms"
19541)
19542
19543// EncryptionModeValue_Values returns all elements of the EncryptionModeValue enum
19544func EncryptionModeValue_Values() []string {
19545	return []string{
19546		EncryptionModeValueSseS3,
19547		EncryptionModeValueSseKms,
19548	}
19549}
19550
19551const (
19552	// EndpointSettingTypeValueString is a EndpointSettingTypeValue enum value
19553	EndpointSettingTypeValueString = "string"
19554
19555	// EndpointSettingTypeValueBoolean is a EndpointSettingTypeValue enum value
19556	EndpointSettingTypeValueBoolean = "boolean"
19557
19558	// EndpointSettingTypeValueInteger is a EndpointSettingTypeValue enum value
19559	EndpointSettingTypeValueInteger = "integer"
19560
19561	// EndpointSettingTypeValueEnum is a EndpointSettingTypeValue enum value
19562	EndpointSettingTypeValueEnum = "enum"
19563)
19564
19565// EndpointSettingTypeValue_Values returns all elements of the EndpointSettingTypeValue enum
19566func EndpointSettingTypeValue_Values() []string {
19567	return []string{
19568		EndpointSettingTypeValueString,
19569		EndpointSettingTypeValueBoolean,
19570		EndpointSettingTypeValueInteger,
19571		EndpointSettingTypeValueEnum,
19572	}
19573}
19574
19575const (
19576	// KafkaSecurityProtocolPlaintext is a KafkaSecurityProtocol enum value
19577	KafkaSecurityProtocolPlaintext = "plaintext"
19578
19579	// KafkaSecurityProtocolSslAuthentication is a KafkaSecurityProtocol enum value
19580	KafkaSecurityProtocolSslAuthentication = "ssl-authentication"
19581
19582	// KafkaSecurityProtocolSslEncryption is a KafkaSecurityProtocol enum value
19583	KafkaSecurityProtocolSslEncryption = "ssl-encryption"
19584
19585	// KafkaSecurityProtocolSaslSsl is a KafkaSecurityProtocol enum value
19586	KafkaSecurityProtocolSaslSsl = "sasl-ssl"
19587)
19588
19589// KafkaSecurityProtocol_Values returns all elements of the KafkaSecurityProtocol enum
19590func KafkaSecurityProtocol_Values() []string {
19591	return []string{
19592		KafkaSecurityProtocolPlaintext,
19593		KafkaSecurityProtocolSslAuthentication,
19594		KafkaSecurityProtocolSslEncryption,
19595		KafkaSecurityProtocolSaslSsl,
19596	}
19597}
19598
19599const (
19600	// MessageFormatValueJson is a MessageFormatValue enum value
19601	MessageFormatValueJson = "json"
19602
19603	// MessageFormatValueJsonUnformatted is a MessageFormatValue enum value
19604	MessageFormatValueJsonUnformatted = "json-unformatted"
19605)
19606
19607// MessageFormatValue_Values returns all elements of the MessageFormatValue enum
19608func MessageFormatValue_Values() []string {
19609	return []string{
19610		MessageFormatValueJson,
19611		MessageFormatValueJsonUnformatted,
19612	}
19613}
19614
19615const (
19616	// MigrationTypeValueFullLoad is a MigrationTypeValue enum value
19617	MigrationTypeValueFullLoad = "full-load"
19618
19619	// MigrationTypeValueCdc is a MigrationTypeValue enum value
19620	MigrationTypeValueCdc = "cdc"
19621
19622	// MigrationTypeValueFullLoadAndCdc is a MigrationTypeValue enum value
19623	MigrationTypeValueFullLoadAndCdc = "full-load-and-cdc"
19624)
19625
19626// MigrationTypeValue_Values returns all elements of the MigrationTypeValue enum
19627func MigrationTypeValue_Values() []string {
19628	return []string{
19629		MigrationTypeValueFullLoad,
19630		MigrationTypeValueCdc,
19631		MigrationTypeValueFullLoadAndCdc,
19632	}
19633}
19634
19635const (
19636	// NestingLevelValueNone is a NestingLevelValue enum value
19637	NestingLevelValueNone = "none"
19638
19639	// NestingLevelValueOne is a NestingLevelValue enum value
19640	NestingLevelValueOne = "one"
19641)
19642
19643// NestingLevelValue_Values returns all elements of the NestingLevelValue enum
19644func NestingLevelValue_Values() []string {
19645	return []string{
19646		NestingLevelValueNone,
19647		NestingLevelValueOne,
19648	}
19649}
19650
19651const (
19652	// ParquetVersionValueParquet10 is a ParquetVersionValue enum value
19653	ParquetVersionValueParquet10 = "parquet-1-0"
19654
19655	// ParquetVersionValueParquet20 is a ParquetVersionValue enum value
19656	ParquetVersionValueParquet20 = "parquet-2-0"
19657)
19658
19659// ParquetVersionValue_Values returns all elements of the ParquetVersionValue enum
19660func ParquetVersionValue_Values() []string {
19661	return []string{
19662		ParquetVersionValueParquet10,
19663		ParquetVersionValueParquet20,
19664	}
19665}
19666
19667const (
19668	// RefreshSchemasStatusTypeValueSuccessful is a RefreshSchemasStatusTypeValue enum value
19669	RefreshSchemasStatusTypeValueSuccessful = "successful"
19670
19671	// RefreshSchemasStatusTypeValueFailed is a RefreshSchemasStatusTypeValue enum value
19672	RefreshSchemasStatusTypeValueFailed = "failed"
19673
19674	// RefreshSchemasStatusTypeValueRefreshing is a RefreshSchemasStatusTypeValue enum value
19675	RefreshSchemasStatusTypeValueRefreshing = "refreshing"
19676)
19677
19678// RefreshSchemasStatusTypeValue_Values returns all elements of the RefreshSchemasStatusTypeValue enum
19679func RefreshSchemasStatusTypeValue_Values() []string {
19680	return []string{
19681		RefreshSchemasStatusTypeValueSuccessful,
19682		RefreshSchemasStatusTypeValueFailed,
19683		RefreshSchemasStatusTypeValueRefreshing,
19684	}
19685}
19686
19687const (
19688	// ReleaseStatusValuesBeta is a ReleaseStatusValues enum value
19689	ReleaseStatusValuesBeta = "beta"
19690)
19691
19692// ReleaseStatusValues_Values returns all elements of the ReleaseStatusValues enum
19693func ReleaseStatusValues_Values() []string {
19694	return []string{
19695		ReleaseStatusValuesBeta,
19696	}
19697}
19698
19699const (
19700	// ReloadOptionValueDataReload is a ReloadOptionValue enum value
19701	ReloadOptionValueDataReload = "data-reload"
19702
19703	// ReloadOptionValueValidateOnly is a ReloadOptionValue enum value
19704	ReloadOptionValueValidateOnly = "validate-only"
19705)
19706
19707// ReloadOptionValue_Values returns all elements of the ReloadOptionValue enum
19708func ReloadOptionValue_Values() []string {
19709	return []string{
19710		ReloadOptionValueDataReload,
19711		ReloadOptionValueValidateOnly,
19712	}
19713}
19714
19715const (
19716	// ReplicationEndpointTypeValueSource is a ReplicationEndpointTypeValue enum value
19717	ReplicationEndpointTypeValueSource = "source"
19718
19719	// ReplicationEndpointTypeValueTarget is a ReplicationEndpointTypeValue enum value
19720	ReplicationEndpointTypeValueTarget = "target"
19721)
19722
19723// ReplicationEndpointTypeValue_Values returns all elements of the ReplicationEndpointTypeValue enum
19724func ReplicationEndpointTypeValue_Values() []string {
19725	return []string{
19726		ReplicationEndpointTypeValueSource,
19727		ReplicationEndpointTypeValueTarget,
19728	}
19729}
19730
19731const (
19732	// SafeguardPolicyRelyOnSqlServerReplicationAgent is a SafeguardPolicy enum value
19733	SafeguardPolicyRelyOnSqlServerReplicationAgent = "rely-on-sql-server-replication-agent"
19734
19735	// SafeguardPolicyExclusiveAutomaticTruncation is a SafeguardPolicy enum value
19736	SafeguardPolicyExclusiveAutomaticTruncation = "exclusive-automatic-truncation"
19737
19738	// SafeguardPolicySharedAutomaticTruncation is a SafeguardPolicy enum value
19739	SafeguardPolicySharedAutomaticTruncation = "shared-automatic-truncation"
19740)
19741
19742// SafeguardPolicy_Values returns all elements of the SafeguardPolicy enum
19743func SafeguardPolicy_Values() []string {
19744	return []string{
19745		SafeguardPolicyRelyOnSqlServerReplicationAgent,
19746		SafeguardPolicyExclusiveAutomaticTruncation,
19747		SafeguardPolicySharedAutomaticTruncation,
19748	}
19749}
19750
19751const (
19752	// SourceTypeReplicationInstance is a SourceType enum value
19753	SourceTypeReplicationInstance = "replication-instance"
19754)
19755
19756// SourceType_Values returns all elements of the SourceType enum
19757func SourceType_Values() []string {
19758	return []string{
19759		SourceTypeReplicationInstance,
19760	}
19761}
19762
19763const (
19764	// StartReplicationTaskTypeValueStartReplication is a StartReplicationTaskTypeValue enum value
19765	StartReplicationTaskTypeValueStartReplication = "start-replication"
19766
19767	// StartReplicationTaskTypeValueResumeProcessing is a StartReplicationTaskTypeValue enum value
19768	StartReplicationTaskTypeValueResumeProcessing = "resume-processing"
19769
19770	// StartReplicationTaskTypeValueReloadTarget is a StartReplicationTaskTypeValue enum value
19771	StartReplicationTaskTypeValueReloadTarget = "reload-target"
19772)
19773
19774// StartReplicationTaskTypeValue_Values returns all elements of the StartReplicationTaskTypeValue enum
19775func StartReplicationTaskTypeValue_Values() []string {
19776	return []string{
19777		StartReplicationTaskTypeValueStartReplication,
19778		StartReplicationTaskTypeValueResumeProcessing,
19779		StartReplicationTaskTypeValueReloadTarget,
19780	}
19781}
19782
19783const (
19784	// TargetDbTypeSpecificDatabase is a TargetDbType enum value
19785	TargetDbTypeSpecificDatabase = "specific-database"
19786
19787	// TargetDbTypeMultipleDatabases is a TargetDbType enum value
19788	TargetDbTypeMultipleDatabases = "multiple-databases"
19789)
19790
19791// TargetDbType_Values returns all elements of the TargetDbType enum
19792func TargetDbType_Values() []string {
19793	return []string{
19794		TargetDbTypeSpecificDatabase,
19795		TargetDbTypeMultipleDatabases,
19796	}
19797}
19798