AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
DistributionConfiguration.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/imagebuilder/Imagebuilder_EXPORTS.h>
11#include <aws/imagebuilder/model/Distribution.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace imagebuilder {
23namespace Model {
24
31 public:
32 AWS_IMAGEBUILDER_API DistributionConfiguration() = default;
35 AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
41 inline const Aws::String& GetArn() const { return m_arn; }
42 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
43 template <typename ArnT = Aws::String>
44 void SetArn(ArnT&& value) {
45 m_arnHasBeenSet = true;
46 m_arn = std::forward<ArnT>(value);
47 }
48 template <typename ArnT = Aws::String>
50 SetArn(std::forward<ArnT>(value));
51 return *this;
52 }
54
56
59 inline const Aws::String& GetName() const { return m_name; }
60 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
61 template <typename NameT = Aws::String>
62 void SetName(NameT&& value) {
63 m_nameHasBeenSet = true;
64 m_name = std::forward<NameT>(value);
65 }
66 template <typename NameT = Aws::String>
68 SetName(std::forward<NameT>(value));
69 return *this;
70 }
72
74
77 inline const Aws::String& GetDescription() const { return m_description; }
78 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
79 template <typename DescriptionT = Aws::String>
80 void SetDescription(DescriptionT&& value) {
81 m_descriptionHasBeenSet = true;
82 m_description = std::forward<DescriptionT>(value);
83 }
84 template <typename DescriptionT = Aws::String>
86 SetDescription(std::forward<DescriptionT>(value));
87 return *this;
88 }
90
92
96 inline const Aws::Vector<Distribution>& GetDistributions() const { return m_distributions; }
97 inline bool DistributionsHasBeenSet() const { return m_distributionsHasBeenSet; }
98 template <typename DistributionsT = Aws::Vector<Distribution>>
99 void SetDistributions(DistributionsT&& value) {
100 m_distributionsHasBeenSet = true;
101 m_distributions = std::forward<DistributionsT>(value);
102 }
103 template <typename DistributionsT = Aws::Vector<Distribution>>
105 SetDistributions(std::forward<DistributionsT>(value));
106 return *this;
107 }
108 template <typename DistributionsT = Distribution>
110 m_distributionsHasBeenSet = true;
111 m_distributions.emplace_back(std::forward<DistributionsT>(value));
112 return *this;
113 }
115
117
120 inline int GetTimeoutMinutes() const { return m_timeoutMinutes; }
121 inline bool TimeoutMinutesHasBeenSet() const { return m_timeoutMinutesHasBeenSet; }
122 inline void SetTimeoutMinutes(int value) {
123 m_timeoutMinutesHasBeenSet = true;
124 m_timeoutMinutes = value;
125 }
127 SetTimeoutMinutes(value);
128 return *this;
129 }
131
133
136 inline const Aws::String& GetDateCreated() const { return m_dateCreated; }
137 inline bool DateCreatedHasBeenSet() const { return m_dateCreatedHasBeenSet; }
138 template <typename DateCreatedT = Aws::String>
139 void SetDateCreated(DateCreatedT&& value) {
140 m_dateCreatedHasBeenSet = true;
141 m_dateCreated = std::forward<DateCreatedT>(value);
142 }
143 template <typename DateCreatedT = Aws::String>
145 SetDateCreated(std::forward<DateCreatedT>(value));
146 return *this;
147 }
149
151
154 inline const Aws::String& GetDateUpdated() const { return m_dateUpdated; }
155 inline bool DateUpdatedHasBeenSet() const { return m_dateUpdatedHasBeenSet; }
156 template <typename DateUpdatedT = Aws::String>
157 void SetDateUpdated(DateUpdatedT&& value) {
158 m_dateUpdatedHasBeenSet = true;
159 m_dateUpdated = std::forward<DateUpdatedT>(value);
160 }
161 template <typename DateUpdatedT = Aws::String>
163 SetDateUpdated(std::forward<DateUpdatedT>(value));
164 return *this;
165 }
167
169
172 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
173 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
174 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
175 void SetTags(TagsT&& value) {
176 m_tagsHasBeenSet = true;
177 m_tags = std::forward<TagsT>(value);
178 }
179 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
181 SetTags(std::forward<TagsT>(value));
182 return *this;
183 }
184 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
185 DistributionConfiguration& AddTags(TagsKeyT&& key, TagsValueT&& value) {
186 m_tagsHasBeenSet = true;
187 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
188 return *this;
189 }
191 private:
192 Aws::String m_arn;
193
194 Aws::String m_name;
195
196 Aws::String m_description;
197
198 Aws::Vector<Distribution> m_distributions;
199
200 int m_timeoutMinutes{0};
201
202 Aws::String m_dateCreated;
203
204 Aws::String m_dateUpdated;
205
207 bool m_arnHasBeenSet = false;
208 bool m_nameHasBeenSet = false;
209 bool m_descriptionHasBeenSet = false;
210 bool m_distributionsHasBeenSet = false;
211 bool m_timeoutMinutesHasBeenSet = false;
212 bool m_dateCreatedHasBeenSet = false;
213 bool m_dateUpdatedHasBeenSet = false;
214 bool m_tagsHasBeenSet = false;
215};
216
217} // namespace Model
218} // namespace imagebuilder
219} // namespace Aws
DistributionConfiguration & AddTags(TagsKeyT &&key, TagsValueT &&value)
AWS_IMAGEBUILDER_API DistributionConfiguration()=default
DistributionConfiguration & AddDistributions(DistributionsT &&value)
DistributionConfiguration & WithName(NameT &&value)
DistributionConfiguration & WithDistributions(DistributionsT &&value)
DistributionConfiguration & WithTimeoutMinutes(int value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
AWS_IMAGEBUILDER_API DistributionConfiguration(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< Distribution > & GetDistributions() const
DistributionConfiguration & WithArn(ArnT &&value)
DistributionConfiguration & WithDescription(DescriptionT &&value)
DistributionConfiguration & WithDateUpdated(DateUpdatedT &&value)
DistributionConfiguration & WithTags(TagsT &&value)
AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_IMAGEBUILDER_API DistributionConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
DistributionConfiguration & WithDateCreated(DateCreatedT &&value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue