7#include <aws/emr-serverless/EMRServerless_EXPORTS.h>
8#include <aws/emr-serverless/EMRServerlessRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSMap.h>
11#include <aws/emr-serverless/model/MaximumAllowedResources.h>
12#include <aws/emr-serverless/model/AutoStartConfig.h>
13#include <aws/emr-serverless/model/AutoStopConfig.h>
14#include <aws/emr-serverless/model/NetworkConfiguration.h>
15#include <aws/emr-serverless/model/Architecture.h>
16#include <aws/emr-serverless/model/ImageConfigurationInput.h>
17#include <aws/core/utils/memory/stl/AWSVector.h>
18#include <aws/emr-serverless/model/MonitoringConfiguration.h>
19#include <aws/emr-serverless/model/InteractiveConfiguration.h>
20#include <aws/emr-serverless/model/SchedulerConfiguration.h>
21#include <aws/emr-serverless/model/IdentityCenterConfigurationInput.h>
22#include <aws/emr-serverless/model/InitialCapacityConfig.h>
23#include <aws/emr-serverless/model/WorkerTypeSpecificationInput.h>
24#include <aws/emr-serverless/model/Configuration.h>
26#include <aws/core/utils/UUID.h>
30namespace EMRServerless
57 template<
typename NameT = Aws::String>
58 void SetName(NameT&& value) { m_nameHasBeenSet =
true; m_name = std::forward<NameT>(value); }
59 template<
typename NameT = Aws::String>
69 template<
typename ReleaseLabelT = Aws::String>
70 void SetReleaseLabel(ReleaseLabelT&& value) { m_releaseLabelHasBeenSet =
true; m_releaseLabel = std::forward<ReleaseLabelT>(value); }
71 template<
typename ReleaseLabelT = Aws::String>
81 template<
typename TypeT = Aws::String>
82 void SetType(TypeT&& value) { m_typeHasBeenSet =
true; m_type = std::forward<TypeT>(value); }
83 template<
typename TypeT = Aws::String>
94 template<
typename ClientTokenT = Aws::String>
95 void SetClientToken(ClientTokenT&& value) { m_clientTokenHasBeenSet =
true; m_clientToken = std::forward<ClientTokenT>(value); }
96 template<
typename ClientTokenT = Aws::String>
106 template<
typename InitialCapacityT = Aws::Map<Aws::String, InitialCapacityConfig>>
107 void SetInitialCapacity(InitialCapacityT&& value) { m_initialCapacityHasBeenSet =
true; m_initialCapacity = std::forward<InitialCapacityT>(value); }
108 template<
typename InitialCapacityT = Aws::Map<Aws::String, InitialCapacityConfig>>
110 template<
typename InitialCapacityKeyT = Aws::String,
typename InitialCapacityValueT = InitialCapacityConfig>
112 m_initialCapacityHasBeenSet =
true; m_initialCapacity.emplace(std::forward<InitialCapacityKeyT>(key), std::forward<InitialCapacityValueT>(value));
return *
this;
125 template<
typename MaximumCapacityT = MaximumAllowedResources>
126 void SetMaximumCapacity(MaximumCapacityT&& value) { m_maximumCapacityHasBeenSet =
true; m_maximumCapacity = std::forward<MaximumCapacityT>(value); }
127 template<
typename MaximumCapacityT = MaximumAllowedResources>
137 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
138 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
139 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
141 template<
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
143 m_tagsHasBeenSet =
true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
return *
this;
154 template<
typename AutoStartConfigurationT = AutoStartConfig>
155 void SetAutoStartConfiguration(AutoStartConfigurationT&& value) { m_autoStartConfigurationHasBeenSet =
true; m_autoStartConfiguration = std::forward<AutoStartConfigurationT>(value); }
156 template<
typename AutoStartConfigurationT = AutoStartConfig>
167 template<
typename AutoStopConfigurationT = AutoStopConfig>
168 void SetAutoStopConfiguration(AutoStopConfigurationT&& value) { m_autoStopConfigurationHasBeenSet =
true; m_autoStopConfiguration = std::forward<AutoStopConfigurationT>(value); }
169 template<
typename AutoStopConfigurationT = AutoStopConfig>
179 template<
typename NetworkConfigurationT = NetworkConfiguration>
180 void SetNetworkConfiguration(NetworkConfigurationT&& value) { m_networkConfigurationHasBeenSet =
true; m_networkConfiguration = std::forward<NetworkConfigurationT>(value); }
181 template<
typename NetworkConfigurationT = NetworkConfiguration>
203 template<
typename ImageConfigurationT = ImageConfigurationInput>
204 void SetImageConfiguration(ImageConfigurationT&& value) { m_imageConfigurationHasBeenSet =
true; m_imageConfiguration = std::forward<ImageConfigurationT>(value); }
205 template<
typename ImageConfigurationT = ImageConfigurationInput>
221 template<
typename WorkerTypeSpecificationsT = Aws::Map<Aws::String, WorkerTypeSpecificationInput>>
222 void SetWorkerTypeSpecifications(WorkerTypeSpecificationsT&& value) { m_workerTypeSpecificationsHasBeenSet =
true; m_workerTypeSpecifications = std::forward<WorkerTypeSpecificationsT>(value); }
223 template<
typename WorkerTypeSpecificationsT = Aws::Map<Aws::String, WorkerTypeSpecificationInput>>
225 template<
typename WorkerTypeSpecificationsKeyT = Aws::String,
typename WorkerTypeSpecificationsValueT = WorkerTypeSpecificationInput>
227 m_workerTypeSpecificationsHasBeenSet =
true; m_workerTypeSpecifications.emplace(std::forward<WorkerTypeSpecificationsKeyT>(key), std::forward<WorkerTypeSpecificationsValueT>(value));
return *
this;
241 template<
typename RuntimeConfigurationT = Aws::Vector<Configuration>>
242 void SetRuntimeConfiguration(RuntimeConfigurationT&& value) { m_runtimeConfigurationHasBeenSet =
true; m_runtimeConfiguration = std::forward<RuntimeConfigurationT>(value); }
243 template<
typename RuntimeConfigurationT = Aws::Vector<Configuration>>
245 template<
typename RuntimeConfigurationT = Configuration>
255 template<
typename MonitoringConfigurationT = MonitoringConfiguration>
256 void SetMonitoringConfiguration(MonitoringConfigurationT&& value) { m_monitoringConfigurationHasBeenSet =
true; m_monitoringConfiguration = std::forward<MonitoringConfigurationT>(value); }
257 template<
typename MonitoringConfigurationT = MonitoringConfiguration>
268 template<
typename InteractiveConfigurationT = InteractiveConfiguration>
269 void SetInteractiveConfiguration(InteractiveConfigurationT&& value) { m_interactiveConfigurationHasBeenSet =
true; m_interactiveConfiguration = std::forward<InteractiveConfigurationT>(value); }
270 template<
typename InteractiveConfigurationT = InteractiveConfiguration>
281 template<
typename SchedulerConfigurationT = SchedulerConfiguration>
282 void SetSchedulerConfiguration(SchedulerConfigurationT&& value) { m_schedulerConfigurationHasBeenSet =
true; m_schedulerConfiguration = std::forward<SchedulerConfigurationT>(value); }
283 template<
typename SchedulerConfigurationT = SchedulerConfiguration>
296 template<
typename IdentityCenterConfigurationT = IdentityCenterConfigurationInput>
297 void SetIdentityCenterConfiguration(IdentityCenterConfigurationT&& value) { m_identityCenterConfigurationHasBeenSet =
true; m_identityCenterConfiguration = std::forward<IdentityCenterConfigurationT>(value); }
298 template<
typename IdentityCenterConfigurationT = IdentityCenterConfigurationInput>
304 bool m_nameHasBeenSet =
false;
307 bool m_releaseLabelHasBeenSet =
false;
310 bool m_typeHasBeenSet =
false;
313 bool m_clientTokenHasBeenSet =
true;
316 bool m_initialCapacityHasBeenSet =
false;
318 MaximumAllowedResources m_maximumCapacity;
319 bool m_maximumCapacityHasBeenSet =
false;
322 bool m_tagsHasBeenSet =
false;
324 AutoStartConfig m_autoStartConfiguration;
325 bool m_autoStartConfigurationHasBeenSet =
false;
327 AutoStopConfig m_autoStopConfiguration;
328 bool m_autoStopConfigurationHasBeenSet =
false;
330 NetworkConfiguration m_networkConfiguration;
331 bool m_networkConfigurationHasBeenSet =
false;
334 bool m_architectureHasBeenSet =
false;
336 ImageConfigurationInput m_imageConfiguration;
337 bool m_imageConfigurationHasBeenSet =
false;
340 bool m_workerTypeSpecificationsHasBeenSet =
false;
343 bool m_runtimeConfigurationHasBeenSet =
false;
345 MonitoringConfiguration m_monitoringConfiguration;
346 bool m_monitoringConfigurationHasBeenSet =
false;
348 InteractiveConfiguration m_interactiveConfiguration;
349 bool m_interactiveConfigurationHasBeenSet =
false;
351 SchedulerConfiguration m_schedulerConfiguration;
352 bool m_schedulerConfigurationHasBeenSet =
false;
354 IdentityCenterConfigurationInput m_identityCenterConfiguration;
355 bool m_identityCenterConfigurationHasBeenSet =
false;
CreateApplicationRequest & AddWorkerTypeSpecifications(WorkerTypeSpecificationsKeyT &&key, WorkerTypeSpecificationsValueT &&value)
const Aws::String & GetReleaseLabel() const
void SetNetworkConfiguration(NetworkConfigurationT &&value)
const Aws::String & GetName() const
CreateApplicationRequest & WithIdentityCenterConfiguration(IdentityCenterConfigurationT &&value)
AWS_EMRSERVERLESS_API CreateApplicationRequest()=default
bool NetworkConfigurationHasBeenSet() const
const AutoStopConfig & GetAutoStopConfiguration() const
AWS_EMRSERVERLESS_API Aws::String SerializePayload() const override
bool TypeHasBeenSet() const
void SetType(TypeT &&value)
const Aws::Vector< Configuration > & GetRuntimeConfiguration() const
bool IdentityCenterConfigurationHasBeenSet() const
CreateApplicationRequest & WithImageConfiguration(ImageConfigurationT &&value)
bool NameHasBeenSet() const
bool AutoStartConfigurationHasBeenSet() const
CreateApplicationRequest & WithName(NameT &&value)
bool ClientTokenHasBeenSet() const
CreateApplicationRequest & WithNetworkConfiguration(NetworkConfigurationT &&value)
CreateApplicationRequest & AddInitialCapacity(InitialCapacityKeyT &&key, InitialCapacityValueT &&value)
const Aws::String & GetClientToken() const
CreateApplicationRequest & WithInteractiveConfiguration(InteractiveConfigurationT &&value)
void SetMonitoringConfiguration(MonitoringConfigurationT &&value)
bool ImageConfigurationHasBeenSet() const
void SetClientToken(ClientTokenT &&value)
void SetTags(TagsT &&value)
bool MonitoringConfigurationHasBeenSet() const
CreateApplicationRequest & WithClientToken(ClientTokenT &&value)
void SetSchedulerConfiguration(SchedulerConfigurationT &&value)
const MonitoringConfiguration & GetMonitoringConfiguration() const
const Aws::Map< Aws::String, InitialCapacityConfig > & GetInitialCapacity() const
void SetReleaseLabel(ReleaseLabelT &&value)
const NetworkConfiguration & GetNetworkConfiguration() const
CreateApplicationRequest & WithAutoStopConfiguration(AutoStopConfigurationT &&value)
CreateApplicationRequest & WithInitialCapacity(InitialCapacityT &&value)
bool MaximumCapacityHasBeenSet() const
CreateApplicationRequest & WithMaximumCapacity(MaximumCapacityT &&value)
const AutoStartConfig & GetAutoStartConfiguration() const
bool InteractiveConfigurationHasBeenSet() const
CreateApplicationRequest & WithWorkerTypeSpecifications(WorkerTypeSpecificationsT &&value)
const SchedulerConfiguration & GetSchedulerConfiguration() const
void SetIdentityCenterConfiguration(IdentityCenterConfigurationT &&value)
void SetInitialCapacity(InitialCapacityT &&value)
const Aws::Map< Aws::String, WorkerTypeSpecificationInput > & GetWorkerTypeSpecifications() const
const Aws::Map< Aws::String, Aws::String > & GetTags() const
void SetMaximumCapacity(MaximumCapacityT &&value)
CreateApplicationRequest & WithArchitecture(Architecture value)
CreateApplicationRequest & WithReleaseLabel(ReleaseLabelT &&value)
bool AutoStopConfigurationHasBeenSet() const
void SetAutoStopConfiguration(AutoStopConfigurationT &&value)
bool InitialCapacityHasBeenSet() const
bool ReleaseLabelHasBeenSet() const
CreateApplicationRequest & AddRuntimeConfiguration(RuntimeConfigurationT &&value)
bool RuntimeConfigurationHasBeenSet() const
const Aws::String & GetType() const
virtual const char * GetServiceRequestName() const override
void SetInteractiveConfiguration(InteractiveConfigurationT &&value)
const IdentityCenterConfigurationInput & GetIdentityCenterConfiguration() const
Architecture GetArchitecture() const
CreateApplicationRequest & WithMonitoringConfiguration(MonitoringConfigurationT &&value)
bool ArchitectureHasBeenSet() const
void SetArchitecture(Architecture value)
bool TagsHasBeenSet() const
const InteractiveConfiguration & GetInteractiveConfiguration() const
void SetImageConfiguration(ImageConfigurationT &&value)
bool WorkerTypeSpecificationsHasBeenSet() const
CreateApplicationRequest & WithRuntimeConfiguration(RuntimeConfigurationT &&value)
void SetWorkerTypeSpecifications(WorkerTypeSpecificationsT &&value)
CreateApplicationRequest & WithType(TypeT &&value)
void SetRuntimeConfiguration(RuntimeConfigurationT &&value)
const MaximumAllowedResources & GetMaximumCapacity() const
bool SchedulerConfigurationHasBeenSet() const
void SetName(NameT &&value)
CreateApplicationRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
CreateApplicationRequest & WithTags(TagsT &&value)
CreateApplicationRequest & WithSchedulerConfiguration(SchedulerConfigurationT &&value)
const ImageConfigurationInput & GetImageConfiguration() const
void SetAutoStartConfiguration(AutoStartConfigurationT &&value)
CreateApplicationRequest & WithAutoStartConfiguration(AutoStartConfigurationT &&value)
static Aws::Utils::UUID PseudoRandomUUID()
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector