7#include <aws/securityhub/SecurityHub_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/securityhub/model/AwsBackupBackupPlanLifecycleDetails.h>
11#include <aws/securityhub/model/AwsBackupBackupPlanRuleCopyActionsDetails.h>
54 template<
typename TargetBackupVaultT = Aws::String>
55 void SetTargetBackupVault(TargetBackupVaultT&& value) { m_targetBackupVaultHasBeenSet =
true; m_targetBackupVault = std::forward<TargetBackupVaultT>(value); }
56 template<
typename TargetBackupVaultT = Aws::String>
67 inline void SetStartWindowMinutes(
long long value) { m_startWindowMinutesHasBeenSet =
true; m_startWindowMinutes = value; }
77 template<
typename ScheduleExpressionT = Aws::String>
78 void SetScheduleExpression(ScheduleExpressionT&& value) { m_scheduleExpressionHasBeenSet =
true; m_scheduleExpression = std::forward<ScheduleExpressionT>(value); }
79 template<
typename ScheduleExpressionT = Aws::String>
90 template<
typename RuleNameT = Aws::String>
91 void SetRuleName(RuleNameT&& value) { m_ruleNameHasBeenSet =
true; m_ruleName = std::forward<RuleNameT>(value); }
92 template<
typename RuleNameT = Aws::String>
103 template<
typename RuleIdT = Aws::String>
104 void SetRuleId(RuleIdT&& value) { m_ruleIdHasBeenSet =
true; m_ruleId = std::forward<RuleIdT>(value); }
105 template<
typename RuleIdT = Aws::String>
138 template<
typename CopyActionsT = Aws::Vector<AwsBackupBackupPlanRuleCopyActionsDetails>>
139 void SetCopyActions(CopyActionsT&& value) { m_copyActionsHasBeenSet =
true; m_copyActions = std::forward<CopyActionsT>(value); }
140 template<
typename CopyActionsT = Aws::Vector<AwsBackupBackupPlanRuleCopyActionsDetails>>
142 template<
typename CopyActionsT = AwsBackupBackupPlanRuleCopyActionsDetails>
157 template<
typename LifecycleT = AwsBackupBackupPlanLifecycleDetails>
158 void SetLifecycle(LifecycleT&& value) { m_lifecycleHasBeenSet =
true; m_lifecycle = std::forward<LifecycleT>(value); }
159 template<
typename LifecycleT = AwsBackupBackupPlanLifecycleDetails>
165 bool m_targetBackupVaultHasBeenSet =
false;
167 long long m_startWindowMinutes{0};
168 bool m_startWindowMinutesHasBeenSet =
false;
171 bool m_scheduleExpressionHasBeenSet =
false;
174 bool m_ruleNameHasBeenSet =
false;
177 bool m_ruleIdHasBeenSet =
false;
179 bool m_enableContinuousBackup{
false};
180 bool m_enableContinuousBackupHasBeenSet =
false;
182 long long m_completionWindowMinutes{0};
183 bool m_completionWindowMinutesHasBeenSet =
false;
186 bool m_copyActionsHasBeenSet =
false;
188 AwsBackupBackupPlanLifecycleDetails m_lifecycle;
189 bool m_lifecycleHasBeenSet =
false;
void SetCompletionWindowMinutes(long long value)
void SetStartWindowMinutes(long long value)
AwsBackupBackupPlanRuleDetails & WithRuleId(RuleIdT &&value)
void SetRuleId(RuleIdT &&value)
bool RuleIdHasBeenSet() const
const Aws::String & GetRuleId() const
const Aws::String & GetScheduleExpression() const
bool CompletionWindowMinutesHasBeenSet() const
AwsBackupBackupPlanRuleDetails & WithTargetBackupVault(TargetBackupVaultT &&value)
AwsBackupBackupPlanRuleDetails & WithScheduleExpression(ScheduleExpressionT &&value)
bool ScheduleExpressionHasBeenSet() const
bool StartWindowMinutesHasBeenSet() const
const Aws::String & GetTargetBackupVault() const
bool TargetBackupVaultHasBeenSet() const
bool EnableContinuousBackupHasBeenSet() const
bool LifecycleHasBeenSet() const
const AwsBackupBackupPlanLifecycleDetails & GetLifecycle() const
bool GetEnableContinuousBackup() const
AWS_SECURITYHUB_API AwsBackupBackupPlanRuleDetails(Aws::Utils::Json::JsonView jsonValue)
AwsBackupBackupPlanRuleDetails & WithRuleName(RuleNameT &&value)
AwsBackupBackupPlanRuleDetails & WithCopyActions(CopyActionsT &&value)
void SetScheduleExpression(ScheduleExpressionT &&value)
void SetRuleName(RuleNameT &&value)
AwsBackupBackupPlanRuleDetails & AddCopyActions(CopyActionsT &&value)
AWS_SECURITYHUB_API AwsBackupBackupPlanRuleDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_SECURITYHUB_API AwsBackupBackupPlanRuleDetails()=default
AwsBackupBackupPlanRuleDetails & WithStartWindowMinutes(long long value)
AwsBackupBackupPlanRuleDetails & WithCompletionWindowMinutes(long long value)
AwsBackupBackupPlanRuleDetails & WithLifecycle(LifecycleT &&value)
AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< AwsBackupBackupPlanRuleCopyActionsDetails > & GetCopyActions() const
void SetEnableContinuousBackup(bool value)
void SetLifecycle(LifecycleT &&value)
AwsBackupBackupPlanRuleDetails & WithEnableContinuousBackup(bool value)
void SetCopyActions(CopyActionsT &&value)
long long GetStartWindowMinutes() const
const Aws::String & GetRuleName() const
long long GetCompletionWindowMinutes() const
bool RuleNameHasBeenSet() const
bool CopyActionsHasBeenSet() const
void SetTargetBackupVault(TargetBackupVaultT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue