7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/imagebuilder/Imagebuilder_EXPORTS.h>
12#include <aws/imagebuilder/model/LifecyclePolicyDetail.h>
13#include <aws/imagebuilder/model/LifecyclePolicyResourceSelection.h>
14#include <aws/imagebuilder/model/LifecyclePolicyResourceType.h>
15#include <aws/imagebuilder/model/LifecyclePolicyStatus.h>
26namespace imagebuilder {
48 template <
typename ArnT = Aws::String>
50 m_arnHasBeenSet =
true;
51 m_arn = std::forward<ArnT>(value);
53 template <
typename ArnT = Aws::String>
55 SetArn(std::forward<ArnT>(value));
66 template <
typename NameT = Aws::String>
68 m_nameHasBeenSet =
true;
69 m_name = std::forward<NameT>(value);
71 template <
typename NameT = Aws::String>
73 SetName(std::forward<NameT>(value));
84 template <
typename DescriptionT = Aws::String>
86 m_descriptionHasBeenSet =
true;
87 m_description = std::forward<DescriptionT>(value);
89 template <
typename DescriptionT = Aws::String>
103 m_statusHasBeenSet =
true;
119 template <
typename ExecutionRoleT = Aws::String>
121 m_executionRoleHasBeenSet =
true;
122 m_executionRole = std::forward<ExecutionRoleT>(value);
124 template <
typename ExecutionRoleT = Aws::String>
138 m_resourceTypeHasBeenSet =
true;
139 m_resourceType = value;
153 template <
typename PolicyDetailsT = Aws::Vector<LifecyclePolicyDetail>>
155 m_policyDetailsHasBeenSet =
true;
156 m_policyDetails = std::forward<PolicyDetailsT>(value);
158 template <
typename PolicyDetailsT = Aws::Vector<LifecyclePolicyDetail>>
163 template <
typename PolicyDetailsT = LifecyclePolicyDetail>
165 m_policyDetailsHasBeenSet =
true;
166 m_policyDetails.emplace_back(std::forward<PolicyDetailsT>(value));
177 template <
typename ResourceSelectionT = LifecyclePolicyResourceSelection>
179 m_resourceSelectionHasBeenSet =
true;
180 m_resourceSelection = std::forward<ResourceSelectionT>(value);
182 template <
typename ResourceSelectionT = LifecyclePolicyResourceSelection>
195 template <
typename DateCreatedT = Aws::Utils::DateTime>
197 m_dateCreatedHasBeenSet =
true;
198 m_dateCreated = std::forward<DateCreatedT>(value);
200 template <
typename DateCreatedT = Aws::Utils::DateTime>
213 template <
typename DateUpdatedT = Aws::Utils::DateTime>
215 m_dateUpdatedHasBeenSet =
true;
216 m_dateUpdated = std::forward<DateUpdatedT>(value);
218 template <
typename DateUpdatedT = Aws::Utils::DateTime>
231 template <
typename DateLastRunT = Aws::Utils::DateTime>
233 m_dateLastRunHasBeenSet =
true;
234 m_dateLastRun = std::forward<DateLastRunT>(value);
236 template <
typename DateLastRunT = Aws::Utils::DateTime>
251 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
253 m_tagsHasBeenSet =
true;
254 m_tags = std::forward<TagsT>(value);
256 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
258 SetTags(std::forward<TagsT>(value));
261 template <
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
263 m_tagsHasBeenSet =
true;
264 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
283 LifecyclePolicyResourceSelection m_resourceSelection;
292 bool m_arnHasBeenSet =
false;
293 bool m_nameHasBeenSet =
false;
294 bool m_descriptionHasBeenSet =
false;
295 bool m_statusHasBeenSet =
false;
296 bool m_executionRoleHasBeenSet =
false;
297 bool m_resourceTypeHasBeenSet =
false;
298 bool m_policyDetailsHasBeenSet =
false;
299 bool m_resourceSelectionHasBeenSet =
false;
300 bool m_dateCreatedHasBeenSet =
false;
301 bool m_dateUpdatedHasBeenSet =
false;
302 bool m_dateLastRunHasBeenSet =
false;
303 bool m_tagsHasBeenSet =
false;
AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const
void SetExecutionRole(ExecutionRoleT &&value)
LifecyclePolicy & WithStatus(LifecyclePolicyStatus value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
void SetName(NameT &&value)
const Aws::Utils::DateTime & GetDateUpdated() const
const Aws::Vector< LifecyclePolicyDetail > & GetPolicyDetails() const
bool DescriptionHasBeenSet() const
const Aws::String & GetExecutionRole() const
LifecyclePolicy & WithDateLastRun(DateLastRunT &&value)
void SetDescription(DescriptionT &&value)
void SetPolicyDetails(PolicyDetailsT &&value)
bool TagsHasBeenSet() const
void SetDateCreated(DateCreatedT &&value)
LifecyclePolicy & WithDateUpdated(DateUpdatedT &&value)
LifecyclePolicy & WithResourceSelection(ResourceSelectionT &&value)
LifecyclePolicy & AddPolicyDetails(PolicyDetailsT &&value)
bool ResourceSelectionHasBeenSet() const
LifecyclePolicy & WithArn(ArnT &&value)
AWS_IMAGEBUILDER_API LifecyclePolicy()=default
AWS_IMAGEBUILDER_API LifecyclePolicy & operator=(Aws::Utils::Json::JsonView jsonValue)
bool DateUpdatedHasBeenSet() const
bool ArnHasBeenSet() const
const LifecyclePolicyResourceSelection & GetResourceSelection() const
void SetTags(TagsT &&value)
const Aws::String & GetDescription() const
bool StatusHasBeenSet() const
LifecyclePolicy & WithResourceType(LifecyclePolicyResourceType value)
bool ResourceTypeHasBeenSet() const
void SetResourceSelection(ResourceSelectionT &&value)
AWS_IMAGEBUILDER_API LifecyclePolicy(Aws::Utils::Json::JsonView jsonValue)
LifecyclePolicy & WithPolicyDetails(PolicyDetailsT &&value)
void SetDateUpdated(DateUpdatedT &&value)
bool DateCreatedHasBeenSet() const
const Aws::String & GetArn() const
bool PolicyDetailsHasBeenSet() const
LifecyclePolicyStatus GetStatus() const
const Aws::String & GetName() const
void SetStatus(LifecyclePolicyStatus value)
const Aws::Utils::DateTime & GetDateLastRun() const
LifecyclePolicy & WithDescription(DescriptionT &&value)
LifecyclePolicy & WithTags(TagsT &&value)
LifecyclePolicy & WithExecutionRole(ExecutionRoleT &&value)
bool DateLastRunHasBeenSet() const
bool ExecutionRoleHasBeenSet() const
LifecyclePolicy & WithDateCreated(DateCreatedT &&value)
void SetResourceType(LifecyclePolicyResourceType value)
LifecyclePolicy & WithName(NameT &&value)
bool NameHasBeenSet() const
LifecyclePolicyResourceType GetResourceType() const
void SetDateLastRun(DateLastRunT &&value)
const Aws::Utils::DateTime & GetDateCreated() const
void SetArn(ArnT &&value)
LifecyclePolicy & AddTags(TagsKeyT &&key, TagsValueT &&value)
LifecyclePolicyResourceType
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