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 {
49 template <
typename ArnT = Aws::String>
51 m_arnHasBeenSet =
true;
52 m_arn = std::forward<ArnT>(value);
54 template <
typename ArnT = Aws::String>
56 SetArn(std::forward<ArnT>(value));
67 template <
typename NameT = Aws::String>
69 m_nameHasBeenSet =
true;
70 m_name = std::forward<NameT>(value);
72 template <
typename NameT = Aws::String>
74 SetName(std::forward<NameT>(value));
85 template <
typename DescriptionT = Aws::String>
87 m_descriptionHasBeenSet =
true;
88 m_description = std::forward<DescriptionT>(value);
90 template <
typename DescriptionT = Aws::String>
106 m_statusHasBeenSet =
true;
122 template <
typename ExecutionRoleT = Aws::String>
124 m_executionRoleHasBeenSet =
true;
125 m_executionRole = std::forward<ExecutionRoleT>(value);
127 template <
typename ExecutionRoleT = Aws::String>
141 m_resourceTypeHasBeenSet =
true;
142 m_resourceType = value;
158 template <
typename PolicyDetailsT = Aws::Vector<LifecyclePolicyDetail>>
160 m_policyDetailsHasBeenSet =
true;
161 m_policyDetails = std::forward<PolicyDetailsT>(value);
163 template <
typename PolicyDetailsT = Aws::Vector<LifecyclePolicyDetail>>
168 template <
typename PolicyDetailsT = LifecyclePolicyDetail>
170 m_policyDetailsHasBeenSet =
true;
171 m_policyDetails.emplace_back(std::forward<PolicyDetailsT>(value));
182 template <
typename ResourceSelectionT = LifecyclePolicyResourceSelection>
184 m_resourceSelectionHasBeenSet =
true;
185 m_resourceSelection = std::forward<ResourceSelectionT>(value);
187 template <
typename ResourceSelectionT = LifecyclePolicyResourceSelection>
200 template <
typename DateCreatedT = Aws::Utils::DateTime>
202 m_dateCreatedHasBeenSet =
true;
203 m_dateCreated = std::forward<DateCreatedT>(value);
205 template <
typename DateCreatedT = Aws::Utils::DateTime>
218 template <
typename DateUpdatedT = Aws::Utils::DateTime>
220 m_dateUpdatedHasBeenSet =
true;
221 m_dateUpdated = std::forward<DateUpdatedT>(value);
223 template <
typename DateUpdatedT = Aws::Utils::DateTime>
236 template <
typename DateLastRunT = Aws::Utils::DateTime>
238 m_dateLastRunHasBeenSet =
true;
239 m_dateLastRun = std::forward<DateLastRunT>(value);
241 template <
typename DateLastRunT = Aws::Utils::DateTime>
256 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
258 m_tagsHasBeenSet =
true;
259 m_tags = std::forward<TagsT>(value);
261 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
263 SetTags(std::forward<TagsT>(value));
266 template <
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
268 m_tagsHasBeenSet =
true;
269 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
288 LifecyclePolicyResourceSelection m_resourceSelection;
297 bool m_arnHasBeenSet =
false;
298 bool m_nameHasBeenSet =
false;
299 bool m_descriptionHasBeenSet =
false;
300 bool m_statusHasBeenSet =
false;
301 bool m_executionRoleHasBeenSet =
false;
302 bool m_resourceTypeHasBeenSet =
false;
303 bool m_policyDetailsHasBeenSet =
false;
304 bool m_resourceSelectionHasBeenSet =
false;
305 bool m_dateCreatedHasBeenSet =
false;
306 bool m_dateUpdatedHasBeenSet =
false;
307 bool m_dateLastRunHasBeenSet =
false;
308 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