AWS SDK for C++  0.12.9
AWS SDK for C++
Host.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
16 #include <aws/ec2/EC2_EXPORTS.h>
25 
26 namespace Aws
27 {
28 namespace Utils
29 {
30 namespace Xml
31 {
32  class XmlNode;
33 } // namespace Xml
34 } // namespace Utils
35 namespace EC2
36 {
37 namespace Model
38 {
39 
44  {
45  public:
46  Host();
47  Host(const Aws::Utils::Xml::XmlNode& xmlNode);
48  Host& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
49 
50  void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
51  void OutputToStream(Aws::OStream& oStream, const char* location) const;
52 
56  inline const Aws::String& GetHostId() const{ return m_hostId; }
57 
61  inline void SetHostId(const Aws::String& value) { m_hostIdHasBeenSet = true; m_hostId = value; }
62 
66  inline void SetHostId(Aws::String&& value) { m_hostIdHasBeenSet = true; m_hostId = value; }
67 
71  inline void SetHostId(const char* value) { m_hostIdHasBeenSet = true; m_hostId.assign(value); }
72 
76  inline Host& WithHostId(const Aws::String& value) { SetHostId(value); return *this;}
77 
81  inline Host& WithHostId(Aws::String&& value) { SetHostId(value); return *this;}
82 
86  inline Host& WithHostId(const char* value) { SetHostId(value); return *this;}
87 
91  inline const AutoPlacement& GetAutoPlacement() const{ return m_autoPlacement; }
92 
96  inline void SetAutoPlacement(const AutoPlacement& value) { m_autoPlacementHasBeenSet = true; m_autoPlacement = value; }
97 
101  inline void SetAutoPlacement(AutoPlacement&& value) { m_autoPlacementHasBeenSet = true; m_autoPlacement = value; }
102 
106  inline Host& WithAutoPlacement(const AutoPlacement& value) { SetAutoPlacement(value); return *this;}
107 
111  inline Host& WithAutoPlacement(AutoPlacement&& value) { SetAutoPlacement(value); return *this;}
112 
117  inline const Aws::String& GetHostReservationId() const{ return m_hostReservationId; }
118 
123  inline void SetHostReservationId(const Aws::String& value) { m_hostReservationIdHasBeenSet = true; m_hostReservationId = value; }
124 
129  inline void SetHostReservationId(Aws::String&& value) { m_hostReservationIdHasBeenSet = true; m_hostReservationId = value; }
130 
135  inline void SetHostReservationId(const char* value) { m_hostReservationIdHasBeenSet = true; m_hostReservationId.assign(value); }
136 
141  inline Host& WithHostReservationId(const Aws::String& value) { SetHostReservationId(value); return *this;}
142 
147  inline Host& WithHostReservationId(Aws::String&& value) { SetHostReservationId(value); return *this;}
148 
153  inline Host& WithHostReservationId(const char* value) { SetHostReservationId(value); return *this;}
154 
162  inline const Aws::String& GetClientToken() const{ return m_clientToken; }
163 
171  inline void SetClientToken(const Aws::String& value) { m_clientTokenHasBeenSet = true; m_clientToken = value; }
172 
180  inline void SetClientToken(Aws::String&& value) { m_clientTokenHasBeenSet = true; m_clientToken = value; }
181 
189  inline void SetClientToken(const char* value) { m_clientTokenHasBeenSet = true; m_clientToken.assign(value); }
190 
198  inline Host& WithClientToken(const Aws::String& value) { SetClientToken(value); return *this;}
199 
207  inline Host& WithClientToken(Aws::String&& value) { SetClientToken(value); return *this;}
208 
216  inline Host& WithClientToken(const char* value) { SetClientToken(value); return *this;}
217 
221  inline const HostProperties& GetHostProperties() const{ return m_hostProperties; }
222 
226  inline void SetHostProperties(const HostProperties& value) { m_hostPropertiesHasBeenSet = true; m_hostProperties = value; }
227 
231  inline void SetHostProperties(HostProperties&& value) { m_hostPropertiesHasBeenSet = true; m_hostProperties = value; }
232 
236  inline Host& WithHostProperties(const HostProperties& value) { SetHostProperties(value); return *this;}
237 
241  inline Host& WithHostProperties(HostProperties&& value) { SetHostProperties(value); return *this;}
242 
246  inline const AllocationState& GetState() const{ return m_state; }
247 
251  inline void SetState(const AllocationState& value) { m_stateHasBeenSet = true; m_state = value; }
252 
256  inline void SetState(AllocationState&& value) { m_stateHasBeenSet = true; m_state = value; }
257 
261  inline Host& WithState(const AllocationState& value) { SetState(value); return *this;}
262 
266  inline Host& WithState(AllocationState&& value) { SetState(value); return *this;}
267 
271  inline const Aws::String& GetAvailabilityZone() const{ return m_availabilityZone; }
272 
276  inline void SetAvailabilityZone(const Aws::String& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = value; }
277 
281  inline void SetAvailabilityZone(Aws::String&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = value; }
282 
286  inline void SetAvailabilityZone(const char* value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone.assign(value); }
287 
291  inline Host& WithAvailabilityZone(const Aws::String& value) { SetAvailabilityZone(value); return *this;}
292 
296  inline Host& WithAvailabilityZone(Aws::String&& value) { SetAvailabilityZone(value); return *this;}
297 
301  inline Host& WithAvailabilityZone(const char* value) { SetAvailabilityZone(value); return *this;}
302 
307  inline const Aws::Vector<HostInstance>& GetInstances() const{ return m_instances; }
308 
313  inline void SetInstances(const Aws::Vector<HostInstance>& value) { m_instancesHasBeenSet = true; m_instances = value; }
314 
319  inline void SetInstances(Aws::Vector<HostInstance>&& value) { m_instancesHasBeenSet = true; m_instances = value; }
320 
325  inline Host& WithInstances(const Aws::Vector<HostInstance>& value) { SetInstances(value); return *this;}
326 
331  inline Host& WithInstances(Aws::Vector<HostInstance>&& value) { SetInstances(value); return *this;}
332 
337  inline Host& AddInstances(const HostInstance& value) { m_instancesHasBeenSet = true; m_instances.push_back(value); return *this; }
338 
343  inline Host& AddInstances(HostInstance&& value) { m_instancesHasBeenSet = true; m_instances.push_back(value); return *this; }
344 
348  inline const AvailableCapacity& GetAvailableCapacity() const{ return m_availableCapacity; }
349 
353  inline void SetAvailableCapacity(const AvailableCapacity& value) { m_availableCapacityHasBeenSet = true; m_availableCapacity = value; }
354 
358  inline void SetAvailableCapacity(AvailableCapacity&& value) { m_availableCapacityHasBeenSet = true; m_availableCapacity = value; }
359 
363  inline Host& WithAvailableCapacity(const AvailableCapacity& value) { SetAvailableCapacity(value); return *this;}
364 
368  inline Host& WithAvailableCapacity(AvailableCapacity&& value) { SetAvailableCapacity(value); return *this;}
369 
370  private:
371  Aws::String m_hostId;
372  bool m_hostIdHasBeenSet;
373  AutoPlacement m_autoPlacement;
374  bool m_autoPlacementHasBeenSet;
375  Aws::String m_hostReservationId;
376  bool m_hostReservationIdHasBeenSet;
377  Aws::String m_clientToken;
378  bool m_clientTokenHasBeenSet;
379  HostProperties m_hostProperties;
380  bool m_hostPropertiesHasBeenSet;
381  AllocationState m_state;
382  bool m_stateHasBeenSet;
383  Aws::String m_availabilityZone;
384  bool m_availabilityZoneHasBeenSet;
385  Aws::Vector<HostInstance> m_instances;
386  bool m_instancesHasBeenSet;
387  AvailableCapacity m_availableCapacity;
388  bool m_availableCapacityHasBeenSet;
389  };
390 
391 } // namespace Model
392 } // namespace EC2
393 } // namespace Aws
const Aws::String & GetHostReservationId() const
Definition: Host.h:117
void SetState(AllocationState &&value)
Definition: Host.h:256
Host & WithHostReservationId(const Aws::String &value)
Definition: Host.h:141
void SetClientToken(const Aws::String &value)
Definition: Host.h:171
Host & WithHostId(const char *value)
Definition: Host.h:86
Host & WithAvailableCapacity(AvailableCapacity &&value)
Definition: Host.h:368
void SetAvailabilityZone(Aws::String &&value)
Definition: Host.h:281
void SetClientToken(const char *value)
Definition: Host.h:189
Host & WithAutoPlacement(AutoPlacement &&value)
Definition: Host.h:111
Host & WithAvailabilityZone(Aws::String &&value)
Definition: Host.h:296
Host & WithClientToken(const char *value)
Definition: Host.h:216
Host & WithHostId(Aws::String &&value)
Definition: Host.h:81
void SetClientToken(Aws::String &&value)
Definition: Host.h:180
void SetHostProperties(HostProperties &&value)
Definition: Host.h:231
const AvailableCapacity & GetAvailableCapacity() const
Definition: Host.h:348
Host & WithAvailableCapacity(const AvailableCapacity &value)
Definition: Host.h:363
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
void SetHostReservationId(Aws::String &&value)
Definition: Host.h:129
void SetAvailableCapacity(AvailableCapacity &&value)
Definition: Host.h:358
const Aws::String & GetHostId() const
Definition: Host.h:56
Host & WithAvailabilityZone(const char *value)
Definition: Host.h:301
void SetHostReservationId(const char *value)
Definition: Host.h:135
void SetHostProperties(const HostProperties &value)
Definition: Host.h:226
void SetHostId(const char *value)
Definition: Host.h:71
const Aws::Vector< HostInstance > & GetInstances() const
Definition: Host.h:307
Host & WithClientToken(const Aws::String &value)
Definition: Host.h:198
void SetAutoPlacement(const AutoPlacement &value)
Definition: Host.h:96
Host & WithHostReservationId(const char *value)
Definition: Host.h:153
const AutoPlacement & GetAutoPlacement() const
Definition: Host.h:91
Host & WithClientToken(Aws::String &&value)
Definition: Host.h:207
Host & WithInstances(Aws::Vector< HostInstance > &&value)
Definition: Host.h:331
const Aws::String & GetClientToken() const
Definition: Host.h:162
void SetState(const AllocationState &value)
Definition: Host.h:251
Host & WithAutoPlacement(const AutoPlacement &value)
Definition: Host.h:106
void SetAvailabilityZone(const Aws::String &value)
Definition: Host.h:276
Host & AddInstances(const HostInstance &value)
Definition: Host.h:337
std::basic_ostream< char, std::char_traits< char > > OStream
Definition: AWSStreamFwd.h:31
void SetAutoPlacement(AutoPlacement &&value)
Definition: Host.h:101
Host & AddInstances(HostInstance &&value)
Definition: Host.h:343
void SetHostReservationId(const Aws::String &value)
Definition: Host.h:123
void SetAvailableCapacity(const AvailableCapacity &value)
Definition: Host.h:353
Host & WithState(AllocationState &&value)
Definition: Host.h:266
void SetInstances(Aws::Vector< HostInstance > &&value)
Definition: Host.h:319
Host & WithAvailabilityZone(const Aws::String &value)
Definition: Host.h:291
const Aws::String & GetAvailabilityZone() const
Definition: Host.h:271
Host & WithHostReservationId(Aws::String &&value)
Definition: Host.h:147
const HostProperties & GetHostProperties() const
Definition: Host.h:221
const AllocationState & GetState() const
Definition: Host.h:246
void SetAvailabilityZone(const char *value)
Definition: Host.h:286
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
void SetInstances(const Aws::Vector< HostInstance > &value)
Definition: Host.h:313
Host & WithHostId(const Aws::String &value)
Definition: Host.h:76
Host & WithInstances(const Aws::Vector< HostInstance > &value)
Definition: Host.h:325
Host & WithHostProperties(HostProperties &&value)
Definition: Host.h:241
#define AWS_EC2_API
Definition: EC2_EXPORTS.h:34
void SetHostId(Aws::String &&value)
Definition: Host.h:66
void SetHostId(const Aws::String &value)
Definition: Host.h:61
Host & WithState(const AllocationState &value)
Definition: Host.h:261
JSON (JavaScript Object Notation).
Host & WithHostProperties(const HostProperties &value)
Definition: Host.h:236