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/elasticache/ElastiCache_EXPORTS.h> 8 #include <aws/elasticache/ElastiCacheRequest.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <utility> 11 12 namespace Aws 13 { 14 namespace ElastiCache 15 { 16 namespace Model 17 { 18 19 /** 20 */ 21 class AWS_ELASTICACHE_API CreateGlobalReplicationGroupRequest : public ElastiCacheRequest 22 { 23 public: 24 CreateGlobalReplicationGroupRequest(); 25 26 // Service request name is the Operation name which will send this request out, 27 // each operation should has unique request name, so that we can get operation's name from this request. 28 // Note: this is not true for response, multiple operations may have the same response name, 29 // so we can not get operation's name from response. GetServiceRequestName()30 inline virtual const char* GetServiceRequestName() const override { return "CreateGlobalReplicationGroup"; } 31 32 Aws::String SerializePayload() const override; 33 34 protected: 35 void DumpBodyToUrl(Aws::Http::URI& uri ) const override; 36 37 public: 38 39 /** 40 * <p>The suffix name of a Global datastore. Amazon ElastiCache automatically 41 * applies a prefix to the Global datastore ID when it is created. Each Amazon 42 * Region has its own prefix. For instance, a Global datastore ID created in the 43 * US-West-1 region will begin with "dsdfu" along with the suffix name you provide. 44 * The suffix, combined with the auto-generated prefix, guarantees uniqueness of 45 * the Global datastore name across multiple regions. </p> <p>For a full list of 46 * Amazon Regions and their respective Global datastore iD prefixes, see <a 47 * href="http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Redis-Global-Datastores-CLI.html">Using 48 * the Amazon CLI with Global datastores </a>.</p> 49 */ GetGlobalReplicationGroupIdSuffix()50 inline const Aws::String& GetGlobalReplicationGroupIdSuffix() const{ return m_globalReplicationGroupIdSuffix; } 51 52 /** 53 * <p>The suffix name of a Global datastore. Amazon ElastiCache automatically 54 * applies a prefix to the Global datastore ID when it is created. Each Amazon 55 * Region has its own prefix. For instance, a Global datastore ID created in the 56 * US-West-1 region will begin with "dsdfu" along with the suffix name you provide. 57 * The suffix, combined with the auto-generated prefix, guarantees uniqueness of 58 * the Global datastore name across multiple regions. </p> <p>For a full list of 59 * Amazon Regions and their respective Global datastore iD prefixes, see <a 60 * href="http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Redis-Global-Datastores-CLI.html">Using 61 * the Amazon CLI with Global datastores </a>.</p> 62 */ GlobalReplicationGroupIdSuffixHasBeenSet()63 inline bool GlobalReplicationGroupIdSuffixHasBeenSet() const { return m_globalReplicationGroupIdSuffixHasBeenSet; } 64 65 /** 66 * <p>The suffix name of a Global datastore. Amazon ElastiCache automatically 67 * applies a prefix to the Global datastore ID when it is created. Each Amazon 68 * Region has its own prefix. For instance, a Global datastore ID created in the 69 * US-West-1 region will begin with "dsdfu" along with the suffix name you provide. 70 * The suffix, combined with the auto-generated prefix, guarantees uniqueness of 71 * the Global datastore name across multiple regions. </p> <p>For a full list of 72 * Amazon Regions and their respective Global datastore iD prefixes, see <a 73 * href="http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Redis-Global-Datastores-CLI.html">Using 74 * the Amazon CLI with Global datastores </a>.</p> 75 */ SetGlobalReplicationGroupIdSuffix(const Aws::String & value)76 inline void SetGlobalReplicationGroupIdSuffix(const Aws::String& value) { m_globalReplicationGroupIdSuffixHasBeenSet = true; m_globalReplicationGroupIdSuffix = value; } 77 78 /** 79 * <p>The suffix name of a Global datastore. Amazon ElastiCache automatically 80 * applies a prefix to the Global datastore ID when it is created. Each Amazon 81 * Region has its own prefix. For instance, a Global datastore ID created in the 82 * US-West-1 region will begin with "dsdfu" along with the suffix name you provide. 83 * The suffix, combined with the auto-generated prefix, guarantees uniqueness of 84 * the Global datastore name across multiple regions. </p> <p>For a full list of 85 * Amazon Regions and their respective Global datastore iD prefixes, see <a 86 * href="http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Redis-Global-Datastores-CLI.html">Using 87 * the Amazon CLI with Global datastores </a>.</p> 88 */ SetGlobalReplicationGroupIdSuffix(Aws::String && value)89 inline void SetGlobalReplicationGroupIdSuffix(Aws::String&& value) { m_globalReplicationGroupIdSuffixHasBeenSet = true; m_globalReplicationGroupIdSuffix = std::move(value); } 90 91 /** 92 * <p>The suffix name of a Global datastore. Amazon ElastiCache automatically 93 * applies a prefix to the Global datastore ID when it is created. Each Amazon 94 * Region has its own prefix. For instance, a Global datastore ID created in the 95 * US-West-1 region will begin with "dsdfu" along with the suffix name you provide. 96 * The suffix, combined with the auto-generated prefix, guarantees uniqueness of 97 * the Global datastore name across multiple regions. </p> <p>For a full list of 98 * Amazon Regions and their respective Global datastore iD prefixes, see <a 99 * href="http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Redis-Global-Datastores-CLI.html">Using 100 * the Amazon CLI with Global datastores </a>.</p> 101 */ SetGlobalReplicationGroupIdSuffix(const char * value)102 inline void SetGlobalReplicationGroupIdSuffix(const char* value) { m_globalReplicationGroupIdSuffixHasBeenSet = true; m_globalReplicationGroupIdSuffix.assign(value); } 103 104 /** 105 * <p>The suffix name of a Global datastore. Amazon ElastiCache automatically 106 * applies a prefix to the Global datastore ID when it is created. Each Amazon 107 * Region has its own prefix. For instance, a Global datastore ID created in the 108 * US-West-1 region will begin with "dsdfu" along with the suffix name you provide. 109 * The suffix, combined with the auto-generated prefix, guarantees uniqueness of 110 * the Global datastore name across multiple regions. </p> <p>For a full list of 111 * Amazon Regions and their respective Global datastore iD prefixes, see <a 112 * href="http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Redis-Global-Datastores-CLI.html">Using 113 * the Amazon CLI with Global datastores </a>.</p> 114 */ WithGlobalReplicationGroupIdSuffix(const Aws::String & value)115 inline CreateGlobalReplicationGroupRequest& WithGlobalReplicationGroupIdSuffix(const Aws::String& value) { SetGlobalReplicationGroupIdSuffix(value); return *this;} 116 117 /** 118 * <p>The suffix name of a Global datastore. Amazon ElastiCache automatically 119 * applies a prefix to the Global datastore ID when it is created. Each Amazon 120 * Region has its own prefix. For instance, a Global datastore ID created in the 121 * US-West-1 region will begin with "dsdfu" along with the suffix name you provide. 122 * The suffix, combined with the auto-generated prefix, guarantees uniqueness of 123 * the Global datastore name across multiple regions. </p> <p>For a full list of 124 * Amazon Regions and their respective Global datastore iD prefixes, see <a 125 * href="http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Redis-Global-Datastores-CLI.html">Using 126 * the Amazon CLI with Global datastores </a>.</p> 127 */ WithGlobalReplicationGroupIdSuffix(Aws::String && value)128 inline CreateGlobalReplicationGroupRequest& WithGlobalReplicationGroupIdSuffix(Aws::String&& value) { SetGlobalReplicationGroupIdSuffix(std::move(value)); return *this;} 129 130 /** 131 * <p>The suffix name of a Global datastore. Amazon ElastiCache automatically 132 * applies a prefix to the Global datastore ID when it is created. Each Amazon 133 * Region has its own prefix. For instance, a Global datastore ID created in the 134 * US-West-1 region will begin with "dsdfu" along with the suffix name you provide. 135 * The suffix, combined with the auto-generated prefix, guarantees uniqueness of 136 * the Global datastore name across multiple regions. </p> <p>For a full list of 137 * Amazon Regions and their respective Global datastore iD prefixes, see <a 138 * href="http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Redis-Global-Datastores-CLI.html">Using 139 * the Amazon CLI with Global datastores </a>.</p> 140 */ WithGlobalReplicationGroupIdSuffix(const char * value)141 inline CreateGlobalReplicationGroupRequest& WithGlobalReplicationGroupIdSuffix(const char* value) { SetGlobalReplicationGroupIdSuffix(value); return *this;} 142 143 144 /** 145 * <p>Provides details of the Global datastore</p> 146 */ GetGlobalReplicationGroupDescription()147 inline const Aws::String& GetGlobalReplicationGroupDescription() const{ return m_globalReplicationGroupDescription; } 148 149 /** 150 * <p>Provides details of the Global datastore</p> 151 */ GlobalReplicationGroupDescriptionHasBeenSet()152 inline bool GlobalReplicationGroupDescriptionHasBeenSet() const { return m_globalReplicationGroupDescriptionHasBeenSet; } 153 154 /** 155 * <p>Provides details of the Global datastore</p> 156 */ SetGlobalReplicationGroupDescription(const Aws::String & value)157 inline void SetGlobalReplicationGroupDescription(const Aws::String& value) { m_globalReplicationGroupDescriptionHasBeenSet = true; m_globalReplicationGroupDescription = value; } 158 159 /** 160 * <p>Provides details of the Global datastore</p> 161 */ SetGlobalReplicationGroupDescription(Aws::String && value)162 inline void SetGlobalReplicationGroupDescription(Aws::String&& value) { m_globalReplicationGroupDescriptionHasBeenSet = true; m_globalReplicationGroupDescription = std::move(value); } 163 164 /** 165 * <p>Provides details of the Global datastore</p> 166 */ SetGlobalReplicationGroupDescription(const char * value)167 inline void SetGlobalReplicationGroupDescription(const char* value) { m_globalReplicationGroupDescriptionHasBeenSet = true; m_globalReplicationGroupDescription.assign(value); } 168 169 /** 170 * <p>Provides details of the Global datastore</p> 171 */ WithGlobalReplicationGroupDescription(const Aws::String & value)172 inline CreateGlobalReplicationGroupRequest& WithGlobalReplicationGroupDescription(const Aws::String& value) { SetGlobalReplicationGroupDescription(value); return *this;} 173 174 /** 175 * <p>Provides details of the Global datastore</p> 176 */ WithGlobalReplicationGroupDescription(Aws::String && value)177 inline CreateGlobalReplicationGroupRequest& WithGlobalReplicationGroupDescription(Aws::String&& value) { SetGlobalReplicationGroupDescription(std::move(value)); return *this;} 178 179 /** 180 * <p>Provides details of the Global datastore</p> 181 */ WithGlobalReplicationGroupDescription(const char * value)182 inline CreateGlobalReplicationGroupRequest& WithGlobalReplicationGroupDescription(const char* value) { SetGlobalReplicationGroupDescription(value); return *this;} 183 184 185 /** 186 * <p>The name of the primary cluster that accepts writes and will replicate 187 * updates to the secondary cluster.</p> 188 */ GetPrimaryReplicationGroupId()189 inline const Aws::String& GetPrimaryReplicationGroupId() const{ return m_primaryReplicationGroupId; } 190 191 /** 192 * <p>The name of the primary cluster that accepts writes and will replicate 193 * updates to the secondary cluster.</p> 194 */ PrimaryReplicationGroupIdHasBeenSet()195 inline bool PrimaryReplicationGroupIdHasBeenSet() const { return m_primaryReplicationGroupIdHasBeenSet; } 196 197 /** 198 * <p>The name of the primary cluster that accepts writes and will replicate 199 * updates to the secondary cluster.</p> 200 */ SetPrimaryReplicationGroupId(const Aws::String & value)201 inline void SetPrimaryReplicationGroupId(const Aws::String& value) { m_primaryReplicationGroupIdHasBeenSet = true; m_primaryReplicationGroupId = value; } 202 203 /** 204 * <p>The name of the primary cluster that accepts writes and will replicate 205 * updates to the secondary cluster.</p> 206 */ SetPrimaryReplicationGroupId(Aws::String && value)207 inline void SetPrimaryReplicationGroupId(Aws::String&& value) { m_primaryReplicationGroupIdHasBeenSet = true; m_primaryReplicationGroupId = std::move(value); } 208 209 /** 210 * <p>The name of the primary cluster that accepts writes and will replicate 211 * updates to the secondary cluster.</p> 212 */ SetPrimaryReplicationGroupId(const char * value)213 inline void SetPrimaryReplicationGroupId(const char* value) { m_primaryReplicationGroupIdHasBeenSet = true; m_primaryReplicationGroupId.assign(value); } 214 215 /** 216 * <p>The name of the primary cluster that accepts writes and will replicate 217 * updates to the secondary cluster.</p> 218 */ WithPrimaryReplicationGroupId(const Aws::String & value)219 inline CreateGlobalReplicationGroupRequest& WithPrimaryReplicationGroupId(const Aws::String& value) { SetPrimaryReplicationGroupId(value); return *this;} 220 221 /** 222 * <p>The name of the primary cluster that accepts writes and will replicate 223 * updates to the secondary cluster.</p> 224 */ WithPrimaryReplicationGroupId(Aws::String && value)225 inline CreateGlobalReplicationGroupRequest& WithPrimaryReplicationGroupId(Aws::String&& value) { SetPrimaryReplicationGroupId(std::move(value)); return *this;} 226 227 /** 228 * <p>The name of the primary cluster that accepts writes and will replicate 229 * updates to the secondary cluster.</p> 230 */ WithPrimaryReplicationGroupId(const char * value)231 inline CreateGlobalReplicationGroupRequest& WithPrimaryReplicationGroupId(const char* value) { SetPrimaryReplicationGroupId(value); return *this;} 232 233 private: 234 235 Aws::String m_globalReplicationGroupIdSuffix; 236 bool m_globalReplicationGroupIdSuffixHasBeenSet; 237 238 Aws::String m_globalReplicationGroupDescription; 239 bool m_globalReplicationGroupDescriptionHasBeenSet; 240 241 Aws::String m_primaryReplicationGroupId; 242 bool m_primaryReplicationGroupIdHasBeenSet; 243 }; 244 245 } // namespace Model 246 } // namespace ElastiCache 247 } // namespace Aws 248