7#include <aws/elasticmapreduce/EMR_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/elasticmapreduce/model/InstanceFleetType.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/elasticmapreduce/model/InstanceFleetProvisioningSpecifications.h>
12#include <aws/elasticmapreduce/model/InstanceFleetResizingSpecifications.h>
13#include <aws/elasticmapreduce/model/InstanceTypeConfig.h>
53 template<
typename NameT = Aws::String>
54 void SetName(NameT&& value) { m_nameHasBeenSet =
true; m_name = std::forward<NameT>(value); }
55 template<
typename NameT = Aws::String>
117 inline void SetTargetSpotCapacity(
int value) { m_targetSpotCapacityHasBeenSet =
true; m_targetSpotCapacity = value; }
128 template<
typename InstanceTypeConfigsT = Aws::Vector<InstanceTypeConfig>>
129 void SetInstanceTypeConfigs(InstanceTypeConfigsT&& value) { m_instanceTypeConfigsHasBeenSet =
true; m_instanceTypeConfigs = std::forward<InstanceTypeConfigsT>(value); }
130 template<
typename InstanceTypeConfigsT = Aws::Vector<InstanceTypeConfig>>
132 template<
typename InstanceTypeConfigsT = InstanceTypeConfig>
142 template<
typename LaunchSpecificationsT = InstanceFleetProvisioningSpecifications>
143 void SetLaunchSpecifications(LaunchSpecificationsT&& value) { m_launchSpecificationsHasBeenSet =
true; m_launchSpecifications = std::forward<LaunchSpecificationsT>(value); }
144 template<
typename LaunchSpecificationsT = InstanceFleetProvisioningSpecifications>
154 template<
typename ResizeSpecificationsT = InstanceFleetResizingSpecifications>
155 void SetResizeSpecifications(ResizeSpecificationsT&& value) { m_resizeSpecificationsHasBeenSet =
true; m_resizeSpecifications = std::forward<ResizeSpecificationsT>(value); }
156 template<
typename ResizeSpecificationsT = InstanceFleetResizingSpecifications>
166 template<
typename ContextT = Aws::String>
167 void SetContext(ContextT&& value) { m_contextHasBeenSet =
true; m_context = std::forward<ContextT>(value); }
168 template<
typename ContextT = Aws::String>
174 bool m_nameHasBeenSet =
false;
177 bool m_instanceFleetTypeHasBeenSet =
false;
179 int m_targetOnDemandCapacity{0};
180 bool m_targetOnDemandCapacityHasBeenSet =
false;
182 int m_targetSpotCapacity{0};
183 bool m_targetSpotCapacityHasBeenSet =
false;
186 bool m_instanceTypeConfigsHasBeenSet =
false;
188 InstanceFleetProvisioningSpecifications m_launchSpecifications;
189 bool m_launchSpecificationsHasBeenSet =
false;
191 InstanceFleetResizingSpecifications m_resizeSpecifications;
192 bool m_resizeSpecificationsHasBeenSet =
false;
195 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