7#include <aws/redshift-serverless/RedshiftServerless_EXPORTS.h>
8#include <aws/redshift-serverless/model/UsageLimitBreachAction.h>
9#include <aws/redshift-serverless/model/UsageLimitPeriod.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/redshift-serverless/model/UsageLimitUsageType.h>
24namespace RedshiftServerless
49 inline long long GetAmount()
const {
return m_amount; }
51 inline void SetAmount(
long long value) { m_amountHasBeenSet =
true; m_amount = value; }
84 template<
typename ResourceArnT = Aws::String>
85 void SetResourceArn(ResourceArnT&& value) { m_resourceArnHasBeenSet =
true; m_resourceArn = std::forward<ResourceArnT>(value); }
86 template<
typename ResourceArnT = Aws::String>
97 template<
typename UsageLimitArnT = Aws::String>
98 void SetUsageLimitArn(UsageLimitArnT&& value) { m_usageLimitArnHasBeenSet =
true; m_usageLimitArn = std::forward<UsageLimitArnT>(value); }
99 template<
typename UsageLimitArnT = Aws::String>
109 template<
typename UsageLimitIdT = Aws::String>
110 void SetUsageLimitId(UsageLimitIdT&& value) { m_usageLimitIdHasBeenSet =
true; m_usageLimitId = std::forward<UsageLimitIdT>(value); }
111 template<
typename UsageLimitIdT = Aws::String>
126 long long m_amount{0};
127 bool m_amountHasBeenSet =
false;
130 bool m_breachActionHasBeenSet =
false;
133 bool m_periodHasBeenSet =
false;
136 bool m_resourceArnHasBeenSet =
false;
139 bool m_usageLimitArnHasBeenSet =
false;
142 bool m_usageLimitIdHasBeenSet =
false;
145 bool m_usageTypeHasBeenSet =
false;
UsageLimit & WithUsageLimitArn(UsageLimitArnT &&value)
long long GetAmount() const
UsageLimit & WithUsageLimitId(UsageLimitIdT &&value)
const Aws::String & GetResourceArn() const
const Aws::String & GetUsageLimitArn() const
void SetUsageType(UsageLimitUsageType value)
void SetAmount(long long value)
bool UsageLimitArnHasBeenSet() const
UsageLimit & WithPeriod(UsageLimitPeriod value)
const Aws::String & GetUsageLimitId() const
void SetUsageLimitArn(UsageLimitArnT &&value)
bool PeriodHasBeenSet() const
bool UsageLimitIdHasBeenSet() const
void SetResourceArn(ResourceArnT &&value)
UsageLimitPeriod GetPeriod() const
UsageLimit & WithUsageType(UsageLimitUsageType value)
bool BreachActionHasBeenSet() const
void SetBreachAction(UsageLimitBreachAction value)
bool AmountHasBeenSet() const
void SetPeriod(UsageLimitPeriod value)
UsageLimitUsageType GetUsageType() const
AWS_REDSHIFTSERVERLESS_API UsageLimit()=default
UsageLimit & WithAmount(long long value)
bool ResourceArnHasBeenSet() const
UsageLimit & WithResourceArn(ResourceArnT &&value)
UsageLimitBreachAction GetBreachAction() const
UsageLimit & WithBreachAction(UsageLimitBreachAction value)
void SetUsageLimitId(UsageLimitIdT &&value)
AWS_REDSHIFTSERVERLESS_API UsageLimit & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_REDSHIFTSERVERLESS_API UsageLimit(Aws::Utils::Json::JsonView jsonValue)
bool UsageTypeHasBeenSet() const
AWS_REDSHIFTSERVERLESS_API Aws::Utils::Json::JsonValue Jsonize() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue