AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
Placement.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/imagebuilder/Imagebuilder_EXPORTS.h>
9#include <aws/imagebuilder/model/TenancyType.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Json {
16class JsonValue;
17class JsonView;
18} // namespace Json
19} // namespace Utils
20namespace imagebuilder {
21namespace Model {
22
33class Placement {
34 public:
35 AWS_IMAGEBUILDER_API Placement() = default;
36 AWS_IMAGEBUILDER_API Placement(Aws::Utils::Json::JsonView jsonValue);
37 AWS_IMAGEBUILDER_API Placement& operator=(Aws::Utils::Json::JsonView jsonValue);
38 AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const;
39
41
44 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
45 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
46 template <typename AvailabilityZoneT = Aws::String>
47 void SetAvailabilityZone(AvailabilityZoneT&& value) {
48 m_availabilityZoneHasBeenSet = true;
49 m_availabilityZone = std::forward<AvailabilityZoneT>(value);
50 }
51 template <typename AvailabilityZoneT = Aws::String>
52 Placement& WithAvailabilityZone(AvailabilityZoneT&& value) {
53 SetAvailabilityZone(std::forward<AvailabilityZoneT>(value));
54 return *this;
55 }
57
59
68 inline TenancyType GetTenancy() const { return m_tenancy; }
69 inline bool TenancyHasBeenSet() const { return m_tenancyHasBeenSet; }
70 inline void SetTenancy(TenancyType value) {
71 m_tenancyHasBeenSet = true;
72 m_tenancy = value;
73 }
75 SetTenancy(value);
76 return *this;
77 }
79
81
87 inline const Aws::String& GetHostId() const { return m_hostId; }
88 inline bool HostIdHasBeenSet() const { return m_hostIdHasBeenSet; }
89 template <typename HostIdT = Aws::String>
90 void SetHostId(HostIdT&& value) {
91 m_hostIdHasBeenSet = true;
92 m_hostId = std::forward<HostIdT>(value);
93 }
94 template <typename HostIdT = Aws::String>
95 Placement& WithHostId(HostIdT&& value) {
96 SetHostId(std::forward<HostIdT>(value));
97 return *this;
98 }
100
102
108 inline const Aws::String& GetHostResourceGroupArn() const { return m_hostResourceGroupArn; }
109 inline bool HostResourceGroupArnHasBeenSet() const { return m_hostResourceGroupArnHasBeenSet; }
110 template <typename HostResourceGroupArnT = Aws::String>
111 void SetHostResourceGroupArn(HostResourceGroupArnT&& value) {
112 m_hostResourceGroupArnHasBeenSet = true;
113 m_hostResourceGroupArn = std::forward<HostResourceGroupArnT>(value);
114 }
115 template <typename HostResourceGroupArnT = Aws::String>
116 Placement& WithHostResourceGroupArn(HostResourceGroupArnT&& value) {
117 SetHostResourceGroupArn(std::forward<HostResourceGroupArnT>(value));
118 return *this;
119 }
121 private:
122 Aws::String m_availabilityZone;
123
125
126 Aws::String m_hostId;
127
128 Aws::String m_hostResourceGroupArn;
129 bool m_availabilityZoneHasBeenSet = false;
130 bool m_tenancyHasBeenSet = false;
131 bool m_hostIdHasBeenSet = false;
132 bool m_hostResourceGroupArnHasBeenSet = false;
133};
134
135} // namespace Model
136} // namespace imagebuilder
137} // namespace Aws
const Aws::String & GetHostId() const
Definition Placement.h:87
const Aws::String & GetHostResourceGroupArn() const
Definition Placement.h:108
AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const
Placement & WithTenancy(TenancyType value)
Definition Placement.h:74
void SetHostId(HostIdT &&value)
Definition Placement.h:90
void SetHostResourceGroupArn(HostResourceGroupArnT &&value)
Definition Placement.h:111
const Aws::String & GetAvailabilityZone() const
Definition Placement.h:44
Placement & WithAvailabilityZone(AvailabilityZoneT &&value)
Definition Placement.h:52
AWS_IMAGEBUILDER_API Placement & operator=(Aws::Utils::Json::JsonView jsonValue)
Placement & WithHostId(HostIdT &&value)
Definition Placement.h:95
Placement & WithHostResourceGroupArn(HostResourceGroupArnT &&value)
Definition Placement.h:116
void SetAvailabilityZone(AvailabilityZoneT &&value)
Definition Placement.h:47
AWS_IMAGEBUILDER_API Placement()=default
void SetTenancy(TenancyType value)
Definition Placement.h:70
AWS_IMAGEBUILDER_API Placement(Aws::Utils::Json::JsonView jsonValue)
TenancyType GetTenancy() const
Definition Placement.h:68
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue