AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
DevicePool.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/devicefarm/DeviceFarm_EXPORTS.h>
10#include <aws/devicefarm/model/DevicePoolType.h>
11#include <aws/devicefarm/model/Rule.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace DeviceFarm {
23namespace Model {
24
31 public:
32 AWS_DEVICEFARM_API DevicePool() = default;
33 AWS_DEVICEFARM_API DevicePool(Aws::Utils::Json::JsonView jsonValue);
34 AWS_DEVICEFARM_API DevicePool& operator=(Aws::Utils::Json::JsonView jsonValue);
35 AWS_DEVICEFARM_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
41 inline const Aws::String& GetArn() const { return m_arn; }
42 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
43 template <typename ArnT = Aws::String>
44 void SetArn(ArnT&& value) {
45 m_arnHasBeenSet = true;
46 m_arn = std::forward<ArnT>(value);
47 }
48 template <typename ArnT = Aws::String>
49 DevicePool& WithArn(ArnT&& value) {
50 SetArn(std::forward<ArnT>(value));
51 return *this;
52 }
54
56
59 inline const Aws::String& GetName() const { return m_name; }
60 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
61 template <typename NameT = Aws::String>
62 void SetName(NameT&& value) {
63 m_nameHasBeenSet = true;
64 m_name = std::forward<NameT>(value);
65 }
66 template <typename NameT = Aws::String>
67 DevicePool& WithName(NameT&& value) {
68 SetName(std::forward<NameT>(value));
69 return *this;
70 }
72
74
77 inline const Aws::String& GetDescription() const { return m_description; }
78 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
79 template <typename DescriptionT = Aws::String>
80 void SetDescription(DescriptionT&& value) {
81 m_descriptionHasBeenSet = true;
82 m_description = std::forward<DescriptionT>(value);
83 }
84 template <typename DescriptionT = Aws::String>
85 DevicePool& WithDescription(DescriptionT&& value) {
86 SetDescription(std::forward<DescriptionT>(value));
87 return *this;
88 }
90
92
98 inline DevicePoolType GetType() const { return m_type; }
99 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
100 inline void SetType(DevicePoolType value) {
101 m_typeHasBeenSet = true;
102 m_type = value;
103 }
105 SetType(value);
106 return *this;
107 }
109
111
114 inline const Aws::Vector<Rule>& GetRules() const { return m_rules; }
115 inline bool RulesHasBeenSet() const { return m_rulesHasBeenSet; }
116 template <typename RulesT = Aws::Vector<Rule>>
117 void SetRules(RulesT&& value) {
118 m_rulesHasBeenSet = true;
119 m_rules = std::forward<RulesT>(value);
120 }
121 template <typename RulesT = Aws::Vector<Rule>>
122 DevicePool& WithRules(RulesT&& value) {
123 SetRules(std::forward<RulesT>(value));
124 return *this;
125 }
126 template <typename RulesT = Rule>
127 DevicePool& AddRules(RulesT&& value) {
128 m_rulesHasBeenSet = true;
129 m_rules.emplace_back(std::forward<RulesT>(value));
130 return *this;
131 }
133
135
143 inline int GetMaxDevices() const { return m_maxDevices; }
144 inline bool MaxDevicesHasBeenSet() const { return m_maxDevicesHasBeenSet; }
145 inline void SetMaxDevices(int value) {
146 m_maxDevicesHasBeenSet = true;
147 m_maxDevices = value;
148 }
149 inline DevicePool& WithMaxDevices(int value) {
150 SetMaxDevices(value);
151 return *this;
152 }
154 private:
155 Aws::String m_arn;
156
157 Aws::String m_name;
158
159 Aws::String m_description;
160
162
163 Aws::Vector<Rule> m_rules;
164
165 int m_maxDevices{0};
166 bool m_arnHasBeenSet = false;
167 bool m_nameHasBeenSet = false;
168 bool m_descriptionHasBeenSet = false;
169 bool m_typeHasBeenSet = false;
170 bool m_rulesHasBeenSet = false;
171 bool m_maxDevicesHasBeenSet = false;
172};
173
174} // namespace Model
175} // namespace DeviceFarm
176} // namespace Aws
DevicePool & WithType(DevicePoolType value)
Definition DevicePool.h:104
const Aws::String & GetDescription() const
Definition DevicePool.h:77
DevicePool & WithRules(RulesT &&value)
Definition DevicePool.h:122
DevicePool & WithName(NameT &&value)
Definition DevicePool.h:67
AWS_DEVICEFARM_API DevicePool(Aws::Utils::Json::JsonView jsonValue)
DevicePool & WithMaxDevices(int value)
Definition DevicePool.h:149
DevicePool & WithDescription(DescriptionT &&value)
Definition DevicePool.h:85
const Aws::String & GetArn() const
Definition DevicePool.h:41
const Aws::String & GetName() const
Definition DevicePool.h:59
void SetDescription(DescriptionT &&value)
Definition DevicePool.h:80
DevicePoolType GetType() const
Definition DevicePool.h:98
void SetRules(RulesT &&value)
Definition DevicePool.h:117
AWS_DEVICEFARM_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_DEVICEFARM_API DevicePool & operator=(Aws::Utils::Json::JsonView jsonValue)
DevicePool & AddRules(RulesT &&value)
Definition DevicePool.h:127
const Aws::Vector< Rule > & GetRules() const
Definition DevicePool.h:114
DevicePool & WithArn(ArnT &&value)
Definition DevicePool.h:49
AWS_DEVICEFARM_API DevicePool()=default
void SetType(DevicePoolType value)
Definition DevicePool.h:100
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue