AWS SDK for C++

AWS SDK for C++ Version 1.11.901

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
85 inline const Aws::String& GetHostId() const { return m_hostId; }
86 inline bool HostIdHasBeenSet() const { return m_hostIdHasBeenSet; }
87 template <typename HostIdT = Aws::String>
88 void SetHostId(HostIdT&& value) {
89 m_hostIdHasBeenSet = true;
90 m_hostId = std::forward<HostIdT>(value);
91 }
92 template <typename HostIdT = Aws::String>
93 Placement& WithHostId(HostIdT&& value) {
94 SetHostId(std::forward<HostIdT>(value));
95 return *this;
96 }
98
100
105 inline const Aws::String& GetHostResourceGroupArn() const { return m_hostResourceGroupArn; }
106 inline bool HostResourceGroupArnHasBeenSet() const { return m_hostResourceGroupArnHasBeenSet; }
107 template <typename HostResourceGroupArnT = Aws::String>
108 void SetHostResourceGroupArn(HostResourceGroupArnT&& value) {
109 m_hostResourceGroupArnHasBeenSet = true;
110 m_hostResourceGroupArn = std::forward<HostResourceGroupArnT>(value);
111 }
112 template <typename HostResourceGroupArnT = Aws::String>
113 Placement& WithHostResourceGroupArn(HostResourceGroupArnT&& value) {
114 SetHostResourceGroupArn(std::forward<HostResourceGroupArnT>(value));
115 return *this;
116 }
118 private:
119 Aws::String m_availabilityZone;
120
122
123 Aws::String m_hostId;
124
125 Aws::String m_hostResourceGroupArn;
126 bool m_availabilityZoneHasBeenSet = false;
127 bool m_tenancyHasBeenSet = false;
128 bool m_hostIdHasBeenSet = false;
129 bool m_hostResourceGroupArnHasBeenSet = false;
130};
131
132} // namespace Model
133} // namespace imagebuilder
134} // namespace Aws
const Aws::String & GetHostId() const
Definition Placement.h:85
const Aws::String & GetHostResourceGroupArn() const
Definition Placement.h:105
AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const
Placement & WithTenancy(TenancyType value)
Definition Placement.h:74
void SetHostId(HostIdT &&value)
Definition Placement.h:88
void SetHostResourceGroupArn(HostResourceGroupArnT &&value)
Definition Placement.h:108
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:93
Placement & WithHostResourceGroupArn(HostResourceGroupArnT &&value)
Definition Placement.h:113
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