AWS SDK for C++

AWS SDK for C++ Version 1.11.746

Loading...
Searching...
No Matches
EC2SecurityGroup.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/redshift/Redshift_EXPORTS.h>
11#include <aws/redshift/model/Tag.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Xml {
18class XmlNode;
19} // namespace Xml
20} // namespace Utils
21namespace Redshift {
22namespace Model {
23
30 public:
31 AWS_REDSHIFT_API EC2SecurityGroup() = default;
32 AWS_REDSHIFT_API EC2SecurityGroup(const Aws::Utils::Xml::XmlNode& xmlNode);
33 AWS_REDSHIFT_API EC2SecurityGroup& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
34
35 AWS_REDSHIFT_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
36 AWS_REDSHIFT_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
37
39
42 inline const Aws::String& GetStatus() const { return m_status; }
43 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
44 template <typename StatusT = Aws::String>
45 void SetStatus(StatusT&& value) {
46 m_statusHasBeenSet = true;
47 m_status = std::forward<StatusT>(value);
48 }
49 template <typename StatusT = Aws::String>
50 EC2SecurityGroup& WithStatus(StatusT&& value) {
51 SetStatus(std::forward<StatusT>(value));
52 return *this;
53 }
55
57
60 inline const Aws::String& GetEC2SecurityGroupName() const { return m_eC2SecurityGroupName; }
61 inline bool EC2SecurityGroupNameHasBeenSet() const { return m_eC2SecurityGroupNameHasBeenSet; }
62 template <typename EC2SecurityGroupNameT = Aws::String>
63 void SetEC2SecurityGroupName(EC2SecurityGroupNameT&& value) {
64 m_eC2SecurityGroupNameHasBeenSet = true;
65 m_eC2SecurityGroupName = std::forward<EC2SecurityGroupNameT>(value);
66 }
67 template <typename EC2SecurityGroupNameT = Aws::String>
68 EC2SecurityGroup& WithEC2SecurityGroupName(EC2SecurityGroupNameT&& value) {
69 SetEC2SecurityGroupName(std::forward<EC2SecurityGroupNameT>(value));
70 return *this;
71 }
73
75
79 inline const Aws::String& GetEC2SecurityGroupOwnerId() const { return m_eC2SecurityGroupOwnerId; }
80 inline bool EC2SecurityGroupOwnerIdHasBeenSet() const { return m_eC2SecurityGroupOwnerIdHasBeenSet; }
81 template <typename EC2SecurityGroupOwnerIdT = Aws::String>
82 void SetEC2SecurityGroupOwnerId(EC2SecurityGroupOwnerIdT&& value) {
83 m_eC2SecurityGroupOwnerIdHasBeenSet = true;
84 m_eC2SecurityGroupOwnerId = std::forward<EC2SecurityGroupOwnerIdT>(value);
85 }
86 template <typename EC2SecurityGroupOwnerIdT = Aws::String>
87 EC2SecurityGroup& WithEC2SecurityGroupOwnerId(EC2SecurityGroupOwnerIdT&& value) {
88 SetEC2SecurityGroupOwnerId(std::forward<EC2SecurityGroupOwnerIdT>(value));
89 return *this;
90 }
92
94
97 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
98 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
99 template <typename TagsT = Aws::Vector<Tag>>
100 void SetTags(TagsT&& value) {
101 m_tagsHasBeenSet = true;
102 m_tags = std::forward<TagsT>(value);
103 }
104 template <typename TagsT = Aws::Vector<Tag>>
105 EC2SecurityGroup& WithTags(TagsT&& value) {
106 SetTags(std::forward<TagsT>(value));
107 return *this;
108 }
109 template <typename TagsT = Tag>
110 EC2SecurityGroup& AddTags(TagsT&& value) {
111 m_tagsHasBeenSet = true;
112 m_tags.emplace_back(std::forward<TagsT>(value));
113 return *this;
114 }
116 private:
117 Aws::String m_status;
118
119 Aws::String m_eC2SecurityGroupName;
120
121 Aws::String m_eC2SecurityGroupOwnerId;
122
123 Aws::Vector<Tag> m_tags;
124 bool m_statusHasBeenSet = false;
125 bool m_eC2SecurityGroupNameHasBeenSet = false;
126 bool m_eC2SecurityGroupOwnerIdHasBeenSet = false;
127 bool m_tagsHasBeenSet = false;
128};
129
130} // namespace Model
131} // namespace Redshift
132} // namespace Aws
EC2SecurityGroup & AddTags(TagsT &&value)
EC2SecurityGroup & WithTags(TagsT &&value)
EC2SecurityGroup & WithEC2SecurityGroupName(EC2SecurityGroupNameT &&value)
void SetEC2SecurityGroupOwnerId(EC2SecurityGroupOwnerIdT &&value)
EC2SecurityGroup & WithEC2SecurityGroupOwnerId(EC2SecurityGroupOwnerIdT &&value)
void SetEC2SecurityGroupName(EC2SecurityGroupNameT &&value)
const Aws::String & GetStatus() const
AWS_REDSHIFT_API EC2SecurityGroup()=default
const Aws::String & GetEC2SecurityGroupName() const
const Aws::Vector< Tag > & GetTags() const
EC2SecurityGroup & WithStatus(StatusT &&value)
AWS_REDSHIFT_API void OutputToStream(Aws::OStream &oStream, const char *location) const
const Aws::String & GetEC2SecurityGroupOwnerId() const
AWS_REDSHIFT_API EC2SecurityGroup(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_REDSHIFT_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
AWS_REDSHIFT_API EC2SecurityGroup & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
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