AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
OnDemandResizingSpecification.h
1
6#pragma once
7#include <aws/elasticmapreduce/EMR_EXPORTS.h>
8#include <aws/elasticmapreduce/model/OnDemandProvisioningAllocationStrategy.h>
9#include <aws/elasticmapreduce/model/OnDemandCapacityReservationOptions.h>
10#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Json
17{
18 class JsonValue;
19 class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace EMR
23{
24namespace Model
25{
26
34 {
35 public:
36 AWS_EMR_API OnDemandResizingSpecification() = default;
40
41
43
52 inline int GetTimeoutDurationMinutes() const { return m_timeoutDurationMinutes; }
53 inline bool TimeoutDurationMinutesHasBeenSet() const { return m_timeoutDurationMinutesHasBeenSet; }
54 inline void SetTimeoutDurationMinutes(int value) { m_timeoutDurationMinutesHasBeenSet = true; m_timeoutDurationMinutes = value; }
57
59
63 inline OnDemandProvisioningAllocationStrategy GetAllocationStrategy() const { return m_allocationStrategy; }
64 inline bool AllocationStrategyHasBeenSet() const { return m_allocationStrategyHasBeenSet; }
65 inline void SetAllocationStrategy(OnDemandProvisioningAllocationStrategy value) { m_allocationStrategyHasBeenSet = true; m_allocationStrategy = value; }
68
70
71 inline const OnDemandCapacityReservationOptions& GetCapacityReservationOptions() const { return m_capacityReservationOptions; }
72 inline bool CapacityReservationOptionsHasBeenSet() const { return m_capacityReservationOptionsHasBeenSet; }
73 template<typename CapacityReservationOptionsT = OnDemandCapacityReservationOptions>
74 void SetCapacityReservationOptions(CapacityReservationOptionsT&& value) { m_capacityReservationOptionsHasBeenSet = true; m_capacityReservationOptions = std::forward<CapacityReservationOptionsT>(value); }
75 template<typename CapacityReservationOptionsT = OnDemandCapacityReservationOptions>
76 OnDemandResizingSpecification& WithCapacityReservationOptions(CapacityReservationOptionsT&& value) { SetCapacityReservationOptions(std::forward<CapacityReservationOptionsT>(value)); return *this;}
78 private:
79
80 int m_timeoutDurationMinutes{0};
81 bool m_timeoutDurationMinutesHasBeenSet = false;
82
84 bool m_allocationStrategyHasBeenSet = false;
85
86 OnDemandCapacityReservationOptions m_capacityReservationOptions;
87 bool m_capacityReservationOptionsHasBeenSet = false;
88 };
89
90} // namespace Model
91} // namespace EMR
92} // namespace Aws
OnDemandResizingSpecification & WithCapacityReservationOptions(CapacityReservationOptionsT &&value)
void SetCapacityReservationOptions(CapacityReservationOptionsT &&value)
void SetAllocationStrategy(OnDemandProvisioningAllocationStrategy value)
AWS_EMR_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_EMR_API OnDemandResizingSpecification(Aws::Utils::Json::JsonView jsonValue)
OnDemandResizingSpecification & WithTimeoutDurationMinutes(int value)
OnDemandResizingSpecification & WithAllocationStrategy(OnDemandProvisioningAllocationStrategy value)
OnDemandProvisioningAllocationStrategy GetAllocationStrategy() const
const OnDemandCapacityReservationOptions & GetCapacityReservationOptions() const
AWS_EMR_API OnDemandResizingSpecification & operator=(Aws::Utils::Json::JsonView jsonValue)
Aws::Utils::Json::JsonValue JsonValue