/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Represents the output of a PurchaseReservedNodesOffering
* operation.See Also:
AWS
* API Reference
A customer-specified identifier to track this reservation.
*/ inline const Aws::String& GetReservationId() const{ return m_reservationId; } /** *A customer-specified identifier to track this reservation.
*/ inline bool ReservationIdHasBeenSet() const { return m_reservationIdHasBeenSet; } /** *A customer-specified identifier to track this reservation.
*/ inline void SetReservationId(const Aws::String& value) { m_reservationIdHasBeenSet = true; m_reservationId = value; } /** *A customer-specified identifier to track this reservation.
*/ inline void SetReservationId(Aws::String&& value) { m_reservationIdHasBeenSet = true; m_reservationId = std::move(value); } /** *A customer-specified identifier to track this reservation.
*/ inline void SetReservationId(const char* value) { m_reservationIdHasBeenSet = true; m_reservationId.assign(value); } /** *A customer-specified identifier to track this reservation.
*/ inline ReservedNode& WithReservationId(const Aws::String& value) { SetReservationId(value); return *this;} /** *A customer-specified identifier to track this reservation.
*/ inline ReservedNode& WithReservationId(Aws::String&& value) { SetReservationId(std::move(value)); return *this;} /** *A customer-specified identifier to track this reservation.
*/ inline ReservedNode& WithReservationId(const char* value) { SetReservationId(value); return *this;} /** *The ID of the reserved node offering to purchase.
*/ inline const Aws::String& GetReservedNodesOfferingId() const{ return m_reservedNodesOfferingId; } /** *The ID of the reserved node offering to purchase.
*/ inline bool ReservedNodesOfferingIdHasBeenSet() const { return m_reservedNodesOfferingIdHasBeenSet; } /** *The ID of the reserved node offering to purchase.
*/ inline void SetReservedNodesOfferingId(const Aws::String& value) { m_reservedNodesOfferingIdHasBeenSet = true; m_reservedNodesOfferingId = value; } /** *The ID of the reserved node offering to purchase.
*/ inline void SetReservedNodesOfferingId(Aws::String&& value) { m_reservedNodesOfferingIdHasBeenSet = true; m_reservedNodesOfferingId = std::move(value); } /** *The ID of the reserved node offering to purchase.
*/ inline void SetReservedNodesOfferingId(const char* value) { m_reservedNodesOfferingIdHasBeenSet = true; m_reservedNodesOfferingId.assign(value); } /** *The ID of the reserved node offering to purchase.
*/ inline ReservedNode& WithReservedNodesOfferingId(const Aws::String& value) { SetReservedNodesOfferingId(value); return *this;} /** *The ID of the reserved node offering to purchase.
*/ inline ReservedNode& WithReservedNodesOfferingId(Aws::String&& value) { SetReservedNodesOfferingId(std::move(value)); return *this;} /** *The ID of the reserved node offering to purchase.
*/ inline ReservedNode& WithReservedNodesOfferingId(const char* value) { SetReservedNodesOfferingId(value); return *this;} /** *The node type for the reserved nodes.
*/ inline const Aws::String& GetNodeType() const{ return m_nodeType; } /** *The node type for the reserved nodes.
*/ inline bool NodeTypeHasBeenSet() const { return m_nodeTypeHasBeenSet; } /** *The node type for the reserved nodes.
*/ inline void SetNodeType(const Aws::String& value) { m_nodeTypeHasBeenSet = true; m_nodeType = value; } /** *The node type for the reserved nodes.
*/ inline void SetNodeType(Aws::String&& value) { m_nodeTypeHasBeenSet = true; m_nodeType = std::move(value); } /** *The node type for the reserved nodes.
*/ inline void SetNodeType(const char* value) { m_nodeTypeHasBeenSet = true; m_nodeType.assign(value); } /** *The node type for the reserved nodes.
*/ inline ReservedNode& WithNodeType(const Aws::String& value) { SetNodeType(value); return *this;} /** *The node type for the reserved nodes.
*/ inline ReservedNode& WithNodeType(Aws::String&& value) { SetNodeType(std::move(value)); return *this;} /** *The node type for the reserved nodes.
*/ inline ReservedNode& WithNodeType(const char* value) { SetNodeType(value); return *this;} /** *The time the reservation started.
*/ inline const Aws::Utils::DateTime& GetStartTime() const{ return m_startTime; } /** *The time the reservation started.
*/ inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; } /** *The time the reservation started.
*/ inline void SetStartTime(const Aws::Utils::DateTime& value) { m_startTimeHasBeenSet = true; m_startTime = value; } /** *The time the reservation started.
*/ inline void SetStartTime(Aws::Utils::DateTime&& value) { m_startTimeHasBeenSet = true; m_startTime = std::move(value); } /** *The time the reservation started.
*/ inline ReservedNode& WithStartTime(const Aws::Utils::DateTime& value) { SetStartTime(value); return *this;} /** *The time the reservation started.
*/ inline ReservedNode& WithStartTime(Aws::Utils::DateTime&& value) { SetStartTime(std::move(value)); return *this;} /** *The duration of the reservation in seconds.
*/ inline int GetDuration() const{ return m_duration; } /** *The duration of the reservation in seconds.
*/ inline bool DurationHasBeenSet() const { return m_durationHasBeenSet; } /** *The duration of the reservation in seconds.
*/ inline void SetDuration(int value) { m_durationHasBeenSet = true; m_duration = value; } /** *The duration of the reservation in seconds.
*/ inline ReservedNode& WithDuration(int value) { SetDuration(value); return *this;} /** *The fixed price charged for this reserved node.
*/ inline double GetFixedPrice() const{ return m_fixedPrice; } /** *The fixed price charged for this reserved node.
*/ inline bool FixedPriceHasBeenSet() const { return m_fixedPriceHasBeenSet; } /** *The fixed price charged for this reserved node.
*/ inline void SetFixedPrice(double value) { m_fixedPriceHasBeenSet = true; m_fixedPrice = value; } /** *The fixed price charged for this reserved node.
*/ inline ReservedNode& WithFixedPrice(double value) { SetFixedPrice(value); return *this;} /** *The number of nodes that have been reserved.
*/ inline int GetNodeCount() const{ return m_nodeCount; } /** *The number of nodes that have been reserved.
*/ inline bool NodeCountHasBeenSet() const { return m_nodeCountHasBeenSet; } /** *The number of nodes that have been reserved.
*/ inline void SetNodeCount(int value) { m_nodeCountHasBeenSet = true; m_nodeCount = value; } /** *The number of nodes that have been reserved.
*/ inline ReservedNode& WithNodeCount(int value) { SetNodeCount(value); return *this;} /** *The offering type of this reserved node.
*/ inline const Aws::String& GetOfferingType() const{ return m_offeringType; } /** *The offering type of this reserved node.
*/ inline bool OfferingTypeHasBeenSet() const { return m_offeringTypeHasBeenSet; } /** *The offering type of this reserved node.
*/ inline void SetOfferingType(const Aws::String& value) { m_offeringTypeHasBeenSet = true; m_offeringType = value; } /** *The offering type of this reserved node.
*/ inline void SetOfferingType(Aws::String&& value) { m_offeringTypeHasBeenSet = true; m_offeringType = std::move(value); } /** *The offering type of this reserved node.
*/ inline void SetOfferingType(const char* value) { m_offeringTypeHasBeenSet = true; m_offeringType.assign(value); } /** *The offering type of this reserved node.
*/ inline ReservedNode& WithOfferingType(const Aws::String& value) { SetOfferingType(value); return *this;} /** *The offering type of this reserved node.
*/ inline ReservedNode& WithOfferingType(Aws::String&& value) { SetOfferingType(std::move(value)); return *this;} /** *The offering type of this reserved node.
*/ inline ReservedNode& WithOfferingType(const char* value) { SetOfferingType(value); return *this;} /** *The state of the reserved node.
*/ inline const Aws::String& GetState() const{ return m_state; } /** *The state of the reserved node.
*/ inline bool StateHasBeenSet() const { return m_stateHasBeenSet; } /** *The state of the reserved node.
*/ inline void SetState(const Aws::String& value) { m_stateHasBeenSet = true; m_state = value; } /** *The state of the reserved node.
*/ inline void SetState(Aws::String&& value) { m_stateHasBeenSet = true; m_state = std::move(value); } /** *The state of the reserved node.
*/ inline void SetState(const char* value) { m_stateHasBeenSet = true; m_state.assign(value); } /** *The state of the reserved node.
*/ inline ReservedNode& WithState(const Aws::String& value) { SetState(value); return *this;} /** *The state of the reserved node.
*/ inline ReservedNode& WithState(Aws::String&& value) { SetState(std::move(value)); return *this;} /** *The state of the reserved node.
*/ inline ReservedNode& WithState(const char* value) { SetState(value); return *this;} /** *The recurring price charged to run this reserved node.
*/ inline const Aws::VectorThe recurring price charged to run this reserved node.
*/ inline bool RecurringChargesHasBeenSet() const { return m_recurringChargesHasBeenSet; } /** *The recurring price charged to run this reserved node.
*/ inline void SetRecurringCharges(const Aws::VectorThe recurring price charged to run this reserved node.
*/ inline void SetRecurringCharges(Aws::VectorThe recurring price charged to run this reserved node.
*/ inline ReservedNode& WithRecurringCharges(const Aws::VectorThe recurring price charged to run this reserved node.
*/ inline ReservedNode& WithRecurringCharges(Aws::VectorThe recurring price charged to run this reserved node.
*/ inline ReservedNode& AddRecurringCharges(const RecurringCharge& value) { m_recurringChargesHasBeenSet = true; m_recurringCharges.push_back(value); return *this; } /** *The recurring price charged to run this reserved node.
*/ inline ReservedNode& AddRecurringCharges(RecurringCharge&& value) { m_recurringChargesHasBeenSet = true; m_recurringCharges.push_back(std::move(value)); return *this; } /** *The Amazon Resource Name (ARN) of the reserved node.
*/ inline const Aws::String& GetARN() const{ return m_aRN; } /** *The Amazon Resource Name (ARN) of the reserved node.
*/ inline bool ARNHasBeenSet() const { return m_aRNHasBeenSet; } /** *The Amazon Resource Name (ARN) of the reserved node.
*/ inline void SetARN(const Aws::String& value) { m_aRNHasBeenSet = true; m_aRN = value; } /** *The Amazon Resource Name (ARN) of the reserved node.
*/ inline void SetARN(Aws::String&& value) { m_aRNHasBeenSet = true; m_aRN = std::move(value); } /** *The Amazon Resource Name (ARN) of the reserved node.
*/ inline void SetARN(const char* value) { m_aRNHasBeenSet = true; m_aRN.assign(value); } /** *The Amazon Resource Name (ARN) of the reserved node.
*/ inline ReservedNode& WithARN(const Aws::String& value) { SetARN(value); return *this;} /** *The Amazon Resource Name (ARN) of the reserved node.
*/ inline ReservedNode& WithARN(Aws::String&& value) { SetARN(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the reserved node.
*/ inline ReservedNode& WithARN(const char* value) { SetARN(value); return *this;} private: Aws::String m_reservationId; bool m_reservationIdHasBeenSet = false; Aws::String m_reservedNodesOfferingId; bool m_reservedNodesOfferingIdHasBeenSet = false; Aws::String m_nodeType; bool m_nodeTypeHasBeenSet = false; Aws::Utils::DateTime m_startTime; bool m_startTimeHasBeenSet = false; int m_duration; bool m_durationHasBeenSet = false; double m_fixedPrice; bool m_fixedPriceHasBeenSet = false; int m_nodeCount; bool m_nodeCountHasBeenSet = false; Aws::String m_offeringType; bool m_offeringTypeHasBeenSet = false; Aws::String m_state; bool m_stateHasBeenSet = false; Aws::Vector