/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace TranscribeService { namespace Model { /** *

Contains the Amazon S3 location of the training data you want to use to * create a new custom language model, and permissions to access this location.

*

When using InputDataConfig, you must include these * sub-parameters: S3Uri and DataAccessRoleArn. You can * optionally include TuningDataS3Uri.

See Also:

AWS * API Reference

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

The Amazon S3 location (URI) of the text files you want to use to train your * custom language model.

Here's an example URI path: * s3://DOC-EXAMPLE-BUCKET/my-model-training-data/

*/ inline const Aws::String& GetS3Uri() const{ return m_s3Uri; } /** *

The Amazon S3 location (URI) of the text files you want to use to train your * custom language model.

Here's an example URI path: * s3://DOC-EXAMPLE-BUCKET/my-model-training-data/

*/ inline bool S3UriHasBeenSet() const { return m_s3UriHasBeenSet; } /** *

The Amazon S3 location (URI) of the text files you want to use to train your * custom language model.

Here's an example URI path: * s3://DOC-EXAMPLE-BUCKET/my-model-training-data/

*/ inline void SetS3Uri(const Aws::String& value) { m_s3UriHasBeenSet = true; m_s3Uri = value; } /** *

The Amazon S3 location (URI) of the text files you want to use to train your * custom language model.

Here's an example URI path: * s3://DOC-EXAMPLE-BUCKET/my-model-training-data/

*/ inline void SetS3Uri(Aws::String&& value) { m_s3UriHasBeenSet = true; m_s3Uri = std::move(value); } /** *

The Amazon S3 location (URI) of the text files you want to use to train your * custom language model.

Here's an example URI path: * s3://DOC-EXAMPLE-BUCKET/my-model-training-data/

*/ inline void SetS3Uri(const char* value) { m_s3UriHasBeenSet = true; m_s3Uri.assign(value); } /** *

The Amazon S3 location (URI) of the text files you want to use to train your * custom language model.

Here's an example URI path: * s3://DOC-EXAMPLE-BUCKET/my-model-training-data/

*/ inline InputDataConfig& WithS3Uri(const Aws::String& value) { SetS3Uri(value); return *this;} /** *

The Amazon S3 location (URI) of the text files you want to use to train your * custom language model.

Here's an example URI path: * s3://DOC-EXAMPLE-BUCKET/my-model-training-data/

*/ inline InputDataConfig& WithS3Uri(Aws::String&& value) { SetS3Uri(std::move(value)); return *this;} /** *

The Amazon S3 location (URI) of the text files you want to use to train your * custom language model.

Here's an example URI path: * s3://DOC-EXAMPLE-BUCKET/my-model-training-data/

*/ inline InputDataConfig& WithS3Uri(const char* value) { SetS3Uri(value); return *this;} /** *

The Amazon S3 location (URI) of the text files you want to use to tune your * custom language model.

Here's an example URI path: * s3://DOC-EXAMPLE-BUCKET/my-model-tuning-data/

*/ inline const Aws::String& GetTuningDataS3Uri() const{ return m_tuningDataS3Uri; } /** *

The Amazon S3 location (URI) of the text files you want to use to tune your * custom language model.

Here's an example URI path: * s3://DOC-EXAMPLE-BUCKET/my-model-tuning-data/

*/ inline bool TuningDataS3UriHasBeenSet() const { return m_tuningDataS3UriHasBeenSet; } /** *

The Amazon S3 location (URI) of the text files you want to use to tune your * custom language model.

Here's an example URI path: * s3://DOC-EXAMPLE-BUCKET/my-model-tuning-data/

*/ inline void SetTuningDataS3Uri(const Aws::String& value) { m_tuningDataS3UriHasBeenSet = true; m_tuningDataS3Uri = value; } /** *

The Amazon S3 location (URI) of the text files you want to use to tune your * custom language model.

Here's an example URI path: * s3://DOC-EXAMPLE-BUCKET/my-model-tuning-data/

*/ inline void SetTuningDataS3Uri(Aws::String&& value) { m_tuningDataS3UriHasBeenSet = true; m_tuningDataS3Uri = std::move(value); } /** *

The Amazon S3 location (URI) of the text files you want to use to tune your * custom language model.

Here's an example URI path: * s3://DOC-EXAMPLE-BUCKET/my-model-tuning-data/

*/ inline void SetTuningDataS3Uri(const char* value) { m_tuningDataS3UriHasBeenSet = true; m_tuningDataS3Uri.assign(value); } /** *

The Amazon S3 location (URI) of the text files you want to use to tune your * custom language model.

Here's an example URI path: * s3://DOC-EXAMPLE-BUCKET/my-model-tuning-data/

*/ inline InputDataConfig& WithTuningDataS3Uri(const Aws::String& value) { SetTuningDataS3Uri(value); return *this;} /** *

The Amazon S3 location (URI) of the text files you want to use to tune your * custom language model.

Here's an example URI path: * s3://DOC-EXAMPLE-BUCKET/my-model-tuning-data/

*/ inline InputDataConfig& WithTuningDataS3Uri(Aws::String&& value) { SetTuningDataS3Uri(std::move(value)); return *this;} /** *

The Amazon S3 location (URI) of the text files you want to use to tune your * custom language model.

Here's an example URI path: * s3://DOC-EXAMPLE-BUCKET/my-model-tuning-data/

*/ inline InputDataConfig& WithTuningDataS3Uri(const char* value) { SetTuningDataS3Uri(value); return *this;} /** *

The Amazon Resource Name (ARN) of an IAM role that has permissions to access * the Amazon S3 bucket that contains your input files. If the role that you * specify doesn’t have the appropriate permissions to access the specified Amazon * S3 location, your request fails.

IAM role ARNs have the format * arn:partition:iam::account:role/role-name-with-path. For example: * arn:aws:iam::111122223333:role/Admin.

For more information, * see IAM * ARNs.

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

The Amazon Resource Name (ARN) of an IAM role that has permissions to access * the Amazon S3 bucket that contains your input files. If the role that you * specify doesn’t have the appropriate permissions to access the specified Amazon * S3 location, your request fails.

IAM role ARNs have the format * arn:partition:iam::account:role/role-name-with-path. For example: * arn:aws:iam::111122223333:role/Admin.

For more information, * see IAM * ARNs.

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

The Amazon Resource Name (ARN) of an IAM role that has permissions to access * the Amazon S3 bucket that contains your input files. If the role that you * specify doesn’t have the appropriate permissions to access the specified Amazon * S3 location, your request fails.

IAM role ARNs have the format * arn:partition:iam::account:role/role-name-with-path. For example: * arn:aws:iam::111122223333:role/Admin.

For more information, * see IAM * ARNs.

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

The Amazon Resource Name (ARN) of an IAM role that has permissions to access * the Amazon S3 bucket that contains your input files. If the role that you * specify doesn’t have the appropriate permissions to access the specified Amazon * S3 location, your request fails.

IAM role ARNs have the format * arn:partition:iam::account:role/role-name-with-path. For example: * arn:aws:iam::111122223333:role/Admin.

For more information, * see IAM * ARNs.

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

The Amazon Resource Name (ARN) of an IAM role that has permissions to access * the Amazon S3 bucket that contains your input files. If the role that you * specify doesn’t have the appropriate permissions to access the specified Amazon * S3 location, your request fails.

IAM role ARNs have the format * arn:partition:iam::account:role/role-name-with-path. For example: * arn:aws:iam::111122223333:role/Admin.

For more information, * see IAM * ARNs.

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

The Amazon Resource Name (ARN) of an IAM role that has permissions to access * the Amazon S3 bucket that contains your input files. If the role that you * specify doesn’t have the appropriate permissions to access the specified Amazon * S3 location, your request fails.

IAM role ARNs have the format * arn:partition:iam::account:role/role-name-with-path. For example: * arn:aws:iam::111122223333:role/Admin.

For more information, * see IAM * ARNs.

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

The Amazon Resource Name (ARN) of an IAM role that has permissions to access * the Amazon S3 bucket that contains your input files. If the role that you * specify doesn’t have the appropriate permissions to access the specified Amazon * S3 location, your request fails.

IAM role ARNs have the format * arn:partition:iam::account:role/role-name-with-path. For example: * arn:aws:iam::111122223333:role/Admin.

For more information, * see IAM * ARNs.

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

The Amazon Resource Name (ARN) of an IAM role that has permissions to access * the Amazon S3 bucket that contains your input files. If the role that you * specify doesn’t have the appropriate permissions to access the specified Amazon * S3 location, your request fails.

IAM role ARNs have the format * arn:partition:iam::account:role/role-name-with-path. For example: * arn:aws:iam::111122223333:role/Admin.

For more information, * see IAM * ARNs.

*/ inline InputDataConfig& WithDataAccessRoleArn(const char* value) { SetDataAccessRoleArn(value); return *this;} private: Aws::String m_s3Uri; bool m_s3UriHasBeenSet = false; Aws::String m_tuningDataS3Uri; bool m_tuningDataS3UriHasBeenSet = false; Aws::String m_dataAccessRoleArn; bool m_dataAccessRoleArnHasBeenSet = false; }; } // namespace Model } // namespace TranscribeService } // namespace Aws