AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
CreatePlacementGroupRequest.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/ec2/EC2Request.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ec2/model/SpreadLevel.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12#include <aws/ec2/model/PlacementStrategy.h>
13#include <aws/ec2/model/TagSpecification.h>
14#include <utility>
15
16namespace Aws
17{
18namespace EC2
19{
20namespace Model
21{
22
26 {
27 public:
29
30 // Service request name is the Operation name which will send this request out,
31 // each operation should has unique request name, so that we can get operation's name from this request.
32 // Note: this is not true for response, multiple operations may have the same response name,
33 // so we can not get operation's name from response.
34 inline virtual const char* GetServiceRequestName() const override { return "CreatePlacementGroup"; }
35
36 AWS_EC2_API Aws::String SerializePayload() const override;
37
38 protected:
39 AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
40
41 public:
42
44
48 inline int GetPartitionCount() const{ return m_partitionCount; }
49 inline bool PartitionCountHasBeenSet() const { return m_partitionCountHasBeenSet; }
50 inline void SetPartitionCount(int value) { m_partitionCountHasBeenSet = true; m_partitionCount = value; }
51 inline CreatePlacementGroupRequest& WithPartitionCount(int value) { SetPartitionCount(value); return *this;}
53
55
58 inline const Aws::Vector<TagSpecification>& GetTagSpecifications() const{ return m_tagSpecifications; }
59 inline bool TagSpecificationsHasBeenSet() const { return m_tagSpecificationsHasBeenSet; }
60 inline void SetTagSpecifications(const Aws::Vector<TagSpecification>& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications = value; }
61 inline void SetTagSpecifications(Aws::Vector<TagSpecification>&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications = std::move(value); }
64 inline CreatePlacementGroupRequest& AddTagSpecifications(const TagSpecification& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications.push_back(value); return *this; }
65 inline CreatePlacementGroupRequest& AddTagSpecifications(TagSpecification&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications.push_back(std::move(value)); return *this; }
67
69
74 inline const SpreadLevel& GetSpreadLevel() const{ return m_spreadLevel; }
75 inline bool SpreadLevelHasBeenSet() const { return m_spreadLevelHasBeenSet; }
76 inline void SetSpreadLevel(const SpreadLevel& value) { m_spreadLevelHasBeenSet = true; m_spreadLevel = value; }
77 inline void SetSpreadLevel(SpreadLevel&& value) { m_spreadLevelHasBeenSet = true; m_spreadLevel = std::move(value); }
78 inline CreatePlacementGroupRequest& WithSpreadLevel(const SpreadLevel& value) { SetSpreadLevel(value); return *this;}
79 inline CreatePlacementGroupRequest& WithSpreadLevel(SpreadLevel&& value) { SetSpreadLevel(std::move(value)); return *this;}
81
83
89 inline bool GetDryRun() const{ return m_dryRun; }
90 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
91 inline void SetDryRun(bool value) { m_dryRunHasBeenSet = true; m_dryRun = value; }
92 inline CreatePlacementGroupRequest& WithDryRun(bool value) { SetDryRun(value); return *this;}
94
96
100 inline const Aws::String& GetGroupName() const{ return m_groupName; }
101 inline bool GroupNameHasBeenSet() const { return m_groupNameHasBeenSet; }
102 inline void SetGroupName(const Aws::String& value) { m_groupNameHasBeenSet = true; m_groupName = value; }
103 inline void SetGroupName(Aws::String&& value) { m_groupNameHasBeenSet = true; m_groupName = std::move(value); }
104 inline void SetGroupName(const char* value) { m_groupNameHasBeenSet = true; m_groupName.assign(value); }
105 inline CreatePlacementGroupRequest& WithGroupName(const Aws::String& value) { SetGroupName(value); return *this;}
106 inline CreatePlacementGroupRequest& WithGroupName(Aws::String&& value) { SetGroupName(std::move(value)); return *this;}
107 inline CreatePlacementGroupRequest& WithGroupName(const char* value) { SetGroupName(value); return *this;}
109
111
114 inline const PlacementStrategy& GetStrategy() const{ return m_strategy; }
115 inline bool StrategyHasBeenSet() const { return m_strategyHasBeenSet; }
116 inline void SetStrategy(const PlacementStrategy& value) { m_strategyHasBeenSet = true; m_strategy = value; }
117 inline void SetStrategy(PlacementStrategy&& value) { m_strategyHasBeenSet = true; m_strategy = std::move(value); }
118 inline CreatePlacementGroupRequest& WithStrategy(const PlacementStrategy& value) { SetStrategy(value); return *this;}
119 inline CreatePlacementGroupRequest& WithStrategy(PlacementStrategy&& value) { SetStrategy(std::move(value)); return *this;}
121 private:
122
123 int m_partitionCount;
124 bool m_partitionCountHasBeenSet = false;
125
126 Aws::Vector<TagSpecification> m_tagSpecifications;
127 bool m_tagSpecificationsHasBeenSet = false;
128
129 SpreadLevel m_spreadLevel;
130 bool m_spreadLevelHasBeenSet = false;
131
132 bool m_dryRun;
133 bool m_dryRunHasBeenSet = false;
134
135 Aws::String m_groupName;
136 bool m_groupNameHasBeenSet = false;
137
138 PlacementStrategy m_strategy;
139 bool m_strategyHasBeenSet = false;
140 };
141
142} // namespace Model
143} // namespace EC2
144} // namespace Aws
CreatePlacementGroupRequest & WithGroupName(Aws::String &&value)
CreatePlacementGroupRequest & WithTagSpecifications(Aws::Vector< TagSpecification > &&value)
CreatePlacementGroupRequest & WithStrategy(const PlacementStrategy &value)
AWS_EC2_API Aws::String SerializePayload() const override
CreatePlacementGroupRequest & WithStrategy(PlacementStrategy &&value)
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
virtual const char * GetServiceRequestName() const override
CreatePlacementGroupRequest & AddTagSpecifications(const TagSpecification &value)
CreatePlacementGroupRequest & WithPartitionCount(int value)
CreatePlacementGroupRequest & WithTagSpecifications(const Aws::Vector< TagSpecification > &value)
CreatePlacementGroupRequest & WithGroupName(const Aws::String &value)
const Aws::Vector< TagSpecification > & GetTagSpecifications() const
CreatePlacementGroupRequest & WithGroupName(const char *value)
CreatePlacementGroupRequest & WithSpreadLevel(const SpreadLevel &value)
void SetTagSpecifications(Aws::Vector< TagSpecification > &&value)
void SetTagSpecifications(const Aws::Vector< TagSpecification > &value)
CreatePlacementGroupRequest & WithDryRun(bool value)
CreatePlacementGroupRequest & WithSpreadLevel(SpreadLevel &&value)
CreatePlacementGroupRequest & AddTagSpecifications(TagSpecification &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector