AWS SDK for C++  0.14.3
AWS SDK for C++
DevicePool.h
Go to the documentation of this file.
1 /*
2 * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License").
5 * You may not use this file except in compliance with the License.
6 * A copy of the License is located at
7 *
8 * http://aws.amazon.com/apache2.0
9 *
10 * or in the "license" file accompanying this file. This file is distributed
11 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12 * express or implied. See the License for the specific language governing
13 * permissions and limitations under the License.
14 */
15 #pragma once
21 
22 namespace Aws
23 {
24 namespace Utils
25 {
26 namespace Json
27 {
28  class JsonValue;
29 } // namespace Json
30 } // namespace Utils
31 namespace DeviceFarm
32 {
33 namespace Model
34 {
35 
40  {
41  public:
42  DevicePool();
43  DevicePool(const Aws::Utils::Json::JsonValue& jsonValue);
44  DevicePool& operator=(const Aws::Utils::Json::JsonValue& jsonValue);
45  Aws::Utils::Json::JsonValue Jsonize() const;
46 
50  inline const Aws::String& GetArn() const{ return m_arn; }
51 
55  inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; }
56 
60  inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = value; }
61 
65  inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); }
66 
70  inline DevicePool& WithArn(const Aws::String& value) { SetArn(value); return *this;}
71 
75  inline DevicePool& WithArn(Aws::String&& value) { SetArn(value); return *this;}
76 
80  inline DevicePool& WithArn(const char* value) { SetArn(value); return *this;}
81 
85  inline const Aws::String& GetName() const{ return m_name; }
86 
90  inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
91 
95  inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = value; }
96 
100  inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
101 
105  inline DevicePool& WithName(const Aws::String& value) { SetName(value); return *this;}
106 
110  inline DevicePool& WithName(Aws::String&& value) { SetName(value); return *this;}
111 
115  inline DevicePool& WithName(const char* value) { SetName(value); return *this;}
116 
120  inline const Aws::String& GetDescription() const{ return m_description; }
121 
125  inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; }
126 
130  inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = value; }
131 
135  inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); }
136 
140  inline DevicePool& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
141 
145  inline DevicePool& WithDescription(Aws::String&& value) { SetDescription(value); return *this;}
146 
150  inline DevicePool& WithDescription(const char* value) { SetDescription(value); return *this;}
151 
158  inline const DevicePoolType& GetType() const{ return m_type; }
159 
166  inline void SetType(const DevicePoolType& value) { m_typeHasBeenSet = true; m_type = value; }
167 
174  inline void SetType(DevicePoolType&& value) { m_typeHasBeenSet = true; m_type = value; }
175 
182  inline DevicePool& WithType(const DevicePoolType& value) { SetType(value); return *this;}
183 
190  inline DevicePool& WithType(DevicePoolType&& value) { SetType(value); return *this;}
191 
195  inline const Aws::Vector<Rule>& GetRules() const{ return m_rules; }
196 
200  inline void SetRules(const Aws::Vector<Rule>& value) { m_rulesHasBeenSet = true; m_rules = value; }
201 
205  inline void SetRules(Aws::Vector<Rule>&& value) { m_rulesHasBeenSet = true; m_rules = value; }
206 
210  inline DevicePool& WithRules(const Aws::Vector<Rule>& value) { SetRules(value); return *this;}
211 
215  inline DevicePool& WithRules(Aws::Vector<Rule>&& value) { SetRules(value); return *this;}
216 
220  inline DevicePool& AddRules(const Rule& value) { m_rulesHasBeenSet = true; m_rules.push_back(value); return *this; }
221 
225  inline DevicePool& AddRules(Rule&& value) { m_rulesHasBeenSet = true; m_rules.push_back(value); return *this; }
226 
227  private:
228  Aws::String m_arn;
229  bool m_arnHasBeenSet;
230  Aws::String m_name;
231  bool m_nameHasBeenSet;
232  Aws::String m_description;
233  bool m_descriptionHasBeenSet;
234  DevicePoolType m_type;
235  bool m_typeHasBeenSet;
236  Aws::Vector<Rule> m_rules;
237  bool m_rulesHasBeenSet;
238  };
239 
240 } // namespace Model
241 } // namespace DeviceFarm
242 } // namespace Aws
#define AWS_DEVICEFARM_API
void SetDescription(Aws::String &&value)
Definition: DevicePool.h:130
void SetArn(Aws::String &&value)
Definition: DevicePool.h:60
const Aws::String & GetDescription() const
Definition: DevicePool.h:120
DevicePool & WithArn(Aws::String &&value)
Definition: DevicePool.h:75
void SetDescription(const char *value)
Definition: DevicePool.h:135
DevicePool & WithDescription(const Aws::String &value)
Definition: DevicePool.h:140
void SetRules(const Aws::Vector< Rule > &value)
Definition: DevicePool.h:200
DevicePool & WithType(DevicePoolType &&value)
Definition: DevicePool.h:190
void SetDescription(const Aws::String &value)
Definition: DevicePool.h:125
DevicePool & WithArn(const char *value)
Definition: DevicePool.h:80
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
void SetName(const Aws::String &value)
Definition: DevicePool.h:90
DevicePool & WithRules(const Aws::Vector< Rule > &value)
Definition: DevicePool.h:210
const DevicePoolType & GetType() const
Definition: DevicePool.h:158
void SetArn(const char *value)
Definition: DevicePool.h:65
void SetType(DevicePoolType &&value)
Definition: DevicePool.h:174
DevicePool & WithDescription(Aws::String &&value)
Definition: DevicePool.h:145
DevicePool & WithDescription(const char *value)
Definition: DevicePool.h:150
const Aws::Vector< Rule > & GetRules() const
Definition: DevicePool.h:195
DevicePool & AddRules(const Rule &value)
Definition: DevicePool.h:220
DevicePool & WithName(const char *value)
Definition: DevicePool.h:115
DevicePool & WithRules(Aws::Vector< Rule > &&value)
Definition: DevicePool.h:215
DevicePool & WithArn(const Aws::String &value)
Definition: DevicePool.h:70
DevicePool & WithName(Aws::String &&value)
Definition: DevicePool.h:110
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
void SetName(const char *value)
Definition: DevicePool.h:100
DevicePool & WithName(const Aws::String &value)
Definition: DevicePool.h:105
DevicePool & WithType(const DevicePoolType &value)
Definition: DevicePool.h:182
void SetRules(Aws::Vector< Rule > &&value)
Definition: DevicePool.h:205
void SetName(Aws::String &&value)
Definition: DevicePool.h:95
DevicePool & AddRules(Rule &&value)
Definition: DevicePool.h:225
const Aws::String & GetName() const
Definition: DevicePool.h:85
void SetType(const DevicePoolType &value)
Definition: DevicePool.h:166
const Aws::String & GetArn() const
Definition: DevicePool.h:50
JSON (JavaScript Object Notation).
void SetArn(const Aws::String &value)
Definition: DevicePool.h:55