AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
InstanceGroupModifyConfig.h
1
6#pragma once
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>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Json
20{
21 class JsonValue;
22 class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace EMR
26{
27namespace Model
28{
29
37 {
38 public:
43
44
46
49 inline const Aws::String& GetInstanceGroupId() const{ return m_instanceGroupId; }
50 inline bool InstanceGroupIdHasBeenSet() const { return m_instanceGroupIdHasBeenSet; }
51 inline void SetInstanceGroupId(const Aws::String& value) { m_instanceGroupIdHasBeenSet = true; m_instanceGroupId = value; }
52 inline void SetInstanceGroupId(Aws::String&& value) { m_instanceGroupIdHasBeenSet = true; m_instanceGroupId = std::move(value); }
53 inline void SetInstanceGroupId(const char* value) { m_instanceGroupIdHasBeenSet = true; m_instanceGroupId.assign(value); }
54 inline InstanceGroupModifyConfig& WithInstanceGroupId(const Aws::String& value) { SetInstanceGroupId(value); return *this;}
55 inline InstanceGroupModifyConfig& WithInstanceGroupId(Aws::String&& value) { SetInstanceGroupId(std::move(value)); return *this;}
56 inline InstanceGroupModifyConfig& WithInstanceGroupId(const char* value) { SetInstanceGroupId(value); return *this;}
58
60
63 inline int GetInstanceCount() const{ return m_instanceCount; }
64 inline bool InstanceCountHasBeenSet() const { return m_instanceCountHasBeenSet; }
65 inline void SetInstanceCount(int value) { m_instanceCountHasBeenSet = true; m_instanceCount = value; }
66 inline InstanceGroupModifyConfig& WithInstanceCount(int value) { SetInstanceCount(value); return *this;}
68
70
74 inline const Aws::Vector<Aws::String>& GetEC2InstanceIdsToTerminate() const{ return m_eC2InstanceIdsToTerminate; }
75 inline bool EC2InstanceIdsToTerminateHasBeenSet() const { return m_eC2InstanceIdsToTerminateHasBeenSet; }
76 inline void SetEC2InstanceIdsToTerminate(const Aws::Vector<Aws::String>& value) { m_eC2InstanceIdsToTerminateHasBeenSet = true; m_eC2InstanceIdsToTerminate = value; }
77 inline void SetEC2InstanceIdsToTerminate(Aws::Vector<Aws::String>&& value) { m_eC2InstanceIdsToTerminateHasBeenSet = true; m_eC2InstanceIdsToTerminate = std::move(value); }
80 inline InstanceGroupModifyConfig& AddEC2InstanceIdsToTerminate(const Aws::String& value) { m_eC2InstanceIdsToTerminateHasBeenSet = true; m_eC2InstanceIdsToTerminate.push_back(value); return *this; }
81 inline InstanceGroupModifyConfig& AddEC2InstanceIdsToTerminate(Aws::String&& value) { m_eC2InstanceIdsToTerminateHasBeenSet = true; m_eC2InstanceIdsToTerminate.push_back(std::move(value)); return *this; }
82 inline InstanceGroupModifyConfig& AddEC2InstanceIdsToTerminate(const char* value) { m_eC2InstanceIdsToTerminateHasBeenSet = true; m_eC2InstanceIdsToTerminate.push_back(value); return *this; }
84
86
89 inline const ShrinkPolicy& GetShrinkPolicy() const{ return m_shrinkPolicy; }
90 inline bool ShrinkPolicyHasBeenSet() const { return m_shrinkPolicyHasBeenSet; }
91 inline void SetShrinkPolicy(const ShrinkPolicy& value) { m_shrinkPolicyHasBeenSet = true; m_shrinkPolicy = value; }
92 inline void SetShrinkPolicy(ShrinkPolicy&& value) { m_shrinkPolicyHasBeenSet = true; m_shrinkPolicy = std::move(value); }
93 inline InstanceGroupModifyConfig& WithShrinkPolicy(const ShrinkPolicy& value) { SetShrinkPolicy(value); return *this;}
94 inline InstanceGroupModifyConfig& WithShrinkPolicy(ShrinkPolicy&& value) { SetShrinkPolicy(std::move(value)); return *this;}
96
98
101 inline const ReconfigurationType& GetReconfigurationType() const{ return m_reconfigurationType; }
102 inline bool ReconfigurationTypeHasBeenSet() const { return m_reconfigurationTypeHasBeenSet; }
103 inline void SetReconfigurationType(const ReconfigurationType& value) { m_reconfigurationTypeHasBeenSet = true; m_reconfigurationType = value; }
104 inline void SetReconfigurationType(ReconfigurationType&& value) { m_reconfigurationTypeHasBeenSet = true; m_reconfigurationType = std::move(value); }
108
110
113 inline const Aws::Vector<Configuration>& GetConfigurations() const{ return m_configurations; }
114 inline bool ConfigurationsHasBeenSet() const { return m_configurationsHasBeenSet; }
115 inline void SetConfigurations(const Aws::Vector<Configuration>& value) { m_configurationsHasBeenSet = true; m_configurations = value; }
116 inline void SetConfigurations(Aws::Vector<Configuration>&& value) { m_configurationsHasBeenSet = true; m_configurations = std::move(value); }
119 inline InstanceGroupModifyConfig& AddConfigurations(const Configuration& value) { m_configurationsHasBeenSet = true; m_configurations.push_back(value); return *this; }
120 inline InstanceGroupModifyConfig& AddConfigurations(Configuration&& value) { m_configurationsHasBeenSet = true; m_configurations.push_back(std::move(value)); return *this; }
122 private:
123
124 Aws::String m_instanceGroupId;
125 bool m_instanceGroupIdHasBeenSet = false;
126
127 int m_instanceCount;
128 bool m_instanceCountHasBeenSet = false;
129
130 Aws::Vector<Aws::String> m_eC2InstanceIdsToTerminate;
131 bool m_eC2InstanceIdsToTerminateHasBeenSet = false;
132
133 ShrinkPolicy m_shrinkPolicy;
134 bool m_shrinkPolicyHasBeenSet = false;
135
136 ReconfigurationType m_reconfigurationType;
137 bool m_reconfigurationTypeHasBeenSet = false;
138
139 Aws::Vector<Configuration> m_configurations;
140 bool m_configurationsHasBeenSet = false;
141 };
142
143} // namespace Model
144} // namespace EMR
145} // namespace Aws
const Aws::Vector< Configuration > & GetConfigurations() const
InstanceGroupModifyConfig & WithShrinkPolicy(const ShrinkPolicy &value)
void SetConfigurations(Aws::Vector< Configuration > &&value)
InstanceGroupModifyConfig & WithInstanceGroupId(const char *value)
InstanceGroupModifyConfig & WithInstanceCount(int value)
InstanceGroupModifyConfig & AddEC2InstanceIdsToTerminate(const Aws::String &value)
InstanceGroupModifyConfig & WithEC2InstanceIdsToTerminate(Aws::Vector< Aws::String > &&value)
InstanceGroupModifyConfig & AddEC2InstanceIdsToTerminate(const char *value)
InstanceGroupModifyConfig & AddConfigurations(const Configuration &value)
void SetConfigurations(const Aws::Vector< Configuration > &value)
void SetReconfigurationType(const ReconfigurationType &value)
void SetEC2InstanceIdsToTerminate(const Aws::Vector< Aws::String > &value)
void SetReconfigurationType(ReconfigurationType &&value)
AWS_EMR_API Aws::Utils::Json::JsonValue Jsonize() const
InstanceGroupModifyConfig & WithInstanceGroupId(Aws::String &&value)
InstanceGroupModifyConfig & AddEC2InstanceIdsToTerminate(Aws::String &&value)
InstanceGroupModifyConfig & WithShrinkPolicy(ShrinkPolicy &&value)
InstanceGroupModifyConfig & WithReconfigurationType(ReconfigurationType &&value)
InstanceGroupModifyConfig & WithConfigurations(const Aws::Vector< Configuration > &value)
void SetEC2InstanceIdsToTerminate(Aws::Vector< Aws::String > &&value)
const Aws::Vector< Aws::String > & GetEC2InstanceIdsToTerminate() const
AWS_EMR_API InstanceGroupModifyConfig(Aws::Utils::Json::JsonView jsonValue)
InstanceGroupModifyConfig & WithConfigurations(Aws::Vector< Configuration > &&value)
InstanceGroupModifyConfig & WithReconfigurationType(const ReconfigurationType &value)
InstanceGroupModifyConfig & WithInstanceGroupId(const Aws::String &value)
const ReconfigurationType & GetReconfigurationType() const
AWS_EMR_API InstanceGroupModifyConfig & operator=(Aws::Utils::Json::JsonView jsonValue)
InstanceGroupModifyConfig & WithEC2InstanceIdsToTerminate(const Aws::Vector< Aws::String > &value)
InstanceGroupModifyConfig & AddConfigurations(Configuration &&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