7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/elasticmapreduce/EMR_EXPORTS.h>
10#include <aws/elasticmapreduce/model/InstanceFleetProvisioningSpecifications.h>
11#include <aws/elasticmapreduce/model/InstanceFleetResizingSpecifications.h>
12#include <aws/elasticmapreduce/model/InstanceFleetType.h>
13#include <aws/elasticmapreduce/model/InstanceTypeConfig.h>
47 template <
typename NameT = Aws::String>
49 m_nameHasBeenSet =
true;
50 m_name = std::forward<NameT>(value);
52 template <
typename NameT = Aws::String>
54 SetName(std::forward<NameT>(value));
67 m_instanceFleetTypeHasBeenSet =
true;
68 m_instanceFleetType = value;
99 m_targetOnDemandCapacityHasBeenSet =
true;
100 m_targetOnDemandCapacity = value;
130 m_targetSpotCapacityHasBeenSet =
true;
131 m_targetSpotCapacity = value;
146 template <
typename InstanceTypeConfigsT = Aws::Vector<InstanceTypeConfig>>
148 m_instanceTypeConfigsHasBeenSet =
true;
149 m_instanceTypeConfigs = std::forward<InstanceTypeConfigsT>(value);
151 template <
typename InstanceTypeConfigsT = Aws::Vector<InstanceTypeConfig>>
156 template <
typename InstanceTypeConfigsT = InstanceTypeConfig>
158 m_instanceTypeConfigsHasBeenSet =
true;
159 m_instanceTypeConfigs.emplace_back(std::forward<InstanceTypeConfigsT>(value));
170 template <
typename LaunchSpecificationsT = InstanceFleetProvisioningSpecifications>
172 m_launchSpecificationsHasBeenSet =
true;
173 m_launchSpecifications = std::forward<LaunchSpecificationsT>(value);
175 template <
typename LaunchSpecificationsT = InstanceFleetProvisioningSpecifications>
188 template <
typename ResizeSpecificationsT = InstanceFleetResizingSpecifications>
190 m_resizeSpecificationsHasBeenSet =
true;
191 m_resizeSpecifications = std::forward<ResizeSpecificationsT>(value);
193 template <
typename ResizeSpecificationsT = InstanceFleetResizingSpecifications>
206 template <
typename ContextT = Aws::String>
208 m_contextHasBeenSet =
true;
209 m_context = std::forward<ContextT>(value);
211 template <
typename ContextT = Aws::String>
222 int m_targetOnDemandCapacity{0};
224 int m_targetSpotCapacity{0};
228 InstanceFleetProvisioningSpecifications m_launchSpecifications;
230 InstanceFleetResizingSpecifications m_resizeSpecifications;
233 bool m_nameHasBeenSet =
false;
234 bool m_instanceFleetTypeHasBeenSet =
false;
235 bool m_targetOnDemandCapacityHasBeenSet =
false;
236 bool m_targetSpotCapacityHasBeenSet =
false;
237 bool m_instanceTypeConfigsHasBeenSet =
false;
238 bool m_launchSpecificationsHasBeenSet =
false;
239 bool m_resizeSpecificationsHasBeenSet =
false;
240 bool m_contextHasBeenSet =
false;
void SetTargetOnDemandCapacity(int value)
void SetName(NameT &&value)
bool ContextHasBeenSet() const
AWS_EMR_API Aws::Utils::Json::JsonValue Jsonize() const
InstanceFleetConfig & WithTargetOnDemandCapacity(int value)
InstanceFleetConfig & WithLaunchSpecifications(LaunchSpecificationsT &&value)
bool InstanceTypeConfigsHasBeenSet() const
bool NameHasBeenSet() const
int GetTargetOnDemandCapacity() const
void SetLaunchSpecifications(LaunchSpecificationsT &&value)
const Aws::String & GetContext() const
InstanceFleetConfig & WithTargetSpotCapacity(int value)
InstanceFleetConfig & WithContext(ContextT &&value)
void SetResizeSpecifications(ResizeSpecificationsT &&value)
bool LaunchSpecificationsHasBeenSet() const
const InstanceFleetProvisioningSpecifications & GetLaunchSpecifications() const
void SetTargetSpotCapacity(int value)
InstanceFleetConfig & WithInstanceTypeConfigs(InstanceTypeConfigsT &&value)
const Aws::Vector< InstanceTypeConfig > & GetInstanceTypeConfigs() const
const InstanceFleetResizingSpecifications & GetResizeSpecifications() const
bool TargetOnDemandCapacityHasBeenSet() const
void SetContext(ContextT &&value)
InstanceFleetConfig & WithInstanceFleetType(InstanceFleetType value)
bool ResizeSpecificationsHasBeenSet() const
bool InstanceFleetTypeHasBeenSet() const
bool TargetSpotCapacityHasBeenSet() const
InstanceFleetConfig & WithName(NameT &&value)
int GetTargetSpotCapacity() const
AWS_EMR_API InstanceFleetConfig()=default
InstanceFleetConfig & WithResizeSpecifications(ResizeSpecificationsT &&value)
AWS_EMR_API InstanceFleetConfig(Aws::Utils::Json::JsonView jsonValue)
void SetInstanceTypeConfigs(InstanceTypeConfigsT &&value)
AWS_EMR_API InstanceFleetConfig & operator=(Aws::Utils::Json::JsonView jsonValue)
InstanceFleetConfig & AddInstanceTypeConfigs(InstanceTypeConfigsT &&value)
InstanceFleetType GetInstanceFleetType() const
void SetInstanceFleetType(InstanceFleetType value)
const Aws::String & GetName() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue