/** * 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 #include #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace Macie2 { namespace Model { class AWS_MACIE2_API DescribeClassificationJobResult { public: DescribeClassificationJobResult(); DescribeClassificationJobResult(const Aws::AmazonWebServiceResult& result); DescribeClassificationJobResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The token that was provided to ensure the idempotency of the request to * create the job.

*/ inline const Aws::String& GetClientToken() const{ return m_clientToken; } /** *

The token that was provided to ensure the idempotency of the request to * create the job.

*/ inline void SetClientToken(const Aws::String& value) { m_clientToken = value; } /** *

The token that was provided to ensure the idempotency of the request to * create the job.

*/ inline void SetClientToken(Aws::String&& value) { m_clientToken = std::move(value); } /** *

The token that was provided to ensure the idempotency of the request to * create the job.

*/ inline void SetClientToken(const char* value) { m_clientToken.assign(value); } /** *

The token that was provided to ensure the idempotency of the request to * create the job.

*/ inline DescribeClassificationJobResult& WithClientToken(const Aws::String& value) { SetClientToken(value); return *this;} /** *

The token that was provided to ensure the idempotency of the request to * create the job.

*/ inline DescribeClassificationJobResult& WithClientToken(Aws::String&& value) { SetClientToken(std::move(value)); return *this;} /** *

The token that was provided to ensure the idempotency of the request to * create the job.

*/ inline DescribeClassificationJobResult& WithClientToken(const char* value) { SetClientToken(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 void SetCreatedAt(const Aws::Utils::DateTime& value) { 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_createdAt = std::move(value); } /** *

The date and time, in UTC and extended ISO 8601 format, when the job was * created.

*/ inline DescribeClassificationJobResult& 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 DescribeClassificationJobResult& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;} /** *

The custom data identifiers that the job uses to analyze data.

*/ inline const Aws::Vector& GetCustomDataIdentifierIds() const{ return m_customDataIdentifierIds; } /** *

The custom data identifiers that the job uses to analyze data.

*/ inline void SetCustomDataIdentifierIds(const Aws::Vector& value) { m_customDataIdentifierIds = value; } /** *

The custom data identifiers that the job uses to analyze data.

*/ inline void SetCustomDataIdentifierIds(Aws::Vector&& value) { m_customDataIdentifierIds = std::move(value); } /** *

The custom data identifiers that the job uses to analyze data.

*/ inline DescribeClassificationJobResult& WithCustomDataIdentifierIds(const Aws::Vector& value) { SetCustomDataIdentifierIds(value); return *this;} /** *

The custom data identifiers that the job uses to analyze data.

*/ inline DescribeClassificationJobResult& WithCustomDataIdentifierIds(Aws::Vector&& value) { SetCustomDataIdentifierIds(std::move(value)); return *this;} /** *

The custom data identifiers that the job uses to analyze data.

*/ inline DescribeClassificationJobResult& AddCustomDataIdentifierIds(const Aws::String& value) { m_customDataIdentifierIds.push_back(value); return *this; } /** *

The custom data identifiers that the job uses to analyze data.

*/ inline DescribeClassificationJobResult& AddCustomDataIdentifierIds(Aws::String&& value) { m_customDataIdentifierIds.push_back(std::move(value)); return *this; } /** *

The custom data identifiers that the job uses to analyze data.

*/ inline DescribeClassificationJobResult& AddCustomDataIdentifierIds(const char* value) { m_customDataIdentifierIds.push_back(value); return *this; } /** *

The custom description of the job.

*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *

The custom description of the job.

*/ inline void SetDescription(const Aws::String& value) { m_description = value; } /** *

The custom description of the job.

*/ inline void SetDescription(Aws::String&& value) { m_description = std::move(value); } /** *

The custom description of the job.

*/ inline void SetDescription(const char* value) { m_description.assign(value); } /** *

The custom description of the job.

*/ inline DescribeClassificationJobResult& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *

The custom description of the job.

*/ inline DescribeClassificationJobResult& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *

The custom description of the job.

*/ inline DescribeClassificationJobResult& WithDescription(const char* value) { SetDescription(value); return *this;} /** *

Specifies whether the job has run for the first time.

*/ inline bool GetInitialRun() const{ return m_initialRun; } /** *

Specifies whether the job has run for the first time.

*/ inline void SetInitialRun(bool value) { m_initialRun = value; } /** *

Specifies whether the job has run for the first time.

*/ inline DescribeClassificationJobResult& WithInitialRun(bool value) { SetInitialRun(value); return *this;} /** *

The Amazon Resource Name (ARN) of the job.

*/ inline const Aws::String& GetJobArn() const{ return m_jobArn; } /** *

The Amazon Resource Name (ARN) of the job.

*/ inline void SetJobArn(const Aws::String& value) { m_jobArn = value; } /** *

The Amazon Resource Name (ARN) of the job.

*/ inline void SetJobArn(Aws::String&& value) { m_jobArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the job.

*/ inline void SetJobArn(const char* value) { m_jobArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the job.

*/ inline DescribeClassificationJobResult& WithJobArn(const Aws::String& value) { SetJobArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the job.

*/ inline DescribeClassificationJobResult& WithJobArn(Aws::String&& value) { SetJobArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the job.

*/ inline DescribeClassificationJobResult& WithJobArn(const char* value) { SetJobArn(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 void SetJobId(const Aws::String& value) { m_jobId = value; } /** *

The unique identifier for the job.

*/ inline void SetJobId(Aws::String&& value) { m_jobId = std::move(value); } /** *

The unique identifier for the job.

*/ inline void SetJobId(const char* value) { m_jobId.assign(value); } /** *

The unique identifier for the job.

*/ inline DescribeClassificationJobResult& WithJobId(const Aws::String& value) { SetJobId(value); return *this;} /** *

The unique identifier for the job.

*/ inline DescribeClassificationJobResult& WithJobId(Aws::String&& value) { SetJobId(std::move(value)); return *this;} /** *

The unique identifier for the job.

*/ inline DescribeClassificationJobResult& 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 void SetJobStatus(const JobStatus& value) { 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_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 DescribeClassificationJobResult& 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 DescribeClassificationJobResult& 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. The * scheduleFrequency property indicates the recurrence pattern for the * job.

*/ 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. The * scheduleFrequency property indicates the recurrence pattern for the * job.

*/ inline void SetJobType(const JobType& value) { 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. The * scheduleFrequency property indicates the recurrence pattern for the * job.

*/ inline void SetJobType(JobType&& value) { 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. The * scheduleFrequency property indicates the recurrence pattern for the * job.

*/ inline DescribeClassificationJobResult& 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. The * scheduleFrequency property indicates the recurrence pattern for the * job.

*/ inline DescribeClassificationJobResult& WithJobType(JobType&& value) { SetJobType(std::move(value)); return *this;} /** *

The date and time, in UTC and extended ISO 8601 format, when the job last * ran.

*/ inline const Aws::Utils::DateTime& GetLastRunTime() const{ return m_lastRunTime; } /** *

The date and time, in UTC and extended ISO 8601 format, when the job last * ran.

*/ inline void SetLastRunTime(const Aws::Utils::DateTime& value) { m_lastRunTime = value; } /** *

The date and time, in UTC and extended ISO 8601 format, when the job last * ran.

*/ inline void SetLastRunTime(Aws::Utils::DateTime&& value) { m_lastRunTime = std::move(value); } /** *

The date and time, in UTC and extended ISO 8601 format, when the job last * ran.

*/ inline DescribeClassificationJobResult& WithLastRunTime(const Aws::Utils::DateTime& value) { SetLastRunTime(value); return *this;} /** *

The date and time, in UTC and extended ISO 8601 format, when the job last * ran.

*/ inline DescribeClassificationJobResult& WithLastRunTime(Aws::Utils::DateTime&& value) { SetLastRunTime(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 void SetName(const Aws::String& value) { m_name = value; } /** *

The custom name of the job.

*/ inline void SetName(Aws::String&& value) { m_name = std::move(value); } /** *

The custom name of the job.

*/ inline void SetName(const char* value) { m_name.assign(value); } /** *

The custom name of the job.

*/ inline DescribeClassificationJobResult& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

The custom name of the job.

*/ inline DescribeClassificationJobResult& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

The custom name of the job.

*/ inline DescribeClassificationJobResult& WithName(const char* value) { SetName(value); return *this;} /** *

The S3 buckets that the job is configured to analyze, and the scope of that * analysis.

*/ inline const S3JobDefinition& GetS3JobDefinition() const{ return m_s3JobDefinition; } /** *

The S3 buckets that the job is configured to analyze, and the scope of that * analysis.

*/ inline void SetS3JobDefinition(const S3JobDefinition& value) { m_s3JobDefinition = value; } /** *

The S3 buckets that the job is configured to analyze, and the scope of that * analysis.

*/ inline void SetS3JobDefinition(S3JobDefinition&& value) { m_s3JobDefinition = std::move(value); } /** *

The S3 buckets that the job is configured to analyze, and the scope of that * analysis.

*/ inline DescribeClassificationJobResult& WithS3JobDefinition(const S3JobDefinition& value) { SetS3JobDefinition(value); return *this;} /** *

The S3 buckets that the job is configured to analyze, and the scope of that * analysis.

*/ inline DescribeClassificationJobResult& WithS3JobDefinition(S3JobDefinition&& value) { SetS3JobDefinition(std::move(value)); return *this;} /** *

The sampling depth, as a percentage, that determines the number of objects * that the job processes.

*/ inline int GetSamplingPercentage() const{ return m_samplingPercentage; } /** *

The sampling depth, as a percentage, that determines the number of objects * that the job processes.

*/ inline void SetSamplingPercentage(int value) { m_samplingPercentage = value; } /** *

The sampling depth, as a percentage, that determines the number of objects * that the job processes.

*/ inline DescribeClassificationJobResult& WithSamplingPercentage(int value) { SetSamplingPercentage(value); return *this;} /** *

The recurrence pattern for running the job. If the job is configured to run * only once, this value is null.

*/ inline const JobScheduleFrequency& GetScheduleFrequency() const{ return m_scheduleFrequency; } /** *

The recurrence pattern for running the job. If the job is configured to run * only once, this value is null.

*/ inline void SetScheduleFrequency(const JobScheduleFrequency& value) { m_scheduleFrequency = value; } /** *

The recurrence pattern for running the job. If the job is configured to run * only once, this value is null.

*/ inline void SetScheduleFrequency(JobScheduleFrequency&& value) { m_scheduleFrequency = std::move(value); } /** *

The recurrence pattern for running the job. If the job is configured to run * only once, this value is null.

*/ inline DescribeClassificationJobResult& WithScheduleFrequency(const JobScheduleFrequency& value) { SetScheduleFrequency(value); return *this;} /** *

The recurrence pattern for running the job. If the job is configured to run * only once, this value is null.

*/ inline DescribeClassificationJobResult& WithScheduleFrequency(JobScheduleFrequency&& value) { SetScheduleFrequency(std::move(value)); return *this;} /** *

The number of times that the job has run and processing statistics for the * job's most recent run.

*/ inline const Statistics& GetStatistics() const{ return m_statistics; } /** *

The number of times that the job has run and processing statistics for the * job's most recent run.

*/ inline void SetStatistics(const Statistics& value) { m_statistics = value; } /** *

The number of times that the job has run and processing statistics for the * job's most recent run.

*/ inline void SetStatistics(Statistics&& value) { m_statistics = std::move(value); } /** *

The number of times that the job has run and processing statistics for the * job's most recent run.

*/ inline DescribeClassificationJobResult& WithStatistics(const Statistics& value) { SetStatistics(value); return *this;} /** *

The number of times that the job has run and processing statistics for the * job's most recent run.

*/ inline DescribeClassificationJobResult& WithStatistics(Statistics&& value) { SetStatistics(std::move(value)); return *this;} /** *

A map of key-value pairs that identifies the tags (keys and values) that are * associated with the classification job.

*/ inline const Aws::Map& GetTags() const{ return m_tags; } /** *

A map of key-value pairs that identifies the tags (keys and values) that are * associated with the classification job.

*/ inline void SetTags(const Aws::Map& value) { m_tags = value; } /** *

A map of key-value pairs that identifies the tags (keys and values) that are * associated with the classification job.

*/ inline void SetTags(Aws::Map&& value) { m_tags = std::move(value); } /** *

A map of key-value pairs that identifies the tags (keys and values) that are * associated with the classification job.

*/ inline DescribeClassificationJobResult& WithTags(const Aws::Map& value) { SetTags(value); return *this;} /** *

A map of key-value pairs that identifies the tags (keys and values) that are * associated with the classification job.

*/ inline DescribeClassificationJobResult& WithTags(Aws::Map&& value) { SetTags(std::move(value)); return *this;} /** *

A map of key-value pairs that identifies the tags (keys and values) that are * associated with the classification job.

*/ inline DescribeClassificationJobResult& AddTags(const Aws::String& key, const Aws::String& value) { m_tags.emplace(key, value); return *this; } /** *

A map of key-value pairs that identifies the tags (keys and values) that are * associated with the classification job.

*/ inline DescribeClassificationJobResult& AddTags(Aws::String&& key, const Aws::String& value) { m_tags.emplace(std::move(key), value); return *this; } /** *

A map of key-value pairs that identifies the tags (keys and values) that are * associated with the classification job.

*/ inline DescribeClassificationJobResult& AddTags(const Aws::String& key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } /** *

A map of key-value pairs that identifies the tags (keys and values) that are * associated with the classification job.

*/ inline DescribeClassificationJobResult& AddTags(Aws::String&& key, Aws::String&& value) { m_tags.emplace(std::move(key), std::move(value)); return *this; } /** *

A map of key-value pairs that identifies the tags (keys and values) that are * associated with the classification job.

*/ inline DescribeClassificationJobResult& AddTags(const char* key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } /** *

A map of key-value pairs that identifies the tags (keys and values) that are * associated with the classification job.

*/ inline DescribeClassificationJobResult& AddTags(Aws::String&& key, const char* value) { m_tags.emplace(std::move(key), value); return *this; } /** *

A map of key-value pairs that identifies the tags (keys and values) that are * associated with the classification job.

*/ inline DescribeClassificationJobResult& AddTags(const char* key, const char* value) { m_tags.emplace(key, value); return *this; } private: Aws::String m_clientToken; Aws::Utils::DateTime m_createdAt; Aws::Vector m_customDataIdentifierIds; Aws::String m_description; bool m_initialRun; Aws::String m_jobArn; Aws::String m_jobId; JobStatus m_jobStatus; JobType m_jobType; Aws::Utils::DateTime m_lastRunTime; Aws::String m_name; S3JobDefinition m_s3JobDefinition; int m_samplingPercentage; JobScheduleFrequency m_scheduleFrequency; Statistics m_statistics; Aws::Map m_tags; }; } // namespace Model } // namespace Macie2 } // namespace Aws