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 <aws/core/utils/DateTime.h> 11 #include <aws/core/utils/memory/stl/AWSVector.h> 12 #include <aws/redshift/model/ReservedNodeOfferingType.h> 13 #include <aws/redshift/model/RecurringCharge.h> 14 #include <utility> 15 16 namespace Aws 17 { 18 namespace Utils 19 { 20 namespace Xml 21 { 22 class XmlNode; 23 } // namespace Xml 24 } // namespace Utils 25 namespace Redshift 26 { 27 namespace Model 28 { 29 30 /** 31 * <p>Describes a reserved node. You can call the 32 * <a>DescribeReservedNodeOfferings</a> API to obtain the available reserved node 33 * offerings. </p><p><h3>See Also:</h3> <a 34 * href="http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ReservedNode">AWS 35 * API Reference</a></p> 36 */ 37 class AWS_REDSHIFT_API ReservedNode 38 { 39 public: 40 ReservedNode(); 41 ReservedNode(const Aws::Utils::Xml::XmlNode& xmlNode); 42 ReservedNode& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); 43 44 void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const; 45 void OutputToStream(Aws::OStream& oStream, const char* location) const; 46 47 48 /** 49 * <p>The unique identifier for the reservation.</p> 50 */ GetReservedNodeId()51 inline const Aws::String& GetReservedNodeId() const{ return m_reservedNodeId; } 52 53 /** 54 * <p>The unique identifier for the reservation.</p> 55 */ ReservedNodeIdHasBeenSet()56 inline bool ReservedNodeIdHasBeenSet() const { return m_reservedNodeIdHasBeenSet; } 57 58 /** 59 * <p>The unique identifier for the reservation.</p> 60 */ SetReservedNodeId(const Aws::String & value)61 inline void SetReservedNodeId(const Aws::String& value) { m_reservedNodeIdHasBeenSet = true; m_reservedNodeId = value; } 62 63 /** 64 * <p>The unique identifier for the reservation.</p> 65 */ SetReservedNodeId(Aws::String && value)66 inline void SetReservedNodeId(Aws::String&& value) { m_reservedNodeIdHasBeenSet = true; m_reservedNodeId = std::move(value); } 67 68 /** 69 * <p>The unique identifier for the reservation.</p> 70 */ SetReservedNodeId(const char * value)71 inline void SetReservedNodeId(const char* value) { m_reservedNodeIdHasBeenSet = true; m_reservedNodeId.assign(value); } 72 73 /** 74 * <p>The unique identifier for the reservation.</p> 75 */ WithReservedNodeId(const Aws::String & value)76 inline ReservedNode& WithReservedNodeId(const Aws::String& value) { SetReservedNodeId(value); return *this;} 77 78 /** 79 * <p>The unique identifier for the reservation.</p> 80 */ WithReservedNodeId(Aws::String && value)81 inline ReservedNode& WithReservedNodeId(Aws::String&& value) { SetReservedNodeId(std::move(value)); return *this;} 82 83 /** 84 * <p>The unique identifier for the reservation.</p> 85 */ WithReservedNodeId(const char * value)86 inline ReservedNode& WithReservedNodeId(const char* value) { SetReservedNodeId(value); return *this;} 87 88 89 /** 90 * <p>The identifier for the reserved node offering.</p> 91 */ GetReservedNodeOfferingId()92 inline const Aws::String& GetReservedNodeOfferingId() const{ return m_reservedNodeOfferingId; } 93 94 /** 95 * <p>The identifier for the reserved node offering.</p> 96 */ ReservedNodeOfferingIdHasBeenSet()97 inline bool ReservedNodeOfferingIdHasBeenSet() const { return m_reservedNodeOfferingIdHasBeenSet; } 98 99 /** 100 * <p>The identifier for the reserved node offering.</p> 101 */ SetReservedNodeOfferingId(const Aws::String & value)102 inline void SetReservedNodeOfferingId(const Aws::String& value) { m_reservedNodeOfferingIdHasBeenSet = true; m_reservedNodeOfferingId = value; } 103 104 /** 105 * <p>The identifier for the reserved node offering.</p> 106 */ SetReservedNodeOfferingId(Aws::String && value)107 inline void SetReservedNodeOfferingId(Aws::String&& value) { m_reservedNodeOfferingIdHasBeenSet = true; m_reservedNodeOfferingId = std::move(value); } 108 109 /** 110 * <p>The identifier for the reserved node offering.</p> 111 */ SetReservedNodeOfferingId(const char * value)112 inline void SetReservedNodeOfferingId(const char* value) { m_reservedNodeOfferingIdHasBeenSet = true; m_reservedNodeOfferingId.assign(value); } 113 114 /** 115 * <p>The identifier for the reserved node offering.</p> 116 */ WithReservedNodeOfferingId(const Aws::String & value)117 inline ReservedNode& WithReservedNodeOfferingId(const Aws::String& value) { SetReservedNodeOfferingId(value); return *this;} 118 119 /** 120 * <p>The identifier for the reserved node offering.</p> 121 */ WithReservedNodeOfferingId(Aws::String && value)122 inline ReservedNode& WithReservedNodeOfferingId(Aws::String&& value) { SetReservedNodeOfferingId(std::move(value)); return *this;} 123 124 /** 125 * <p>The identifier for the reserved node offering.</p> 126 */ WithReservedNodeOfferingId(const char * value)127 inline ReservedNode& WithReservedNodeOfferingId(const char* value) { SetReservedNodeOfferingId(value); return *this;} 128 129 130 /** 131 * <p>The node type of the reserved node.</p> 132 */ GetNodeType()133 inline const Aws::String& GetNodeType() const{ return m_nodeType; } 134 135 /** 136 * <p>The node type of the reserved node.</p> 137 */ NodeTypeHasBeenSet()138 inline bool NodeTypeHasBeenSet() const { return m_nodeTypeHasBeenSet; } 139 140 /** 141 * <p>The node type of the reserved node.</p> 142 */ SetNodeType(const Aws::String & value)143 inline void SetNodeType(const Aws::String& value) { m_nodeTypeHasBeenSet = true; m_nodeType = value; } 144 145 /** 146 * <p>The node type of the reserved node.</p> 147 */ SetNodeType(Aws::String && value)148 inline void SetNodeType(Aws::String&& value) { m_nodeTypeHasBeenSet = true; m_nodeType = std::move(value); } 149 150 /** 151 * <p>The node type of the reserved node.</p> 152 */ SetNodeType(const char * value)153 inline void SetNodeType(const char* value) { m_nodeTypeHasBeenSet = true; m_nodeType.assign(value); } 154 155 /** 156 * <p>The node type of the reserved node.</p> 157 */ WithNodeType(const Aws::String & value)158 inline ReservedNode& WithNodeType(const Aws::String& value) { SetNodeType(value); return *this;} 159 160 /** 161 * <p>The node type of the reserved node.</p> 162 */ WithNodeType(Aws::String && value)163 inline ReservedNode& WithNodeType(Aws::String&& value) { SetNodeType(std::move(value)); return *this;} 164 165 /** 166 * <p>The node type of the reserved node.</p> 167 */ WithNodeType(const char * value)168 inline ReservedNode& WithNodeType(const char* value) { SetNodeType(value); return *this;} 169 170 171 /** 172 * <p>The time the reservation started. You purchase a reserved node offering for a 173 * duration. This is the start time of that duration.</p> 174 */ GetStartTime()175 inline const Aws::Utils::DateTime& GetStartTime() const{ return m_startTime; } 176 177 /** 178 * <p>The time the reservation started. You purchase a reserved node offering for a 179 * duration. This is the start time of that duration.</p> 180 */ StartTimeHasBeenSet()181 inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; } 182 183 /** 184 * <p>The time the reservation started. You purchase a reserved node offering for a 185 * duration. This is the start time of that duration.</p> 186 */ SetStartTime(const Aws::Utils::DateTime & value)187 inline void SetStartTime(const Aws::Utils::DateTime& value) { m_startTimeHasBeenSet = true; m_startTime = value; } 188 189 /** 190 * <p>The time the reservation started. You purchase a reserved node offering for a 191 * duration. This is the start time of that duration.</p> 192 */ SetStartTime(Aws::Utils::DateTime && value)193 inline void SetStartTime(Aws::Utils::DateTime&& value) { m_startTimeHasBeenSet = true; m_startTime = std::move(value); } 194 195 /** 196 * <p>The time the reservation started. You purchase a reserved node offering for a 197 * duration. This is the start time of that duration.</p> 198 */ WithStartTime(const Aws::Utils::DateTime & value)199 inline ReservedNode& WithStartTime(const Aws::Utils::DateTime& value) { SetStartTime(value); return *this;} 200 201 /** 202 * <p>The time the reservation started. You purchase a reserved node offering for a 203 * duration. This is the start time of that duration.</p> 204 */ WithStartTime(Aws::Utils::DateTime && value)205 inline ReservedNode& WithStartTime(Aws::Utils::DateTime&& value) { SetStartTime(std::move(value)); return *this;} 206 207 208 /** 209 * <p>The duration of the node reservation in seconds.</p> 210 */ GetDuration()211 inline int GetDuration() const{ return m_duration; } 212 213 /** 214 * <p>The duration of the node reservation in seconds.</p> 215 */ DurationHasBeenSet()216 inline bool DurationHasBeenSet() const { return m_durationHasBeenSet; } 217 218 /** 219 * <p>The duration of the node reservation in seconds.</p> 220 */ SetDuration(int value)221 inline void SetDuration(int value) { m_durationHasBeenSet = true; m_duration = value; } 222 223 /** 224 * <p>The duration of the node reservation in seconds.</p> 225 */ WithDuration(int value)226 inline ReservedNode& WithDuration(int value) { SetDuration(value); return *this;} 227 228 229 /** 230 * <p>The fixed cost Amazon Redshift charges you for this reserved node.</p> 231 */ GetFixedPrice()232 inline double GetFixedPrice() const{ return m_fixedPrice; } 233 234 /** 235 * <p>The fixed cost Amazon Redshift charges you for this reserved node.</p> 236 */ FixedPriceHasBeenSet()237 inline bool FixedPriceHasBeenSet() const { return m_fixedPriceHasBeenSet; } 238 239 /** 240 * <p>The fixed cost Amazon Redshift charges you for this reserved node.</p> 241 */ SetFixedPrice(double value)242 inline void SetFixedPrice(double value) { m_fixedPriceHasBeenSet = true; m_fixedPrice = value; } 243 244 /** 245 * <p>The fixed cost Amazon Redshift charges you for this reserved node.</p> 246 */ WithFixedPrice(double value)247 inline ReservedNode& WithFixedPrice(double value) { SetFixedPrice(value); return *this;} 248 249 250 /** 251 * <p>The hourly rate Amazon Redshift charges you for this reserved node.</p> 252 */ GetUsagePrice()253 inline double GetUsagePrice() const{ return m_usagePrice; } 254 255 /** 256 * <p>The hourly rate Amazon Redshift charges you for this reserved node.</p> 257 */ UsagePriceHasBeenSet()258 inline bool UsagePriceHasBeenSet() const { return m_usagePriceHasBeenSet; } 259 260 /** 261 * <p>The hourly rate Amazon Redshift charges you for this reserved node.</p> 262 */ SetUsagePrice(double value)263 inline void SetUsagePrice(double value) { m_usagePriceHasBeenSet = true; m_usagePrice = value; } 264 265 /** 266 * <p>The hourly rate Amazon Redshift charges you for this reserved node.</p> 267 */ WithUsagePrice(double value)268 inline ReservedNode& WithUsagePrice(double value) { SetUsagePrice(value); return *this;} 269 270 271 /** 272 * <p>The currency code for the reserved cluster.</p> 273 */ GetCurrencyCode()274 inline const Aws::String& GetCurrencyCode() const{ return m_currencyCode; } 275 276 /** 277 * <p>The currency code for the reserved cluster.</p> 278 */ CurrencyCodeHasBeenSet()279 inline bool CurrencyCodeHasBeenSet() const { return m_currencyCodeHasBeenSet; } 280 281 /** 282 * <p>The currency code for the reserved cluster.</p> 283 */ SetCurrencyCode(const Aws::String & value)284 inline void SetCurrencyCode(const Aws::String& value) { m_currencyCodeHasBeenSet = true; m_currencyCode = value; } 285 286 /** 287 * <p>The currency code for the reserved cluster.</p> 288 */ SetCurrencyCode(Aws::String && value)289 inline void SetCurrencyCode(Aws::String&& value) { m_currencyCodeHasBeenSet = true; m_currencyCode = std::move(value); } 290 291 /** 292 * <p>The currency code for the reserved cluster.</p> 293 */ SetCurrencyCode(const char * value)294 inline void SetCurrencyCode(const char* value) { m_currencyCodeHasBeenSet = true; m_currencyCode.assign(value); } 295 296 /** 297 * <p>The currency code for the reserved cluster.</p> 298 */ WithCurrencyCode(const Aws::String & value)299 inline ReservedNode& WithCurrencyCode(const Aws::String& value) { SetCurrencyCode(value); return *this;} 300 301 /** 302 * <p>The currency code for the reserved cluster.</p> 303 */ WithCurrencyCode(Aws::String && value)304 inline ReservedNode& WithCurrencyCode(Aws::String&& value) { SetCurrencyCode(std::move(value)); return *this;} 305 306 /** 307 * <p>The currency code for the reserved cluster.</p> 308 */ WithCurrencyCode(const char * value)309 inline ReservedNode& WithCurrencyCode(const char* value) { SetCurrencyCode(value); return *this;} 310 311 312 /** 313 * <p>The number of reserved compute nodes.</p> 314 */ GetNodeCount()315 inline int GetNodeCount() const{ return m_nodeCount; } 316 317 /** 318 * <p>The number of reserved compute nodes.</p> 319 */ NodeCountHasBeenSet()320 inline bool NodeCountHasBeenSet() const { return m_nodeCountHasBeenSet; } 321 322 /** 323 * <p>The number of reserved compute nodes.</p> 324 */ SetNodeCount(int value)325 inline void SetNodeCount(int value) { m_nodeCountHasBeenSet = true; m_nodeCount = value; } 326 327 /** 328 * <p>The number of reserved compute nodes.</p> 329 */ WithNodeCount(int value)330 inline ReservedNode& WithNodeCount(int value) { SetNodeCount(value); return *this;} 331 332 333 /** 334 * <p>The state of the reserved compute node.</p> <p>Possible Values:</p> <ul> <li> 335 * <p>pending-payment-This reserved node has recently been purchased, and the sale 336 * has been approved, but payment has not yet been confirmed.</p> </li> <li> 337 * <p>active-This reserved node is owned by the caller and is available for 338 * use.</p> </li> <li> <p>payment-failed-Payment failed for the purchase 339 * attempt.</p> </li> <li> <p>retired-The reserved node is no longer available. 340 * </p> </li> <li> <p>exchanging-The owner is exchanging the reserved node for 341 * another reserved node.</p> </li> </ul> 342 */ GetState()343 inline const Aws::String& GetState() const{ return m_state; } 344 345 /** 346 * <p>The state of the reserved compute node.</p> <p>Possible Values:</p> <ul> <li> 347 * <p>pending-payment-This reserved node has recently been purchased, and the sale 348 * has been approved, but payment has not yet been confirmed.</p> </li> <li> 349 * <p>active-This reserved node is owned by the caller and is available for 350 * use.</p> </li> <li> <p>payment-failed-Payment failed for the purchase 351 * attempt.</p> </li> <li> <p>retired-The reserved node is no longer available. 352 * </p> </li> <li> <p>exchanging-The owner is exchanging the reserved node for 353 * another reserved node.</p> </li> </ul> 354 */ StateHasBeenSet()355 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; } 356 357 /** 358 * <p>The state of the reserved compute node.</p> <p>Possible Values:</p> <ul> <li> 359 * <p>pending-payment-This reserved node has recently been purchased, and the sale 360 * has been approved, but payment has not yet been confirmed.</p> </li> <li> 361 * <p>active-This reserved node is owned by the caller and is available for 362 * use.</p> </li> <li> <p>payment-failed-Payment failed for the purchase 363 * attempt.</p> </li> <li> <p>retired-The reserved node is no longer available. 364 * </p> </li> <li> <p>exchanging-The owner is exchanging the reserved node for 365 * another reserved node.</p> </li> </ul> 366 */ SetState(const Aws::String & value)367 inline void SetState(const Aws::String& value) { m_stateHasBeenSet = true; m_state = value; } 368 369 /** 370 * <p>The state of the reserved compute node.</p> <p>Possible Values:</p> <ul> <li> 371 * <p>pending-payment-This reserved node has recently been purchased, and the sale 372 * has been approved, but payment has not yet been confirmed.</p> </li> <li> 373 * <p>active-This reserved node is owned by the caller and is available for 374 * use.</p> </li> <li> <p>payment-failed-Payment failed for the purchase 375 * attempt.</p> </li> <li> <p>retired-The reserved node is no longer available. 376 * </p> </li> <li> <p>exchanging-The owner is exchanging the reserved node for 377 * another reserved node.</p> </li> </ul> 378 */ SetState(Aws::String && value)379 inline void SetState(Aws::String&& value) { m_stateHasBeenSet = true; m_state = std::move(value); } 380 381 /** 382 * <p>The state of the reserved compute node.</p> <p>Possible Values:</p> <ul> <li> 383 * <p>pending-payment-This reserved node has recently been purchased, and the sale 384 * has been approved, but payment has not yet been confirmed.</p> </li> <li> 385 * <p>active-This reserved node is owned by the caller and is available for 386 * use.</p> </li> <li> <p>payment-failed-Payment failed for the purchase 387 * attempt.</p> </li> <li> <p>retired-The reserved node is no longer available. 388 * </p> </li> <li> <p>exchanging-The owner is exchanging the reserved node for 389 * another reserved node.</p> </li> </ul> 390 */ SetState(const char * value)391 inline void SetState(const char* value) { m_stateHasBeenSet = true; m_state.assign(value); } 392 393 /** 394 * <p>The state of the reserved compute node.</p> <p>Possible Values:</p> <ul> <li> 395 * <p>pending-payment-This reserved node has recently been purchased, and the sale 396 * has been approved, but payment has not yet been confirmed.</p> </li> <li> 397 * <p>active-This reserved node is owned by the caller and is available for 398 * use.</p> </li> <li> <p>payment-failed-Payment failed for the purchase 399 * attempt.</p> </li> <li> <p>retired-The reserved node is no longer available. 400 * </p> </li> <li> <p>exchanging-The owner is exchanging the reserved node for 401 * another reserved node.</p> </li> </ul> 402 */ WithState(const Aws::String & value)403 inline ReservedNode& WithState(const Aws::String& value) { SetState(value); return *this;} 404 405 /** 406 * <p>The state of the reserved compute node.</p> <p>Possible Values:</p> <ul> <li> 407 * <p>pending-payment-This reserved node has recently been purchased, and the sale 408 * has been approved, but payment has not yet been confirmed.</p> </li> <li> 409 * <p>active-This reserved node is owned by the caller and is available for 410 * use.</p> </li> <li> <p>payment-failed-Payment failed for the purchase 411 * attempt.</p> </li> <li> <p>retired-The reserved node is no longer available. 412 * </p> </li> <li> <p>exchanging-The owner is exchanging the reserved node for 413 * another reserved node.</p> </li> </ul> 414 */ WithState(Aws::String && value)415 inline ReservedNode& WithState(Aws::String&& value) { SetState(std::move(value)); return *this;} 416 417 /** 418 * <p>The state of the reserved compute node.</p> <p>Possible Values:</p> <ul> <li> 419 * <p>pending-payment-This reserved node has recently been purchased, and the sale 420 * has been approved, but payment has not yet been confirmed.</p> </li> <li> 421 * <p>active-This reserved node is owned by the caller and is available for 422 * use.</p> </li> <li> <p>payment-failed-Payment failed for the purchase 423 * attempt.</p> </li> <li> <p>retired-The reserved node is no longer available. 424 * </p> </li> <li> <p>exchanging-The owner is exchanging the reserved node for 425 * another reserved node.</p> </li> </ul> 426 */ WithState(const char * value)427 inline ReservedNode& WithState(const char* value) { SetState(value); return *this;} 428 429 430 /** 431 * <p>The anticipated utilization of the reserved node, as defined in the reserved 432 * node offering.</p> 433 */ GetOfferingType()434 inline const Aws::String& GetOfferingType() const{ return m_offeringType; } 435 436 /** 437 * <p>The anticipated utilization of the reserved node, as defined in the reserved 438 * node offering.</p> 439 */ OfferingTypeHasBeenSet()440 inline bool OfferingTypeHasBeenSet() const { return m_offeringTypeHasBeenSet; } 441 442 /** 443 * <p>The anticipated utilization of the reserved node, as defined in the reserved 444 * node offering.</p> 445 */ SetOfferingType(const Aws::String & value)446 inline void SetOfferingType(const Aws::String& value) { m_offeringTypeHasBeenSet = true; m_offeringType = value; } 447 448 /** 449 * <p>The anticipated utilization of the reserved node, as defined in the reserved 450 * node offering.</p> 451 */ SetOfferingType(Aws::String && value)452 inline void SetOfferingType(Aws::String&& value) { m_offeringTypeHasBeenSet = true; m_offeringType = std::move(value); } 453 454 /** 455 * <p>The anticipated utilization of the reserved node, as defined in the reserved 456 * node offering.</p> 457 */ SetOfferingType(const char * value)458 inline void SetOfferingType(const char* value) { m_offeringTypeHasBeenSet = true; m_offeringType.assign(value); } 459 460 /** 461 * <p>The anticipated utilization of the reserved node, as defined in the reserved 462 * node offering.</p> 463 */ WithOfferingType(const Aws::String & value)464 inline ReservedNode& WithOfferingType(const Aws::String& value) { SetOfferingType(value); return *this;} 465 466 /** 467 * <p>The anticipated utilization of the reserved node, as defined in the reserved 468 * node offering.</p> 469 */ WithOfferingType(Aws::String && value)470 inline ReservedNode& WithOfferingType(Aws::String&& value) { SetOfferingType(std::move(value)); return *this;} 471 472 /** 473 * <p>The anticipated utilization of the reserved node, as defined in the reserved 474 * node offering.</p> 475 */ WithOfferingType(const char * value)476 inline ReservedNode& WithOfferingType(const char* value) { SetOfferingType(value); return *this;} 477 478 479 /** 480 * <p>The recurring charges for the reserved node.</p> 481 */ GetRecurringCharges()482 inline const Aws::Vector<RecurringCharge>& GetRecurringCharges() const{ return m_recurringCharges; } 483 484 /** 485 * <p>The recurring charges for the reserved node.</p> 486 */ RecurringChargesHasBeenSet()487 inline bool RecurringChargesHasBeenSet() const { return m_recurringChargesHasBeenSet; } 488 489 /** 490 * <p>The recurring charges for the reserved node.</p> 491 */ SetRecurringCharges(const Aws::Vector<RecurringCharge> & value)492 inline void SetRecurringCharges(const Aws::Vector<RecurringCharge>& value) { m_recurringChargesHasBeenSet = true; m_recurringCharges = value; } 493 494 /** 495 * <p>The recurring charges for the reserved node.</p> 496 */ SetRecurringCharges(Aws::Vector<RecurringCharge> && value)497 inline void SetRecurringCharges(Aws::Vector<RecurringCharge>&& value) { m_recurringChargesHasBeenSet = true; m_recurringCharges = std::move(value); } 498 499 /** 500 * <p>The recurring charges for the reserved node.</p> 501 */ WithRecurringCharges(const Aws::Vector<RecurringCharge> & value)502 inline ReservedNode& WithRecurringCharges(const Aws::Vector<RecurringCharge>& value) { SetRecurringCharges(value); return *this;} 503 504 /** 505 * <p>The recurring charges for the reserved node.</p> 506 */ WithRecurringCharges(Aws::Vector<RecurringCharge> && value)507 inline ReservedNode& WithRecurringCharges(Aws::Vector<RecurringCharge>&& value) { SetRecurringCharges(std::move(value)); return *this;} 508 509 /** 510 * <p>The recurring charges for the reserved node.</p> 511 */ AddRecurringCharges(const RecurringCharge & value)512 inline ReservedNode& AddRecurringCharges(const RecurringCharge& value) { m_recurringChargesHasBeenSet = true; m_recurringCharges.push_back(value); return *this; } 513 514 /** 515 * <p>The recurring charges for the reserved node.</p> 516 */ AddRecurringCharges(RecurringCharge && value)517 inline ReservedNode& AddRecurringCharges(RecurringCharge&& value) { m_recurringChargesHasBeenSet = true; m_recurringCharges.push_back(std::move(value)); return *this; } 518 519 520 /** 521 * <p/> 522 */ GetReservedNodeOfferingType()523 inline const ReservedNodeOfferingType& GetReservedNodeOfferingType() const{ return m_reservedNodeOfferingType; } 524 525 /** 526 * <p/> 527 */ ReservedNodeOfferingTypeHasBeenSet()528 inline bool ReservedNodeOfferingTypeHasBeenSet() const { return m_reservedNodeOfferingTypeHasBeenSet; } 529 530 /** 531 * <p/> 532 */ SetReservedNodeOfferingType(const ReservedNodeOfferingType & value)533 inline void SetReservedNodeOfferingType(const ReservedNodeOfferingType& value) { m_reservedNodeOfferingTypeHasBeenSet = true; m_reservedNodeOfferingType = value; } 534 535 /** 536 * <p/> 537 */ SetReservedNodeOfferingType(ReservedNodeOfferingType && value)538 inline void SetReservedNodeOfferingType(ReservedNodeOfferingType&& value) { m_reservedNodeOfferingTypeHasBeenSet = true; m_reservedNodeOfferingType = std::move(value); } 539 540 /** 541 * <p/> 542 */ WithReservedNodeOfferingType(const ReservedNodeOfferingType & value)543 inline ReservedNode& WithReservedNodeOfferingType(const ReservedNodeOfferingType& value) { SetReservedNodeOfferingType(value); return *this;} 544 545 /** 546 * <p/> 547 */ WithReservedNodeOfferingType(ReservedNodeOfferingType && value)548 inline ReservedNode& WithReservedNodeOfferingType(ReservedNodeOfferingType&& value) { SetReservedNodeOfferingType(std::move(value)); return *this;} 549 550 private: 551 552 Aws::String m_reservedNodeId; 553 bool m_reservedNodeIdHasBeenSet; 554 555 Aws::String m_reservedNodeOfferingId; 556 bool m_reservedNodeOfferingIdHasBeenSet; 557 558 Aws::String m_nodeType; 559 bool m_nodeTypeHasBeenSet; 560 561 Aws::Utils::DateTime m_startTime; 562 bool m_startTimeHasBeenSet; 563 564 int m_duration; 565 bool m_durationHasBeenSet; 566 567 double m_fixedPrice; 568 bool m_fixedPriceHasBeenSet; 569 570 double m_usagePrice; 571 bool m_usagePriceHasBeenSet; 572 573 Aws::String m_currencyCode; 574 bool m_currencyCodeHasBeenSet; 575 576 int m_nodeCount; 577 bool m_nodeCountHasBeenSet; 578 579 Aws::String m_state; 580 bool m_stateHasBeenSet; 581 582 Aws::String m_offeringType; 583 bool m_offeringTypeHasBeenSet; 584 585 Aws::Vector<RecurringCharge> m_recurringCharges; 586 bool m_recurringChargesHasBeenSet; 587 588 ReservedNodeOfferingType m_reservedNodeOfferingType; 589 bool m_reservedNodeOfferingTypeHasBeenSet; 590 }; 591 592 } // namespace Model 593 } // namespace Redshift 594 } // namespace Aws 595