/** * 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 #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace kendra { namespace Model { class AWS_KENDRA_API DescribeIndexResult { public: DescribeIndexResult(); DescribeIndexResult(const Aws::AmazonWebServiceResult& result); DescribeIndexResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The name of the index.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

The name of the index.

*/ inline void SetName(const Aws::String& value) { m_name = value; } /** *

The name of the index.

*/ inline void SetName(Aws::String&& value) { m_name = std::move(value); } /** *

The name of the index.

*/ inline void SetName(const char* value) { m_name.assign(value); } /** *

The name of the index.

*/ inline DescribeIndexResult& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

The name of the index.

*/ inline DescribeIndexResult& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

The name of the index.

*/ inline DescribeIndexResult& WithName(const char* value) { SetName(value); return *this;} /** *

the name of the index.

*/ inline const Aws::String& GetId() const{ return m_id; } /** *

the name of the index.

*/ inline void SetId(const Aws::String& value) { m_id = value; } /** *

the name of the index.

*/ inline void SetId(Aws::String&& value) { m_id = std::move(value); } /** *

the name of the index.

*/ inline void SetId(const char* value) { m_id.assign(value); } /** *

the name of the index.

*/ inline DescribeIndexResult& WithId(const Aws::String& value) { SetId(value); return *this;} /** *

the name of the index.

*/ inline DescribeIndexResult& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *

the name of the index.

*/ inline DescribeIndexResult& WithId(const char* value) { SetId(value); return *this;} /** *

The Amazon Kendra edition used for the index. You decide the edition when you * create the index.

*/ inline const IndexEdition& GetEdition() const{ return m_edition; } /** *

The Amazon Kendra edition used for the index. You decide the edition when you * create the index.

*/ inline void SetEdition(const IndexEdition& value) { m_edition = value; } /** *

The Amazon Kendra edition used for the index. You decide the edition when you * create the index.

*/ inline void SetEdition(IndexEdition&& value) { m_edition = std::move(value); } /** *

The Amazon Kendra edition used for the index. You decide the edition when you * create the index.

*/ inline DescribeIndexResult& WithEdition(const IndexEdition& value) { SetEdition(value); return *this;} /** *

The Amazon Kendra edition used for the index. You decide the edition when you * create the index.

*/ inline DescribeIndexResult& WithEdition(IndexEdition&& value) { SetEdition(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the IAM role that gives Amazon Kendra * permission to write to your Amazon Cloudwatch logs.

*/ inline const Aws::String& GetRoleArn() const{ return m_roleArn; } /** *

The Amazon Resource Name (ARN) of the IAM role that gives Amazon Kendra * permission to write to your Amazon Cloudwatch logs.

*/ inline void SetRoleArn(const Aws::String& value) { m_roleArn = value; } /** *

The Amazon Resource Name (ARN) of the IAM role that gives Amazon Kendra * permission to write to your Amazon Cloudwatch logs.

*/ inline void SetRoleArn(Aws::String&& value) { m_roleArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the IAM role that gives Amazon Kendra * permission to write to your Amazon Cloudwatch logs.

*/ inline void SetRoleArn(const char* value) { m_roleArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the IAM role that gives Amazon Kendra * permission to write to your Amazon Cloudwatch logs.

*/ inline DescribeIndexResult& WithRoleArn(const Aws::String& value) { SetRoleArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the IAM role that gives Amazon Kendra * permission to write to your Amazon Cloudwatch logs.

*/ inline DescribeIndexResult& WithRoleArn(Aws::String&& value) { SetRoleArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the IAM role that gives Amazon Kendra * permission to write to your Amazon Cloudwatch logs.

*/ inline DescribeIndexResult& WithRoleArn(const char* value) { SetRoleArn(value); return *this;} /** *

The identifier of the AWS KMS customer master key (CMK) used to encrypt your * data. Amazon Kendra doesn't support asymmetric CMKs.

*/ inline const ServerSideEncryptionConfiguration& GetServerSideEncryptionConfiguration() const{ return m_serverSideEncryptionConfiguration; } /** *

The identifier of the AWS KMS customer master key (CMK) used to encrypt your * data. Amazon Kendra doesn't support asymmetric CMKs.

*/ inline void SetServerSideEncryptionConfiguration(const ServerSideEncryptionConfiguration& value) { m_serverSideEncryptionConfiguration = value; } /** *

The identifier of the AWS KMS customer master key (CMK) used to encrypt your * data. Amazon Kendra doesn't support asymmetric CMKs.

*/ inline void SetServerSideEncryptionConfiguration(ServerSideEncryptionConfiguration&& value) { m_serverSideEncryptionConfiguration = std::move(value); } /** *

The identifier of the AWS KMS customer master key (CMK) used to encrypt your * data. Amazon Kendra doesn't support asymmetric CMKs.

*/ inline DescribeIndexResult& WithServerSideEncryptionConfiguration(const ServerSideEncryptionConfiguration& value) { SetServerSideEncryptionConfiguration(value); return *this;} /** *

The identifier of the AWS KMS customer master key (CMK) used to encrypt your * data. Amazon Kendra doesn't support asymmetric CMKs.

*/ inline DescribeIndexResult& WithServerSideEncryptionConfiguration(ServerSideEncryptionConfiguration&& value) { SetServerSideEncryptionConfiguration(std::move(value)); return *this;} /** *

The current status of the index. When the value is ACTIVE, the * index is ready for use. If the Status field value is * FAILED, the ErrorMessage field contains a message that * explains why.

*/ inline const IndexStatus& GetStatus() const{ return m_status; } /** *

The current status of the index. When the value is ACTIVE, the * index is ready for use. If the Status field value is * FAILED, the ErrorMessage field contains a message that * explains why.

*/ inline void SetStatus(const IndexStatus& value) { m_status = value; } /** *

The current status of the index. When the value is ACTIVE, the * index is ready for use. If the Status field value is * FAILED, the ErrorMessage field contains a message that * explains why.

*/ inline void SetStatus(IndexStatus&& value) { m_status = std::move(value); } /** *

The current status of the index. When the value is ACTIVE, the * index is ready for use. If the Status field value is * FAILED, the ErrorMessage field contains a message that * explains why.

*/ inline DescribeIndexResult& WithStatus(const IndexStatus& value) { SetStatus(value); return *this;} /** *

The current status of the index. When the value is ACTIVE, the * index is ready for use. If the Status field value is * FAILED, the ErrorMessage field contains a message that * explains why.

*/ inline DescribeIndexResult& WithStatus(IndexStatus&& value) { SetStatus(std::move(value)); return *this;} /** *

The description of the index.

*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *

The description of the index.

*/ inline void SetDescription(const Aws::String& value) { m_description = value; } /** *

The description of the index.

*/ inline void SetDescription(Aws::String&& value) { m_description = std::move(value); } /** *

The description of the index.

*/ inline void SetDescription(const char* value) { m_description.assign(value); } /** *

The description of the index.

*/ inline DescribeIndexResult& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *

The description of the index.

*/ inline DescribeIndexResult& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *

The description of the index.

*/ inline DescribeIndexResult& WithDescription(const char* value) { SetDescription(value); return *this;} /** *

The Unix datetime that the index was created.

*/ inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; } /** *

The Unix datetime that the index was created.

*/ inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAt = value; } /** *

The Unix datetime that the index was created.

*/ inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAt = std::move(value); } /** *

The Unix datetime that the index was created.

*/ inline DescribeIndexResult& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;} /** *

The Unix datetime that the index was created.

*/ inline DescribeIndexResult& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;} /** *

The Unix datetime that the index was last updated.

*/ inline const Aws::Utils::DateTime& GetUpdatedAt() const{ return m_updatedAt; } /** *

The Unix datetime that the index was last updated.

*/ inline void SetUpdatedAt(const Aws::Utils::DateTime& value) { m_updatedAt = value; } /** *

The Unix datetime that the index was last updated.

*/ inline void SetUpdatedAt(Aws::Utils::DateTime&& value) { m_updatedAt = std::move(value); } /** *

The Unix datetime that the index was last updated.

*/ inline DescribeIndexResult& WithUpdatedAt(const Aws::Utils::DateTime& value) { SetUpdatedAt(value); return *this;} /** *

The Unix datetime that the index was last updated.

*/ inline DescribeIndexResult& WithUpdatedAt(Aws::Utils::DateTime&& value) { SetUpdatedAt(std::move(value)); return *this;} /** *

Configuration settings for any metadata applied to the documents in the * index.

*/ inline const Aws::Vector& GetDocumentMetadataConfigurations() const{ return m_documentMetadataConfigurations; } /** *

Configuration settings for any metadata applied to the documents in the * index.

*/ inline void SetDocumentMetadataConfigurations(const Aws::Vector& value) { m_documentMetadataConfigurations = value; } /** *

Configuration settings for any metadata applied to the documents in the * index.

*/ inline void SetDocumentMetadataConfigurations(Aws::Vector&& value) { m_documentMetadataConfigurations = std::move(value); } /** *

Configuration settings for any metadata applied to the documents in the * index.

*/ inline DescribeIndexResult& WithDocumentMetadataConfigurations(const Aws::Vector& value) { SetDocumentMetadataConfigurations(value); return *this;} /** *

Configuration settings for any metadata applied to the documents in the * index.

*/ inline DescribeIndexResult& WithDocumentMetadataConfigurations(Aws::Vector&& value) { SetDocumentMetadataConfigurations(std::move(value)); return *this;} /** *

Configuration settings for any metadata applied to the documents in the * index.

*/ inline DescribeIndexResult& AddDocumentMetadataConfigurations(const DocumentMetadataConfiguration& value) { m_documentMetadataConfigurations.push_back(value); return *this; } /** *

Configuration settings for any metadata applied to the documents in the * index.

*/ inline DescribeIndexResult& AddDocumentMetadataConfigurations(DocumentMetadataConfiguration&& value) { m_documentMetadataConfigurations.push_back(std::move(value)); return *this; } /** *

Provides information about the number of FAQ questions and answers and the * number of text documents indexed.

*/ inline const IndexStatistics& GetIndexStatistics() const{ return m_indexStatistics; } /** *

Provides information about the number of FAQ questions and answers and the * number of text documents indexed.

*/ inline void SetIndexStatistics(const IndexStatistics& value) { m_indexStatistics = value; } /** *

Provides information about the number of FAQ questions and answers and the * number of text documents indexed.

*/ inline void SetIndexStatistics(IndexStatistics&& value) { m_indexStatistics = std::move(value); } /** *

Provides information about the number of FAQ questions and answers and the * number of text documents indexed.

*/ inline DescribeIndexResult& WithIndexStatistics(const IndexStatistics& value) { SetIndexStatistics(value); return *this;} /** *

Provides information about the number of FAQ questions and answers and the * number of text documents indexed.

*/ inline DescribeIndexResult& WithIndexStatistics(IndexStatistics&& value) { SetIndexStatistics(std::move(value)); return *this;} /** *

When th eStatus field value is FAILED, the * ErrorMessage field contains a message that explains why.

*/ inline const Aws::String& GetErrorMessage() const{ return m_errorMessage; } /** *

When th eStatus field value is FAILED, the * ErrorMessage field contains a message that explains why.

*/ inline void SetErrorMessage(const Aws::String& value) { m_errorMessage = value; } /** *

When th eStatus field value is FAILED, the * ErrorMessage field contains a message that explains why.

*/ inline void SetErrorMessage(Aws::String&& value) { m_errorMessage = std::move(value); } /** *

When th eStatus field value is FAILED, the * ErrorMessage field contains a message that explains why.

*/ inline void SetErrorMessage(const char* value) { m_errorMessage.assign(value); } /** *

When th eStatus field value is FAILED, the * ErrorMessage field contains a message that explains why.

*/ inline DescribeIndexResult& WithErrorMessage(const Aws::String& value) { SetErrorMessage(value); return *this;} /** *

When th eStatus field value is FAILED, the * ErrorMessage field contains a message that explains why.

*/ inline DescribeIndexResult& WithErrorMessage(Aws::String&& value) { SetErrorMessage(std::move(value)); return *this;} /** *

When th eStatus field value is FAILED, the * ErrorMessage field contains a message that explains why.

*/ inline DescribeIndexResult& WithErrorMessage(const char* value) { SetErrorMessage(value); return *this;} /** *

For enterprise edtion indexes, you can choose to use additional capacity to * meet the needs of your application. This contains the capacity units used for * the index. A 0 for the query capacity or the storage capacity indicates that the * index is using the default capacity for the index.

*/ inline const CapacityUnitsConfiguration& GetCapacityUnits() const{ return m_capacityUnits; } /** *

For enterprise edtion indexes, you can choose to use additional capacity to * meet the needs of your application. This contains the capacity units used for * the index. A 0 for the query capacity or the storage capacity indicates that the * index is using the default capacity for the index.

*/ inline void SetCapacityUnits(const CapacityUnitsConfiguration& value) { m_capacityUnits = value; } /** *

For enterprise edtion indexes, you can choose to use additional capacity to * meet the needs of your application. This contains the capacity units used for * the index. A 0 for the query capacity or the storage capacity indicates that the * index is using the default capacity for the index.

*/ inline void SetCapacityUnits(CapacityUnitsConfiguration&& value) { m_capacityUnits = std::move(value); } /** *

For enterprise edtion indexes, you can choose to use additional capacity to * meet the needs of your application. This contains the capacity units used for * the index. A 0 for the query capacity or the storage capacity indicates that the * index is using the default capacity for the index.

*/ inline DescribeIndexResult& WithCapacityUnits(const CapacityUnitsConfiguration& value) { SetCapacityUnits(value); return *this;} /** *

For enterprise edtion indexes, you can choose to use additional capacity to * meet the needs of your application. This contains the capacity units used for * the index. A 0 for the query capacity or the storage capacity indicates that the * index is using the default capacity for the index.

*/ inline DescribeIndexResult& WithCapacityUnits(CapacityUnitsConfiguration&& value) { SetCapacityUnits(std::move(value)); return *this;} private: Aws::String m_name; Aws::String m_id; IndexEdition m_edition; Aws::String m_roleArn; ServerSideEncryptionConfiguration m_serverSideEncryptionConfiguration; IndexStatus m_status; Aws::String m_description; Aws::Utils::DateTime m_createdAt; Aws::Utils::DateTime m_updatedAt; Aws::Vector m_documentMetadataConfigurations; IndexStatistics m_indexStatistics; Aws::String m_errorMessage; CapacityUnitsConfiguration m_capacityUnits; }; } // namespace Model } // namespace kendra } // namespace Aws