/** * 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 namespace Aws { namespace Comprehend { namespace Model { /** */ class CreateFlywheelRequest : public ComprehendRequest { public: AWS_COMPREHEND_API CreateFlywheelRequest(); // 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 "CreateFlywheel"; } AWS_COMPREHEND_API Aws::String SerializePayload() const override; AWS_COMPREHEND_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

Name for the flywheel.

*/ inline const Aws::String& GetFlywheelName() const{ return m_flywheelName; } /** *

Name for the flywheel.

*/ inline bool FlywheelNameHasBeenSet() const { return m_flywheelNameHasBeenSet; } /** *

Name for the flywheel.

*/ inline void SetFlywheelName(const Aws::String& value) { m_flywheelNameHasBeenSet = true; m_flywheelName = value; } /** *

Name for the flywheel.

*/ inline void SetFlywheelName(Aws::String&& value) { m_flywheelNameHasBeenSet = true; m_flywheelName = std::move(value); } /** *

Name for the flywheel.

*/ inline void SetFlywheelName(const char* value) { m_flywheelNameHasBeenSet = true; m_flywheelName.assign(value); } /** *

Name for the flywheel.

*/ inline CreateFlywheelRequest& WithFlywheelName(const Aws::String& value) { SetFlywheelName(value); return *this;} /** *

Name for the flywheel.

*/ inline CreateFlywheelRequest& WithFlywheelName(Aws::String&& value) { SetFlywheelName(std::move(value)); return *this;} /** *

Name for the flywheel.

*/ inline CreateFlywheelRequest& WithFlywheelName(const char* value) { SetFlywheelName(value); return *this;} /** *

To associate an existing model with the flywheel, specify the Amazon Resource * Number (ARN) of the model version.

*/ inline const Aws::String& GetActiveModelArn() const{ return m_activeModelArn; } /** *

To associate an existing model with the flywheel, specify the Amazon Resource * Number (ARN) of the model version.

*/ inline bool ActiveModelArnHasBeenSet() const { return m_activeModelArnHasBeenSet; } /** *

To associate an existing model with the flywheel, specify the Amazon Resource * Number (ARN) of the model version.

*/ inline void SetActiveModelArn(const Aws::String& value) { m_activeModelArnHasBeenSet = true; m_activeModelArn = value; } /** *

To associate an existing model with the flywheel, specify the Amazon Resource * Number (ARN) of the model version.

*/ inline void SetActiveModelArn(Aws::String&& value) { m_activeModelArnHasBeenSet = true; m_activeModelArn = std::move(value); } /** *

To associate an existing model with the flywheel, specify the Amazon Resource * Number (ARN) of the model version.

*/ inline void SetActiveModelArn(const char* value) { m_activeModelArnHasBeenSet = true; m_activeModelArn.assign(value); } /** *

To associate an existing model with the flywheel, specify the Amazon Resource * Number (ARN) of the model version.

*/ inline CreateFlywheelRequest& WithActiveModelArn(const Aws::String& value) { SetActiveModelArn(value); return *this;} /** *

To associate an existing model with the flywheel, specify the Amazon Resource * Number (ARN) of the model version.

*/ inline CreateFlywheelRequest& WithActiveModelArn(Aws::String&& value) { SetActiveModelArn(std::move(value)); return *this;} /** *

To associate an existing model with the flywheel, specify the Amazon Resource * Number (ARN) of the model version.

*/ inline CreateFlywheelRequest& WithActiveModelArn(const char* value) { SetActiveModelArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the IAM role that grants Amazon Comprehend * the permissions required to access the flywheel data in the data lake.

*/ inline const Aws::String& GetDataAccessRoleArn() const{ return m_dataAccessRoleArn; } /** *

The Amazon Resource Name (ARN) of the IAM role that grants Amazon Comprehend * the permissions required to access the flywheel data in the data lake.

*/ inline bool DataAccessRoleArnHasBeenSet() const { return m_dataAccessRoleArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the IAM role that grants Amazon Comprehend * the permissions required to access the flywheel data in the data lake.

*/ inline void SetDataAccessRoleArn(const Aws::String& value) { m_dataAccessRoleArnHasBeenSet = true; m_dataAccessRoleArn = value; } /** *

The Amazon Resource Name (ARN) of the IAM role that grants Amazon Comprehend * the permissions required to access the flywheel data in the data lake.

*/ inline void SetDataAccessRoleArn(Aws::String&& value) { m_dataAccessRoleArnHasBeenSet = true; m_dataAccessRoleArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the IAM role that grants Amazon Comprehend * the permissions required to access the flywheel data in the data lake.

*/ inline void SetDataAccessRoleArn(const char* value) { m_dataAccessRoleArnHasBeenSet = true; m_dataAccessRoleArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the IAM role that grants Amazon Comprehend * the permissions required to access the flywheel data in the data lake.

*/ inline CreateFlywheelRequest& WithDataAccessRoleArn(const Aws::String& value) { SetDataAccessRoleArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the IAM role that grants Amazon Comprehend * the permissions required to access the flywheel data in the data lake.

*/ inline CreateFlywheelRequest& WithDataAccessRoleArn(Aws::String&& value) { SetDataAccessRoleArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the IAM role that grants Amazon Comprehend * the permissions required to access the flywheel data in the data lake.

*/ inline CreateFlywheelRequest& WithDataAccessRoleArn(const char* value) { SetDataAccessRoleArn(value); return *this;} /** *

Configuration about the custom classifier associated with the flywheel.

*/ inline const TaskConfig& GetTaskConfig() const{ return m_taskConfig; } /** *

Configuration about the custom classifier associated with the flywheel.

*/ inline bool TaskConfigHasBeenSet() const { return m_taskConfigHasBeenSet; } /** *

Configuration about the custom classifier associated with the flywheel.

*/ inline void SetTaskConfig(const TaskConfig& value) { m_taskConfigHasBeenSet = true; m_taskConfig = value; } /** *

Configuration about the custom classifier associated with the flywheel.

*/ inline void SetTaskConfig(TaskConfig&& value) { m_taskConfigHasBeenSet = true; m_taskConfig = std::move(value); } /** *

Configuration about the custom classifier associated with the flywheel.

*/ inline CreateFlywheelRequest& WithTaskConfig(const TaskConfig& value) { SetTaskConfig(value); return *this;} /** *

Configuration about the custom classifier associated with the flywheel.

*/ inline CreateFlywheelRequest& WithTaskConfig(TaskConfig&& value) { SetTaskConfig(std::move(value)); return *this;} /** *

The model type.

*/ inline const ModelType& GetModelType() const{ return m_modelType; } /** *

The model type.

*/ inline bool ModelTypeHasBeenSet() const { return m_modelTypeHasBeenSet; } /** *

The model type.

*/ inline void SetModelType(const ModelType& value) { m_modelTypeHasBeenSet = true; m_modelType = value; } /** *

The model type.

*/ inline void SetModelType(ModelType&& value) { m_modelTypeHasBeenSet = true; m_modelType = std::move(value); } /** *

The model type.

*/ inline CreateFlywheelRequest& WithModelType(const ModelType& value) { SetModelType(value); return *this;} /** *

The model type.

*/ inline CreateFlywheelRequest& WithModelType(ModelType&& value) { SetModelType(std::move(value)); return *this;} /** *

Enter the S3 location for the data lake. You can specify a new S3 bucket or a * new folder of an existing S3 bucket. The flywheel creates the data lake at this * location.

*/ inline const Aws::String& GetDataLakeS3Uri() const{ return m_dataLakeS3Uri; } /** *

Enter the S3 location for the data lake. You can specify a new S3 bucket or a * new folder of an existing S3 bucket. The flywheel creates the data lake at this * location.

*/ inline bool DataLakeS3UriHasBeenSet() const { return m_dataLakeS3UriHasBeenSet; } /** *

Enter the S3 location for the data lake. You can specify a new S3 bucket or a * new folder of an existing S3 bucket. The flywheel creates the data lake at this * location.

*/ inline void SetDataLakeS3Uri(const Aws::String& value) { m_dataLakeS3UriHasBeenSet = true; m_dataLakeS3Uri = value; } /** *

Enter the S3 location for the data lake. You can specify a new S3 bucket or a * new folder of an existing S3 bucket. The flywheel creates the data lake at this * location.

*/ inline void SetDataLakeS3Uri(Aws::String&& value) { m_dataLakeS3UriHasBeenSet = true; m_dataLakeS3Uri = std::move(value); } /** *

Enter the S3 location for the data lake. You can specify a new S3 bucket or a * new folder of an existing S3 bucket. The flywheel creates the data lake at this * location.

*/ inline void SetDataLakeS3Uri(const char* value) { m_dataLakeS3UriHasBeenSet = true; m_dataLakeS3Uri.assign(value); } /** *

Enter the S3 location for the data lake. You can specify a new S3 bucket or a * new folder of an existing S3 bucket. The flywheel creates the data lake at this * location.

*/ inline CreateFlywheelRequest& WithDataLakeS3Uri(const Aws::String& value) { SetDataLakeS3Uri(value); return *this;} /** *

Enter the S3 location for the data lake. You can specify a new S3 bucket or a * new folder of an existing S3 bucket. The flywheel creates the data lake at this * location.

*/ inline CreateFlywheelRequest& WithDataLakeS3Uri(Aws::String&& value) { SetDataLakeS3Uri(std::move(value)); return *this;} /** *

Enter the S3 location for the data lake. You can specify a new S3 bucket or a * new folder of an existing S3 bucket. The flywheel creates the data lake at this * location.

*/ inline CreateFlywheelRequest& WithDataLakeS3Uri(const char* value) { SetDataLakeS3Uri(value); return *this;} /** *

Data security configurations.

*/ inline const DataSecurityConfig& GetDataSecurityConfig() const{ return m_dataSecurityConfig; } /** *

Data security configurations.

*/ inline bool DataSecurityConfigHasBeenSet() const { return m_dataSecurityConfigHasBeenSet; } /** *

Data security configurations.

*/ inline void SetDataSecurityConfig(const DataSecurityConfig& value) { m_dataSecurityConfigHasBeenSet = true; m_dataSecurityConfig = value; } /** *

Data security configurations.

*/ inline void SetDataSecurityConfig(DataSecurityConfig&& value) { m_dataSecurityConfigHasBeenSet = true; m_dataSecurityConfig = std::move(value); } /** *

Data security configurations.

*/ inline CreateFlywheelRequest& WithDataSecurityConfig(const DataSecurityConfig& value) { SetDataSecurityConfig(value); return *this;} /** *

Data security configurations.

*/ inline CreateFlywheelRequest& WithDataSecurityConfig(DataSecurityConfig&& value) { SetDataSecurityConfig(std::move(value)); return *this;} /** *

A unique identifier for the request. If you don't set the client request * token, Amazon Comprehend generates one.

*/ inline const Aws::String& GetClientRequestToken() const{ return m_clientRequestToken; } /** *

A unique identifier for the request. If you don't set the client request * token, Amazon Comprehend generates one.

*/ inline bool ClientRequestTokenHasBeenSet() const { return m_clientRequestTokenHasBeenSet; } /** *

A unique identifier for the request. If you don't set the client request * token, Amazon Comprehend generates one.

*/ inline void SetClientRequestToken(const Aws::String& value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken = value; } /** *

A unique identifier for the request. If you don't set the client request * token, Amazon Comprehend generates one.

*/ inline void SetClientRequestToken(Aws::String&& value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken = std::move(value); } /** *

A unique identifier for the request. If you don't set the client request * token, Amazon Comprehend generates one.

*/ inline void SetClientRequestToken(const char* value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken.assign(value); } /** *

A unique identifier for the request. If you don't set the client request * token, Amazon Comprehend generates one.

*/ inline CreateFlywheelRequest& WithClientRequestToken(const Aws::String& value) { SetClientRequestToken(value); return *this;} /** *

A unique identifier for the request. If you don't set the client request * token, Amazon Comprehend generates one.

*/ inline CreateFlywheelRequest& WithClientRequestToken(Aws::String&& value) { SetClientRequestToken(std::move(value)); return *this;} /** *

A unique identifier for the request. If you don't set the client request * token, Amazon Comprehend generates one.

*/ inline CreateFlywheelRequest& WithClientRequestToken(const char* value) { SetClientRequestToken(value); return *this;} /** *

The tags to associate with this flywheel.

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

The tags to associate with this flywheel.

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

The tags to associate with this flywheel.

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

The tags to associate with this flywheel.

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

The tags to associate with this flywheel.

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

The tags to associate with this flywheel.

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

The tags to associate with this flywheel.

*/ inline CreateFlywheelRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *

The tags to associate with this flywheel.

*/ inline CreateFlywheelRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } private: Aws::String m_flywheelName; bool m_flywheelNameHasBeenSet = false; Aws::String m_activeModelArn; bool m_activeModelArnHasBeenSet = false; Aws::String m_dataAccessRoleArn; bool m_dataAccessRoleArnHasBeenSet = false; TaskConfig m_taskConfig; bool m_taskConfigHasBeenSet = false; ModelType m_modelType; bool m_modelTypeHasBeenSet = false; Aws::String m_dataLakeS3Uri; bool m_dataLakeS3UriHasBeenSet = false; DataSecurityConfig m_dataSecurityConfig; bool m_dataSecurityConfigHasBeenSet = false; Aws::String m_clientRequestToken; bool m_clientRequestTokenHasBeenSet = false; Aws::Vector m_tags; bool m_tagsHasBeenSet = false; }; } // namespace Model } // namespace Comprehend } // namespace Aws