/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The job summary.See Also:
AWS API
* Reference
The job ARN.
*/ inline const Aws::String& GetJobArn() const{ return m_jobArn; } /** *The job ARN.
*/ inline bool JobArnHasBeenSet() const { return m_jobArnHasBeenSet; } /** *The job ARN.
*/ inline void SetJobArn(const Aws::String& value) { m_jobArnHasBeenSet = true; m_jobArn = value; } /** *The job ARN.
*/ inline void SetJobArn(Aws::String&& value) { m_jobArnHasBeenSet = true; m_jobArn = std::move(value); } /** *The job ARN.
*/ inline void SetJobArn(const char* value) { m_jobArnHasBeenSet = true; m_jobArn.assign(value); } /** *The job ARN.
*/ inline JobSummary& WithJobArn(const Aws::String& value) { SetJobArn(value); return *this;} /** *The job ARN.
*/ inline JobSummary& WithJobArn(Aws::String&& value) { SetJobArn(std::move(value)); return *this;} /** *The job ARN.
*/ inline JobSummary& WithJobArn(const char* value) { SetJobArn(value); return *this;} /** *The unique identifier you assigned to this job when it was created.
*/ inline const Aws::String& GetJobId() const{ return m_jobId; } /** *The unique identifier you assigned to this job when it was created.
*/ inline bool JobIdHasBeenSet() const { return m_jobIdHasBeenSet; } /** *The unique identifier you assigned to this job when it was created.
*/ inline void SetJobId(const Aws::String& value) { m_jobIdHasBeenSet = true; m_jobId = value; } /** *The unique identifier you assigned to this job when it was created.
*/ inline void SetJobId(Aws::String&& value) { m_jobIdHasBeenSet = true; m_jobId = std::move(value); } /** *The unique identifier you assigned to this job when it was created.
*/ inline void SetJobId(const char* value) { m_jobIdHasBeenSet = true; m_jobId.assign(value); } /** *The unique identifier you assigned to this job when it was created.
*/ inline JobSummary& WithJobId(const Aws::String& value) { SetJobId(value); return *this;} /** *The unique identifier you assigned to this job when it was created.
*/ inline JobSummary& WithJobId(Aws::String&& value) { SetJobId(std::move(value)); return *this;} /** *The unique identifier you assigned to this job when it was created.
*/ inline JobSummary& WithJobId(const char* value) { SetJobId(value); return *this;} /** *The ID of the thing group.
*/ inline const Aws::String& GetThingGroupId() const{ return m_thingGroupId; } /** *The ID of the thing group.
*/ inline bool ThingGroupIdHasBeenSet() const { return m_thingGroupIdHasBeenSet; } /** *The ID of the thing group.
*/ inline void SetThingGroupId(const Aws::String& value) { m_thingGroupIdHasBeenSet = true; m_thingGroupId = value; } /** *The ID of the thing group.
*/ inline void SetThingGroupId(Aws::String&& value) { m_thingGroupIdHasBeenSet = true; m_thingGroupId = std::move(value); } /** *The ID of the thing group.
*/ inline void SetThingGroupId(const char* value) { m_thingGroupIdHasBeenSet = true; m_thingGroupId.assign(value); } /** *The ID of the thing group.
*/ inline JobSummary& WithThingGroupId(const Aws::String& value) { SetThingGroupId(value); return *this;} /** *The ID of the thing group.
*/ inline JobSummary& WithThingGroupId(Aws::String&& value) { SetThingGroupId(std::move(value)); return *this;} /** *The ID of the thing group.
*/ inline JobSummary& WithThingGroupId(const char* value) { SetThingGroupId(value); return *this;} /** *Specifies whether the job will continue to run (CONTINUOUS), or will be * complete after all those things specified as targets have completed the job * (SNAPSHOT). If continuous, the job may also be run on a thing when a change is * detected in a target. For example, a job will run on a thing when the thing is * added to a target group, even after the job was completed by all things * originally in the group.
We recommend that you use continuous jobs * instead of snapshot jobs for dynamic thing group targets. By using continuous * jobs, devices that join the group receive the job execution even after the job * has been created.
*/ inline const TargetSelection& GetTargetSelection() const{ return m_targetSelection; } /** *Specifies whether the job will continue to run (CONTINUOUS), or will be * complete after all those things specified as targets have completed the job * (SNAPSHOT). If continuous, the job may also be run on a thing when a change is * detected in a target. For example, a job will run on a thing when the thing is * added to a target group, even after the job was completed by all things * originally in the group.
We recommend that you use continuous jobs * instead of snapshot jobs for dynamic thing group targets. By using continuous * jobs, devices that join the group receive the job execution even after the job * has been created.
*/ inline bool TargetSelectionHasBeenSet() const { return m_targetSelectionHasBeenSet; } /** *Specifies whether the job will continue to run (CONTINUOUS), or will be * complete after all those things specified as targets have completed the job * (SNAPSHOT). If continuous, the job may also be run on a thing when a change is * detected in a target. For example, a job will run on a thing when the thing is * added to a target group, even after the job was completed by all things * originally in the group.
We recommend that you use continuous jobs * instead of snapshot jobs for dynamic thing group targets. By using continuous * jobs, devices that join the group receive the job execution even after the job * has been created.
*/ inline void SetTargetSelection(const TargetSelection& value) { m_targetSelectionHasBeenSet = true; m_targetSelection = value; } /** *Specifies whether the job will continue to run (CONTINUOUS), or will be * complete after all those things specified as targets have completed the job * (SNAPSHOT). If continuous, the job may also be run on a thing when a change is * detected in a target. For example, a job will run on a thing when the thing is * added to a target group, even after the job was completed by all things * originally in the group.
We recommend that you use continuous jobs * instead of snapshot jobs for dynamic thing group targets. By using continuous * jobs, devices that join the group receive the job execution even after the job * has been created.
*/ inline void SetTargetSelection(TargetSelection&& value) { m_targetSelectionHasBeenSet = true; m_targetSelection = std::move(value); } /** *Specifies whether the job will continue to run (CONTINUOUS), or will be * complete after all those things specified as targets have completed the job * (SNAPSHOT). If continuous, the job may also be run on a thing when a change is * detected in a target. For example, a job will run on a thing when the thing is * added to a target group, even after the job was completed by all things * originally in the group.
We recommend that you use continuous jobs * instead of snapshot jobs for dynamic thing group targets. By using continuous * jobs, devices that join the group receive the job execution even after the job * has been created.
*/ inline JobSummary& WithTargetSelection(const TargetSelection& value) { SetTargetSelection(value); return *this;} /** *Specifies whether the job will continue to run (CONTINUOUS), or will be * complete after all those things specified as targets have completed the job * (SNAPSHOT). If continuous, the job may also be run on a thing when a change is * detected in a target. For example, a job will run on a thing when the thing is * added to a target group, even after the job was completed by all things * originally in the group.
We recommend that you use continuous jobs * instead of snapshot jobs for dynamic thing group targets. By using continuous * jobs, devices that join the group receive the job execution even after the job * has been created.
*/ inline JobSummary& WithTargetSelection(TargetSelection&& value) { SetTargetSelection(std::move(value)); return *this;} /** *The job summary status.
*/ inline const JobStatus& GetStatus() const{ return m_status; } /** *The job summary status.
*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *The job summary status.
*/ inline void SetStatus(const JobStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *The job summary status.
*/ inline void SetStatus(JobStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *The job summary status.
*/ inline JobSummary& WithStatus(const JobStatus& value) { SetStatus(value); return *this;} /** *The job summary status.
*/ inline JobSummary& WithStatus(JobStatus&& value) { SetStatus(std::move(value)); return *this;} /** *The time, in seconds since the epoch, when the job was created.
*/ inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; } /** *The time, in seconds since the epoch, when the job was created.
*/ inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; } /** *The time, in seconds since the epoch, when the job was created.
*/ inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAtHasBeenSet = true; m_createdAt = value; } /** *The time, in seconds since the epoch, when the job was created.
*/ inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAtHasBeenSet = true; m_createdAt = std::move(value); } /** *The time, in seconds since the epoch, when the job was created.
*/ inline JobSummary& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;} /** *The time, in seconds since the epoch, when the job was created.
*/ inline JobSummary& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;} /** *The time, in seconds since the epoch, when the job was last updated.
*/ inline const Aws::Utils::DateTime& GetLastUpdatedAt() const{ return m_lastUpdatedAt; } /** *The time, in seconds since the epoch, when the job was last updated.
*/ inline bool LastUpdatedAtHasBeenSet() const { return m_lastUpdatedAtHasBeenSet; } /** *The time, in seconds since the epoch, when the job was last updated.
*/ inline void SetLastUpdatedAt(const Aws::Utils::DateTime& value) { m_lastUpdatedAtHasBeenSet = true; m_lastUpdatedAt = value; } /** *The time, in seconds since the epoch, when the job was last updated.
*/ inline void SetLastUpdatedAt(Aws::Utils::DateTime&& value) { m_lastUpdatedAtHasBeenSet = true; m_lastUpdatedAt = std::move(value); } /** *The time, in seconds since the epoch, when the job was last updated.
*/ inline JobSummary& WithLastUpdatedAt(const Aws::Utils::DateTime& value) { SetLastUpdatedAt(value); return *this;} /** *The time, in seconds since the epoch, when the job was last updated.
*/ inline JobSummary& WithLastUpdatedAt(Aws::Utils::DateTime&& value) { SetLastUpdatedAt(std::move(value)); return *this;} /** *The time, in seconds since the epoch, when the job completed.
*/ inline const Aws::Utils::DateTime& GetCompletedAt() const{ return m_completedAt; } /** *The time, in seconds since the epoch, when the job completed.
*/ inline bool CompletedAtHasBeenSet() const { return m_completedAtHasBeenSet; } /** *The time, in seconds since the epoch, when the job completed.
*/ inline void SetCompletedAt(const Aws::Utils::DateTime& value) { m_completedAtHasBeenSet = true; m_completedAt = value; } /** *The time, in seconds since the epoch, when the job completed.
*/ inline void SetCompletedAt(Aws::Utils::DateTime&& value) { m_completedAtHasBeenSet = true; m_completedAt = std::move(value); } /** *The time, in seconds since the epoch, when the job completed.
*/ inline JobSummary& WithCompletedAt(const Aws::Utils::DateTime& value) { SetCompletedAt(value); return *this;} /** *The time, in seconds since the epoch, when the job completed.
*/ inline JobSummary& WithCompletedAt(Aws::Utils::DateTime&& value) { SetCompletedAt(std::move(value)); return *this;} /** *Indicates whether a job is concurrent. Will be true when a job is rolling out * new job executions or canceling previously created executions, otherwise * false.
*/ inline bool GetIsConcurrent() const{ return m_isConcurrent; } /** *Indicates whether a job is concurrent. Will be true when a job is rolling out * new job executions or canceling previously created executions, otherwise * false.
*/ inline bool IsConcurrentHasBeenSet() const { return m_isConcurrentHasBeenSet; } /** *Indicates whether a job is concurrent. Will be true when a job is rolling out * new job executions or canceling previously created executions, otherwise * false.
*/ inline void SetIsConcurrent(bool value) { m_isConcurrentHasBeenSet = true; m_isConcurrent = value; } /** *Indicates whether a job is concurrent. Will be true when a job is rolling out * new job executions or canceling previously created executions, otherwise * false.
*/ inline JobSummary& WithIsConcurrent(bool value) { SetIsConcurrent(value); return *this;} private: Aws::String m_jobArn; bool m_jobArnHasBeenSet = false; Aws::String m_jobId; bool m_jobIdHasBeenSet = false; Aws::String m_thingGroupId; bool m_thingGroupIdHasBeenSet = false; TargetSelection m_targetSelection; bool m_targetSelectionHasBeenSet = false; JobStatus m_status; bool m_statusHasBeenSet = false; Aws::Utils::DateTime m_createdAt; bool m_createdAtHasBeenSet = false; Aws::Utils::DateTime m_lastUpdatedAt; bool m_lastUpdatedAtHasBeenSet = false; Aws::Utils::DateTime m_completedAt; bool m_completedAtHasBeenSet = false; bool m_isConcurrent; bool m_isConcurrentHasBeenSet = false; }; } // namespace Model } // namespace IoT } // namespace Aws