AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
CreateLifecyclePolicyRequest.h
1
6#pragma once
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>
17#include <utility>
18
19namespace Aws
20{
21namespace DLM
22{
23namespace Model
24{
25
29 {
30 public:
31 AWS_DLM_API CreateLifecyclePolicyRequest() = default;
32
33 // Service request name is the Operation name which will send this request out,
34 // each operation should has unique request name, so that we can get operation's name from this request.
35 // Note: this is not true for response, multiple operations may have the same response name,
36 // so we can not get operation's name from response.
37 inline virtual const char* GetServiceRequestName() const override { return "CreateLifecyclePolicy"; }
38
39 AWS_DLM_API Aws::String SerializePayload() const override;
40
41
43
47 inline const Aws::String& GetExecutionRoleArn() const { return m_executionRoleArn; }
48 inline bool ExecutionRoleArnHasBeenSet() const { return m_executionRoleArnHasBeenSet; }
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>
52 CreateLifecyclePolicyRequest& WithExecutionRoleArn(ExecutionRoleArnT&& value) { SetExecutionRoleArn(std::forward<ExecutionRoleArnT>(value)); return *this;}
54
56
60 inline const Aws::String& GetDescription() const { return m_description; }
61 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
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>
65 CreateLifecyclePolicyRequest& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
67
69
72 inline SettablePolicyStateValues GetState() const { return m_state; }
73 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
74 inline void SetState(SettablePolicyStateValues value) { m_stateHasBeenSet = true; m_state = value; }
77
79
85 inline const PolicyDetails& GetPolicyDetails() const { return m_policyDetails; }
86 inline bool PolicyDetailsHasBeenSet() const { return m_policyDetailsHasBeenSet; }
87 template<typename PolicyDetailsT = PolicyDetails>
88 void SetPolicyDetails(PolicyDetailsT&& value) { m_policyDetailsHasBeenSet = true; m_policyDetails = std::forward<PolicyDetailsT>(value); }
89 template<typename PolicyDetailsT = PolicyDetails>
90 CreateLifecyclePolicyRequest& WithPolicyDetails(PolicyDetailsT&& value) { SetPolicyDetails(std::forward<PolicyDetailsT>(value)); return *this;}
92
94
97 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
98 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
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>>
102 CreateLifecyclePolicyRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
103 template<typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
104 CreateLifecyclePolicyRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
105 m_tagsHasBeenSet = true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value)); return *this;
106 }
108
110
118 inline DefaultPolicyTypeValues GetDefaultPolicy() const { return m_defaultPolicy; }
119 inline bool DefaultPolicyHasBeenSet() const { return m_defaultPolicyHasBeenSet; }
120 inline void SetDefaultPolicy(DefaultPolicyTypeValues value) { m_defaultPolicyHasBeenSet = true; m_defaultPolicy = value; }
123
125
130 inline int GetCreateInterval() const { return m_createInterval; }
131 inline bool CreateIntervalHasBeenSet() const { return m_createIntervalHasBeenSet; }
132 inline void SetCreateInterval(int value) { m_createIntervalHasBeenSet = true; m_createInterval = value; }
133 inline CreateLifecyclePolicyRequest& WithCreateInterval(int value) { SetCreateInterval(value); return *this;}
135
137
144 inline int GetRetainInterval() const { return m_retainInterval; }
145 inline bool RetainIntervalHasBeenSet() const { return m_retainIntervalHasBeenSet; }
146 inline void SetRetainInterval(int value) { m_retainIntervalHasBeenSet = true; m_retainInterval = value; }
147 inline CreateLifecyclePolicyRequest& WithRetainInterval(int value) { SetRetainInterval(value); return *this;}
149
151
156 inline bool GetCopyTags() const { return m_copyTags; }
157 inline bool CopyTagsHasBeenSet() const { return m_copyTagsHasBeenSet; }
158 inline void SetCopyTags(bool value) { m_copyTagsHasBeenSet = true; m_copyTags = value; }
159 inline CreateLifecyclePolicyRequest& WithCopyTags(bool value) { SetCopyTags(value); return *this;}
161
163
180 inline bool GetExtendDeletion() const { return m_extendDeletion; }
181 inline bool ExtendDeletionHasBeenSet() const { return m_extendDeletionHasBeenSet; }
182 inline void SetExtendDeletion(bool value) { m_extendDeletionHasBeenSet = true; m_extendDeletion = value; }
183 inline CreateLifecyclePolicyRequest& WithExtendDeletion(bool value) { SetExtendDeletion(value); return *this;}
185
187
192 inline const Aws::Vector<CrossRegionCopyTarget>& GetCrossRegionCopyTargets() const { return m_crossRegionCopyTargets; }
193 inline bool CrossRegionCopyTargetsHasBeenSet() const { return m_crossRegionCopyTargetsHasBeenSet; }
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>>
197 CreateLifecyclePolicyRequest& WithCrossRegionCopyTargets(CrossRegionCopyTargetsT&& value) { SetCrossRegionCopyTargets(std::forward<CrossRegionCopyTargetsT>(value)); return *this;}
198 template<typename CrossRegionCopyTargetsT = CrossRegionCopyTarget>
199 CreateLifecyclePolicyRequest& AddCrossRegionCopyTargets(CrossRegionCopyTargetsT&& value) { m_crossRegionCopyTargetsHasBeenSet = true; m_crossRegionCopyTargets.emplace_back(std::forward<CrossRegionCopyTargetsT>(value)); return *this; }
201
203
209 inline const Exclusions& GetExclusions() const { return m_exclusions; }
210 inline bool ExclusionsHasBeenSet() const { return m_exclusionsHasBeenSet; }
211 template<typename ExclusionsT = Exclusions>
212 void SetExclusions(ExclusionsT&& value) { m_exclusionsHasBeenSet = true; m_exclusions = std::forward<ExclusionsT>(value); }
213 template<typename ExclusionsT = Exclusions>
214 CreateLifecyclePolicyRequest& WithExclusions(ExclusionsT&& value) { SetExclusions(std::forward<ExclusionsT>(value)); return *this;}
216 private:
217
218 Aws::String m_executionRoleArn;
219 bool m_executionRoleArnHasBeenSet = false;
220
221 Aws::String m_description;
222 bool m_descriptionHasBeenSet = false;
223
225 bool m_stateHasBeenSet = false;
226
227 PolicyDetails m_policyDetails;
228 bool m_policyDetailsHasBeenSet = false;
229
231 bool m_tagsHasBeenSet = false;
232
234 bool m_defaultPolicyHasBeenSet = false;
235
236 int m_createInterval{0};
237 bool m_createIntervalHasBeenSet = false;
238
239 int m_retainInterval{0};
240 bool m_retainIntervalHasBeenSet = false;
241
242 bool m_copyTags{false};
243 bool m_copyTagsHasBeenSet = false;
244
245 bool m_extendDeletion{false};
246 bool m_extendDeletionHasBeenSet = false;
247
248 Aws::Vector<CrossRegionCopyTarget> m_crossRegionCopyTargets;
249 bool m_crossRegionCopyTargetsHasBeenSet = false;
250
251 Exclusions m_exclusions;
252 bool m_exclusionsHasBeenSet = false;
253 };
254
255} // namespace Model
256} // namespace DLM
257} // namespace Aws
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)
CreateLifecyclePolicyRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
const Aws::Vector< CrossRegionCopyTarget > & GetCrossRegionCopyTargets() const
CreateLifecyclePolicyRequest & WithExtendDeletion(bool value)
void SetCrossRegionCopyTargets(CrossRegionCopyTargetsT &&value)
CreateLifecyclePolicyRequest & AddCrossRegionCopyTargets(CrossRegionCopyTargetsT &&value)
CreateLifecyclePolicyRequest & WithRetainInterval(int value)
CreateLifecyclePolicyRequest & WithCreateInterval(int value)
CreateLifecyclePolicyRequest & WithPolicyDetails(PolicyDetailsT &&value)
CreateLifecyclePolicyRequest & WithExecutionRoleArn(ExecutionRoleArnT &&value)
CreateLifecyclePolicyRequest & WithDefaultPolicy(DefaultPolicyTypeValues value)
CreateLifecyclePolicyRequest & WithState(SettablePolicyStateValues value)
CreateLifecyclePolicyRequest & WithTags(TagsT &&value)
CreateLifecyclePolicyRequest & WithExclusions(ExclusionsT &&value)
AWS_DLM_API CreateLifecyclePolicyRequest()=default
AWS_DLM_API Aws::String SerializePayload() const override
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