/** * 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 Glue { namespace Model { /** */ class StartDataQualityRulesetEvaluationRunRequest : public GlueRequest { public: AWS_GLUE_API StartDataQualityRulesetEvaluationRunRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "StartDataQualityRulesetEvaluationRun"; } AWS_GLUE_API Aws::String SerializePayload() const override; AWS_GLUE_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The data source (Glue table) associated with this run.

*/ inline const DataSource& GetDataSource() const{ return m_dataSource; } /** *

The data source (Glue table) associated with this run.

*/ inline bool DataSourceHasBeenSet() const { return m_dataSourceHasBeenSet; } /** *

The data source (Glue table) associated with this run.

*/ inline void SetDataSource(const DataSource& value) { m_dataSourceHasBeenSet = true; m_dataSource = value; } /** *

The data source (Glue table) associated with this run.

*/ inline void SetDataSource(DataSource&& value) { m_dataSourceHasBeenSet = true; m_dataSource = std::move(value); } /** *

The data source (Glue table) associated with this run.

*/ inline StartDataQualityRulesetEvaluationRunRequest& WithDataSource(const DataSource& value) { SetDataSource(value); return *this;} /** *

The data source (Glue table) associated with this run.

*/ inline StartDataQualityRulesetEvaluationRunRequest& WithDataSource(DataSource&& value) { SetDataSource(std::move(value)); return *this;} /** *

An IAM role supplied to encrypt the results of the run.

*/ inline const Aws::String& GetRole() const{ return m_role; } /** *

An IAM role supplied to encrypt the results of the run.

*/ inline bool RoleHasBeenSet() const { return m_roleHasBeenSet; } /** *

An IAM role supplied to encrypt the results of the run.

*/ inline void SetRole(const Aws::String& value) { m_roleHasBeenSet = true; m_role = value; } /** *

An IAM role supplied to encrypt the results of the run.

*/ inline void SetRole(Aws::String&& value) { m_roleHasBeenSet = true; m_role = std::move(value); } /** *

An IAM role supplied to encrypt the results of the run.

*/ inline void SetRole(const char* value) { m_roleHasBeenSet = true; m_role.assign(value); } /** *

An IAM role supplied to encrypt the results of the run.

*/ inline StartDataQualityRulesetEvaluationRunRequest& WithRole(const Aws::String& value) { SetRole(value); return *this;} /** *

An IAM role supplied to encrypt the results of the run.

*/ inline StartDataQualityRulesetEvaluationRunRequest& WithRole(Aws::String&& value) { SetRole(std::move(value)); return *this;} /** *

An IAM role supplied to encrypt the results of the run.

*/ inline StartDataQualityRulesetEvaluationRunRequest& WithRole(const char* value) { SetRole(value); return *this;} /** *

The number of G.1X workers to be used in the run. The default is * 5.

*/ inline int GetNumberOfWorkers() const{ return m_numberOfWorkers; } /** *

The number of G.1X workers to be used in the run. The default is * 5.

*/ inline bool NumberOfWorkersHasBeenSet() const { return m_numberOfWorkersHasBeenSet; } /** *

The number of G.1X workers to be used in the run. The default is * 5.

*/ inline void SetNumberOfWorkers(int value) { m_numberOfWorkersHasBeenSet = true; m_numberOfWorkers = value; } /** *

The number of G.1X workers to be used in the run. The default is * 5.

*/ inline StartDataQualityRulesetEvaluationRunRequest& WithNumberOfWorkers(int value) { SetNumberOfWorkers(value); return *this;} /** *

The timeout for a run in minutes. This is the maximum time that a run can * consume resources before it is terminated and enters TIMEOUT * status. The default is 2,880 minutes (48 hours).

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

The timeout for a run in minutes. This is the maximum time that a run can * consume resources before it is terminated and enters TIMEOUT * status. The default is 2,880 minutes (48 hours).

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

The timeout for a run in minutes. This is the maximum time that a run can * consume resources before it is terminated and enters TIMEOUT * status. The default is 2,880 minutes (48 hours).

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

The timeout for a run in minutes. This is the maximum time that a run can * consume resources before it is terminated and enters TIMEOUT * status. The default is 2,880 minutes (48 hours).

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

Used for idempotency and is recommended to be set to a random ID (such as a * UUID) to avoid creating or starting multiple instances of the same resource.

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

Used for idempotency and is recommended to be set to a random ID (such as a * UUID) to avoid creating or starting multiple instances of the same resource.

*/ inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; } /** *

Used for idempotency and is recommended to be set to a random ID (such as a * UUID) to avoid creating or starting multiple instances of the same resource.

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

Used for idempotency and is recommended to be set to a random ID (such as a * UUID) to avoid creating or starting multiple instances of the same resource.

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

Used for idempotency and is recommended to be set to a random ID (such as a * UUID) to avoid creating or starting multiple instances of the same resource.

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

Used for idempotency and is recommended to be set to a random ID (such as a * UUID) to avoid creating or starting multiple instances of the same resource.

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

Used for idempotency and is recommended to be set to a random ID (such as a * UUID) to avoid creating or starting multiple instances of the same resource.

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

Used for idempotency and is recommended to be set to a random ID (such as a * UUID) to avoid creating or starting multiple instances of the same resource.

*/ inline StartDataQualityRulesetEvaluationRunRequest& WithClientToken(const char* value) { SetClientToken(value); return *this;} /** *

Additional run options you can specify for an evaluation run.

*/ inline const DataQualityEvaluationRunAdditionalRunOptions& GetAdditionalRunOptions() const{ return m_additionalRunOptions; } /** *

Additional run options you can specify for an evaluation run.

*/ inline bool AdditionalRunOptionsHasBeenSet() const { return m_additionalRunOptionsHasBeenSet; } /** *

Additional run options you can specify for an evaluation run.

*/ inline void SetAdditionalRunOptions(const DataQualityEvaluationRunAdditionalRunOptions& value) { m_additionalRunOptionsHasBeenSet = true; m_additionalRunOptions = value; } /** *

Additional run options you can specify for an evaluation run.

*/ inline void SetAdditionalRunOptions(DataQualityEvaluationRunAdditionalRunOptions&& value) { m_additionalRunOptionsHasBeenSet = true; m_additionalRunOptions = std::move(value); } /** *

Additional run options you can specify for an evaluation run.

*/ inline StartDataQualityRulesetEvaluationRunRequest& WithAdditionalRunOptions(const DataQualityEvaluationRunAdditionalRunOptions& value) { SetAdditionalRunOptions(value); return *this;} /** *

Additional run options you can specify for an evaluation run.

*/ inline StartDataQualityRulesetEvaluationRunRequest& WithAdditionalRunOptions(DataQualityEvaluationRunAdditionalRunOptions&& value) { SetAdditionalRunOptions(std::move(value)); return *this;} /** *

A list of ruleset names.

*/ inline const Aws::Vector& GetRulesetNames() const{ return m_rulesetNames; } /** *

A list of ruleset names.

*/ inline bool RulesetNamesHasBeenSet() const { return m_rulesetNamesHasBeenSet; } /** *

A list of ruleset names.

*/ inline void SetRulesetNames(const Aws::Vector& value) { m_rulesetNamesHasBeenSet = true; m_rulesetNames = value; } /** *

A list of ruleset names.

*/ inline void SetRulesetNames(Aws::Vector&& value) { m_rulesetNamesHasBeenSet = true; m_rulesetNames = std::move(value); } /** *

A list of ruleset names.

*/ inline StartDataQualityRulesetEvaluationRunRequest& WithRulesetNames(const Aws::Vector& value) { SetRulesetNames(value); return *this;} /** *

A list of ruleset names.

*/ inline StartDataQualityRulesetEvaluationRunRequest& WithRulesetNames(Aws::Vector&& value) { SetRulesetNames(std::move(value)); return *this;} /** *

A list of ruleset names.

*/ inline StartDataQualityRulesetEvaluationRunRequest& AddRulesetNames(const Aws::String& value) { m_rulesetNamesHasBeenSet = true; m_rulesetNames.push_back(value); return *this; } /** *

A list of ruleset names.

*/ inline StartDataQualityRulesetEvaluationRunRequest& AddRulesetNames(Aws::String&& value) { m_rulesetNamesHasBeenSet = true; m_rulesetNames.push_back(std::move(value)); return *this; } /** *

A list of ruleset names.

*/ inline StartDataQualityRulesetEvaluationRunRequest& AddRulesetNames(const char* value) { m_rulesetNamesHasBeenSet = true; m_rulesetNames.push_back(value); return *this; } /** *

A map of reference strings to additional data sources you can specify for an * evaluation run.

*/ inline const Aws::Map& GetAdditionalDataSources() const{ return m_additionalDataSources; } /** *

A map of reference strings to additional data sources you can specify for an * evaluation run.

*/ inline bool AdditionalDataSourcesHasBeenSet() const { return m_additionalDataSourcesHasBeenSet; } /** *

A map of reference strings to additional data sources you can specify for an * evaluation run.

*/ inline void SetAdditionalDataSources(const Aws::Map& value) { m_additionalDataSourcesHasBeenSet = true; m_additionalDataSources = value; } /** *

A map of reference strings to additional data sources you can specify for an * evaluation run.

*/ inline void SetAdditionalDataSources(Aws::Map&& value) { m_additionalDataSourcesHasBeenSet = true; m_additionalDataSources = std::move(value); } /** *

A map of reference strings to additional data sources you can specify for an * evaluation run.

*/ inline StartDataQualityRulesetEvaluationRunRequest& WithAdditionalDataSources(const Aws::Map& value) { SetAdditionalDataSources(value); return *this;} /** *

A map of reference strings to additional data sources you can specify for an * evaluation run.

*/ inline StartDataQualityRulesetEvaluationRunRequest& WithAdditionalDataSources(Aws::Map&& value) { SetAdditionalDataSources(std::move(value)); return *this;} /** *

A map of reference strings to additional data sources you can specify for an * evaluation run.

*/ inline StartDataQualityRulesetEvaluationRunRequest& AddAdditionalDataSources(const Aws::String& key, const DataSource& value) { m_additionalDataSourcesHasBeenSet = true; m_additionalDataSources.emplace(key, value); return *this; } /** *

A map of reference strings to additional data sources you can specify for an * evaluation run.

*/ inline StartDataQualityRulesetEvaluationRunRequest& AddAdditionalDataSources(Aws::String&& key, const DataSource& value) { m_additionalDataSourcesHasBeenSet = true; m_additionalDataSources.emplace(std::move(key), value); return *this; } /** *

A map of reference strings to additional data sources you can specify for an * evaluation run.

*/ inline StartDataQualityRulesetEvaluationRunRequest& AddAdditionalDataSources(const Aws::String& key, DataSource&& value) { m_additionalDataSourcesHasBeenSet = true; m_additionalDataSources.emplace(key, std::move(value)); return *this; } /** *

A map of reference strings to additional data sources you can specify for an * evaluation run.

*/ inline StartDataQualityRulesetEvaluationRunRequest& AddAdditionalDataSources(Aws::String&& key, DataSource&& value) { m_additionalDataSourcesHasBeenSet = true; m_additionalDataSources.emplace(std::move(key), std::move(value)); return *this; } /** *

A map of reference strings to additional data sources you can specify for an * evaluation run.

*/ inline StartDataQualityRulesetEvaluationRunRequest& AddAdditionalDataSources(const char* key, DataSource&& value) { m_additionalDataSourcesHasBeenSet = true; m_additionalDataSources.emplace(key, std::move(value)); return *this; } /** *

A map of reference strings to additional data sources you can specify for an * evaluation run.

*/ inline StartDataQualityRulesetEvaluationRunRequest& AddAdditionalDataSources(const char* key, const DataSource& value) { m_additionalDataSourcesHasBeenSet = true; m_additionalDataSources.emplace(key, value); return *this; } private: DataSource m_dataSource; bool m_dataSourceHasBeenSet = false; Aws::String m_role; bool m_roleHasBeenSet = false; int m_numberOfWorkers; bool m_numberOfWorkersHasBeenSet = false; int m_timeout; bool m_timeoutHasBeenSet = false; Aws::String m_clientToken; bool m_clientTokenHasBeenSet = false; DataQualityEvaluationRunAdditionalRunOptions m_additionalRunOptions; bool m_additionalRunOptionsHasBeenSet = false; Aws::Vector m_rulesetNames; bool m_rulesetNamesHasBeenSet = false; Aws::Map m_additionalDataSources; bool m_additionalDataSourcesHasBeenSet = false; }; } // namespace Model } // namespace Glue } // namespace Aws