AWS SDK for C++  1.8.95
AWS SDK for C++
ApiStage.h
Go to the documentation of this file.
1 
6 #pragma once
11 #include <utility>
12 
13 namespace Aws
14 {
15 namespace Utils
16 {
17 namespace Json
18 {
19  class JsonValue;
20  class JsonView;
21 } // namespace Json
22 } // namespace Utils
23 namespace APIGateway
24 {
25 namespace Model
26 {
27 
35  {
36  public:
37  ApiStage();
39  ApiStage& operator=(Aws::Utils::Json::JsonView jsonValue);
40  Aws::Utils::Json::JsonValue Jsonize() const;
41 
42 
46  inline const Aws::String& GetApiId() const{ return m_apiId; }
47 
51  inline bool ApiIdHasBeenSet() const { return m_apiIdHasBeenSet; }
52 
56  inline void SetApiId(const Aws::String& value) { m_apiIdHasBeenSet = true; m_apiId = value; }
57 
61  inline void SetApiId(Aws::String&& value) { m_apiIdHasBeenSet = true; m_apiId = std::move(value); }
62 
66  inline void SetApiId(const char* value) { m_apiIdHasBeenSet = true; m_apiId.assign(value); }
67 
71  inline ApiStage& WithApiId(const Aws::String& value) { SetApiId(value); return *this;}
72 
76  inline ApiStage& WithApiId(Aws::String&& value) { SetApiId(std::move(value)); return *this;}
77 
81  inline ApiStage& WithApiId(const char* value) { SetApiId(value); return *this;}
82 
83 
87  inline const Aws::String& GetStage() const{ return m_stage; }
88 
92  inline bool StageHasBeenSet() const { return m_stageHasBeenSet; }
93 
97  inline void SetStage(const Aws::String& value) { m_stageHasBeenSet = true; m_stage = value; }
98 
102  inline void SetStage(Aws::String&& value) { m_stageHasBeenSet = true; m_stage = std::move(value); }
103 
107  inline void SetStage(const char* value) { m_stageHasBeenSet = true; m_stage.assign(value); }
108 
112  inline ApiStage& WithStage(const Aws::String& value) { SetStage(value); return *this;}
113 
117  inline ApiStage& WithStage(Aws::String&& value) { SetStage(std::move(value)); return *this;}
118 
122  inline ApiStage& WithStage(const char* value) { SetStage(value); return *this;}
123 
124 
129  inline const Aws::Map<Aws::String, ThrottleSettings>& GetThrottle() const{ return m_throttle; }
130 
135  inline bool ThrottleHasBeenSet() const { return m_throttleHasBeenSet; }
136 
141  inline void SetThrottle(const Aws::Map<Aws::String, ThrottleSettings>& value) { m_throttleHasBeenSet = true; m_throttle = value; }
142 
147  inline void SetThrottle(Aws::Map<Aws::String, ThrottleSettings>&& value) { m_throttleHasBeenSet = true; m_throttle = std::move(value); }
148 
153  inline ApiStage& WithThrottle(const Aws::Map<Aws::String, ThrottleSettings>& value) { SetThrottle(value); return *this;}
154 
159  inline ApiStage& WithThrottle(Aws::Map<Aws::String, ThrottleSettings>&& value) { SetThrottle(std::move(value)); return *this;}
160 
165  inline ApiStage& AddThrottle(const Aws::String& key, const ThrottleSettings& value) { m_throttleHasBeenSet = true; m_throttle.emplace(key, value); return *this; }
166 
171  inline ApiStage& AddThrottle(Aws::String&& key, const ThrottleSettings& value) { m_throttleHasBeenSet = true; m_throttle.emplace(std::move(key), value); return *this; }
172 
177  inline ApiStage& AddThrottle(const Aws::String& key, ThrottleSettings&& value) { m_throttleHasBeenSet = true; m_throttle.emplace(key, std::move(value)); return *this; }
178 
183  inline ApiStage& AddThrottle(Aws::String&& key, ThrottleSettings&& value) { m_throttleHasBeenSet = true; m_throttle.emplace(std::move(key), std::move(value)); return *this; }
184 
189  inline ApiStage& AddThrottle(const char* key, ThrottleSettings&& value) { m_throttleHasBeenSet = true; m_throttle.emplace(key, std::move(value)); return *this; }
190 
195  inline ApiStage& AddThrottle(const char* key, const ThrottleSettings& value) { m_throttleHasBeenSet = true; m_throttle.emplace(key, value); return *this; }
196 
197  private:
198 
199  Aws::String m_apiId;
200  bool m_apiIdHasBeenSet;
201 
202  Aws::String m_stage;
203  bool m_stageHasBeenSet;
204 
206  bool m_throttleHasBeenSet;
207  };
208 
209 } // namespace Model
210 } // namespace APIGateway
211 } // namespace Aws
ApiStage & WithStage(const char *value)
Definition: ApiStage.h:122
ApiStage & AddThrottle(const Aws::String &key, ThrottleSettings &&value)
Definition: ApiStage.h:177
ApiStage & AddThrottle(Aws::String &&key, ThrottleSettings &&value)
Definition: ApiStage.h:183
ApiStage & WithApiId(const Aws::String &value)
Definition: ApiStage.h:71
ApiStage & AddThrottle(const char *key, ThrottleSettings &&value)
Definition: ApiStage.h:189
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
Definition: AWSMap.h:19
ApiStage & WithApiId(Aws::String &&value)
Definition: ApiStage.h:76
void SetApiId(const Aws::String &value)
Definition: ApiStage.h:56
const Aws::String & GetStage() const
Definition: ApiStage.h:87
ApiStage & AddThrottle(const Aws::String &key, const ThrottleSettings &value)
Definition: ApiStage.h:165
void SetStage(Aws::String &&value)
Definition: ApiStage.h:102
void SetStage(const Aws::String &value)
Definition: ApiStage.h:97
ApiStage & AddThrottle(Aws::String &&key, const ThrottleSettings &value)
Definition: ApiStage.h:171
const Aws::String & GetApiId() const
Definition: ApiStage.h:46
ApiStage & AddThrottle(const char *key, const ThrottleSettings &value)
Definition: ApiStage.h:195
ApiStage & WithStage(Aws::String &&value)
Definition: ApiStage.h:117
ApiStage & WithThrottle(const Aws::Map< Aws::String, ThrottleSettings > &value)
Definition: ApiStage.h:153
void SetApiId(Aws::String &&value)
Definition: ApiStage.h:61
void SetStage(const char *value)
Definition: ApiStage.h:107
void SetApiId(const char *value)
Definition: ApiStage.h:66
const Aws::Map< Aws::String, ThrottleSettings > & GetThrottle() const
Definition: ApiStage.h:129
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
ApiStage & WithStage(const Aws::String &value)
Definition: ApiStage.h:112
#define AWS_APIGATEWAY_API
ApiStage & WithThrottle(Aws::Map< Aws::String, ThrottleSettings > &&value)
Definition: ApiStage.h:159
ApiStage & WithApiId(const char *value)
Definition: ApiStage.h:81
void SetThrottle(const Aws::Map< Aws::String, ThrottleSettings > &value)
Definition: ApiStage.h:141
void SetThrottle(Aws::Map< Aws::String, ThrottleSettings > &&value)
Definition: ApiStage.h:147