This repository has been archived on 2025-09-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
pxz-hos-client-cpp-module/support/aws-sdk-cpp-master/aws-cpp-sdk-iot/include/aws/iot/model/JobSummary.h

380 lines
13 KiB
C++

/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/iot/IoT_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/iot/model/TargetSelection.h>
#include <aws/iot/model/JobStatus.h>
#include <aws/core/utils/DateTime.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace IoT
{
namespace Model
{
/**
* <p>The job summary.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/iot-2015-05-28/JobSummary">AWS API
* Reference</a></p>
*/
class AWS_IOT_API JobSummary
{
public:
JobSummary();
JobSummary(Aws::Utils::Json::JsonView jsonValue);
JobSummary& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The job ARN.</p>
*/
inline const Aws::String& GetJobArn() const{ return m_jobArn; }
/**
* <p>The job ARN.</p>
*/
inline bool JobArnHasBeenSet() const { return m_jobArnHasBeenSet; }
/**
* <p>The job ARN.</p>
*/
inline void SetJobArn(const Aws::String& value) { m_jobArnHasBeenSet = true; m_jobArn = value; }
/**
* <p>The job ARN.</p>
*/
inline void SetJobArn(Aws::String&& value) { m_jobArnHasBeenSet = true; m_jobArn = std::move(value); }
/**
* <p>The job ARN.</p>
*/
inline void SetJobArn(const char* value) { m_jobArnHasBeenSet = true; m_jobArn.assign(value); }
/**
* <p>The job ARN.</p>
*/
inline JobSummary& WithJobArn(const Aws::String& value) { SetJobArn(value); return *this;}
/**
* <p>The job ARN.</p>
*/
inline JobSummary& WithJobArn(Aws::String&& value) { SetJobArn(std::move(value)); return *this;}
/**
* <p>The job ARN.</p>
*/
inline JobSummary& WithJobArn(const char* value) { SetJobArn(value); return *this;}
/**
* <p>The unique identifier you assigned to this job when it was created.</p>
*/
inline const Aws::String& GetJobId() const{ return m_jobId; }
/**
* <p>The unique identifier you assigned to this job when it was created.</p>
*/
inline bool JobIdHasBeenSet() const { return m_jobIdHasBeenSet; }
/**
* <p>The unique identifier you assigned to this job when it was created.</p>
*/
inline void SetJobId(const Aws::String& value) { m_jobIdHasBeenSet = true; m_jobId = value; }
/**
* <p>The unique identifier you assigned to this job when it was created.</p>
*/
inline void SetJobId(Aws::String&& value) { m_jobIdHasBeenSet = true; m_jobId = std::move(value); }
/**
* <p>The unique identifier you assigned to this job when it was created.</p>
*/
inline void SetJobId(const char* value) { m_jobIdHasBeenSet = true; m_jobId.assign(value); }
/**
* <p>The unique identifier you assigned to this job when it was created.</p>
*/
inline JobSummary& WithJobId(const Aws::String& value) { SetJobId(value); return *this;}
/**
* <p>The unique identifier you assigned to this job when it was created.</p>
*/
inline JobSummary& WithJobId(Aws::String&& value) { SetJobId(std::move(value)); return *this;}
/**
* <p>The unique identifier you assigned to this job when it was created.</p>
*/
inline JobSummary& WithJobId(const char* value) { SetJobId(value); return *this;}
/**
* <p>The ID of the thing group.</p>
*/
inline const Aws::String& GetThingGroupId() const{ return m_thingGroupId; }
/**
* <p>The ID of the thing group.</p>
*/
inline bool ThingGroupIdHasBeenSet() const { return m_thingGroupIdHasBeenSet; }
/**
* <p>The ID of the thing group.</p>
*/
inline void SetThingGroupId(const Aws::String& value) { m_thingGroupIdHasBeenSet = true; m_thingGroupId = value; }
/**
* <p>The ID of the thing group.</p>
*/
inline void SetThingGroupId(Aws::String&& value) { m_thingGroupIdHasBeenSet = true; m_thingGroupId = std::move(value); }
/**
* <p>The ID of the thing group.</p>
*/
inline void SetThingGroupId(const char* value) { m_thingGroupIdHasBeenSet = true; m_thingGroupId.assign(value); }
/**
* <p>The ID of the thing group.</p>
*/
inline JobSummary& WithThingGroupId(const Aws::String& value) { SetThingGroupId(value); return *this;}
/**
* <p>The ID of the thing group.</p>
*/
inline JobSummary& WithThingGroupId(Aws::String&& value) { SetThingGroupId(std::move(value)); return *this;}
/**
* <p>The ID of the thing group.</p>
*/
inline JobSummary& WithThingGroupId(const char* value) { SetThingGroupId(value); return *this;}
/**
* <p>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.</p>
*/
inline const TargetSelection& GetTargetSelection() const{ return m_targetSelection; }
/**
* <p>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.</p>
*/
inline bool TargetSelectionHasBeenSet() const { return m_targetSelectionHasBeenSet; }
/**
* <p>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.</p>
*/
inline void SetTargetSelection(const TargetSelection& value) { m_targetSelectionHasBeenSet = true; m_targetSelection = value; }
/**
* <p>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.</p>
*/
inline void SetTargetSelection(TargetSelection&& value) { m_targetSelectionHasBeenSet = true; m_targetSelection = std::move(value); }
/**
* <p>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.</p>
*/
inline JobSummary& WithTargetSelection(const TargetSelection& value) { SetTargetSelection(value); return *this;}
/**
* <p>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.</p>
*/
inline JobSummary& WithTargetSelection(TargetSelection&& value) { SetTargetSelection(std::move(value)); return *this;}
/**
* <p>The job summary status.</p>
*/
inline const JobStatus& GetStatus() const{ return m_status; }
/**
* <p>The job summary status.</p>
*/
inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
/**
* <p>The job summary status.</p>
*/
inline void SetStatus(const JobStatus& value) { m_statusHasBeenSet = true; m_status = value; }
/**
* <p>The job summary status.</p>
*/
inline void SetStatus(JobStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); }
/**
* <p>The job summary status.</p>
*/
inline JobSummary& WithStatus(const JobStatus& value) { SetStatus(value); return *this;}
/**
* <p>The job summary status.</p>
*/
inline JobSummary& WithStatus(JobStatus&& value) { SetStatus(std::move(value)); return *this;}
/**
* <p>The time, in seconds since the epoch, when the job was created.</p>
*/
inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; }
/**
* <p>The time, in seconds since the epoch, when the job was created.</p>
*/
inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; }
/**
* <p>The time, in seconds since the epoch, when the job was created.</p>
*/
inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAtHasBeenSet = true; m_createdAt = value; }
/**
* <p>The time, in seconds since the epoch, when the job was created.</p>
*/
inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAtHasBeenSet = true; m_createdAt = std::move(value); }
/**
* <p>The time, in seconds since the epoch, when the job was created.</p>
*/
inline JobSummary& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;}
/**
* <p>The time, in seconds since the epoch, when the job was created.</p>
*/
inline JobSummary& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;}
/**
* <p>The time, in seconds since the epoch, when the job was last updated.</p>
*/
inline const Aws::Utils::DateTime& GetLastUpdatedAt() const{ return m_lastUpdatedAt; }
/**
* <p>The time, in seconds since the epoch, when the job was last updated.</p>
*/
inline bool LastUpdatedAtHasBeenSet() const { return m_lastUpdatedAtHasBeenSet; }
/**
* <p>The time, in seconds since the epoch, when the job was last updated.</p>
*/
inline void SetLastUpdatedAt(const Aws::Utils::DateTime& value) { m_lastUpdatedAtHasBeenSet = true; m_lastUpdatedAt = value; }
/**
* <p>The time, in seconds since the epoch, when the job was last updated.</p>
*/
inline void SetLastUpdatedAt(Aws::Utils::DateTime&& value) { m_lastUpdatedAtHasBeenSet = true; m_lastUpdatedAt = std::move(value); }
/**
* <p>The time, in seconds since the epoch, when the job was last updated.</p>
*/
inline JobSummary& WithLastUpdatedAt(const Aws::Utils::DateTime& value) { SetLastUpdatedAt(value); return *this;}
/**
* <p>The time, in seconds since the epoch, when the job was last updated.</p>
*/
inline JobSummary& WithLastUpdatedAt(Aws::Utils::DateTime&& value) { SetLastUpdatedAt(std::move(value)); return *this;}
/**
* <p>The time, in seconds since the epoch, when the job completed.</p>
*/
inline const Aws::Utils::DateTime& GetCompletedAt() const{ return m_completedAt; }
/**
* <p>The time, in seconds since the epoch, when the job completed.</p>
*/
inline bool CompletedAtHasBeenSet() const { return m_completedAtHasBeenSet; }
/**
* <p>The time, in seconds since the epoch, when the job completed.</p>
*/
inline void SetCompletedAt(const Aws::Utils::DateTime& value) { m_completedAtHasBeenSet = true; m_completedAt = value; }
/**
* <p>The time, in seconds since the epoch, when the job completed.</p>
*/
inline void SetCompletedAt(Aws::Utils::DateTime&& value) { m_completedAtHasBeenSet = true; m_completedAt = std::move(value); }
/**
* <p>The time, in seconds since the epoch, when the job completed.</p>
*/
inline JobSummary& WithCompletedAt(const Aws::Utils::DateTime& value) { SetCompletedAt(value); return *this;}
/**
* <p>The time, in seconds since the epoch, when the job completed.</p>
*/
inline JobSummary& WithCompletedAt(Aws::Utils::DateTime&& value) { SetCompletedAt(std::move(value)); return *this;}
private:
Aws::String m_jobArn;
bool m_jobArnHasBeenSet;
Aws::String m_jobId;
bool m_jobIdHasBeenSet;
Aws::String m_thingGroupId;
bool m_thingGroupIdHasBeenSet;
TargetSelection m_targetSelection;
bool m_targetSelectionHasBeenSet;
JobStatus m_status;
bool m_statusHasBeenSet;
Aws::Utils::DateTime m_createdAt;
bool m_createdAtHasBeenSet;
Aws::Utils::DateTime m_lastUpdatedAt;
bool m_lastUpdatedAtHasBeenSet;
Aws::Utils::DateTime m_completedAt;
bool m_completedAtHasBeenSet;
};
} // namespace Model
} // namespace IoT
} // namespace Aws