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/redshift/Redshift_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSStreamFwd.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <utility> 11 12 namespace Aws 13 { 14 namespace Utils 15 { 16 namespace Xml 17 { 18 class XmlNode; 19 } // namespace Xml 20 } // namespace Utils 21 namespace Redshift 22 { 23 namespace Model 24 { 25 26 /** 27 * <p>Describes cluster attributes that are in a pending state. A change to one or 28 * more the attributes was requested and is in progress or will be 29 * applied.</p><p><h3>See Also:</h3> <a 30 * href="http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/PendingModifiedValues">AWS 31 * API Reference</a></p> 32 */ 33 class AWS_REDSHIFT_API PendingModifiedValues 34 { 35 public: 36 PendingModifiedValues(); 37 PendingModifiedValues(const Aws::Utils::Xml::XmlNode& xmlNode); 38 PendingModifiedValues& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); 39 40 void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const; 41 void OutputToStream(Aws::OStream& oStream, const char* location) const; 42 43 44 /** 45 * <p>The pending or in-progress change of the admin user password for the 46 * cluster.</p> 47 */ GetMasterUserPassword()48 inline const Aws::String& GetMasterUserPassword() const{ return m_masterUserPassword; } 49 50 /** 51 * <p>The pending or in-progress change of the admin user password for the 52 * cluster.</p> 53 */ MasterUserPasswordHasBeenSet()54 inline bool MasterUserPasswordHasBeenSet() const { return m_masterUserPasswordHasBeenSet; } 55 56 /** 57 * <p>The pending or in-progress change of the admin user password for the 58 * cluster.</p> 59 */ SetMasterUserPassword(const Aws::String & value)60 inline void SetMasterUserPassword(const Aws::String& value) { m_masterUserPasswordHasBeenSet = true; m_masterUserPassword = value; } 61 62 /** 63 * <p>The pending or in-progress change of the admin user password for the 64 * cluster.</p> 65 */ SetMasterUserPassword(Aws::String && value)66 inline void SetMasterUserPassword(Aws::String&& value) { m_masterUserPasswordHasBeenSet = true; m_masterUserPassword = std::move(value); } 67 68 /** 69 * <p>The pending or in-progress change of the admin user password for the 70 * cluster.</p> 71 */ SetMasterUserPassword(const char * value)72 inline void SetMasterUserPassword(const char* value) { m_masterUserPasswordHasBeenSet = true; m_masterUserPassword.assign(value); } 73 74 /** 75 * <p>The pending or in-progress change of the admin user password for the 76 * cluster.</p> 77 */ WithMasterUserPassword(const Aws::String & value)78 inline PendingModifiedValues& WithMasterUserPassword(const Aws::String& value) { SetMasterUserPassword(value); return *this;} 79 80 /** 81 * <p>The pending or in-progress change of the admin user password for the 82 * cluster.</p> 83 */ WithMasterUserPassword(Aws::String && value)84 inline PendingModifiedValues& WithMasterUserPassword(Aws::String&& value) { SetMasterUserPassword(std::move(value)); return *this;} 85 86 /** 87 * <p>The pending or in-progress change of the admin user password for the 88 * cluster.</p> 89 */ WithMasterUserPassword(const char * value)90 inline PendingModifiedValues& WithMasterUserPassword(const char* value) { SetMasterUserPassword(value); return *this;} 91 92 93 /** 94 * <p>The pending or in-progress change of the cluster's node type.</p> 95 */ GetNodeType()96 inline const Aws::String& GetNodeType() const{ return m_nodeType; } 97 98 /** 99 * <p>The pending or in-progress change of the cluster's node type.</p> 100 */ NodeTypeHasBeenSet()101 inline bool NodeTypeHasBeenSet() const { return m_nodeTypeHasBeenSet; } 102 103 /** 104 * <p>The pending or in-progress change of the cluster's node type.</p> 105 */ SetNodeType(const Aws::String & value)106 inline void SetNodeType(const Aws::String& value) { m_nodeTypeHasBeenSet = true; m_nodeType = value; } 107 108 /** 109 * <p>The pending or in-progress change of the cluster's node type.</p> 110 */ SetNodeType(Aws::String && value)111 inline void SetNodeType(Aws::String&& value) { m_nodeTypeHasBeenSet = true; m_nodeType = std::move(value); } 112 113 /** 114 * <p>The pending or in-progress change of the cluster's node type.</p> 115 */ SetNodeType(const char * value)116 inline void SetNodeType(const char* value) { m_nodeTypeHasBeenSet = true; m_nodeType.assign(value); } 117 118 /** 119 * <p>The pending or in-progress change of the cluster's node type.</p> 120 */ WithNodeType(const Aws::String & value)121 inline PendingModifiedValues& WithNodeType(const Aws::String& value) { SetNodeType(value); return *this;} 122 123 /** 124 * <p>The pending or in-progress change of the cluster's node type.</p> 125 */ WithNodeType(Aws::String && value)126 inline PendingModifiedValues& WithNodeType(Aws::String&& value) { SetNodeType(std::move(value)); return *this;} 127 128 /** 129 * <p>The pending or in-progress change of the cluster's node type.</p> 130 */ WithNodeType(const char * value)131 inline PendingModifiedValues& WithNodeType(const char* value) { SetNodeType(value); return *this;} 132 133 134 /** 135 * <p>The pending or in-progress change of the number of nodes in the cluster.</p> 136 */ GetNumberOfNodes()137 inline int GetNumberOfNodes() const{ return m_numberOfNodes; } 138 139 /** 140 * <p>The pending or in-progress change of the number of nodes in the cluster.</p> 141 */ NumberOfNodesHasBeenSet()142 inline bool NumberOfNodesHasBeenSet() const { return m_numberOfNodesHasBeenSet; } 143 144 /** 145 * <p>The pending or in-progress change of the number of nodes in the cluster.</p> 146 */ SetNumberOfNodes(int value)147 inline void SetNumberOfNodes(int value) { m_numberOfNodesHasBeenSet = true; m_numberOfNodes = value; } 148 149 /** 150 * <p>The pending or in-progress change of the number of nodes in the cluster.</p> 151 */ WithNumberOfNodes(int value)152 inline PendingModifiedValues& WithNumberOfNodes(int value) { SetNumberOfNodes(value); return *this;} 153 154 155 /** 156 * <p>The pending or in-progress change of the cluster type.</p> 157 */ GetClusterType()158 inline const Aws::String& GetClusterType() const{ return m_clusterType; } 159 160 /** 161 * <p>The pending or in-progress change of the cluster type.</p> 162 */ ClusterTypeHasBeenSet()163 inline bool ClusterTypeHasBeenSet() const { return m_clusterTypeHasBeenSet; } 164 165 /** 166 * <p>The pending or in-progress change of the cluster type.</p> 167 */ SetClusterType(const Aws::String & value)168 inline void SetClusterType(const Aws::String& value) { m_clusterTypeHasBeenSet = true; m_clusterType = value; } 169 170 /** 171 * <p>The pending or in-progress change of the cluster type.</p> 172 */ SetClusterType(Aws::String && value)173 inline void SetClusterType(Aws::String&& value) { m_clusterTypeHasBeenSet = true; m_clusterType = std::move(value); } 174 175 /** 176 * <p>The pending or in-progress change of the cluster type.</p> 177 */ SetClusterType(const char * value)178 inline void SetClusterType(const char* value) { m_clusterTypeHasBeenSet = true; m_clusterType.assign(value); } 179 180 /** 181 * <p>The pending or in-progress change of the cluster type.</p> 182 */ WithClusterType(const Aws::String & value)183 inline PendingModifiedValues& WithClusterType(const Aws::String& value) { SetClusterType(value); return *this;} 184 185 /** 186 * <p>The pending or in-progress change of the cluster type.</p> 187 */ WithClusterType(Aws::String && value)188 inline PendingModifiedValues& WithClusterType(Aws::String&& value) { SetClusterType(std::move(value)); return *this;} 189 190 /** 191 * <p>The pending or in-progress change of the cluster type.</p> 192 */ WithClusterType(const char * value)193 inline PendingModifiedValues& WithClusterType(const char* value) { SetClusterType(value); return *this;} 194 195 196 /** 197 * <p>The pending or in-progress change of the service version.</p> 198 */ GetClusterVersion()199 inline const Aws::String& GetClusterVersion() const{ return m_clusterVersion; } 200 201 /** 202 * <p>The pending or in-progress change of the service version.</p> 203 */ ClusterVersionHasBeenSet()204 inline bool ClusterVersionHasBeenSet() const { return m_clusterVersionHasBeenSet; } 205 206 /** 207 * <p>The pending or in-progress change of the service version.</p> 208 */ SetClusterVersion(const Aws::String & value)209 inline void SetClusterVersion(const Aws::String& value) { m_clusterVersionHasBeenSet = true; m_clusterVersion = value; } 210 211 /** 212 * <p>The pending or in-progress change of the service version.</p> 213 */ SetClusterVersion(Aws::String && value)214 inline void SetClusterVersion(Aws::String&& value) { m_clusterVersionHasBeenSet = true; m_clusterVersion = std::move(value); } 215 216 /** 217 * <p>The pending or in-progress change of the service version.</p> 218 */ SetClusterVersion(const char * value)219 inline void SetClusterVersion(const char* value) { m_clusterVersionHasBeenSet = true; m_clusterVersion.assign(value); } 220 221 /** 222 * <p>The pending or in-progress change of the service version.</p> 223 */ WithClusterVersion(const Aws::String & value)224 inline PendingModifiedValues& WithClusterVersion(const Aws::String& value) { SetClusterVersion(value); return *this;} 225 226 /** 227 * <p>The pending or in-progress change of the service version.</p> 228 */ WithClusterVersion(Aws::String && value)229 inline PendingModifiedValues& WithClusterVersion(Aws::String&& value) { SetClusterVersion(std::move(value)); return *this;} 230 231 /** 232 * <p>The pending or in-progress change of the service version.</p> 233 */ WithClusterVersion(const char * value)234 inline PendingModifiedValues& WithClusterVersion(const char* value) { SetClusterVersion(value); return *this;} 235 236 237 /** 238 * <p>The pending or in-progress change of the automated snapshot retention 239 * period.</p> 240 */ GetAutomatedSnapshotRetentionPeriod()241 inline int GetAutomatedSnapshotRetentionPeriod() const{ return m_automatedSnapshotRetentionPeriod; } 242 243 /** 244 * <p>The pending or in-progress change of the automated snapshot retention 245 * period.</p> 246 */ AutomatedSnapshotRetentionPeriodHasBeenSet()247 inline bool AutomatedSnapshotRetentionPeriodHasBeenSet() const { return m_automatedSnapshotRetentionPeriodHasBeenSet; } 248 249 /** 250 * <p>The pending or in-progress change of the automated snapshot retention 251 * period.</p> 252 */ SetAutomatedSnapshotRetentionPeriod(int value)253 inline void SetAutomatedSnapshotRetentionPeriod(int value) { m_automatedSnapshotRetentionPeriodHasBeenSet = true; m_automatedSnapshotRetentionPeriod = value; } 254 255 /** 256 * <p>The pending or in-progress change of the automated snapshot retention 257 * period.</p> 258 */ WithAutomatedSnapshotRetentionPeriod(int value)259 inline PendingModifiedValues& WithAutomatedSnapshotRetentionPeriod(int value) { SetAutomatedSnapshotRetentionPeriod(value); return *this;} 260 261 262 /** 263 * <p>The pending or in-progress change of the new identifier for the cluster.</p> 264 */ GetClusterIdentifier()265 inline const Aws::String& GetClusterIdentifier() const{ return m_clusterIdentifier; } 266 267 /** 268 * <p>The pending or in-progress change of the new identifier for the cluster.</p> 269 */ ClusterIdentifierHasBeenSet()270 inline bool ClusterIdentifierHasBeenSet() const { return m_clusterIdentifierHasBeenSet; } 271 272 /** 273 * <p>The pending or in-progress change of the new identifier for the cluster.</p> 274 */ SetClusterIdentifier(const Aws::String & value)275 inline void SetClusterIdentifier(const Aws::String& value) { m_clusterIdentifierHasBeenSet = true; m_clusterIdentifier = value; } 276 277 /** 278 * <p>The pending or in-progress change of the new identifier for the cluster.</p> 279 */ SetClusterIdentifier(Aws::String && value)280 inline void SetClusterIdentifier(Aws::String&& value) { m_clusterIdentifierHasBeenSet = true; m_clusterIdentifier = std::move(value); } 281 282 /** 283 * <p>The pending or in-progress change of the new identifier for the cluster.</p> 284 */ SetClusterIdentifier(const char * value)285 inline void SetClusterIdentifier(const char* value) { m_clusterIdentifierHasBeenSet = true; m_clusterIdentifier.assign(value); } 286 287 /** 288 * <p>The pending or in-progress change of the new identifier for the cluster.</p> 289 */ WithClusterIdentifier(const Aws::String & value)290 inline PendingModifiedValues& WithClusterIdentifier(const Aws::String& value) { SetClusterIdentifier(value); return *this;} 291 292 /** 293 * <p>The pending or in-progress change of the new identifier for the cluster.</p> 294 */ WithClusterIdentifier(Aws::String && value)295 inline PendingModifiedValues& WithClusterIdentifier(Aws::String&& value) { SetClusterIdentifier(std::move(value)); return *this;} 296 297 /** 298 * <p>The pending or in-progress change of the new identifier for the cluster.</p> 299 */ WithClusterIdentifier(const char * value)300 inline PendingModifiedValues& WithClusterIdentifier(const char* value) { SetClusterIdentifier(value); return *this;} 301 302 303 /** 304 * <p>The pending or in-progress change of the ability to connect to the cluster 305 * from the public network.</p> 306 */ GetPubliclyAccessible()307 inline bool GetPubliclyAccessible() const{ return m_publiclyAccessible; } 308 309 /** 310 * <p>The pending or in-progress change of the ability to connect to the cluster 311 * from the public network.</p> 312 */ PubliclyAccessibleHasBeenSet()313 inline bool PubliclyAccessibleHasBeenSet() const { return m_publiclyAccessibleHasBeenSet; } 314 315 /** 316 * <p>The pending or in-progress change of the ability to connect to the cluster 317 * from the public network.</p> 318 */ SetPubliclyAccessible(bool value)319 inline void SetPubliclyAccessible(bool value) { m_publiclyAccessibleHasBeenSet = true; m_publiclyAccessible = value; } 320 321 /** 322 * <p>The pending or in-progress change of the ability to connect to the cluster 323 * from the public network.</p> 324 */ WithPubliclyAccessible(bool value)325 inline PendingModifiedValues& WithPubliclyAccessible(bool value) { SetPubliclyAccessible(value); return *this;} 326 327 328 /** 329 * <p>An option that specifies whether to create the cluster with enhanced VPC 330 * routing enabled. To create a cluster that uses enhanced VPC routing, the cluster 331 * must be in a VPC. For more information, see <a 332 * href="https://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html">Enhanced 333 * VPC Routing</a> in the Amazon Redshift Cluster Management Guide.</p> <p>If this 334 * option is <code>true</code>, enhanced VPC routing is enabled. </p> <p>Default: 335 * false</p> 336 */ GetEnhancedVpcRouting()337 inline bool GetEnhancedVpcRouting() const{ return m_enhancedVpcRouting; } 338 339 /** 340 * <p>An option that specifies whether to create the cluster with enhanced VPC 341 * routing enabled. To create a cluster that uses enhanced VPC routing, the cluster 342 * must be in a VPC. For more information, see <a 343 * href="https://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html">Enhanced 344 * VPC Routing</a> in the Amazon Redshift Cluster Management Guide.</p> <p>If this 345 * option is <code>true</code>, enhanced VPC routing is enabled. </p> <p>Default: 346 * false</p> 347 */ EnhancedVpcRoutingHasBeenSet()348 inline bool EnhancedVpcRoutingHasBeenSet() const { return m_enhancedVpcRoutingHasBeenSet; } 349 350 /** 351 * <p>An option that specifies whether to create the cluster with enhanced VPC 352 * routing enabled. To create a cluster that uses enhanced VPC routing, the cluster 353 * must be in a VPC. For more information, see <a 354 * href="https://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html">Enhanced 355 * VPC Routing</a> in the Amazon Redshift Cluster Management Guide.</p> <p>If this 356 * option is <code>true</code>, enhanced VPC routing is enabled. </p> <p>Default: 357 * false</p> 358 */ SetEnhancedVpcRouting(bool value)359 inline void SetEnhancedVpcRouting(bool value) { m_enhancedVpcRoutingHasBeenSet = true; m_enhancedVpcRouting = value; } 360 361 /** 362 * <p>An option that specifies whether to create the cluster with enhanced VPC 363 * routing enabled. To create a cluster that uses enhanced VPC routing, the cluster 364 * must be in a VPC. For more information, see <a 365 * href="https://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html">Enhanced 366 * VPC Routing</a> in the Amazon Redshift Cluster Management Guide.</p> <p>If this 367 * option is <code>true</code>, enhanced VPC routing is enabled. </p> <p>Default: 368 * false</p> 369 */ WithEnhancedVpcRouting(bool value)370 inline PendingModifiedValues& WithEnhancedVpcRouting(bool value) { SetEnhancedVpcRouting(value); return *this;} 371 372 373 /** 374 * <p>The name of the maintenance track that the cluster will change to during the 375 * next maintenance window.</p> 376 */ GetMaintenanceTrackName()377 inline const Aws::String& GetMaintenanceTrackName() const{ return m_maintenanceTrackName; } 378 379 /** 380 * <p>The name of the maintenance track that the cluster will change to during the 381 * next maintenance window.</p> 382 */ MaintenanceTrackNameHasBeenSet()383 inline bool MaintenanceTrackNameHasBeenSet() const { return m_maintenanceTrackNameHasBeenSet; } 384 385 /** 386 * <p>The name of the maintenance track that the cluster will change to during the 387 * next maintenance window.</p> 388 */ SetMaintenanceTrackName(const Aws::String & value)389 inline void SetMaintenanceTrackName(const Aws::String& value) { m_maintenanceTrackNameHasBeenSet = true; m_maintenanceTrackName = value; } 390 391 /** 392 * <p>The name of the maintenance track that the cluster will change to during the 393 * next maintenance window.</p> 394 */ SetMaintenanceTrackName(Aws::String && value)395 inline void SetMaintenanceTrackName(Aws::String&& value) { m_maintenanceTrackNameHasBeenSet = true; m_maintenanceTrackName = std::move(value); } 396 397 /** 398 * <p>The name of the maintenance track that the cluster will change to during the 399 * next maintenance window.</p> 400 */ SetMaintenanceTrackName(const char * value)401 inline void SetMaintenanceTrackName(const char* value) { m_maintenanceTrackNameHasBeenSet = true; m_maintenanceTrackName.assign(value); } 402 403 /** 404 * <p>The name of the maintenance track that the cluster will change to during the 405 * next maintenance window.</p> 406 */ WithMaintenanceTrackName(const Aws::String & value)407 inline PendingModifiedValues& WithMaintenanceTrackName(const Aws::String& value) { SetMaintenanceTrackName(value); return *this;} 408 409 /** 410 * <p>The name of the maintenance track that the cluster will change to during the 411 * next maintenance window.</p> 412 */ WithMaintenanceTrackName(Aws::String && value)413 inline PendingModifiedValues& WithMaintenanceTrackName(Aws::String&& value) { SetMaintenanceTrackName(std::move(value)); return *this;} 414 415 /** 416 * <p>The name of the maintenance track that the cluster will change to during the 417 * next maintenance window.</p> 418 */ WithMaintenanceTrackName(const char * value)419 inline PendingModifiedValues& WithMaintenanceTrackName(const char* value) { SetMaintenanceTrackName(value); return *this;} 420 421 422 /** 423 * <p>The encryption type for a cluster. Possible values are: KMS and None. </p> 424 */ GetEncryptionType()425 inline const Aws::String& GetEncryptionType() const{ return m_encryptionType; } 426 427 /** 428 * <p>The encryption type for a cluster. Possible values are: KMS and None. </p> 429 */ EncryptionTypeHasBeenSet()430 inline bool EncryptionTypeHasBeenSet() const { return m_encryptionTypeHasBeenSet; } 431 432 /** 433 * <p>The encryption type for a cluster. Possible values are: KMS and None. </p> 434 */ SetEncryptionType(const Aws::String & value)435 inline void SetEncryptionType(const Aws::String& value) { m_encryptionTypeHasBeenSet = true; m_encryptionType = value; } 436 437 /** 438 * <p>The encryption type for a cluster. Possible values are: KMS and None. </p> 439 */ SetEncryptionType(Aws::String && value)440 inline void SetEncryptionType(Aws::String&& value) { m_encryptionTypeHasBeenSet = true; m_encryptionType = std::move(value); } 441 442 /** 443 * <p>The encryption type for a cluster. Possible values are: KMS and None. </p> 444 */ SetEncryptionType(const char * value)445 inline void SetEncryptionType(const char* value) { m_encryptionTypeHasBeenSet = true; m_encryptionType.assign(value); } 446 447 /** 448 * <p>The encryption type for a cluster. Possible values are: KMS and None. </p> 449 */ WithEncryptionType(const Aws::String & value)450 inline PendingModifiedValues& WithEncryptionType(const Aws::String& value) { SetEncryptionType(value); return *this;} 451 452 /** 453 * <p>The encryption type for a cluster. Possible values are: KMS and None. </p> 454 */ WithEncryptionType(Aws::String && value)455 inline PendingModifiedValues& WithEncryptionType(Aws::String&& value) { SetEncryptionType(std::move(value)); return *this;} 456 457 /** 458 * <p>The encryption type for a cluster. Possible values are: KMS and None. </p> 459 */ WithEncryptionType(const char * value)460 inline PendingModifiedValues& WithEncryptionType(const char* value) { SetEncryptionType(value); return *this;} 461 462 private: 463 464 Aws::String m_masterUserPassword; 465 bool m_masterUserPasswordHasBeenSet; 466 467 Aws::String m_nodeType; 468 bool m_nodeTypeHasBeenSet; 469 470 int m_numberOfNodes; 471 bool m_numberOfNodesHasBeenSet; 472 473 Aws::String m_clusterType; 474 bool m_clusterTypeHasBeenSet; 475 476 Aws::String m_clusterVersion; 477 bool m_clusterVersionHasBeenSet; 478 479 int m_automatedSnapshotRetentionPeriod; 480 bool m_automatedSnapshotRetentionPeriodHasBeenSet; 481 482 Aws::String m_clusterIdentifier; 483 bool m_clusterIdentifierHasBeenSet; 484 485 bool m_publiclyAccessible; 486 bool m_publiclyAccessibleHasBeenSet; 487 488 bool m_enhancedVpcRouting; 489 bool m_enhancedVpcRoutingHasBeenSet; 490 491 Aws::String m_maintenanceTrackName; 492 bool m_maintenanceTrackNameHasBeenSet; 493 494 Aws::String m_encryptionType; 495 bool m_encryptionTypeHasBeenSet; 496 }; 497 498 } // namespace Model 499 } // namespace Redshift 500 } // namespace Aws 501