AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
Placement.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/ec2/model/Tenancy.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Xml
18{
19 class XmlNode;
20} // namespace Xml
21} // namespace Utils
22namespace EC2
23{
24namespace Model
25{
26
33 {
34 public:
35 AWS_EC2_API Placement() = default;
36 AWS_EC2_API Placement(const Aws::Utils::Xml::XmlNode& xmlNode);
37 AWS_EC2_API Placement& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
38
39 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
40 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
41
42
44
51 inline const Aws::String& GetAffinity() const { return m_affinity; }
52 inline bool AffinityHasBeenSet() const { return m_affinityHasBeenSet; }
53 template<typename AffinityT = Aws::String>
54 void SetAffinity(AffinityT&& value) { m_affinityHasBeenSet = true; m_affinity = std::forward<AffinityT>(value); }
55 template<typename AffinityT = Aws::String>
56 Placement& WithAffinity(AffinityT&& value) { SetAffinity(std::forward<AffinityT>(value)); return *this;}
58
60
64 inline const Aws::String& GetGroupName() const { return m_groupName; }
65 inline bool GroupNameHasBeenSet() const { return m_groupNameHasBeenSet; }
66 template<typename GroupNameT = Aws::String>
67 void SetGroupName(GroupNameT&& value) { m_groupNameHasBeenSet = true; m_groupName = std::forward<GroupNameT>(value); }
68 template<typename GroupNameT = Aws::String>
69 Placement& WithGroupName(GroupNameT&& value) { SetGroupName(std::forward<GroupNameT>(value)); return *this;}
71
73
79 inline int GetPartitionNumber() const { return m_partitionNumber; }
80 inline bool PartitionNumberHasBeenSet() const { return m_partitionNumberHasBeenSet; }
81 inline void SetPartitionNumber(int value) { m_partitionNumberHasBeenSet = true; m_partitionNumber = value; }
82 inline Placement& WithPartitionNumber(int value) { SetPartitionNumber(value); return *this;}
84
86
93 inline const Aws::String& GetHostId() const { return m_hostId; }
94 inline bool HostIdHasBeenSet() const { return m_hostIdHasBeenSet; }
95 template<typename HostIdT = Aws::String>
96 void SetHostId(HostIdT&& value) { m_hostIdHasBeenSet = true; m_hostId = std::forward<HostIdT>(value); }
97 template<typename HostIdT = Aws::String>
98 Placement& WithHostId(HostIdT&& value) { SetHostId(std::forward<HostIdT>(value)); return *this;}
100
102
112 inline Tenancy GetTenancy() const { return m_tenancy; }
113 inline bool TenancyHasBeenSet() const { return m_tenancyHasBeenSet; }
114 inline void SetTenancy(Tenancy value) { m_tenancyHasBeenSet = true; m_tenancy = value; }
115 inline Placement& WithTenancy(Tenancy value) { SetTenancy(value); return *this;}
117
119
122 inline const Aws::String& GetSpreadDomain() const { return m_spreadDomain; }
123 inline bool SpreadDomainHasBeenSet() const { return m_spreadDomainHasBeenSet; }
124 template<typename SpreadDomainT = Aws::String>
125 void SetSpreadDomain(SpreadDomainT&& value) { m_spreadDomainHasBeenSet = true; m_spreadDomain = std::forward<SpreadDomainT>(value); }
126 template<typename SpreadDomainT = Aws::String>
127 Placement& WithSpreadDomain(SpreadDomainT&& value) { SetSpreadDomain(std::forward<SpreadDomainT>(value)); return *this;}
129
131
137 inline const Aws::String& GetHostResourceGroupArn() const { return m_hostResourceGroupArn; }
138 inline bool HostResourceGroupArnHasBeenSet() const { return m_hostResourceGroupArnHasBeenSet; }
139 template<typename HostResourceGroupArnT = Aws::String>
140 void SetHostResourceGroupArn(HostResourceGroupArnT&& value) { m_hostResourceGroupArnHasBeenSet = true; m_hostResourceGroupArn = std::forward<HostResourceGroupArnT>(value); }
141 template<typename HostResourceGroupArnT = Aws::String>
142 Placement& WithHostResourceGroupArn(HostResourceGroupArnT&& value) { SetHostResourceGroupArn(std::forward<HostResourceGroupArnT>(value)); return *this;}
144
146
150 inline const Aws::String& GetGroupId() const { return m_groupId; }
151 inline bool GroupIdHasBeenSet() const { return m_groupIdHasBeenSet; }
152 template<typename GroupIdT = Aws::String>
153 void SetGroupId(GroupIdT&& value) { m_groupIdHasBeenSet = true; m_groupId = std::forward<GroupIdT>(value); }
154 template<typename GroupIdT = Aws::String>
155 Placement& WithGroupId(GroupIdT&& value) { SetGroupId(std::forward<GroupIdT>(value)); return *this;}
157
159
165 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
166 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
167 template<typename AvailabilityZoneT = Aws::String>
168 void SetAvailabilityZone(AvailabilityZoneT&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = std::forward<AvailabilityZoneT>(value); }
169 template<typename AvailabilityZoneT = Aws::String>
170 Placement& WithAvailabilityZone(AvailabilityZoneT&& value) { SetAvailabilityZone(std::forward<AvailabilityZoneT>(value)); return *this;}
172 private:
173
174 Aws::String m_affinity;
175 bool m_affinityHasBeenSet = false;
176
177 Aws::String m_groupName;
178 bool m_groupNameHasBeenSet = false;
179
180 int m_partitionNumber{0};
181 bool m_partitionNumberHasBeenSet = false;
182
183 Aws::String m_hostId;
184 bool m_hostIdHasBeenSet = false;
185
186 Tenancy m_tenancy{Tenancy::NOT_SET};
187 bool m_tenancyHasBeenSet = false;
188
189 Aws::String m_spreadDomain;
190 bool m_spreadDomainHasBeenSet = false;
191
192 Aws::String m_hostResourceGroupArn;
193 bool m_hostResourceGroupArnHasBeenSet = false;
194
195 Aws::String m_groupId;
196 bool m_groupIdHasBeenSet = false;
197
198 Aws::String m_availabilityZone;
199 bool m_availabilityZoneHasBeenSet = false;
200 };
201
202} // namespace Model
203} // namespace EC2
204} // namespace Aws
const Aws::String & GetSpreadDomain() const
Definition Placement.h:122
bool HostResourceGroupArnHasBeenSet() const
Definition Placement.h:138
const Aws::String & GetAffinity() const
Definition Placement.h:51
bool PartitionNumberHasBeenSet() const
Definition Placement.h:80
void SetSpreadDomain(SpreadDomainT &&value)
Definition Placement.h:125
bool TenancyHasBeenSet() const
Definition Placement.h:113
Placement & WithGroupId(GroupIdT &&value)
Definition Placement.h:155
AWS_EC2_API Placement()=default
void SetTenancy(Tenancy value)
Definition Placement.h:114
void SetPartitionNumber(int value)
Definition Placement.h:81
Placement & WithHostResourceGroupArn(HostResourceGroupArnT &&value)
Definition Placement.h:142
void SetGroupId(GroupIdT &&value)
Definition Placement.h:153
Placement & WithGroupName(GroupNameT &&value)
Definition Placement.h:69
const Aws::String & GetHostResourceGroupArn() const
Definition Placement.h:137
AWS_EC2_API Placement & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
Placement & WithHostId(HostIdT &&value)
Definition Placement.h:98
AWS_EC2_API Placement(const Aws::Utils::Xml::XmlNode &xmlNode)
bool SpreadDomainHasBeenSet() const
Definition Placement.h:123
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
Placement & WithAffinity(AffinityT &&value)
Definition Placement.h:56
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
const Aws::String & GetAvailabilityZone() const
Definition Placement.h:165
void SetHostId(HostIdT &&value)
Definition Placement.h:96
Placement & WithSpreadDomain(SpreadDomainT &&value)
Definition Placement.h:127
int GetPartitionNumber() const
Definition Placement.h:79
bool AvailabilityZoneHasBeenSet() const
Definition Placement.h:166
const Aws::String & GetGroupId() const
Definition Placement.h:150
const Aws::String & GetGroupName() const
Definition Placement.h:64
bool AffinityHasBeenSet() const
Definition Placement.h:52
void SetGroupName(GroupNameT &&value)
Definition Placement.h:67
bool GroupIdHasBeenSet() const
Definition Placement.h:151
void SetHostResourceGroupArn(HostResourceGroupArnT &&value)
Definition Placement.h:140
Placement & WithTenancy(Tenancy value)
Definition Placement.h:115
void SetAffinity(AffinityT &&value)
Definition Placement.h:54
const Aws::String & GetHostId() const
Definition Placement.h:93
bool GroupNameHasBeenSet() const
Definition Placement.h:65
Placement & WithAvailabilityZone(AvailabilityZoneT &&value)
Definition Placement.h:170
Placement & WithPartitionNumber(int value)
Definition Placement.h:82
bool HostIdHasBeenSet() const
Definition Placement.h:94
Tenancy GetTenancy() const
Definition Placement.h:112
void SetAvailabilityZone(AvailabilityZoneT &&value)
Definition Placement.h:168
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream