7#include <aws/imagebuilder/Imagebuilder_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/imagebuilder/model/LifecyclePolicyStatus.h>
10#include <aws/imagebuilder/model/LifecyclePolicyResourceType.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/imagebuilder/model/LifecyclePolicyResourceSelection.h>
13#include <aws/core/utils/DateTime.h>
14#include <aws/core/utils/memory/stl/AWSMap.h>
15#include <aws/imagebuilder/model/LifecyclePolicyDetail.h>
54 template<
typename ArnT = Aws::String>
55 void SetArn(ArnT&& value) { m_arnHasBeenSet =
true; m_arn = std::forward<ArnT>(value); }
56 template<
typename ArnT = Aws::String>
66 template<
typename NameT = Aws::String>
67 void SetName(NameT&& value) { m_nameHasBeenSet =
true; m_name = std::forward<NameT>(value); }
68 template<
typename NameT = Aws::String>
78 template<
typename DescriptionT = Aws::String>
79 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet =
true; m_description = std::forward<DescriptionT>(value); }
80 template<
typename DescriptionT = Aws::String>
101 template<
typename ExecutionRoleT = Aws::String>
102 void SetExecutionRole(ExecutionRoleT&& value) { m_executionRoleHasBeenSet =
true; m_executionRole = std::forward<ExecutionRoleT>(value); }
103 template<
typename ExecutionRoleT = Aws::String>
123 template<
typename PolicyDetailsT = Aws::Vector<LifecyclePolicyDetail>>
124 void SetPolicyDetails(PolicyDetailsT&& value) { m_policyDetailsHasBeenSet =
true; m_policyDetails = std::forward<PolicyDetailsT>(value); }
125 template<
typename PolicyDetailsT = Aws::Vector<LifecyclePolicyDetail>>
127 template<
typename PolicyDetailsT = LifecyclePolicyDetail>
128 LifecyclePolicy&
AddPolicyDetails(PolicyDetailsT&& value) { m_policyDetailsHasBeenSet =
true; m_policyDetails.emplace_back(std::forward<PolicyDetailsT>(value));
return *
this; }
137 template<
typename ResourceSelectionT = LifecyclePolicyResourceSelection>
138 void SetResourceSelection(ResourceSelectionT&& value) { m_resourceSelectionHasBeenSet =
true; m_resourceSelection = std::forward<ResourceSelectionT>(value); }
139 template<
typename ResourceSelectionT = LifecyclePolicyResourceSelection>
149 template<
typename DateCreatedT = Aws::Utils::DateTime>
150 void SetDateCreated(DateCreatedT&& value) { m_dateCreatedHasBeenSet =
true; m_dateCreated = std::forward<DateCreatedT>(value); }
151 template<
typename DateCreatedT = Aws::Utils::DateTime>
161 template<
typename DateUpdatedT = Aws::Utils::DateTime>
162 void SetDateUpdated(DateUpdatedT&& value) { m_dateUpdatedHasBeenSet =
true; m_dateUpdated = std::forward<DateUpdatedT>(value); }
163 template<
typename DateUpdatedT = Aws::Utils::DateTime>
173 template<
typename DateLastRunT = Aws::Utils::DateTime>
174 void SetDateLastRun(DateLastRunT&& value) { m_dateLastRunHasBeenSet =
true; m_dateLastRun = std::forward<DateLastRunT>(value); }
175 template<
typename DateLastRunT = Aws::Utils::DateTime>
187 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
188 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
189 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
191 template<
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
193 m_tagsHasBeenSet =
true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
return *
this;
199 bool m_arnHasBeenSet =
false;
202 bool m_nameHasBeenSet =
false;
205 bool m_descriptionHasBeenSet =
false;
208 bool m_statusHasBeenSet =
false;
211 bool m_executionRoleHasBeenSet =
false;
214 bool m_resourceTypeHasBeenSet =
false;
217 bool m_policyDetailsHasBeenSet =
false;
219 LifecyclePolicyResourceSelection m_resourceSelection;
220 bool m_resourceSelectionHasBeenSet =
false;
223 bool m_dateCreatedHasBeenSet =
false;
226 bool m_dateUpdatedHasBeenSet =
false;
229 bool m_dateLastRunHasBeenSet =
false;
232 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