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

The identifier of the data source.

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

The identifier of the data source.

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

The identifier of the data source.

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

The identifier of the data source.

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

The identifier of the data source.

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

The identifier of the data source.

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

The identifier of the data source.

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

The identifier of the index that contains the data source.

*/ inline const Aws::String& GetIndexId() const{ return m_indexId; } /** *

The identifier of the index that contains the data source.

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

The identifier of the index that contains the data source.

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

The identifier of the index that contains the data source.

*/ inline void SetIndexId(const char* value) { m_indexId.assign(value); } /** *

The identifier of the index that contains the data source.

*/ inline DescribeDataSourceResult& WithIndexId(const Aws::String& value) { SetIndexId(value); return *this;} /** *

The identifier of the index that contains the data source.

*/ inline DescribeDataSourceResult& WithIndexId(Aws::String&& value) { SetIndexId(std::move(value)); return *this;} /** *

The identifier of the index that contains the data source.

*/ inline DescribeDataSourceResult& WithIndexId(const char* value) { SetIndexId(value); return *this;} /** *

The name that you gave the data source when it was created.

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

The name that you gave the data source when it was created.

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

The name that you gave the data source when it was created.

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

The name that you gave the data source when it was created.

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

The name that you gave the data source when it was created.

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

The name that you gave the data source when it was created.

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

The name that you gave the data source when it was created.

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

The type of the data source.

*/ inline const DataSourceType& GetType() const{ return m_type; } /** *

The type of the data source.

*/ inline void SetType(const DataSourceType& value) { m_type = value; } /** *

The type of the data source.

*/ inline void SetType(DataSourceType&& value) { m_type = std::move(value); } /** *

The type of the data source.

*/ inline DescribeDataSourceResult& WithType(const DataSourceType& value) { SetType(value); return *this;} /** *

The type of the data source.

*/ inline DescribeDataSourceResult& WithType(DataSourceType&& value) { SetType(std::move(value)); return *this;} /** *

Information that describes where the data source is located and how the data * source is configured. The specific information in the description depends on the * data source provider.

*/ inline const DataSourceConfiguration& GetConfiguration() const{ return m_configuration; } /** *

Information that describes where the data source is located and how the data * source is configured. The specific information in the description depends on the * data source provider.

*/ inline void SetConfiguration(const DataSourceConfiguration& value) { m_configuration = value; } /** *

Information that describes where the data source is located and how the data * source is configured. The specific information in the description depends on the * data source provider.

*/ inline void SetConfiguration(DataSourceConfiguration&& value) { m_configuration = std::move(value); } /** *

Information that describes where the data source is located and how the data * source is configured. The specific information in the description depends on the * data source provider.

*/ inline DescribeDataSourceResult& WithConfiguration(const DataSourceConfiguration& value) { SetConfiguration(value); return *this;} /** *

Information that describes where the data source is located and how the data * source is configured. The specific information in the description depends on the * data source provider.

*/ inline DescribeDataSourceResult& WithConfiguration(DataSourceConfiguration&& value) { SetConfiguration(std::move(value)); return *this;} /** *

The Unix timestamp of when the data source was created.

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

The Unix timestamp of when the data source was created.

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

The Unix timestamp of when the data source was created.

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

The Unix timestamp of when the data source was created.

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

The Unix timestamp of when the data source was created.

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

The Unix timestamp of when the data source was last updated.

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

The Unix timestamp of when the data source was last updated.

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

The Unix timestamp of when the data source was last updated.

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

The Unix timestamp of when the data source was last updated.

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

The Unix timestamp of when the data source was last updated.

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

The description of the data source.

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

The description of the data source.

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

The description of the data source.

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

The description of the data source.

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

The description of the data source.

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

The description of the data source.

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

The description of the data source.

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

The current status of the data source. When the status is ACTIVE * the data source is ready to use. When the status is FAILED, the * ErrorMessage field contains the reason that the data source * failed.

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

The current status of the data source. When the status is ACTIVE * the data source is ready to use. When the status is FAILED, the * ErrorMessage field contains the reason that the data source * failed.

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

The current status of the data source. When the status is ACTIVE * the data source is ready to use. When the status is FAILED, the * ErrorMessage field contains the reason that the data source * failed.

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

The current status of the data source. When the status is ACTIVE * the data source is ready to use. When the status is FAILED, the * ErrorMessage field contains the reason that the data source * failed.

*/ inline DescribeDataSourceResult& WithStatus(const DataSourceStatus& value) { SetStatus(value); return *this;} /** *

The current status of the data source. When the status is ACTIVE * the data source is ready to use. When the status is FAILED, the * ErrorMessage field contains the reason that the data source * failed.

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

The schedule that Amazon Kendra will update the data source.

*/ inline const Aws::String& GetSchedule() const{ return m_schedule; } /** *

The schedule that Amazon Kendra will update the data source.

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

The schedule that Amazon Kendra will update the data source.

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

The schedule that Amazon Kendra will update the data source.

*/ inline void SetSchedule(const char* value) { m_schedule.assign(value); } /** *

The schedule that Amazon Kendra will update the data source.

*/ inline DescribeDataSourceResult& WithSchedule(const Aws::String& value) { SetSchedule(value); return *this;} /** *

The schedule that Amazon Kendra will update the data source.

*/ inline DescribeDataSourceResult& WithSchedule(Aws::String&& value) { SetSchedule(std::move(value)); return *this;} /** *

The schedule that Amazon Kendra will update the data source.

*/ inline DescribeDataSourceResult& WithSchedule(const char* value) { SetSchedule(value); return *this;} /** *

The Amazon Resource Name (ARN) of the role that enables the data source to * access its resources.

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

The Amazon Resource Name (ARN) of the role that enables the data source to * access its resources.

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

The Amazon Resource Name (ARN) of the role that enables the data source to * access its resources.

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

The Amazon Resource Name (ARN) of the role that enables the data source to * access its resources.

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

The Amazon Resource Name (ARN) of the role that enables the data source to * access its resources.

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

The Amazon Resource Name (ARN) of the role that enables the data source to * access its resources.

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

The Amazon Resource Name (ARN) of the role that enables the data source to * access its resources.

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

When the Status field value is FAILED, the * ErrorMessage field contains a description of the error that caused * the data source to fail.

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

When the Status field value is FAILED, the * ErrorMessage field contains a description of the error that caused * the data source to fail.

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

When the Status field value is FAILED, the * ErrorMessage field contains a description of the error that caused * the data source to fail.

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

When the Status field value is FAILED, the * ErrorMessage field contains a description of the error that caused * the data source to fail.

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

When the Status field value is FAILED, the * ErrorMessage field contains a description of the error that caused * the data source to fail.

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

When the Status field value is FAILED, the * ErrorMessage field contains a description of the error that caused * the data source to fail.

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

When the Status field value is FAILED, the * ErrorMessage field contains a description of the error that caused * the data source to fail.

*/ inline DescribeDataSourceResult& WithErrorMessage(const char* value) { SetErrorMessage(value); return *this;} private: Aws::String m_id; Aws::String m_indexId; Aws::String m_name; DataSourceType m_type; DataSourceConfiguration m_configuration; Aws::Utils::DateTime m_createdAt; Aws::Utils::DateTime m_updatedAt; Aws::String m_description; DataSourceStatus m_status; Aws::String m_schedule; Aws::String m_roleArn; Aws::String m_errorMessage; }; } // namespace Model } // namespace kendra } // namespace Aws