/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace Macie2 { namespace Model { /** *

Provides information about a classification job, including the current status * of the job.

See Also:

AWS * API Reference

*/ class AWS_MACIE2_API JobSummary { public: JobSummary(); JobSummary(Aws::Utils::Json::JsonView jsonValue); JobSummary& operator=(Aws::Utils::Json::JsonView jsonValue); Aws::Utils::Json::JsonValue Jsonize() const; /** *

The S3 buckets that the job is configured to analyze.

*/ inline const Aws::Vector& GetBucketDefinitions() const{ return m_bucketDefinitions; } /** *

The S3 buckets that the job is configured to analyze.

*/ inline bool BucketDefinitionsHasBeenSet() const { return m_bucketDefinitionsHasBeenSet; } /** *

The S3 buckets that the job is configured to analyze.

*/ inline void SetBucketDefinitions(const Aws::Vector& value) { m_bucketDefinitionsHasBeenSet = true; m_bucketDefinitions = value; } /** *

The S3 buckets that the job is configured to analyze.

*/ inline void SetBucketDefinitions(Aws::Vector&& value) { m_bucketDefinitionsHasBeenSet = true; m_bucketDefinitions = std::move(value); } /** *

The S3 buckets that the job is configured to analyze.

*/ inline JobSummary& WithBucketDefinitions(const Aws::Vector& value) { SetBucketDefinitions(value); return *this;} /** *

The S3 buckets that the job is configured to analyze.

*/ inline JobSummary& WithBucketDefinitions(Aws::Vector&& value) { SetBucketDefinitions(std::move(value)); return *this;} /** *

The S3 buckets that the job is configured to analyze.

*/ inline JobSummary& AddBucketDefinitions(const S3BucketDefinitionForJob& value) { m_bucketDefinitionsHasBeenSet = true; m_bucketDefinitions.push_back(value); return *this; } /** *

The S3 buckets that the job is configured to analyze.

*/ 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 * - The job was cancelled by you or a user of the master account for your * organization. A job might also be cancelled if ownership of an S3 bucket changed * while the job was running, and that change affected the job's access to the * bucket.

  • COMPLETE - Amazon Macie finished processing all the data * specified for the job.

  • IDLE - For a recurring job, the previous * scheduled run is complete and the next scheduled run is pending. This value * doesn't apply to jobs that occur only once.

  • PAUSED - Amazon * Macie started the job, but completion of the job would exceed one or more quotas * for your account.

  • RUNNING - The job is in * progress.

*/ inline const JobStatus& GetJobStatus() const{ return m_jobStatus; } /** *

The current status of the job. Possible values are:

  • CANCELLED * - The job was cancelled by you or a user of the master account for your * organization. A job might also be cancelled if ownership of an S3 bucket changed * while the job was running, and that change affected the job's access to the * bucket.

  • COMPLETE - Amazon Macie finished processing all the data * specified for the job.

  • IDLE - For a recurring job, the previous * scheduled run is complete and the next scheduled run is pending. This value * doesn't apply to jobs that occur only once.

  • PAUSED - Amazon * Macie started the job, but completion of the job would exceed one or more quotas * for your account.

  • RUNNING - The job is in * progress.

*/ inline bool JobStatusHasBeenSet() const { return m_jobStatusHasBeenSet; } /** *

The current status of the job. Possible values are:

  • CANCELLED * - The job was cancelled by you or a user of the master account for your * organization. A job might also be cancelled if ownership of an S3 bucket changed * while the job was running, and that change affected the job's access to the * bucket.

  • COMPLETE - Amazon Macie finished processing all the data * specified for the job.

  • IDLE - For a recurring job, the previous * scheduled run is complete and the next scheduled run is pending. This value * doesn't apply to jobs that occur only once.

  • PAUSED - Amazon * Macie started the job, but completion of the job would exceed one or more quotas * for your account.

  • RUNNING - The job is in * progress.

*/ inline void SetJobStatus(const JobStatus& value) { m_jobStatusHasBeenSet = true; m_jobStatus = value; } /** *

The current status of the job. Possible values are:

  • CANCELLED * - The job was cancelled by you or a user of the master account for your * organization. A job might also be cancelled if ownership of an S3 bucket changed * while the job was running, and that change affected the job's access to the * bucket.

  • COMPLETE - Amazon Macie finished processing all the data * specified for the job.

  • IDLE - For a recurring job, the previous * scheduled run is complete and the next scheduled run is pending. This value * doesn't apply to jobs that occur only once.

  • PAUSED - Amazon * Macie started the job, but completion of the job would exceed one or more quotas * for your account.

  • RUNNING - The job is in * progress.

*/ inline void SetJobStatus(JobStatus&& value) { m_jobStatusHasBeenSet = true; m_jobStatus = std::move(value); } /** *

The current status of the job. Possible values are:

  • CANCELLED * - The job was cancelled by you or a user of the master account for your * organization. A job might also be cancelled if ownership of an S3 bucket changed * while the job was running, and that change affected the job's access to the * bucket.

  • COMPLETE - Amazon Macie finished processing all the data * specified for the job.

  • IDLE - For a recurring job, the previous * scheduled run is complete and the next scheduled run is pending. This value * doesn't apply to jobs that occur only once.

  • PAUSED - Amazon * Macie started the job, but completion of the job would exceed one or more quotas * for your account.

  • RUNNING - The job is in * progress.

*/ inline JobSummary& WithJobStatus(const JobStatus& value) { SetJobStatus(value); return *this;} /** *

The current status of the job. Possible values are:

  • CANCELLED * - The job was cancelled by you or a user of the master account for your * organization. A job might also be cancelled if ownership of an S3 bucket changed * while the job was running, and that change affected the job's access to the * bucket.

  • COMPLETE - Amazon Macie finished processing all the data * specified for the job.

  • IDLE - For a recurring job, the previous * scheduled run is complete and the next scheduled run is pending. This value * doesn't apply to jobs that occur only once.

  • PAUSED - Amazon * Macie started the job, but completion of the job would exceed one or more quotas * for your account.

  • RUNNING - The job is in * progress.

*/ inline JobSummary& WithJobStatus(JobStatus&& value) { SetJobStatus(std::move(value)); return *this;} /** *

The schedule for running the job. Possible values are:

*
  • ONE_TIME - The job ran or will run only once.

  • *
  • SCHEDULED - The job runs on a daily, weekly, or monthly * basis.

*/ inline const JobType& GetJobType() const{ return m_jobType; } /** *

The schedule for running the job. Possible values are:

*
  • ONE_TIME - The job ran or will run only once.

  • *
  • SCHEDULED - The job runs on a daily, weekly, or monthly * basis.

*/ inline bool JobTypeHasBeenSet() const { return m_jobTypeHasBeenSet; } /** *

The schedule for running the job. Possible values are:

*
  • ONE_TIME - The job ran or will run only once.

  • *
  • SCHEDULED - The job runs on a daily, weekly, or monthly * basis.

*/ inline void SetJobType(const JobType& value) { m_jobTypeHasBeenSet = true; m_jobType = value; } /** *

The schedule for running the job. Possible values are:

*
  • ONE_TIME - The job ran or will run only once.

  • *
  • SCHEDULED - The job runs on a daily, weekly, or monthly * basis.

*/ inline void SetJobType(JobType&& value) { m_jobTypeHasBeenSet = true; m_jobType = std::move(value); } /** *

The schedule for running the job. Possible values are:

*
  • ONE_TIME - The job ran or will run only once.

  • *
  • SCHEDULED - The job runs on a daily, weekly, or monthly * basis.

*/ inline JobSummary& WithJobType(const JobType& value) { SetJobType(value); return *this;} /** *

The schedule for running the job. Possible values are:

*
  • ONE_TIME - The job ran or will run only once.

  • *
  • SCHEDULED - The job runs on a daily, weekly, or monthly * basis.

*/ inline JobSummary& WithJobType(JobType&& value) { SetJobType(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;} private: Aws::Vector m_bucketDefinitions; bool m_bucketDefinitionsHasBeenSet; Aws::Utils::DateTime m_createdAt; bool m_createdAtHasBeenSet; Aws::String m_jobId; bool m_jobIdHasBeenSet; JobStatus m_jobStatus; bool m_jobStatusHasBeenSet; JobType m_jobType; bool m_jobTypeHasBeenSet; Aws::String m_name; bool m_nameHasBeenSet; }; } // namespace Model } // namespace Macie2 } // namespace Aws