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

Specifies the format and location of the input data for the job.

*/ inline const InputDataConfig& GetInputDataConfig() const{ return m_inputDataConfig; } /** *

Specifies the format and location of the input data for the job.

*/ inline bool InputDataConfigHasBeenSet() const { return m_inputDataConfigHasBeenSet; } /** *

Specifies the format and location of the input data for the job.

*/ inline void SetInputDataConfig(const InputDataConfig& value) { m_inputDataConfigHasBeenSet = true; m_inputDataConfig = value; } /** *

Specifies the format and location of the input data for the job.

*/ inline void SetInputDataConfig(InputDataConfig&& value) { m_inputDataConfigHasBeenSet = true; m_inputDataConfig = std::move(value); } /** *

Specifies the format and location of the input data for the job.

*/ inline StartKeyPhrasesDetectionJobRequest& WithInputDataConfig(const InputDataConfig& value) { SetInputDataConfig(value); return *this;} /** *

Specifies the format and location of the input data for the job.

*/ inline StartKeyPhrasesDetectionJobRequest& WithInputDataConfig(InputDataConfig&& value) { SetInputDataConfig(std::move(value)); return *this;} /** *

Specifies where to send the output files.

*/ inline const OutputDataConfig& GetOutputDataConfig() const{ return m_outputDataConfig; } /** *

Specifies where to send the output files.

*/ inline bool OutputDataConfigHasBeenSet() const { return m_outputDataConfigHasBeenSet; } /** *

Specifies where to send the output files.

*/ inline void SetOutputDataConfig(const OutputDataConfig& value) { m_outputDataConfigHasBeenSet = true; m_outputDataConfig = value; } /** *

Specifies where to send the output files.

*/ inline void SetOutputDataConfig(OutputDataConfig&& value) { m_outputDataConfigHasBeenSet = true; m_outputDataConfig = std::move(value); } /** *

Specifies where to send the output files.

*/ inline StartKeyPhrasesDetectionJobRequest& WithOutputDataConfig(const OutputDataConfig& value) { SetOutputDataConfig(value); return *this;} /** *

Specifies where to send the output files.

*/ inline StartKeyPhrasesDetectionJobRequest& WithOutputDataConfig(OutputDataConfig&& value) { SetOutputDataConfig(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the AWS Identity and Access Management * (IAM) role that grants Amazon Comprehend read access to your input data. For * more information, see https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions.

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

The Amazon Resource Name (ARN) of the AWS Identity and Access Management * (IAM) role that grants Amazon Comprehend read access to your input data. For * more information, see https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions.

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

The Amazon Resource Name (ARN) of the AWS Identity and Access Management * (IAM) role that grants Amazon Comprehend read access to your input data. For * more information, see https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions.

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

The Amazon Resource Name (ARN) of the AWS Identity and Access Management * (IAM) role that grants Amazon Comprehend read access to your input data. For * more information, see https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions.

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

The Amazon Resource Name (ARN) of the AWS Identity and Access Management * (IAM) role that grants Amazon Comprehend read access to your input data. For * more information, see https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions.

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

The Amazon Resource Name (ARN) of the AWS Identity and Access Management * (IAM) role that grants Amazon Comprehend read access to your input data. For * more information, see https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions.

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

The Amazon Resource Name (ARN) of the AWS Identity and Access Management * (IAM) role that grants Amazon Comprehend read access to your input data. For * more information, see https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions.

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

The Amazon Resource Name (ARN) of the AWS Identity and Access Management * (IAM) role that grants Amazon Comprehend read access to your input data. For * more information, see https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions.

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

The identifier of the job.

*/ inline const Aws::String& GetJobName() const{ return m_jobName; } /** *

The identifier of the job.

*/ inline bool JobNameHasBeenSet() const { return m_jobNameHasBeenSet; } /** *

The identifier of the job.

*/ inline void SetJobName(const Aws::String& value) { m_jobNameHasBeenSet = true; m_jobName = value; } /** *

The identifier of the job.

*/ inline void SetJobName(Aws::String&& value) { m_jobNameHasBeenSet = true; m_jobName = std::move(value); } /** *

The identifier of the job.

*/ inline void SetJobName(const char* value) { m_jobNameHasBeenSet = true; m_jobName.assign(value); } /** *

The identifier of the job.

*/ inline StartKeyPhrasesDetectionJobRequest& WithJobName(const Aws::String& value) { SetJobName(value); return *this;} /** *

The identifier of the job.

*/ inline StartKeyPhrasesDetectionJobRequest& WithJobName(Aws::String&& value) { SetJobName(std::move(value)); return *this;} /** *

The identifier of the job.

*/ inline StartKeyPhrasesDetectionJobRequest& WithJobName(const char* value) { SetJobName(value); return *this;} /** *

The language of the input documents. You can specify any of the primary * languages supported by Amazon Comprehend. All documents must be in the same * language.

*/ inline const LanguageCode& GetLanguageCode() const{ return m_languageCode; } /** *

The language of the input documents. You can specify any of the primary * languages supported by Amazon Comprehend. All documents must be in the same * language.

*/ inline bool LanguageCodeHasBeenSet() const { return m_languageCodeHasBeenSet; } /** *

The language of the input documents. You can specify any of the primary * languages supported by Amazon Comprehend. All documents must be in the same * language.

*/ inline void SetLanguageCode(const LanguageCode& value) { m_languageCodeHasBeenSet = true; m_languageCode = value; } /** *

The language of the input documents. You can specify any of the primary * languages supported by Amazon Comprehend. All documents must be in the same * language.

*/ inline void SetLanguageCode(LanguageCode&& value) { m_languageCodeHasBeenSet = true; m_languageCode = std::move(value); } /** *

The language of the input documents. You can specify any of the primary * languages supported by Amazon Comprehend. All documents must be in the same * language.

*/ inline StartKeyPhrasesDetectionJobRequest& WithLanguageCode(const LanguageCode& value) { SetLanguageCode(value); return *this;} /** *

The language of the input documents. You can specify any of the primary * languages supported by Amazon Comprehend. All documents must be in the same * language.

*/ inline StartKeyPhrasesDetectionJobRequest& WithLanguageCode(LanguageCode&& value) { SetLanguageCode(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 StartKeyPhrasesDetectionJobRequest& 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 StartKeyPhrasesDetectionJobRequest& 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 StartKeyPhrasesDetectionJobRequest& WithClientRequestToken(const char* value) { SetClientRequestToken(value); return *this;} /** *

ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses * to encrypt data on the storage volume attached to the ML compute instance(s) * that process the analysis job. The VolumeKmsKeyId can be either of the following * formats:

  • KMS Key ID: * "1234abcd-12ab-34cd-56ef-1234567890ab"

  • Amazon * Resource Name (ARN) of a KMS Key: * "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" *

*/ inline const Aws::String& GetVolumeKmsKeyId() const{ return m_volumeKmsKeyId; } /** *

ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses * to encrypt data on the storage volume attached to the ML compute instance(s) * that process the analysis job. The VolumeKmsKeyId can be either of the following * formats:

  • KMS Key ID: * "1234abcd-12ab-34cd-56ef-1234567890ab"

  • Amazon * Resource Name (ARN) of a KMS Key: * "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" *

*/ inline bool VolumeKmsKeyIdHasBeenSet() const { return m_volumeKmsKeyIdHasBeenSet; } /** *

ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses * to encrypt data on the storage volume attached to the ML compute instance(s) * that process the analysis job. The VolumeKmsKeyId can be either of the following * formats:

  • KMS Key ID: * "1234abcd-12ab-34cd-56ef-1234567890ab"

  • Amazon * Resource Name (ARN) of a KMS Key: * "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" *

*/ inline void SetVolumeKmsKeyId(const Aws::String& value) { m_volumeKmsKeyIdHasBeenSet = true; m_volumeKmsKeyId = value; } /** *

ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses * to encrypt data on the storage volume attached to the ML compute instance(s) * that process the analysis job. The VolumeKmsKeyId can be either of the following * formats:

  • KMS Key ID: * "1234abcd-12ab-34cd-56ef-1234567890ab"

  • Amazon * Resource Name (ARN) of a KMS Key: * "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" *

*/ inline void SetVolumeKmsKeyId(Aws::String&& value) { m_volumeKmsKeyIdHasBeenSet = true; m_volumeKmsKeyId = std::move(value); } /** *

ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses * to encrypt data on the storage volume attached to the ML compute instance(s) * that process the analysis job. The VolumeKmsKeyId can be either of the following * formats:

  • KMS Key ID: * "1234abcd-12ab-34cd-56ef-1234567890ab"

  • Amazon * Resource Name (ARN) of a KMS Key: * "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" *

*/ inline void SetVolumeKmsKeyId(const char* value) { m_volumeKmsKeyIdHasBeenSet = true; m_volumeKmsKeyId.assign(value); } /** *

ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses * to encrypt data on the storage volume attached to the ML compute instance(s) * that process the analysis job. The VolumeKmsKeyId can be either of the following * formats:

  • KMS Key ID: * "1234abcd-12ab-34cd-56ef-1234567890ab"

  • Amazon * Resource Name (ARN) of a KMS Key: * "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" *

*/ inline StartKeyPhrasesDetectionJobRequest& WithVolumeKmsKeyId(const Aws::String& value) { SetVolumeKmsKeyId(value); return *this;} /** *

ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses * to encrypt data on the storage volume attached to the ML compute instance(s) * that process the analysis job. The VolumeKmsKeyId can be either of the following * formats:

  • KMS Key ID: * "1234abcd-12ab-34cd-56ef-1234567890ab"

  • Amazon * Resource Name (ARN) of a KMS Key: * "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" *

*/ inline StartKeyPhrasesDetectionJobRequest& WithVolumeKmsKeyId(Aws::String&& value) { SetVolumeKmsKeyId(std::move(value)); return *this;} /** *

ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses * to encrypt data on the storage volume attached to the ML compute instance(s) * that process the analysis job. The VolumeKmsKeyId can be either of the following * formats:

  • KMS Key ID: * "1234abcd-12ab-34cd-56ef-1234567890ab"

  • Amazon * Resource Name (ARN) of a KMS Key: * "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" *

*/ inline StartKeyPhrasesDetectionJobRequest& WithVolumeKmsKeyId(const char* value) { SetVolumeKmsKeyId(value); return *this;} /** *

Configuration parameters for an optional private Virtual Private Cloud (VPC) * containing the resources you are using for your key phrases detection job. For * more information, see Amazon * VPC.

*/ inline const VpcConfig& GetVpcConfig() const{ return m_vpcConfig; } /** *

Configuration parameters for an optional private Virtual Private Cloud (VPC) * containing the resources you are using for your key phrases detection job. For * more information, see Amazon * VPC.

*/ inline bool VpcConfigHasBeenSet() const { return m_vpcConfigHasBeenSet; } /** *

Configuration parameters for an optional private Virtual Private Cloud (VPC) * containing the resources you are using for your key phrases detection job. For * more information, see Amazon * VPC.

*/ inline void SetVpcConfig(const VpcConfig& value) { m_vpcConfigHasBeenSet = true; m_vpcConfig = value; } /** *

Configuration parameters for an optional private Virtual Private Cloud (VPC) * containing the resources you are using for your key phrases detection job. For * more information, see Amazon * VPC.

*/ inline void SetVpcConfig(VpcConfig&& value) { m_vpcConfigHasBeenSet = true; m_vpcConfig = std::move(value); } /** *

Configuration parameters for an optional private Virtual Private Cloud (VPC) * containing the resources you are using for your key phrases detection job. For * more information, see Amazon * VPC.

*/ inline StartKeyPhrasesDetectionJobRequest& WithVpcConfig(const VpcConfig& value) { SetVpcConfig(value); return *this;} /** *

Configuration parameters for an optional private Virtual Private Cloud (VPC) * containing the resources you are using for your key phrases detection job. For * more information, see Amazon * VPC.

*/ inline StartKeyPhrasesDetectionJobRequest& WithVpcConfig(VpcConfig&& value) { SetVpcConfig(std::move(value)); return *this;} private: InputDataConfig m_inputDataConfig; bool m_inputDataConfigHasBeenSet; OutputDataConfig m_outputDataConfig; bool m_outputDataConfigHasBeenSet; Aws::String m_dataAccessRoleArn; bool m_dataAccessRoleArnHasBeenSet; Aws::String m_jobName; bool m_jobNameHasBeenSet; LanguageCode m_languageCode; bool m_languageCodeHasBeenSet; Aws::String m_clientRequestToken; bool m_clientRequestTokenHasBeenSet; Aws::String m_volumeKmsKeyId; bool m_volumeKmsKeyIdHasBeenSet; VpcConfig m_vpcConfig; bool m_vpcConfigHasBeenSet; }; } // namespace Model } // namespace Comprehend } // namespace Aws