/** * 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 Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace EFS { namespace Model { class ReplicationConfigurationDescription { public: AWS_EFS_API ReplicationConfigurationDescription(); AWS_EFS_API ReplicationConfigurationDescription(Aws::Utils::Json::JsonView jsonValue); AWS_EFS_API ReplicationConfigurationDescription& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_EFS_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The ID of the source Amazon EFS file system that is being replicated.

*/ inline const Aws::String& GetSourceFileSystemId() const{ return m_sourceFileSystemId; } /** *

The ID of the source Amazon EFS file system that is being replicated.

*/ inline bool SourceFileSystemIdHasBeenSet() const { return m_sourceFileSystemIdHasBeenSet; } /** *

The ID of the source Amazon EFS file system that is being replicated.

*/ inline void SetSourceFileSystemId(const Aws::String& value) { m_sourceFileSystemIdHasBeenSet = true; m_sourceFileSystemId = value; } /** *

The ID of the source Amazon EFS file system that is being replicated.

*/ inline void SetSourceFileSystemId(Aws::String&& value) { m_sourceFileSystemIdHasBeenSet = true; m_sourceFileSystemId = std::move(value); } /** *

The ID of the source Amazon EFS file system that is being replicated.

*/ inline void SetSourceFileSystemId(const char* value) { m_sourceFileSystemIdHasBeenSet = true; m_sourceFileSystemId.assign(value); } /** *

The ID of the source Amazon EFS file system that is being replicated.

*/ inline ReplicationConfigurationDescription& WithSourceFileSystemId(const Aws::String& value) { SetSourceFileSystemId(value); return *this;} /** *

The ID of the source Amazon EFS file system that is being replicated.

*/ inline ReplicationConfigurationDescription& WithSourceFileSystemId(Aws::String&& value) { SetSourceFileSystemId(std::move(value)); return *this;} /** *

The ID of the source Amazon EFS file system that is being replicated.

*/ inline ReplicationConfigurationDescription& WithSourceFileSystemId(const char* value) { SetSourceFileSystemId(value); return *this;} /** *

The Amazon Web Services Region in which the source Amazon EFS file system is * located.

*/ inline const Aws::String& GetSourceFileSystemRegion() const{ return m_sourceFileSystemRegion; } /** *

The Amazon Web Services Region in which the source Amazon EFS file system is * located.

*/ inline bool SourceFileSystemRegionHasBeenSet() const { return m_sourceFileSystemRegionHasBeenSet; } /** *

The Amazon Web Services Region in which the source Amazon EFS file system is * located.

*/ inline void SetSourceFileSystemRegion(const Aws::String& value) { m_sourceFileSystemRegionHasBeenSet = true; m_sourceFileSystemRegion = value; } /** *

The Amazon Web Services Region in which the source Amazon EFS file system is * located.

*/ inline void SetSourceFileSystemRegion(Aws::String&& value) { m_sourceFileSystemRegionHasBeenSet = true; m_sourceFileSystemRegion = std::move(value); } /** *

The Amazon Web Services Region in which the source Amazon EFS file system is * located.

*/ inline void SetSourceFileSystemRegion(const char* value) { m_sourceFileSystemRegionHasBeenSet = true; m_sourceFileSystemRegion.assign(value); } /** *

The Amazon Web Services Region in which the source Amazon EFS file system is * located.

*/ inline ReplicationConfigurationDescription& WithSourceFileSystemRegion(const Aws::String& value) { SetSourceFileSystemRegion(value); return *this;} /** *

The Amazon Web Services Region in which the source Amazon EFS file system is * located.

*/ inline ReplicationConfigurationDescription& WithSourceFileSystemRegion(Aws::String&& value) { SetSourceFileSystemRegion(std::move(value)); return *this;} /** *

The Amazon Web Services Region in which the source Amazon EFS file system is * located.

*/ inline ReplicationConfigurationDescription& WithSourceFileSystemRegion(const char* value) { SetSourceFileSystemRegion(value); return *this;} /** *

The Amazon Resource Name (ARN) of the current source file system in the * replication configuration.

*/ inline const Aws::String& GetSourceFileSystemArn() const{ return m_sourceFileSystemArn; } /** *

The Amazon Resource Name (ARN) of the current source file system in the * replication configuration.

*/ inline bool SourceFileSystemArnHasBeenSet() const { return m_sourceFileSystemArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the current source file system in the * replication configuration.

*/ inline void SetSourceFileSystemArn(const Aws::String& value) { m_sourceFileSystemArnHasBeenSet = true; m_sourceFileSystemArn = value; } /** *

The Amazon Resource Name (ARN) of the current source file system in the * replication configuration.

*/ inline void SetSourceFileSystemArn(Aws::String&& value) { m_sourceFileSystemArnHasBeenSet = true; m_sourceFileSystemArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the current source file system in the * replication configuration.

*/ inline void SetSourceFileSystemArn(const char* value) { m_sourceFileSystemArnHasBeenSet = true; m_sourceFileSystemArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the current source file system in the * replication configuration.

*/ inline ReplicationConfigurationDescription& WithSourceFileSystemArn(const Aws::String& value) { SetSourceFileSystemArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the current source file system in the * replication configuration.

*/ inline ReplicationConfigurationDescription& WithSourceFileSystemArn(Aws::String&& value) { SetSourceFileSystemArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the current source file system in the * replication configuration.

*/ inline ReplicationConfigurationDescription& WithSourceFileSystemArn(const char* value) { SetSourceFileSystemArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the original source Amazon EFS file system * in the replication configuration.

*/ inline const Aws::String& GetOriginalSourceFileSystemArn() const{ return m_originalSourceFileSystemArn; } /** *

The Amazon Resource Name (ARN) of the original source Amazon EFS file system * in the replication configuration.

*/ inline bool OriginalSourceFileSystemArnHasBeenSet() const { return m_originalSourceFileSystemArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the original source Amazon EFS file system * in the replication configuration.

*/ inline void SetOriginalSourceFileSystemArn(const Aws::String& value) { m_originalSourceFileSystemArnHasBeenSet = true; m_originalSourceFileSystemArn = value; } /** *

The Amazon Resource Name (ARN) of the original source Amazon EFS file system * in the replication configuration.

*/ inline void SetOriginalSourceFileSystemArn(Aws::String&& value) { m_originalSourceFileSystemArnHasBeenSet = true; m_originalSourceFileSystemArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the original source Amazon EFS file system * in the replication configuration.

*/ inline void SetOriginalSourceFileSystemArn(const char* value) { m_originalSourceFileSystemArnHasBeenSet = true; m_originalSourceFileSystemArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the original source Amazon EFS file system * in the replication configuration.

*/ inline ReplicationConfigurationDescription& WithOriginalSourceFileSystemArn(const Aws::String& value) { SetOriginalSourceFileSystemArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the original source Amazon EFS file system * in the replication configuration.

*/ inline ReplicationConfigurationDescription& WithOriginalSourceFileSystemArn(Aws::String&& value) { SetOriginalSourceFileSystemArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the original source Amazon EFS file system * in the replication configuration.

*/ inline ReplicationConfigurationDescription& WithOriginalSourceFileSystemArn(const char* value) { SetOriginalSourceFileSystemArn(value); return *this;} /** *

Describes when the replication configuration was created.

*/ inline const Aws::Utils::DateTime& GetCreationTime() const{ return m_creationTime; } /** *

Describes when the replication configuration was created.

*/ inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; } /** *

Describes when the replication configuration was created.

*/ inline void SetCreationTime(const Aws::Utils::DateTime& value) { m_creationTimeHasBeenSet = true; m_creationTime = value; } /** *

Describes when the replication configuration was created.

*/ inline void SetCreationTime(Aws::Utils::DateTime&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::move(value); } /** *

Describes when the replication configuration was created.

*/ inline ReplicationConfigurationDescription& WithCreationTime(const Aws::Utils::DateTime& value) { SetCreationTime(value); return *this;} /** *

Describes when the replication configuration was created.

*/ inline ReplicationConfigurationDescription& WithCreationTime(Aws::Utils::DateTime&& value) { SetCreationTime(std::move(value)); return *this;} /** *

An array of destination objects. Only one destination object is * supported.

*/ inline const Aws::Vector& GetDestinations() const{ return m_destinations; } /** *

An array of destination objects. Only one destination object is * supported.

*/ inline bool DestinationsHasBeenSet() const { return m_destinationsHasBeenSet; } /** *

An array of destination objects. Only one destination object is * supported.

*/ inline void SetDestinations(const Aws::Vector& value) { m_destinationsHasBeenSet = true; m_destinations = value; } /** *

An array of destination objects. Only one destination object is * supported.

*/ inline void SetDestinations(Aws::Vector&& value) { m_destinationsHasBeenSet = true; m_destinations = std::move(value); } /** *

An array of destination objects. Only one destination object is * supported.

*/ inline ReplicationConfigurationDescription& WithDestinations(const Aws::Vector& value) { SetDestinations(value); return *this;} /** *

An array of destination objects. Only one destination object is * supported.

*/ inline ReplicationConfigurationDescription& WithDestinations(Aws::Vector&& value) { SetDestinations(std::move(value)); return *this;} /** *

An array of destination objects. Only one destination object is * supported.

*/ inline ReplicationConfigurationDescription& AddDestinations(const Destination& value) { m_destinationsHasBeenSet = true; m_destinations.push_back(value); return *this; } /** *

An array of destination objects. Only one destination object is * supported.

*/ inline ReplicationConfigurationDescription& AddDestinations(Destination&& value) { m_destinationsHasBeenSet = true; m_destinations.push_back(std::move(value)); return *this; } inline const Aws::String& GetRequestId() const{ return m_requestId; } inline bool RequestIdHasBeenSet() const { return m_requestIdHasBeenSet; } inline void SetRequestId(const Aws::String& value) { m_requestIdHasBeenSet = true; m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestIdHasBeenSet = true; m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestIdHasBeenSet = true; m_requestId.assign(value); } inline ReplicationConfigurationDescription& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline ReplicationConfigurationDescription& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline ReplicationConfigurationDescription& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_sourceFileSystemId; bool m_sourceFileSystemIdHasBeenSet = false; Aws::String m_sourceFileSystemRegion; bool m_sourceFileSystemRegionHasBeenSet = false; Aws::String m_sourceFileSystemArn; bool m_sourceFileSystemArnHasBeenSet = false; Aws::String m_originalSourceFileSystemArn; bool m_originalSourceFileSystemArnHasBeenSet = false; Aws::Utils::DateTime m_creationTime; bool m_creationTimeHasBeenSet = false; Aws::Vector m_destinations; bool m_destinationsHasBeenSet = false; Aws::String m_requestId; bool m_requestIdHasBeenSet = false; }; } // namespace Model } // namespace EFS } // namespace Aws