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

This is the descriptive suffix that becomes part of the * EndpointArn used for all subsequent requests to this resource.

*/ inline const Aws::String& GetEndpointName() const{ return m_endpointName; } /** *

This is the descriptive suffix that becomes part of the * EndpointArn used for all subsequent requests to this resource.

*/ inline bool EndpointNameHasBeenSet() const { return m_endpointNameHasBeenSet; } /** *

This is the descriptive suffix that becomes part of the * EndpointArn used for all subsequent requests to this resource.

*/ inline void SetEndpointName(const Aws::String& value) { m_endpointNameHasBeenSet = true; m_endpointName = value; } /** *

This is the descriptive suffix that becomes part of the * EndpointArn used for all subsequent requests to this resource.

*/ inline void SetEndpointName(Aws::String&& value) { m_endpointNameHasBeenSet = true; m_endpointName = std::move(value); } /** *

This is the descriptive suffix that becomes part of the * EndpointArn used for all subsequent requests to this resource.

*/ inline void SetEndpointName(const char* value) { m_endpointNameHasBeenSet = true; m_endpointName.assign(value); } /** *

This is the descriptive suffix that becomes part of the * EndpointArn used for all subsequent requests to this resource.

*/ inline CreateEndpointRequest& WithEndpointName(const Aws::String& value) { SetEndpointName(value); return *this;} /** *

This is the descriptive suffix that becomes part of the * EndpointArn used for all subsequent requests to this resource.

*/ inline CreateEndpointRequest& WithEndpointName(Aws::String&& value) { SetEndpointName(std::move(value)); return *this;} /** *

This is the descriptive suffix that becomes part of the * EndpointArn used for all subsequent requests to this resource.

*/ inline CreateEndpointRequest& WithEndpointName(const char* value) { SetEndpointName(value); return *this;} /** *

The Amazon Resource Number (ARN) of the model to which the endpoint will be * attached.

*/ inline const Aws::String& GetModelArn() const{ return m_modelArn; } /** *

The Amazon Resource Number (ARN) of the model to which the endpoint will be * attached.

*/ inline bool ModelArnHasBeenSet() const { return m_modelArnHasBeenSet; } /** *

The Amazon Resource Number (ARN) of the model to which the endpoint will be * attached.

*/ inline void SetModelArn(const Aws::String& value) { m_modelArnHasBeenSet = true; m_modelArn = value; } /** *

The Amazon Resource Number (ARN) of the model to which the endpoint will be * attached.

*/ inline void SetModelArn(Aws::String&& value) { m_modelArnHasBeenSet = true; m_modelArn = std::move(value); } /** *

The Amazon Resource Number (ARN) of the model to which the endpoint will be * attached.

*/ inline void SetModelArn(const char* value) { m_modelArnHasBeenSet = true; m_modelArn.assign(value); } /** *

The Amazon Resource Number (ARN) of the model to which the endpoint will be * attached.

*/ inline CreateEndpointRequest& WithModelArn(const Aws::String& value) { SetModelArn(value); return *this;} /** *

The Amazon Resource Number (ARN) of the model to which the endpoint will be * attached.

*/ inline CreateEndpointRequest& WithModelArn(Aws::String&& value) { SetModelArn(std::move(value)); return *this;} /** *

The Amazon Resource Number (ARN) of the model to which the endpoint will be * attached.

*/ inline CreateEndpointRequest& WithModelArn(const char* value) { SetModelArn(value); return *this;} /** *

The desired number of inference units to be used by the model using this * endpoint. Each inference unit represents of a throughput of 100 characters per * second.

*/ inline int GetDesiredInferenceUnits() const{ return m_desiredInferenceUnits; } /** *

The desired number of inference units to be used by the model using this * endpoint. Each inference unit represents of a throughput of 100 characters per * second.

*/ inline bool DesiredInferenceUnitsHasBeenSet() const { return m_desiredInferenceUnitsHasBeenSet; } /** *

The desired number of inference units to be used by the model using this * endpoint. Each inference unit represents of a throughput of 100 characters per * second.

*/ inline void SetDesiredInferenceUnits(int value) { m_desiredInferenceUnitsHasBeenSet = true; m_desiredInferenceUnits = value; } /** *

The desired number of inference units to be used by the model using this * endpoint. Each inference unit represents of a throughput of 100 characters per * second.

*/ inline CreateEndpointRequest& WithDesiredInferenceUnits(int value) { SetDesiredInferenceUnits(value); return *this;} /** *

An idempotency token provided by the customer. If this token matches a * previous endpoint creation request, Amazon Comprehend will not return a * ResourceInUseException.

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

An idempotency token provided by the customer. If this token matches a * previous endpoint creation request, Amazon Comprehend will not return a * ResourceInUseException.

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

An idempotency token provided by the customer. If this token matches a * previous endpoint creation request, Amazon Comprehend will not return a * ResourceInUseException.

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

An idempotency token provided by the customer. If this token matches a * previous endpoint creation request, Amazon Comprehend will not return a * ResourceInUseException.

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

An idempotency token provided by the customer. If this token matches a * previous endpoint creation request, Amazon Comprehend will not return a * ResourceInUseException.

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

An idempotency token provided by the customer. If this token matches a * previous endpoint creation request, Amazon Comprehend will not return a * ResourceInUseException.

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

An idempotency token provided by the customer. If this token matches a * previous endpoint creation request, Amazon Comprehend will not return a * ResourceInUseException.

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

An idempotency token provided by the customer. If this token matches a * previous endpoint creation request, Amazon Comprehend will not return a * ResourceInUseException.

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

Tags to associate with the endpoint. A tag is a key-value pair that adds * metadata to the endpoint. For example, a tag with "Sales" as the key might be * added to an endpoint to indicate its use by the sales department.

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

Tags to associate with the endpoint. A tag is a key-value pair that adds * metadata to the endpoint. For example, a tag with "Sales" as the key might be * added to an endpoint to indicate its use by the sales department.

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

Tags to associate with the endpoint. A tag is a key-value pair that adds * metadata to the endpoint. For example, a tag with "Sales" as the key might be * added to an endpoint to indicate its use by the sales department.

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

Tags to associate with the endpoint. A tag is a key-value pair that adds * metadata to the endpoint. For example, a tag with "Sales" as the key might be * added to an endpoint to indicate its use by the sales department.

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

Tags to associate with the endpoint. A tag is a key-value pair that adds * metadata to the endpoint. For example, a tag with "Sales" as the key might be * added to an endpoint to indicate its use by the sales department.

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

Tags to associate with the endpoint. A tag is a key-value pair that adds * metadata to the endpoint. For example, a tag with "Sales" as the key might be * added to an endpoint to indicate its use by the sales department.

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

Tags to associate with the endpoint. A tag is a key-value pair that adds * metadata to the endpoint. For example, a tag with "Sales" as the key might be * added to an endpoint to indicate its use by the sales department.

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

Tags to associate with the endpoint. A tag is a key-value pair that adds * metadata to the endpoint. For example, a tag with "Sales" as the key might be * added to an endpoint to indicate its use by the sales department.

*/ inline CreateEndpointRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } /** *

The Amazon Resource Name (ARN) of the IAM role that grants Amazon Comprehend * read access to trained custom models encrypted with a customer managed key * (ModelKmsKeyId).

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

The Amazon Resource Name (ARN) of the IAM role that grants Amazon Comprehend * read access to trained custom models encrypted with a customer managed key * (ModelKmsKeyId).

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

The Amazon Resource Name (ARN) of the IAM role that grants Amazon Comprehend * read access to trained custom models encrypted with a customer managed key * (ModelKmsKeyId).

*/ 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 * read access to trained custom models encrypted with a customer managed key * (ModelKmsKeyId).

