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

Provides information that describes a serverless replication created by the * CreateReplication operation.

See Also:

AWS API * Reference

*/ class Replication { public: AWS_DATABASEMIGRATIONSERVICE_API Replication(); AWS_DATABASEMIGRATIONSERVICE_API Replication(Aws::Utils::Json::JsonView jsonValue); AWS_DATABASEMIGRATIONSERVICE_API Replication& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_DATABASEMIGRATIONSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The identifier for the ReplicationConfig associated with the * replication.

*/ inline const Aws::String& GetReplicationConfigIdentifier() const{ return m_replicationConfigIdentifier; } /** *

The identifier for the ReplicationConfig associated with the * replication.

*/ inline bool ReplicationConfigIdentifierHasBeenSet() const { return m_replicationConfigIdentifierHasBeenSet; } /** *

The identifier for the ReplicationConfig associated with the * replication.

*/ inline void SetReplicationConfigIdentifier(const Aws::String& value) { m_replicationConfigIdentifierHasBeenSet = true; m_replicationConfigIdentifier = value; } /** *

The identifier for the ReplicationConfig associated with the * replication.

*/ inline void SetReplicationConfigIdentifier(Aws::String&& value) { m_replicationConfigIdentifierHasBeenSet = true; m_replicationConfigIdentifier = std::move(value); } /** *

The identifier for the ReplicationConfig associated with the * replication.

*/ inline void SetReplicationConfigIdentifier(const char* value) { m_replicationConfigIdentifierHasBeenSet = true; m_replicationConfigIdentifier.assign(value); } /** *

The identifier for the ReplicationConfig associated with the * replication.

*/ inline Replication& WithReplicationConfigIdentifier(const Aws::String& value) { SetReplicationConfigIdentifier(value); return *this;} /** *

The identifier for the ReplicationConfig associated with the * replication.

*/ inline Replication& WithReplicationConfigIdentifier(Aws::String&& value) { SetReplicationConfigIdentifier(std::move(value)); return *this;} /** *

The identifier for the ReplicationConfig associated with the * replication.

*/ inline Replication& WithReplicationConfigIdentifier(const char* value) { SetReplicationConfigIdentifier(value); return *this;} /** *

The Amazon Resource Name for the ReplicationConfig associated * with the replication.

*/ inline const Aws::String& GetReplicationConfigArn() const{ return m_replicationConfigArn; } /** *

The Amazon Resource Name for the ReplicationConfig associated * with the replication.

*/ inline bool ReplicationConfigArnHasBeenSet() const { return m_replicationConfigArnHasBeenSet; } /** *

The Amazon Resource Name for the ReplicationConfig associated * with the replication.

*/ inline void SetReplicationConfigArn(const Aws::String& value) { m_replicationConfigArnHasBeenSet = true; m_replicationConfigArn = value; } /** *

The Amazon Resource Name for the ReplicationConfig associated * with the replication.

*/ inline void SetReplicationConfigArn(Aws::String&& value) { m_replicationConfigArnHasBeenSet = true; m_replicationConfigArn = std::move(value); } /** *

The Amazon Resource Name for the ReplicationConfig associated * with the replication.

*/ inline void SetReplicationConfigArn(const char* value) { m_replicationConfigArnHasBeenSet = true; m_replicationConfigArn.assign(value); } /** *

The Amazon Resource Name for the ReplicationConfig associated * with the replication.

*/ inline Replication& WithReplicationConfigArn(const Aws::String& value) { SetReplicationConfigArn(value); return *this;} /** *

The Amazon Resource Name for the ReplicationConfig associated * with the replication.

*/ inline Replication& WithReplicationConfigArn(Aws::String&& value) { SetReplicationConfigArn(std::move(value)); return *this;} /** *

The Amazon Resource Name for the ReplicationConfig associated * with the replication.

*/ inline Replication& WithReplicationConfigArn(const char* value) { SetReplicationConfigArn(value); return *this;} /** *

The Amazon Resource Name for an existing Endpoint the serverless * replication uses for its data source.

*/ inline const Aws::String& GetSourceEndpointArn() const{ return m_sourceEndpointArn; } /** *

The Amazon Resource Name for an existing Endpoint the serverless * replication uses for its data source.

*/ inline bool SourceEndpointArnHasBeenSet() const { return m_sourceEndpointArnHasBeenSet; } /** *

The Amazon Resource Name for an existing Endpoint the serverless * replication uses for its data source.

*/ inline void SetSourceEndpointArn(const Aws::String& value) { m_sourceEndpointArnHasBeenSet = true; m_sourceEndpointArn = value; } /** *

The Amazon Resource Name for an existing Endpoint the serverless * replication uses for its data source.

*/ inline void SetSourceEndpointArn(Aws::String&& value) { m_sourceEndpointArnHasBeenSet = true; m_sourceEndpointArn = std::move(value); } /** *

The Amazon Resource Name for an existing Endpoint the serverless * replication uses for its data source.

*/ inline void SetSourceEndpointArn(const char* value) { m_sourceEndpointArnHasBeenSet = true; m_sourceEndpointArn.assign(value); } /** *

The Amazon Resource Name for an existing Endpoint the serverless * replication uses for its data source.

*/ inline Replication& WithSourceEndpointArn(const Aws::String& value) { SetSourceEndpointArn(value); return *this;} /** *

The Amazon Resource Name for an existing Endpoint the serverless * replication uses for its data source.

*/ inline Replication& WithSourceEndpointArn(Aws::String&& value) { SetSourceEndpointArn(std::move(value)); return *this;} /** *

The Amazon Resource Name for an existing Endpoint the serverless * replication uses for its data source.

*/ inline Replication& WithSourceEndpointArn(const char* value) { SetSourceEndpointArn(value); return *this;} /** *

The Amazon Resource Name for an existing Endpoint the serverless * replication uses for its data target.

*/ inline const Aws::String& GetTargetEndpointArn() const{ return m_targetEndpointArn; } /** *

The Amazon Resource Name for an existing Endpoint the serverless * replication uses for its data target.

*/ inline bool TargetEndpointArnHasBeenSet() const { return m_targetEndpointArnHasBeenSet; } /** *

The Amazon Resource Name for an existing Endpoint the serverless * replication uses for its data target.

*/ inline void SetTargetEndpointArn(const Aws::String& value) { m_targetEndpointArnHasBeenSet = true; m_targetEndpointArn = value; } /** *

The Amazon Resource Name for an existing Endpoint the serverless * replication uses for its data target.

*/ inline void SetTargetEndpointArn(Aws::String&& value) { m_targetEndpointArnHasBeenSet = true; m_targetEndpointArn = std::move(value); } /** *

The Amazon Resource Name for an existing Endpoint the serverless * replication uses for its data target.

*/ inline void SetTargetEndpointArn(const char* value) { m_targetEndpointArnHasBeenSet = true; m_targetEndpointArn.assign(value); } /** *

The Amazon Resource Name for an existing Endpoint the serverless * replication uses for its data target.

*/ inline Replication& WithTargetEndpointArn(const Aws::String& value) { SetTargetEndpointArn(value); return *this;} /** *

The Amazon Resource Name for an existing Endpoint the serverless * replication uses for its data target.

*/ inline Replication& WithTargetEndpointArn(Aws::String&& value) { SetTargetEndpointArn(std::move(value)); return *this;} /** *

The Amazon Resource Name for an existing Endpoint the serverless * replication uses for its data target.

*/ inline Replication& WithTargetEndpointArn(const char* value) { SetTargetEndpointArn(value); return *this;} /** *

The type of the serverless replication.

*/ inline const MigrationTypeValue& GetReplicationType() const{ return m_replicationType; } /** *

The type of the serverless replication.

*/ inline bool ReplicationTypeHasBeenSet() const { return m_replicationTypeHasBeenSet; } /** *

The type of the serverless replication.

*/ inline void SetReplicationType(const MigrationTypeValue& value) { m_replicationTypeHasBeenSet = true; m_replicationType = value; } /** *

The type of the serverless replication.

*/ inline void SetReplicationType(MigrationTypeValue&& value) { m_replicationTypeHasBeenSet = true; m_replicationType = std::move(value); } /** *

The type of the serverless replication.

*/ inline Replication& WithReplicationType(const MigrationTypeValue& value) { SetReplicationType(value); return *this;} /** *

The type of the serverless replication.

*/ inline Replication& WithReplicationType(MigrationTypeValue&& value) { SetReplicationType(std::move(value)); return *this;} /** *

The current status of the serverless replication.

*/ inline const Aws::String& GetStatus() const{ return m_status; } /** *

The current status of the serverless replication.

*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

The current status of the serverless replication.

*/ inline void SetStatus(const Aws::String& value) { m_statusHasBeenSet = true; m_status = value; } /** *

The current status of the serverless replication.

*/ inline void SetStatus(Aws::String&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *

The current status of the serverless replication.

*/ inline void SetStatus(const char* value) { m_statusHasBeenSet = true; m_status.assign(value); } /** *

The current status of the serverless replication.

*/ inline Replication& WithStatus(const Aws::String& value) { SetStatus(value); return *this;} /** *

The current status of the serverless replication.

*/ inline Replication& WithStatus(Aws::String&& value) { SetStatus(std::move(value)); return *this;} /** *

The current status of the serverless replication.

*/ inline Replication& WithStatus(const char* value) { SetStatus(value); return *this;} /** *

Information about provisioning resources for an DMS serverless * replication.

*/ inline const ProvisionData& GetProvisionData() const{ return m_provisionData; } /** *

Information about provisioning resources for an DMS serverless * replication.

*/ inline bool ProvisionDataHasBeenSet() const { return m_provisionDataHasBeenSet; } /** *

Information about provisioning resources for an DMS serverless * replication.

*/ inline void SetProvisionData(const ProvisionData& value) { m_provisionDataHasBeenSet = true; m_provisionData = value; } /** *

Information about provisioning resources for an DMS serverless * replication.

*/ inline void SetProvisionData(ProvisionData&& value) { m_provisionDataHasBeenSet = true; m_provisionData = std::move(value); } /** *

Information about provisioning resources for an DMS serverless * replication.

*/ inline Replication& WithProvisionData(const ProvisionData& value) { SetProvisionData(value); return *this;} /** *

Information about provisioning resources for an DMS serverless * replication.

*/ inline Replication& WithProvisionData(ProvisionData&& value) { SetProvisionData(std::move(value)); return *this;} /** *

The reason the replication task was stopped. This response parameter can * return one of the following values:

  • "Stop Reason * NORMAL"

  • "Stop Reason RECOVERABLE_ERROR" *

  • "Stop Reason FATAL_ERROR"

  • * "Stop Reason FULL_LOAD_ONLY_FINISHED"

  • * "Stop Reason STOPPED_AFTER_FULL_LOAD" – Full load completed, with * cached changes not applied

  • "Stop Reason * STOPPED_AFTER_CACHED_EVENTS" – Full load completed, with cached changes * applied

  • "Stop Reason * EXPRESS_LICENSE_LIMITS_REACHED"

  • "Stop Reason * STOPPED_AFTER_DDL_APPLY" – User-defined stop task after DDL applied

    *
  • "Stop Reason STOPPED_DUE_TO_LOW_MEMORY"

  • *
  • "Stop Reason STOPPED_DUE_TO_LOW_DISK"

  • * "Stop Reason STOPPED_AT_SERVER_TIME" – User-defined server time for * stopping task

  • "Stop Reason * STOPPED_AT_COMMIT_TIME" – User-defined commit time for stopping task

    *
  • "Stop Reason RECONFIGURATION_RESTART"

  • *
  • "Stop Reason RECYCLE_TASK"

*/ inline const Aws::String& GetStopReason() const{ return m_stopReason; } /** *

The reason the replication task was stopped. This response parameter can * return one of the following values:

  • "Stop Reason * NORMAL"

  • "Stop Reason RECOVERABLE_ERROR" *

  • "Stop Reason FATAL_ERROR"

  • * "Stop Reason FULL_LOAD_ONLY_FINISHED"

  • * "Stop Reason STOPPED_AFTER_FULL_LOAD" – Full load completed, with * cached changes not applied

  • "Stop Reason * STOPPED_AFTER_CACHED_EVENTS" – Full load completed, with cached changes * applied

  • "Stop Reason * EXPRESS_LICENSE_LIMITS_REACHED"

  • "Stop Reason * STOPPED_AFTER_DDL_APPLY" – User-defined stop task after DDL applied

    *
  • "Stop Reason STOPPED_DUE_TO_LOW_MEMORY"

  • *
  • "Stop Reason STOPPED_DUE_TO_LOW_DISK"

  • * "Stop Reason STOPPED_AT_SERVER_TIME" – User-defined server time for * stopping task

  • "Stop Reason * STOPPED_AT_COMMIT_TIME" – User-defined commit time for stopping task

    *
  • "Stop Reason RECONFIGURATION_RESTART"

  • *
  • "Stop Reason RECYCLE_TASK"

*/ inline bool StopReasonHasBeenSet() const { return m_stopReasonHasBeenSet; } /** *

The reason the replication task was stopped. This response parameter can * return one of the following values:

  • "Stop Reason * NORMAL"

  • "Stop Reason RECOVERABLE_ERROR" *

  • "Stop Reason FATAL_ERROR"

  • * "Stop Reason FULL_LOAD_ONLY_FINISHED"

  • * "Stop Reason STOPPED_AFTER_FULL_LOAD" – Full load completed, with * cached changes not applied

  • "Stop Reason * STOPPED_AFTER_CACHED_EVENTS" – Full load completed, with cached changes * applied

  • "Stop Reason * EXPRESS_LICENSE_LIMITS_REACHED"

  • "Stop Reason * STOPPED_AFTER_DDL_APPLY" – User-defined stop task after DDL applied

    *
  • "Stop Reason STOPPED_DUE_TO_LOW_MEMORY"

  • *
  • "Stop Reason STOPPED_DUE_TO_LOW_DISK"

  • * "Stop Reason STOPPED_AT_SERVER_TIME" – User-defined server time for * stopping task

  • "Stop Reason * STOPPED_AT_COMMIT_TIME" – User-defined commit time for stopping task

    *
  • "Stop Reason RECONFIGURATION_RESTART"

  • *
  • "Stop Reason RECYCLE_TASK"

*/ inline void SetStopReason(const Aws::String& value) { m_stopReasonHasBeenSet = true; m_stopReason = value; } /** *

The reason the replication task was stopped. This response parameter can * return one of the following values:

  • "Stop Reason * NORMAL"

  • "Stop Reason RECOVERABLE_ERROR" *

  • "Stop Reason FATAL_ERROR"

  • * "Stop Reason FULL_LOAD_ONLY_FINISHED"

  • * "Stop Reason STOPPED_AFTER_FULL_LOAD" – Full load completed, with * cached changes not applied

  • "Stop Reason * STOPPED_AFTER_CACHED_EVENTS" – Full load completed, with cached changes * applied

  • "Stop Reason * EXPRESS_LICENSE_LIMITS_REACHED"

  • "Stop Reason * STOPPED_AFTER_DDL_APPLY" – User-defined stop task after DDL applied

    *
  • "Stop Reason STOPPED_DUE_TO_LOW_MEMORY"

  • *
  • "Stop Reason STOPPED_DUE_TO_LOW_DISK"

  • * "Stop Reason STOPPED_AT_SERVER_TIME" – User-defined server time for * stopping task

  • "Stop Reason * STOPPED_AT_COMMIT_TIME" – User-defined commit time for stopping task

    *
  • "Stop Reason RECONFIGURATION_RESTART"

  • *
  • "Stop Reason RECYCLE_TASK"

*/ inline void SetStopReason(Aws::String&& value) { m_stopReasonHasBeenSet = true; m_stopReason = std::move(value); } /** *

The reason the replication task was stopped. This response parameter can * return one of the following values:

  • "Stop Reason * NORMAL"

  • "Stop Reason RECOVERABLE_ERROR" *

  • "Stop Reason FATAL_ERROR"

  • * "Stop Reason FULL_LOAD_ONLY_FINISHED"

  • * "Stop Reason STOPPED_AFTER_FULL_LOAD" – Full load completed, with * cached changes not applied

  • "Stop Reason * STOPPED_AFTER_CACHED_EVENTS" – Full load completed, with cached changes * applied

  • "Stop Reason * EXPRESS_LICENSE_LIMITS_REACHED"

  • "Stop Reason * STOPPED_AFTER_DDL_APPLY" – User-defined stop task after DDL applied

    *
  • "Stop Reason STOPPED_DUE_TO_LOW_MEMORY"

  • *
  • "Stop Reason STOPPED_DUE_TO_LOW_DISK"

  • * "Stop Reason STOPPED_AT_SERVER_TIME" – User-defined server time for * stopping task

  • "Stop Reason * STOPPED_AT_COMMIT_TIME" – User-defined commit time for stopping task

    *
  • "Stop Reason RECONFIGURATION_RESTART"

  • *
  • "Stop Reason RECYCLE_TASK"

*/ inline void SetStopReason(const char* value) { m_stopReasonHasBeenSet = true; m_stopReason.assign(value); } /** *

The reason the replication task was stopped. This response parameter can * return one of the following values:

  • "Stop Reason * NORMAL"

  • "Stop Reason RECOVERABLE_ERROR" *

  • "Stop Reason FATAL_ERROR"

  • * "Stop Reason FULL_LOAD_ONLY_FINISHED"

  • * "Stop Reason STOPPED_AFTER_FULL_LOAD" – Full load completed, with * cached changes not applied

  • "Stop Reason * STOPPED_AFTER_CACHED_EVENTS" – Full load completed, with cached changes * applied

  • "Stop Reason * EXPRESS_LICENSE_LIMITS_REACHED"

  • "Stop Reason * STOPPED_AFTER_DDL_APPLY" – User-defined stop task after DDL applied

    *
  • "Stop Reason STOPPED_DUE_TO_LOW_MEMORY"

  • *
  • "Stop Reason STOPPED_DUE_TO_LOW_DISK"

  • * "Stop Reason STOPPED_AT_SERVER_TIME" – User-defined server time for * stopping task

  • "Stop Reason * STOPPED_AT_COMMIT_TIME" – User-defined commit time for stopping task

    *
  • "Stop Reason RECONFIGURATION_RESTART"

  • *
  • "Stop Reason RECYCLE_TASK"

*/ inline Replication& WithStopReason(const Aws::String& value) { SetStopReason(value); return *this;} /** *

The reason the replication task was stopped. This response parameter can * return one of the following values:

  • "Stop Reason * NORMAL"

  • "Stop Reason RECOVERABLE_ERROR" *

  • "Stop Reason FATAL_ERROR"

  • * "Stop Reason FULL_LOAD_ONLY_FINISHED"

  • * "Stop Reason STOPPED_AFTER_FULL_LOAD" – Full load completed, with * cached changes not applied

  • "Stop Reason * STOPPED_AFTER_CACHED_EVENTS" – Full load completed, with cached changes * applied

  • "Stop Reason * EXPRESS_LICENSE_LIMITS_REACHED"

  • "Stop Reason * STOPPED_AFTER_DDL_APPLY" – User-defined stop task after DDL applied

    *
  • "Stop Reason STOPPED_DUE_TO_LOW_MEMORY"

  • *
  • "Stop Reason STOPPED_DUE_TO_LOW_DISK"

  • * "Stop Reason STOPPED_AT_SERVER_TIME" – User-defined server time for * stopping task

  • "Stop Reason * STOPPED_AT_COMMIT_TIME" – User-defined commit time for stopping task

    *
  • "Stop Reason RECONFIGURATION_RESTART"

  • *
  • "Stop Reason RECYCLE_TASK"

*/ inline Replication& WithStopReason(Aws::String&& value) { SetStopReason(std::move(value)); return *this;} /** *

The reason the replication task was stopped. This response parameter can * return one of the following values:

  • "Stop Reason * NORMAL"

  • "Stop Reason RECOVERABLE_ERROR" *

  • "Stop Reason FATAL_ERROR"

  • * "Stop Reason FULL_LOAD_ONLY_FINISHED"

  • * "Stop Reason STOPPED_AFTER_FULL_LOAD" – Full load completed, with * cached changes not applied

  • "Stop Reason * STOPPED_AFTER_CACHED_EVENTS" – Full load completed, with cached changes * applied

  • "Stop Reason * EXPRESS_LICENSE_LIMITS_REACHED"

  • "Stop Reason * STOPPED_AFTER_DDL_APPLY" – User-defined stop task after DDL applied

    *
  • "Stop Reason STOPPED_DUE_TO_LOW_MEMORY"

  • *
  • "Stop Reason STOPPED_DUE_TO_LOW_DISK"

  • * "Stop Reason STOPPED_AT_SERVER_TIME" – User-defined server time for * stopping task

  • "Stop Reason * STOPPED_AT_COMMIT_TIME" – User-defined commit time for stopping task

    *
  • "Stop Reason RECONFIGURATION_RESTART"

  • *
  • "Stop Reason RECYCLE_TASK"

*/ inline Replication& WithStopReason(const char* value) { SetStopReason(value); return *this;} /** *

Error and other information about why a serverless replication failed.

*/ inline const Aws::Vector& GetFailureMessages() const{ return m_failureMessages; } /** *

Error and other information about why a serverless replication failed.

*/ inline bool FailureMessagesHasBeenSet() const { return m_failureMessagesHasBeenSet; } /** *

Error and other information about why a serverless replication failed.

*/ inline void SetFailureMessages(const Aws::Vector& value) { m_failureMessagesHasBeenSet = true; m_failureMessages = value; } /** *

Error and other information about why a serverless replication failed.

*/ inline void SetFailureMessages(Aws::Vector&& value) { m_failureMessagesHasBeenSet = true; m_failureMessages = std::move(value); } /** *

Error and other information about why a serverless replication failed.

*/ inline Replication& WithFailureMessages(const Aws::Vector& value) { SetFailureMessages(value); return *this;} /** *

Error and other information about why a serverless replication failed.

*/ inline Replication& WithFailureMessages(Aws::Vector&& value) { SetFailureMessages(std::move(value)); return *this;} /** *

Error and other information about why a serverless replication failed.

*/ inline Replication& AddFailureMessages(const Aws::String& value) { m_failureMessagesHasBeenSet = true; m_failureMessages.push_back(value); return *this; } /** *

Error and other information about why a serverless replication failed.

*/ inline Replication& AddFailureMessages(Aws::String&& value) { m_failureMessagesHasBeenSet = true; m_failureMessages.push_back(std::move(value)); return *this; } /** *

Error and other information about why a serverless replication failed.

*/ inline Replication& AddFailureMessages(const char* value) { m_failureMessagesHasBeenSet = true; m_failureMessages.push_back(value); return *this; } /** *

This object provides a collection of statistics about a serverless * replication.

*/ inline const ReplicationStats& GetReplicationStats() const{ return m_replicationStats; } /** *

This object provides a collection of statistics about a serverless * replication.

*/ inline bool ReplicationStatsHasBeenSet() const { return m_replicationStatsHasBeenSet; } /** *

This object provides a collection of statistics about a serverless * replication.

*/ inline void SetReplicationStats(const ReplicationStats& value) { m_replicationStatsHasBeenSet = true; m_replicationStats = value; } /** *

This object provides a collection of statistics about a serverless * replication.

*/ inline void SetReplicationStats(ReplicationStats&& value) { m_replicationStatsHasBeenSet = true; m_replicationStats = std::move(value); } /** *

This object provides a collection of statistics about a serverless * replication.

*/ inline Replication& WithReplicationStats(const ReplicationStats& value) { SetReplicationStats(value); return *this;} /** *

This object provides a collection of statistics about a serverless * replication.

*/ inline Replication& WithReplicationStats(ReplicationStats&& value) { SetReplicationStats(std::move(value)); return *this;} /** *

The replication type.

*/ inline const Aws::String& GetStartReplicationType() const{ return m_startReplicationType; } /** *

The replication type.

*/ inline bool StartReplicationTypeHasBeenSet() const { return m_startReplicationTypeHasBeenSet; } /** *

The replication type.

*/ inline void SetStartReplicationType(const Aws::String& value) { m_startReplicationTypeHasBeenSet = true; m_startReplicationType = value; } /** *

The replication type.

*/ inline void SetStartReplicationType(Aws::String&& value) { m_startReplicationTypeHasBeenSet = true; m_startReplicationType = std::move(value); } /** *

The replication type.

*/ inline void SetStartReplicationType(const char* value) { m_startReplicationTypeHasBeenSet = true; m_startReplicationType.assign(value); } /** *

The replication type.

*/ inline Replication& WithStartReplicationType(const Aws::String& value) { SetStartReplicationType(value); return *this;} /** *

The replication type.

*/ inline Replication& WithStartReplicationType(Aws::String&& value) { SetStartReplicationType(std::move(value)); return *this;} /** *

The replication type.

*/ inline Replication& WithStartReplicationType(const char* value) { SetStartReplicationType(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.

*/ 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.

*/ 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.

*/ 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.

*/ 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.

*/ inline Replication& 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.

*/ inline Replication& WithCdcStartTime(Aws::Utils::DateTime&& value) { SetCdcStartTime(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.

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

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.

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

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.

*/ inline void SetCdcStartPosition(const Aws::String& value) { m_cdcStartPositionHasBeenSet = true; m_cdcStartPosition = 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.

*/ inline void SetCdcStartPosition(Aws::String&& value) { m_cdcStartPositionHasBeenSet = true; m_cdcStartPosition = 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.

*/ inline void SetCdcStartPosition(const char* value) { m_cdcStartPositionHasBeenSet = true; m_cdcStartPosition.assign(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.

*/ inline Replication& WithCdcStartPosition(const Aws::String& value) { SetCdcStartPosition(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.

*/ inline Replication& WithCdcStartPosition(Aws::String&& value) { SetCdcStartPosition(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.

*/ inline Replication& 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.

*/ 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.

*/ 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.

*/ 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.

*/ 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.

*/ 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.

*/ inline Replication& 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.

*/ inline Replication& 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.

*/ inline Replication& WithCdcStopPosition(const char* value) { SetCdcStopPosition(value); return *this;} /** *

Indicates the last checkpoint that occurred during a change data capture * (CDC) operation. You can provide this value to the CdcStartPosition * parameter to start a CDC operation that begins at that checkpoint.

*/ inline const Aws::String& GetRecoveryCheckpoint() const{ return m_recoveryCheckpoint; } /** *

Indicates the last checkpoint that occurred during a change data capture * (CDC) operation. You can provide this value to the CdcStartPosition * parameter to start a CDC operation that begins at that checkpoint.

*/ inline bool RecoveryCheckpointHasBeenSet() const { return m_recoveryCheckpointHasBeenSet; } /** *

Indicates the last checkpoint that occurred during a change data capture * (CDC) operation. You can provide this value to the CdcStartPosition * parameter to start a CDC operation that begins at that checkpoint.

*/ inline void SetRecoveryCheckpoint(const Aws::String& value) { m_recoveryCheckpointHasBeenSet = true; m_recoveryCheckpoint = value; } /** *

Indicates the last checkpoint that occurred during a change data capture * (CDC) operation. You can provide this value to the CdcStartPosition * parameter to start a CDC operation that begins at that checkpoint.

*/ inline void SetRecoveryCheckpoint(Aws::String&& value) { m_recoveryCheckpointHasBeenSet = true; m_recoveryCheckpoint = std::move(value); } /** *

Indicates the last checkpoint that occurred during a change data capture * (CDC) operation. You can provide this value to the CdcStartPosition * parameter to start a CDC operation that begins at that checkpoint.

*/ inline void SetRecoveryCheckpoint(const char* value) { m_recoveryCheckpointHasBeenSet = true; m_recoveryCheckpoint.assign(value); } /** *

Indicates the last checkpoint that occurred during a change data capture * (CDC) operation. You can provide this value to the CdcStartPosition * parameter to start a CDC operation that begins at that checkpoint.

*/ inline Replication& WithRecoveryCheckpoint(const Aws::String& value) { SetRecoveryCheckpoint(value); return *this;} /** *

Indicates the last checkpoint that occurred during a change data capture * (CDC) operation. You can provide this value to the CdcStartPosition * parameter to start a CDC operation that begins at that checkpoint.

*/ inline Replication& WithRecoveryCheckpoint(Aws::String&& value) { SetRecoveryCheckpoint(std::move(value)); return *this;} /** *

Indicates the last checkpoint that occurred during a change data capture * (CDC) operation. You can provide this value to the CdcStartPosition * parameter to start a CDC operation that begins at that checkpoint.

*/ inline Replication& WithRecoveryCheckpoint(const char* value) { SetRecoveryCheckpoint(value); return *this;} /** *

The time the serverless replication was created.

*/ inline const Aws::Utils::DateTime& GetReplicationCreateTime() const{ return m_replicationCreateTime; } /** *

The time the serverless replication was created.

*/ inline bool ReplicationCreateTimeHasBeenSet() const { return m_replicationCreateTimeHasBeenSet; } /** *

The time the serverless replication was created.

*/ inline void SetReplicationCreateTime(const Aws::Utils::DateTime& value) { m_replicationCreateTimeHasBeenSet = true; m_replicationCreateTime = value; } /** *

The time the serverless replication was created.

*/ inline void SetReplicationCreateTime(Aws::Utils::DateTime&& value) { m_replicationCreateTimeHasBeenSet = true; m_replicationCreateTime = std::move(value); } /** *

The time the serverless replication was created.

*/ inline Replication& WithReplicationCreateTime(const Aws::Utils::DateTime& value) { SetReplicationCreateTime(value); return *this;} /** *

The time the serverless replication was created.

*/ inline Replication& WithReplicationCreateTime(Aws::Utils::DateTime&& value) { SetReplicationCreateTime(std::move(value)); return *this;} /** *

The time the serverless replication was updated.

*/ inline const Aws::Utils::DateTime& GetReplicationUpdateTime() const{ return m_replicationUpdateTime; } /** *

The time the serverless replication was updated.

*/ inline bool ReplicationUpdateTimeHasBeenSet() const { return m_replicationUpdateTimeHasBeenSet; } /** *

The time the serverless replication was updated.

*/ inline void SetReplicationUpdateTime(const Aws::Utils::DateTime& value) { m_replicationUpdateTimeHasBeenSet = true; m_replicationUpdateTime = value; } /** *

The time the serverless replication was updated.

*/ inline void SetReplicationUpdateTime(Aws::Utils::DateTime&& value) { m_replicationUpdateTimeHasBeenSet = true; m_replicationUpdateTime = std::move(value); } /** *

The time the serverless replication was updated.

*/ inline Replication& WithReplicationUpdateTime(const Aws::Utils::DateTime& value) { SetReplicationUpdateTime(value); return *this;} /** *

The time the serverless replication was updated.

*/ inline Replication& WithReplicationUpdateTime(Aws::Utils::DateTime&& value) { SetReplicationUpdateTime(std::move(value)); return *this;} /** *

The timestamp when replication was last stopped.

*/ inline const Aws::Utils::DateTime& GetReplicationLastStopTime() const{ return m_replicationLastStopTime; } /** *

The timestamp when replication was last stopped.

*/ inline bool ReplicationLastStopTimeHasBeenSet() const { return m_replicationLastStopTimeHasBeenSet; } /** *

The timestamp when replication was last stopped.

*/ inline void SetReplicationLastStopTime(const Aws::Utils::DateTime& value) { m_replicationLastStopTimeHasBeenSet = true; m_replicationLastStopTime = value; } /** *

The timestamp when replication was last stopped.

*/ inline void SetReplicationLastStopTime(Aws::Utils::DateTime&& value) { m_replicationLastStopTimeHasBeenSet = true; m_replicationLastStopTime = std::move(value); } /** *

The timestamp when replication was last stopped.

*/ inline Replication& WithReplicationLastStopTime(const Aws::Utils::DateTime& value) { SetReplicationLastStopTime(value); return *this;} /** *

The timestamp when replication was last stopped.

*/ inline Replication& WithReplicationLastStopTime(Aws::Utils::DateTime&& value) { SetReplicationLastStopTime(std::move(value)); return *this;} private: Aws::String m_replicationConfigIdentifier; bool m_replicationConfigIdentifierHasBeenSet = false; Aws::String m_replicationConfigArn; bool m_replicationConfigArnHasBeenSet = false; Aws::String m_sourceEndpointArn; bool m_sourceEndpointArnHasBeenSet = false; Aws::String m_targetEndpointArn; bool m_targetEndpointArnHasBeenSet = false; MigrationTypeValue m_replicationType; bool m_replicationTypeHasBeenSet = false; Aws::String m_status; bool m_statusHasBeenSet = false; ProvisionData m_provisionData; bool m_provisionDataHasBeenSet = false; Aws::String m_stopReason; bool m_stopReasonHasBeenSet = false; Aws::Vector m_failureMessages; bool m_failureMessagesHasBeenSet = false; ReplicationStats m_replicationStats; bool m_replicationStatsHasBeenSet = false; Aws::String m_startReplicationType; bool m_startReplicationTypeHasBeenSet = false; Aws::Utils::DateTime m_cdcStartTime; bool m_cdcStartTimeHasBeenSet = false; Aws::String m_cdcStartPosition; bool m_cdcStartPositionHasBeenSet = false; Aws::String m_cdcStopPosition; bool m_cdcStopPositionHasBeenSet = false; Aws::String m_recoveryCheckpoint; bool m_recoveryCheckpointHasBeenSet = false; Aws::Utils::DateTime m_replicationCreateTime; bool m_replicationCreateTimeHasBeenSet = false; Aws::Utils::DateTime m_replicationUpdateTime; bool m_replicationUpdateTimeHasBeenSet = false; Aws::Utils::DateTime m_replicationLastStopTime; bool m_replicationLastStopTimeHasBeenSet = false; }; } // namespace Model } // namespace DatabaseMigrationService } // namespace Aws