7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/dlm/DLM_EXPORTS.h>
10#include <aws/dlm/model/ArchiveRule.h>
11#include <aws/dlm/model/CreateRule.h>
12#include <aws/dlm/model/CrossRegionCopyRule.h>
13#include <aws/dlm/model/DeprecateRule.h>
14#include <aws/dlm/model/FastRestoreRule.h>
15#include <aws/dlm/model/RetainRule.h>
16#include <aws/dlm/model/ShareRule.h>
17#include <aws/dlm/model/Tag.h>
50 template <
typename NameT = Aws::String>
52 m_nameHasBeenSet =
true;
53 m_name = std::forward<NameT>(value);
55 template <
typename NameT = Aws::String>
57 SetName(std::forward<NameT>(value));
70 m_copyTagsHasBeenSet =
true;
86 template <
typename TagsToAddT = Aws::Vector<Tag>>
88 m_tagsToAddHasBeenSet =
true;
89 m_tagsToAdd = std::forward<TagsToAddT>(value);
91 template <
typename TagsToAddT = Aws::Vector<Tag>>
96 template <
typename TagsToAddT = Tag>
98 m_tagsToAddHasBeenSet =
true;
99 m_tagsToAdd.emplace_back(std::forward<TagsToAddT>(value));
115 template <
typename VariableTagsT = Aws::Vector<Tag>>
117 m_variableTagsHasBeenSet =
true;
118 m_variableTags = std::forward<VariableTagsT>(value);
120 template <
typename VariableTagsT = Aws::Vector<Tag>>
125 template <
typename VariableTagsT = Tag>
127 m_variableTagsHasBeenSet =
true;
128 m_variableTags.emplace_back(std::forward<VariableTagsT>(value));
139 template <
typename CreateRuleT = CreateRule>
141 m_createRuleHasBeenSet =
true;
142 m_createRule = std::forward<CreateRuleT>(value);
144 template <
typename CreateRuleT = CreateRule>
157 template <
typename RetainRuleT = RetainRule>
159 m_retainRuleHasBeenSet =
true;
160 m_retainRule = std::forward<RetainRuleT>(value);
162 template <
typename RetainRuleT = RetainRule>
176 template <
typename FastRestoreRuleT = FastRestoreRule>
178 m_fastRestoreRuleHasBeenSet =
true;
179 m_fastRestoreRule = std::forward<FastRestoreRuleT>(value);
181 template <
typename FastRestoreRuleT = FastRestoreRule>
197 template <
typename CrossRegionCopyRulesT = Aws::Vector<CrossRegionCopyRule>>
199 m_crossRegionCopyRulesHasBeenSet =
true;
200 m_crossRegionCopyRules = std::forward<CrossRegionCopyRulesT>(value);
202 template <
typename CrossRegionCopyRulesT = Aws::Vector<CrossRegionCopyRule>>
207 template <
typename CrossRegionCopyRulesT = CrossRegionCopyRule>
209 m_crossRegionCopyRulesHasBeenSet =
true;
210 m_crossRegionCopyRules.emplace_back(std::forward<CrossRegionCopyRulesT>(value));
222 template <
typename ShareRulesT = Aws::Vector<ShareRule>>
224 m_shareRulesHasBeenSet =
true;
225 m_shareRules = std::forward<ShareRulesT>(value);
227 template <
typename ShareRulesT = Aws::Vector<ShareRule>>
232 template <
typename ShareRulesT = ShareRule>
234 m_shareRulesHasBeenSet =
true;
235 m_shareRules.emplace_back(std::forward<ShareRulesT>(value));
247 template <
typename DeprecateRuleT = DeprecateRule>
249 m_deprecateRuleHasBeenSet =
true;
250 m_deprecateRule = std::forward<DeprecateRuleT>(value);
252 template <
typename DeprecateRuleT = DeprecateRule>
272 template <
typename ArchiveRuleT = ArchiveRule>
274 m_archiveRuleHasBeenSet =
true;
275 m_archiveRule = std::forward<ArchiveRuleT>(value);
277 template <
typename ArchiveRuleT = ArchiveRule>
286 bool m_copyTags{
false};
292 CreateRule m_createRule;
294 RetainRule m_retainRule;
296 FastRestoreRule m_fastRestoreRule;
302 DeprecateRule m_deprecateRule;
304 ArchiveRule m_archiveRule;
305 bool m_nameHasBeenSet =
false;
306 bool m_copyTagsHasBeenSet =
false;
307 bool m_tagsToAddHasBeenSet =
false;
308 bool m_variableTagsHasBeenSet =
false;
309 bool m_createRuleHasBeenSet =
false;
310 bool m_retainRuleHasBeenSet =
false;
311 bool m_fastRestoreRuleHasBeenSet =
false;
312 bool m_crossRegionCopyRulesHasBeenSet =
false;
313 bool m_shareRulesHasBeenSet =
false;
314 bool m_deprecateRuleHasBeenSet =
false;
315 bool m_archiveRuleHasBeenSet =
false;
Schedule & WithCrossRegionCopyRules(CrossRegionCopyRulesT &&value)
void SetVariableTags(VariableTagsT &&value)
Schedule & WithTagsToAdd(TagsToAddT &&value)
void SetArchiveRule(ArchiveRuleT &&value)
void SetCrossRegionCopyRules(CrossRegionCopyRulesT &&value)
void SetShareRules(ShareRulesT &&value)
bool RetainRuleHasBeenSet() const
const Aws::String & GetName() const
const ArchiveRule & GetArchiveRule() const
void SetCreateRule(CreateRuleT &&value)
Schedule & WithShareRules(ShareRulesT &&value)
const CreateRule & GetCreateRule() const
Schedule & AddCrossRegionCopyRules(CrossRegionCopyRulesT &&value)
Schedule & WithDeprecateRule(DeprecateRuleT &&value)
const Aws::Vector< Tag > & GetTagsToAdd() const
AWS_DLM_API Aws::Utils::Json::JsonValue Jsonize() const
bool FastRestoreRuleHasBeenSet() const
Schedule & WithName(NameT &&value)
bool NameHasBeenSet() const
Schedule & AddShareRules(ShareRulesT &&value)
Schedule & WithArchiveRule(ArchiveRuleT &&value)
const RetainRule & GetRetainRule() const
bool CreateRuleHasBeenSet() const
AWS_DLM_API Schedule & operator=(Aws::Utils::Json::JsonView jsonValue)
const DeprecateRule & GetDeprecateRule() const
Schedule & WithFastRestoreRule(FastRestoreRuleT &&value)
bool ShareRulesHasBeenSet() const
void SetName(NameT &&value)
Schedule & AddVariableTags(VariableTagsT &&value)
void SetDeprecateRule(DeprecateRuleT &&value)
bool ArchiveRuleHasBeenSet() const
void SetFastRestoreRule(FastRestoreRuleT &&value)
AWS_DLM_API Schedule()=default
void SetCopyTags(bool value)
const Aws::Vector< Tag > & GetVariableTags() const
bool CrossRegionCopyRulesHasBeenSet() const
const Aws::Vector< ShareRule > & GetShareRules() const
const Aws::Vector< CrossRegionCopyRule > & GetCrossRegionCopyRules() const
Schedule & WithVariableTags(VariableTagsT &&value)
const FastRestoreRule & GetFastRestoreRule() const
void SetTagsToAdd(TagsToAddT &&value)
void SetRetainRule(RetainRuleT &&value)
Schedule & AddTagsToAdd(TagsToAddT &&value)
Schedule & WithRetainRule(RetainRuleT &&value)
AWS_DLM_API Schedule(Aws::Utils::Json::JsonView jsonValue)
bool VariableTagsHasBeenSet() const
Schedule & WithCopyTags(bool value)
bool DeprecateRuleHasBeenSet() const
bool CopyTagsHasBeenSet() const
Schedule & WithCreateRule(CreateRuleT &&value)
bool TagsToAddHasBeenSet() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue