AWS SDK for C++  1.9.67
AWS SDK for C++
LaunchTemplateTagSpecification.h
Go to the documentation of this file.
1 
6 #pragma once
7 #include <aws/ec2/EC2_EXPORTS.h>
11 #include <aws/ec2/model/Tag.h>
12 #include <utility>
13 
14 namespace Aws
15 {
16 namespace Utils
17 {
18 namespace Xml
19 {
20  class XmlNode;
21 } // namespace Xml
22 } // namespace Utils
23 namespace EC2
24 {
25 namespace Model
26 {
27 
34  {
35  public:
39 
40  void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
41  void OutputToStream(Aws::OStream& oStream, const char* location) const;
42 
43 
47  inline const ResourceType& GetResourceType() const{ return m_resourceType; }
48 
52  inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; }
53 
57  inline void SetResourceType(const ResourceType& value) { m_resourceTypeHasBeenSet = true; m_resourceType = value; }
58 
62  inline void SetResourceType(ResourceType&& value) { m_resourceTypeHasBeenSet = true; m_resourceType = std::move(value); }
63 
67  inline LaunchTemplateTagSpecification& WithResourceType(const ResourceType& value) { SetResourceType(value); return *this;}
68 
72  inline LaunchTemplateTagSpecification& WithResourceType(ResourceType&& value) { SetResourceType(std::move(value)); return *this;}
73 
74 
78  inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
79 
83  inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
84 
88  inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
89 
93  inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
94 
98  inline LaunchTemplateTagSpecification& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
99 
103  inline LaunchTemplateTagSpecification& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
104 
108  inline LaunchTemplateTagSpecification& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
109 
113  inline LaunchTemplateTagSpecification& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
114 
115  private:
116 
117  ResourceType m_resourceType;
118  bool m_resourceTypeHasBeenSet;
119 
120  Aws::Vector<Tag> m_tags;
121  bool m_tagsHasBeenSet;
122  };
123 
124 } // namespace Model
125 } // namespace EC2
126 } // namespace Aws
Aws::EC2::Model::LaunchTemplateTagSpecification::SetTags
void SetTags(const Aws::Vector< Tag > &value)
Definition: LaunchTemplateTagSpecification.h:88
Aws::EC2::Model::LaunchTemplateTagSpecification::WithTags
LaunchTemplateTagSpecification & WithTags(const Aws::Vector< Tag > &value)
Definition: LaunchTemplateTagSpecification.h:98
Aws::EC2::Model::Tag
Definition: Tag.h:32
Aws::EC2::Model::ResourceType
ResourceType
Definition: ResourceType.h:17
Aws::EC2::Model::LaunchTemplateTagSpecification::SetResourceType
void SetResourceType(ResourceType &&value)
Definition: LaunchTemplateTagSpecification.h:62
Aws::EC2::Model::LaunchTemplateTagSpecification::operator=
LaunchTemplateTagSpecification & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
Aws::EC2::Model::LaunchTemplateTagSpecification::WithResourceType
LaunchTemplateTagSpecification & WithResourceType(const ResourceType &value)
Definition: LaunchTemplateTagSpecification.h:67
AWS_EC2_API
#define AWS_EC2_API
Definition: EC2_EXPORTS.h:28
Aws::EC2::Model::LaunchTemplateTagSpecification::ResourceTypeHasBeenSet
bool ResourceTypeHasBeenSet() const
Definition: LaunchTemplateTagSpecification.h:52
Aws::EC2::Model::LaunchTemplateTagSpecification::GetTags
const Aws::Vector< Tag > & GetTags() const
Definition: LaunchTemplateTagSpecification.h:78
Aws::Vector
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
Aws::EC2::Model::LaunchTemplateTagSpecification::AddTags
LaunchTemplateTagSpecification & AddTags(Tag &&value)
Definition: LaunchTemplateTagSpecification.h:113
AWSStreamFwd.h
AWSVector.h
Tag.h
Aws::EC2::Model::LaunchTemplateTagSpecification::SetResourceType
void SetResourceType(const ResourceType &value)
Definition: LaunchTemplateTagSpecification.h:57
Aws::OStream
std::basic_ostream< char, std::char_traits< char > > OStream
Definition: AWSStreamFwd.h:21
Aws::EC2::Model::LaunchTemplateTagSpecification::OutputToStream
void OutputToStream(Aws::OStream &oStream, const char *location) const
Aws::EC2::Model::LaunchTemplateTagSpecification::SetTags
void SetTags(Aws::Vector< Tag > &&value)
Definition: LaunchTemplateTagSpecification.h:93
Aws::Utils::Xml::XmlNode
Definition: XmlSerializer.h:53
Aws::EC2::Model::LaunchTemplateTagSpecification::LaunchTemplateTagSpecification
LaunchTemplateTagSpecification()
Aws::EC2::Model::LaunchTemplateTagSpecification::WithResourceType
LaunchTemplateTagSpecification & WithResourceType(ResourceType &&value)
Definition: LaunchTemplateTagSpecification.h:72
ResourceType.h
Aws::EC2::Model::LaunchTemplateTagSpecification::OutputToStream
void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
Aws::EC2::Model::LaunchTemplateTagSpecification::AddTags
LaunchTemplateTagSpecification & AddTags(const Tag &value)
Definition: LaunchTemplateTagSpecification.h:108
Aws
Definition: AccessManagementClient.h:15
Aws::EC2::Model::LaunchTemplateTagSpecification
Definition: LaunchTemplateTagSpecification.h:34
index
int index
Definition: cJSON.h:181
Aws::EC2::Model::LaunchTemplateTagSpecification::LaunchTemplateTagSpecification
LaunchTemplateTagSpecification(const Aws::Utils::Xml::XmlNode &xmlNode)
Aws::EC2::Model::LaunchTemplateTagSpecification::WithTags
LaunchTemplateTagSpecification & WithTags(Aws::Vector< Tag > &&value)
Definition: LaunchTemplateTagSpecification.h:103
Aws::EC2::Model::LaunchTemplateTagSpecification::TagsHasBeenSet
bool TagsHasBeenSet() const
Definition: LaunchTemplateTagSpecification.h:83
Aws::EC2::Model::LaunchTemplateTagSpecification::GetResourceType
const ResourceType & GetResourceType() const
Definition: LaunchTemplateTagSpecification.h:47
EC2_EXPORTS.h