*/ 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 * read access to trained custom models encrypted with a customer managed key * (ModelKmsKeyId).

*/ 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 * read access to trained custom models encrypted with a customer managed key * (ModelKmsKeyId).

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

The Amazon Resource Name (ARN) of the IAM role that grants Amazon Comprehend * read access to trained custom models encrypted with a customer managed key * (ModelKmsKeyId).

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

The Amazon Resource Name (ARN) of the IAM role that grants Amazon Comprehend * read access to trained custom models encrypted with a customer managed key * (ModelKmsKeyId).

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

The Amazon Resource Number (ARN) of the flywheel to which the endpoint will * be attached.

*/ inline const Aws::String& GetFlywheelArn() const{ return m_flywheelArn; } /** *

The Amazon Resource Number (ARN) of the flywheel to which the endpoint will * be attached.

*/ inline bool FlywheelArnHasBeenSet() const { return m_flywheelArnHasBeenSet; } /** *

The Amazon Resource Number (ARN) of the flywheel to which the endpoint will * be attached.

*/ inline void SetFlywheelArn(const Aws::String& value) { m_flywheelArnHasBeenSet = true; m_flywheelArn = value; } /** *

The Amazon Resource Number (ARN) of the flywheel to which the endpoint will * be attached.

*/ inline void SetFlywheelArn(Aws::String&& value) { m_flywheelArnHasBeenSet = true; m_flywheelArn = std::move(value); } /** *

The Amazon Resource Number (ARN) of the flywheel to which the endpoint will * be attached.

*/ inline void SetFlywheelArn(const char* value) { m_flywheelArnHasBeenSet = true; m_flywheelArn.assign(value); } /** *

The Amazon Resource Number (ARN) of the flywheel to which the endpoint will * be attached.

*/ inline CreateEndpointRequest& WithFlywheelArn(const Aws::String& value) { SetFlywheelArn(value); return *this;} /** *

The Amazon Resource Number (ARN) of the flywheel to which the endpoint will * be attached.

*/ inline CreateEndpointRequest& WithFlywheelArn(Aws::String&& value) { SetFlywheelArn(std::move(value)); return *this;} /** *

The Amazon Resource Number (ARN) of the flywheel to which the endpoint will * be attached.

*/ inline CreateEndpointRequest& WithFlywheelArn(const char* value) { SetFlywheelArn(value); return *this;} private: Aws::String m_endpointName; bool m_endpointNameHasBeenSet = false; Aws::String m_modelArn; bool m_modelArnHasBeenSet = false; int m_desiredInferenceUnits; bool m_desiredInferenceUnitsHasBeenSet = false; Aws::String m_clientRequestToken; bool m_clientRequestTokenHasBeenSet = false; Aws::Vector m_tags; bool m_tagsHasBeenSet = false; Aws::String m_dataAccessRoleArn; bool m_dataAccessRoleArnHasBeenSet = false; Aws::String m_flywheelArn; bool m_flywheelArnHasBeenSet = false; }; } // namespace Model } // namespace Comprehend } // namespace Aws