AWS SDK for C++  1.8.71
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
ModifyUsageLimitRequest & WithAmount(long long value)
void SetBreachAction(UsageLimitBreachAction &&value)
const UsageLimitBreachAction & GetBreachAction() const
#define AWS_REDSHIFT_API
ModifyUsageLimitRequest & WithBreachAction(const UsageLimitBreachAction &value)
ModifyUsageLimitRequest & WithUsageLimitId(const Aws::String &value)
void SetBreachAction(const UsageLimitBreachAction &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
ModifyUsageLimitRequest & WithUsageLimitId(const char *value)
virtual const char * GetServiceRequestName() const override
ModifyUsageLimitRequest & WithBreachAction(UsageLimitBreachAction &&value)
ModifyUsageLimitRequest & WithUsageLimitId(Aws::String &&value)