AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
DistributionConfiguration.h
1
6#pragma once
7#include <aws/imagebuilder/Imagebuilder_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/core/utils/memory/stl/AWSMap.h>
11#include <aws/imagebuilder/model/Distribution.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace imagebuilder
25{
26namespace Model
27{
28
35 {
36 public:
37 AWS_IMAGEBUILDER_API DistributionConfiguration() = default;
40 AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const;
41
42
44
47 inline const Aws::String& GetArn() const { return m_arn; }
48 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
49 template<typename ArnT = Aws::String>
50 void SetArn(ArnT&& value) { m_arnHasBeenSet = true; m_arn = std::forward<ArnT>(value); }
51 template<typename ArnT = Aws::String>
52 DistributionConfiguration& WithArn(ArnT&& value) { SetArn(std::forward<ArnT>(value)); return *this;}
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) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
63 template<typename NameT = Aws::String>
64 DistributionConfiguration& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
66
68
71 inline const Aws::String& GetDescription() const { return m_description; }
72 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
73 template<typename DescriptionT = Aws::String>
74 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
75 template<typename DescriptionT = Aws::String>
76 DistributionConfiguration& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
78
80
84 inline const Aws::Vector<Distribution>& GetDistributions() const { return m_distributions; }
85 inline bool DistributionsHasBeenSet() const { return m_distributionsHasBeenSet; }
86 template<typename DistributionsT = Aws::Vector<Distribution>>
87 void SetDistributions(DistributionsT&& value) { m_distributionsHasBeenSet = true; m_distributions = std::forward<DistributionsT>(value); }
88 template<typename DistributionsT = Aws::Vector<Distribution>>
89 DistributionConfiguration& WithDistributions(DistributionsT&& value) { SetDistributions(std::forward<DistributionsT>(value)); return *this;}
90 template<typename DistributionsT = Distribution>
91 DistributionConfiguration& AddDistributions(DistributionsT&& value) { m_distributionsHasBeenSet = true; m_distributions.emplace_back(std::forward<DistributionsT>(value)); return *this; }
93
95
98 inline int GetTimeoutMinutes() const { return m_timeoutMinutes; }
99 inline bool TimeoutMinutesHasBeenSet() const { return m_timeoutMinutesHasBeenSet; }
100 inline void SetTimeoutMinutes(int value) { m_timeoutMinutesHasBeenSet = true; m_timeoutMinutes = value; }
101 inline DistributionConfiguration& WithTimeoutMinutes(int value) { SetTimeoutMinutes(value); return *this;}
103
105
108 inline const Aws::String& GetDateCreated() const { return m_dateCreated; }
109 inline bool DateCreatedHasBeenSet() const { return m_dateCreatedHasBeenSet; }
110 template<typename DateCreatedT = Aws::String>
111 void SetDateCreated(DateCreatedT&& value) { m_dateCreatedHasBeenSet = true; m_dateCreated = std::forward<DateCreatedT>(value); }
112 template<typename DateCreatedT = Aws::String>
113 DistributionConfiguration& WithDateCreated(DateCreatedT&& value) { SetDateCreated(std::forward<DateCreatedT>(value)); return *this;}
115
117
120 inline const Aws::String& GetDateUpdated() const { return m_dateUpdated; }
121 inline bool DateUpdatedHasBeenSet() const { return m_dateUpdatedHasBeenSet; }
122 template<typename DateUpdatedT = Aws::String>
123 void SetDateUpdated(DateUpdatedT&& value) { m_dateUpdatedHasBeenSet = true; m_dateUpdated = std::forward<DateUpdatedT>(value); }
124 template<typename DateUpdatedT = Aws::String>
125 DistributionConfiguration& WithDateUpdated(DateUpdatedT&& value) { SetDateUpdated(std::forward<DateUpdatedT>(value)); return *this;}
127
129
132 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
133 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
134 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
135 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
136 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
137 DistributionConfiguration& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
138 template<typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
139 DistributionConfiguration& AddTags(TagsKeyT&& key, TagsValueT&& value) {
140 m_tagsHasBeenSet = true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value)); return *this;
141 }
143 private:
144
145 Aws::String m_arn;
146 bool m_arnHasBeenSet = false;
147
148 Aws::String m_name;
149 bool m_nameHasBeenSet = false;
150
151 Aws::String m_description;
152 bool m_descriptionHasBeenSet = false;
153
154 Aws::Vector<Distribution> m_distributions;
155 bool m_distributionsHasBeenSet = false;
156
157 int m_timeoutMinutes{0};
158 bool m_timeoutMinutesHasBeenSet = false;
159
160 Aws::String m_dateCreated;
161 bool m_dateCreatedHasBeenSet = false;
162
163 Aws::String m_dateUpdated;
164 bool m_dateUpdatedHasBeenSet = false;
165
167 bool m_tagsHasBeenSet = false;
168 };
169
170} // namespace Model
171} // namespace imagebuilder
172} // 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