AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
SpotProvisioningSpecification.h
1
6#pragma once
7#include <aws/elasticmapreduce/EMR_EXPORTS.h>
8#include <aws/elasticmapreduce/model/SpotProvisioningTimeoutAction.h>
9#include <aws/elasticmapreduce/model/SpotProvisioningAllocationStrategy.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
42 {
43 public:
44 AWS_EMR_API SpotProvisioningSpecification() = default;
48
49
51
57 inline int GetTimeoutDurationMinutes() const { return m_timeoutDurationMinutes; }
58 inline bool TimeoutDurationMinutesHasBeenSet() const { return m_timeoutDurationMinutesHasBeenSet; }
59 inline void SetTimeoutDurationMinutes(int value) { m_timeoutDurationMinutesHasBeenSet = true; m_timeoutDurationMinutes = value; }
62
64
73 inline SpotProvisioningTimeoutAction GetTimeoutAction() const { return m_timeoutAction; }
74 inline bool TimeoutActionHasBeenSet() const { return m_timeoutActionHasBeenSet; }
75 inline void SetTimeoutAction(SpotProvisioningTimeoutAction value) { m_timeoutActionHasBeenSet = true; m_timeoutAction = value; }
78
80
93 inline int GetBlockDurationMinutes() const { return m_blockDurationMinutes; }
94 inline bool BlockDurationMinutesHasBeenSet() const { return m_blockDurationMinutesHasBeenSet; }
95 inline void SetBlockDurationMinutes(int value) { m_blockDurationMinutesHasBeenSet = true; m_blockDurationMinutes = value; }
98
100
113 inline SpotProvisioningAllocationStrategy GetAllocationStrategy() const { return m_allocationStrategy; }
114 inline bool AllocationStrategyHasBeenSet() const { return m_allocationStrategyHasBeenSet; }
115 inline void SetAllocationStrategy(SpotProvisioningAllocationStrategy value) { m_allocationStrategyHasBeenSet = true; m_allocationStrategy = value; }
118 private:
119
120 int m_timeoutDurationMinutes{0};
121 bool m_timeoutDurationMinutesHasBeenSet = false;
122
124 bool m_timeoutActionHasBeenSet = false;
125
126 int m_blockDurationMinutes{0};
127 bool m_blockDurationMinutesHasBeenSet = false;
128
130 bool m_allocationStrategyHasBeenSet = false;
131 };
132
133} // namespace Model
134} // namespace EMR
135} // namespace Aws
AWS_EMR_API SpotProvisioningSpecification(Aws::Utils::Json::JsonView jsonValue)
SpotProvisioningSpecification & WithTimeoutAction(SpotProvisioningTimeoutAction value)
SpotProvisioningSpecification & WithTimeoutDurationMinutes(int value)
SpotProvisioningSpecification & WithBlockDurationMinutes(int value)
SpotProvisioningAllocationStrategy GetAllocationStrategy() const
void SetTimeoutAction(SpotProvisioningTimeoutAction value)
AWS_EMR_API Aws::Utils::Json::JsonValue Jsonize() const
void SetAllocationStrategy(SpotProvisioningAllocationStrategy value)
AWS_EMR_API SpotProvisioningSpecification & operator=(Aws::Utils::Json::JsonView jsonValue)
SpotProvisioningSpecification & WithAllocationStrategy(SpotProvisioningAllocationStrategy value)
Aws::Utils::Json::JsonValue JsonValue