AWS SDK for C++

AWS SDK for C++ Version 1.11.876

Loading...
Searching...
No Matches
InstanceApplicationStatus.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ec2/EC2_EXPORTS.h>
11#include <aws/ec2/model/ApplicationStatus.h>
12#include <aws/ec2/model/Tag.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Xml {
19class XmlNode;
20} // namespace Xml
21} // namespace Utils
22namespace EC2 {
23namespace Model {
24
32 public:
33 AWS_EC2_API InstanceApplicationStatus() = default;
36
37 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
38 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
39
41
44 inline const Aws::String& GetInstanceId() const { return m_instanceId; }
45 inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; }
46 template <typename InstanceIdT = Aws::String>
47 void SetInstanceId(InstanceIdT&& value) {
48 m_instanceIdHasBeenSet = true;
49 m_instanceId = std::forward<InstanceIdT>(value);
50 }
51 template <typename InstanceIdT = Aws::String>
53 SetInstanceId(std::forward<InstanceIdT>(value));
54 return *this;
55 }
57
59
62 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
63 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
64 template <typename AvailabilityZoneT = Aws::String>
65 void SetAvailabilityZone(AvailabilityZoneT&& value) {
66 m_availabilityZoneHasBeenSet = true;
67 m_availabilityZone = std::forward<AvailabilityZoneT>(value);
68 }
69 template <typename AvailabilityZoneT = Aws::String>
70 InstanceApplicationStatus& WithAvailabilityZone(AvailabilityZoneT&& value) {
71 SetAvailabilityZone(std::forward<AvailabilityZoneT>(value));
72 return *this;
73 }
75
77
80 inline const Aws::String& GetAvailabilityZoneId() const { return m_availabilityZoneId; }
81 inline bool AvailabilityZoneIdHasBeenSet() const { return m_availabilityZoneIdHasBeenSet; }
82 template <typename AvailabilityZoneIdT = Aws::String>
83 void SetAvailabilityZoneId(AvailabilityZoneIdT&& value) {
84 m_availabilityZoneIdHasBeenSet = true;
85 m_availabilityZoneId = std::forward<AvailabilityZoneIdT>(value);
86 }
87 template <typename AvailabilityZoneIdT = Aws::String>
88 InstanceApplicationStatus& WithAvailabilityZoneId(AvailabilityZoneIdT&& value) {
89 SetAvailabilityZoneId(std::forward<AvailabilityZoneIdT>(value));
90 return *this;
91 }
93
95
98 inline const ApplicationStatus& GetApplicationStatus() const { return m_applicationStatus; }
99 inline bool ApplicationStatusHasBeenSet() const { return m_applicationStatusHasBeenSet; }
100 template <typename ApplicationStatusT = ApplicationStatus>
101 void SetApplicationStatus(ApplicationStatusT&& value) {
102 m_applicationStatusHasBeenSet = true;
103 m_applicationStatus = std::forward<ApplicationStatusT>(value);
104 }
105 template <typename ApplicationStatusT = ApplicationStatus>
107 SetApplicationStatus(std::forward<ApplicationStatusT>(value));
108 return *this;
109 }
111
113
116 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
117 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
118 template <typename TagsT = Aws::Vector<Tag>>
119 void SetTags(TagsT&& value) {
120 m_tagsHasBeenSet = true;
121 m_tags = std::forward<TagsT>(value);
122 }
123 template <typename TagsT = Aws::Vector<Tag>>
125 SetTags(std::forward<TagsT>(value));
126 return *this;
127 }
128 template <typename TagsT = Tag>
130 m_tagsHasBeenSet = true;
131 m_tags.emplace_back(std::forward<TagsT>(value));
132 return *this;
133 }
135 private:
136 Aws::String m_instanceId;
137
138 Aws::String m_availabilityZone;
139
140 Aws::String m_availabilityZoneId;
141
142 ApplicationStatus m_applicationStatus;
143
144 Aws::Vector<Tag> m_tags;
145 bool m_instanceIdHasBeenSet = false;
146 bool m_availabilityZoneHasBeenSet = false;
147 bool m_availabilityZoneIdHasBeenSet = false;
148 bool m_applicationStatusHasBeenSet = false;
149 bool m_tagsHasBeenSet = false;
150};
151
152} // namespace Model
153} // namespace EC2
154} // namespace Aws
AWS_EC2_API InstanceApplicationStatus(const Aws::Utils::Xml::XmlNode &xmlNode)
InstanceApplicationStatus & WithInstanceId(InstanceIdT &&value)
AWS_EC2_API InstanceApplicationStatus & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_EC2_API InstanceApplicationStatus()=default
void SetApplicationStatus(ApplicationStatusT &&value)
InstanceApplicationStatus & AddTags(TagsT &&value)
InstanceApplicationStatus & WithAvailabilityZoneId(AvailabilityZoneIdT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
InstanceApplicationStatus & WithApplicationStatus(ApplicationStatusT &&value)
void SetAvailabilityZone(AvailabilityZoneT &&value)
InstanceApplicationStatus & WithTags(TagsT &&value)
InstanceApplicationStatus & WithAvailabilityZone(AvailabilityZoneT &&value)
void SetAvailabilityZoneId(AvailabilityZoneIdT &&value)
const ApplicationStatus & GetApplicationStatus() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream