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

Specifies details of an outbound connection.

See Also:

AWS * API Reference

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

Specifies the DomainInformation for the source * Elasticsearch domain.

*/ inline const DomainInformation& GetSourceDomainInfo() const{ return m_sourceDomainInfo; } /** *

Specifies the DomainInformation for the source * Elasticsearch domain.

*/ inline bool SourceDomainInfoHasBeenSet() const { return m_sourceDomainInfoHasBeenSet; } /** *

Specifies the DomainInformation for the source * Elasticsearch domain.

*/ inline void SetSourceDomainInfo(const DomainInformation& value) { m_sourceDomainInfoHasBeenSet = true; m_sourceDomainInfo = value; } /** *

Specifies the DomainInformation for the source * Elasticsearch domain.

*/ inline void SetSourceDomainInfo(DomainInformation&& value) { m_sourceDomainInfoHasBeenSet = true; m_sourceDomainInfo = std::move(value); } /** *

Specifies the DomainInformation for the source * Elasticsearch domain.

*/ inline OutboundCrossClusterSearchConnection& WithSourceDomainInfo(const DomainInformation& value) { SetSourceDomainInfo(value); return *this;} /** *

Specifies the DomainInformation for the source * Elasticsearch domain.

*/ inline OutboundCrossClusterSearchConnection& WithSourceDomainInfo(DomainInformation&& value) { SetSourceDomainInfo(std::move(value)); return *this;} /** *

Specifies the DomainInformation for the destination * Elasticsearch domain.

*/ inline const DomainInformation& GetDestinationDomainInfo() const{ return m_destinationDomainInfo; } /** *

Specifies the DomainInformation for the destination * Elasticsearch domain.

*/ inline bool DestinationDomainInfoHasBeenSet() const { return m_destinationDomainInfoHasBeenSet; } /** *

Specifies the DomainInformation for the destination * Elasticsearch domain.

*/ inline void SetDestinationDomainInfo(const DomainInformation& value) { m_destinationDomainInfoHasBeenSet = true; m_destinationDomainInfo = value; } /** *

Specifies the DomainInformation for the destination * Elasticsearch domain.

*/ inline void SetDestinationDomainInfo(DomainInformation&& value) { m_destinationDomainInfoHasBeenSet = true; m_destinationDomainInfo = std::move(value); } /** *

Specifies the DomainInformation for the destination * Elasticsearch domain.

*/ inline OutboundCrossClusterSearchConnection& WithDestinationDomainInfo(const DomainInformation& value) { SetDestinationDomainInfo(value); return *this;} /** *

Specifies the DomainInformation for the destination * Elasticsearch domain.

*/ inline OutboundCrossClusterSearchConnection& WithDestinationDomainInfo(DomainInformation&& value) { SetDestinationDomainInfo(std::move(value)); return *this;} /** *

Specifies the connection id for the outbound cross-cluster search * connection.

*/ inline const Aws::String& GetCrossClusterSearchConnectionId() const{ return m_crossClusterSearchConnectionId; } /** *

Specifies the connection id for the outbound cross-cluster search * connection.

*/ inline bool CrossClusterSearchConnectionIdHasBeenSet() const { return m_crossClusterSearchConnectionIdHasBeenSet; } /** *

Specifies the connection id for the outbound cross-cluster search * connection.

*/ inline void SetCrossClusterSearchConnectionId(const Aws::String& value) { m_crossClusterSearchConnectionIdHasBeenSet = true; m_crossClusterSearchConnectionId = value; } /** *

Specifies the connection id for the outbound cross-cluster search * connection.

*/ inline void SetCrossClusterSearchConnectionId(Aws::String&& value) { m_crossClusterSearchConnectionIdHasBeenSet = true; m_crossClusterSearchConnectionId = std::move(value); } /** *

Specifies the connection id for the outbound cross-cluster search * connection.

*/ inline void SetCrossClusterSearchConnectionId(const char* value) { m_crossClusterSearchConnectionIdHasBeenSet = true; m_crossClusterSearchConnectionId.assign(value); } /** *

Specifies the connection id for the outbound cross-cluster search * connection.

*/ inline OutboundCrossClusterSearchConnection& WithCrossClusterSearchConnectionId(const Aws::String& value) { SetCrossClusterSearchConnectionId(value); return *this;} /** *

Specifies the connection id for the outbound cross-cluster search * connection.

*/ inline OutboundCrossClusterSearchConnection& WithCrossClusterSearchConnectionId(Aws::String&& value) { SetCrossClusterSearchConnectionId(std::move(value)); return *this;} /** *

Specifies the connection id for the outbound cross-cluster search * connection.

*/ inline OutboundCrossClusterSearchConnection& WithCrossClusterSearchConnectionId(const char* value) { SetCrossClusterSearchConnectionId(value); return *this;} /** *

Specifies the connection alias for the outbound cross-cluster search * connection.

*/ inline const Aws::String& GetConnectionAlias() const{ return m_connectionAlias; } /** *

Specifies the connection alias for the outbound cross-cluster search * connection.

*/ inline bool ConnectionAliasHasBeenSet() const { return m_connectionAliasHasBeenSet; } /** *

Specifies the connection alias for the outbound cross-cluster search * connection.

*/ inline void SetConnectionAlias(const Aws::String& value) { m_connectionAliasHasBeenSet = true; m_connectionAlias = value; } /** *

Specifies the connection alias for the outbound cross-cluster search * connection.

*/ inline void SetConnectionAlias(Aws::String&& value) { m_connectionAliasHasBeenSet = true; m_connectionAlias = std::move(value); } /** *

Specifies the connection alias for the outbound cross-cluster search * connection.

*/ inline void SetConnectionAlias(const char* value) { m_connectionAliasHasBeenSet = true; m_connectionAlias.assign(value); } /** *

Specifies the connection alias for the outbound cross-cluster search * connection.

*/ inline OutboundCrossClusterSearchConnection& WithConnectionAlias(const Aws::String& value) { SetConnectionAlias(value); return *this;} /** *

Specifies the connection alias for the outbound cross-cluster search * connection.

*/ inline OutboundCrossClusterSearchConnection& WithConnectionAlias(Aws::String&& value) { SetConnectionAlias(std::move(value)); return *this;} /** *

Specifies the connection alias for the outbound cross-cluster search * connection.

*/ inline OutboundCrossClusterSearchConnection& WithConnectionAlias(const char* value) { SetConnectionAlias(value); return *this;} /** *

Specifies the OutboundCrossClusterSearchConnectionStatus * for the outbound connection.

*/ inline const OutboundCrossClusterSearchConnectionStatus& GetConnectionStatus() const{ return m_connectionStatus; } /** *

Specifies the OutboundCrossClusterSearchConnectionStatus * for the outbound connection.

*/ inline bool ConnectionStatusHasBeenSet() const { return m_connectionStatusHasBeenSet; } /** *

Specifies the OutboundCrossClusterSearchConnectionStatus * for the outbound connection.

*/ inline void SetConnectionStatus(const OutboundCrossClusterSearchConnectionStatus& value) { m_connectionStatusHasBeenSet = true; m_connectionStatus = value; } /** *

Specifies the OutboundCrossClusterSearchConnectionStatus * for the outbound connection.

*/ inline void SetConnectionStatus(OutboundCrossClusterSearchConnectionStatus&& value) { m_connectionStatusHasBeenSet = true; m_connectionStatus = std::move(value); } /** *

Specifies the OutboundCrossClusterSearchConnectionStatus * for the outbound connection.

*/ inline OutboundCrossClusterSearchConnection& WithConnectionStatus(const OutboundCrossClusterSearchConnectionStatus& value) { SetConnectionStatus(value); return *this;} /** *

Specifies the OutboundCrossClusterSearchConnectionStatus * for the outbound connection.

*/ inline OutboundCrossClusterSearchConnection& WithConnectionStatus(OutboundCrossClusterSearchConnectionStatus&& value) { SetConnectionStatus(std::move(value)); return *this;} private: DomainInformation m_sourceDomainInfo; bool m_sourceDomainInfoHasBeenSet = false; DomainInformation m_destinationDomainInfo; bool m_destinationDomainInfoHasBeenSet = false; Aws::String m_crossClusterSearchConnectionId; bool m_crossClusterSearchConnectionIdHasBeenSet = false; Aws::String m_connectionAlias; bool m_connectionAliasHasBeenSet = false; OutboundCrossClusterSearchConnectionStatus m_connectionStatus; bool m_connectionStatusHasBeenSet = false; }; } // namespace Model } // namespace ElasticsearchService } // namespace Aws