/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace DatabaseMigrationService { namespace Model { /** *

See Also:

AWS * API Reference

*/ class AWS_DATABASEMIGRATIONSERVICE_API StartReplicationTaskRequest : public DatabaseMigrationServiceRequest { public: StartReplicationTaskRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "StartReplicationTask"; } Aws::String SerializePayload() const override; Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The Amazon Resource Name (ARN) of the replication task to be started.

*/ inline const Aws::String& GetReplicationTaskArn() const{ return m_replicationTaskArn; } /** *

The Amazon Resource Name (ARN) of the replication task to be started.

*/ inline bool ReplicationTaskArnHasBeenSet() const { return m_replicationTaskArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the replication task to be started.

*/ inline void SetReplicationTaskArn(const Aws::String& value) { m_replicationTaskArnHasBeenSet = true; m_replicationTaskArn = value; } /** *

The Amazon Resource Name (ARN) of the replication task to be started.

*/ inline void SetReplicationTaskArn(Aws::String&& value) { m_replicationTaskArnHasBeenSet = true; m_replicationTaskArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the replication task to be started.

*/ inline void SetReplicationTaskArn(const char* value) { m_replicationTaskArnHasBeenSet = true; m_replicationTaskArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the replication task to be started.

*/ inline StartReplicationTaskRequest& WithReplicationTaskArn(const Aws::String& value) { SetReplicationTaskArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the replication task to be started.

*/ inline StartReplicationTaskRequest& WithReplicationTaskArn(Aws::String&& value) { SetReplicationTaskArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the replication task to be started.

*/ inline StartReplicationTaskRequest& WithReplicationTaskArn(const char* value) { SetReplicationTaskArn(value); return *this;} /** *

The type of replication task.

*/ inline const StartReplicationTaskTypeValue& GetStartReplicationTaskType() const{ return m_startReplicationTaskType; } /** *

The type of replication task.

*/ inline bool StartReplicationTaskTypeHasBeenSet() const { return m_startReplicationTaskTypeHasBeenSet; } /** *

The type of replication task.

*/ inline void SetStartReplicationTaskType(const StartReplicationTaskTypeValue& value) { m_startReplicationTaskTypeHasBeenSet = true; m_startReplicationTaskType = value; } /** *

The type of replication task.

*/ inline void SetStartReplicationTaskType(StartReplicationTaskTypeValue&& value) { m_startReplicationTaskTypeHasBeenSet = true; m_startReplicationTaskType = std::move(value); } /** *

The type of replication task.

*/ inline StartReplicationTaskRequest& WithStartReplicationTaskType(const StartReplicationTaskTypeValue& value) { SetStartReplicationTaskType(value); return *this;} /** *

The type of replication task.

*/ inline StartReplicationTaskRequest& WithStartReplicationTaskType(StartReplicationTaskTypeValue&& value) { SetStartReplicationTaskType(std::move(value)); return *this;} /** *

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”

*/ inline const Aws::Utils::DateTime& GetCdcStartTime() const{ return m_cdcStartTime; } /** *

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”

*/ inline bool CdcStartTimeHasBeenSet() const { return m_cdcStartTimeHasBeenSet; } /** *

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”

*/ inline void SetCdcStartTime(const Aws::Utils::DateTime& value) { m_cdcStartTimeHasBeenSet = true; m_cdcStartTime = value; } /** *

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”

*/ inline void SetCdcStartTime(Aws::Utils::DateTime&& value) { m_cdcStartTimeHasBeenSet = true; m_cdcStartTime = std::move(value); } /** *

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”

*/ inline StartReplicationTaskRequest& WithCdcStartTime(const Aws::Utils::DateTime& value) { SetCdcStartTime(value); return *this;} /** *

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”

*/ inline StartReplicationTaskRequest& WithCdcStartTime(Aws::Utils::DateTime&& value) { SetCdcStartTime(std::move(value)); return *this;} /** *

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.

* */ inline const Aws::String& GetCdcStartPosition() const{ return m_cdcStartPosition; } /** *

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.

* */ inline bool CdcStartPositionHasBeenSet() const { return m_cdcStartPositionHasBeenSet; } /** *

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.

* */ inline void SetCdcStartPosition(const Aws::String& value) { m_cdcStartPositionHasBeenSet = true; m_cdcStartPosition = value; } /** *

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.

* */ inline void SetCdcStartPosition(Aws::String&& value) { m_cdcStartPositionHasBeenSet = true; m_cdcStartPosition = std::move(value); } /** *

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.

* */ inline void SetCdcStartPosition(const char* value) { m_cdcStartPositionHasBeenSet = true; m_cdcStartPosition.assign(value); } /** *

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.

* */ inline StartReplicationTaskRequest& WithCdcStartPosition(const Aws::String& value) { SetCdcStartPosition(value); return *this;} /** *

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.

* */ inline StartReplicationTaskRequest& WithCdcStartPosition(Aws::String&& value) { SetCdcStartPosition(std::move(value)); return *this;} /** *

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.

* */ inline StartReplicationTaskRequest& WithCdcStartPosition(const char* value) { SetCdcStartPosition(value); return *this;} /** *

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:2018-02-09T12:12:12”

Commit time * example: --cdc-stop-position “commit_time: 2018-02-09T12:12:12 “

*/ inline const Aws::String& GetCdcStopPosition() const{ return m_cdcStopPosition; } /** *

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:2018-02-09T12:12:12”

Commit time * example: --cdc-stop-position “commit_time: 2018-02-09T12:12:12 “

*/ inline bool CdcStopPositionHasBeenSet() const { return m_cdcStopPositionHasBeenSet; } /** *

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:2018-02-09T12:12:12”

Commit time * example: --cdc-stop-position “commit_time: 2018-02-09T12:12:12 “

*/ inline void SetCdcStopPosition(const Aws::String& value) { m_cdcStopPositionHasBeenSet = true; m_cdcStopPosition = value; } /** *

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:2018-02-09T12:12:12”

Commit time * example: --cdc-stop-position “commit_time: 2018-02-09T12:12:12 “

*/ inline void SetCdcStopPosition(Aws::String&& value) { m_cdcStopPositionHasBeenSet = true; m_cdcStopPosition = std::move(value); } /** *

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:2018-02-09T12:12:12”

Commit time * example: --cdc-stop-position “commit_time: 2018-02-09T12:12:12 “

*/ inline void SetCdcStopPosition(const char* value) { m_cdcStopPositionHasBeenSet = true; m_cdcStopPosition.assign(value); } /** *

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:2018-02-09T12:12:12”

Commit time * example: --cdc-stop-position “commit_time: 2018-02-09T12:12:12 “

*/ inline StartReplicationTaskRequest& WithCdcStopPosition(const Aws::String& value) { SetCdcStopPosition(value); return *this;} /** *

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:2018-02-09T12:12:12”

Commit time * example: --cdc-stop-position “commit_time: 2018-02-09T12:12:12 “

*/ inline StartReplicationTaskRequest& WithCdcStopPosition(Aws::String&& value) { SetCdcStopPosition(std::move(value)); return *this;} /** *

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:2018-02-09T12:12:12”

Commit time * example: --cdc-stop-position “commit_time: 2018-02-09T12:12:12 “

*/ inline StartReplicationTaskRequest& WithCdcStopPosition(const char* value) { SetCdcStopPosition(value); return *this;} private: Aws::String m_replicationTaskArn; bool m_replicationTaskArnHasBeenSet; StartReplicationTaskTypeValue m_startReplicationTaskType; bool m_startReplicationTaskTypeHasBeenSet; Aws::Utils::DateTime m_cdcStartTime; bool m_cdcStartTimeHasBeenSet; Aws::String m_cdcStartPosition; bool m_cdcStartPositionHasBeenSet; Aws::String m_cdcStopPosition; bool m_cdcStopPositionHasBeenSet; }; } // namespace Model } // namespace DatabaseMigrationService } // namespace Aws