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

The Amazon * resource name (ARN) of the index.

*/ inline const Aws::String& GetArn() const{ return m_arn; } /** *

The Amazon * resource name (ARN) of the index.

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

The Amazon * resource name (ARN) of the index.

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

The Amazon * resource name (ARN) of the index.

*/ inline void SetArn(const char* value) { m_arn.assign(value); } /** *

The Amazon * resource name (ARN) of the index.

*/ inline GetIndexResult& WithArn(const Aws::String& value) { SetArn(value); return *this;} /** *

The Amazon * resource name (ARN) of the index.

*/ inline GetIndexResult& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} /** *

The Amazon * resource name (ARN) of the index.

*/ inline GetIndexResult& WithArn(const char* value) { SetArn(value); return *this;} /** *

The date and time when the index was originally created.

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

The date and time when the index was originally created.

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

The date and time when the index was originally created.

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

The date and time when the index was originally created.

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

The date and time when the index was originally created.

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

The date and time when the index was last updated.

*/ inline const Aws::Utils::DateTime& GetLastUpdatedAt() const{ return m_lastUpdatedAt; } /** *

The date and time when the index was last updated.

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

The date and time when the index was last updated.

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

The date and time when the index was last updated.

*/ inline GetIndexResult& WithLastUpdatedAt(const Aws::Utils::DateTime& value) { SetLastUpdatedAt(value); return *this;} /** *

The date and time when the index was last updated.

*/ inline GetIndexResult& WithLastUpdatedAt(Aws::Utils::DateTime&& value) { SetLastUpdatedAt(std::move(value)); return *this;} /** *

This response value is present only if this index is * Type=AGGREGATOR.

A list of the Amazon Web Services Regions * that replicate their content to the index in this Region.

*/ inline const Aws::Vector& GetReplicatingFrom() const{ return m_replicatingFrom; } /** *

This response value is present only if this index is * Type=AGGREGATOR.

A list of the Amazon Web Services Regions * that replicate their content to the index in this Region.

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

This response value is present only if this index is * Type=AGGREGATOR.

A list of the Amazon Web Services Regions * that replicate their content to the index in this Region.

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

This response value is present only if this index is * Type=AGGREGATOR.

A list of the Amazon Web Services Regions * that replicate their content to the index in this Region.

*/ inline GetIndexResult& WithReplicatingFrom(const Aws::Vector& value) { SetReplicatingFrom(value); return *this;} /** *

This response value is present only if this index is * Type=AGGREGATOR.

A list of the Amazon Web Services Regions * that replicate their content to the index in this Region.

*/ inline GetIndexResult& WithReplicatingFrom(Aws::Vector&& value) { SetReplicatingFrom(std::move(value)); return *this;} /** *

This response value is present only if this index is * Type=AGGREGATOR.

A list of the Amazon Web Services Regions * that replicate their content to the index in this Region.

*/ inline GetIndexResult& AddReplicatingFrom(const Aws::String& value) { m_replicatingFrom.push_back(value); return *this; } /** *

This response value is present only if this index is * Type=AGGREGATOR.

A list of the Amazon Web Services Regions * that replicate their content to the index in this Region.

*/ inline GetIndexResult& AddReplicatingFrom(Aws::String&& value) { m_replicatingFrom.push_back(std::move(value)); return *this; } /** *

This response value is present only if this index is * Type=AGGREGATOR.

A list of the Amazon Web Services Regions * that replicate their content to the index in this Region.

*/ inline GetIndexResult& AddReplicatingFrom(const char* value) { m_replicatingFrom.push_back(value); return *this; } /** *

This response value is present only if this index is * Type=LOCAL.

The Amazon Web Services Region that contains the * aggregator index, if one exists. If an aggregator index does exist then the * Region in which you called this operation replicates its index information to * the Region specified in this response value.

*/ inline const Aws::Vector& GetReplicatingTo() const{ return m_replicatingTo; } /** *

This response value is present only if this index is * Type=LOCAL.

The Amazon Web Services Region that contains the * aggregator index, if one exists. If an aggregator index does exist then the * Region in which you called this operation replicates its index information to * the Region specified in this response value.

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

This response value is present only if this index is * Type=LOCAL.

The Amazon Web Services Region that contains the * aggregator index, if one exists. If an aggregator index does exist then the * Region in which you called this operation replicates its index information to * the Region specified in this response value.

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

This response value is present only if this index is * Type=LOCAL.

The Amazon Web Services Region that contains the * aggregator index, if one exists. If an aggregator index does exist then the * Region in which you called this operation replicates its index information to * the Region specified in this response value.

*/ inline GetIndexResult& WithReplicatingTo(const Aws::Vector& value) { SetReplicatingTo(value); return *this;} /** *

This response value is present only if this index is * Type=LOCAL.

The Amazon Web Services Region that contains the * aggregator index, if one exists. If an aggregator index does exist then the * Region in which you called this operation replicates its index information to * the Region specified in this response value.

*/ inline GetIndexResult& WithReplicatingTo(Aws::Vector&& value) { SetReplicatingTo(std::move(value)); return *this;} /** *

This response value is present only if this index is * Type=LOCAL.

The Amazon Web Services Region that contains the * aggregator index, if one exists. If an aggregator index does exist then the * Region in which you called this operation replicates its index information to * the Region specified in this response value.

*/ inline GetIndexResult& AddReplicatingTo(const Aws::String& value) { m_replicatingTo.push_back(value); return *this; } /** *

This response value is present only if this index is * Type=LOCAL.

The Amazon Web Services Region that contains the * aggregator index, if one exists. If an aggregator index does exist then the * Region in which you called this operation replicates its index information to * the Region specified in this response value.

*/ inline GetIndexResult& AddReplicatingTo(Aws::String&& value) { m_replicatingTo.push_back(std::move(value)); return *this; } /** *

This response value is present only if this index is * Type=LOCAL.

The Amazon Web Services Region that contains the * aggregator index, if one exists. If an aggregator index does exist then the * Region in which you called this operation replicates its index information to * the Region specified in this response value.

*/ inline GetIndexResult& AddReplicatingTo(const char* value) { m_replicatingTo.push_back(value); return *this; } /** *

The current state of the index in this Amazon Web Services Region.

*/ inline const IndexState& GetState() const{ return m_state; } /** *

The current state of the index in this Amazon Web Services Region.

*/ inline void SetState(const IndexState& value) { m_state = value; } /** *

The current state of the index in this Amazon Web Services Region.

*/ inline void SetState(IndexState&& value) { m_state = std::move(value); } /** *

The current state of the index in this Amazon Web Services Region.

*/ inline GetIndexResult& WithState(const IndexState& value) { SetState(value); return *this;} /** *

The current state of the index in this Amazon Web Services Region.

*/ inline GetIndexResult& WithState(IndexState&& value) { SetState(std::move(value)); return *this;} /** *

Tag key and value pairs that are attached to the index.

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

Tag key and value pairs that are attached to the index.

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

Tag key and value pairs that are attached to the index.

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

Tag key and value pairs that are attached to the index.

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

Tag key and value pairs that are attached to the index.

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

Tag key and value pairs that are attached to the index.

*/ inline GetIndexResult& AddTags(const Aws::String& key, const Aws::String& value) { m_tags.emplace(key, value); return *this; } /** *

Tag key and value pairs that are attached to the index.

*/ inline GetIndexResult& AddTags(Aws::String&& key, const Aws::String& value) { m_tags.emplace(std::move(key), value); return *this; } /** *

Tag key and value pairs that are attached to the index.

*/ inline GetIndexResult& AddTags(const Aws::String& key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } /** *

Tag key and value pairs that are attached to the index.

*/ inline GetIndexResult& AddTags(Aws::String&& key, Aws::String&& value) { m_tags.emplace(std::move(key), std::move(value)); return *this; } /** *

Tag key and value pairs that are attached to the index.

*/ inline GetIndexResult& AddTags(const char* key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } /** *

Tag key and value pairs that are attached to the index.

*/ inline GetIndexResult& AddTags(Aws::String&& key, const char* value) { m_tags.emplace(std::move(key), value); return *this; } /** *

Tag key and value pairs that are attached to the index.

*/ inline GetIndexResult& AddTags(const char* key, const char* value) { m_tags.emplace(key, value); return *this; } /** *

The type of the index in this Region. For information about the aggregator * index and how it differs from a local index, see Turning * on cross-Region search by creating an aggregator index.

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

The type of the index in this Region. For information about the aggregator * index and how it differs from a local index, see Turning * on cross-Region search by creating an aggregator index.

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

The type of the index in this Region. For information about the aggregator * index and how it differs from a local index, see Turning * on cross-Region search by creating an aggregator index.

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

The type of the index in this Region. For information about the aggregator * index and how it differs from a local index, see Turning * on cross-Region search by creating an aggregator index.

*/ inline GetIndexResult& WithType(const IndexType& value) { SetType(value); return *this;} /** *

The type of the index in this Region. For information about the aggregator * index and how it differs from a local index, see Turning * on cross-Region search by creating an aggregator index.

*/ inline GetIndexResult& WithType(IndexType&& value) { SetType(std::move(value)); return *this;} inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline GetIndexResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline GetIndexResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline GetIndexResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_arn; Aws::Utils::DateTime m_createdAt; Aws::Utils::DateTime m_lastUpdatedAt; Aws::Vector m_replicatingFrom; Aws::Vector m_replicatingTo; IndexState m_state; Aws::Map m_tags; IndexType m_type; Aws::String m_requestId; }; } // namespace Model } // namespace ResourceExplorer2 } // namespace Aws