7#include <aws/iot/IoT_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/iot/model/TargetSelection.h>
10#include <aws/iot/model/JobStatus.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/iot/model/PresignedUrlConfig.h>
13#include <aws/iot/model/JobExecutionsRolloutConfig.h>
14#include <aws/iot/model/AbortConfig.h>
15#include <aws/core/utils/DateTime.h>
16#include <aws/iot/model/JobProcessDetails.h>
17#include <aws/iot/model/TimeoutConfig.h>
18#include <aws/iot/model/JobExecutionsRetryConfig.h>
19#include <aws/core/utils/memory/stl/AWSMap.h>
20#include <aws/iot/model/SchedulingConfig.h>
21#include <aws/iot/model/ScheduledJobRollout.h>
48 AWS_IOT_API
Job() =
default;
61 template<
typename JobArnT = Aws::String>
62 void SetJobArn(JobArnT&& value) { m_jobArnHasBeenSet =
true; m_jobArn = std::forward<JobArnT>(value); }
63 template<
typename JobArnT = Aws::String>
73 template<
typename JobIdT = Aws::String>
74 void SetJobId(JobIdT&& value) { m_jobIdHasBeenSet =
true; m_jobId = std::forward<JobIdT>(value); }
75 template<
typename JobIdT = Aws::String>
116 inline void SetForceCanceled(
bool value) { m_forceCanceledHasBeenSet =
true; m_forceCanceled = value; }
126 template<
typename ReasonCodeT = Aws::String>
127 void SetReasonCode(ReasonCodeT&& value) { m_reasonCodeHasBeenSet =
true; m_reasonCode = std::forward<ReasonCodeT>(value); }
128 template<
typename ReasonCodeT = Aws::String>
138 template<
typename CommentT = Aws::String>
139 void SetComment(CommentT&& value) { m_commentHasBeenSet =
true; m_comment = std::forward<CommentT>(value); }
140 template<
typename CommentT = Aws::String>
150 template<
typename TargetsT = Aws::Vector<Aws::String>>
151 void SetTargets(TargetsT&& value) { m_targetsHasBeenSet =
true; m_targets = std::forward<TargetsT>(value); }
152 template<
typename TargetsT = Aws::Vector<Aws::String>>
154 template<
typename TargetsT = Aws::String>
155 Job&
AddTargets(TargetsT&& value) { m_targetsHasBeenSet =
true; m_targets.emplace_back(std::forward<TargetsT>(value));
return *
this; }
164 template<
typename DescriptionT = Aws::String>
165 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet =
true; m_description = std::forward<DescriptionT>(value); }
166 template<
typename DescriptionT = Aws::String>
176 template<
typename Pre
signedUrlConfigT = Pre
signedUrlConfig>
177 void SetPresignedUrlConfig(PresignedUrlConfigT&& value) { m_presignedUrlConfigHasBeenSet =
true; m_presignedUrlConfig = std::forward<PresignedUrlConfigT>(value); }
178 template<
typename Pre
signedUrlConfigT = Pre
signedUrlConfig>
188 template<
typename JobExecutionsRolloutConfigT = JobExecutionsRolloutConfig>
189 void SetJobExecutionsRolloutConfig(JobExecutionsRolloutConfigT&& value) { m_jobExecutionsRolloutConfigHasBeenSet =
true; m_jobExecutionsRolloutConfig = std::forward<JobExecutionsRolloutConfigT>(value); }
190 template<
typename JobExecutionsRolloutConfigT = JobExecutionsRolloutConfig>
200 template<
typename AbortConfigT = AbortConfig>
201 void SetAbortConfig(AbortConfigT&& value) { m_abortConfigHasBeenSet =
true; m_abortConfig = std::forward<AbortConfigT>(value); }
202 template<
typename AbortConfigT = AbortConfig>
212 template<
typename CreatedAtT = Aws::Utils::DateTime>
213 void SetCreatedAt(CreatedAtT&& value) { m_createdAtHasBeenSet =
true; m_createdAt = std::forward<CreatedAtT>(value); }
214 template<
typename CreatedAtT = Aws::Utils::DateTime>
224 template<
typename LastUpdatedAtT = Aws::Utils::DateTime>
225 void SetLastUpdatedAt(LastUpdatedAtT&& value) { m_lastUpdatedAtHasBeenSet =
true; m_lastUpdatedAt = std::forward<LastUpdatedAtT>(value); }
226 template<
typename LastUpdatedAtT = Aws::Utils::DateTime>
236 template<
typename CompletedAtT = Aws::Utils::DateTime>
237 void SetCompletedAt(CompletedAtT&& value) { m_completedAtHasBeenSet =
true; m_completedAt = std::forward<CompletedAtT>(value); }
238 template<
typename CompletedAtT = Aws::Utils::DateTime>
248 template<
typename JobProcessDetailsT = JobProcessDetails>
249 void SetJobProcessDetails(JobProcessDetailsT&& value) { m_jobProcessDetailsHasBeenSet =
true; m_jobProcessDetails = std::forward<JobProcessDetailsT>(value); }
250 template<
typename JobProcessDetailsT = JobProcessDetails>
264 template<
typename TimeoutConfigT = TimeoutConfig>
265 void SetTimeoutConfig(TimeoutConfigT&& value) { m_timeoutConfigHasBeenSet =
true; m_timeoutConfig = std::forward<TimeoutConfigT>(value); }
266 template<
typename TimeoutConfigT = TimeoutConfig>
284 template<
typename NamespaceIdT = Aws::String>
285 void SetNamespaceId(NamespaceIdT&& value) { m_namespaceIdHasBeenSet =
true; m_namespaceId = std::forward<NamespaceIdT>(value); }
286 template<
typename NamespaceIdT = Aws::String>
296 template<
typename JobTemplateArnT = Aws::String>
297 void SetJobTemplateArn(JobTemplateArnT&& value) { m_jobTemplateArnHasBeenSet =
true; m_jobTemplateArn = std::forward<JobTemplateArnT>(value); }
298 template<
typename JobTemplateArnT = Aws::String>
308 template<
typename JobExecutionsRetryConfigT = JobExecutionsRetryConfig>
309 void SetJobExecutionsRetryConfig(JobExecutionsRetryConfigT&& value) { m_jobExecutionsRetryConfigHasBeenSet =
true; m_jobExecutionsRetryConfig = std::forward<JobExecutionsRetryConfigT>(value); }
310 template<
typename JobExecutionsRetryConfigT = JobExecutionsRetryConfig>
325 template<
typename DocumentParametersT = Aws::Map<Aws::String, Aws::String>>
326 void SetDocumentParameters(DocumentParametersT&& value) { m_documentParametersHasBeenSet =
true; m_documentParameters = std::forward<DocumentParametersT>(value); }
327 template<
typename DocumentParametersT = Aws::Map<Aws::String, Aws::String>>
329 template<
typename DocumentParametersKeyT = Aws::String,
typename DocumentParametersValueT = Aws::String>
331 m_documentParametersHasBeenSet =
true; m_documentParameters.emplace(std::forward<DocumentParametersKeyT>(key), std::forward<DocumentParametersValueT>(value));
return *
this;
343 inline void SetIsConcurrent(
bool value) { m_isConcurrentHasBeenSet =
true; m_isConcurrent = value; }
354 template<
typename SchedulingConfigT = SchedulingConfig>
355 void SetSchedulingConfig(SchedulingConfigT&& value) { m_schedulingConfigHasBeenSet =
true; m_schedulingConfig = std::forward<SchedulingConfigT>(value); }
356 template<
typename SchedulingConfigT = SchedulingConfig>
367 template<
typename ScheduledJobRolloutsT = Aws::Vector<ScheduledJobRollout>>
368 void SetScheduledJobRollouts(ScheduledJobRolloutsT&& value) { m_scheduledJobRolloutsHasBeenSet =
true; m_scheduledJobRollouts = std::forward<ScheduledJobRolloutsT>(value); }
369 template<
typename ScheduledJobRolloutsT = Aws::Vector<ScheduledJobRollout>>
371 template<
typename ScheduledJobRolloutsT = ScheduledJobRollout>
372 Job&
AddScheduledJobRollouts(ScheduledJobRolloutsT&& value) { m_scheduledJobRolloutsHasBeenSet =
true; m_scheduledJobRollouts.emplace_back(std::forward<ScheduledJobRolloutsT>(value));
return *
this; }
390 template<
typename DestinationPackageVersionsT = Aws::Vector<Aws::String>>
391 void SetDestinationPackageVersions(DestinationPackageVersionsT&& value) { m_destinationPackageVersionsHasBeenSet =
true; m_destinationPackageVersions = std::forward<DestinationPackageVersionsT>(value); }
392 template<
typename DestinationPackageVersionsT = Aws::Vector<Aws::String>>
394 template<
typename DestinationPackageVersionsT = Aws::String>
395 Job&
AddDestinationPackageVersions(DestinationPackageVersionsT&& value) { m_destinationPackageVersionsHasBeenSet =
true; m_destinationPackageVersions.emplace_back(std::forward<DestinationPackageVersionsT>(value));
return *
this; }
400 bool m_jobArnHasBeenSet =
false;
403 bool m_jobIdHasBeenSet =
false;
406 bool m_targetSelectionHasBeenSet =
false;
409 bool m_statusHasBeenSet =
false;
411 bool m_forceCanceled{
false};
412 bool m_forceCanceledHasBeenSet =
false;
415 bool m_reasonCodeHasBeenSet =
false;
418 bool m_commentHasBeenSet =
false;
421 bool m_targetsHasBeenSet =
false;
424 bool m_descriptionHasBeenSet =
false;
426 PresignedUrlConfig m_presignedUrlConfig;
427 bool m_presignedUrlConfigHasBeenSet =
false;
429 JobExecutionsRolloutConfig m_jobExecutionsRolloutConfig;
430 bool m_jobExecutionsRolloutConfigHasBeenSet =
false;
432 AbortConfig m_abortConfig;
433 bool m_abortConfigHasBeenSet =
false;
436 bool m_createdAtHasBeenSet =
false;
439 bool m_lastUpdatedAtHasBeenSet =
false;
442 bool m_completedAtHasBeenSet =
false;
444 JobProcessDetails m_jobProcessDetails;
445 bool m_jobProcessDetailsHasBeenSet =
false;
447 TimeoutConfig m_timeoutConfig;
448 bool m_timeoutConfigHasBeenSet =
false;
451 bool m_namespaceIdHasBeenSet =
false;
454 bool m_jobTemplateArnHasBeenSet =
false;
456 JobExecutionsRetryConfig m_jobExecutionsRetryConfig;
457 bool m_jobExecutionsRetryConfigHasBeenSet =
false;
460 bool m_documentParametersHasBeenSet =
false;
462 bool m_isConcurrent{
false};
463 bool m_isConcurrentHasBeenSet =
false;
465 SchedulingConfig m_schedulingConfig;
466 bool m_schedulingConfigHasBeenSet =
false;
469 bool m_scheduledJobRolloutsHasBeenSet =
false;
472 bool m_destinationPackageVersionsHasBeenSet =
false;
void SetForceCanceled(bool value)
bool CommentHasBeenSet() const
void SetDestinationPackageVersions(DestinationPackageVersionsT &&value)
const Aws::String & GetJobId() const
bool AbortConfigHasBeenSet() const
const Aws::String & GetComment() const
const AbortConfig & GetAbortConfig() const
Job & WithPresignedUrlConfig(PresignedUrlConfigT &&value)
bool SchedulingConfigHasBeenSet() const
void SetJobProcessDetails(JobProcessDetailsT &&value)
AWS_IOT_API Aws::Utils::Json::JsonValue Jsonize() const
void SetLastUpdatedAt(LastUpdatedAtT &&value)
bool TargetSelectionHasBeenSet() const
AWS_IOT_API Job(Aws::Utils::Json::JsonView jsonValue)
bool JobExecutionsRolloutConfigHasBeenSet() const
const Aws::String & GetNamespaceId() const
Job & WithStatus(JobStatus value)
bool DocumentParametersHasBeenSet() const
const JobProcessDetails & GetJobProcessDetails() const
Job & AddScheduledJobRollouts(ScheduledJobRolloutsT &&value)
Job & WithIsConcurrent(bool value)
Job & WithTargets(TargetsT &&value)
bool TimeoutConfigHasBeenSet() const
bool ForceCanceledHasBeenSet() const
const Aws::String & GetReasonCode() const
void SetDocumentParameters(DocumentParametersT &&value)
const JobExecutionsRolloutConfig & GetJobExecutionsRolloutConfig() const
void SetAbortConfig(AbortConfigT &&value)
Job & WithSchedulingConfig(SchedulingConfigT &&value)
Job & WithLastUpdatedAt(LastUpdatedAtT &&value)
Job & WithDescription(DescriptionT &&value)
const Aws::Utils::DateTime & GetLastUpdatedAt() const
Job & AddTargets(TargetsT &&value)
void SetIsConcurrent(bool value)
const Aws::String & GetDescription() const
TargetSelection GetTargetSelection() const
bool GetIsConcurrent() const
Job & WithJobProcessDetails(JobProcessDetailsT &&value)
void SetPresignedUrlConfig(PresignedUrlConfigT &&value)
Job & WithForceCanceled(bool value)
Job & WithCompletedAt(CompletedAtT &&value)
Job & WithJobExecutionsRolloutConfig(JobExecutionsRolloutConfigT &&value)
Job & WithScheduledJobRollouts(ScheduledJobRolloutsT &&value)
AWS_IOT_API Job()=default
void SetJobExecutionsRetryConfig(JobExecutionsRetryConfigT &&value)
Job & WithCreatedAt(CreatedAtT &&value)
Job & WithTargetSelection(TargetSelection value)
bool CompletedAtHasBeenSet() const
const SchedulingConfig & GetSchedulingConfig() const
bool DestinationPackageVersionsHasBeenSet() const
const TimeoutConfig & GetTimeoutConfig() const
void SetComment(CommentT &&value)
const Aws::Map< Aws::String, Aws::String > & GetDocumentParameters() const
Job & WithDestinationPackageVersions(DestinationPackageVersionsT &&value)
void SetStatus(JobStatus value)
const Aws::Vector< ScheduledJobRollout > & GetScheduledJobRollouts() const
void SetCreatedAt(CreatedAtT &&value)
void SetTimeoutConfig(TimeoutConfigT &&value)
void SetScheduledJobRollouts(ScheduledJobRolloutsT &&value)
bool NamespaceIdHasBeenSet() const
const Aws::Utils::DateTime & GetCompletedAt() const
const Aws::String & GetJobArn() const
bool JobProcessDetailsHasBeenSet() const
void SetJobTemplateArn(JobTemplateArnT &&value)
Job & WithJobId(JobIdT &&value)
bool LastUpdatedAtHasBeenSet() const
void SetDescription(DescriptionT &&value)
const Aws::Vector< Aws::String > & GetDestinationPackageVersions() const
bool ReasonCodeHasBeenSet() const
bool CreatedAtHasBeenSet() const
const PresignedUrlConfig & GetPresignedUrlConfig() const
Job & WithNamespaceId(NamespaceIdT &&value)
const Aws::String & GetJobTemplateArn() const
void SetTargetSelection(TargetSelection value)
Job & WithComment(CommentT &&value)
void SetJobArn(JobArnT &&value)
Job & AddDocumentParameters(DocumentParametersKeyT &&key, DocumentParametersValueT &&value)
bool StatusHasBeenSet() const
void SetSchedulingConfig(SchedulingConfigT &&value)
bool JobArnHasBeenSet() const
const Aws::Vector< Aws::String > & GetTargets() const
bool TargetsHasBeenSet() const
const Aws::Utils::DateTime & GetCreatedAt() const
Job & WithReasonCode(ReasonCodeT &&value)
Job & WithDocumentParameters(DocumentParametersT &&value)
Job & AddDestinationPackageVersions(DestinationPackageVersionsT &&value)
bool PresignedUrlConfigHasBeenSet() const
bool DescriptionHasBeenSet() const
Job & WithJobArn(JobArnT &&value)
void SetTargets(TargetsT &&value)
bool ScheduledJobRolloutsHasBeenSet() const
bool IsConcurrentHasBeenSet() const
const JobExecutionsRetryConfig & GetJobExecutionsRetryConfig() const
bool JobIdHasBeenSet() const
void SetJobExecutionsRolloutConfig(JobExecutionsRolloutConfigT &&value)
void SetCompletedAt(CompletedAtT &&value)
AWS_IOT_API Job & operator=(Aws::Utils::Json::JsonView jsonValue)
Job & WithJobExecutionsRetryConfig(JobExecutionsRetryConfigT &&value)
Job & WithJobTemplateArn(JobTemplateArnT &&value)
bool GetForceCanceled() const
JobStatus GetStatus() const
bool JobExecutionsRetryConfigHasBeenSet() const
Job & WithAbortConfig(AbortConfigT &&value)
void SetJobId(JobIdT &&value)
bool JobTemplateArnHasBeenSet() const
void SetReasonCode(ReasonCodeT &&value)
Job & WithTimeoutConfig(TimeoutConfigT &&value)
void SetNamespaceId(NamespaceIdT &&value)
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
Aws::Utils::Json::JsonValue JsonValue