/** * 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 modification to the configuration of Bring Your Own License * (BYOL) for the specified account.

See Also:

AWS * API Reference

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

The state of the modification to the configuration of BYOL.

*/ inline const DedicatedTenancyModificationStateEnum& GetModificationState() const{ return m_modificationState; } /** *

The state of the modification to the configuration of BYOL.

*/ inline bool ModificationStateHasBeenSet() const { return m_modificationStateHasBeenSet; } /** *

The state of the modification to the configuration of BYOL.

*/ inline void SetModificationState(const DedicatedTenancyModificationStateEnum& value) { m_modificationStateHasBeenSet = true; m_modificationState = value; } /** *

The state of the modification to the configuration of BYOL.

*/ inline void SetModificationState(DedicatedTenancyModificationStateEnum&& value) { m_modificationStateHasBeenSet = true; m_modificationState = std::move(value); } /** *

The state of the modification to the configuration of BYOL.

*/ inline AccountModification& WithModificationState(const DedicatedTenancyModificationStateEnum& value) { SetModificationState(value); return *this;} /** *

The state of the modification to the configuration of BYOL.

*/ inline AccountModification& WithModificationState(DedicatedTenancyModificationStateEnum&& value) { SetModificationState(std::move(value)); return *this;} /** *

The status of BYOL (whether BYOL is being enabled or disabled).

*/ inline const DedicatedTenancySupportResultEnum& GetDedicatedTenancySupport() const{ return m_dedicatedTenancySupport; } /** *

The status of BYOL (whether BYOL is being enabled or disabled).

*/ inline bool DedicatedTenancySupportHasBeenSet() const { return m_dedicatedTenancySupportHasBeenSet; } /** *

The status of BYOL (whether BYOL is being enabled or disabled).

*/ inline void SetDedicatedTenancySupport(const DedicatedTenancySupportResultEnum& value) { m_dedicatedTenancySupportHasBeenSet = true; m_dedicatedTenancySupport = value; } /** *

The status of BYOL (whether BYOL is being enabled or disabled).

*/ inline void SetDedicatedTenancySupport(DedicatedTenancySupportResultEnum&& value) { m_dedicatedTenancySupportHasBeenSet = true; m_dedicatedTenancySupport = std::move(value); } /** *

The status of BYOL (whether BYOL is being enabled or disabled).

*/ inline AccountModification& WithDedicatedTenancySupport(const DedicatedTenancySupportResultEnum& value) { SetDedicatedTenancySupport(value); return *this;} /** *

The status of BYOL (whether BYOL is being enabled or disabled).

*/ inline AccountModification& WithDedicatedTenancySupport(DedicatedTenancySupportResultEnum&& value) { SetDedicatedTenancySupport(std::move(value)); return *this;} /** *

The IP address range, specified as an IPv4 CIDR block, for the management * network interface used for the account.

*/ inline const Aws::String& GetDedicatedTenancyManagementCidrRange() const{ return m_dedicatedTenancyManagementCidrRange; } /** *

The IP address range, specified as an IPv4 CIDR block, for the management * network interface used for the account.

*/ inline bool DedicatedTenancyManagementCidrRangeHasBeenSet() const { return m_dedicatedTenancyManagementCidrRangeHasBeenSet; } /** *

The IP address range, specified as an IPv4 CIDR block, for the management * network interface used for the account.

*/ inline void SetDedicatedTenancyManagementCidrRange(const Aws::String& value) { m_dedicatedTenancyManagementCidrRangeHasBeenSet = true; m_dedicatedTenancyManagementCidrRange = value; } /** *

The IP address range, specified as an IPv4 CIDR block, for the management * network interface used for the account.

*/ inline void SetDedicatedTenancyManagementCidrRange(Aws::String&& value) { m_dedicatedTenancyManagementCidrRangeHasBeenSet = true; m_dedicatedTenancyManagementCidrRange = std::move(value); } /** *

The IP address range, specified as an IPv4 CIDR block, for the management * network interface used for the account.

*/ inline void SetDedicatedTenancyManagementCidrRange(const char* value) { m_dedicatedTenancyManagementCidrRangeHasBeenSet = true; m_dedicatedTenancyManagementCidrRange.assign(value); } /** *

The IP address range, specified as an IPv4 CIDR block, for the management * network interface used for the account.

*/ inline AccountModification& WithDedicatedTenancyManagementCidrRange(const Aws::String& value) { SetDedicatedTenancyManagementCidrRange(value); return *this;} /** *

The IP address range, specified as an IPv4 CIDR block, for the management * network interface used for the account.

*/ inline AccountModification& WithDedicatedTenancyManagementCidrRange(Aws::String&& value) { SetDedicatedTenancyManagementCidrRange(std::move(value)); return *this;} /** *

The IP address range, specified as an IPv4 CIDR block, for the management * network interface used for the account.

*/ inline AccountModification& WithDedicatedTenancyManagementCidrRange(const char* value) { SetDedicatedTenancyManagementCidrRange(value); return *this;} /** *

The timestamp when the modification of the BYOL configuration was * started.

*/ inline const Aws::Utils::DateTime& GetStartTime() const{ return m_startTime; } /** *

The timestamp when the modification of the BYOL configuration was * started.

*/ inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; } /** *

The timestamp when the modification of the BYOL configuration was * started.

*/ inline void SetStartTime(const Aws::Utils::DateTime& value) { m_startTimeHasBeenSet = true; m_startTime = value; } /** *

The timestamp when the modification of the BYOL configuration was * started.

*/ inline void SetStartTime(Aws::Utils::DateTime&& value) { m_startTimeHasBeenSet = true; m_startTime = std::move(value); } /** *

The timestamp when the modification of the BYOL configuration was * started.

*/ inline AccountModification& WithStartTime(const Aws::Utils::DateTime& value) { SetStartTime(value); return *this;} /** *

The timestamp when the modification of the BYOL configuration was * started.

*/ inline AccountModification& WithStartTime(Aws::Utils::DateTime&& value) { SetStartTime(std::move(value)); return *this;} /** *

The error code that is returned if the configuration of BYOL cannot be * modified.

*/ inline const Aws::String& GetErrorCode() const{ return m_errorCode; } /** *

The error code that is returned if the configuration of BYOL cannot be * modified.

*/ inline bool ErrorCodeHasBeenSet() const { return m_errorCodeHasBeenSet; } /** *

The error code that is returned if the configuration of BYOL cannot be * modified.

*/ inline void SetErrorCode(const Aws::String& value) { m_errorCodeHasBeenSet = true; m_errorCode = value; } /** *

The error code that is returned if the configuration of BYOL cannot be * modified.

*/ inline void SetErrorCode(Aws::String&& value) { m_errorCodeHasBeenSet = true; m_errorCode = std::move(value); } /** *

The error code that is returned if the configuration of BYOL cannot be * modified.

*/ inline void SetErrorCode(const char* value) { m_errorCodeHasBeenSet = true; m_errorCode.assign(value); } /** *

The error code that is returned if the configuration of BYOL cannot be * modified.

*/ inline AccountModification& WithErrorCode(const Aws::String& value) { SetErrorCode(value); return *this;} /** *

The error code that is returned if the configuration of BYOL cannot be * modified.

*/ inline AccountModification& WithErrorCode(Aws::String&& value) { SetErrorCode(std::move(value)); return *this;} /** *

The error code that is returned if the configuration of BYOL cannot be * modified.

*/ inline AccountModification& WithErrorCode(const char* value) { SetErrorCode(value); return *this;} /** *

The text of the error message that is returned if the configuration of BYOL * cannot be modified.

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

The text of the error message that is returned if the configuration of BYOL * cannot be modified.

*/ inline bool ErrorMessageHasBeenSet() const { return m_errorMessageHasBeenSet; } /** *

The text of the error message that is returned if the configuration of BYOL * cannot be modified.

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

The text of the error message that is returned if the configuration of BYOL * cannot be modified.

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

The text of the error message that is returned if the configuration of BYOL * cannot be modified.

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

The text of the error message that is returned if the configuration of BYOL * cannot be modified.

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

The text of the error message that is returned if the configuration of BYOL * cannot be modified.

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

The text of the error message that is returned if the configuration of BYOL * cannot be modified.

*/ inline AccountModification& WithErrorMessage(const char* value) { SetErrorMessage(value); return *this;} private: DedicatedTenancyModificationStateEnum m_modificationState; bool m_modificationStateHasBeenSet = false; DedicatedTenancySupportResultEnum m_dedicatedTenancySupport; bool m_dedicatedTenancySupportHasBeenSet = false; Aws::String m_dedicatedTenancyManagementCidrRange; bool m_dedicatedTenancyManagementCidrRangeHasBeenSet = false; Aws::Utils::DateTime m_startTime; bool m_startTimeHasBeenSet = false; Aws::String m_errorCode; bool m_errorCodeHasBeenSet = false; Aws::String m_errorMessage; bool m_errorMessageHasBeenSet = false; }; } // namespace Model } // namespace WorkSpaces } // namespace Aws