/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Provides information about a classification job, including the current status
* of the job.See Also:
AWS
* API Reference
The property- and tag-based conditions that determine which S3 buckets are * included or excluded from the job's analysis. Each time the job runs, the job * uses these criteria to determine which buckets to analyze. A job's definition * can contain a bucketCriteria object or a bucketDefinitions array, not both.
*/ inline const S3BucketCriteriaForJob& GetBucketCriteria() const{ return m_bucketCriteria; } /** *The property- and tag-based conditions that determine which S3 buckets are * included or excluded from the job's analysis. Each time the job runs, the job * uses these criteria to determine which buckets to analyze. A job's definition * can contain a bucketCriteria object or a bucketDefinitions array, not both.
*/ inline bool BucketCriteriaHasBeenSet() const { return m_bucketCriteriaHasBeenSet; } /** *The property- and tag-based conditions that determine which S3 buckets are * included or excluded from the job's analysis. Each time the job runs, the job * uses these criteria to determine which buckets to analyze. A job's definition * can contain a bucketCriteria object or a bucketDefinitions array, not both.
*/ inline void SetBucketCriteria(const S3BucketCriteriaForJob& value) { m_bucketCriteriaHasBeenSet = true; m_bucketCriteria = value; } /** *The property- and tag-based conditions that determine which S3 buckets are * included or excluded from the job's analysis. Each time the job runs, the job * uses these criteria to determine which buckets to analyze. A job's definition * can contain a bucketCriteria object or a bucketDefinitions array, not both.
*/ inline void SetBucketCriteria(S3BucketCriteriaForJob&& value) { m_bucketCriteriaHasBeenSet = true; m_bucketCriteria = std::move(value); } /** *The property- and tag-based conditions that determine which S3 buckets are * included or excluded from the job's analysis. Each time the job runs, the job * uses these criteria to determine which buckets to analyze. A job's definition * can contain a bucketCriteria object or a bucketDefinitions array, not both.
*/ inline JobSummary& WithBucketCriteria(const S3BucketCriteriaForJob& value) { SetBucketCriteria(value); return *this;} /** *The property- and tag-based conditions that determine which S3 buckets are * included or excluded from the job's analysis. Each time the job runs, the job * uses these criteria to determine which buckets to analyze. A job's definition * can contain a bucketCriteria object or a bucketDefinitions array, not both.
*/ inline JobSummary& WithBucketCriteria(S3BucketCriteriaForJob&& value) { SetBucketCriteria(std::move(value)); return *this;} /** *An array of objects, one for each Amazon Web Services account that owns * specific S3 buckets for the job to analyze. Each object specifies the account ID * for an account and one or more buckets to analyze for that account. A job's * definition can contain a bucketDefinitions array or a bucketCriteria object, not * both.
*/ inline const Aws::VectorAn array of objects, one for each Amazon Web Services account that owns * specific S3 buckets for the job to analyze. Each object specifies the account ID * for an account and one or more buckets to analyze for that account. A job's * definition can contain a bucketDefinitions array or a bucketCriteria object, not * both.
*/ inline bool BucketDefinitionsHasBeenSet() const { return m_bucketDefinitionsHasBeenSet; } /** *An array of objects, one for each Amazon Web Services account that owns * specific S3 buckets for the job to analyze. Each object specifies the account ID * for an account and one or more buckets to analyze for that account. A job's * definition can contain a bucketDefinitions array or a bucketCriteria object, not * both.
*/ inline void SetBucketDefinitions(const Aws::VectorAn array of objects, one for each Amazon Web Services account that owns * specific S3 buckets for the job to analyze. Each object specifies the account ID * for an account and one or more buckets to analyze for that account. A job's * definition can contain a bucketDefinitions array or a bucketCriteria object, not * both.
*/ inline void SetBucketDefinitions(Aws::VectorAn array of objects, one for each Amazon Web Services account that owns * specific S3 buckets for the job to analyze. Each object specifies the account ID * for an account and one or more buckets to analyze for that account. A job's * definition can contain a bucketDefinitions array or a bucketCriteria object, not * both.
*/ inline JobSummary& WithBucketDefinitions(const Aws::VectorAn array of objects, one for each Amazon Web Services account that owns * specific S3 buckets for the job to analyze. Each object specifies the account ID * for an account and one or more buckets to analyze for that account. A job's * definition can contain a bucketDefinitions array or a bucketCriteria object, not * both.
*/ inline JobSummary& WithBucketDefinitions(Aws::VectorAn array of objects, one for each Amazon Web Services account that owns * specific S3 buckets for the job to analyze. Each object specifies the account ID * for an account and one or more buckets to analyze for that account. A job's * definition can contain a bucketDefinitions array or a bucketCriteria object, not * both.
*/ inline JobSummary& AddBucketDefinitions(const S3BucketDefinitionForJob& value) { m_bucketDefinitionsHasBeenSet = true; m_bucketDefinitions.push_back(value); return *this; } /** *An array of objects, one for each Amazon Web Services account that owns * specific S3 buckets for the job to analyze. Each object specifies the account ID * for an account and one or more buckets to analyze for that account. A job's * definition can contain a bucketDefinitions array or a bucketCriteria object, not * both.
*/ inline JobSummary& AddBucketDefinitions(S3BucketDefinitionForJob&& value) { m_bucketDefinitionsHasBeenSet = true; m_bucketDefinitions.push_back(std::move(value)); return *this; } /** *The date and time, in UTC and extended ISO 8601 format, when the job was * created.
*/ inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; } /** *The date and time, in UTC and extended ISO 8601 format, when the job was * created.
*/ inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; } /** *The date and time, in UTC and extended ISO 8601 format, when the job was * created.
*/ inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAtHasBeenSet = true; m_createdAt = value; } /** *The date and time, in UTC and extended ISO 8601 format, when the job was * created.
*/ inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAtHasBeenSet = true; m_createdAt = std::move(value); } /** *The date and time, in UTC and extended ISO 8601 format, when the job was * created.
*/ inline JobSummary& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;} /** *The date and time, in UTC and extended ISO 8601 format, when the job was * created.
*/ inline JobSummary& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;} /** *The unique identifier for the job.
*/ inline const Aws::String& GetJobId() const{ return m_jobId; } /** *The unique identifier for the job.
*/ inline bool JobIdHasBeenSet() const { return m_jobIdHasBeenSet; } /** *The unique identifier for the job.
*/ inline void SetJobId(const Aws::String& value) { m_jobIdHasBeenSet = true; m_jobId = value; } /** *The unique identifier for the job.
*/ inline void SetJobId(Aws::String&& value) { m_jobIdHasBeenSet = true; m_jobId = std::move(value); } /** *The unique identifier for the job.
*/ inline void SetJobId(const char* value) { m_jobIdHasBeenSet = true; m_jobId.assign(value); } /** *The unique identifier for the job.
*/ inline JobSummary& WithJobId(const Aws::String& value) { SetJobId(value); return *this;} /** *The unique identifier for the job.
*/ inline JobSummary& WithJobId(Aws::String&& value) { SetJobId(std::move(value)); return *this;} /** *The unique identifier for the job.
*/ inline JobSummary& WithJobId(const char* value) { SetJobId(value); return *this;} /** *The current status of the job. Possible values are:
CANCELLED * - You cancelled the job or, if it's a one-time job, you paused the job and * didn't resume it within 30 days.
COMPLETE - For a one-time job, * Amazon Macie finished processing the data specified for the job. This value * doesn't apply to recurring jobs.
IDLE - For a recurring job, the * previous scheduled run is complete and the next scheduled run is pending. This * value doesn't apply to one-time jobs.
PAUSED - Macie started * running the job but additional processing would exceed the monthly sensitive * data discovery quota for your account or one or more member accounts that the * job analyzes data for.
RUNNING - For a one-time job, the job is * in progress. For a recurring job, a scheduled run is in progress.
USER_PAUSED - You paused the job. If you paused the job while it had a * status of RUNNING and you don't resume it within 30 days of pausing it, the job * or job run will expire and be cancelled, depending on the job's type. To check * the expiration date, refer to the UserPausedDetails.jobExpiresAt * property.
The current status of the job. Possible values are:
CANCELLED * - You cancelled the job or, if it's a one-time job, you paused the job and * didn't resume it within 30 days.
COMPLETE - For a one-time job, * Amazon Macie finished processing the data specified for the job. This value * doesn't apply to recurring jobs.
IDLE - For a recurring job, the * previous scheduled run is complete and the next scheduled run is pending. This * value doesn't apply to one-time jobs.
PAUSED - Macie started * running the job but additional processing would exceed the monthly sensitive * data discovery quota for your account or one or more member accounts that the * job analyzes data for.
RUNNING - For a one-time job, the job is * in progress. For a recurring job, a scheduled run is in progress.
USER_PAUSED - You paused the job. If you paused the job while it had a * status of RUNNING and you don't resume it within 30 days of pausing it, the job * or job run will expire and be cancelled, depending on the job's type. To check * the expiration date, refer to the UserPausedDetails.jobExpiresAt * property.
The current status of the job. Possible values are:
CANCELLED * - You cancelled the job or, if it's a one-time job, you paused the job and * didn't resume it within 30 days.
COMPLETE - For a one-time job, * Amazon Macie finished processing the data specified for the job. This value * doesn't apply to recurring jobs.
IDLE - For a recurring job, the * previous scheduled run is complete and the next scheduled run is pending. This * value doesn't apply to one-time jobs.
PAUSED - Macie started * running the job but additional processing would exceed the monthly sensitive * data discovery quota for your account or one or more member accounts that the * job analyzes data for.
RUNNING - For a one-time job, the job is * in progress. For a recurring job, a scheduled run is in progress.
USER_PAUSED - You paused the job. If you paused the job while it had a * status of RUNNING and you don't resume it within 30 days of pausing it, the job * or job run will expire and be cancelled, depending on the job's type. To check * the expiration date, refer to the UserPausedDetails.jobExpiresAt * property.
The current status of the job. Possible values are:
CANCELLED * - You cancelled the job or, if it's a one-time job, you paused the job and * didn't resume it within 30 days.
COMPLETE - For a one-time job, * Amazon Macie finished processing the data specified for the job. This value * doesn't apply to recurring jobs.
IDLE - For a recurring job, the * previous scheduled run is complete and the next scheduled run is pending. This * value doesn't apply to one-time jobs.
PAUSED - Macie started * running the job but additional processing would exceed the monthly sensitive * data discovery quota for your account or one or more member accounts that the * job analyzes data for.
RUNNING - For a one-time job, the job is * in progress. For a recurring job, a scheduled run is in progress.
USER_PAUSED - You paused the job. If you paused the job while it had a * status of RUNNING and you don't resume it within 30 days of pausing it, the job * or job run will expire and be cancelled, depending on the job's type. To check * the expiration date, refer to the UserPausedDetails.jobExpiresAt * property.
The current status of the job. Possible values are:
CANCELLED * - You cancelled the job or, if it's a one-time job, you paused the job and * didn't resume it within 30 days.
COMPLETE - For a one-time job, * Amazon Macie finished processing the data specified for the job. This value * doesn't apply to recurring jobs.
IDLE - For a recurring job, the * previous scheduled run is complete and the next scheduled run is pending. This * value doesn't apply to one-time jobs.
PAUSED - Macie started * running the job but additional processing would exceed the monthly sensitive * data discovery quota for your account or one or more member accounts that the * job analyzes data for.
RUNNING - For a one-time job, the job is * in progress. For a recurring job, a scheduled run is in progress.
USER_PAUSED - You paused the job. If you paused the job while it had a * status of RUNNING and you don't resume it within 30 days of pausing it, the job * or job run will expire and be cancelled, depending on the job's type. To check * the expiration date, refer to the UserPausedDetails.jobExpiresAt * property.
The current status of the job. Possible values are:
CANCELLED * - You cancelled the job or, if it's a one-time job, you paused the job and * didn't resume it within 30 days.
COMPLETE - For a one-time job, * Amazon Macie finished processing the data specified for the job. This value * doesn't apply to recurring jobs.
IDLE - For a recurring job, the * previous scheduled run is complete and the next scheduled run is pending. This * value doesn't apply to one-time jobs.
PAUSED - Macie started * running the job but additional processing would exceed the monthly sensitive * data discovery quota for your account or one or more member accounts that the * job analyzes data for.
RUNNING - For a one-time job, the job is * in progress. For a recurring job, a scheduled run is in progress.
USER_PAUSED - You paused the job. If you paused the job while it had a * status of RUNNING and you don't resume it within 30 days of pausing it, the job * or job run will expire and be cancelled, depending on the job's type. To check * the expiration date, refer to the UserPausedDetails.jobExpiresAt * property.
The schedule for running the job. Possible values are:
*ONE_TIME - The job runs only once.
SCHEDULED - The * job runs on a daily, weekly, or monthly basis.
The schedule for running the job. Possible values are:
*ONE_TIME - The job runs only once.
SCHEDULED - The * job runs on a daily, weekly, or monthly basis.
The schedule for running the job. Possible values are:
*ONE_TIME - The job runs only once.
SCHEDULED - The * job runs on a daily, weekly, or monthly basis.
The schedule for running the job. Possible values are:
*ONE_TIME - The job runs only once.
SCHEDULED - The * job runs on a daily, weekly, or monthly basis.
The schedule for running the job. Possible values are:
*ONE_TIME - The job runs only once.
SCHEDULED - The * job runs on a daily, weekly, or monthly basis.
The schedule for running the job. Possible values are:
*ONE_TIME - The job runs only once.
SCHEDULED - The * job runs on a daily, weekly, or monthly basis.
Specifies whether any account- or bucket-level access errors occurred when * the job ran. For a recurring job, this value indicates the error status of the * job's most recent run.
*/ inline const LastRunErrorStatus& GetLastRunErrorStatus() const{ return m_lastRunErrorStatus; } /** *Specifies whether any account- or bucket-level access errors occurred when * the job ran. For a recurring job, this value indicates the error status of the * job's most recent run.
*/ inline bool LastRunErrorStatusHasBeenSet() const { return m_lastRunErrorStatusHasBeenSet; } /** *Specifies whether any account- or bucket-level access errors occurred when * the job ran. For a recurring job, this value indicates the error status of the * job's most recent run.
*/ inline void SetLastRunErrorStatus(const LastRunErrorStatus& value) { m_lastRunErrorStatusHasBeenSet = true; m_lastRunErrorStatus = value; } /** *Specifies whether any account- or bucket-level access errors occurred when * the job ran. For a recurring job, this value indicates the error status of the * job's most recent run.
*/ inline void SetLastRunErrorStatus(LastRunErrorStatus&& value) { m_lastRunErrorStatusHasBeenSet = true; m_lastRunErrorStatus = std::move(value); } /** *Specifies whether any account- or bucket-level access errors occurred when * the job ran. For a recurring job, this value indicates the error status of the * job's most recent run.
*/ inline JobSummary& WithLastRunErrorStatus(const LastRunErrorStatus& value) { SetLastRunErrorStatus(value); return *this;} /** *Specifies whether any account- or bucket-level access errors occurred when * the job ran. For a recurring job, this value indicates the error status of the * job's most recent run.
*/ inline JobSummary& WithLastRunErrorStatus(LastRunErrorStatus&& value) { SetLastRunErrorStatus(std::move(value)); return *this;} /** *The custom name of the job.
*/ inline const Aws::String& GetName() const{ return m_name; } /** *The custom name of the job.
*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *The custom name of the job.
*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *The custom name of the job.
*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *The custom name of the job.
*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *The custom name of the job.
*/ inline JobSummary& WithName(const Aws::String& value) { SetName(value); return *this;} /** *The custom name of the job.
*/ inline JobSummary& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *The custom name of the job.
*/ inline JobSummary& WithName(const char* value) { SetName(value); return *this;} /** *If the current status of the job is USER_PAUSED, specifies when the job was * paused and when the job or job run will expire and be cancelled if it isn't * resumed. This value is present only if the value for jobStatus is * USER_PAUSED.
*/ inline const UserPausedDetails& GetUserPausedDetails() const{ return m_userPausedDetails; } /** *If the current status of the job is USER_PAUSED, specifies when the job was * paused and when the job or job run will expire and be cancelled if it isn't * resumed. This value is present only if the value for jobStatus is * USER_PAUSED.
*/ inline bool UserPausedDetailsHasBeenSet() const { return m_userPausedDetailsHasBeenSet; } /** *If the current status of the job is USER_PAUSED, specifies when the job was * paused and when the job or job run will expire and be cancelled if it isn't * resumed. This value is present only if the value for jobStatus is * USER_PAUSED.
*/ inline void SetUserPausedDetails(const UserPausedDetails& value) { m_userPausedDetailsHasBeenSet = true; m_userPausedDetails = value; } /** *If the current status of the job is USER_PAUSED, specifies when the job was * paused and when the job or job run will expire and be cancelled if it isn't * resumed. This value is present only if the value for jobStatus is * USER_PAUSED.
*/ inline void SetUserPausedDetails(UserPausedDetails&& value) { m_userPausedDetailsHasBeenSet = true; m_userPausedDetails = std::move(value); } /** *If the current status of the job is USER_PAUSED, specifies when the job was * paused and when the job or job run will expire and be cancelled if it isn't * resumed. This value is present only if the value for jobStatus is * USER_PAUSED.
*/ inline JobSummary& WithUserPausedDetails(const UserPausedDetails& value) { SetUserPausedDetails(value); return *this;} /** *If the current status of the job is USER_PAUSED, specifies when the job was * paused and when the job or job run will expire and be cancelled if it isn't * resumed. This value is present only if the value for jobStatus is * USER_PAUSED.
*/ inline JobSummary& WithUserPausedDetails(UserPausedDetails&& value) { SetUserPausedDetails(std::move(value)); return *this;} private: S3BucketCriteriaForJob m_bucketCriteria; bool m_bucketCriteriaHasBeenSet = false; Aws::Vector