/** * 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 #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace GlueDataBrew { namespace Model { /** *

Represents all of the attributes of a DataBrew job.

See Also:

* AWS API * Reference

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

The ID of the Amazon Web Services account that owns the job.

*/ inline const Aws::String& GetAccountId() const{ return m_accountId; } /** *

The ID of the Amazon Web Services account that owns the job.

*/ inline bool AccountIdHasBeenSet() const { return m_accountIdHasBeenSet; } /** *

The ID of the Amazon Web Services account that owns the job.

*/ inline void SetAccountId(const Aws::String& value) { m_accountIdHasBeenSet = true; m_accountId = value; } /** *

The ID of the Amazon Web Services account that owns the job.

*/ inline void SetAccountId(Aws::String&& value) { m_accountIdHasBeenSet = true; m_accountId = std::move(value); } /** *

The ID of the Amazon Web Services account that owns the job.

*/ inline void SetAccountId(const char* value) { m_accountIdHasBeenSet = true; m_accountId.assign(value); } /** *

The ID of the Amazon Web Services account that owns the job.

*/ inline Job& WithAccountId(const Aws::String& value) { SetAccountId(value); return *this;} /** *

The ID of the Amazon Web Services account that owns the job.

*/ inline Job& WithAccountId(Aws::String&& value) { SetAccountId(std::move(value)); return *this;} /** *

The ID of the Amazon Web Services account that owns the job.

*/ inline Job& WithAccountId(const char* value) { SetAccountId(value); return *this;} /** *

The Amazon Resource Name (ARN) of the user who created the job.

*/ inline const Aws::String& GetCreatedBy() const{ return m_createdBy; } /** *

The Amazon Resource Name (ARN) of the user who created the job.

*/ inline bool CreatedByHasBeenSet() const { return m_createdByHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the user who created the job.

*/ inline void SetCreatedBy(const Aws::String& value) { m_createdByHasBeenSet = true; m_createdBy = value; } /** *

The Amazon Resource Name (ARN) of the user who created the job.

*/ inline void SetCreatedBy(Aws::String&& value) { m_createdByHasBeenSet = true; m_createdBy = std::move(value); } /** *

The Amazon Resource Name (ARN) of the user who created the job.

*/ inline void SetCreatedBy(const char* value) { m_createdByHasBeenSet = true; m_createdBy.assign(value); } /** *

The Amazon Resource Name (ARN) of the user who created the job.

*/ inline Job& WithCreatedBy(const Aws::String& value) { SetCreatedBy(value); return *this;} /** *

The Amazon Resource Name (ARN) of the user who created the job.

*/ inline Job& WithCreatedBy(Aws::String&& value) { SetCreatedBy(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the user who created the job.

*/ inline Job& WithCreatedBy(const char* value) { SetCreatedBy(value); return *this;} /** *

The date and time that the job was created.

*/ inline const Aws::Utils::DateTime& GetCreateDate() const{ return m_createDate; } /** *

The date and time that the job was created.

*/ inline bool CreateDateHasBeenSet() const { return m_createDateHasBeenSet; } /** *

The date and time that the job was created.

*/ inline void SetCreateDate(const Aws::Utils::DateTime& value) { m_createDateHasBeenSet = true; m_createDate = value; } /** *

The date and time that the job was created.

*/ inline void SetCreateDate(Aws::Utils::DateTime&& value) { m_createDateHasBeenSet = true; m_createDate = std::move(value); } /** *

The date and time that the job was created.

*/ inline Job& WithCreateDate(const Aws::Utils::DateTime& value) { SetCreateDate(value); return *this;} /** *

The date and time that the job was created.

*/ inline Job& WithCreateDate(Aws::Utils::DateTime&& value) { SetCreateDate(std::move(value)); return *this;} /** *

A dataset that the job is to process.

*/ inline const Aws::String& GetDatasetName() const{ return m_datasetName; } /** *

A dataset that the job is to process.

*/ inline bool DatasetNameHasBeenSet() const { return m_datasetNameHasBeenSet; } /** *

A dataset that the job is to process.

*/ inline void SetDatasetName(const Aws::String& value) { m_datasetNameHasBeenSet = true; m_datasetName = value; } /** *

A dataset that the job is to process.

*/ inline void SetDatasetName(Aws::String&& value) { m_datasetNameHasBeenSet = true; m_datasetName = std::move(value); } /** *

A dataset that the job is to process.

*/ inline void SetDatasetName(const char* value) { m_datasetNameHasBeenSet = true; m_datasetName.assign(value); } /** *

A dataset that the job is to process.

*/ inline Job& WithDatasetName(const Aws::String& value) { SetDatasetName(value); return *this;} /** *

A dataset that the job is to process.

*/ inline Job& WithDatasetName(Aws::String&& value) { SetDatasetName(std::move(value)); return *this;} /** *

A dataset that the job is to process.

*/ inline Job& WithDatasetName(const char* value) { SetDatasetName(value); return *this;} /** *

The Amazon Resource Name (ARN) of an encryption key that is used to protect * the job output. For more information, see Encrypting * data written by DataBrew jobs

*/ inline const Aws::String& GetEncryptionKeyArn() const{ return m_encryptionKeyArn; } /** *

The Amazon Resource Name (ARN) of an encryption key that is used to protect * the job output. For more information, see Encrypting * data written by DataBrew jobs

*/ inline bool EncryptionKeyArnHasBeenSet() const { return m_encryptionKeyArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of an encryption key that is used to protect * the job output. For more information, see Encrypting * data written by DataBrew jobs

*/ inline void SetEncryptionKeyArn(const Aws::String& value) { m_encryptionKeyArnHasBeenSet = true; m_encryptionKeyArn = value; } /** *

The Amazon Resource Name (ARN) of an encryption key that is used to protect * the job output. For more information, see Encrypting * data written by DataBrew jobs

*/ inline void SetEncryptionKeyArn(Aws::String&& value) { m_encryptionKeyArnHasBeenSet = true; m_encryptionKeyArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of an encryption key that is used to protect * the job output. For more information, see Encrypting * data written by DataBrew jobs

*/ inline void SetEncryptionKeyArn(const char* value) { m_encryptionKeyArnHasBeenSet = true; m_encryptionKeyArn.assign(value); } /** *

The Amazon Resource Name (ARN) of an encryption key that is used to protect * the job output. For more information, see Encrypting * data written by DataBrew jobs

*/ inline Job& WithEncryptionKeyArn(const Aws::String& value) { SetEncryptionKeyArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of an encryption key that is used to protect * the job output. For more information, see Encrypting * data written by DataBrew jobs

*/ inline Job& WithEncryptionKeyArn(Aws::String&& value) { SetEncryptionKeyArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of an encryption key that is used to protect * the job output. For more information, see Encrypting * data written by DataBrew jobs

*/ inline Job& WithEncryptionKeyArn(const char* value) { SetEncryptionKeyArn(value); return *this;} /** *

The encryption mode for the job, which can be one of the following:

    *
  • SSE-KMS - Server-side encryption with keys managed by * KMS.

  • SSE-S3 - Server-side encryption with keys * managed by Amazon S3.

*/ inline const EncryptionMode& GetEncryptionMode() const{ return m_encryptionMode; } /** *

The encryption mode for the job, which can be one of the following:

    *
  • SSE-KMS - Server-side encryption with keys managed by * KMS.

  • SSE-S3 - Server-side encryption with keys * managed by Amazon S3.

*/ inline bool EncryptionModeHasBeenSet() const { return m_encryptionModeHasBeenSet; } /** *

The encryption mode for the job, which can be one of the following:

    *
  • SSE-KMS - Server-side encryption with keys managed by * KMS.

  • SSE-S3 - Server-side encryption with keys * managed by Amazon S3.

*/ inline void SetEncryptionMode(const EncryptionMode& value) { m_encryptionModeHasBeenSet = true; m_encryptionMode = value; } /** *

The encryption mode for the job, which can be one of the following:

    *
  • SSE-KMS - Server-side encryption with keys managed by * KMS.

  • SSE-S3 - Server-side encryption with keys * managed by Amazon S3.

*/ inline void SetEncryptionMode(EncryptionMode&& value) { m_encryptionModeHasBeenSet = true; m_encryptionMode = std::move(value); } /** *

The encryption mode for the job, which can be one of the following:

    *
  • SSE-KMS - Server-side encryption with keys managed by * KMS.

  • SSE-S3 - Server-side encryption with keys * managed by Amazon S3.

*/ inline Job& WithEncryptionMode(const EncryptionMode& value) { SetEncryptionMode(value); return *this;} /** *

The encryption mode for the job, which can be one of the following:

    *
  • SSE-KMS - Server-side encryption with keys managed by * KMS.

  • SSE-S3 - Server-side encryption with keys * managed by Amazon S3.

*/ inline Job& WithEncryptionMode(EncryptionMode&& value) { SetEncryptionMode(std::move(value)); return *this;} /** *

The unique name of the job.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

The unique name of the job.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

The unique name of the job.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

The unique name of the job.

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

The unique name of the job.

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

The unique name of the job.

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

The unique name of the job.

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

The unique name of the job.

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

The job type of the job, which must be one of the following:

  • *

    PROFILE - A job to analyze a dataset, to determine its size, * data types, data distribution, and more.

  • RECIPE * - A job to apply one or more transformations to a dataset.

*/ inline const JobType& GetType() const{ return m_type; } /** *

The job type of the job, which must be one of the following:

  • *

    PROFILE - A job to analyze a dataset, to determine its size, * data types, data distribution, and more.

  • RECIPE * - A job to apply one or more transformations to a dataset.

*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } /** *

The job type of the job, which must be one of the following:

  • *

    PROFILE - A job to analyze a dataset, to determine its size, * data types, data distribution, and more.

  • RECIPE * - A job to apply one or more transformations to a dataset.

*/ inline void SetType(const JobType& value) { m_typeHasBeenSet = true; m_type = value; } /** *

The job type of the job, which must be one of the following:

  • *

    PROFILE - A job to analyze a dataset, to determine its size, * data types, data distribution, and more.

  • RECIPE * - A job to apply one or more transformations to a dataset.

*/ inline void SetType(JobType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } /** *

The job type of the job, which must be one of the following:

  • *

    PROFILE - A job to analyze a dataset, to determine its size, * data types, data distribution, and more.

  • RECIPE * - A job to apply one or more transformations to a dataset.

*/ inline Job& WithType(const JobType& value) { SetType(value); return *this;} /** *

The job type of the job, which must be one of the following:

  • *

    PROFILE - A job to analyze a dataset, to determine its size, * data types, data distribution, and more.

  • RECIPE * - A job to apply one or more transformations to a dataset.

*/ inline Job& WithType(JobType&& value) { SetType(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the user who last modified the job.

*/ inline const Aws::String& GetLastModifiedBy() const{ return m_lastModifiedBy; } /** *

The Amazon Resource Name (ARN) of the user who last modified the job.

*/ inline bool LastModifiedByHasBeenSet() const { return m_lastModifiedByHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the user who last modified the job.

*/ inline void SetLastModifiedBy(const Aws::String& value) { m_lastModifiedByHasBeenSet = true; m_lastModifiedBy = value; } /** *

The Amazon Resource Name (ARN) of the user who last modified the job.

*/ inline void SetLastModifiedBy(Aws::String&& value) { m_lastModifiedByHasBeenSet = true; m_lastModifiedBy = std::move(value); } /** *

The Amazon Resource Name (ARN) of the user who last modified the job.

*/ inline void SetLastModifiedBy(const char* value) { m_lastModifiedByHasBeenSet = true; m_lastModifiedBy.assign(value); } /** *

The Amazon Resource Name (ARN) of the user who last modified the job.

*/ inline Job& WithLastModifiedBy(const Aws::String& value) { SetLastModifiedBy(value); return *this;} /** *

The Amazon Resource Name (ARN) of the user who last modified the job.

*/ inline Job& WithLastModifiedBy(Aws::String&& value) { SetLastModifiedBy(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the user who last modified the job.

*/ inline Job& WithLastModifiedBy(const char* value) { SetLastModifiedBy(value); return *this;} /** *

The modification date and time of the job.

*/ inline const Aws::Utils::DateTime& GetLastModifiedDate() const{ return m_lastModifiedDate; } /** *

The modification date and time of the job.

*/ inline bool LastModifiedDateHasBeenSet() const { return m_lastModifiedDateHasBeenSet; } /** *

The modification date and time of the job.

*/ inline void SetLastModifiedDate(const Aws::Utils::DateTime& value) { m_lastModifiedDateHasBeenSet = true; m_lastModifiedDate = value; } /** *

The modification date and time of the job.

*/ inline void SetLastModifiedDate(Aws::Utils::DateTime&& value) { m_lastModifiedDateHasBeenSet = true; m_lastModifiedDate = std::move(value); } /** *

The modification date and time of the job.

*/ inline Job& WithLastModifiedDate(const Aws::Utils::DateTime& value) { SetLastModifiedDate(value); return *this;} /** *

The modification date and time of the job.

*/ inline Job& WithLastModifiedDate(Aws::Utils::DateTime&& value) { SetLastModifiedDate(std::move(value)); return *this;} /** *

The current status of Amazon CloudWatch logging for the job.

*/ inline const LogSubscription& GetLogSubscription() const{ return m_logSubscription; } /** *

The current status of Amazon CloudWatch logging for the job.

*/ inline bool LogSubscriptionHasBeenSet() const { return m_logSubscriptionHasBeenSet; } /** *

The current status of Amazon CloudWatch logging for the job.

*/ inline void SetLogSubscription(const LogSubscription& value) { m_logSubscriptionHasBeenSet = true; m_logSubscription = value; } /** *

The current status of Amazon CloudWatch logging for the job.

*/ inline void SetLogSubscription(LogSubscription&& value) { m_logSubscriptionHasBeenSet = true; m_logSubscription = std::move(value); } /** *

The current status of Amazon CloudWatch logging for the job.

*/ inline Job& WithLogSubscription(const LogSubscription& value) { SetLogSubscription(value); return *this;} /** *

The current status of Amazon CloudWatch logging for the job.

*/ inline Job& WithLogSubscription(LogSubscription&& value) { SetLogSubscription(std::move(value)); return *this;} /** *

The maximum number of nodes that can be consumed when the job processes * data.

*/ inline int GetMaxCapacity() const{ return m_maxCapacity; } /** *

The maximum number of nodes that can be consumed when the job processes * data.

*/ inline bool MaxCapacityHasBeenSet() const { return m_maxCapacityHasBeenSet; } /** *

The maximum number of nodes that can be consumed when the job processes * data.

*/ inline void SetMaxCapacity(int value) { m_maxCapacityHasBeenSet = true; m_maxCapacity = value; } /** *

The maximum number of nodes that can be consumed when the job processes * data.

*/ inline Job& WithMaxCapacity(int value) { SetMaxCapacity(value); return *this;} /** *

The maximum number of times to retry the job after a job run fails.

*/ inline int GetMaxRetries() const{ return m_maxRetries; } /** *

The maximum number of times to retry the job after a job run fails.

*/ inline bool MaxRetriesHasBeenSet() const { return m_maxRetriesHasBeenSet; } /** *

The maximum number of times to retry the job after a job run fails.

*/ inline void SetMaxRetries(int value) { m_maxRetriesHasBeenSet = true; m_maxRetries = value; } /** *

The maximum number of times to retry the job after a job run fails.

*/ inline Job& WithMaxRetries(int value) { SetMaxRetries(value); return *this;} /** *

One or more artifacts that represent output from running the job.

*/ inline const Aws::Vector& GetOutputs() const{ return m_outputs; } /** *

One or more artifacts that represent output from running the job.

*/ inline bool OutputsHasBeenSet() const { return m_outputsHasBeenSet; } /** *

One or more artifacts that represent output from running the job.

*/ inline void SetOutputs(const Aws::Vector& value) { m_outputsHasBeenSet = true; m_outputs = value; } /** *

One or more artifacts that represent output from running the job.

*/ inline void SetOutputs(Aws::Vector&& value) { m_outputsHasBeenSet = true; m_outputs = std::move(value); } /** *

One or more artifacts that represent output from running the job.

*/ inline Job& WithOutputs(const Aws::Vector& value) { SetOutputs(value); return *this;} /** *

One or more artifacts that represent output from running the job.

*/ inline Job& WithOutputs(Aws::Vector&& value) { SetOutputs(std::move(value)); return *this;} /** *

One or more artifacts that represent output from running the job.

*/ inline Job& AddOutputs(const Output& value) { m_outputsHasBeenSet = true; m_outputs.push_back(value); return *this; } /** *

One or more artifacts that represent output from running the job.

*/ inline Job& AddOutputs(Output&& value) { m_outputsHasBeenSet = true; m_outputs.push_back(std::move(value)); return *this; } /** *

One or more artifacts that represent the Glue Data Catalog output from * running the job.

*/ inline const Aws::Vector& GetDataCatalogOutputs() const{ return m_dataCatalogOutputs; } /** *

One or more artifacts that represent the Glue Data Catalog output from * running the job.

*/ inline bool DataCatalogOutputsHasBeenSet() const { return m_dataCatalogOutputsHasBeenSet; } /** *

One or more artifacts that represent the Glue Data Catalog output from * running the job.

*/ inline void SetDataCatalogOutputs(const Aws::Vector& value) { m_dataCatalogOutputsHasBeenSet = true; m_dataCatalogOutputs = value; } /** *

One or more artifacts that represent the Glue Data Catalog output from * running the job.

*/ inline void SetDataCatalogOutputs(Aws::Vector&& value) { m_dataCatalogOutputsHasBeenSet = true; m_dataCatalogOutputs = std::move(value); } /** *

One or more artifacts that represent the Glue Data Catalog output from * running the job.

*/ inline Job& WithDataCatalogOutputs(const Aws::Vector& value) { SetDataCatalogOutputs(value); return *this;} /** *

One or more artifacts that represent the Glue Data Catalog output from * running the job.

*/ inline Job& WithDataCatalogOutputs(Aws::Vector&& value) { SetDataCatalogOutputs(std::move(value)); return *this;} /** *

One or more artifacts that represent the Glue Data Catalog output from * running the job.

*/ inline Job& AddDataCatalogOutputs(const DataCatalogOutput& value) { m_dataCatalogOutputsHasBeenSet = true; m_dataCatalogOutputs.push_back(value); return *this; } /** *

One or more artifacts that represent the Glue Data Catalog output from * running the job.

*/ inline Job& AddDataCatalogOutputs(DataCatalogOutput&& value) { m_dataCatalogOutputsHasBeenSet = true; m_dataCatalogOutputs.push_back(std::move(value)); return *this; } /** *

Represents a list of JDBC database output objects which defines the output * destination for a DataBrew recipe job to write into.

*/ inline const Aws::Vector& GetDatabaseOutputs() const{ return m_databaseOutputs; } /** *

Represents a list of JDBC database output objects which defines the output * destination for a DataBrew recipe job to write into.

*/ inline bool DatabaseOutputsHasBeenSet() const { return m_databaseOutputsHasBeenSet; } /** *

Represents a list of JDBC database output objects which defines the output * destination for a DataBrew recipe job to write into.

*/ inline void SetDatabaseOutputs(const Aws::Vector& value) { m_databaseOutputsHasBeenSet = true; m_databaseOutputs = value; } /** *

Represents a list of JDBC database output objects which defines the output * destination for a DataBrew recipe job to write into.

*/ inline void SetDatabaseOutputs(Aws::Vector&& value) { m_databaseOutputsHasBeenSet = true; m_databaseOutputs = std::move(value); } /** *

Represents a list of JDBC database output objects which defines the output * destination for a DataBrew recipe job to write into.

*/ inline Job& WithDatabaseOutputs(const Aws::Vector& value) { SetDatabaseOutputs(value); return *this;} /** *

Represents a list of JDBC database output objects which defines the output * destination for a DataBrew recipe job to write into.

*/ inline Job& WithDatabaseOutputs(Aws::Vector&& value) { SetDatabaseOutputs(std::move(value)); return *this;} /** *

Represents a list of JDBC database output objects which defines the output * destination for a DataBrew recipe job to write into.

*/ inline Job& AddDatabaseOutputs(const DatabaseOutput& value) { m_databaseOutputsHasBeenSet = true; m_databaseOutputs.push_back(value); return *this; } /** *

Represents a list of JDBC database output objects which defines the output * destination for a DataBrew recipe job to write into.

*/ inline Job& AddDatabaseOutputs(DatabaseOutput&& value) { m_databaseOutputsHasBeenSet = true; m_databaseOutputs.push_back(std::move(value)); return *this; } /** *

The name of the project that the job is associated with.

*/ inline const Aws::String& GetProjectName() const{ return m_projectName; } /** *

The name of the project that the job is associated with.

*/ inline bool ProjectNameHasBeenSet() const { return m_projectNameHasBeenSet; } /** *

The name of the project that the job is associated with.

*/ inline void SetProjectName(const Aws::String& value) { m_projectNameHasBeenSet = true; m_projectName = value; } /** *

The name of the project that the job is associated with.

*/ inline void SetProjectName(Aws::String&& value) { m_projectNameHasBeenSet = true; m_projectName = std::move(value); } /** *

The name of the project that the job is associated with.

*/ inline void SetProjectName(const char* value) { m_projectNameHasBeenSet = true; m_projectName.assign(value); } /** *

The name of the project that the job is associated with.

*/ inline Job& WithProjectName(const Aws::String& value) { SetProjectName(value); return *this;} /** *

The name of the project that the job is associated with.

*/ inline Job& WithProjectName(Aws::String&& value) { SetProjectName(std::move(value)); return *this;} /** *

The name of the project that the job is associated with.

*/ inline Job& WithProjectName(const char* value) { SetProjectName(value); return *this;} /** *

A set of steps that the job runs.

*/ inline const RecipeReference& GetRecipeReference() const{ return m_recipeReference; } /** *

A set of steps that the job runs.

*/ inline bool RecipeReferenceHasBeenSet() const { return m_recipeReferenceHasBeenSet; } /** *

A set of steps that the job runs.

*/ inline void SetRecipeReference(const RecipeReference& value) { m_recipeReferenceHasBeenSet = true; m_recipeReference = value; } /** *

A set of steps that the job runs.

*/ inline void SetRecipeReference(RecipeReference&& value) { m_recipeReferenceHasBeenSet = true; m_recipeReference = std::move(value); } /** *

A set of steps that the job runs.

*/ inline Job& WithRecipeReference(const RecipeReference& value) { SetRecipeReference(value); return *this;} /** *

A set of steps that the job runs.

*/ inline Job& WithRecipeReference(RecipeReference&& value) { SetRecipeReference(std::move(value)); return *this;} /** *

The unique Amazon Resource Name (ARN) for the job.

*/ inline const Aws::String& GetResourceArn() const{ return m_resourceArn; } /** *

The unique Amazon Resource Name (ARN) for the job.

*/ inline bool ResourceArnHasBeenSet() const { return m_resourceArnHasBeenSet; } /** *

The unique Amazon Resource Name (ARN) for the job.

*/ inline void SetResourceArn(const Aws::String& value) { m_resourceArnHasBeenSet = true; m_resourceArn = value; } /** *

The unique Amazon Resource Name (ARN) for the job.

*/ inline void SetResourceArn(Aws::String&& value) { m_resourceArnHasBeenSet = true; m_resourceArn = std::move(value); } /** *

The unique Amazon Resource Name (ARN) for the job.

*/ inline void SetResourceArn(const char* value) { m_resourceArnHasBeenSet = true; m_resourceArn.assign(value); } /** *

The unique Amazon Resource Name (ARN) for the job.

*/ inline Job& WithResourceArn(const Aws::String& value) { SetResourceArn(value); return *this;} /** *

The unique Amazon Resource Name (ARN) for the job.

*/ inline Job& WithResourceArn(Aws::String&& value) { SetResourceArn(std::move(value)); return *this;} /** *

The unique Amazon Resource Name (ARN) for the job.

*/ inline Job& WithResourceArn(const char* value) { SetResourceArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the role to be assumed for this job.

*/ inline const Aws::String& GetRoleArn() const{ return m_roleArn; } /** *

The Amazon Resource Name (ARN) of the role to be assumed for this job.

*/ inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the role to be assumed for this job.

*/ inline void SetRoleArn(const Aws::String& value) { m_roleArnHasBeenSet = true; m_roleArn = value; } /** *

The Amazon Resource Name (ARN) of the role to be assumed for this job.

*/ inline void SetRoleArn(Aws::String&& value) { m_roleArnHasBeenSet = true; m_roleArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the role to be assumed for this job.

*/ inline void SetRoleArn(const char* value) { m_roleArnHasBeenSet = true; m_roleArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the role to be assumed for this job.

*/ inline Job& WithRoleArn(const Aws::String& value) { SetRoleArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the role to be assumed for this job.

*/ inline Job& WithRoleArn(Aws::String&& value) { SetRoleArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the role to be assumed for this job.

*/ inline Job& WithRoleArn(const char* value) { SetRoleArn(value); return *this;} /** *

The job's timeout in minutes. A job that attempts to run longer than this * timeout period ends with a status of TIMEOUT.

*/ inline int GetTimeout() const{ return m_timeout; } /** *

The job's timeout in minutes. A job that attempts to run longer than this * timeout period ends with a status of TIMEOUT.

*/ inline bool TimeoutHasBeenSet() const { return m_timeoutHasBeenSet; } /** *

The job's timeout in minutes. A job that attempts to run longer than this * timeout period ends with a status of TIMEOUT.

*/ inline void SetTimeout(int value) { m_timeoutHasBeenSet = true; m_timeout = value; } /** *

The job's timeout in minutes. A job that attempts to run longer than this * timeout period ends with a status of TIMEOUT.

*/ inline Job& WithTimeout(int value) { SetTimeout(value); return *this;} /** *

Metadata tags that have been applied to the job.

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

Metadata tags that have been applied to the job.

*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *

Metadata tags that have been applied to the job.

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

Metadata tags that have been applied to the job.

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

Metadata tags that have been applied to the job.

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

Metadata tags that have been applied to the job.

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

Metadata tags that have been applied to the job.

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

Metadata tags that have been applied to the job.

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

Metadata tags that have been applied to the job.

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

Metadata tags that have been applied to the job.

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

Metadata tags that have been applied to the job.

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

Metadata tags that have been applied to the job.

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

Metadata tags that have been applied to the job.

*/ inline Job& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** *

A sample configuration for profile jobs only, which determines the number of * rows on which the profile job is run. If a JobSample value isn't * provided, the default value is used. The default value is CUSTOM_ROWS for the * mode parameter and 20,000 for the size parameter.

*/ inline const JobSample& GetJobSample() const{ return m_jobSample; } /** *

A sample configuration for profile jobs only, which determines the number of * rows on which the profile job is run. If a JobSample value isn't * provided, the default value is used. The default value is CUSTOM_ROWS for the * mode parameter and 20,000 for the size parameter.

*/ inline bool JobSampleHasBeenSet() const { return m_jobSampleHasBeenSet; } /** *

A sample configuration for profile jobs only, which determines the number of * rows on which the profile job is run. If a JobSample value isn't * provided, the default value is used. The default value is CUSTOM_ROWS for the * mode parameter and 20,000 for the size parameter.

*/ inline void SetJobSample(const JobSample& value) { m_jobSampleHasBeenSet = true; m_jobSample = value; } /** *

A sample configuration for profile jobs only, which determines the number of * rows on which the profile job is run. If a JobSample value isn't * provided, the default value is used. The default value is CUSTOM_ROWS for the * mode parameter and 20,000 for the size parameter.

*/ inline void SetJobSample(JobSample&& value) { m_jobSampleHasBeenSet = true; m_jobSample = std::move(value); } /** *

A sample configuration for profile jobs only, which determines the number of * rows on which the profile job is run. If a JobSample value isn't * provided, the default value is used. The default value is CUSTOM_ROWS for the * mode parameter and 20,000 for the size parameter.

*/ inline Job& WithJobSample(const JobSample& value) { SetJobSample(value); return *this;} /** *

A sample configuration for profile jobs only, which determines the number of * rows on which the profile job is run. If a JobSample value isn't * provided, the default value is used. The default value is CUSTOM_ROWS for the * mode parameter and 20,000 for the size parameter.

*/ inline Job& WithJobSample(JobSample&& value) { SetJobSample(std::move(value)); return *this;} /** *

List of validation configurations that are applied to the profile job.

*/ inline const Aws::Vector& GetValidationConfigurations() const{ return m_validationConfigurations; } /** *

List of validation configurations that are applied to the profile job.

*/ inline bool ValidationConfigurationsHasBeenSet() const { return m_validationConfigurationsHasBeenSet; } /** *

List of validation configurations that are applied to the profile job.

*/ inline void SetValidationConfigurations(const Aws::Vector& value) { m_validationConfigurationsHasBeenSet = true; m_validationConfigurations = value; } /** *

List of validation configurations that are applied to the profile job.

*/ inline void SetValidationConfigurations(Aws::Vector&& value) { m_validationConfigurationsHasBeenSet = true; m_validationConfigurations = std::move(value); } /** *

List of validation configurations that are applied to the profile job.

*/ inline Job& WithValidationConfigurations(const Aws::Vector& value) { SetValidationConfigurations(value); return *this;} /** *

List of validation configurations that are applied to the profile job.

*/ inline Job& WithValidationConfigurations(Aws::Vector&& value) { SetValidationConfigurations(std::move(value)); return *this;} /** *

List of validation configurations that are applied to the profile job.

*/ inline Job& AddValidationConfigurations(const ValidationConfiguration& value) { m_validationConfigurationsHasBeenSet = true; m_validationConfigurations.push_back(value); return *this; } /** *

List of validation configurations that are applied to the profile job.

*/ inline Job& AddValidationConfigurations(ValidationConfiguration&& value) { m_validationConfigurationsHasBeenSet = true; m_validationConfigurations.push_back(std::move(value)); return *this; } private: Aws::String m_accountId; bool m_accountIdHasBeenSet = false; Aws::String m_createdBy; bool m_createdByHasBeenSet = false; Aws::Utils::DateTime m_createDate; bool m_createDateHasBeenSet = false; Aws::String m_datasetName; bool m_datasetNameHasBeenSet = false; Aws::String m_encryptionKeyArn; bool m_encryptionKeyArnHasBeenSet = false; EncryptionMode m_encryptionMode; bool m_encryptionModeHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; JobType m_type; bool m_typeHasBeenSet = false; Aws::String m_lastModifiedBy; bool m_lastModifiedByHasBeenSet = false; Aws::Utils::DateTime m_lastModifiedDate; bool m_lastModifiedDateHasBeenSet = false; LogSubscription m_logSubscription; bool m_logSubscriptionHasBeenSet = false; int m_maxCapacity; bool m_maxCapacityHasBeenSet = false; int m_maxRetries; bool m_maxRetriesHasBeenSet = false; Aws::Vector m_outputs; bool m_outputsHasBeenSet = false; Aws::Vector m_dataCatalogOutputs; bool m_dataCatalogOutputsHasBeenSet = false; Aws::Vector m_databaseOutputs; bool m_databaseOutputsHasBeenSet = false; Aws::String m_projectName; bool m_projectNameHasBeenSet = false; RecipeReference m_recipeReference; bool m_recipeReferenceHasBeenSet = false; Aws::String m_resourceArn; bool m_resourceArnHasBeenSet = false; Aws::String m_roleArn; bool m_roleArnHasBeenSet = false; int m_timeout; bool m_timeoutHasBeenSet = false; Aws::Map m_tags; bool m_tagsHasBeenSet = false; JobSample m_jobSample; bool m_jobSampleHasBeenSet = false; Aws::Vector m_validationConfigurations; bool m_validationConfigurationsHasBeenSet = false; }; } // namespace Model } // namespace GlueDataBrew } // namespace Aws