/** * 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 CloudHSMV2 { namespace Model { /** */ class CopyBackupToRegionRequest : public CloudHSMV2Request { public: AWS_CLOUDHSMV2_API CopyBackupToRegionRequest(); // 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 "CopyBackupToRegion"; } AWS_CLOUDHSMV2_API Aws::String SerializePayload() const override; AWS_CLOUDHSMV2_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The AWS region that will contain your copied CloudHSM cluster backup.

*/ inline const Aws::String& GetDestinationRegion() const{ return m_destinationRegion; } /** *

The AWS region that will contain your copied CloudHSM cluster backup.

*/ inline bool DestinationRegionHasBeenSet() const { return m_destinationRegionHasBeenSet; } /** *

The AWS region that will contain your copied CloudHSM cluster backup.

*/ inline void SetDestinationRegion(const Aws::String& value) { m_destinationRegionHasBeenSet = true; m_destinationRegion = value; } /** *

The AWS region that will contain your copied CloudHSM cluster backup.

*/ inline void SetDestinationRegion(Aws::String&& value) { m_destinationRegionHasBeenSet = true; m_destinationRegion = std::move(value); } /** *

The AWS region that will contain your copied CloudHSM cluster backup.

*/ inline void SetDestinationRegion(const char* value) { m_destinationRegionHasBeenSet = true; m_destinationRegion.assign(value); } /** *

The AWS region that will contain your copied CloudHSM cluster backup.

*/ inline CopyBackupToRegionRequest& WithDestinationRegion(const Aws::String& value) { SetDestinationRegion(value); return *this;} /** *

The AWS region that will contain your copied CloudHSM cluster backup.

*/ inline CopyBackupToRegionRequest& WithDestinationRegion(Aws::String&& value) { SetDestinationRegion(std::move(value)); return *this;} /** *

The AWS region that will contain your copied CloudHSM cluster backup.

*/ inline CopyBackupToRegionRequest& WithDestinationRegion(const char* value) { SetDestinationRegion(value); return *this;} /** *

The ID of the backup that will be copied to the destination region.

*/ inline const Aws::String& GetBackupId() const{ return m_backupId; } /** *

The ID of the backup that will be copied to the destination region.

*/ inline bool BackupIdHasBeenSet() const { return m_backupIdHasBeenSet; } /** *

The ID of the backup that will be copied to the destination region.

*/ inline void SetBackupId(const Aws::String& value) { m_backupIdHasBeenSet = true; m_backupId = value; } /** *

The ID of the backup that will be copied to the destination region.

*/ inline void SetBackupId(Aws::String&& value) { m_backupIdHasBeenSet = true; m_backupId = std::move(value); } /** *

The ID of the backup that will be copied to the destination region.

*/ inline void SetBackupId(const char* value) { m_backupIdHasBeenSet = true; m_backupId.assign(value); } /** *

The ID of the backup that will be copied to the destination region.

*/ inline CopyBackupToRegionRequest& WithBackupId(const Aws::String& value) { SetBackupId(value); return *this;} /** *

The ID of the backup that will be copied to the destination region.

*/ inline CopyBackupToRegionRequest& WithBackupId(Aws::String&& value) { SetBackupId(std::move(value)); return *this;} /** *

The ID of the backup that will be copied to the destination region.

*/ inline CopyBackupToRegionRequest& WithBackupId(const char* value) { SetBackupId(value); return *this;} /** *

Tags to apply to the destination backup during creation. If you specify tags, * only these tags will be applied to the destination backup. If you do not specify * tags, the service copies tags from the source backup to the destination * backup.

*/ inline const Aws::Vector& GetTagList() const{ return m_tagList; } /** *

Tags to apply to the destination backup during creation. If you specify tags, * only these tags will be applied to the destination backup. If you do not specify * tags, the service copies tags from the source backup to the destination * backup.

*/ inline bool TagListHasBeenSet() const { return m_tagListHasBeenSet; } /** *

Tags to apply to the destination backup during creation. If you specify tags, * only these tags will be applied to the destination backup. If you do not specify * tags, the service copies tags from the source backup to the destination * backup.

*/ inline void SetTagList(const Aws::Vector& value) { m_tagListHasBeenSet = true; m_tagList = value; } /** *

Tags to apply to the destination backup during creation. If you specify tags, * only these tags will be applied to the destination backup. If you do not specify * tags, the service copies tags from the source backup to the destination * backup.

*/ inline void SetTagList(Aws::Vector&& value) { m_tagListHasBeenSet = true; m_tagList = std::move(value); } /** *

Tags to apply to the destination backup during creation. If you specify tags, * only these tags will be applied to the destination backup. If you do not specify * tags, the service copies tags from the source backup to the destination * backup.

*/ inline CopyBackupToRegionRequest& WithTagList(const Aws::Vector& value) { SetTagList(value); return *this;} /** *

Tags to apply to the destination backup during creation. If you specify tags, * only these tags will be applied to the destination backup. If you do not specify * tags, the service copies tags from the source backup to the destination * backup.

*/ inline CopyBackupToRegionRequest& WithTagList(Aws::Vector&& value) { SetTagList(std::move(value)); return *this;} /** *

Tags to apply to the destination backup during creation. If you specify tags, * only these tags will be applied to the destination backup. If you do not specify * tags, the service copies tags from the source backup to the destination * backup.

*/ inline CopyBackupToRegionRequest& AddTagList(const Tag& value) { m_tagListHasBeenSet = true; m_tagList.push_back(value); return *this; } /** *

Tags to apply to the destination backup during creation. If you specify tags, * only these tags will be applied to the destination backup. If you do not specify * tags, the service copies tags from the source backup to the destination * backup.

*/ inline CopyBackupToRegionRequest& AddTagList(Tag&& value) { m_tagListHasBeenSet = true; m_tagList.push_back(std::move(value)); return *this; } private: Aws::String m_destinationRegion; bool m_destinationRegionHasBeenSet = false; Aws::String m_backupId; bool m_backupIdHasBeenSet = false; Aws::Vector m_tagList; bool m_tagListHasBeenSet = false; }; } // namespace Model } // namespace CloudHSMV2 } // namespace Aws