1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/cloudhsmv2/CloudHSMV2_EXPORTS.h> 8 #include <aws/cloudhsmv2/CloudHSMV2Request.h> 9 #include <aws/cloudhsmv2/model/BackupRetentionPolicy.h> 10 #include <aws/core/utils/memory/stl/AWSString.h> 11 #include <utility> 12 13 namespace Aws 14 { 15 namespace CloudHSMV2 16 { 17 namespace Model 18 { 19 20 /** 21 */ 22 class AWS_CLOUDHSMV2_API ModifyClusterRequest : public CloudHSMV2Request 23 { 24 public: 25 ModifyClusterRequest(); 26 27 // Service request name is the Operation name which will send this request out, 28 // each operation should has unique request name, so that we can get operation's name from this request. 29 // Note: this is not true for response, multiple operations may have the same response name, 30 // so we can not get operation's name from response. GetServiceRequestName()31 inline virtual const char* GetServiceRequestName() const override { return "ModifyCluster"; } 32 33 Aws::String SerializePayload() const override; 34 35 Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; 36 37 38 /** 39 * <p>A policy that defines how the service retains backups.</p> 40 */ GetBackupRetentionPolicy()41 inline const BackupRetentionPolicy& GetBackupRetentionPolicy() const{ return m_backupRetentionPolicy; } 42 43 /** 44 * <p>A policy that defines how the service retains backups.</p> 45 */ BackupRetentionPolicyHasBeenSet()46 inline bool BackupRetentionPolicyHasBeenSet() const { return m_backupRetentionPolicyHasBeenSet; } 47 48 /** 49 * <p>A policy that defines how the service retains backups.</p> 50 */ SetBackupRetentionPolicy(const BackupRetentionPolicy & value)51 inline void SetBackupRetentionPolicy(const BackupRetentionPolicy& value) { m_backupRetentionPolicyHasBeenSet = true; m_backupRetentionPolicy = value; } 52 53 /** 54 * <p>A policy that defines how the service retains backups.</p> 55 */ SetBackupRetentionPolicy(BackupRetentionPolicy && value)56 inline void SetBackupRetentionPolicy(BackupRetentionPolicy&& value) { m_backupRetentionPolicyHasBeenSet = true; m_backupRetentionPolicy = std::move(value); } 57 58 /** 59 * <p>A policy that defines how the service retains backups.</p> 60 */ WithBackupRetentionPolicy(const BackupRetentionPolicy & value)61 inline ModifyClusterRequest& WithBackupRetentionPolicy(const BackupRetentionPolicy& value) { SetBackupRetentionPolicy(value); return *this;} 62 63 /** 64 * <p>A policy that defines how the service retains backups.</p> 65 */ WithBackupRetentionPolicy(BackupRetentionPolicy && value)66 inline ModifyClusterRequest& WithBackupRetentionPolicy(BackupRetentionPolicy&& value) { SetBackupRetentionPolicy(std::move(value)); return *this;} 67 68 69 /** 70 * <p>The identifier (ID) of the cluster that you want to modify. To find the 71 * cluster ID, use <a>DescribeClusters</a>.</p> 72 */ GetClusterId()73 inline const Aws::String& GetClusterId() const{ return m_clusterId; } 74 75 /** 76 * <p>The identifier (ID) of the cluster that you want to modify. To find the 77 * cluster ID, use <a>DescribeClusters</a>.</p> 78 */ ClusterIdHasBeenSet()79 inline bool ClusterIdHasBeenSet() const { return m_clusterIdHasBeenSet; } 80 81 /** 82 * <p>The identifier (ID) of the cluster that you want to modify. To find the 83 * cluster ID, use <a>DescribeClusters</a>.</p> 84 */ SetClusterId(const Aws::String & value)85 inline void SetClusterId(const Aws::String& value) { m_clusterIdHasBeenSet = true; m_clusterId = value; } 86 87 /** 88 * <p>The identifier (ID) of the cluster that you want to modify. To find the 89 * cluster ID, use <a>DescribeClusters</a>.</p> 90 */ SetClusterId(Aws::String && value)91 inline void SetClusterId(Aws::String&& value) { m_clusterIdHasBeenSet = true; m_clusterId = std::move(value); } 92 93 /** 94 * <p>The identifier (ID) of the cluster that you want to modify. To find the 95 * cluster ID, use <a>DescribeClusters</a>.</p> 96 */ SetClusterId(const char * value)97 inline void SetClusterId(const char* value) { m_clusterIdHasBeenSet = true; m_clusterId.assign(value); } 98 99 /** 100 * <p>The identifier (ID) of the cluster that you want to modify. To find the 101 * cluster ID, use <a>DescribeClusters</a>.</p> 102 */ WithClusterId(const Aws::String & value)103 inline ModifyClusterRequest& WithClusterId(const Aws::String& value) { SetClusterId(value); return *this;} 104 105 /** 106 * <p>The identifier (ID) of the cluster that you want to modify. To find the 107 * cluster ID, use <a>DescribeClusters</a>.</p> 108 */ WithClusterId(Aws::String && value)109 inline ModifyClusterRequest& WithClusterId(Aws::String&& value) { SetClusterId(std::move(value)); return *this;} 110 111 /** 112 * <p>The identifier (ID) of the cluster that you want to modify. To find the 113 * cluster ID, use <a>DescribeClusters</a>.</p> 114 */ WithClusterId(const char * value)115 inline ModifyClusterRequest& WithClusterId(const char* value) { SetClusterId(value); return *this;} 116 117 private: 118 119 BackupRetentionPolicy m_backupRetentionPolicy; 120 bool m_backupRetentionPolicyHasBeenSet; 121 122 Aws::String m_clusterId; 123 bool m_clusterIdHasBeenSet; 124 }; 125 126 } // namespace Model 127 } // namespace CloudHSMV2 128 } // namespace Aws 129