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

Describes a connection alias. Connection aliases are used for cross-Region * redirection. For more information, see * Cross-Region Redirection for Amazon WorkSpaces.

See Also:

* AWS * API Reference

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

The connection string specified for the connection alias. The connection * string must be in the form of a fully qualified domain name (FQDN), such as * www.example.com.

*/ inline const Aws::String& GetConnectionString() const{ return m_connectionString; } /** *

The connection string specified for the connection alias. The connection * string must be in the form of a fully qualified domain name (FQDN), such as * www.example.com.

*/ inline bool ConnectionStringHasBeenSet() const { return m_connectionStringHasBeenSet; } /** *

The connection string specified for the connection alias. The connection * string must be in the form of a fully qualified domain name (FQDN), such as * www.example.com.

*/ inline void SetConnectionString(const Aws::String& value) { m_connectionStringHasBeenSet = true; m_connectionString = value; } /** *

The connection string specified for the connection alias. The connection * string must be in the form of a fully qualified domain name (FQDN), such as * www.example.com.

*/ inline void SetConnectionString(Aws::String&& value) { m_connectionStringHasBeenSet = true; m_connectionString = std::move(value); } /** *

The connection string specified for the connection alias. The connection * string must be in the form of a fully qualified domain name (FQDN), such as * www.example.com.

*/ inline void SetConnectionString(const char* value) { m_connectionStringHasBeenSet = true; m_connectionString.assign(value); } /** *

The connection string specified for the connection alias. The connection * string must be in the form of a fully qualified domain name (FQDN), such as * www.example.com.

*/ inline ConnectionAlias& WithConnectionString(const Aws::String& value) { SetConnectionString(value); return *this;} /** *

The connection string specified for the connection alias. The connection * string must be in the form of a fully qualified domain name (FQDN), such as * www.example.com.

*/ inline ConnectionAlias& WithConnectionString(Aws::String&& value) { SetConnectionString(std::move(value)); return *this;} /** *

The connection string specified for the connection alias. The connection * string must be in the form of a fully qualified domain name (FQDN), such as * www.example.com.

*/ inline ConnectionAlias& WithConnectionString(const char* value) { SetConnectionString(value); return *this;} /** *

The identifier of the connection alias.

*/ inline const Aws::String& GetAliasId() const{ return m_aliasId; } /** *

The identifier of the connection alias.

*/ inline bool AliasIdHasBeenSet() const { return m_aliasIdHasBeenSet; } /** *

The identifier of the connection alias.

*/ inline void SetAliasId(const Aws::String& value) { m_aliasIdHasBeenSet = true; m_aliasId = value; } /** *

The identifier of the connection alias.

*/ inline void SetAliasId(Aws::String&& value) { m_aliasIdHasBeenSet = true; m_aliasId = std::move(value); } /** *

The identifier of the connection alias.

*/ inline void SetAliasId(const char* value) { m_aliasIdHasBeenSet = true; m_aliasId.assign(value); } /** *

The identifier of the connection alias.

*/ inline ConnectionAlias& WithAliasId(const Aws::String& value) { SetAliasId(value); return *this;} /** *

The identifier of the connection alias.

*/ inline ConnectionAlias& WithAliasId(Aws::String&& value) { SetAliasId(std::move(value)); return *this;} /** *

The identifier of the connection alias.

*/ inline ConnectionAlias& WithAliasId(const char* value) { SetAliasId(value); return *this;} /** *

The current state of the connection alias.

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

The current state of the connection alias.

*/ inline bool StateHasBeenSet() const { return m_stateHasBeenSet; } /** *

The current state of the connection alias.

*/ inline void SetState(const ConnectionAliasState& value) { m_stateHasBeenSet = true; m_state = value; } /** *

The current state of the connection alias.

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

The current state of the connection alias.

*/ inline ConnectionAlias& WithState(const ConnectionAliasState& value) { SetState(value); return *this;} /** *

The current state of the connection alias.

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

The identifier of the Amazon Web Services account that owns the connection * alias.

*/ inline const Aws::String& GetOwnerAccountId() const{ return m_ownerAccountId; } /** *

The identifier of the Amazon Web Services account that owns the connection * alias.

*/ inline bool OwnerAccountIdHasBeenSet() const { return m_ownerAccountIdHasBeenSet; } /** *

The identifier of the Amazon Web Services account that owns the connection * alias.

*/ inline void SetOwnerAccountId(const Aws::String& value) { m_ownerAccountIdHasBeenSet = true; m_ownerAccountId = value; } /** *

The identifier of the Amazon Web Services account that owns the connection * alias.

*/ inline void SetOwnerAccountId(Aws::String&& value) { m_ownerAccountIdHasBeenSet = true; m_ownerAccountId = std::move(value); } /** *

The identifier of the Amazon Web Services account that owns the connection * alias.

*/ inline void SetOwnerAccountId(const char* value) { m_ownerAccountIdHasBeenSet = true; m_ownerAccountId.assign(value); } /** *

The identifier of the Amazon Web Services account that owns the connection * alias.

*/ inline ConnectionAlias& WithOwnerAccountId(const Aws::String& value) { SetOwnerAccountId(value); return *this;} /** *

The identifier of the Amazon Web Services account that owns the connection * alias.

*/ inline ConnectionAlias& WithOwnerAccountId(Aws::String&& value) { SetOwnerAccountId(std::move(value)); return *this;} /** *

The identifier of the Amazon Web Services account that owns the connection * alias.

*/ inline ConnectionAlias& WithOwnerAccountId(const char* value) { SetOwnerAccountId(value); return *this;} /** *

The association status of the connection alias.

*/ inline const Aws::Vector& GetAssociations() const{ return m_associations; } /** *

The association status of the connection alias.

*/ inline bool AssociationsHasBeenSet() const { return m_associationsHasBeenSet; } /** *

The association status of the connection alias.

*/ inline void SetAssociations(const Aws::Vector& value) { m_associationsHasBeenSet = true; m_associations = value; } /** *

The association status of the connection alias.

*/ inline void SetAssociations(Aws::Vector&& value) { m_associationsHasBeenSet = true; m_associations = std::move(value); } /** *

The association status of the connection alias.

*/ inline ConnectionAlias& WithAssociations(const Aws::Vector& value) { SetAssociations(value); return *this;} /** *

The association status of the connection alias.

*/ inline ConnectionAlias& WithAssociations(Aws::Vector&& value) { SetAssociations(std::move(value)); return *this;} /** *

The association status of the connection alias.

*/ inline ConnectionAlias& AddAssociations(const ConnectionAliasAssociation& value) { m_associationsHasBeenSet = true; m_associations.push_back(value); return *this; } /** *

The association status of the connection alias.

*/ inline ConnectionAlias& AddAssociations(ConnectionAliasAssociation&& value) { m_associationsHasBeenSet = true; m_associations.push_back(std::move(value)); return *this; } private: Aws::String m_connectionString; bool m_connectionStringHasBeenSet = false; Aws::String m_aliasId; bool m_aliasIdHasBeenSet = false; ConnectionAliasState m_state; bool m_stateHasBeenSet = false; Aws::String m_ownerAccountId; bool m_ownerAccountIdHasBeenSet = false; Aws::Vector m_associations; bool m_associationsHasBeenSet = false; }; } // namespace Model } // namespace WorkSpaces } // namespace Aws