AWS SDK for C++

AWS SDK for C++ Version 1.11.902

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
35 public:
36 AWS_IMAGEBUILDER_API DistributionConfiguration() = default;
39 AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const;
40
42
45 inline const Aws::String& GetArn() const { return m_arn; }
46 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
47 template <typename ArnT = Aws::String>
48 void SetArn(ArnT&& value) {
49 m_arnHasBeenSet = true;
50 m_arn = std::forward<ArnT>(value);
51 }
52 template <typename ArnT = Aws::String>
54 SetArn(std::forward<ArnT>(value));
55 return *this;
56 }
58
60
63 inline const Aws::String& GetName() const { return m_name; }
64 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
65 template <typename NameT = Aws::String>
66 void SetName(NameT&& value) {
67 m_nameHasBeenSet = true;
68 m_name = std::forward<NameT>(value);
69 }
70 template <typename NameT = Aws::String>
72 SetName(std::forward<NameT>(value));
73 return *this;
74 }
76
78
81 inline const Aws::String& GetDescription() const { return m_description; }
82 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
83 template <typename DescriptionT = Aws::String>
84 void SetDescription(DescriptionT&& value) {
85 m_descriptionHasBeenSet = true;
86 m_description = std::forward<DescriptionT>(value);
87 }
88 template <typename DescriptionT = Aws::String>
90 SetDescription(std::forward<DescriptionT>(value));
91 return *this;
92 }
94
96
100 inline const Aws::Vector<Distribution>& GetDistributions() const { return m_distributions; }
101 inline bool DistributionsHasBeenSet() const { return m_distributionsHasBeenSet; }
102 template <typename DistributionsT = Aws::Vector<Distribution>>
103 void SetDistributions(DistributionsT&& value) {
104 m_distributionsHasBeenSet = true;
105 m_distributions = std::forward<DistributionsT>(value);
106 }
107 template <typename DistributionsT = Aws::Vector<Distribution>>
109 SetDistributions(std::forward<DistributionsT>(value));
110 return *this;
111 }
112 template <typename DistributionsT = Distribution>
114 m_distributionsHasBeenSet = true;
115 m_distributions.emplace_back(std::forward<DistributionsT>(value));
116 return *this;
117 }
119
121
126 inline int GetTimeoutMinutes() const { return m_timeoutMinutes; }
127 inline bool TimeoutMinutesHasBeenSet() const { return m_timeoutMinutesHasBeenSet; }
128 inline void SetTimeoutMinutes(int value) {
129 m_timeoutMinutesHasBeenSet = true;
130 m_timeoutMinutes = value;
131 }
133 SetTimeoutMinutes(value);
134 return *this;
135 }
137
139
142 inline const Aws::String& GetDateCreated() const { return m_dateCreated; }
143 inline bool DateCreatedHasBeenSet() const { return m_dateCreatedHasBeenSet; }
144 template <typename DateCreatedT = Aws::String>
145 void SetDateCreated(DateCreatedT&& value) {
146 m_dateCreatedHasBeenSet = true;
147 m_dateCreated = std::forward<DateCreatedT>(value);
148 }
149 template <typename DateCreatedT = Aws::String>
151 SetDateCreated(std::forward<DateCreatedT>(value));
152 return *this;
153 }
155
157
160 inline const Aws::String& GetDateUpdated() const { return m_dateUpdated; }
161 inline bool DateUpdatedHasBeenSet() const { return m_dateUpdatedHasBeenSet; }
162 template <typename DateUpdatedT = Aws::String>
163 void SetDateUpdated(DateUpdatedT&& value) {
164 m_dateUpdatedHasBeenSet = true;
165 m_dateUpdated = std::forward<DateUpdatedT>(value);
166 }
167 template <typename DateUpdatedT = Aws::String>
169 SetDateUpdated(std::forward<DateUpdatedT>(value));
170 return *this;
171 }
173
175
178 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
179 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
180 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
181 void SetTags(TagsT&& value) {
182 m_tagsHasBeenSet = true;
183 m_tags = std::forward<TagsT>(value);
184 }
185 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
187 SetTags(std::forward<TagsT>(value));
188 return *this;
189 }
190 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
191 DistributionConfiguration& AddTags(TagsKeyT&& key, TagsValueT&& value) {
192 m_tagsHasBeenSet = true;
193 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
194 return *this;
195 }
197 private:
198 Aws::String m_arn;
199
200 Aws::String m_name;
201
202 Aws::String m_description;
203
204 Aws::Vector<Distribution> m_distributions;
205
206 int m_timeoutMinutes{0};
207
208 Aws::String m_dateCreated;
209
210 Aws::String m_dateUpdated;
211
213 bool m_arnHasBeenSet = false;
214 bool m_nameHasBeenSet = false;
215 bool m_descriptionHasBeenSet = false;
216 bool m_distributionsHasBeenSet = false;
217 bool m_timeoutMinutesHasBeenSet = false;
218 bool m_dateCreatedHasBeenSet = false;
219 bool m_dateUpdatedHasBeenSet = false;
220 bool m_tagsHasBeenSet = false;
221};
222
223} // namespace Model
224} // namespace imagebuilder
225} // 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