7#include <aws/elasticmapreduce/EMR_EXPORTS.h>
8#include <aws/elasticmapreduce/EMRRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/elasticmapreduce/model/JobFlowInstancesConfig.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/elasticmapreduce/model/ScaleDownBehavior.h>
13#include <aws/elasticmapreduce/model/RepoUpgradeOnBoot.h>
14#include <aws/elasticmapreduce/model/KerberosAttributes.h>
15#include <aws/elasticmapreduce/model/ManagedScalingPolicy.h>
16#include <aws/elasticmapreduce/model/AutoTerminationPolicy.h>
17#include <aws/elasticmapreduce/model/StepConfig.h>
18#include <aws/elasticmapreduce/model/BootstrapActionConfig.h>
19#include <aws/elasticmapreduce/model/SupportedProductConfig.h>
20#include <aws/elasticmapreduce/model/Application.h>
21#include <aws/elasticmapreduce/model/Configuration.h>
22#include <aws/elasticmapreduce/model/Tag.h>
23#include <aws/elasticmapreduce/model/PlacementGroupConfig.h>
62 inline void SetName(
const char* value) { m_nameHasBeenSet =
true; m_name.assign(value); }
77 inline void SetLogUri(
const char* value) { m_logUriHasBeenSet =
true; m_logUri.assign(value); }
93 inline void SetLogEncryptionKmsKeyId(
const char* value) { m_logEncryptionKmsKeyIdHasBeenSet =
true; m_logEncryptionKmsKeyId.assign(value); }
107 inline void SetAdditionalInfo(
const char* value) { m_additionalInfoHasBeenSet =
true; m_additionalInfo.assign(value); }
123 inline void SetAmiVersion(
const char* value) { m_amiVersionHasBeenSet =
true; m_amiVersion.assign(value); }
144 inline void SetReleaseLabel(
const char* value) { m_releaseLabelHasBeenSet =
true; m_releaseLabel.assign(value); }
295 inline void SetVisibleToAllUsers(
bool value) { m_visibleToAllUsersHasBeenSet =
true; m_visibleToAllUsers = value; }
310 inline void SetJobFlowRole(
const char* value) { m_jobFlowRoleHasBeenSet =
true; m_jobFlowRole.assign(value); }
326 inline void SetServiceRole(
const char* value) { m_serviceRoleHasBeenSet =
true; m_serviceRole.assign(value); }
355 inline void SetSecurityConfiguration(
const char* value) { m_securityConfigurationHasBeenSet =
true; m_securityConfiguration.assign(value); }
372 inline void SetAutoScalingRole(
const char* value) { m_autoScalingRoleHasBeenSet =
true; m_autoScalingRole.assign(value); }
423 inline void SetCustomAmiId(
const char* value) { m_customAmiIdHasBeenSet =
true; m_customAmiId.assign(value); }
437 inline void SetEbsRootVolumeSize(
int value) { m_ebsRootVolumeSizeHasBeenSet =
true; m_ebsRootVolumeSize = value; }
529 inline void SetOSReleaseLabel(
const char* value) { m_oSReleaseLabelHasBeenSet =
true; m_oSReleaseLabel.assign(value); }
543 inline void SetEbsRootVolumeIops(
int value) { m_ebsRootVolumeIopsHasBeenSet =
true; m_ebsRootVolumeIops = value; }
561 bool m_nameHasBeenSet =
false;
564 bool m_logUriHasBeenSet =
false;
567 bool m_logEncryptionKmsKeyIdHasBeenSet =
false;
570 bool m_additionalInfoHasBeenSet =
false;
573 bool m_amiVersionHasBeenSet =
false;
576 bool m_releaseLabelHasBeenSet =
false;
579 bool m_instancesHasBeenSet =
false;
582 bool m_stepsHasBeenSet =
false;
585 bool m_bootstrapActionsHasBeenSet =
false;
588 bool m_supportedProductsHasBeenSet =
false;
591 bool m_newSupportedProductsHasBeenSet =
false;
594 bool m_applicationsHasBeenSet =
false;
597 bool m_configurationsHasBeenSet =
false;
599 bool m_visibleToAllUsers;
600 bool m_visibleToAllUsersHasBeenSet =
false;
603 bool m_jobFlowRoleHasBeenSet =
false;
606 bool m_serviceRoleHasBeenSet =
false;
609 bool m_tagsHasBeenSet =
false;
612 bool m_securityConfigurationHasBeenSet =
false;
615 bool m_autoScalingRoleHasBeenSet =
false;
618 bool m_scaleDownBehaviorHasBeenSet =
false;
621 bool m_customAmiIdHasBeenSet =
false;
623 int m_ebsRootVolumeSize;
624 bool m_ebsRootVolumeSizeHasBeenSet =
false;
627 bool m_repoUpgradeOnBootHasBeenSet =
false;
630 bool m_kerberosAttributesHasBeenSet =
false;
632 int m_stepConcurrencyLevel;
633 bool m_stepConcurrencyLevelHasBeenSet =
false;
636 bool m_managedScalingPolicyHasBeenSet =
false;
639 bool m_placementGroupConfigsHasBeenSet =
false;
642 bool m_autoTerminationPolicyHasBeenSet =
false;
645 bool m_oSReleaseLabelHasBeenSet =
false;
647 int m_ebsRootVolumeIops;
648 bool m_ebsRootVolumeIopsHasBeenSet =
false;
650 int m_ebsRootVolumeThroughput;
651 bool m_ebsRootVolumeThroughputHasBeenSet =
false;
void SetLogEncryptionKmsKeyId(const Aws::String &value)
const Aws::Vector< Application > & GetApplications() const
RunJobFlowRequest & WithRepoUpgradeOnBoot(const RepoUpgradeOnBoot &value)
RunJobFlowRequest & AddTags(const Tag &value)
void SetName(const Aws::String &value)
bool LogEncryptionKmsKeyIdHasBeenSet() const
RunJobFlowRequest & WithStepConcurrencyLevel(int value)
RunJobFlowRequest & WithSteps(Aws::Vector< StepConfig > &&value)
const Aws::String & GetReleaseLabel() const
RunJobFlowRequest & WithServiceRole(Aws::String &&value)
void SetAdditionalInfo(const Aws::String &value)
void SetCustomAmiId(Aws::String &&value)
RunJobFlowRequest & WithOSReleaseLabel(Aws::String &&value)
const Aws::Vector< SupportedProductConfig > & GetNewSupportedProducts() const
const Aws::Vector< StepConfig > & GetSteps() const
bool AutoTerminationPolicyHasBeenSet() const
const Aws::Vector< Tag > & GetTags() const
void SetSteps(const Aws::Vector< StepConfig > &value)
RunJobFlowRequest & WithAutoScalingRole(const Aws::String &value)
void SetManagedScalingPolicy(ManagedScalingPolicy &&value)
RunJobFlowRequest & AddPlacementGroupConfigs(const PlacementGroupConfig &value)
RunJobFlowRequest & WithServiceRole(const Aws::String &value)
void SetOSReleaseLabel(const char *value)
RunJobFlowRequest & AddApplications(Application &&value)
void SetSupportedProducts(Aws::Vector< Aws::String > &&value)
void SetAutoTerminationPolicy(const AutoTerminationPolicy &value)
RunJobFlowRequest & WithConfigurations(const Aws::Vector< Configuration > &value)
bool EbsRootVolumeThroughputHasBeenSet() const
RunJobFlowRequest & WithAmiVersion(Aws::String &&value)
void SetSupportedProducts(const Aws::Vector< Aws::String > &value)
RunJobFlowRequest & WithLogEncryptionKmsKeyId(Aws::String &&value)
RunJobFlowRequest & AddBootstrapActions(BootstrapActionConfig &&value)
bool EbsRootVolumeSizeHasBeenSet() const
bool OSReleaseLabelHasBeenSet() const
virtual const char * GetServiceRequestName() const override
RunJobFlowRequest & WithSecurityConfiguration(const Aws::String &value)
bool SupportedProductsHasBeenSet() const
void SetVisibleToAllUsers(bool value)
void SetKerberosAttributes(KerberosAttributes &&value)
void SetKerberosAttributes(const KerberosAttributes &value)
const JobFlowInstancesConfig & GetInstances() const
RunJobFlowRequest & WithBootstrapActions(Aws::Vector< BootstrapActionConfig > &&value)
RunJobFlowRequest & WithServiceRole(const char *value)
RunJobFlowRequest & WithBootstrapActions(const Aws::Vector< BootstrapActionConfig > &value)
bool EbsRootVolumeIopsHasBeenSet() const
RunJobFlowRequest & WithAdditionalInfo(const Aws::String &value)
const Aws::Vector< PlacementGroupConfig > & GetPlacementGroupConfigs() const
RunJobFlowRequest & WithTags(const Aws::Vector< Tag > &value)
RunJobFlowRequest & AddPlacementGroupConfigs(PlacementGroupConfig &&value)
void SetAmiVersion(const Aws::String &value)
void SetServiceRole(const char *value)
bool NameHasBeenSet() const
RunJobFlowRequest & WithSupportedProducts(Aws::Vector< Aws::String > &&value)
RunJobFlowRequest & WithAutoScalingRole(Aws::String &&value)
void SetManagedScalingPolicy(const ManagedScalingPolicy &value)
bool ApplicationsHasBeenSet() const
RunJobFlowRequest & AddApplications(const Application &value)
RunJobFlowRequest & AddNewSupportedProducts(const SupportedProductConfig &value)
bool ManagedScalingPolicyHasBeenSet() const
RunJobFlowRequest & WithOSReleaseLabel(const Aws::String &value)
const Aws::String & GetJobFlowRole() const
void SetPlacementGroupConfigs(Aws::Vector< PlacementGroupConfig > &&value)
RunJobFlowRequest & WithJobFlowRole(Aws::String &&value)
void SetScaleDownBehavior(ScaleDownBehavior &&value)
const Aws::String & GetLogUri() const
RunJobFlowRequest & WithConfigurations(Aws::Vector< Configuration > &&value)
RunJobFlowRequest & WithCustomAmiId(const Aws::String &value)
const Aws::String & GetServiceRole() const
void SetRepoUpgradeOnBoot(const RepoUpgradeOnBoot &value)
RunJobFlowRequest & WithManagedScalingPolicy(const ManagedScalingPolicy &value)
void SetOSReleaseLabel(const Aws::String &value)
RunJobFlowRequest & WithLogEncryptionKmsKeyId(const Aws::String &value)
void SetAutoScalingRole(const char *value)
RunJobFlowRequest & WithAutoScalingRole(const char *value)
RunJobFlowRequest & AddConfigurations(Configuration &&value)
void SetInstances(JobFlowInstancesConfig &&value)
RunJobFlowRequest & WithOSReleaseLabel(const char *value)
const ScaleDownBehavior & GetScaleDownBehavior() const
bool VisibleToAllUsersHasBeenSet() const
RunJobFlowRequest & WithAdditionalInfo(const char *value)
RunJobFlowRequest & WithReleaseLabel(const char *value)
void SetBootstrapActions(Aws::Vector< BootstrapActionConfig > &&value)
bool StepsHasBeenSet() const
void SetOSReleaseLabel(Aws::String &&value)
bool InstancesHasBeenSet() const
void SetLogUri(const char *value)
void SetApplications(const Aws::Vector< Application > &value)
RunJobFlowRequest & WithAmiVersion(const char *value)
void SetEbsRootVolumeThroughput(int value)
void SetApplications(Aws::Vector< Application > &&value)
RunJobFlowRequest & WithLogEncryptionKmsKeyId(const char *value)
void SetLogUri(Aws::String &&value)
RunJobFlowRequest & WithAutoTerminationPolicy(const AutoTerminationPolicy &value)
RunJobFlowRequest & WithInstances(JobFlowInstancesConfig &&value)
void SetConfigurations(Aws::Vector< Configuration > &&value)
RunJobFlowRequest & WithName(const Aws::String &value)
void SetJobFlowRole(const Aws::String &value)
RunJobFlowRequest & WithCustomAmiId(Aws::String &&value)
RunJobFlowRequest & WithJobFlowRole(const Aws::String &value)
RunJobFlowRequest & WithApplications(const Aws::Vector< Application > &value)
const Aws::Vector< BootstrapActionConfig > & GetBootstrapActions() const
const Aws::Vector< Aws::String > & GetSupportedProducts() const
RunJobFlowRequest & WithSteps(const Aws::Vector< StepConfig > &value)
const Aws::String & GetName() const
bool TagsHasBeenSet() const
RunJobFlowRequest & WithAdditionalInfo(Aws::String &&value)
void SetSecurityConfiguration(Aws::String &&value)
RunJobFlowRequest & AddSupportedProducts(Aws::String &&value)
AWS_EMR_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
void SetReleaseLabel(Aws::String &&value)
void SetSteps(Aws::Vector< StepConfig > &&value)
const RepoUpgradeOnBoot & GetRepoUpgradeOnBoot() const
RunJobFlowRequest & WithEbsRootVolumeSize(int value)
bool CustomAmiIdHasBeenSet() const
void SetName(Aws::String &&value)
RunJobFlowRequest & WithScaleDownBehavior(const ScaleDownBehavior &value)
RunJobFlowRequest & WithJobFlowRole(const char *value)
RunJobFlowRequest & WithEbsRootVolumeIops(int value)
int GetEbsRootVolumeSize() const
RunJobFlowRequest & WithNewSupportedProducts(Aws::Vector< SupportedProductConfig > &&value)
RunJobFlowRequest & WithSecurityConfiguration(const char *value)
RunJobFlowRequest & AddConfigurations(const Configuration &value)
RunJobFlowRequest & WithSupportedProducts(const Aws::Vector< Aws::String > &value)
void SetAmiVersion(const char *value)
bool BootstrapActionsHasBeenSet() const
const KerberosAttributes & GetKerberosAttributes() const
void SetAmiVersion(Aws::String &&value)
RunJobFlowRequest & WithLogUri(Aws::String &&value)
bool ReleaseLabelHasBeenSet() const
RunJobFlowRequest & AddSteps(StepConfig &&value)
void SetScaleDownBehavior(const ScaleDownBehavior &value)
void SetTags(Aws::Vector< Tag > &&value)
RunJobFlowRequest & AddBootstrapActions(const BootstrapActionConfig &value)
void SetName(const char *value)
void SetNewSupportedProducts(const Aws::Vector< SupportedProductConfig > &value)
AWS_EMR_API RunJobFlowRequest()
void SetAdditionalInfo(const char *value)
RunJobFlowRequest & AddSupportedProducts(const char *value)
void SetReleaseLabel(const Aws::String &value)
const ManagedScalingPolicy & GetManagedScalingPolicy() const
RunJobFlowRequest & WithLogUri(const Aws::String &value)
void SetEbsRootVolumeIops(int value)
RunJobFlowRequest & WithRepoUpgradeOnBoot(RepoUpgradeOnBoot &&value)
bool AdditionalInfoHasBeenSet() const
RunJobFlowRequest & WithApplications(Aws::Vector< Application > &&value)
RunJobFlowRequest & WithReleaseLabel(const Aws::String &value)
RunJobFlowRequest & AddNewSupportedProducts(SupportedProductConfig &&value)
bool LogUriHasBeenSet() const
const Aws::String & GetAmiVersion() const
RunJobFlowRequest & WithKerberosAttributes(KerberosAttributes &&value)
void SetBootstrapActions(const Aws::Vector< BootstrapActionConfig > &value)
void SetEbsRootVolumeSize(int value)
void SetCustomAmiId(const Aws::String &value)
void SetNewSupportedProducts(Aws::Vector< SupportedProductConfig > &&value)
const Aws::String & GetAdditionalInfo() const
void SetConfigurations(const Aws::Vector< Configuration > &value)
bool SecurityConfigurationHasBeenSet() const
void SetAutoScalingRole(Aws::String &&value)
void SetLogUri(const Aws::String &value)
RunJobFlowRequest & AddSteps(const StepConfig &value)
bool GetVisibleToAllUsers() const
RunJobFlowRequest & WithAmiVersion(const Aws::String &value)
void SetRepoUpgradeOnBoot(RepoUpgradeOnBoot &&value)
RunJobFlowRequest & WithTags(Aws::Vector< Tag > &&value)
bool RepoUpgradeOnBootHasBeenSet() const
bool AutoScalingRoleHasBeenSet() const
const Aws::Vector< Configuration > & GetConfigurations() const
RunJobFlowRequest & WithReleaseLabel(Aws::String &&value)
void SetTags(const Aws::Vector< Tag > &value)
bool NewSupportedProductsHasBeenSet() const
void SetCustomAmiId(const char *value)
const Aws::String & GetSecurityConfiguration() const
RunJobFlowRequest & WithManagedScalingPolicy(ManagedScalingPolicy &&value)
RunJobFlowRequest & WithEbsRootVolumeThroughput(int value)
RunJobFlowRequest & WithScaleDownBehavior(ScaleDownBehavior &&value)
int GetEbsRootVolumeIops() const
bool AmiVersionHasBeenSet() const
bool KerberosAttributesHasBeenSet() const
void SetPlacementGroupConfigs(const Aws::Vector< PlacementGroupConfig > &value)
RunJobFlowRequest & AddSupportedProducts(const Aws::String &value)
void SetInstances(const JobFlowInstancesConfig &value)
const Aws::String & GetCustomAmiId() const
bool ServiceRoleHasBeenSet() const
int GetStepConcurrencyLevel() const
RunJobFlowRequest & WithPlacementGroupConfigs(const Aws::Vector< PlacementGroupConfig > &value)
void SetAdditionalInfo(Aws::String &&value)
int GetEbsRootVolumeThroughput() const
const AutoTerminationPolicy & GetAutoTerminationPolicy() const
void SetSecurityConfiguration(const char *value)
RunJobFlowRequest & AddTags(Tag &&value)
RunJobFlowRequest & WithPlacementGroupConfigs(Aws::Vector< PlacementGroupConfig > &&value)
void SetServiceRole(Aws::String &&value)
void SetJobFlowRole(Aws::String &&value)
RunJobFlowRequest & WithAutoTerminationPolicy(AutoTerminationPolicy &&value)
bool JobFlowRoleHasBeenSet() const
RunJobFlowRequest & WithInstances(const JobFlowInstancesConfig &value)
RunJobFlowRequest & WithCustomAmiId(const char *value)
RunJobFlowRequest & WithName(const char *value)
bool PlacementGroupConfigsHasBeenSet() const
const Aws::String & GetOSReleaseLabel() const
void SetServiceRole(const Aws::String &value)
void SetSecurityConfiguration(const Aws::String &value)
bool ScaleDownBehaviorHasBeenSet() const
RunJobFlowRequest & WithKerberosAttributes(const KerberosAttributes &value)
RunJobFlowRequest & WithName(Aws::String &&value)
void SetAutoTerminationPolicy(AutoTerminationPolicy &&value)
void SetStepConcurrencyLevel(int value)
bool StepConcurrencyLevelHasBeenSet() const
bool ConfigurationsHasBeenSet() const
const Aws::String & GetLogEncryptionKmsKeyId() const
void SetLogEncryptionKmsKeyId(Aws::String &&value)
RunJobFlowRequest & WithVisibleToAllUsers(bool value)
RunJobFlowRequest & WithLogUri(const char *value)
RunJobFlowRequest & WithSecurityConfiguration(Aws::String &&value)
AWS_EMR_API Aws::String SerializePayload() const override
RunJobFlowRequest & WithNewSupportedProducts(const Aws::Vector< SupportedProductConfig > &value)
const Aws::String & GetAutoScalingRole() const
void SetReleaseLabel(const char *value)
void SetAutoScalingRole(const Aws::String &value)
void SetLogEncryptionKmsKeyId(const char *value)
void SetJobFlowRole(const char *value)
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector