7#include <aws/elasticmapreduce/EMR_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/elasticmapreduce/model/ShrinkPolicy.h>
11#include <aws/elasticmapreduce/model/ReconfigurationType.h>
12#include <aws/elasticmapreduce/model/Configuration.h>
51 template<
typename InstanceGroupIdT = Aws::String>
52 void SetInstanceGroupId(InstanceGroupIdT&& value) { m_instanceGroupIdHasBeenSet =
true; m_instanceGroupId = std::forward<InstanceGroupIdT>(value); }
53 template<
typename InstanceGroupIdT = Aws::String>
63 inline void SetInstanceCount(
int value) { m_instanceCountHasBeenSet =
true; m_instanceCount = value; }
74 template<
typename EC2InstanceIdsToTerminateT = Aws::Vector<Aws::String>>
75 void SetEC2InstanceIdsToTerminate(EC2InstanceIdsToTerminateT&& value) { m_eC2InstanceIdsToTerminateHasBeenSet =
true; m_eC2InstanceIdsToTerminate = std::forward<EC2InstanceIdsToTerminateT>(value); }
76 template<
typename EC2InstanceIdsToTerminateT = Aws::Vector<Aws::String>>
78 template<
typename EC2InstanceIdsToTerminateT = Aws::String>
88 template<
typename ShrinkPolicyT = ShrinkPolicy>
89 void SetShrinkPolicy(ShrinkPolicyT&& value) { m_shrinkPolicyHasBeenSet =
true; m_shrinkPolicy = std::forward<ShrinkPolicyT>(value); }
90 template<
typename ShrinkPolicyT = ShrinkPolicy>
110 template<
typename ConfigurationsT = Aws::Vector<Configuration>>
111 void SetConfigurations(ConfigurationsT&& value) { m_configurationsHasBeenSet =
true; m_configurations = std::forward<ConfigurationsT>(value); }
112 template<
typename ConfigurationsT = Aws::Vector<Configuration>>
114 template<
typename ConfigurationsT = Configuration>
120 bool m_instanceGroupIdHasBeenSet =
false;
122 int m_instanceCount{0};
123 bool m_instanceCountHasBeenSet =
false;
126 bool m_eC2InstanceIdsToTerminateHasBeenSet =
false;
128 ShrinkPolicy m_shrinkPolicy;
129 bool m_shrinkPolicyHasBeenSet =
false;
132 bool m_reconfigurationTypeHasBeenSet =
false;
135 bool m_configurationsHasBeenSet =
false;
const Aws::Vector< Configuration > & GetConfigurations() const
InstanceGroupModifyConfig & WithInstanceGroupId(InstanceGroupIdT &&value)
void SetShrinkPolicy(ShrinkPolicyT &&value)
InstanceGroupModifyConfig & WithConfigurations(ConfigurationsT &&value)
const Aws::String & GetInstanceGroupId() const
InstanceGroupModifyConfig & WithInstanceCount(int value)
InstanceGroupModifyConfig & AddConfigurations(ConfigurationsT &&value)
void SetInstanceGroupId(InstanceGroupIdT &&value)
void SetEC2InstanceIdsToTerminate(EC2InstanceIdsToTerminateT &&value)
void SetConfigurations(ConfigurationsT &&value)
AWS_EMR_API Aws::Utils::Json::JsonValue Jsonize() const
bool ShrinkPolicyHasBeenSet() const
InstanceGroupModifyConfig & WithReconfigurationType(ReconfigurationType value)
bool InstanceCountHasBeenSet() const
int GetInstanceCount() const
InstanceGroupModifyConfig & WithEC2InstanceIdsToTerminate(EC2InstanceIdsToTerminateT &&value)
const ShrinkPolicy & GetShrinkPolicy() const
bool InstanceGroupIdHasBeenSet() const
bool ReconfigurationTypeHasBeenSet() const
const Aws::Vector< Aws::String > & GetEC2InstanceIdsToTerminate() const
AWS_EMR_API InstanceGroupModifyConfig(Aws::Utils::Json::JsonView jsonValue)
void SetReconfigurationType(ReconfigurationType value)
ReconfigurationType GetReconfigurationType() const
InstanceGroupModifyConfig & AddEC2InstanceIdsToTerminate(EC2InstanceIdsToTerminateT &&value)
AWS_EMR_API InstanceGroupModifyConfig & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_EMR_API InstanceGroupModifyConfig()=default
InstanceGroupModifyConfig & WithShrinkPolicy(ShrinkPolicyT &&value)
bool EC2InstanceIdsToTerminateHasBeenSet() const
bool ConfigurationsHasBeenSet() const
void SetInstanceCount(int value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue