AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
SnapshotCopyConfiguration.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/redshift-serverless/RedshiftServerless_EXPORTS.h>
9
10#include <utility>
11
12namespace Aws {
13namespace Utils {
14namespace Json {
15class JsonValue;
16class JsonView;
17} // namespace Json
18} // namespace Utils
19namespace RedshiftServerless {
20namespace Model {
21
29 public:
30 AWS_REDSHIFTSERVERLESS_API SnapshotCopyConfiguration() = default;
31 AWS_REDSHIFTSERVERLESS_API SnapshotCopyConfiguration(Aws::Utils::Json::JsonView jsonValue);
32 AWS_REDSHIFTSERVERLESS_API SnapshotCopyConfiguration& operator=(Aws::Utils::Json::JsonView jsonValue);
33 AWS_REDSHIFTSERVERLESS_API Aws::Utils::Json::JsonValue Jsonize() const;
34
36
40 inline const Aws::String& GetDestinationKmsKeyId() const { return m_destinationKmsKeyId; }
41 inline bool DestinationKmsKeyIdHasBeenSet() const { return m_destinationKmsKeyIdHasBeenSet; }
42 template <typename DestinationKmsKeyIdT = Aws::String>
43 void SetDestinationKmsKeyId(DestinationKmsKeyIdT&& value) {
44 m_destinationKmsKeyIdHasBeenSet = true;
45 m_destinationKmsKeyId = std::forward<DestinationKmsKeyIdT>(value);
46 }
47 template <typename DestinationKmsKeyIdT = Aws::String>
48 SnapshotCopyConfiguration& WithDestinationKmsKeyId(DestinationKmsKeyIdT&& value) {
49 SetDestinationKmsKeyId(std::forward<DestinationKmsKeyIdT>(value));
50 return *this;
51 }
53
55
58 inline const Aws::String& GetDestinationRegion() const { return m_destinationRegion; }
59 inline bool DestinationRegionHasBeenSet() const { return m_destinationRegionHasBeenSet; }
60 template <typename DestinationRegionT = Aws::String>
61 void SetDestinationRegion(DestinationRegionT&& value) {
62 m_destinationRegionHasBeenSet = true;
63 m_destinationRegion = std::forward<DestinationRegionT>(value);
64 }
65 template <typename DestinationRegionT = Aws::String>
66 SnapshotCopyConfiguration& WithDestinationRegion(DestinationRegionT&& value) {
67 SetDestinationRegion(std::forward<DestinationRegionT>(value));
68 return *this;
69 }
71
73
77 inline const Aws::String& GetNamespaceName() const { return m_namespaceName; }
78 inline bool NamespaceNameHasBeenSet() const { return m_namespaceNameHasBeenSet; }
79 template <typename NamespaceNameT = Aws::String>
80 void SetNamespaceName(NamespaceNameT&& value) {
81 m_namespaceNameHasBeenSet = true;
82 m_namespaceName = std::forward<NamespaceNameT>(value);
83 }
84 template <typename NamespaceNameT = Aws::String>
86 SetNamespaceName(std::forward<NamespaceNameT>(value));
87 return *this;
88 }
90
92
95 inline const Aws::String& GetSnapshotCopyConfigurationArn() const { return m_snapshotCopyConfigurationArn; }
96 inline bool SnapshotCopyConfigurationArnHasBeenSet() const { return m_snapshotCopyConfigurationArnHasBeenSet; }
97 template <typename SnapshotCopyConfigurationArnT = Aws::String>
98 void SetSnapshotCopyConfigurationArn(SnapshotCopyConfigurationArnT&& value) {
99 m_snapshotCopyConfigurationArnHasBeenSet = true;
100 m_snapshotCopyConfigurationArn = std::forward<SnapshotCopyConfigurationArnT>(value);
101 }
102 template <typename SnapshotCopyConfigurationArnT = Aws::String>
103 SnapshotCopyConfiguration& WithSnapshotCopyConfigurationArn(SnapshotCopyConfigurationArnT&& value) {
104 SetSnapshotCopyConfigurationArn(std::forward<SnapshotCopyConfigurationArnT>(value));
105 return *this;
106 }
108
110
113 inline const Aws::String& GetSnapshotCopyConfigurationId() const { return m_snapshotCopyConfigurationId; }
114 inline bool SnapshotCopyConfigurationIdHasBeenSet() const { return m_snapshotCopyConfigurationIdHasBeenSet; }
115 template <typename SnapshotCopyConfigurationIdT = Aws::String>
116 void SetSnapshotCopyConfigurationId(SnapshotCopyConfigurationIdT&& value) {
117 m_snapshotCopyConfigurationIdHasBeenSet = true;
118 m_snapshotCopyConfigurationId = std::forward<SnapshotCopyConfigurationIdT>(value);
119 }
120 template <typename SnapshotCopyConfigurationIdT = Aws::String>
121 SnapshotCopyConfiguration& WithSnapshotCopyConfigurationId(SnapshotCopyConfigurationIdT&& value) {
122 SetSnapshotCopyConfigurationId(std::forward<SnapshotCopyConfigurationIdT>(value));
123 return *this;
124 }
126
128
132 inline int GetSnapshotRetentionPeriod() const { return m_snapshotRetentionPeriod; }
133 inline bool SnapshotRetentionPeriodHasBeenSet() const { return m_snapshotRetentionPeriodHasBeenSet; }
134 inline void SetSnapshotRetentionPeriod(int value) {
135 m_snapshotRetentionPeriodHasBeenSet = true;
136 m_snapshotRetentionPeriod = value;
137 }
140 return *this;
141 }
143 private:
144 Aws::String m_destinationKmsKeyId;
145
146 Aws::String m_destinationRegion;
147
148 Aws::String m_namespaceName;
149
150 Aws::String m_snapshotCopyConfigurationArn;
151
152 Aws::String m_snapshotCopyConfigurationId;
153
154 int m_snapshotRetentionPeriod{0};
155 bool m_destinationKmsKeyIdHasBeenSet = false;
156 bool m_destinationRegionHasBeenSet = false;
157 bool m_namespaceNameHasBeenSet = false;
158 bool m_snapshotCopyConfigurationArnHasBeenSet = false;
159 bool m_snapshotCopyConfigurationIdHasBeenSet = false;
160 bool m_snapshotRetentionPeriodHasBeenSet = false;
161};
162
163} // namespace Model
164} // namespace RedshiftServerless
165} // namespace Aws
SnapshotCopyConfiguration & WithSnapshotCopyConfigurationId(SnapshotCopyConfigurationIdT &&value)
void SetSnapshotCopyConfigurationArn(SnapshotCopyConfigurationArnT &&value)
AWS_REDSHIFTSERVERLESS_API SnapshotCopyConfiguration()=default
AWS_REDSHIFTSERVERLESS_API Aws::Utils::Json::JsonValue Jsonize() const
SnapshotCopyConfiguration & WithDestinationKmsKeyId(DestinationKmsKeyIdT &&value)
SnapshotCopyConfiguration & WithDestinationRegion(DestinationRegionT &&value)
void SetSnapshotCopyConfigurationId(SnapshotCopyConfigurationIdT &&value)
SnapshotCopyConfiguration & WithSnapshotCopyConfigurationArn(SnapshotCopyConfigurationArnT &&value)
AWS_REDSHIFTSERVERLESS_API SnapshotCopyConfiguration(Aws::Utils::Json::JsonView jsonValue)
AWS_REDSHIFTSERVERLESS_API SnapshotCopyConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
SnapshotCopyConfiguration & WithNamespaceName(NamespaceNameT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue