AWS SDK for C++  1.9.19
AWS SDK for C++
InstanceGroupModifyConfig.h
Go to the documentation of this file.
1 
6 #pragma once
12 #include <utility>
13 
14 namespace Aws
15 {
16 namespace Utils
17 {
18 namespace Json
19 {
20  class JsonValue;
21  class JsonView;
22 } // namespace Json
23 } // namespace Utils
24 namespace EMR
25 {
26 namespace Model
27 {
28 
36  {
37  public:
42 
43 
47  inline const Aws::String& GetInstanceGroupId() const{ return m_instanceGroupId; }
48 
52  inline bool InstanceGroupIdHasBeenSet() const { return m_instanceGroupIdHasBeenSet; }
53 
57  inline void SetInstanceGroupId(const Aws::String& value) { m_instanceGroupIdHasBeenSet = true; m_instanceGroupId = value; }
58 
62  inline void SetInstanceGroupId(Aws::String&& value) { m_instanceGroupIdHasBeenSet = true; m_instanceGroupId = std::move(value); }
63 
67  inline void SetInstanceGroupId(const char* value) { m_instanceGroupIdHasBeenSet = true; m_instanceGroupId.assign(value); }
68 
72  inline InstanceGroupModifyConfig& WithInstanceGroupId(const Aws::String& value) { SetInstanceGroupId(value); return *this;}
73 
77  inline InstanceGroupModifyConfig& WithInstanceGroupId(Aws::String&& value) { SetInstanceGroupId(std::move(value)); return *this;}
78 
82  inline InstanceGroupModifyConfig& WithInstanceGroupId(const char* value) { SetInstanceGroupId(value); return *this;}
83 
84 
88  inline int GetInstanceCount() const{ return m_instanceCount; }
89 
93  inline bool InstanceCountHasBeenSet() const { return m_instanceCountHasBeenSet; }
94 
98  inline void SetInstanceCount(int value) { m_instanceCountHasBeenSet = true; m_instanceCount = value; }
99 
103  inline InstanceGroupModifyConfig& WithInstanceCount(int value) { SetInstanceCount(value); return *this;}
104 
105 
110  inline const Aws::Vector<Aws::String>& GetEC2InstanceIdsToTerminate() const{ return m_eC2InstanceIdsToTerminate; }
111 
116  inline bool EC2InstanceIdsToTerminateHasBeenSet() const { return m_eC2InstanceIdsToTerminateHasBeenSet; }
117 
122  inline void SetEC2InstanceIdsToTerminate(const Aws::Vector<Aws::String>& value) { m_eC2InstanceIdsToTerminateHasBeenSet = true; m_eC2InstanceIdsToTerminate = value; }
123 
128  inline void SetEC2InstanceIdsToTerminate(Aws::Vector<Aws::String>&& value) { m_eC2InstanceIdsToTerminateHasBeenSet = true; m_eC2InstanceIdsToTerminate = std::move(value); }
129 
134  inline InstanceGroupModifyConfig& WithEC2InstanceIdsToTerminate(const Aws::Vector<Aws::String>& value) { SetEC2InstanceIdsToTerminate(value); return *this;}
135 
140  inline InstanceGroupModifyConfig& WithEC2InstanceIdsToTerminate(Aws::Vector<Aws::String>&& value) { SetEC2InstanceIdsToTerminate(std::move(value)); return *this;}
141 
146  inline InstanceGroupModifyConfig& AddEC2InstanceIdsToTerminate(const Aws::String& value) { m_eC2InstanceIdsToTerminateHasBeenSet = true; m_eC2InstanceIdsToTerminate.push_back(value); return *this; }
147 
152  inline InstanceGroupModifyConfig& AddEC2InstanceIdsToTerminate(Aws::String&& value) { m_eC2InstanceIdsToTerminateHasBeenSet = true; m_eC2InstanceIdsToTerminate.push_back(std::move(value)); return *this; }
153 
158  inline InstanceGroupModifyConfig& AddEC2InstanceIdsToTerminate(const char* value) { m_eC2InstanceIdsToTerminateHasBeenSet = true; m_eC2InstanceIdsToTerminate.push_back(value); return *this; }
159 
160 
164  inline const ShrinkPolicy& GetShrinkPolicy() const{ return m_shrinkPolicy; }
165 
169  inline bool ShrinkPolicyHasBeenSet() const { return m_shrinkPolicyHasBeenSet; }
170 
174  inline void SetShrinkPolicy(const ShrinkPolicy& value) { m_shrinkPolicyHasBeenSet = true; m_shrinkPolicy = value; }
175 
179  inline void SetShrinkPolicy(ShrinkPolicy&& value) { m_shrinkPolicyHasBeenSet = true; m_shrinkPolicy = std::move(value); }
180 
184  inline InstanceGroupModifyConfig& WithShrinkPolicy(const ShrinkPolicy& value) { SetShrinkPolicy(value); return *this;}
185 
189  inline InstanceGroupModifyConfig& WithShrinkPolicy(ShrinkPolicy&& value) { SetShrinkPolicy(std::move(value)); return *this;}
190 
191 
195  inline const Aws::Vector<Configuration>& GetConfigurations() const{ return m_configurations; }
196 
200  inline bool ConfigurationsHasBeenSet() const { return m_configurationsHasBeenSet; }
201 
205  inline void SetConfigurations(const Aws::Vector<Configuration>& value) { m_configurationsHasBeenSet = true; m_configurations = value; }
206 
210  inline void SetConfigurations(Aws::Vector<Configuration>&& value) { m_configurationsHasBeenSet = true; m_configurations = std::move(value); }
211 
215  inline InstanceGroupModifyConfig& WithConfigurations(const Aws::Vector<Configuration>& value) { SetConfigurations(value); return *this;}
216 
220  inline InstanceGroupModifyConfig& WithConfigurations(Aws::Vector<Configuration>&& value) { SetConfigurations(std::move(value)); return *this;}
221 
225  inline InstanceGroupModifyConfig& AddConfigurations(const Configuration& value) { m_configurationsHasBeenSet = true; m_configurations.push_back(value); return *this; }
226 
230  inline InstanceGroupModifyConfig& AddConfigurations(Configuration&& value) { m_configurationsHasBeenSet = true; m_configurations.push_back(std::move(value)); return *this; }
231 
232  private:
233 
234  Aws::String m_instanceGroupId;
235  bool m_instanceGroupIdHasBeenSet;
236 
237  int m_instanceCount;
238  bool m_instanceCountHasBeenSet;
239 
240  Aws::Vector<Aws::String> m_eC2InstanceIdsToTerminate;
241  bool m_eC2InstanceIdsToTerminateHasBeenSet;
242 
243  ShrinkPolicy m_shrinkPolicy;
244  bool m_shrinkPolicyHasBeenSet;
245 
246  Aws::Vector<Configuration> m_configurations;
247  bool m_configurationsHasBeenSet;
248  };
249 
250 } // namespace Model
251 } // namespace EMR
252 } // namespace Aws
Aws::EMR::Model::InstanceGroupModifyConfig::Jsonize
Aws::Utils::Json::JsonValue Jsonize() const
Aws::EMR::Model::InstanceGroupModifyConfig::SetInstanceGroupId
void SetInstanceGroupId(Aws::String &&value)
Definition: InstanceGroupModifyConfig.h:62
Aws::EMR::Model::InstanceGroupModifyConfig::GetShrinkPolicy
const ShrinkPolicy & GetShrinkPolicy() const
Definition: InstanceGroupModifyConfig.h:164
Aws::EMR::Model::Configuration
Definition: Configuration.h:43
Aws::EMR::Model::InstanceGroupModifyConfig::SetInstanceGroupId
void SetInstanceGroupId(const Aws::String &value)
Definition: InstanceGroupModifyConfig.h:57
EMR_EXPORTS.h
Aws::EMR::Model::InstanceGroupModifyConfig::SetInstanceCount
void SetInstanceCount(int value)
Definition: InstanceGroupModifyConfig.h:98
Aws::EMR::Model::InstanceGroupModifyConfig::WithConfigurations
InstanceGroupModifyConfig & WithConfigurations(Aws::Vector< Configuration > &&value)
Definition: InstanceGroupModifyConfig.h:220
Aws::EMR::Model::InstanceGroupModifyConfig::SetInstanceGroupId
void SetInstanceGroupId(const char *value)
Definition: InstanceGroupModifyConfig.h:67
Aws::EMR::Model::InstanceGroupModifyConfig::WithShrinkPolicy
InstanceGroupModifyConfig & WithShrinkPolicy(ShrinkPolicy &&value)
Definition: InstanceGroupModifyConfig.h:189
Aws::EMR::Model::InstanceGroupModifyConfig::AddEC2InstanceIdsToTerminate
InstanceGroupModifyConfig & AddEC2InstanceIdsToTerminate(const char *value)
Definition: InstanceGroupModifyConfig.h:158
Aws::EMR::Model::InstanceGroupModifyConfig::SetShrinkPolicy
void SetShrinkPolicy(const ShrinkPolicy &value)
Definition: InstanceGroupModifyConfig.h:174
Aws::Vector
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
Aws::EMR::Model::InstanceGroupModifyConfig::AddEC2InstanceIdsToTerminate
InstanceGroupModifyConfig & AddEC2InstanceIdsToTerminate(Aws::String &&value)
Definition: InstanceGroupModifyConfig.h:152
Aws::EMR::Model::InstanceGroupModifyConfig::ConfigurationsHasBeenSet
bool ConfigurationsHasBeenSet() const
Definition: InstanceGroupModifyConfig.h:200
AWSVector.h
Aws::EMR::Model::InstanceGroupModifyConfig::SetEC2InstanceIdsToTerminate
void SetEC2InstanceIdsToTerminate(Aws::Vector< Aws::String > &&value)
Definition: InstanceGroupModifyConfig.h:128
Aws::EMR::Model::InstanceGroupModifyConfig::InstanceGroupModifyConfig
InstanceGroupModifyConfig(Aws::Utils::Json::JsonView jsonValue)
Aws::EMR::Model::InstanceGroupModifyConfig::WithEC2InstanceIdsToTerminate
InstanceGroupModifyConfig & WithEC2InstanceIdsToTerminate(const Aws::Vector< Aws::String > &value)
Definition: InstanceGroupModifyConfig.h:134
Aws::EMR::Model::InstanceGroupModifyConfig::GetConfigurations
const Aws::Vector< Configuration > & GetConfigurations() const
Definition: InstanceGroupModifyConfig.h:195
Aws::EMR::Model::InstanceGroupModifyConfig::AddConfigurations
InstanceGroupModifyConfig & AddConfigurations(const Configuration &value)
Definition: InstanceGroupModifyConfig.h:225
Aws::EMR::Model::InstanceGroupModifyConfig::WithConfigurations
InstanceGroupModifyConfig & WithConfigurations(const Aws::Vector< Configuration > &value)
Definition: InstanceGroupModifyConfig.h:215
ShrinkPolicy.h
Aws::EMR::Model::InstanceGroupModifyConfig::WithShrinkPolicy
InstanceGroupModifyConfig & WithShrinkPolicy(const ShrinkPolicy &value)
Definition: InstanceGroupModifyConfig.h:184
Aws::EMR::Model::InstanceGroupModifyConfig::EC2InstanceIdsToTerminateHasBeenSet
bool EC2InstanceIdsToTerminateHasBeenSet() const
Definition: InstanceGroupModifyConfig.h:116
Configuration.h
Aws::EMR::Model::InstanceGroupModifyConfig::AddEC2InstanceIdsToTerminate
InstanceGroupModifyConfig & AddEC2InstanceIdsToTerminate(const Aws::String &value)
Definition: InstanceGroupModifyConfig.h:146
Aws::EMR::Model::InstanceGroupModifyConfig
Definition: InstanceGroupModifyConfig.h:36
Aws::EMR::Model::InstanceGroupModifyConfig::WithInstanceGroupId
InstanceGroupModifyConfig & WithInstanceGroupId(Aws::String &&value)
Definition: InstanceGroupModifyConfig.h:77
Aws::EMR::Model::InstanceGroupModifyConfig::InstanceGroupModifyConfig
InstanceGroupModifyConfig()
Aws::EMR::Model::InstanceGroupModifyConfig::SetShrinkPolicy
void SetShrinkPolicy(ShrinkPolicy &&value)
Definition: InstanceGroupModifyConfig.h:179
Aws::EMR::Model::InstanceGroupModifyConfig::SetConfigurations
void SetConfigurations(Aws::Vector< Configuration > &&value)
Definition: InstanceGroupModifyConfig.h:210
Aws::EMR::Model::ExecutionEngineType::NOT_SET
@ NOT_SET
Aws::Utils::Json::JsonView
Definition: JsonSerializer.h:222
AWSString.h
Aws::Utils::Json::JsonValue
Definition: JsonSerializer.h:30
Aws::EMR::Model::InstanceGroupModifyConfig::InstanceCountHasBeenSet
bool InstanceCountHasBeenSet() const
Definition: InstanceGroupModifyConfig.h:93
Aws::EMR::Model::InstanceGroupModifyConfig::GetInstanceCount
int GetInstanceCount() const
Definition: InstanceGroupModifyConfig.h:88
Aws::EMR::Model::InstanceGroupModifyConfig::GetEC2InstanceIdsToTerminate
const Aws::Vector< Aws::String > & GetEC2InstanceIdsToTerminate() const
Definition: InstanceGroupModifyConfig.h:110
Aws::EMR::Model::InstanceGroupModifyConfig::WithInstanceGroupId
InstanceGroupModifyConfig & WithInstanceGroupId(const Aws::String &value)
Definition: InstanceGroupModifyConfig.h:72
Aws::EMR::Model::InstanceGroupModifyConfig::SetConfigurations
void SetConfigurations(const Aws::Vector< Configuration > &value)
Definition: InstanceGroupModifyConfig.h:205
Aws::EMR::Model::InstanceGroupModifyConfig::WithEC2InstanceIdsToTerminate
InstanceGroupModifyConfig & WithEC2InstanceIdsToTerminate(Aws::Vector< Aws::String > &&value)
Definition: InstanceGroupModifyConfig.h:140
Aws::EMR::Model::InstanceGroupModifyConfig::WithInstanceGroupId
InstanceGroupModifyConfig & WithInstanceGroupId(const char *value)
Definition: InstanceGroupModifyConfig.h:82
Aws::EMR::Model::InstanceGroupModifyConfig::GetInstanceGroupId
const Aws::String & GetInstanceGroupId() const
Definition: InstanceGroupModifyConfig.h:47
Aws::EMR::Model::InstanceGroupModifyConfig::WithInstanceCount
InstanceGroupModifyConfig & WithInstanceCount(int value)
Definition: InstanceGroupModifyConfig.h:103
Aws::EMR::Model::InstanceGroupModifyConfig::InstanceGroupIdHasBeenSet
bool InstanceGroupIdHasBeenSet() const
Definition: InstanceGroupModifyConfig.h:52
Aws
Definition: AccessManagementClient.h:15
Aws::EMR::Model::InstanceGroupModifyConfig::AddConfigurations
InstanceGroupModifyConfig & AddConfigurations(Configuration &&value)
Definition: InstanceGroupModifyConfig.h:230
Aws::EMR::Model::InstanceGroupModifyConfig::operator=
InstanceGroupModifyConfig & operator=(Aws::Utils::Json::JsonView jsonValue)
Aws::String
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
Aws::EMR::Model::InstanceGroupModifyConfig::SetEC2InstanceIdsToTerminate
void SetEC2InstanceIdsToTerminate(const Aws::Vector< Aws::String > &value)
Definition: InstanceGroupModifyConfig.h:122
Aws::EMR::Model::ShrinkPolicy
Definition: ShrinkPolicy.h:34
AWS_EMR_API
#define AWS_EMR_API
Definition: EMR_EXPORTS.h:28
Aws::EMR::Model::InstanceGroupModifyConfig::ShrinkPolicyHasBeenSet
bool ShrinkPolicyHasBeenSet() const
Definition: InstanceGroupModifyConfig.h:169