/**
* 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:
*/
inline const EncryptionMode& GetEncryptionMode() const{ return m_encryptionMode; }
/**
* The encryption mode for the job, which can be one of the following:
*/
inline bool EncryptionModeHasBeenSet() const { return m_encryptionModeHasBeenSet; }
/**
* The encryption mode for the job, which can be one of the following:
*/
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:
*/
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:
*/
inline Job& WithEncryptionMode(const EncryptionMode& value) { SetEncryptionMode(value); return *this;}
/**
* The encryption mode for the job, which can be one of the following:
*/
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