AWS SDK for C++  1.8.71
AWS SDK for C++
CreateGameServerGroupRequest.h
Go to the documentation of this file.
1 
6 #pragma once
16 #include <aws/gamelift/model/Tag.h>
17 #include <utility>
18 
19 namespace Aws
20 {
21 namespace GameLift
22 {
23 namespace Model
24 {
25 
29  {
30  public:
32 
33  // Service request name is the Operation name which will send this request out,
34  // each operation should has unique request name, so that we can get operation's name from this request.
35  // Note: this is not true for response, multiple operations may have the same response name,
36  // so we can not get operation's name from response.
37  inline virtual const char* GetServiceRequestName() const override { return "CreateGameServerGroup"; }
38 
39  Aws::String SerializePayload() const override;
40 
41  Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
42 
43 
49  inline const Aws::String& GetGameServerGroupName() const{ return m_gameServerGroupName; }
50 
56  inline bool GameServerGroupNameHasBeenSet() const { return m_gameServerGroupNameHasBeenSet; }
57 
63  inline void SetGameServerGroupName(const Aws::String& value) { m_gameServerGroupNameHasBeenSet = true; m_gameServerGroupName = value; }
64 
70  inline void SetGameServerGroupName(Aws::String&& value) { m_gameServerGroupNameHasBeenSet = true; m_gameServerGroupName = std::move(value); }
71 
77  inline void SetGameServerGroupName(const char* value) { m_gameServerGroupNameHasBeenSet = true; m_gameServerGroupName.assign(value); }
78 
84  inline CreateGameServerGroupRequest& WithGameServerGroupName(const Aws::String& value) { SetGameServerGroupName(value); return *this;}
85 
91  inline CreateGameServerGroupRequest& WithGameServerGroupName(Aws::String&& value) { SetGameServerGroupName(std::move(value)); return *this;}
92 
98  inline CreateGameServerGroupRequest& WithGameServerGroupName(const char* value) { SetGameServerGroupName(value); return *this;}
99 
100 
107  inline const Aws::String& GetRoleArn() const{ return m_roleArn; }
108 
115  inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; }
116 
123  inline void SetRoleArn(const Aws::String& value) { m_roleArnHasBeenSet = true; m_roleArn = value; }
124 
131  inline void SetRoleArn(Aws::String&& value) { m_roleArnHasBeenSet = true; m_roleArn = std::move(value); }
132 
139  inline void SetRoleArn(const char* value) { m_roleArnHasBeenSet = true; m_roleArn.assign(value); }
140 
147  inline CreateGameServerGroupRequest& WithRoleArn(const Aws::String& value) { SetRoleArn(value); return *this;}
148 
155  inline CreateGameServerGroupRequest& WithRoleArn(Aws::String&& value) { SetRoleArn(std::move(value)); return *this;}
156 
163  inline CreateGameServerGroupRequest& WithRoleArn(const char* value) { SetRoleArn(value); return *this;}
164 
165 
173  inline int GetMinSize() const{ return m_minSize; }
174 
182  inline bool MinSizeHasBeenSet() const { return m_minSizeHasBeenSet; }
183 
191  inline void SetMinSize(int value) { m_minSizeHasBeenSet = true; m_minSize = value; }
192 
200  inline CreateGameServerGroupRequest& WithMinSize(int value) { SetMinSize(value); return *this;}
201 
202 
209  inline int GetMaxSize() const{ return m_maxSize; }
210 
217  inline bool MaxSizeHasBeenSet() const { return m_maxSizeHasBeenSet; }
218 
225  inline void SetMaxSize(int value) { m_maxSizeHasBeenSet = true; m_maxSize = value; }
226 
233  inline CreateGameServerGroupRequest& WithMaxSize(int value) { SetMaxSize(value); return *this;}
234 
235 
246  inline const LaunchTemplateSpecification& GetLaunchTemplate() const{ return m_launchTemplate; }
247 
258  inline bool LaunchTemplateHasBeenSet() const { return m_launchTemplateHasBeenSet; }
259 
270  inline void SetLaunchTemplate(const LaunchTemplateSpecification& value) { m_launchTemplateHasBeenSet = true; m_launchTemplate = value; }
271 
282  inline void SetLaunchTemplate(LaunchTemplateSpecification&& value) { m_launchTemplateHasBeenSet = true; m_launchTemplate = std::move(value); }
283 
294  inline CreateGameServerGroupRequest& WithLaunchTemplate(const LaunchTemplateSpecification& value) { SetLaunchTemplate(value); return *this;}
295 
306  inline CreateGameServerGroupRequest& WithLaunchTemplate(LaunchTemplateSpecification&& value) { SetLaunchTemplate(std::move(value)); return *this;}
307 
308 
322  inline const Aws::Vector<InstanceDefinition>& GetInstanceDefinitions() const{ return m_instanceDefinitions; }
323 
337  inline bool InstanceDefinitionsHasBeenSet() const { return m_instanceDefinitionsHasBeenSet; }
338 
352  inline void SetInstanceDefinitions(const Aws::Vector<InstanceDefinition>& value) { m_instanceDefinitionsHasBeenSet = true; m_instanceDefinitions = value; }
353 
367  inline void SetInstanceDefinitions(Aws::Vector<InstanceDefinition>&& value) { m_instanceDefinitionsHasBeenSet = true; m_instanceDefinitions = std::move(value); }
368 
382  inline CreateGameServerGroupRequest& WithInstanceDefinitions(const Aws::Vector<InstanceDefinition>& value) { SetInstanceDefinitions(value); return *this;}
383 
397  inline CreateGameServerGroupRequest& WithInstanceDefinitions(Aws::Vector<InstanceDefinition>&& value) { SetInstanceDefinitions(std::move(value)); return *this;}
398 
412  inline CreateGameServerGroupRequest& AddInstanceDefinitions(const InstanceDefinition& value) { m_instanceDefinitionsHasBeenSet = true; m_instanceDefinitions.push_back(value); return *this; }
413 
427  inline CreateGameServerGroupRequest& AddInstanceDefinitions(InstanceDefinition&& value) { m_instanceDefinitionsHasBeenSet = true; m_instanceDefinitions.push_back(std::move(value)); return *this; }
428 
429 
438  inline const GameServerGroupAutoScalingPolicy& GetAutoScalingPolicy() const{ return m_autoScalingPolicy; }
439 
448  inline bool AutoScalingPolicyHasBeenSet() const { return m_autoScalingPolicyHasBeenSet; }
449 
458  inline void SetAutoScalingPolicy(const GameServerGroupAutoScalingPolicy& value) { m_autoScalingPolicyHasBeenSet = true; m_autoScalingPolicy = value; }
459 
468  inline void SetAutoScalingPolicy(GameServerGroupAutoScalingPolicy&& value) { m_autoScalingPolicyHasBeenSet = true; m_autoScalingPolicy = std::move(value); }
469 
478  inline CreateGameServerGroupRequest& WithAutoScalingPolicy(const GameServerGroupAutoScalingPolicy& value) { SetAutoScalingPolicy(value); return *this;}
479 
488  inline CreateGameServerGroupRequest& WithAutoScalingPolicy(GameServerGroupAutoScalingPolicy&& value) { SetAutoScalingPolicy(std::move(value)); return *this;}
489 
490 
509  inline const BalancingStrategy& GetBalancingStrategy() const{ return m_balancingStrategy; }
510 
529  inline bool BalancingStrategyHasBeenSet() const { return m_balancingStrategyHasBeenSet; }
530 
549  inline void SetBalancingStrategy(const BalancingStrategy& value) { m_balancingStrategyHasBeenSet = true; m_balancingStrategy = value; }
550 
569  inline void SetBalancingStrategy(BalancingStrategy&& value) { m_balancingStrategyHasBeenSet = true; m_balancingStrategy = std::move(value); }
570 
589  inline CreateGameServerGroupRequest& WithBalancingStrategy(const BalancingStrategy& value) { SetBalancingStrategy(value); return *this;}
590 
609  inline CreateGameServerGroupRequest& WithBalancingStrategy(BalancingStrategy&& value) { SetBalancingStrategy(std::move(value)); return *this;}
610 
611 
622  inline const GameServerProtectionPolicy& GetGameServerProtectionPolicy() const{ return m_gameServerProtectionPolicy; }
623 
634  inline bool GameServerProtectionPolicyHasBeenSet() const { return m_gameServerProtectionPolicyHasBeenSet; }
635 
646  inline void SetGameServerProtectionPolicy(const GameServerProtectionPolicy& value) { m_gameServerProtectionPolicyHasBeenSet = true; m_gameServerProtectionPolicy = value; }
647 
658  inline void SetGameServerProtectionPolicy(GameServerProtectionPolicy&& value) { m_gameServerProtectionPolicyHasBeenSet = true; m_gameServerProtectionPolicy = std::move(value); }
659 
670  inline CreateGameServerGroupRequest& WithGameServerProtectionPolicy(const GameServerProtectionPolicy& value) { SetGameServerProtectionPolicy(value); return *this;}
671 
682  inline CreateGameServerGroupRequest& WithGameServerProtectionPolicy(GameServerProtectionPolicy&& value) { SetGameServerProtectionPolicy(std::move(value)); return *this;}
683 
684 
693  inline const Aws::Vector<Aws::String>& GetVpcSubnets() const{ return m_vpcSubnets; }
694 
703  inline bool VpcSubnetsHasBeenSet() const { return m_vpcSubnetsHasBeenSet; }
704 
713  inline void SetVpcSubnets(const Aws::Vector<Aws::String>& value) { m_vpcSubnetsHasBeenSet = true; m_vpcSubnets = value; }
714 
723  inline void SetVpcSubnets(Aws::Vector<Aws::String>&& value) { m_vpcSubnetsHasBeenSet = true; m_vpcSubnets = std::move(value); }
724 
733  inline CreateGameServerGroupRequest& WithVpcSubnets(const Aws::Vector<Aws::String>& value) { SetVpcSubnets(value); return *this;}
734 
743  inline CreateGameServerGroupRequest& WithVpcSubnets(Aws::Vector<Aws::String>&& value) { SetVpcSubnets(std::move(value)); return *this;}
744 
753  inline CreateGameServerGroupRequest& AddVpcSubnets(const Aws::String& value) { m_vpcSubnetsHasBeenSet = true; m_vpcSubnets.push_back(value); return *this; }
754 
763  inline CreateGameServerGroupRequest& AddVpcSubnets(Aws::String&& value) { m_vpcSubnetsHasBeenSet = true; m_vpcSubnets.push_back(std::move(value)); return *this; }
764 
773  inline CreateGameServerGroupRequest& AddVpcSubnets(const char* value) { m_vpcSubnetsHasBeenSet = true; m_vpcSubnets.push_back(value); return *this; }
774 
775 
787  inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
788 
800  inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
801 
813  inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
814 
826  inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
827 
839  inline CreateGameServerGroupRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
840 
852  inline CreateGameServerGroupRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
853 
865  inline CreateGameServerGroupRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
866 
878  inline CreateGameServerGroupRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
879 
880  private:
881 
882  Aws::String m_gameServerGroupName;
883  bool m_gameServerGroupNameHasBeenSet;
884 
885  Aws::String m_roleArn;
886  bool m_roleArnHasBeenSet;
887 
888  int m_minSize;
889  bool m_minSizeHasBeenSet;
890 
891  int m_maxSize;
892  bool m_maxSizeHasBeenSet;
893 
894  LaunchTemplateSpecification m_launchTemplate;
895  bool m_launchTemplateHasBeenSet;
896 
897  Aws::Vector<InstanceDefinition> m_instanceDefinitions;
898  bool m_instanceDefinitionsHasBeenSet;
899 
900  GameServerGroupAutoScalingPolicy m_autoScalingPolicy;
901  bool m_autoScalingPolicyHasBeenSet;
902 
903  BalancingStrategy m_balancingStrategy;
904  bool m_balancingStrategyHasBeenSet;
905 
906  GameServerProtectionPolicy m_gameServerProtectionPolicy;
907  bool m_gameServerProtectionPolicyHasBeenSet;
908 
909  Aws::Vector<Aws::String> m_vpcSubnets;
910  bool m_vpcSubnetsHasBeenSet;
911 
912  Aws::Vector<Tag> m_tags;
913  bool m_tagsHasBeenSet;
914  };
915 
916 } // namespace Model
917 } // namespace GameLift
918 } // namespace Aws
CreateGameServerGroupRequest & WithRoleArn(const Aws::String &value)
CreateGameServerGroupRequest & WithGameServerProtectionPolicy(const GameServerProtectionPolicy &value)
const LaunchTemplateSpecification & GetLaunchTemplate() const
CreateGameServerGroupRequest & AddVpcSubnets(const char *value)
CreateGameServerGroupRequest & AddTags(const Tag &value)
const Aws::Vector< InstanceDefinition > & GetInstanceDefinitions() const
CreateGameServerGroupRequest & WithGameServerProtectionPolicy(GameServerProtectionPolicy &&value)
#define AWS_GAMELIFT_API
CreateGameServerGroupRequest & WithVpcSubnets(Aws::Vector< Aws::String > &&value)
void SetAutoScalingPolicy(GameServerGroupAutoScalingPolicy &&value)
CreateGameServerGroupRequest & WithBalancingStrategy(const BalancingStrategy &value)
void SetVpcSubnets(const Aws::Vector< Aws::String > &value)
CreateGameServerGroupRequest & AddInstanceDefinitions(InstanceDefinition &&value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
Definition: HttpTypes.h:53
void SetInstanceDefinitions(Aws::Vector< InstanceDefinition > &&value)
CreateGameServerGroupRequest & WithLaunchTemplate(const LaunchTemplateSpecification &value)
CreateGameServerGroupRequest & WithAutoScalingPolicy(const GameServerGroupAutoScalingPolicy &value)
CreateGameServerGroupRequest & AddVpcSubnets(Aws::String &&value)
CreateGameServerGroupRequest & WithTags(Aws::Vector< Tag > &&value)
CreateGameServerGroupRequest & WithInstanceDefinitions(const Aws::Vector< InstanceDefinition > &value)
void SetVpcSubnets(Aws::Vector< Aws::String > &&value)
void SetLaunchTemplate(LaunchTemplateSpecification &&value)
CreateGameServerGroupRequest & WithInstanceDefinitions(Aws::Vector< InstanceDefinition > &&value)
const GameServerGroupAutoScalingPolicy & GetAutoScalingPolicy() const
CreateGameServerGroupRequest & WithBalancingStrategy(BalancingStrategy &&value)
CreateGameServerGroupRequest & AddTags(Tag &&value)
CreateGameServerGroupRequest & WithMaxSize(int value)
void SetInstanceDefinitions(const Aws::Vector< InstanceDefinition > &value)
void SetLaunchTemplate(const LaunchTemplateSpecification &value)
CreateGameServerGroupRequest & WithLaunchTemplate(LaunchTemplateSpecification &&value)
CreateGameServerGroupRequest & WithGameServerGroupName(const char *value)
CreateGameServerGroupRequest & WithGameServerGroupName(Aws::String &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
CreateGameServerGroupRequest & AddVpcSubnets(const Aws::String &value)
void SetGameServerProtectionPolicy(GameServerProtectionPolicy &&value)
CreateGameServerGroupRequest & WithAutoScalingPolicy(GameServerGroupAutoScalingPolicy &&value)
CreateGameServerGroupRequest & WithTags(const Aws::Vector< Tag > &value)
CreateGameServerGroupRequest & AddInstanceDefinitions(const InstanceDefinition &value)
CreateGameServerGroupRequest & WithVpcSubnets(const Aws::Vector< Aws::String > &value)
CreateGameServerGroupRequest & WithGameServerGroupName(const Aws::String &value)
virtual const char * GetServiceRequestName() const override
void SetGameServerProtectionPolicy(const GameServerProtectionPolicy &value)
CreateGameServerGroupRequest & WithRoleArn(const char *value)
const GameServerProtectionPolicy & GetGameServerProtectionPolicy() const
void SetAutoScalingPolicy(const GameServerGroupAutoScalingPolicy &value)
CreateGameServerGroupRequest & WithMinSize(int value)
CreateGameServerGroupRequest & WithRoleArn(Aws::String &&value)
const Aws::Vector< Aws::String > & GetVpcSubnets() const