AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
BackupRuleInput.h
1
6#pragma once
7#include <aws/backup/Backup_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/backup/model/Lifecycle.h>
10#include <aws/core/utils/memory/stl/AWSMap.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/backup/model/CopyAction.h>
13#include <aws/backup/model/IndexAction.h>
14#include <utility>
15
16namespace Aws
17{
18namespace Utils
19{
20namespace Json
21{
22 class JsonValue;
23 class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace Backup
27{
28namespace Model
29{
30
38 {
39 public:
40 AWS_BACKUP_API BackupRuleInput() = default;
43 AWS_BACKUP_API Aws::Utils::Json::JsonValue Jsonize() const;
44
45
47
51 inline const Aws::String& GetRuleName() const { return m_ruleName; }
52 inline bool RuleNameHasBeenSet() const { return m_ruleNameHasBeenSet; }
53 template<typename RuleNameT = Aws::String>
54 void SetRuleName(RuleNameT&& value) { m_ruleNameHasBeenSet = true; m_ruleName = std::forward<RuleNameT>(value); }
55 template<typename RuleNameT = Aws::String>
56 BackupRuleInput& WithRuleName(RuleNameT&& value) { SetRuleName(std::forward<RuleNameT>(value)); return *this;}
58
60
65 inline const Aws::String& GetTargetBackupVaultName() const { return m_targetBackupVaultName; }
66 inline bool TargetBackupVaultNameHasBeenSet() const { return m_targetBackupVaultNameHasBeenSet; }
67 template<typename TargetBackupVaultNameT = Aws::String>
68 void SetTargetBackupVaultName(TargetBackupVaultNameT&& value) { m_targetBackupVaultNameHasBeenSet = true; m_targetBackupVaultName = std::forward<TargetBackupVaultNameT>(value); }
69 template<typename TargetBackupVaultNameT = Aws::String>
70 BackupRuleInput& WithTargetBackupVaultName(TargetBackupVaultNameT&& value) { SetTargetBackupVaultName(std::forward<TargetBackupVaultNameT>(value)); return *this;}
72
74
79 inline const Aws::String& GetScheduleExpression() const { return m_scheduleExpression; }
80 inline bool ScheduleExpressionHasBeenSet() const { return m_scheduleExpressionHasBeenSet; }
81 template<typename ScheduleExpressionT = Aws::String>
82 void SetScheduleExpression(ScheduleExpressionT&& value) { m_scheduleExpressionHasBeenSet = true; m_scheduleExpression = std::forward<ScheduleExpressionT>(value); }
83 template<typename ScheduleExpressionT = Aws::String>
84 BackupRuleInput& WithScheduleExpression(ScheduleExpressionT&& value) { SetScheduleExpression(std::forward<ScheduleExpressionT>(value)); return *this;}
86
88
101 inline long long GetStartWindowMinutes() const { return m_startWindowMinutes; }
102 inline bool StartWindowMinutesHasBeenSet() const { return m_startWindowMinutesHasBeenSet; }
103 inline void SetStartWindowMinutes(long long value) { m_startWindowMinutesHasBeenSet = true; m_startWindowMinutes = value; }
104 inline BackupRuleInput& WithStartWindowMinutes(long long value) { SetStartWindowMinutes(value); return *this;}
106
108
112 inline long long GetCompletionWindowMinutes() const { return m_completionWindowMinutes; }
113 inline bool CompletionWindowMinutesHasBeenSet() const { return m_completionWindowMinutesHasBeenSet; }
114 inline void SetCompletionWindowMinutes(long long value) { m_completionWindowMinutesHasBeenSet = true; m_completionWindowMinutes = value; }
115 inline BackupRuleInput& WithCompletionWindowMinutes(long long value) { SetCompletionWindowMinutes(value); return *this;}
117
119
134 inline const Lifecycle& GetLifecycle() const { return m_lifecycle; }
135 inline bool LifecycleHasBeenSet() const { return m_lifecycleHasBeenSet; }
136 template<typename LifecycleT = Lifecycle>
137 void SetLifecycle(LifecycleT&& value) { m_lifecycleHasBeenSet = true; m_lifecycle = std::forward<LifecycleT>(value); }
138 template<typename LifecycleT = Lifecycle>
139 BackupRuleInput& WithLifecycle(LifecycleT&& value) { SetLifecycle(std::forward<LifecycleT>(value)); return *this;}
141
143
146 inline const Aws::Map<Aws::String, Aws::String>& GetRecoveryPointTags() const { return m_recoveryPointTags; }
147 inline bool RecoveryPointTagsHasBeenSet() const { return m_recoveryPointTagsHasBeenSet; }
148 template<typename RecoveryPointTagsT = Aws::Map<Aws::String, Aws::String>>
149 void SetRecoveryPointTags(RecoveryPointTagsT&& value) { m_recoveryPointTagsHasBeenSet = true; m_recoveryPointTags = std::forward<RecoveryPointTagsT>(value); }
150 template<typename RecoveryPointTagsT = Aws::Map<Aws::String, Aws::String>>
151 BackupRuleInput& WithRecoveryPointTags(RecoveryPointTagsT&& value) { SetRecoveryPointTags(std::forward<RecoveryPointTagsT>(value)); return *this;}
152 template<typename RecoveryPointTagsKeyT = Aws::String, typename RecoveryPointTagsValueT = Aws::String>
153 BackupRuleInput& AddRecoveryPointTags(RecoveryPointTagsKeyT&& key, RecoveryPointTagsValueT&& value) {
154 m_recoveryPointTagsHasBeenSet = true; m_recoveryPointTags.emplace(std::forward<RecoveryPointTagsKeyT>(key), std::forward<RecoveryPointTagsValueT>(value)); return *this;
155 }
157
159
163 inline const Aws::Vector<CopyAction>& GetCopyActions() const { return m_copyActions; }
164 inline bool CopyActionsHasBeenSet() const { return m_copyActionsHasBeenSet; }
165 template<typename CopyActionsT = Aws::Vector<CopyAction>>
166 void SetCopyActions(CopyActionsT&& value) { m_copyActionsHasBeenSet = true; m_copyActions = std::forward<CopyActionsT>(value); }
167 template<typename CopyActionsT = Aws::Vector<CopyAction>>
168 BackupRuleInput& WithCopyActions(CopyActionsT&& value) { SetCopyActions(std::forward<CopyActionsT>(value)); return *this;}
169 template<typename CopyActionsT = CopyAction>
170 BackupRuleInput& AddCopyActions(CopyActionsT&& value) { m_copyActionsHasBeenSet = true; m_copyActions.emplace_back(std::forward<CopyActionsT>(value)); return *this; }
172
174
179 inline bool GetEnableContinuousBackup() const { return m_enableContinuousBackup; }
180 inline bool EnableContinuousBackupHasBeenSet() const { return m_enableContinuousBackupHasBeenSet; }
181 inline void SetEnableContinuousBackup(bool value) { m_enableContinuousBackupHasBeenSet = true; m_enableContinuousBackup = value; }
182 inline BackupRuleInput& WithEnableContinuousBackup(bool value) { SetEnableContinuousBackup(value); return *this;}
184
186
190 inline const Aws::String& GetScheduleExpressionTimezone() const { return m_scheduleExpressionTimezone; }
191 inline bool ScheduleExpressionTimezoneHasBeenSet() const { return m_scheduleExpressionTimezoneHasBeenSet; }
192 template<typename ScheduleExpressionTimezoneT = Aws::String>
193 void SetScheduleExpressionTimezone(ScheduleExpressionTimezoneT&& value) { m_scheduleExpressionTimezoneHasBeenSet = true; m_scheduleExpressionTimezone = std::forward<ScheduleExpressionTimezoneT>(value); }
194 template<typename ScheduleExpressionTimezoneT = Aws::String>
195 BackupRuleInput& WithScheduleExpressionTimezone(ScheduleExpressionTimezoneT&& value) { SetScheduleExpressionTimezone(std::forward<ScheduleExpressionTimezoneT>(value)); return *this;}
197
199
206 inline const Aws::Vector<IndexAction>& GetIndexActions() const { return m_indexActions; }
207 inline bool IndexActionsHasBeenSet() const { return m_indexActionsHasBeenSet; }
208 template<typename IndexActionsT = Aws::Vector<IndexAction>>
209 void SetIndexActions(IndexActionsT&& value) { m_indexActionsHasBeenSet = true; m_indexActions = std::forward<IndexActionsT>(value); }
210 template<typename IndexActionsT = Aws::Vector<IndexAction>>
211 BackupRuleInput& WithIndexActions(IndexActionsT&& value) { SetIndexActions(std::forward<IndexActionsT>(value)); return *this;}
212 template<typename IndexActionsT = IndexAction>
213 BackupRuleInput& AddIndexActions(IndexActionsT&& value) { m_indexActionsHasBeenSet = true; m_indexActions.emplace_back(std::forward<IndexActionsT>(value)); return *this; }
215 private:
216
217 Aws::String m_ruleName;
218 bool m_ruleNameHasBeenSet = false;
219
220 Aws::String m_targetBackupVaultName;
221 bool m_targetBackupVaultNameHasBeenSet = false;
222
223 Aws::String m_scheduleExpression;
224 bool m_scheduleExpressionHasBeenSet = false;
225
226 long long m_startWindowMinutes{0};
227 bool m_startWindowMinutesHasBeenSet = false;
228
229 long long m_completionWindowMinutes{0};
230 bool m_completionWindowMinutesHasBeenSet = false;
231
232 Lifecycle m_lifecycle;
233 bool m_lifecycleHasBeenSet = false;
234
235 Aws::Map<Aws::String, Aws::String> m_recoveryPointTags;
236 bool m_recoveryPointTagsHasBeenSet = false;
237
238 Aws::Vector<CopyAction> m_copyActions;
239 bool m_copyActionsHasBeenSet = false;
240
241 bool m_enableContinuousBackup{false};
242 bool m_enableContinuousBackupHasBeenSet = false;
243
244 Aws::String m_scheduleExpressionTimezone;
245 bool m_scheduleExpressionTimezoneHasBeenSet = false;
246
247 Aws::Vector<IndexAction> m_indexActions;
248 bool m_indexActionsHasBeenSet = false;
249 };
250
251} // namespace Model
252} // namespace Backup
253} // namespace Aws
BackupRuleInput & WithScheduleExpressionTimezone(ScheduleExpressionTimezoneT &&value)
BackupRuleInput & WithRuleName(RuleNameT &&value)
BackupRuleInput & WithEnableContinuousBackup(bool value)
void SetStartWindowMinutes(long long value)
void SetCopyActions(CopyActionsT &&value)
AWS_BACKUP_API BackupRuleInput & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_BACKUP_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_BACKUP_API BackupRuleInput(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetScheduleExpression() const
BackupRuleInput & AddIndexActions(IndexActionsT &&value)
void SetLifecycle(LifecycleT &&value)
void SetCompletionWindowMinutes(long long value)
void SetScheduleExpressionTimezone(ScheduleExpressionTimezoneT &&value)
const Aws::Map< Aws::String, Aws::String > & GetRecoveryPointTags() const
BackupRuleInput & WithLifecycle(LifecycleT &&value)
const Aws::String & GetScheduleExpressionTimezone() const
void SetIndexActions(IndexActionsT &&value)
void SetScheduleExpression(ScheduleExpressionT &&value)
BackupRuleInput & WithIndexActions(IndexActionsT &&value)
const Aws::Vector< CopyAction > & GetCopyActions() const
BackupRuleInput & WithTargetBackupVaultName(TargetBackupVaultNameT &&value)
const Aws::Vector< IndexAction > & GetIndexActions() const
const Aws::String & GetTargetBackupVaultName() const
void SetRecoveryPointTags(RecoveryPointTagsT &&value)
BackupRuleInput & WithRecoveryPointTags(RecoveryPointTagsT &&value)
const Lifecycle & GetLifecycle() const
BackupRuleInput & WithStartWindowMinutes(long long value)
void SetTargetBackupVaultName(TargetBackupVaultNameT &&value)
AWS_BACKUP_API BackupRuleInput()=default
BackupRuleInput & AddCopyActions(CopyActionsT &&value)
BackupRuleInput & AddRecoveryPointTags(RecoveryPointTagsKeyT &&key, RecoveryPointTagsValueT &&value)
BackupRuleInput & WithScheduleExpression(ScheduleExpressionT &&value)
void SetRuleName(RuleNameT &&value)
BackupRuleInput & WithCompletionWindowMinutes(long long value)
BackupRuleInput & WithCopyActions(CopyActionsT &&value)
const Aws::String & GetRuleName() const
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