AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
ClassicLinkInstance.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/GroupIdentifier.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 ClassicLinkInstance() = default;
34 AWS_EC2_API ClassicLinkInstance(const Aws::Utils::Xml::XmlNode& xmlNode);
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::Vector<GroupIdentifier>& GetGroups() const { return m_groups; }
45 inline bool GroupsHasBeenSet() const { return m_groupsHasBeenSet; }
46 template <typename GroupsT = Aws::Vector<GroupIdentifier>>
47 void SetGroups(GroupsT&& value) {
48 m_groupsHasBeenSet = true;
49 m_groups = std::forward<GroupsT>(value);
50 }
51 template <typename GroupsT = Aws::Vector<GroupIdentifier>>
52 ClassicLinkInstance& WithGroups(GroupsT&& value) {
53 SetGroups(std::forward<GroupsT>(value));
54 return *this;
55 }
56 template <typename GroupsT = GroupIdentifier>
57 ClassicLinkInstance& AddGroups(GroupsT&& value) {
58 m_groupsHasBeenSet = true;
59 m_groups.emplace_back(std::forward<GroupsT>(value));
60 return *this;
61 }
63
65
68 inline const Aws::String& GetInstanceId() const { return m_instanceId; }
69 inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; }
70 template <typename InstanceIdT = Aws::String>
71 void SetInstanceId(InstanceIdT&& value) {
72 m_instanceIdHasBeenSet = true;
73 m_instanceId = std::forward<InstanceIdT>(value);
74 }
75 template <typename InstanceIdT = Aws::String>
76 ClassicLinkInstance& WithInstanceId(InstanceIdT&& value) {
77 SetInstanceId(std::forward<InstanceIdT>(value));
78 return *this;
79 }
81
83
86 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
87 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
88 template <typename TagsT = Aws::Vector<Tag>>
89 void SetTags(TagsT&& value) {
90 m_tagsHasBeenSet = true;
91 m_tags = std::forward<TagsT>(value);
92 }
93 template <typename TagsT = Aws::Vector<Tag>>
94 ClassicLinkInstance& WithTags(TagsT&& value) {
95 SetTags(std::forward<TagsT>(value));
96 return *this;
97 }
98 template <typename TagsT = Tag>
99 ClassicLinkInstance& AddTags(TagsT&& value) {
100 m_tagsHasBeenSet = true;
101 m_tags.emplace_back(std::forward<TagsT>(value));
102 return *this;
103 }
105
107
110 inline const Aws::String& GetVpcId() const { return m_vpcId; }
111 inline bool VpcIdHasBeenSet() const { return m_vpcIdHasBeenSet; }
112 template <typename VpcIdT = Aws::String>
113 void SetVpcId(VpcIdT&& value) {
114 m_vpcIdHasBeenSet = true;
115 m_vpcId = std::forward<VpcIdT>(value);
116 }
117 template <typename VpcIdT = Aws::String>
119 SetVpcId(std::forward<VpcIdT>(value));
120 return *this;
121 }
123 private:
125
126 Aws::String m_instanceId;
127
128 Aws::Vector<Tag> m_tags;
129
130 Aws::String m_vpcId;
131 bool m_groupsHasBeenSet = false;
132 bool m_instanceIdHasBeenSet = false;
133 bool m_tagsHasBeenSet = false;
134 bool m_vpcIdHasBeenSet = false;
135};
136
137} // namespace Model
138} // namespace EC2
139} // namespace Aws
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