7#include <aws/emr-serverless/EMRServerless_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/DateTime.h>
10#include <aws/emr-serverless/model/JobRunExecutionIamPolicy.h>
11#include <aws/emr-serverless/model/JobRunState.h>
12#include <aws/emr-serverless/model/ConfigurationOverrides.h>
13#include <aws/emr-serverless/model/JobDriver.h>
14#include <aws/core/utils/memory/stl/AWSMap.h>
15#include <aws/emr-serverless/model/TotalResourceUtilization.h>
16#include <aws/emr-serverless/model/NetworkConfiguration.h>
17#include <aws/emr-serverless/model/ResourceUtilization.h>
18#include <aws/emr-serverless/model/JobRunMode.h>
19#include <aws/emr-serverless/model/RetryPolicy.h>
32namespace EMRServerless
47 AWS_EMRSERVERLESS_API
JobRun() =
default;
59 template<
typename ApplicationIdT = Aws::String>
60 void SetApplicationId(ApplicationIdT&& value) { m_applicationIdHasBeenSet =
true; m_applicationId = std::forward<ApplicationIdT>(value); }
61 template<
typename ApplicationIdT = Aws::String>
71 template<
typename JobRunIdT = Aws::String>
72 void SetJobRunId(JobRunIdT&& value) { m_jobRunIdHasBeenSet =
true; m_jobRunId = std::forward<JobRunIdT>(value); }
73 template<
typename JobRunIdT = Aws::String>
83 template<
typename NameT = Aws::String>
84 void SetName(NameT&& value) { m_nameHasBeenSet =
true; m_name = std::forward<NameT>(value); }
85 template<
typename NameT = Aws::String>
95 template<
typename ArnT = Aws::String>
96 void SetArn(ArnT&& value) { m_arnHasBeenSet =
true; m_arn = std::forward<ArnT>(value); }
97 template<
typename ArnT = Aws::String>
107 template<
typename CreatedByT = Aws::String>
108 void SetCreatedBy(CreatedByT&& value) { m_createdByHasBeenSet =
true; m_createdBy = std::forward<CreatedByT>(value); }
109 template<
typename CreatedByT = Aws::String>
119 template<
typename CreatedAtT = Aws::Utils::DateTime>
120 void SetCreatedAt(CreatedAtT&& value) { m_createdAtHasBeenSet =
true; m_createdAt = std::forward<CreatedAtT>(value); }
121 template<
typename CreatedAtT = Aws::Utils::DateTime>
131 template<
typename UpdatedAtT = Aws::Utils::DateTime>
132 void SetUpdatedAt(UpdatedAtT&& value) { m_updatedAtHasBeenSet =
true; m_updatedAt = std::forward<UpdatedAtT>(value); }
133 template<
typename UpdatedAtT = Aws::Utils::DateTime>
143 template<
typename ExecutionRoleT = Aws::String>
144 void SetExecutionRole(ExecutionRoleT&& value) { m_executionRoleHasBeenSet =
true; m_executionRole = std::forward<ExecutionRoleT>(value); }
145 template<
typename ExecutionRoleT = Aws::String>
153 template<
typename ExecutionIamPolicyT = JobRunExecutionIamPolicy>
154 void SetExecutionIamPolicy(ExecutionIamPolicyT&& value) { m_executionIamPolicyHasBeenSet =
true; m_executionIamPolicy = std::forward<ExecutionIamPolicyT>(value); }
155 template<
typename ExecutionIamPolicyT = JobRunExecutionIamPolicy>
175 template<
typename StateDetailsT = Aws::String>
176 void SetStateDetails(StateDetailsT&& value) { m_stateDetailsHasBeenSet =
true; m_stateDetails = std::forward<StateDetailsT>(value); }
177 template<
typename StateDetailsT = Aws::String>
188 template<
typename ReleaseLabelT = Aws::String>
189 void SetReleaseLabel(ReleaseLabelT&& value) { m_releaseLabelHasBeenSet =
true; m_releaseLabel = std::forward<ReleaseLabelT>(value); }
190 template<
typename ReleaseLabelT = Aws::String>
201 template<
typename ConfigurationOverr
idesT = ConfigurationOverr
ides>
202 void SetConfigurationOverrides(ConfigurationOverridesT&& value) { m_configurationOverridesHasBeenSet =
true; m_configurationOverrides = std::forward<ConfigurationOverridesT>(value); }
203 template<
typename ConfigurationOverr
idesT = ConfigurationOverr
ides>
213 template<
typename JobDriverT = JobDriver>
214 void SetJobDriver(JobDriverT&& value) { m_jobDriverHasBeenSet =
true; m_jobDriver = std::forward<JobDriverT>(value); }
215 template<
typename JobDriverT = JobDriver>
225 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
226 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
227 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
229 template<
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
231 m_tagsHasBeenSet =
true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
return *
this;
243 template<
typename TotalResourceUtilizationT = TotalResourceUtilization>
244 void SetTotalResourceUtilization(TotalResourceUtilizationT&& value) { m_totalResourceUtilizationHasBeenSet =
true; m_totalResourceUtilization = std::forward<TotalResourceUtilizationT>(value); }
245 template<
typename TotalResourceUtilizationT = TotalResourceUtilization>
253 template<
typename NetworkConfigurationT = NetworkConfiguration>
254 void SetNetworkConfiguration(NetworkConfigurationT&& value) { m_networkConfigurationHasBeenSet =
true; m_networkConfiguration = std::forward<NetworkConfigurationT>(value); }
255 template<
typename NetworkConfigurationT = NetworkConfiguration>
292 template<
typename BilledResourceUtilizationT = ResourceUtilization>
293 void SetBilledResourceUtilization(BilledResourceUtilizationT&& value) { m_billedResourceUtilizationHasBeenSet =
true; m_billedResourceUtilization = std::forward<BilledResourceUtilizationT>(value); }
294 template<
typename BilledResourceUtilizationT = ResourceUtilization>
314 template<
typename RetryPolicyT = RetryPolicy>
315 void SetRetryPolicy(RetryPolicyT&& value) { m_retryPolicyHasBeenSet =
true; m_retryPolicy = std::forward<RetryPolicyT>(value); }
316 template<
typename RetryPolicyT = RetryPolicy>
326 inline void SetAttempt(
int value) { m_attemptHasBeenSet =
true; m_attempt = value; }
336 template<
typename AttemptCreatedAtT = Aws::Utils::DateTime>
337 void SetAttemptCreatedAt(AttemptCreatedAtT&& value) { m_attemptCreatedAtHasBeenSet =
true; m_attemptCreatedAt = std::forward<AttemptCreatedAtT>(value); }
338 template<
typename AttemptCreatedAtT = Aws::Utils::DateTime>
348 template<
typename AttemptUpdatedAtT = Aws::Utils::DateTime>
349 void SetAttemptUpdatedAt(AttemptUpdatedAtT&& value) { m_attemptUpdatedAtHasBeenSet =
true; m_attemptUpdatedAt = std::forward<AttemptUpdatedAtT>(value); }
350 template<
typename AttemptUpdatedAtT = Aws::Utils::DateTime>
360 template<
typename StartedAtT = Aws::Utils::DateTime>
361 void SetStartedAt(StartedAtT&& value) { m_startedAtHasBeenSet =
true; m_startedAt = std::forward<StartedAtT>(value); }
362 template<
typename StartedAtT = Aws::Utils::DateTime>
372 template<
typename EndedAtT = Aws::Utils::DateTime>
373 void SetEndedAt(EndedAtT&& value) { m_endedAtHasBeenSet =
true; m_endedAt = std::forward<EndedAtT>(value); }
374 template<
typename EndedAtT = Aws::Utils::DateTime>
390 bool m_applicationIdHasBeenSet =
false;
393 bool m_jobRunIdHasBeenSet =
false;
396 bool m_nameHasBeenSet =
false;
399 bool m_arnHasBeenSet =
false;
402 bool m_createdByHasBeenSet =
false;
405 bool m_createdAtHasBeenSet =
false;
408 bool m_updatedAtHasBeenSet =
false;
411 bool m_executionRoleHasBeenSet =
false;
413 JobRunExecutionIamPolicy m_executionIamPolicy;
414 bool m_executionIamPolicyHasBeenSet =
false;
417 bool m_stateHasBeenSet =
false;
420 bool m_stateDetailsHasBeenSet =
false;
423 bool m_releaseLabelHasBeenSet =
false;
425 ConfigurationOverrides m_configurationOverrides;
426 bool m_configurationOverridesHasBeenSet =
false;
428 JobDriver m_jobDriver;
429 bool m_jobDriverHasBeenSet =
false;
432 bool m_tagsHasBeenSet =
false;
434 TotalResourceUtilization m_totalResourceUtilization;
435 bool m_totalResourceUtilizationHasBeenSet =
false;
437 NetworkConfiguration m_networkConfiguration;
438 bool m_networkConfigurationHasBeenSet =
false;
440 int m_totalExecutionDurationSeconds{0};
441 bool m_totalExecutionDurationSecondsHasBeenSet =
false;
443 long long m_executionTimeoutMinutes{0};
444 bool m_executionTimeoutMinutesHasBeenSet =
false;
446 ResourceUtilization m_billedResourceUtilization;
447 bool m_billedResourceUtilizationHasBeenSet =
false;
450 bool m_modeHasBeenSet =
false;
452 RetryPolicy m_retryPolicy;
453 bool m_retryPolicyHasBeenSet =
false;
456 bool m_attemptHasBeenSet =
false;
459 bool m_attemptCreatedAtHasBeenSet =
false;
462 bool m_attemptUpdatedAtHasBeenSet =
false;
465 bool m_startedAtHasBeenSet =
false;
468 bool m_endedAtHasBeenSet =
false;
470 long long m_queuedDurationMilliseconds{0};
471 bool m_queuedDurationMillisecondsHasBeenSet =
false;
JobRun & WithNetworkConfiguration(NetworkConfigurationT &&value)
void SetUpdatedAt(UpdatedAtT &&value)
bool NameHasBeenSet() const
bool TotalExecutionDurationSecondsHasBeenSet() const
bool ConfigurationOverridesHasBeenSet() const
JobRun & WithRetryPolicy(RetryPolicyT &&value)
JobRun & WithExecutionRole(ExecutionRoleT &&value)
const Aws::Utils::DateTime & GetAttemptCreatedAt() const
JobRun & WithStartedAt(StartedAtT &&value)
bool BilledResourceUtilizationHasBeenSet() const
bool AttemptHasBeenSet() const
JobRun & WithReleaseLabel(ReleaseLabelT &&value)
const ConfigurationOverrides & GetConfigurationOverrides() const
JobRun & WithTotalExecutionDurationSeconds(int value)
bool StateDetailsHasBeenSet() const
JobRun & WithJobDriver(JobDriverT &&value)
bool NetworkConfigurationHasBeenSet() const
void SetCreatedAt(CreatedAtT &&value)
JobRun & WithBilledResourceUtilization(BilledResourceUtilizationT &&value)
void SetRetryPolicy(RetryPolicyT &&value)
JobRun & WithJobRunId(JobRunIdT &&value)
void SetExecutionRole(ExecutionRoleT &&value)
JobRun & WithApplicationId(ApplicationIdT &&value)
bool AttemptUpdatedAtHasBeenSet() const
void SetReleaseLabel(ReleaseLabelT &&value)
const Aws::String & GetReleaseLabel() const
void SetBilledResourceUtilization(BilledResourceUtilizationT &&value)
void SetName(NameT &&value)
long long GetQueuedDurationMilliseconds() const
AWS_EMRSERVERLESS_API Aws::Utils::Json::JsonValue Jsonize() const
void SetAttempt(int value)
const JobDriver & GetJobDriver() const
const Aws::Map< Aws::String, Aws::String > & GetTags() const
const Aws::String & GetArn() const
AWS_EMRSERVERLESS_API JobRun & operator=(Aws::Utils::Json::JsonView jsonValue)
JobRun & WithName(NameT &&value)
const Aws::String & GetCreatedBy() const
JobRun & WithMode(JobRunMode value)
bool ExecutionTimeoutMinutesHasBeenSet() const
const JobRunExecutionIamPolicy & GetExecutionIamPolicy() const
JobRun & WithState(JobRunState value)
const Aws::Utils::DateTime & GetStartedAt() const
void SetTotalExecutionDurationSeconds(int value)
bool TagsHasBeenSet() const
JobRunState GetState() const
const Aws::Utils::DateTime & GetAttemptUpdatedAt() const
const ResourceUtilization & GetBilledResourceUtilization() const
bool UpdatedAtHasBeenSet() const
void SetEndedAt(EndedAtT &&value)
bool JobRunIdHasBeenSet() const
void SetArn(ArnT &&value)
JobRun & WithExecutionIamPolicy(ExecutionIamPolicyT &&value)
JobRun & WithTags(TagsT &&value)
bool TotalResourceUtilizationHasBeenSet() const
AWS_EMRSERVERLESS_API JobRun(Aws::Utils::Json::JsonView jsonValue)
void SetTotalResourceUtilization(TotalResourceUtilizationT &&value)
JobRun & WithExecutionTimeoutMinutes(long long value)
void SetExecutionIamPolicy(ExecutionIamPolicyT &&value)
void SetExecutionTimeoutMinutes(long long value)
bool ExecutionIamPolicyHasBeenSet() const
void SetJobRunId(JobRunIdT &&value)
JobRun & WithAttemptCreatedAt(AttemptCreatedAtT &&value)
bool AttemptCreatedAtHasBeenSet() const
bool ModeHasBeenSet() const
JobRun & WithArn(ArnT &&value)
void SetCreatedBy(CreatedByT &&value)
long long GetExecutionTimeoutMinutes() const
const Aws::Utils::DateTime & GetEndedAt() const
bool RetryPolicyHasBeenSet() const
JobRunMode GetMode() const
bool QueuedDurationMillisecondsHasBeenSet() const
const Aws::String & GetApplicationId() const
bool CreatedAtHasBeenSet() const
void SetApplicationId(ApplicationIdT &&value)
JobRun & WithTotalResourceUtilization(TotalResourceUtilizationT &&value)
bool JobDriverHasBeenSet() const
void SetJobDriver(JobDriverT &&value)
JobRun & WithAttempt(int value)
bool ApplicationIdHasBeenSet() const
JobRun & WithEndedAt(EndedAtT &&value)
bool ReleaseLabelHasBeenSet() const
void SetMode(JobRunMode value)
bool ArnHasBeenSet() const
void SetConfigurationOverrides(ConfigurationOverridesT &&value)
void SetStartedAt(StartedAtT &&value)
JobRun & WithQueuedDurationMilliseconds(long long value)
JobRun & AddTags(TagsKeyT &&key, TagsValueT &&value)
bool StartedAtHasBeenSet() const
JobRun & WithCreatedBy(CreatedByT &&value)
bool EndedAtHasBeenSet() const
void SetAttemptUpdatedAt(AttemptUpdatedAtT &&value)
void SetNetworkConfiguration(NetworkConfigurationT &&value)
bool CreatedByHasBeenSet() const
void SetStateDetails(StateDetailsT &&value)
AWS_EMRSERVERLESS_API JobRun()=default
const Aws::String & GetStateDetails() const
const Aws::String & GetExecutionRole() const
const NetworkConfiguration & GetNetworkConfiguration() const
bool StateHasBeenSet() const
JobRun & WithConfigurationOverrides(ConfigurationOverridesT &&value)
const Aws::String & GetJobRunId() const
JobRun & WithAttemptUpdatedAt(AttemptUpdatedAtT &&value)
const TotalResourceUtilization & GetTotalResourceUtilization() const
bool ExecutionRoleHasBeenSet() const
JobRun & WithStateDetails(StateDetailsT &&value)
JobRun & WithCreatedAt(CreatedAtT &&value)
const Aws::Utils::DateTime & GetCreatedAt() const
void SetQueuedDurationMilliseconds(long long value)
const RetryPolicy & GetRetryPolicy() const
void SetState(JobRunState value)
const Aws::String & GetName() const
void SetAttemptCreatedAt(AttemptCreatedAtT &&value)
JobRun & WithUpdatedAt(UpdatedAtT &&value)
int GetTotalExecutionDurationSeconds() const
void SetTags(TagsT &&value)
const Aws::Utils::DateTime & GetUpdatedAt() const
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
Aws::Utils::Json::JsonValue JsonValue