7#include <aws/dlm/DLM_EXPORTS.h>
8#include <aws/dlm/DLMRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/dlm/model/SettablePolicyStateValues.h>
11#include <aws/dlm/model/PolicyDetails.h>
12#include <aws/core/utils/memory/stl/AWSMap.h>
13#include <aws/dlm/model/DefaultPolicyTypeValues.h>
14#include <aws/core/utils/memory/stl/AWSVector.h>
15#include <aws/dlm/model/Exclusions.h>
16#include <aws/dlm/model/CrossRegionCopyTarget.h>
49 template<
typename ExecutionRoleArnT = Aws::String>
50 void SetExecutionRoleArn(ExecutionRoleArnT&& value) { m_executionRoleArnHasBeenSet =
true; m_executionRoleArn = std::forward<ExecutionRoleArnT>(value); }
51 template<
typename ExecutionRoleArnT = Aws::String>
62 template<
typename DescriptionT = Aws::String>
63 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet =
true; m_description = std::forward<DescriptionT>(value); }
64 template<
typename DescriptionT = Aws::String>
87 template<
typename PolicyDetailsT = PolicyDetails>
88 void SetPolicyDetails(PolicyDetailsT&& value) { m_policyDetailsHasBeenSet =
true; m_policyDetails = std::forward<PolicyDetailsT>(value); }
89 template<
typename PolicyDetailsT = PolicyDetails>
99 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
100 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
101 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
103 template<
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
105 m_tagsHasBeenSet =
true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
return *
this;
132 inline void SetCreateInterval(
int value) { m_createIntervalHasBeenSet =
true; m_createInterval = value; }
146 inline void SetRetainInterval(
int value) { m_retainIntervalHasBeenSet =
true; m_retainInterval = value; }
158 inline void SetCopyTags(
bool value) { m_copyTagsHasBeenSet =
true; m_copyTags = value; }
182 inline void SetExtendDeletion(
bool value) { m_extendDeletionHasBeenSet =
true; m_extendDeletion = value; }
194 template<
typename CrossRegionCopyTargetsT = Aws::Vector<CrossRegionCopyTarget>>
195 void SetCrossRegionCopyTargets(CrossRegionCopyTargetsT&& value) { m_crossRegionCopyTargetsHasBeenSet =
true; m_crossRegionCopyTargets = std::forward<CrossRegionCopyTargetsT>(value); }
196 template<
typename CrossRegionCopyTargetsT = Aws::Vector<CrossRegionCopyTarget>>
198 template<
typename CrossRegionCopyTargetsT = CrossRegionCopyTarget>
211 template<
typename ExclusionsT = Exclusions>
212 void SetExclusions(ExclusionsT&& value) { m_exclusionsHasBeenSet =
true; m_exclusions = std::forward<ExclusionsT>(value); }
213 template<
typename ExclusionsT = Exclusions>
219 bool m_executionRoleArnHasBeenSet =
false;
222 bool m_descriptionHasBeenSet =
false;
225 bool m_stateHasBeenSet =
false;
227 PolicyDetails m_policyDetails;
228 bool m_policyDetailsHasBeenSet =
false;
231 bool m_tagsHasBeenSet =
false;
234 bool m_defaultPolicyHasBeenSet =
false;
236 int m_createInterval{0};
237 bool m_createIntervalHasBeenSet =
false;
239 int m_retainInterval{0};
240 bool m_retainIntervalHasBeenSet =
false;
242 bool m_copyTags{
false};
243 bool m_copyTagsHasBeenSet =
false;
245 bool m_extendDeletion{
false};
246 bool m_extendDeletionHasBeenSet =
false;
249 bool m_crossRegionCopyTargetsHasBeenSet =
false;
251 Exclusions m_exclusions;
252 bool m_exclusionsHasBeenSet =
false;
bool PolicyDetailsHasBeenSet() const
const Aws::String & GetExecutionRoleArn() const
CreateLifecyclePolicyRequest & WithDescription(DescriptionT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
virtual const char * GetServiceRequestName() const override
CreateLifecyclePolicyRequest & WithCrossRegionCopyTargets(CrossRegionCopyTargetsT &&value)
CreateLifecyclePolicyRequest & WithCopyTags(bool value)
void SetCreateInterval(int value)
bool CrossRegionCopyTargetsHasBeenSet() const
bool StateHasBeenSet() const
CreateLifecyclePolicyRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
void SetDescription(DescriptionT &&value)
int GetRetainInterval() const
const Aws::String & GetDescription() const
const Aws::Vector< CrossRegionCopyTarget > & GetCrossRegionCopyTargets() const
CreateLifecyclePolicyRequest & WithExtendDeletion(bool value)
bool CopyTagsHasBeenSet() const
void SetCrossRegionCopyTargets(CrossRegionCopyTargetsT &&value)
SettablePolicyStateValues GetState() const
CreateLifecyclePolicyRequest & AddCrossRegionCopyTargets(CrossRegionCopyTargetsT &&value)
CreateLifecyclePolicyRequest & WithRetainInterval(int value)
CreateLifecyclePolicyRequest & WithCreateInterval(int value)
CreateLifecyclePolicyRequest & WithPolicyDetails(PolicyDetailsT &&value)
CreateLifecyclePolicyRequest & WithExecutionRoleArn(ExecutionRoleArnT &&value)
void SetPolicyDetails(PolicyDetailsT &&value)
void SetCopyTags(bool value)
bool GetExtendDeletion() const
bool DescriptionHasBeenSet() const
void SetTags(TagsT &&value)
bool RetainIntervalHasBeenSet() const
CreateLifecyclePolicyRequest & WithDefaultPolicy(DefaultPolicyTypeValues value)
bool ExecutionRoleArnHasBeenSet() const
CreateLifecyclePolicyRequest & WithState(SettablePolicyStateValues value)
CreateLifecyclePolicyRequest & WithTags(TagsT &&value)
bool TagsHasBeenSet() const
bool ExclusionsHasBeenSet() const
void SetState(SettablePolicyStateValues value)
CreateLifecyclePolicyRequest & WithExclusions(ExclusionsT &&value)
bool ExtendDeletionHasBeenSet() const
void SetDefaultPolicy(DefaultPolicyTypeValues value)
const PolicyDetails & GetPolicyDetails() const
AWS_DLM_API CreateLifecyclePolicyRequest()=default
void SetExecutionRoleArn(ExecutionRoleArnT &&value)
AWS_DLM_API Aws::String SerializePayload() const override
bool CreateIntervalHasBeenSet() const
const Exclusions & GetExclusions() const
void SetExclusions(ExclusionsT &&value)
int GetCreateInterval() const
void SetRetainInterval(int value)
void SetExtendDeletion(bool value)
DefaultPolicyTypeValues GetDefaultPolicy() const
bool DefaultPolicyHasBeenSet() const
SettablePolicyStateValues
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