AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
UpdateLifecyclePolicyRequest.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/AWSVector.h>
13#include <aws/dlm/model/Exclusions.h>
14#include <aws/dlm/model/CrossRegionCopyTarget.h>
15#include <utility>
16
17namespace Aws
18{
19namespace DLM
20{
21namespace Model
22{
23
27 {
28 public:
29 AWS_DLM_API UpdateLifecyclePolicyRequest() = default;
30
31 // Service request name is the Operation name which will send this request out,
32 // each operation should has unique request name, so that we can get operation's name from this request.
33 // Note: this is not true for response, multiple operations may have the same response name,
34 // so we can not get operation's name from response.
35 inline virtual const char* GetServiceRequestName() const override { return "UpdateLifecyclePolicy"; }
36
37 AWS_DLM_API Aws::String SerializePayload() const override;
38
39
41
44 inline const Aws::String& GetPolicyId() const { return m_policyId; }
45 inline bool PolicyIdHasBeenSet() const { return m_policyIdHasBeenSet; }
46 template<typename PolicyIdT = Aws::String>
47 void SetPolicyId(PolicyIdT&& value) { m_policyIdHasBeenSet = true; m_policyId = std::forward<PolicyIdT>(value); }
48 template<typename PolicyIdT = Aws::String>
49 UpdateLifecyclePolicyRequest& WithPolicyId(PolicyIdT&& value) { SetPolicyId(std::forward<PolicyIdT>(value)); return *this;}
51
53
57 inline const Aws::String& GetExecutionRoleArn() const { return m_executionRoleArn; }
58 inline bool ExecutionRoleArnHasBeenSet() const { return m_executionRoleArnHasBeenSet; }
59 template<typename ExecutionRoleArnT = Aws::String>
60 void SetExecutionRoleArn(ExecutionRoleArnT&& value) { m_executionRoleArnHasBeenSet = true; m_executionRoleArn = std::forward<ExecutionRoleArnT>(value); }
61 template<typename ExecutionRoleArnT = Aws::String>
62 UpdateLifecyclePolicyRequest& WithExecutionRoleArn(ExecutionRoleArnT&& value) { SetExecutionRoleArn(std::forward<ExecutionRoleArnT>(value)); return *this;}
64
66
69 inline SettablePolicyStateValues GetState() const { return m_state; }
70 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
71 inline void SetState(SettablePolicyStateValues value) { m_stateHasBeenSet = true; m_state = value; }
74
76
79 inline const Aws::String& GetDescription() const { return m_description; }
80 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
81 template<typename DescriptionT = Aws::String>
82 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
83 template<typename DescriptionT = Aws::String>
84 UpdateLifecyclePolicyRequest& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
86
88
92 inline const PolicyDetails& GetPolicyDetails() const { return m_policyDetails; }
93 inline bool PolicyDetailsHasBeenSet() const { return m_policyDetailsHasBeenSet; }
94 template<typename PolicyDetailsT = PolicyDetails>
95 void SetPolicyDetails(PolicyDetailsT&& value) { m_policyDetailsHasBeenSet = true; m_policyDetails = std::forward<PolicyDetailsT>(value); }
96 template<typename PolicyDetailsT = PolicyDetails>
97 UpdateLifecyclePolicyRequest& WithPolicyDetails(PolicyDetailsT&& value) { SetPolicyDetails(std::forward<PolicyDetailsT>(value)); return *this;}
99
101
105 inline int GetCreateInterval() const { return m_createInterval; }
106 inline bool CreateIntervalHasBeenSet() const { return m_createIntervalHasBeenSet; }
107 inline void SetCreateInterval(int value) { m_createIntervalHasBeenSet = true; m_createInterval = value; }
108 inline UpdateLifecyclePolicyRequest& WithCreateInterval(int value) { SetCreateInterval(value); return *this;}
110
112
118 inline int GetRetainInterval() const { return m_retainInterval; }
119 inline bool RetainIntervalHasBeenSet() const { return m_retainIntervalHasBeenSet; }
120 inline void SetRetainInterval(int value) { m_retainIntervalHasBeenSet = true; m_retainInterval = value; }
121 inline UpdateLifecyclePolicyRequest& WithRetainInterval(int value) { SetRetainInterval(value); return *this;}
123
125
129 inline bool GetCopyTags() const { return m_copyTags; }
130 inline bool CopyTagsHasBeenSet() const { return m_copyTagsHasBeenSet; }
131 inline void SetCopyTags(bool value) { m_copyTagsHasBeenSet = true; m_copyTags = value; }
132 inline UpdateLifecyclePolicyRequest& WithCopyTags(bool value) { SetCopyTags(value); return *this;}
134
136
152 inline bool GetExtendDeletion() const { return m_extendDeletion; }
153 inline bool ExtendDeletionHasBeenSet() const { return m_extendDeletionHasBeenSet; }
154 inline void SetExtendDeletion(bool value) { m_extendDeletionHasBeenSet = true; m_extendDeletion = value; }
155 inline UpdateLifecyclePolicyRequest& WithExtendDeletion(bool value) { SetExtendDeletion(value); return *this;}
157
159
164 inline const Aws::Vector<CrossRegionCopyTarget>& GetCrossRegionCopyTargets() const { return m_crossRegionCopyTargets; }
165 inline bool CrossRegionCopyTargetsHasBeenSet() const { return m_crossRegionCopyTargetsHasBeenSet; }
166 template<typename CrossRegionCopyTargetsT = Aws::Vector<CrossRegionCopyTarget>>
167 void SetCrossRegionCopyTargets(CrossRegionCopyTargetsT&& value) { m_crossRegionCopyTargetsHasBeenSet = true; m_crossRegionCopyTargets = std::forward<CrossRegionCopyTargetsT>(value); }
168 template<typename CrossRegionCopyTargetsT = Aws::Vector<CrossRegionCopyTarget>>
169 UpdateLifecyclePolicyRequest& WithCrossRegionCopyTargets(CrossRegionCopyTargetsT&& value) { SetCrossRegionCopyTargets(std::forward<CrossRegionCopyTargetsT>(value)); return *this;}
170 template<typename CrossRegionCopyTargetsT = CrossRegionCopyTarget>
171 UpdateLifecyclePolicyRequest& AddCrossRegionCopyTargets(CrossRegionCopyTargetsT&& value) { m_crossRegionCopyTargetsHasBeenSet = true; m_crossRegionCopyTargets.emplace_back(std::forward<CrossRegionCopyTargetsT>(value)); return *this; }
173
175
181 inline const Exclusions& GetExclusions() const { return m_exclusions; }
182 inline bool ExclusionsHasBeenSet() const { return m_exclusionsHasBeenSet; }
183 template<typename ExclusionsT = Exclusions>
184 void SetExclusions(ExclusionsT&& value) { m_exclusionsHasBeenSet = true; m_exclusions = std::forward<ExclusionsT>(value); }
185 template<typename ExclusionsT = Exclusions>
186 UpdateLifecyclePolicyRequest& WithExclusions(ExclusionsT&& value) { SetExclusions(std::forward<ExclusionsT>(value)); return *this;}
188 private:
189
190 Aws::String m_policyId;
191 bool m_policyIdHasBeenSet = false;
192
193 Aws::String m_executionRoleArn;
194 bool m_executionRoleArnHasBeenSet = false;
195
197 bool m_stateHasBeenSet = false;
198
199 Aws::String m_description;
200 bool m_descriptionHasBeenSet = false;
201
202 PolicyDetails m_policyDetails;
203 bool m_policyDetailsHasBeenSet = false;
204
205 int m_createInterval{0};
206 bool m_createIntervalHasBeenSet = false;
207
208 int m_retainInterval{0};
209 bool m_retainIntervalHasBeenSet = false;
210
211 bool m_copyTags{false};
212 bool m_copyTagsHasBeenSet = false;
213
214 bool m_extendDeletion{false};
215 bool m_extendDeletionHasBeenSet = false;
216
217 Aws::Vector<CrossRegionCopyTarget> m_crossRegionCopyTargets;
218 bool m_crossRegionCopyTargetsHasBeenSet = false;
219
220 Exclusions m_exclusions;
221 bool m_exclusionsHasBeenSet = false;
222 };
223
224} // namespace Model
225} // namespace DLM
226} // namespace Aws
UpdateLifecyclePolicyRequest & WithRetainInterval(int value)
UpdateLifecyclePolicyRequest & WithPolicyDetails(PolicyDetailsT &&value)
const Aws::Vector< CrossRegionCopyTarget > & GetCrossRegionCopyTargets() const
void SetCrossRegionCopyTargets(CrossRegionCopyTargetsT &&value)
UpdateLifecyclePolicyRequest & WithCopyTags(bool value)
UpdateLifecyclePolicyRequest & WithExtendDeletion(bool value)
UpdateLifecyclePolicyRequest & WithCrossRegionCopyTargets(CrossRegionCopyTargetsT &&value)
AWS_DLM_API UpdateLifecyclePolicyRequest()=default
UpdateLifecyclePolicyRequest & WithCreateInterval(int value)
UpdateLifecyclePolicyRequest & WithState(SettablePolicyStateValues value)
UpdateLifecyclePolicyRequest & AddCrossRegionCopyTargets(CrossRegionCopyTargetsT &&value)
virtual const char * GetServiceRequestName() const override
UpdateLifecyclePolicyRequest & WithExecutionRoleArn(ExecutionRoleArnT &&value)
UpdateLifecyclePolicyRequest & WithDescription(DescriptionT &&value)
AWS_DLM_API Aws::String SerializePayload() const override
UpdateLifecyclePolicyRequest & WithExclusions(ExclusionsT &&value)
UpdateLifecyclePolicyRequest & WithPolicyId(PolicyIdT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector