AWS SDK for C++  0.14.3
AWS SDK for C++
InstanceStatus.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>
23 
24 namespace Aws
25 {
26 namespace Utils
27 {
28 namespace Xml
29 {
30  class XmlNode;
31 } // namespace Xml
32 } // namespace Utils
33 namespace EC2
34 {
35 namespace Model
36 {
37 
42  {
43  public:
46  InstanceStatus& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
47 
48  void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
49  void OutputToStream(Aws::OStream& oStream, const char* location) const;
50 
54  inline const Aws::String& GetInstanceId() const{ return m_instanceId; }
55 
59  inline void SetInstanceId(const Aws::String& value) { m_instanceIdHasBeenSet = true; m_instanceId = value; }
60 
64  inline void SetInstanceId(Aws::String&& value) { m_instanceIdHasBeenSet = true; m_instanceId = value; }
65 
69  inline void SetInstanceId(const char* value) { m_instanceIdHasBeenSet = true; m_instanceId.assign(value); }
70 
74  inline InstanceStatus& WithInstanceId(const Aws::String& value) { SetInstanceId(value); return *this;}
75 
79  inline InstanceStatus& WithInstanceId(Aws::String&& value) { SetInstanceId(value); return *this;}
80 
84  inline InstanceStatus& WithInstanceId(const char* value) { SetInstanceId(value); return *this;}
85 
89  inline const Aws::String& GetAvailabilityZone() const{ return m_availabilityZone; }
90 
94  inline void SetAvailabilityZone(const Aws::String& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = value; }
95 
99  inline void SetAvailabilityZone(Aws::String&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = value; }
100 
104  inline void SetAvailabilityZone(const char* value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone.assign(value); }
105 
109  inline InstanceStatus& WithAvailabilityZone(const Aws::String& value) { SetAvailabilityZone(value); return *this;}
110 
114  inline InstanceStatus& WithAvailabilityZone(Aws::String&& value) { SetAvailabilityZone(value); return *this;}
115 
119  inline InstanceStatus& WithAvailabilityZone(const char* value) { SetAvailabilityZone(value); return *this;}
120 
124  inline const Aws::Vector<InstanceStatusEvent>& GetEvents() const{ return m_events; }
125 
129  inline void SetEvents(const Aws::Vector<InstanceStatusEvent>& value) { m_eventsHasBeenSet = true; m_events = value; }
130 
134  inline void SetEvents(Aws::Vector<InstanceStatusEvent>&& value) { m_eventsHasBeenSet = true; m_events = value; }
135 
139  inline InstanceStatus& WithEvents(const Aws::Vector<InstanceStatusEvent>& value) { SetEvents(value); return *this;}
140 
144  inline InstanceStatus& WithEvents(Aws::Vector<InstanceStatusEvent>&& value) { SetEvents(value); return *this;}
145 
149  inline InstanceStatus& AddEvents(const InstanceStatusEvent& value) { m_eventsHasBeenSet = true; m_events.push_back(value); return *this; }
150 
154  inline InstanceStatus& AddEvents(InstanceStatusEvent&& value) { m_eventsHasBeenSet = true; m_events.push_back(value); return *this; }
155 
160  inline const InstanceState& GetInstanceState() const{ return m_instanceState; }
161 
166  inline void SetInstanceState(const InstanceState& value) { m_instanceStateHasBeenSet = true; m_instanceState = value; }
167 
172  inline void SetInstanceState(InstanceState&& value) { m_instanceStateHasBeenSet = true; m_instanceState = value; }
173 
178  inline InstanceStatus& WithInstanceState(const InstanceState& value) { SetInstanceState(value); return *this;}
179 
184  inline InstanceStatus& WithInstanceState(InstanceState&& value) { SetInstanceState(value); return *this;}
185 
191  inline const InstanceStatusSummary& GetSystemStatus() const{ return m_systemStatus; }
192 
198  inline void SetSystemStatus(const InstanceStatusSummary& value) { m_systemStatusHasBeenSet = true; m_systemStatus = value; }
199 
205  inline void SetSystemStatus(InstanceStatusSummary&& value) { m_systemStatusHasBeenSet = true; m_systemStatus = value; }
206 
212  inline InstanceStatus& WithSystemStatus(const InstanceStatusSummary& value) { SetSystemStatus(value); return *this;}
213 
219  inline InstanceStatus& WithSystemStatus(InstanceStatusSummary&& value) { SetSystemStatus(value); return *this;}
220 
225  inline const InstanceStatusSummary& GetInstanceStatus() const{ return m_instanceStatus; }
226 
231  inline void SetInstanceStatus(const InstanceStatusSummary& value) { m_instanceStatusHasBeenSet = true; m_instanceStatus = value; }
232 
237  inline void SetInstanceStatus(InstanceStatusSummary&& value) { m_instanceStatusHasBeenSet = true; m_instanceStatus = value; }
238 
243  inline InstanceStatus& WithInstanceStatus(const InstanceStatusSummary& value) { SetInstanceStatus(value); return *this;}
244 
249  inline InstanceStatus& WithInstanceStatus(InstanceStatusSummary&& value) { SetInstanceStatus(value); return *this;}
250 
251  private:
252  Aws::String m_instanceId;
253  bool m_instanceIdHasBeenSet;
254  Aws::String m_availabilityZone;
255  bool m_availabilityZoneHasBeenSet;
257  bool m_eventsHasBeenSet;
258  InstanceState m_instanceState;
259  bool m_instanceStateHasBeenSet;
260  InstanceStatusSummary m_systemStatus;
261  bool m_systemStatusHasBeenSet;
262  InstanceStatusSummary m_instanceStatus;
263  bool m_instanceStatusHasBeenSet;
264  };
265 
266 } // namespace Model
267 } // namespace EC2
268 } // namespace Aws
InstanceStatus & WithAvailabilityZone(const Aws::String &value)
void SetSystemStatus(InstanceStatusSummary &&value)
InstanceStatus & WithSystemStatus(const InstanceStatusSummary &value)
InstanceStatus & WithEvents(const Aws::Vector< InstanceStatusEvent > &value)
void SetEvents(const Aws::Vector< InstanceStatusEvent > &value)
const InstanceStatusSummary & GetSystemStatus() const
InstanceStatus & WithInstanceStatus(const InstanceStatusSummary &value)
void SetInstanceId(Aws::String &&value)
InstanceStatus & WithAvailabilityZone(Aws::String &&value)
void SetInstanceId(const char *value)
void SetEvents(Aws::Vector< InstanceStatusEvent > &&value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
const Aws::Vector< InstanceStatusEvent > & GetEvents() const
void SetSystemStatus(const InstanceStatusSummary &value)
void SetInstanceState(const InstanceState &value)
void SetInstanceStatus(InstanceStatusSummary &&value)
void SetAvailabilityZone(const Aws::String &value)
void SetAvailabilityZone(const char *value)
InstanceStatus & WithEvents(Aws::Vector< InstanceStatusEvent > &&value)
const InstanceState & GetInstanceState() const
std::basic_ostream< char, std::char_traits< char > > OStream
Definition: AWSStreamFwd.h:31
const Aws::String & GetAvailabilityZone() const
void SetInstanceStatus(const InstanceStatusSummary &value)
InstanceStatus & WithAvailabilityZone(const char *value)
void SetAvailabilityZone(Aws::String &&value)
InstanceStatus & AddEvents(InstanceStatusEvent &&value)
void SetInstanceState(InstanceState &&value)
void SetInstanceId(const Aws::String &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
InstanceStatus & WithInstanceState(const InstanceState &value)
InstanceStatus & AddEvents(const InstanceStatusEvent &value)
const InstanceStatusSummary & GetInstanceStatus() const
#define AWS_EC2_API
Definition: EC2_EXPORTS.h:37
InstanceStatus & WithInstanceState(InstanceState &&value)
InstanceStatus & WithSystemStatus(InstanceStatusSummary &&value)
const Aws::String & GetInstanceId() const
InstanceStatus & WithInstanceId(Aws::String &&value)
InstanceStatus & WithInstanceStatus(InstanceStatusSummary &&value)
JSON (JavaScript Object Notation).
InstanceStatus & WithInstanceId(const char *value)
InstanceStatus & WithInstanceId(const Aws::String &value)