/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #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 association that is used for cross-Region * redirection. For more information, see * Cross-Region Redirection for Amazon WorkSpaces.

See Also:

* AWS * API Reference

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

The association status of the connection alias.

*/ inline const AssociationStatus& GetAssociationStatus() const{ return m_associationStatus; } /** *

The association status of the connection alias.

*/ inline bool AssociationStatusHasBeenSet() const { return m_associationStatusHasBeenSet; } /** *

The association status of the connection alias.

*/ inline void SetAssociationStatus(const AssociationStatus& value) { m_associationStatusHasBeenSet = true; m_associationStatus = value; } /** *

The association status of the connection alias.

*/ inline void SetAssociationStatus(AssociationStatus&& value) { m_associationStatusHasBeenSet = true; m_associationStatus = std::move(value); } /** *

The association status of the connection alias.

*/ inline ConnectionAliasAssociation& WithAssociationStatus(const AssociationStatus& value) { SetAssociationStatus(value); return *this;} /** *

The association status of the connection alias.

*/ inline ConnectionAliasAssociation& WithAssociationStatus(AssociationStatus&& value) { SetAssociationStatus(std::move(value)); return *this;} /** *

The identifier of the Amazon Web Services account that associated the * connection alias with a directory.

*/ inline const Aws::String& GetAssociatedAccountId() const{ return m_associatedAccountId; } /** *

The identifier of the Amazon Web Services account that associated the * connection alias with a directory.

*/ inline bool AssociatedAccountIdHasBeenSet() const { return m_associatedAccountIdHasBeenSet; } /** *

The identifier of the Amazon Web Services account that associated the * connection alias with a directory.

*/ inline void SetAssociatedAccountId(const Aws::String& value) { m_associatedAccountIdHasBeenSet = true; m_associatedAccountId = value; } /** *

The identifier of the Amazon Web Services account that associated the * connection alias with a directory.

*/ inline void SetAssociatedAccountId(Aws::String&& value) { m_associatedAccountIdHasBeenSet = true; m_associatedAccountId = std::move(value); } /** *

The identifier of the Amazon Web Services account that associated the * connection alias with a directory.

*/ inline void SetAssociatedAccountId(const char* value) { m_associatedAccountIdHasBeenSet = true; m_associatedAccountId.assign(value); } /** *

The identifier of the Amazon Web Services account that associated the * connection alias with a directory.

*/ inline ConnectionAliasAssociation& WithAssociatedAccountId(const Aws::String& value) { SetAssociatedAccountId(value); return *this;} /** *

The identifier of the Amazon Web Services account that associated the * connection alias with a directory.

*/ inline ConnectionAliasAssociation& WithAssociatedAccountId(Aws::String&& value) { SetAssociatedAccountId(std::move(value)); return *this;} /** *

The identifier of the Amazon Web Services account that associated the * connection alias with a directory.

*/ inline ConnectionAliasAssociation& WithAssociatedAccountId(const char* value) { SetAssociatedAccountId(value); return *this;} /** *

The identifier of the directory associated with a connection alias.

*/ inline const Aws::String& GetResourceId() const{ return m_resourceId; } /** *

The identifier of the directory associated with a connection alias.

*/ inline bool ResourceIdHasBeenSet() const { return m_resourceIdHasBeenSet; } /** *

The identifier of the directory associated with a connection alias.

*/ inline void SetResourceId(const Aws::String& value) { m_resourceIdHasBeenSet = true; m_resourceId = value; } /** *

The identifier of the directory associated with a connection alias.

*/ inline void SetResourceId(Aws::String&& value) { m_resourceIdHasBeenSet = true; m_resourceId = std::move(value); } /** *

The identifier of the directory associated with a connection alias.

*/ inline void SetResourceId(const char* value) { m_resourceIdHasBeenSet = true; m_resourceId.assign(value); } /** *

The identifier of the directory associated with a connection alias.

*/ inline ConnectionAliasAssociation& WithResourceId(const Aws::String& value) { SetResourceId(value); return *this;} /** *

The identifier of the directory associated with a connection alias.

*/ inline ConnectionAliasAssociation& WithResourceId(Aws::String&& value) { SetResourceId(std::move(value)); return *this;} /** *

The identifier of the directory associated with a connection alias.

*/ inline ConnectionAliasAssociation& WithResourceId(const char* value) { SetResourceId(value); return *this;} /** *

The identifier of the connection alias association. You use the connection * identifier in the DNS TXT record when you're configuring your DNS routing * policies.

*/ inline const Aws::String& GetConnectionIdentifier() const{ return m_connectionIdentifier; } /** *

The identifier of the connection alias association. You use the connection * identifier in the DNS TXT record when you're configuring your DNS routing * policies.

*/ inline bool ConnectionIdentifierHasBeenSet() const { return m_connectionIdentifierHasBeenSet; } /** *

The identifier of the connection alias association. You use the connection * identifier in the DNS TXT record when you're configuring your DNS routing * policies.

*/ inline void SetConnectionIdentifier(const Aws::String& value) { m_connectionIdentifierHasBeenSet = true; m_connectionIdentifier = value; } /** *

The identifier of the connection alias association. You use the connection * identifier in the DNS TXT record when you're configuring your DNS routing * policies.

*/ inline void SetConnectionIdentifier(Aws::String&& value) { m_connectionIdentifierHasBeenSet = true; m_connectionIdentifier = std::move(value); } /** *

The identifier of the connection alias association. You use the connection * identifier in the DNS TXT record when you're configuring your DNS routing * policies.

*/ inline void SetConnectionIdentifier(const char* value) { m_connectionIdentifierHasBeenSet = true; m_connectionIdentifier.assign(value); } /** *

The identifier of the connection alias association. You use the connection * identifier in the DNS TXT record when you're configuring your DNS routing * policies.

*/ inline ConnectionAliasAssociation& WithConnectionIdentifier(const Aws::String& value) { SetConnectionIdentifier(value); return *this;} /** *

The identifier of the connection alias association. You use the connection * identifier in the DNS TXT record when you're configuring your DNS routing * policies.

*/ inline ConnectionAliasAssociation& WithConnectionIdentifier(Aws::String&& value) { SetConnectionIdentifier(std::move(value)); return *this;} /** *

The identifier of the connection alias association. You use the connection * identifier in the DNS TXT record when you're configuring your DNS routing * policies.

*/ inline ConnectionAliasAssociation& WithConnectionIdentifier(const char* value) { SetConnectionIdentifier(value); return *this;} private: AssociationStatus m_associationStatus; bool m_associationStatusHasBeenSet = false; Aws::String m_associatedAccountId; bool m_associatedAccountIdHasBeenSet = false; Aws::String m_resourceId; bool m_resourceIdHasBeenSet = false; Aws::String m_connectionIdentifier; bool m_connectionIdentifierHasBeenSet = false; }; } // namespace Model } // namespace WorkSpaces } // namespace Aws