AWS SDK for C++

AWS SDK for C++ Version 1.11.747

Loading...
Searching...
No Matches
GameServerGroup.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/gamelift/GameLift_EXPORTS.h>
11#include <aws/gamelift/model/BalancingStrategy.h>
12#include <aws/gamelift/model/GameServerGroupAction.h>
13#include <aws/gamelift/model/GameServerGroupStatus.h>
14#include <aws/gamelift/model/GameServerProtectionPolicy.h>
15#include <aws/gamelift/model/InstanceDefinition.h>
16
17#include <utility>
18
19namespace Aws {
20namespace Utils {
21namespace Json {
22class JsonValue;
23class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace GameLift {
27namespace Model {
28
42 public:
43 AWS_GAMELIFT_API GameServerGroup() = default;
44 AWS_GAMELIFT_API GameServerGroup(Aws::Utils::Json::JsonView jsonValue);
46 AWS_GAMELIFT_API Aws::Utils::Json::JsonValue Jsonize() const;
47
49
53 inline const Aws::String& GetGameServerGroupName() const { return m_gameServerGroupName; }
54 inline bool GameServerGroupNameHasBeenSet() const { return m_gameServerGroupNameHasBeenSet; }
55 template <typename GameServerGroupNameT = Aws::String>
56 void SetGameServerGroupName(GameServerGroupNameT&& value) {
57 m_gameServerGroupNameHasBeenSet = true;
58 m_gameServerGroupName = std::forward<GameServerGroupNameT>(value);
59 }
60 template <typename GameServerGroupNameT = Aws::String>
61 GameServerGroup& WithGameServerGroupName(GameServerGroupNameT&& value) {
62 SetGameServerGroupName(std::forward<GameServerGroupNameT>(value));
63 return *this;
64 }
66
68
71 inline const Aws::String& GetGameServerGroupArn() const { return m_gameServerGroupArn; }
72 inline bool GameServerGroupArnHasBeenSet() const { return m_gameServerGroupArnHasBeenSet; }
73 template <typename GameServerGroupArnT = Aws::String>
74 void SetGameServerGroupArn(GameServerGroupArnT&& value) {
75 m_gameServerGroupArnHasBeenSet = true;
76 m_gameServerGroupArn = std::forward<GameServerGroupArnT>(value);
77 }
78 template <typename GameServerGroupArnT = Aws::String>
79 GameServerGroup& WithGameServerGroupArn(GameServerGroupArnT&& value) {
80 SetGameServerGroupArn(std::forward<GameServerGroupArnT>(value));
81 return *this;
82 }
84
86
92 inline const Aws::String& GetRoleArn() const { return m_roleArn; }
93 inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; }
94 template <typename RoleArnT = Aws::String>
95 void SetRoleArn(RoleArnT&& value) {
96 m_roleArnHasBeenSet = true;
97 m_roleArn = std::forward<RoleArnT>(value);
98 }
99 template <typename RoleArnT = Aws::String>
100 GameServerGroup& WithRoleArn(RoleArnT&& value) {
101 SetRoleArn(std::forward<RoleArnT>(value));
102 return *this;
103 }
105
107
112 inline const Aws::Vector<InstanceDefinition>& GetInstanceDefinitions() const { return m_instanceDefinitions; }
113 inline bool InstanceDefinitionsHasBeenSet() const { return m_instanceDefinitionsHasBeenSet; }
114 template <typename InstanceDefinitionsT = Aws::Vector<InstanceDefinition>>
115 void SetInstanceDefinitions(InstanceDefinitionsT&& value) {
116 m_instanceDefinitionsHasBeenSet = true;
117 m_instanceDefinitions = std::forward<InstanceDefinitionsT>(value);
118 }
119 template <typename InstanceDefinitionsT = Aws::Vector<InstanceDefinition>>
120 GameServerGroup& WithInstanceDefinitions(InstanceDefinitionsT&& value) {
121 SetInstanceDefinitions(std::forward<InstanceDefinitionsT>(value));
122 return *this;
123 }
124 template <typename InstanceDefinitionsT = InstanceDefinition>
125 GameServerGroup& AddInstanceDefinitions(InstanceDefinitionsT&& value) {
126 m_instanceDefinitionsHasBeenSet = true;
127 m_instanceDefinitions.emplace_back(std::forward<InstanceDefinitionsT>(value));
128 return *this;
129 }
131
133
151 inline BalancingStrategy GetBalancingStrategy() const { return m_balancingStrategy; }
152 inline bool BalancingStrategyHasBeenSet() const { return m_balancingStrategyHasBeenSet; }
154 m_balancingStrategyHasBeenSet = true;
155 m_balancingStrategy = value;
156 }
159 return *this;
160 }
162
164
173 inline GameServerProtectionPolicy GetGameServerProtectionPolicy() const { return m_gameServerProtectionPolicy; }
174 inline bool GameServerProtectionPolicyHasBeenSet() const { return m_gameServerProtectionPolicyHasBeenSet; }
176 m_gameServerProtectionPolicyHasBeenSet = true;
177 m_gameServerProtectionPolicy = value;
178 }
181 return *this;
182 }
184
186
190 inline const Aws::String& GetAutoScalingGroupArn() const { return m_autoScalingGroupArn; }
191 inline bool AutoScalingGroupArnHasBeenSet() const { return m_autoScalingGroupArnHasBeenSet; }
192 template <typename AutoScalingGroupArnT = Aws::String>
193 void SetAutoScalingGroupArn(AutoScalingGroupArnT&& value) {
194 m_autoScalingGroupArnHasBeenSet = true;
195 m_autoScalingGroupArn = std::forward<AutoScalingGroupArnT>(value);
196 }
197 template <typename AutoScalingGroupArnT = Aws::String>
198 GameServerGroup& WithAutoScalingGroupArn(AutoScalingGroupArnT&& value) {
199 SetAutoScalingGroupArn(std::forward<AutoScalingGroupArnT>(value));
200 return *this;
201 }
203
205
223 inline GameServerGroupStatus GetStatus() const { return m_status; }
224 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
225 inline void SetStatus(GameServerGroupStatus value) {
226 m_statusHasBeenSet = true;
227 m_status = value;
228 }
230 SetStatus(value);
231 return *this;
232 }
234
236
241 inline const Aws::String& GetStatusReason() const { return m_statusReason; }
242 inline bool StatusReasonHasBeenSet() const { return m_statusReasonHasBeenSet; }
243 template <typename StatusReasonT = Aws::String>
244 void SetStatusReason(StatusReasonT&& value) {
245 m_statusReasonHasBeenSet = true;
246 m_statusReason = std::forward<StatusReasonT>(value);
247 }
248 template <typename StatusReasonT = Aws::String>
249 GameServerGroup& WithStatusReason(StatusReasonT&& value) {
250 SetStatusReason(std::forward<StatusReasonT>(value));
251 return *this;
252 }
254
256
260 inline const Aws::Vector<GameServerGroupAction>& GetSuspendedActions() const { return m_suspendedActions; }
261 inline bool SuspendedActionsHasBeenSet() const { return m_suspendedActionsHasBeenSet; }
262 template <typename SuspendedActionsT = Aws::Vector<GameServerGroupAction>>
263 void SetSuspendedActions(SuspendedActionsT&& value) {
264 m_suspendedActionsHasBeenSet = true;
265 m_suspendedActions = std::forward<SuspendedActionsT>(value);
266 }
267 template <typename SuspendedActionsT = Aws::Vector<GameServerGroupAction>>
268 GameServerGroup& WithSuspendedActions(SuspendedActionsT&& value) {
269 SetSuspendedActions(std::forward<SuspendedActionsT>(value));
270 return *this;
271 }
273 m_suspendedActionsHasBeenSet = true;
274 m_suspendedActions.push_back(value);
275 return *this;
276 }
278
280
285 inline const Aws::Utils::DateTime& GetCreationTime() const { return m_creationTime; }
286 inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; }
287 template <typename CreationTimeT = Aws::Utils::DateTime>
288 void SetCreationTime(CreationTimeT&& value) {
289 m_creationTimeHasBeenSet = true;
290 m_creationTime = std::forward<CreationTimeT>(value);
291 }
292 template <typename CreationTimeT = Aws::Utils::DateTime>
293 GameServerGroup& WithCreationTime(CreationTimeT&& value) {
294 SetCreationTime(std::forward<CreationTimeT>(value));
295 return *this;
296 }
298
300
303 inline const Aws::Utils::DateTime& GetLastUpdatedTime() const { return m_lastUpdatedTime; }
304 inline bool LastUpdatedTimeHasBeenSet() const { return m_lastUpdatedTimeHasBeenSet; }
305 template <typename LastUpdatedTimeT = Aws::Utils::DateTime>
306 void SetLastUpdatedTime(LastUpdatedTimeT&& value) {
307 m_lastUpdatedTimeHasBeenSet = true;
308 m_lastUpdatedTime = std::forward<LastUpdatedTimeT>(value);
309 }
310 template <typename LastUpdatedTimeT = Aws::Utils::DateTime>
311 GameServerGroup& WithLastUpdatedTime(LastUpdatedTimeT&& value) {
312 SetLastUpdatedTime(std::forward<LastUpdatedTimeT>(value));
313 return *this;
314 }
316 private:
317 Aws::String m_gameServerGroupName;
318
319 Aws::String m_gameServerGroupArn;
320
321 Aws::String m_roleArn;
322
323 Aws::Vector<InstanceDefinition> m_instanceDefinitions;
324
326
328
329 Aws::String m_autoScalingGroupArn;
330
332
333 Aws::String m_statusReason;
334
335 Aws::Vector<GameServerGroupAction> m_suspendedActions;
336
337 Aws::Utils::DateTime m_creationTime{};
338
339 Aws::Utils::DateTime m_lastUpdatedTime{};
340 bool m_gameServerGroupNameHasBeenSet = false;
341 bool m_gameServerGroupArnHasBeenSet = false;
342 bool m_roleArnHasBeenSet = false;
343 bool m_instanceDefinitionsHasBeenSet = false;
344 bool m_balancingStrategyHasBeenSet = false;
345 bool m_gameServerProtectionPolicyHasBeenSet = false;
346 bool m_autoScalingGroupArnHasBeenSet = false;
347 bool m_statusHasBeenSet = false;
348 bool m_statusReasonHasBeenSet = false;
349 bool m_suspendedActionsHasBeenSet = false;
350 bool m_creationTimeHasBeenSet = false;
351 bool m_lastUpdatedTimeHasBeenSet = false;
352};
353
354} // namespace Model
355} // namespace GameLift
356} // namespace Aws
GameServerGroup & WithAutoScalingGroupArn(AutoScalingGroupArnT &&value)
void SetStatus(GameServerGroupStatus value)
AWS_GAMELIFT_API GameServerGroup & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Utils::DateTime & GetLastUpdatedTime() const
void SetGameServerGroupArn(GameServerGroupArnT &&value)
GameServerGroup & WithLastUpdatedTime(LastUpdatedTimeT &&value)
const Aws::String & GetStatusReason() const
const Aws::String & GetAutoScalingGroupArn() const
const Aws::String & GetGameServerGroupArn() const
void SetSuspendedActions(SuspendedActionsT &&value)
void SetCreationTime(CreationTimeT &&value)
BalancingStrategy GetBalancingStrategy() const
GameServerGroup & WithStatusReason(StatusReasonT &&value)
GameServerGroup & WithBalancingStrategy(BalancingStrategy value)
const Aws::Vector< InstanceDefinition > & GetInstanceDefinitions() const
const Aws::Vector< GameServerGroupAction > & GetSuspendedActions() const
void SetLastUpdatedTime(LastUpdatedTimeT &&value)
const Aws::Utils::DateTime & GetCreationTime() const
AWS_GAMELIFT_API Aws::Utils::Json::JsonValue Jsonize() const
void SetGameServerGroupName(GameServerGroupNameT &&value)
const Aws::String & GetRoleArn() const
GameServerGroup & WithGameServerGroupArn(GameServerGroupArnT &&value)
GameServerGroup & WithStatus(GameServerGroupStatus value)
GameServerProtectionPolicy GetGameServerProtectionPolicy() const
GameServerGroup & AddSuspendedActions(GameServerGroupAction value)
AWS_GAMELIFT_API GameServerGroup(Aws::Utils::Json::JsonView jsonValue)
void SetStatusReason(StatusReasonT &&value)
void SetInstanceDefinitions(InstanceDefinitionsT &&value)
GameServerGroup & AddInstanceDefinitions(InstanceDefinitionsT &&value)
void SetAutoScalingGroupArn(AutoScalingGroupArnT &&value)
void SetBalancingStrategy(BalancingStrategy value)
GameServerGroup & WithRoleArn(RoleArnT &&value)
const Aws::String & GetGameServerGroupName() const
GameServerGroup & WithGameServerProtectionPolicy(GameServerProtectionPolicy value)
GameServerGroup & WithGameServerGroupName(GameServerGroupNameT &&value)
AWS_GAMELIFT_API GameServerGroup()=default
GameServerGroup & WithCreationTime(CreationTimeT &&value)
void SetGameServerProtectionPolicy(GameServerProtectionPolicy value)
GameServerGroup & WithInstanceDefinitions(InstanceDefinitionsT &&value)
GameServerGroup & WithSuspendedActions(SuspendedActionsT &&value)
GameServerGroupStatus GetStatus() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue