AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
ModifyUsageLimitRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/redshift/RedshiftRequest.h>
9#include <aws/redshift/Redshift_EXPORTS.h>
10#include <aws/redshift/model/UsageLimitBreachAction.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Redshift {
16namespace Model {
17
21 public:
22 AWS_REDSHIFT_API ModifyUsageLimitRequest() = default;
23
24 // Service request name is the Operation name which will send this request out,
25 // each operation should has unique request name, so that we can get operation's name from this request.
26 // Note: this is not true for response, multiple operations may have the same response name,
27 // so we can not get operation's name from response.
28 inline virtual const char* GetServiceRequestName() const override { return "ModifyUsageLimit"; }
29
30 AWS_REDSHIFT_API Aws::String SerializePayload() const override;
31
32 protected:
33 AWS_REDSHIFT_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
34
35 public:
37
40 inline const Aws::String& GetUsageLimitId() const { return m_usageLimitId; }
41 inline bool UsageLimitIdHasBeenSet() const { return m_usageLimitIdHasBeenSet; }
42 template <typename UsageLimitIdT = Aws::String>
43 void SetUsageLimitId(UsageLimitIdT&& value) {
44 m_usageLimitIdHasBeenSet = true;
45 m_usageLimitId = std::forward<UsageLimitIdT>(value);
46 }
47 template <typename UsageLimitIdT = Aws::String>
48 ModifyUsageLimitRequest& WithUsageLimitId(UsageLimitIdT&& value) {
49 SetUsageLimitId(std::forward<UsageLimitIdT>(value));
50 return *this;
51 }
53
55
59 inline long long GetAmount() const { return m_amount; }
60 inline bool AmountHasBeenSet() const { return m_amountHasBeenSet; }
61 inline void SetAmount(long long value) {
62 m_amountHasBeenSet = true;
63 m_amount = value;
64 }
65 inline ModifyUsageLimitRequest& WithAmount(long long value) {
66 SetAmount(value);
67 return *this;
68 }
70
72
76 inline UsageLimitBreachAction GetBreachAction() const { return m_breachAction; }
77 inline bool BreachActionHasBeenSet() const { return m_breachActionHasBeenSet; }
79 m_breachActionHasBeenSet = true;
80 m_breachAction = value;
81 }
83 SetBreachAction(value);
84 return *this;
85 }
87 private:
88 Aws::String m_usageLimitId;
89
90 long long m_amount{0};
91
93 bool m_usageLimitIdHasBeenSet = false;
94 bool m_amountHasBeenSet = false;
95 bool m_breachActionHasBeenSet = false;
96};
97
98} // namespace Model
99} // namespace Redshift
100} // namespace Aws
AWS_REDSHIFT_API ModifyUsageLimitRequest()=default
AWS_REDSHIFT_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
ModifyUsageLimitRequest & WithAmount(long long value)
AWS_REDSHIFT_API Aws::String SerializePayload() const override
ModifyUsageLimitRequest & WithUsageLimitId(UsageLimitIdT &&value)
virtual const char * GetServiceRequestName() const override
ModifyUsageLimitRequest & WithBreachAction(UsageLimitBreachAction value)
void SetBreachAction(UsageLimitBreachAction value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String