AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
InstanceGroupConfig.h
1
6#pragma once
7#include <aws/elasticmapreduce/EMR_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/elasticmapreduce/model/MarketType.h>
10#include <aws/elasticmapreduce/model/InstanceRoleType.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/elasticmapreduce/model/EbsConfiguration.h>
13#include <aws/elasticmapreduce/model/AutoScalingPolicy.h>
14#include <aws/elasticmapreduce/model/Configuration.h>
15#include <utility>
16
17namespace Aws
18{
19namespace Utils
20{
21namespace Json
22{
23 class JsonValue;
24 class JsonView;
25} // namespace Json
26} // namespace Utils
27namespace EMR
28{
29namespace Model
30{
31
38 {
39 public:
40 AWS_EMR_API InstanceGroupConfig();
44
45
47
50 inline const Aws::String& GetName() const{ return m_name; }
51 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
52 inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
53 inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
54 inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
55 inline InstanceGroupConfig& WithName(const Aws::String& value) { SetName(value); return *this;}
56 inline InstanceGroupConfig& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
57 inline InstanceGroupConfig& WithName(const char* value) { SetName(value); return *this;}
59
61
64 inline const MarketType& GetMarket() const{ return m_market; }
65 inline bool MarketHasBeenSet() const { return m_marketHasBeenSet; }
66 inline void SetMarket(const MarketType& value) { m_marketHasBeenSet = true; m_market = value; }
67 inline void SetMarket(MarketType&& value) { m_marketHasBeenSet = true; m_market = std::move(value); }
68 inline InstanceGroupConfig& WithMarket(const MarketType& value) { SetMarket(value); return *this;}
69 inline InstanceGroupConfig& WithMarket(MarketType&& value) { SetMarket(std::move(value)); return *this;}
71
73
76 inline const InstanceRoleType& GetInstanceRole() const{ return m_instanceRole; }
77 inline bool InstanceRoleHasBeenSet() const { return m_instanceRoleHasBeenSet; }
78 inline void SetInstanceRole(const InstanceRoleType& value) { m_instanceRoleHasBeenSet = true; m_instanceRole = value; }
79 inline void SetInstanceRole(InstanceRoleType&& value) { m_instanceRoleHasBeenSet = true; m_instanceRole = std::move(value); }
80 inline InstanceGroupConfig& WithInstanceRole(const InstanceRoleType& value) { SetInstanceRole(value); return *this;}
81 inline InstanceGroupConfig& WithInstanceRole(InstanceRoleType&& value) { SetInstanceRole(std::move(value)); return *this;}
83
85
91 inline const Aws::String& GetBidPrice() const{ return m_bidPrice; }
92 inline bool BidPriceHasBeenSet() const { return m_bidPriceHasBeenSet; }
93 inline void SetBidPrice(const Aws::String& value) { m_bidPriceHasBeenSet = true; m_bidPrice = value; }
94 inline void SetBidPrice(Aws::String&& value) { m_bidPriceHasBeenSet = true; m_bidPrice = std::move(value); }
95 inline void SetBidPrice(const char* value) { m_bidPriceHasBeenSet = true; m_bidPrice.assign(value); }
96 inline InstanceGroupConfig& WithBidPrice(const Aws::String& value) { SetBidPrice(value); return *this;}
97 inline InstanceGroupConfig& WithBidPrice(Aws::String&& value) { SetBidPrice(std::move(value)); return *this;}
98 inline InstanceGroupConfig& WithBidPrice(const char* value) { SetBidPrice(value); return *this;}
100
102
105 inline const Aws::String& GetInstanceType() const{ return m_instanceType; }
106 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
107 inline void SetInstanceType(const Aws::String& value) { m_instanceTypeHasBeenSet = true; m_instanceType = value; }
108 inline void SetInstanceType(Aws::String&& value) { m_instanceTypeHasBeenSet = true; m_instanceType = std::move(value); }
109 inline void SetInstanceType(const char* value) { m_instanceTypeHasBeenSet = true; m_instanceType.assign(value); }
110 inline InstanceGroupConfig& WithInstanceType(const Aws::String& value) { SetInstanceType(value); return *this;}
111 inline InstanceGroupConfig& WithInstanceType(Aws::String&& value) { SetInstanceType(std::move(value)); return *this;}
112 inline InstanceGroupConfig& WithInstanceType(const char* value) { SetInstanceType(value); return *this;}
114
116
119 inline int GetInstanceCount() const{ return m_instanceCount; }
120 inline bool InstanceCountHasBeenSet() const { return m_instanceCountHasBeenSet; }
121 inline void SetInstanceCount(int value) { m_instanceCountHasBeenSet = true; m_instanceCount = value; }
122 inline InstanceGroupConfig& WithInstanceCount(int value) { SetInstanceCount(value); return *this;}
124
126
132 inline const Aws::Vector<Configuration>& GetConfigurations() const{ return m_configurations; }
133 inline bool ConfigurationsHasBeenSet() const { return m_configurationsHasBeenSet; }
134 inline void SetConfigurations(const Aws::Vector<Configuration>& value) { m_configurationsHasBeenSet = true; m_configurations = value; }
135 inline void SetConfigurations(Aws::Vector<Configuration>&& value) { m_configurationsHasBeenSet = true; m_configurations = std::move(value); }
137 inline InstanceGroupConfig& WithConfigurations(Aws::Vector<Configuration>&& value) { SetConfigurations(std::move(value)); return *this;}
138 inline InstanceGroupConfig& AddConfigurations(const Configuration& value) { m_configurationsHasBeenSet = true; m_configurations.push_back(value); return *this; }
139 inline InstanceGroupConfig& AddConfigurations(Configuration&& value) { m_configurationsHasBeenSet = true; m_configurations.push_back(std::move(value)); return *this; }
141
143
147 inline const EbsConfiguration& GetEbsConfiguration() const{ return m_ebsConfiguration; }
148 inline bool EbsConfigurationHasBeenSet() const { return m_ebsConfigurationHasBeenSet; }
149 inline void SetEbsConfiguration(const EbsConfiguration& value) { m_ebsConfigurationHasBeenSet = true; m_ebsConfiguration = value; }
150 inline void SetEbsConfiguration(EbsConfiguration&& value) { m_ebsConfigurationHasBeenSet = true; m_ebsConfiguration = std::move(value); }
152 inline InstanceGroupConfig& WithEbsConfiguration(EbsConfiguration&& value) { SetEbsConfiguration(std::move(value)); return *this;}
154
156
162 inline const AutoScalingPolicy& GetAutoScalingPolicy() const{ return m_autoScalingPolicy; }
163 inline bool AutoScalingPolicyHasBeenSet() const { return m_autoScalingPolicyHasBeenSet; }
164 inline void SetAutoScalingPolicy(const AutoScalingPolicy& value) { m_autoScalingPolicyHasBeenSet = true; m_autoScalingPolicy = value; }
165 inline void SetAutoScalingPolicy(AutoScalingPolicy&& value) { m_autoScalingPolicyHasBeenSet = true; m_autoScalingPolicy = std::move(value); }
167 inline InstanceGroupConfig& WithAutoScalingPolicy(AutoScalingPolicy&& value) { SetAutoScalingPolicy(std::move(value)); return *this;}
169
171
174 inline const Aws::String& GetCustomAmiId() const{ return m_customAmiId; }
175 inline bool CustomAmiIdHasBeenSet() const { return m_customAmiIdHasBeenSet; }
176 inline void SetCustomAmiId(const Aws::String& value) { m_customAmiIdHasBeenSet = true; m_customAmiId = value; }
177 inline void SetCustomAmiId(Aws::String&& value) { m_customAmiIdHasBeenSet = true; m_customAmiId = std::move(value); }
178 inline void SetCustomAmiId(const char* value) { m_customAmiIdHasBeenSet = true; m_customAmiId.assign(value); }
179 inline InstanceGroupConfig& WithCustomAmiId(const Aws::String& value) { SetCustomAmiId(value); return *this;}
180 inline InstanceGroupConfig& WithCustomAmiId(Aws::String&& value) { SetCustomAmiId(std::move(value)); return *this;}
181 inline InstanceGroupConfig& WithCustomAmiId(const char* value) { SetCustomAmiId(value); return *this;}
183 private:
184
185 Aws::String m_name;
186 bool m_nameHasBeenSet = false;
187
188 MarketType m_market;
189 bool m_marketHasBeenSet = false;
190
191 InstanceRoleType m_instanceRole;
192 bool m_instanceRoleHasBeenSet = false;
193
194 Aws::String m_bidPrice;
195 bool m_bidPriceHasBeenSet = false;
196
197 Aws::String m_instanceType;
198 bool m_instanceTypeHasBeenSet = false;
199
200 int m_instanceCount;
201 bool m_instanceCountHasBeenSet = false;
202
203 Aws::Vector<Configuration> m_configurations;
204 bool m_configurationsHasBeenSet = false;
205
206 EbsConfiguration m_ebsConfiguration;
207 bool m_ebsConfigurationHasBeenSet = false;
208
209 AutoScalingPolicy m_autoScalingPolicy;
210 bool m_autoScalingPolicyHasBeenSet = false;
211
212 Aws::String m_customAmiId;
213 bool m_customAmiIdHasBeenSet = false;
214 };
215
216} // namespace Model
217} // namespace EMR
218} // namespace Aws
const Aws::Vector< Configuration > & GetConfigurations() const
InstanceGroupConfig & WithInstanceRole(InstanceRoleType &&value)
InstanceGroupConfig & WithAutoScalingPolicy(const AutoScalingPolicy &value)
InstanceGroupConfig & WithAutoScalingPolicy(AutoScalingPolicy &&value)
InstanceGroupConfig & WithName(Aws::String &&value)
InstanceGroupConfig & WithConfigurations(const Aws::Vector< Configuration > &value)
InstanceGroupConfig & AddConfigurations(const Configuration &value)
const Aws::String & GetName() const
void SetEbsConfiguration(EbsConfiguration &&value)
const InstanceRoleType & GetInstanceRole() const
InstanceGroupConfig & WithCustomAmiId(Aws::String &&value)
InstanceGroupConfig & WithBidPrice(const char *value)
InstanceGroupConfig & WithInstanceRole(const InstanceRoleType &value)
const Aws::String & GetBidPrice() const
InstanceGroupConfig & WithBidPrice(const Aws::String &value)
const EbsConfiguration & GetEbsConfiguration() const
void SetMarket(const MarketType &value)
InstanceGroupConfig & WithCustomAmiId(const char *value)
InstanceGroupConfig & WithMarket(const MarketType &value)
InstanceGroupConfig & WithBidPrice(Aws::String &&value)
InstanceGroupConfig & AddConfigurations(Configuration &&value)
void SetConfigurations(Aws::Vector< Configuration > &&value)
void SetInstanceRole(const InstanceRoleType &value)
InstanceGroupConfig & WithConfigurations(Aws::Vector< Configuration > &&value)
void SetInstanceType(Aws::String &&value)
InstanceGroupConfig & WithInstanceCount(int value)
InstanceGroupConfig & WithName(const char *value)
AWS_EMR_API Aws::Utils::Json::JsonValue Jsonize() const
void SetCustomAmiId(const Aws::String &value)
InstanceGroupConfig & WithInstanceType(Aws::String &&value)
InstanceGroupConfig & WithInstanceType(const char *value)
void SetAutoScalingPolicy(AutoScalingPolicy &&value)
void SetAutoScalingPolicy(const AutoScalingPolicy &value)
InstanceGroupConfig & WithEbsConfiguration(EbsConfiguration &&value)
void SetConfigurations(const Aws::Vector< Configuration > &value)
const Aws::String & GetCustomAmiId() const
void SetInstanceRole(InstanceRoleType &&value)
AWS_EMR_API InstanceGroupConfig(Aws::Utils::Json::JsonView jsonValue)
AWS_EMR_API InstanceGroupConfig & operator=(Aws::Utils::Json::JsonView jsonValue)
InstanceGroupConfig & WithCustomAmiId(const Aws::String &value)
void SetBidPrice(const Aws::String &value)
InstanceGroupConfig & WithEbsConfiguration(const EbsConfiguration &value)
const Aws::String & GetInstanceType() const
const AutoScalingPolicy & GetAutoScalingPolicy() const
InstanceGroupConfig & WithInstanceType(const Aws::String &value)
void SetInstanceType(const Aws::String &value)
void SetName(const Aws::String &value)
InstanceGroupConfig & WithName(const Aws::String &value)
void SetEbsConfiguration(const EbsConfiguration &value)
InstanceGroupConfig & WithMarket(MarketType &&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