AWS SDK for C++

AWS SDK for C++ Version 1.11.644

Loading...
Searching...
No Matches
ImageUsageReport.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/core/utils/DateTime.h>
12#include <aws/ec2/model/ImageUsageResourceType.h>
13#include <aws/ec2/model/Tag.h>
14#include <utility>
15
16namespace Aws
17{
18namespace Utils
19{
20namespace Xml
21{
22 class XmlNode;
23} // namespace Xml
24} // namespace Utils
25namespace EC2
26{
27namespace Model
28{
29
37 {
38 public:
39 AWS_EC2_API ImageUsageReport() = default;
40 AWS_EC2_API ImageUsageReport(const Aws::Utils::Xml::XmlNode& xmlNode);
42
43 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
44 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
45
46
48
51 inline const Aws::String& GetImageId() const { return m_imageId; }
52 inline bool ImageIdHasBeenSet() const { return m_imageIdHasBeenSet; }
53 template<typename ImageIdT = Aws::String>
54 void SetImageId(ImageIdT&& value) { m_imageIdHasBeenSet = true; m_imageId = std::forward<ImageIdT>(value); }
55 template<typename ImageIdT = Aws::String>
56 ImageUsageReport& WithImageId(ImageIdT&& value) { SetImageId(std::forward<ImageIdT>(value)); return *this;}
58
60
63 inline const Aws::String& GetReportId() const { return m_reportId; }
64 inline bool ReportIdHasBeenSet() const { return m_reportIdHasBeenSet; }
65 template<typename ReportIdT = Aws::String>
66 void SetReportId(ReportIdT&& value) { m_reportIdHasBeenSet = true; m_reportId = std::forward<ReportIdT>(value); }
67 template<typename ReportIdT = Aws::String>
68 ImageUsageReport& WithReportId(ReportIdT&& value) { SetReportId(std::forward<ReportIdT>(value)); return *this;}
70
72
75 inline const Aws::Vector<ImageUsageResourceType>& GetResourceTypes() const { return m_resourceTypes; }
76 inline bool ResourceTypesHasBeenSet() const { return m_resourceTypesHasBeenSet; }
77 template<typename ResourceTypesT = Aws::Vector<ImageUsageResourceType>>
78 void SetResourceTypes(ResourceTypesT&& value) { m_resourceTypesHasBeenSet = true; m_resourceTypes = std::forward<ResourceTypesT>(value); }
79 template<typename ResourceTypesT = Aws::Vector<ImageUsageResourceType>>
80 ImageUsageReport& WithResourceTypes(ResourceTypesT&& value) { SetResourceTypes(std::forward<ResourceTypesT>(value)); return *this;}
81 template<typename ResourceTypesT = ImageUsageResourceType>
82 ImageUsageReport& AddResourceTypes(ResourceTypesT&& value) { m_resourceTypesHasBeenSet = true; m_resourceTypes.emplace_back(std::forward<ResourceTypesT>(value)); return *this; }
84
86
90 inline const Aws::Vector<Aws::String>& GetAccountIds() const { return m_accountIds; }
91 inline bool AccountIdsHasBeenSet() const { return m_accountIdsHasBeenSet; }
92 template<typename AccountIdsT = Aws::Vector<Aws::String>>
93 void SetAccountIds(AccountIdsT&& value) { m_accountIdsHasBeenSet = true; m_accountIds = std::forward<AccountIdsT>(value); }
94 template<typename AccountIdsT = Aws::Vector<Aws::String>>
95 ImageUsageReport& WithAccountIds(AccountIdsT&& value) { SetAccountIds(std::forward<AccountIdsT>(value)); return *this;}
96 template<typename AccountIdsT = Aws::String>
97 ImageUsageReport& AddAccountIds(AccountIdsT&& value) { m_accountIdsHasBeenSet = true; m_accountIds.emplace_back(std::forward<AccountIdsT>(value)); return *this; }
99
101
108 inline const Aws::String& GetState() const { return m_state; }
109 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
110 template<typename StateT = Aws::String>
111 void SetState(StateT&& value) { m_stateHasBeenSet = true; m_state = std::forward<StateT>(value); }
112 template<typename StateT = Aws::String>
113 ImageUsageReport& WithState(StateT&& value) { SetState(std::forward<StateT>(value)); return *this;}
115
117
121 inline const Aws::String& GetStateReason() const { return m_stateReason; }
122 inline bool StateReasonHasBeenSet() const { return m_stateReasonHasBeenSet; }
123 template<typename StateReasonT = Aws::String>
124 void SetStateReason(StateReasonT&& value) { m_stateReasonHasBeenSet = true; m_stateReason = std::forward<StateReasonT>(value); }
125 template<typename StateReasonT = Aws::String>
126 ImageUsageReport& WithStateReason(StateReasonT&& value) { SetStateReason(std::forward<StateReasonT>(value)); return *this;}
128
130
133 inline const Aws::Utils::DateTime& GetCreationTime() const { return m_creationTime; }
134 inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; }
135 template<typename CreationTimeT = Aws::Utils::DateTime>
136 void SetCreationTime(CreationTimeT&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::forward<CreationTimeT>(value); }
137 template<typename CreationTimeT = Aws::Utils::DateTime>
138 ImageUsageReport& WithCreationTime(CreationTimeT&& value) { SetCreationTime(std::forward<CreationTimeT>(value)); return *this;}
140
142
146 inline const Aws::Utils::DateTime& GetExpirationTime() const { return m_expirationTime; }
147 inline bool ExpirationTimeHasBeenSet() const { return m_expirationTimeHasBeenSet; }
148 template<typename ExpirationTimeT = Aws::Utils::DateTime>
149 void SetExpirationTime(ExpirationTimeT&& value) { m_expirationTimeHasBeenSet = true; m_expirationTime = std::forward<ExpirationTimeT>(value); }
150 template<typename ExpirationTimeT = Aws::Utils::DateTime>
151 ImageUsageReport& WithExpirationTime(ExpirationTimeT&& value) { SetExpirationTime(std::forward<ExpirationTimeT>(value)); return *this;}
153
155
158 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
159 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
160 template<typename TagsT = Aws::Vector<Tag>>
161 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
162 template<typename TagsT = Aws::Vector<Tag>>
163 ImageUsageReport& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
164 template<typename TagsT = Tag>
165 ImageUsageReport& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
167 private:
168
169 Aws::String m_imageId;
170 bool m_imageIdHasBeenSet = false;
171
172 Aws::String m_reportId;
173 bool m_reportIdHasBeenSet = false;
174
176 bool m_resourceTypesHasBeenSet = false;
177
178 Aws::Vector<Aws::String> m_accountIds;
179 bool m_accountIdsHasBeenSet = false;
180
181 Aws::String m_state;
182 bool m_stateHasBeenSet = false;
183
184 Aws::String m_stateReason;
185 bool m_stateReasonHasBeenSet = false;
186
187 Aws::Utils::DateTime m_creationTime{};
188 bool m_creationTimeHasBeenSet = false;
189
190 Aws::Utils::DateTime m_expirationTime{};
191 bool m_expirationTimeHasBeenSet = false;
192
193 Aws::Vector<Tag> m_tags;
194 bool m_tagsHasBeenSet = false;
195 };
196
197} // namespace Model
198} // namespace EC2
199} // namespace Aws
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
const Aws::Utils::DateTime & GetExpirationTime() const
const Aws::Utils::DateTime & GetCreationTime() const
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
ImageUsageReport & WithCreationTime(CreationTimeT &&value)
ImageUsageReport & AddTags(TagsT &&value)
void SetImageId(ImageIdT &&value)
ImageUsageReport & WithResourceTypes(ResourceTypesT &&value)
ImageUsageReport & WithExpirationTime(ExpirationTimeT &&value)
const Aws::String & GetReportId() const
void SetResourceTypes(ResourceTypesT &&value)
ImageUsageReport & WithImageId(ImageIdT &&value)
void SetReportId(ReportIdT &&value)
const Aws::String & GetState() const
void SetCreationTime(CreationTimeT &&value)
ImageUsageReport & WithAccountIds(AccountIdsT &&value)
ImageUsageReport & WithStateReason(StateReasonT &&value)
AWS_EC2_API ImageUsageReport()=default
void SetAccountIds(AccountIdsT &&value)
AWS_EC2_API ImageUsageReport(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_EC2_API ImageUsageReport & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::Vector< Aws::String > & GetAccountIds() const
ImageUsageReport & WithReportId(ReportIdT &&value)
const Aws::Vector< ImageUsageResourceType > & GetResourceTypes() const
void SetExpirationTime(ExpirationTimeT &&value)
ImageUsageReport & WithState(StateT &&value)
void SetStateReason(StateReasonT &&value)
const Aws::String & GetImageId() const
ImageUsageReport & AddResourceTypes(ResourceTypesT &&value)
ImageUsageReport & WithTags(TagsT &&value)
const Aws::Vector< Tag > & GetTags() const
ImageUsageReport & AddAccountIds(AccountIdsT &&value)
const Aws::String & GetStateReason() 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