AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
CrossRegionCopyAction.h
1
6#pragma once
7#include <aws/dlm/DLM_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/dlm/model/EncryptionConfiguration.h>
10#include <aws/dlm/model/CrossRegionCopyRetainRule.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace DLM
24{
25namespace Model
26{
27
38 {
39 public:
40 AWS_DLM_API CrossRegionCopyAction() = default;
44
45
47
50 inline const Aws::String& GetTarget() const { return m_target; }
51 inline bool TargetHasBeenSet() const { return m_targetHasBeenSet; }
52 template<typename TargetT = Aws::String>
53 void SetTarget(TargetT&& value) { m_targetHasBeenSet = true; m_target = std::forward<TargetT>(value); }
54 template<typename TargetT = Aws::String>
55 CrossRegionCopyAction& WithTarget(TargetT&& value) { SetTarget(std::forward<TargetT>(value)); return *this;}
57
59
62 inline const EncryptionConfiguration& GetEncryptionConfiguration() const { return m_encryptionConfiguration; }
63 inline bool EncryptionConfigurationHasBeenSet() const { return m_encryptionConfigurationHasBeenSet; }
64 template<typename EncryptionConfigurationT = EncryptionConfiguration>
65 void SetEncryptionConfiguration(EncryptionConfigurationT&& value) { m_encryptionConfigurationHasBeenSet = true; m_encryptionConfiguration = std::forward<EncryptionConfigurationT>(value); }
66 template<typename EncryptionConfigurationT = EncryptionConfiguration>
67 CrossRegionCopyAction& WithEncryptionConfiguration(EncryptionConfigurationT&& value) { SetEncryptionConfiguration(std::forward<EncryptionConfigurationT>(value)); return *this;}
69
71
72 inline const CrossRegionCopyRetainRule& GetRetainRule() const { return m_retainRule; }
73 inline bool RetainRuleHasBeenSet() const { return m_retainRuleHasBeenSet; }
74 template<typename RetainRuleT = CrossRegionCopyRetainRule>
75 void SetRetainRule(RetainRuleT&& value) { m_retainRuleHasBeenSet = true; m_retainRule = std::forward<RetainRuleT>(value); }
76 template<typename RetainRuleT = CrossRegionCopyRetainRule>
77 CrossRegionCopyAction& WithRetainRule(RetainRuleT&& value) { SetRetainRule(std::forward<RetainRuleT>(value)); return *this;}
79 private:
80
81 Aws::String m_target;
82 bool m_targetHasBeenSet = false;
83
84 EncryptionConfiguration m_encryptionConfiguration;
85 bool m_encryptionConfigurationHasBeenSet = false;
86
87 CrossRegionCopyRetainRule m_retainRule;
88 bool m_retainRuleHasBeenSet = false;
89 };
90
91} // namespace Model
92} // namespace DLM
93} // namespace Aws
AWS_DLM_API CrossRegionCopyAction & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_DLM_API CrossRegionCopyAction(Aws::Utils::Json::JsonView jsonValue)
CrossRegionCopyAction & WithRetainRule(RetainRuleT &&value)
void SetEncryptionConfiguration(EncryptionConfigurationT &&value)
AWS_DLM_API CrossRegionCopyAction()=default
AWS_DLM_API Aws::Utils::Json::JsonValue Jsonize() const
const CrossRegionCopyRetainRule & GetRetainRule() const
CrossRegionCopyAction & WithTarget(TargetT &&value)
const EncryptionConfiguration & GetEncryptionConfiguration() const
CrossRegionCopyAction & WithEncryptionConfiguration(EncryptionConfigurationT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue