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

The current resource quotas associated with an Amazon Web Services * account.

See Also:

AWS * API Reference

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

The name of the attribute to apply the account limit to.

*/ inline const AccountLimitName& GetName() const{ return m_name; } /** *

The name of the attribute to apply the account limit to.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

The name of the attribute to apply the account limit to.

*/ inline void SetName(const AccountLimitName& value) { m_nameHasBeenSet = true; m_name = value; } /** *

The name of the attribute to apply the account limit to.

*/ inline void SetName(AccountLimitName&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

The name of the attribute to apply the account limit to.

*/ inline AccountLimit& WithName(const AccountLimitName& value) { SetName(value); return *this;} /** *

The name of the attribute to apply the account limit to.

*/ inline AccountLimit& WithName(AccountLimitName&& value) { SetName(std::move(value)); return *this;} /** *

The current amount that has been spent, in US dollars.

*/ inline long long GetUsed() const{ return m_used; } /** *

The current amount that has been spent, in US dollars.

*/ inline bool UsedHasBeenSet() const { return m_usedHasBeenSet; } /** *

The current amount that has been spent, in US dollars.

*/ inline void SetUsed(long long value) { m_usedHasBeenSet = true; m_used = value; } /** *

The current amount that has been spent, in US dollars.

*/ inline AccountLimit& WithUsed(long long value) { SetUsed(value); return *this;} /** *

The Amazon Web Services set limit for that resource type, in US dollars.

*/ inline long long GetMax() const{ return m_max; } /** *

The Amazon Web Services set limit for that resource type, in US dollars.

*/ inline bool MaxHasBeenSet() const { return m_maxHasBeenSet; } /** *

The Amazon Web Services set limit for that resource type, in US dollars.

*/ inline void SetMax(long long value) { m_maxHasBeenSet = true; m_max = value; } /** *

The Amazon Web Services set limit for that resource type, in US dollars.

*/ inline AccountLimit& WithMax(long long value) { SetMax(value); return *this;} private: AccountLimitName m_name; bool m_nameHasBeenSet = false; long long m_used; bool m_usedHasBeenSet = false; long long m_max; bool m_maxHasBeenSet = false; }; } // namespace Model } // namespace PinpointSMSVoiceV2 } // namespace Aws