7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/dlm/DLM_EXPORTS.h>
9#include <aws/dlm/model/CrossRegionCopyDeprecateRule.h>
10#include <aws/dlm/model/CrossRegionCopyRetainRule.h>
51 template <
typename TargetRegionT = Aws::String>
53 m_targetRegionHasBeenSet =
true;
54 m_targetRegion = std::forward<TargetRegionT>(value);
56 template <
typename TargetRegionT = Aws::String>
72 template <
typename TargetT = Aws::String>
74 m_targetHasBeenSet =
true;
75 m_target = std::forward<TargetT>(value);
77 template <
typename TargetT = Aws::String>
94 m_encryptedHasBeenSet =
true;
111 template <
typename CmkArnT = Aws::String>
113 m_cmkArnHasBeenSet =
true;
114 m_cmkArn = std::forward<CmkArnT>(value);
116 template <
typename CmkArnT = Aws::String>
131 m_copyTagsHasBeenSet =
true;
147 template <
typename RetainRuleT = CrossRegionCopyRetainRule>
149 m_retainRuleHasBeenSet =
true;
150 m_retainRule = std::forward<RetainRuleT>(value);
152 template <
typename RetainRuleT = CrossRegionCopyRetainRule>
166 template <
typename DeprecateRuleT = CrossRegionCopyDeprecateRule>
168 m_deprecateRuleHasBeenSet =
true;
169 m_deprecateRule = std::forward<DeprecateRuleT>(value);
171 template <
typename DeprecateRuleT = CrossRegionCopyDeprecateRule>
182 bool m_encrypted{
false};
186 bool m_copyTags{
false};
188 CrossRegionCopyRetainRule m_retainRule;
190 CrossRegionCopyDeprecateRule m_deprecateRule;
191 bool m_targetRegionHasBeenSet =
false;
192 bool m_targetHasBeenSet =
false;
193 bool m_encryptedHasBeenSet =
false;
194 bool m_cmkArnHasBeenSet =
false;
195 bool m_copyTagsHasBeenSet =
false;
196 bool m_retainRuleHasBeenSet =
false;
197 bool m_deprecateRuleHasBeenSet =
false;
CrossRegionCopyRule & WithEncrypted(bool value)
CrossRegionCopyRule & WithCopyTags(bool value)
bool TargetHasBeenSet() const
void SetDeprecateRule(DeprecateRuleT &&value)
bool CopyTagsHasBeenSet() const
AWS_DLM_API CrossRegionCopyRule(Aws::Utils::Json::JsonView jsonValue)
const CrossRegionCopyDeprecateRule & GetDeprecateRule() const
CrossRegionCopyRule & WithRetainRule(RetainRuleT &&value)
const CrossRegionCopyRetainRule & GetRetainRule() const
bool EncryptedHasBeenSet() const
AWS_DLM_API CrossRegionCopyRule()=default
CrossRegionCopyRule & WithTarget(TargetT &&value)
void SetEncrypted(bool value)
bool TargetRegionHasBeenSet() const
void SetTargetRegion(TargetRegionT &&value)
bool RetainRuleHasBeenSet() const
const Aws::String & GetTargetRegion() const
CrossRegionCopyRule & WithTargetRegion(TargetRegionT &&value)
void SetRetainRule(RetainRuleT &&value)
void SetCmkArn(CmkArnT &&value)
bool DeprecateRuleHasBeenSet() const
void SetTarget(TargetT &&value)
bool GetEncrypted() const
const Aws::String & GetTarget() const
void SetCopyTags(bool value)
CrossRegionCopyRule & WithCmkArn(CmkArnT &&value)
AWS_DLM_API CrossRegionCopyRule & operator=(Aws::Utils::Json::JsonView jsonValue)
bool CmkArnHasBeenSet() const
const Aws::String & GetCmkArn() const
AWS_DLM_API Aws::Utils::Json::JsonValue Jsonize() const
CrossRegionCopyRule & WithDeprecateRule(DeprecateRuleT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue