AWS SDK for C++  1.9.105
AWS SDK for C++
ClusterSecurityGroup.h
Go to the documentation of this file.
1 
6 #pragma once
13 #include <aws/redshift/model/Tag.h>
14 #include <utility>
15 
16 namespace Aws
17 {
18 namespace Utils
19 {
20 namespace Xml
21 {
22  class XmlNode;
23 } // namespace Xml
24 } // namespace Utils
25 namespace Redshift
26 {
27 namespace Model
28 {
29 
36  {
37  public:
41 
42  void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
43  void OutputToStream(Aws::OStream& oStream, const char* location) const;
44 
45 
50  inline const Aws::String& GetClusterSecurityGroupName() const{ return m_clusterSecurityGroupName; }
51 
56  inline bool ClusterSecurityGroupNameHasBeenSet() const { return m_clusterSecurityGroupNameHasBeenSet; }
57 
62  inline void SetClusterSecurityGroupName(const Aws::String& value) { m_clusterSecurityGroupNameHasBeenSet = true; m_clusterSecurityGroupName = value; }
63 
68  inline void SetClusterSecurityGroupName(Aws::String&& value) { m_clusterSecurityGroupNameHasBeenSet = true; m_clusterSecurityGroupName = std::move(value); }
69 
74  inline void SetClusterSecurityGroupName(const char* value) { m_clusterSecurityGroupNameHasBeenSet = true; m_clusterSecurityGroupName.assign(value); }
75 
80  inline ClusterSecurityGroup& WithClusterSecurityGroupName(const Aws::String& value) { SetClusterSecurityGroupName(value); return *this;}
81 
86  inline ClusterSecurityGroup& WithClusterSecurityGroupName(Aws::String&& value) { SetClusterSecurityGroupName(std::move(value)); return *this;}
87 
92  inline ClusterSecurityGroup& WithClusterSecurityGroupName(const char* value) { SetClusterSecurityGroupName(value); return *this;}
93 
94 
98  inline const Aws::String& GetDescription() const{ return m_description; }
99 
103  inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
104 
108  inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; }
109 
113  inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); }
114 
118  inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); }
119 
123  inline ClusterSecurityGroup& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
124 
128  inline ClusterSecurityGroup& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}
129 
133  inline ClusterSecurityGroup& WithDescription(const char* value) { SetDescription(value); return *this;}
134 
135 
140  inline const Aws::Vector<EC2SecurityGroup>& GetEC2SecurityGroups() const{ return m_eC2SecurityGroups; }
141 
146  inline bool EC2SecurityGroupsHasBeenSet() const { return m_eC2SecurityGroupsHasBeenSet; }
147 
152  inline void SetEC2SecurityGroups(const Aws::Vector<EC2SecurityGroup>& value) { m_eC2SecurityGroupsHasBeenSet = true; m_eC2SecurityGroups = value; }
153 
158  inline void SetEC2SecurityGroups(Aws::Vector<EC2SecurityGroup>&& value) { m_eC2SecurityGroupsHasBeenSet = true; m_eC2SecurityGroups = std::move(value); }
159 
164  inline ClusterSecurityGroup& WithEC2SecurityGroups(const Aws::Vector<EC2SecurityGroup>& value) { SetEC2SecurityGroups(value); return *this;}
165 
170  inline ClusterSecurityGroup& WithEC2SecurityGroups(Aws::Vector<EC2SecurityGroup>&& value) { SetEC2SecurityGroups(std::move(value)); return *this;}
171 
176  inline ClusterSecurityGroup& AddEC2SecurityGroups(const EC2SecurityGroup& value) { m_eC2SecurityGroupsHasBeenSet = true; m_eC2SecurityGroups.push_back(value); return *this; }
177 
182  inline ClusterSecurityGroup& AddEC2SecurityGroups(EC2SecurityGroup&& value) { m_eC2SecurityGroupsHasBeenSet = true; m_eC2SecurityGroups.push_back(std::move(value)); return *this; }
183 
184 
189  inline const Aws::Vector<IPRange>& GetIPRanges() const{ return m_iPRanges; }
190 
195  inline bool IPRangesHasBeenSet() const { return m_iPRangesHasBeenSet; }
196 
201  inline void SetIPRanges(const Aws::Vector<IPRange>& value) { m_iPRangesHasBeenSet = true; m_iPRanges = value; }
202 
207  inline void SetIPRanges(Aws::Vector<IPRange>&& value) { m_iPRangesHasBeenSet = true; m_iPRanges = std::move(value); }
208 
213  inline ClusterSecurityGroup& WithIPRanges(const Aws::Vector<IPRange>& value) { SetIPRanges(value); return *this;}
214 
219  inline ClusterSecurityGroup& WithIPRanges(Aws::Vector<IPRange>&& value) { SetIPRanges(std::move(value)); return *this;}
220 
225  inline ClusterSecurityGroup& AddIPRanges(const IPRange& value) { m_iPRangesHasBeenSet = true; m_iPRanges.push_back(value); return *this; }
226 
231  inline ClusterSecurityGroup& AddIPRanges(IPRange&& value) { m_iPRangesHasBeenSet = true; m_iPRanges.push_back(std::move(value)); return *this; }
232 
233 
237  inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
238 
242  inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
243 
247  inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
248 
252  inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
253 
257  inline ClusterSecurityGroup& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
258 
262  inline ClusterSecurityGroup& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
263 
267  inline ClusterSecurityGroup& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
268 
272  inline ClusterSecurityGroup& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
273 
274  private:
275 
276  Aws::String m_clusterSecurityGroupName;
277  bool m_clusterSecurityGroupNameHasBeenSet;
278 
279  Aws::String m_description;
280  bool m_descriptionHasBeenSet;
281 
282  Aws::Vector<EC2SecurityGroup> m_eC2SecurityGroups;
283  bool m_eC2SecurityGroupsHasBeenSet;
284 
285  Aws::Vector<IPRange> m_iPRanges;
286  bool m_iPRangesHasBeenSet;
287 
288  Aws::Vector<Tag> m_tags;
289  bool m_tagsHasBeenSet;
290  };
291 
292 } // namespace Model
293 } // namespace Redshift
294 } // namespace Aws
Aws::Redshift::Model::ClusterSecurityGroup::GetClusterSecurityGroupName
const Aws::String & GetClusterSecurityGroupName() const
Definition: ClusterSecurityGroup.h:50
Aws::Redshift::Model::ClusterSecurityGroup::WithIPRanges
ClusterSecurityGroup & WithIPRanges(const Aws::Vector< IPRange > &value)
Definition: ClusterSecurityGroup.h:213
Aws::Redshift::Model::IPRange
Definition: IPRange.h:34
Aws::Redshift::Model::ClusterSecurityGroup::DescriptionHasBeenSet
bool DescriptionHasBeenSet() const
Definition: ClusterSecurityGroup.h:103
Aws::Redshift::Model::Tag
Definition: Tag.h:33
Aws::Redshift::Model::ClusterSecurityGroup::ClusterSecurityGroup
ClusterSecurityGroup()
Aws::Redshift::Model::ClusterSecurityGroup::GetIPRanges
const Aws::Vector< IPRange > & GetIPRanges() const
Definition: ClusterSecurityGroup.h:189
Aws::Redshift::Model::ClusterSecurityGroup::OutputToStream
void OutputToStream(Aws::OStream &oStream, const char *location) const
Aws::Redshift::Model::ClusterSecurityGroup::WithEC2SecurityGroups
ClusterSecurityGroup & WithEC2SecurityGroups(const Aws::Vector< EC2SecurityGroup > &value)
Definition: ClusterSecurityGroup.h:164
Aws::Redshift::Model::ClusterSecurityGroup::SetTags
void SetTags(const Aws::Vector< Tag > &value)
Definition: ClusterSecurityGroup.h:247
Aws::Redshift::Model::EC2SecurityGroup
Definition: EC2SecurityGroup.h:34
Tag.h
Aws::Redshift::Model::ClusterSecurityGroup::WithTags
ClusterSecurityGroup & WithTags(const Aws::Vector< Tag > &value)
Definition: ClusterSecurityGroup.h:257
Aws::Redshift::Model::ClusterSecurityGroup::ClusterSecurityGroup
ClusterSecurityGroup(const Aws::Utils::Xml::XmlNode &xmlNode)
Aws::Redshift::Model::ClusterSecurityGroup::ClusterSecurityGroupNameHasBeenSet
bool ClusterSecurityGroupNameHasBeenSet() const
Definition: ClusterSecurityGroup.h:56
Aws::Redshift::Model::ClusterSecurityGroup::WithEC2SecurityGroups
ClusterSecurityGroup & WithEC2SecurityGroups(Aws::Vector< EC2SecurityGroup > &&value)
Definition: ClusterSecurityGroup.h:170
Aws::Vector
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
Aws::Redshift::Model::ClusterSecurityGroup::GetDescription
const Aws::String & GetDescription() const
Definition: ClusterSecurityGroup.h:98
Aws::Redshift::Model::ClusterSecurityGroup::SetClusterSecurityGroupName
void SetClusterSecurityGroupName(const Aws::String &value)
Definition: ClusterSecurityGroup.h:62
AWSStreamFwd.h
AWSVector.h
Aws::Redshift::Model::ClusterSecurityGroup::AddIPRanges
ClusterSecurityGroup & AddIPRanges(IPRange &&value)
Definition: ClusterSecurityGroup.h:231
Aws::Redshift::Model::ClusterSecurityGroup::AddEC2SecurityGroups
ClusterSecurityGroup & AddEC2SecurityGroups(EC2SecurityGroup &&value)
Definition: ClusterSecurityGroup.h:182
Aws::Redshift::Model::ClusterSecurityGroup::AddIPRanges
ClusterSecurityGroup & AddIPRanges(const IPRange &value)
Definition: ClusterSecurityGroup.h:225
Aws::OStream
std::basic_ostream< char, std::char_traits< char > > OStream
Definition: AWSStreamFwd.h:21
Aws::Redshift::Model::ClusterSecurityGroup::WithDescription
ClusterSecurityGroup & WithDescription(const Aws::String &value)
Definition: ClusterSecurityGroup.h:123
Aws::Redshift::Model::ClusterSecurityGroup::OutputToStream
void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
IPRange.h
Aws::Utils::Xml::XmlNode
Definition: XmlSerializer.h:53
Aws::Redshift::Model::ClusterSecurityGroup::IPRangesHasBeenSet
bool IPRangesHasBeenSet() const
Definition: ClusterSecurityGroup.h:195
Aws::Redshift::Model::ClusterSecurityGroup::WithIPRanges
ClusterSecurityGroup & WithIPRanges(Aws::Vector< IPRange > &&value)
Definition: ClusterSecurityGroup.h:219
AWS_REDSHIFT_API
#define AWS_REDSHIFT_API
Definition: Redshift_EXPORTS.h:28
Aws::Redshift::Model::ClusterSecurityGroup::SetIPRanges
void SetIPRanges(const Aws::Vector< IPRange > &value)
Definition: ClusterSecurityGroup.h:201
Aws::Redshift::Model::ClusterSecurityGroup::WithTags
ClusterSecurityGroup & WithTags(Aws::Vector< Tag > &&value)
Definition: ClusterSecurityGroup.h:262
AWSString.h
Aws::Redshift::Model::ClusterSecurityGroup::AddEC2SecurityGroups
ClusterSecurityGroup & AddEC2SecurityGroups(const EC2SecurityGroup &value)
Definition: ClusterSecurityGroup.h:176
Aws::Redshift::Model::ClusterSecurityGroup::AddTags
ClusterSecurityGroup & AddTags(const Tag &value)
Definition: ClusterSecurityGroup.h:267
Aws::Redshift::Model::ClusterSecurityGroup::WithDescription
ClusterSecurityGroup & WithDescription(const char *value)
Definition: ClusterSecurityGroup.h:133
Aws::Redshift::Model::ClusterSecurityGroup::TagsHasBeenSet
bool TagsHasBeenSet() const
Definition: ClusterSecurityGroup.h:242
Aws::Redshift::Model::ClusterSecurityGroup::WithDescription
ClusterSecurityGroup & WithDescription(Aws::String &&value)
Definition: ClusterSecurityGroup.h:128
Aws::Redshift::Model::ClusterSecurityGroup::SetClusterSecurityGroupName
void SetClusterSecurityGroupName(const char *value)
Definition: ClusterSecurityGroup.h:74
Aws::Redshift::Model::ClusterSecurityGroup::WithClusterSecurityGroupName
ClusterSecurityGroup & WithClusterSecurityGroupName(const Aws::String &value)
Definition: ClusterSecurityGroup.h:80
Aws::Redshift::Model::ClusterSecurityGroup::SetEC2SecurityGroups
void SetEC2SecurityGroups(Aws::Vector< EC2SecurityGroup > &&value)
Definition: ClusterSecurityGroup.h:158
Aws::Redshift::Model::ClusterSecurityGroup::SetEC2SecurityGroups
void SetEC2SecurityGroups(const Aws::Vector< EC2SecurityGroup > &value)
Definition: ClusterSecurityGroup.h:152
Aws::Redshift::Model::ClusterSecurityGroup::SetDescription
void SetDescription(Aws::String &&value)
Definition: ClusterSecurityGroup.h:113
Aws
Definition: AccessManagementClient.h:15
Aws::Redshift::Model::ClusterSecurityGroup
Definition: ClusterSecurityGroup.h:36
Aws::Redshift::Model::ClusterSecurityGroup::SetDescription
void SetDescription(const char *value)
Definition: ClusterSecurityGroup.h:118
Redshift_EXPORTS.h
Aws::Redshift::Model::ClusterSecurityGroup::SetClusterSecurityGroupName
void SetClusterSecurityGroupName(Aws::String &&value)
Definition: ClusterSecurityGroup.h:68
Aws::Redshift::Model::ClusterSecurityGroup::operator=
ClusterSecurityGroup & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
Aws::Redshift::Model::ClusterSecurityGroup::WithClusterSecurityGroupName
ClusterSecurityGroup & WithClusterSecurityGroupName(const char *value)
Definition: ClusterSecurityGroup.h:92
Aws::Redshift::Model::ClusterSecurityGroup::SetDescription
void SetDescription(const Aws::String &value)
Definition: ClusterSecurityGroup.h:108
Aws::String
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
index
int index
Definition: cJSON.h:181
Aws::Redshift::Model::ClusterSecurityGroup::SetIPRanges
void SetIPRanges(Aws::Vector< IPRange > &&value)
Definition: ClusterSecurityGroup.h:207
EC2SecurityGroup.h
Aws::Redshift::Model::ClusterSecurityGroup::EC2SecurityGroupsHasBeenSet
bool EC2SecurityGroupsHasBeenSet() const
Definition: ClusterSecurityGroup.h:146
Aws::Redshift::Model::ClusterSecurityGroup::SetTags
void SetTags(Aws::Vector< Tag > &&value)
Definition: ClusterSecurityGroup.h:252
Aws::Redshift::Model::ClusterSecurityGroup::AddTags
ClusterSecurityGroup & AddTags(Tag &&value)
Definition: ClusterSecurityGroup.h:272
Aws::Redshift::Model::ClusterSecurityGroup::GetEC2SecurityGroups
const Aws::Vector< EC2SecurityGroup > & GetEC2SecurityGroups() const
Definition: ClusterSecurityGroup.h:140
Aws::Redshift::Model::ClusterSecurityGroup::GetTags
const Aws::Vector< Tag > & GetTags() const
Definition: ClusterSecurityGroup.h:237
Aws::Redshift::Model::ClusterSecurityGroup::WithClusterSecurityGroupName
ClusterSecurityGroup & WithClusterSecurityGroupName(Aws::String &&value)
Definition: ClusterSecurityGroup.h:86