AWS SDK for C++  1.9.107
AWS SDK for C++
ModifyUsageLimitRequest.h
Go to the documentation of this file.
1 
6 #pragma once
11 #include <utility>
12 
13 namespace Aws
14 {
15 namespace Redshift
16 {
17 namespace Model
18 {
19 
23  {
24  public:
26 
27  // Service request name is the Operation name which will send this request out,
28  // each operation should has unique request name, so that we can get operation's name from this request.
29  // Note: this is not true for response, multiple operations may have the same response name,
30  // so we can not get operation's name from response.
31  inline virtual const char* GetServiceRequestName() const override { return "ModifyUsageLimit"; }
32 
33  Aws::String SerializePayload() const override;
34 
35  protected:
36  void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
37 
38  public:
39 
43  inline const Aws::String& GetUsageLimitId() const{ return m_usageLimitId; }
44 
48  inline bool UsageLimitIdHasBeenSet() const { return m_usageLimitIdHasBeenSet; }
49 
53  inline void SetUsageLimitId(const Aws::String& value) { m_usageLimitIdHasBeenSet = true; m_usageLimitId = value; }
54 
58  inline void SetUsageLimitId(Aws::String&& value) { m_usageLimitIdHasBeenSet = true; m_usageLimitId = std::move(value); }
59 
63  inline void SetUsageLimitId(const char* value) { m_usageLimitIdHasBeenSet = true; m_usageLimitId.assign(value); }
64 
68  inline ModifyUsageLimitRequest& WithUsageLimitId(const Aws::String& value) { SetUsageLimitId(value); return *this;}
69 
73  inline ModifyUsageLimitRequest& WithUsageLimitId(Aws::String&& value) { SetUsageLimitId(std::move(value)); return *this;}
74 
78  inline ModifyUsageLimitRequest& WithUsageLimitId(const char* value) { SetUsageLimitId(value); return *this;}
79 
80 
85  inline long long GetAmount() const{ return m_amount; }
86 
91  inline bool AmountHasBeenSet() const { return m_amountHasBeenSet; }
92 
97  inline void SetAmount(long long value) { m_amountHasBeenSet = true; m_amount = value; }
98 
103  inline ModifyUsageLimitRequest& WithAmount(long long value) { SetAmount(value); return *this;}
104 
105 
110  inline const UsageLimitBreachAction& GetBreachAction() const{ return m_breachAction; }
111 
116  inline bool BreachActionHasBeenSet() const { return m_breachActionHasBeenSet; }
117 
122  inline void SetBreachAction(const UsageLimitBreachAction& value) { m_breachActionHasBeenSet = true; m_breachAction = value; }
123 
128  inline void SetBreachAction(UsageLimitBreachAction&& value) { m_breachActionHasBeenSet = true; m_breachAction = std::move(value); }
129 
134  inline ModifyUsageLimitRequest& WithBreachAction(const UsageLimitBreachAction& value) { SetBreachAction(value); return *this;}
135 
140  inline ModifyUsageLimitRequest& WithBreachAction(UsageLimitBreachAction&& value) { SetBreachAction(std::move(value)); return *this;}
141 
142  private:
143 
144  Aws::String m_usageLimitId;
145  bool m_usageLimitIdHasBeenSet;
146 
147  long long m_amount;
148  bool m_amountHasBeenSet;
149 
150  UsageLimitBreachAction m_breachAction;
151  bool m_breachActionHasBeenSet;
152  };
153 
154 } // namespace Model
155 } // namespace Redshift
156 } // namespace Aws
Aws::Redshift::Model::ModifyUsageLimitRequest::ModifyUsageLimitRequest
ModifyUsageLimitRequest()
Aws::Redshift::Model::ModifyUsageLimitRequest::SetBreachAction
void SetBreachAction(UsageLimitBreachAction &&value)
Definition: ModifyUsageLimitRequest.h:128
Aws::Http::URI
Definition: URI.h:32
UsageLimitBreachAction.h
Aws::Redshift::Model::ModifyUsageLimitRequest::DumpBodyToUrl
void DumpBodyToUrl(Aws::Http::URI &uri) const override
Aws::Redshift::Model::ModifyUsageLimitRequest
Definition: ModifyUsageLimitRequest.h:23
Aws::Redshift::Model::ModifyUsageLimitRequest::WithBreachAction
ModifyUsageLimitRequest & WithBreachAction(UsageLimitBreachAction &&value)
Definition: ModifyUsageLimitRequest.h:140
Aws::Redshift::Model::ModifyUsageLimitRequest::GetServiceRequestName
virtual const char * GetServiceRequestName() const override
Definition: ModifyUsageLimitRequest.h:31
RedshiftRequest.h
Aws::Redshift::Model::ModifyUsageLimitRequest::SetUsageLimitId
void SetUsageLimitId(const char *value)
Definition: ModifyUsageLimitRequest.h:63
Aws::Redshift::Model::ModifyUsageLimitRequest::BreachActionHasBeenSet
bool BreachActionHasBeenSet() const
Definition: ModifyUsageLimitRequest.h:116
Aws::Redshift::Model::ModifyUsageLimitRequest::AmountHasBeenSet
bool AmountHasBeenSet() const
Definition: ModifyUsageLimitRequest.h:91
Aws::Redshift::Model::ModifyUsageLimitRequest::GetAmount
long long GetAmount() const
Definition: ModifyUsageLimitRequest.h:85
Aws::Redshift::Model::UsageLimitBreachAction
UsageLimitBreachAction
Definition: UsageLimitBreachAction.h:17
AWS_REDSHIFT_API
#define AWS_REDSHIFT_API
Definition: Redshift_EXPORTS.h:28
Aws::Redshift::Model::ModifyUsageLimitRequest::WithUsageLimitId
ModifyUsageLimitRequest & WithUsageLimitId(const Aws::String &value)
Definition: ModifyUsageLimitRequest.h:68
Aws::Redshift::RedshiftRequest
Definition: RedshiftRequest.h:17
AWSString.h
Aws::Redshift::Model::ModifyUsageLimitRequest::UsageLimitIdHasBeenSet
bool UsageLimitIdHasBeenSet() const
Definition: ModifyUsageLimitRequest.h:48
Aws::Redshift::Model::ModifyUsageLimitRequest::SetBreachAction
void SetBreachAction(const UsageLimitBreachAction &value)
Definition: ModifyUsageLimitRequest.h:122
Aws::Redshift::Model::ModifyUsageLimitRequest::GetUsageLimitId
const Aws::String & GetUsageLimitId() const
Definition: ModifyUsageLimitRequest.h:43
Aws::Redshift::Model::ModifyUsageLimitRequest::GetBreachAction
const UsageLimitBreachAction & GetBreachAction() const
Definition: ModifyUsageLimitRequest.h:110
Aws
Definition: AccessManagementClient.h:15
Aws::Redshift::Model::ModifyUsageLimitRequest::SerializePayload
Aws::String SerializePayload() const override
Aws::Redshift::Model::ModifyUsageLimitRequest::WithBreachAction
ModifyUsageLimitRequest & WithBreachAction(const UsageLimitBreachAction &value)
Definition: ModifyUsageLimitRequest.h:134
Aws::Redshift::Model::ModifyUsageLimitRequest::WithUsageLimitId
ModifyUsageLimitRequest & WithUsageLimitId(const char *value)
Definition: ModifyUsageLimitRequest.h:78
Redshift_EXPORTS.h
Aws::Redshift::Model::ModifyUsageLimitRequest::SetUsageLimitId
void SetUsageLimitId(Aws::String &&value)
Definition: ModifyUsageLimitRequest.h:58
Aws::Redshift::Model::ModifyUsageLimitRequest::WithUsageLimitId
ModifyUsageLimitRequest & WithUsageLimitId(Aws::String &&value)
Definition: ModifyUsageLimitRequest.h:73
Aws::Redshift::Model::ModifyUsageLimitRequest::SetAmount
void SetAmount(long long value)
Definition: ModifyUsageLimitRequest.h:97
Aws::String
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
Aws::Redshift::Model::ModifyUsageLimitRequest::SetUsageLimitId
void SetUsageLimitId(const Aws::String &value)
Definition: ModifyUsageLimitRequest.h:53
Aws::Redshift::Model::ModifyUsageLimitRequest::WithAmount
ModifyUsageLimitRequest & WithAmount(long long value)
Definition: ModifyUsageLimitRequest.h:103