/
api_op_ModifyReplicationTask.go
151 lines (132 loc) · 6.14 KB
/
api_op_ModifyReplicationTask.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
// Code generated by smithy-go-codegen DO NOT EDIT.
package databasemigrationservice
import (
"context"
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
"github.com/aws/aws-sdk-go-v2/aws/retry"
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
"github.com/aws/aws-sdk-go-v2/service/databasemigrationservice/types"
smithy "github.com/awslabs/smithy-go"
"github.com/awslabs/smithy-go/middleware"
smithyhttp "github.com/awslabs/smithy-go/transport/http"
"time"
)
// Modifies the specified replication task. You can't modify the task endpoints.
// The task must be stopped before you can modify it. For more information about
// AWS DMS tasks, see Working with Migration Tasks
// (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Tasks.html) in the AWS
// Database Migration Service User Guide.
func (c *Client) ModifyReplicationTask(ctx context.Context, params *ModifyReplicationTaskInput, optFns ...func(*Options)) (*ModifyReplicationTaskOutput, error) {
stack := middleware.NewStack("ModifyReplicationTask", smithyhttp.NewStackRequest)
options := c.options.Copy()
for _, fn := range optFns {
fn(&options)
}
addawsAwsjson11_serdeOpModifyReplicationTaskMiddlewares(stack)
awsmiddleware.AddRequestInvocationIDMiddleware(stack)
smithyhttp.AddContentLengthMiddleware(stack)
AddResolveEndpointMiddleware(stack, options)
v4.AddComputePayloadSHA256Middleware(stack)
retry.AddRetryMiddlewares(stack, options)
addHTTPSignerV4Middleware(stack, options)
awsmiddleware.AddAttemptClockSkewMiddleware(stack)
addClientUserAgent(stack)
smithyhttp.AddErrorCloseResponseBodyMiddleware(stack)
smithyhttp.AddCloseResponseBodyMiddleware(stack)
addOpModifyReplicationTaskValidationMiddleware(stack)
stack.Initialize.Add(newServiceMetadataMiddleware_opModifyReplicationTask(options.Region), middleware.Before)
addRequestIDRetrieverMiddleware(stack)
addResponseErrorMiddleware(stack)
for _, fn := range options.APIOptions {
if err := fn(stack); err != nil {
return nil, err
}
}
handler := middleware.DecorateHandler(smithyhttp.NewClientHandler(options.HTTPClient), stack)
result, metadata, err := handler.Handle(ctx, params)
if err != nil {
return nil, &smithy.OperationError{
ServiceID: ServiceID,
OperationName: "ModifyReplicationTask",
Err: err,
}
}
out := result.(*ModifyReplicationTaskOutput)
out.ResultMetadata = metadata
return out, nil
}
//
type ModifyReplicationTaskInput struct {
// When using the AWS CLI or boto3, provide the path of the JSON file that contains
// the table mappings. Precede the path with file://. When working with the DMS
// API, provide the JSON as the parameter value, for example: --table-mappings
// file://mappingfile.json
TableMappings *string
// Indicates when you want a change data capture (CDC) operation to start. Use
// either CdcStartPosition or CdcStartTime to specify when you want a CDC operation
// to start. Specifying both values results in an error. The value can be in date,
// checkpoint, or LSN/SCN format. Date Example: --cdc-start-position
// “2018-03-08T12:12:12” 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"
// LSN Example: --cdc-start-position “mysql-bin-changelog.000024:373” When you use
// this task setting with a source PostgreSQL database, a logical replication slot
// should already be created and associated with the source endpoint. You can
// verify this by setting the slotName extra connection attribute to the name of
// this logical replication slot. For more information, see Extra 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).
CdcStartPosition *string
// JSON file that contains settings for the task, such as task metadata settings.
ReplicationTaskSettings *string
// The replication task identifier. Constraints:
//
// * Must contain 1-255
// alphanumeric characters or hyphens.
//
// * First character must be a letter.
//
//
// * Cannot end with a hyphen or contain two consecutive hyphens.
ReplicationTaskIdentifier *string
// Indicates when you want a change data capture (CDC) operation to stop. The value
// can be either server time or commit time. Server time example:
// --cdc-stop-position “server_time:3018-02-09T12:12:12” Commit time example:
// --cdc-stop-position “commit_time: 3018-02-09T12:12:12 “
CdcStopPosition *string
// The Amazon Resource Name (ARN) of the replication task.
//
// This member is required.
ReplicationTaskArn *string
// The migration type. Valid values: full-load | cdc | full-load-and-cdc
MigrationType types.MigrationTypeValue
// Supplemental information that the task requires to migrate the data for certain
// source and target endpoints. For more information, see Specifying Supplemental
// Data for Task Settings
// (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Tasks.TaskData.html) in
// the AWS Database Migration Service User Guide.
TaskData *string
// Indicates the start time for a change data capture (CDC) operation. Use either
// CdcStartTime or CdcStartPosition to specify when you want a CDC operation to
// start. Specifying both values results in an error. Timestamp Example:
// --cdc-start-time “2018-03-08T12:12:12”
CdcStartTime *time.Time
}
//
type ModifyReplicationTaskOutput struct {
// The replication task that was modified.
ReplicationTask *types.ReplicationTask
// Metadata pertaining to the operation's result.
ResultMetadata middleware.Metadata
}
func addawsAwsjson11_serdeOpModifyReplicationTaskMiddlewares(stack *middleware.Stack) {
stack.Serialize.Add(&awsAwsjson11_serializeOpModifyReplicationTask{}, middleware.After)
stack.Deserialize.Add(&awsAwsjson11_deserializeOpModifyReplicationTask{}, middleware.After)
}
func newServiceMetadataMiddleware_opModifyReplicationTask(region string) awsmiddleware.RegisterServiceMetadata {
return awsmiddleware.RegisterServiceMetadata{
Region: region,
ServiceID: ServiceID,
SigningName: "dms",
OperationName: "ModifyReplicationTask",
}
}