AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
SnapshotCopyConfiguration.h
1
6#pragma once
7#include <aws/redshift-serverless/RedshiftServerless_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <utility>
10
11namespace Aws
12{
13namespace Utils
14{
15namespace Json
16{
17 class JsonValue;
18 class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace RedshiftServerless
22{
23namespace Model
24{
25
33 {
34 public:
35 AWS_REDSHIFTSERVERLESS_API SnapshotCopyConfiguration() = default;
36 AWS_REDSHIFTSERVERLESS_API SnapshotCopyConfiguration(Aws::Utils::Json::JsonView jsonValue);
37 AWS_REDSHIFTSERVERLESS_API SnapshotCopyConfiguration& operator=(Aws::Utils::Json::JsonView jsonValue);
38 AWS_REDSHIFTSERVERLESS_API Aws::Utils::Json::JsonValue Jsonize() const;
39
40
42
46 inline const Aws::String& GetDestinationKmsKeyId() const { return m_destinationKmsKeyId; }
47 inline bool DestinationKmsKeyIdHasBeenSet() const { return m_destinationKmsKeyIdHasBeenSet; }
48 template<typename DestinationKmsKeyIdT = Aws::String>
49 void SetDestinationKmsKeyId(DestinationKmsKeyIdT&& value) { m_destinationKmsKeyIdHasBeenSet = true; m_destinationKmsKeyId = std::forward<DestinationKmsKeyIdT>(value); }
50 template<typename DestinationKmsKeyIdT = Aws::String>
51 SnapshotCopyConfiguration& WithDestinationKmsKeyId(DestinationKmsKeyIdT&& value) { SetDestinationKmsKeyId(std::forward<DestinationKmsKeyIdT>(value)); return *this;}
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) { m_destinationRegionHasBeenSet = true; m_destinationRegion = std::forward<DestinationRegionT>(value); }
62 template<typename DestinationRegionT = Aws::String>
63 SnapshotCopyConfiguration& WithDestinationRegion(DestinationRegionT&& value) { SetDestinationRegion(std::forward<DestinationRegionT>(value)); return *this;}
65
67
71 inline const Aws::String& GetNamespaceName() const { return m_namespaceName; }
72 inline bool NamespaceNameHasBeenSet() const { return m_namespaceNameHasBeenSet; }
73 template<typename NamespaceNameT = Aws::String>
74 void SetNamespaceName(NamespaceNameT&& value) { m_namespaceNameHasBeenSet = true; m_namespaceName = std::forward<NamespaceNameT>(value); }
75 template<typename NamespaceNameT = Aws::String>
76 SnapshotCopyConfiguration& WithNamespaceName(NamespaceNameT&& value) { SetNamespaceName(std::forward<NamespaceNameT>(value)); return *this;}
78
80
83 inline const Aws::String& GetSnapshotCopyConfigurationArn() const { return m_snapshotCopyConfigurationArn; }
84 inline bool SnapshotCopyConfigurationArnHasBeenSet() const { return m_snapshotCopyConfigurationArnHasBeenSet; }
85 template<typename SnapshotCopyConfigurationArnT = Aws::String>
86 void SetSnapshotCopyConfigurationArn(SnapshotCopyConfigurationArnT&& value) { m_snapshotCopyConfigurationArnHasBeenSet = true; m_snapshotCopyConfigurationArn = std::forward<SnapshotCopyConfigurationArnT>(value); }
87 template<typename SnapshotCopyConfigurationArnT = Aws::String>
88 SnapshotCopyConfiguration& WithSnapshotCopyConfigurationArn(SnapshotCopyConfigurationArnT&& value) { SetSnapshotCopyConfigurationArn(std::forward<SnapshotCopyConfigurationArnT>(value)); return *this;}
90
92
95 inline const Aws::String& GetSnapshotCopyConfigurationId() const { return m_snapshotCopyConfigurationId; }
96 inline bool SnapshotCopyConfigurationIdHasBeenSet() const { return m_snapshotCopyConfigurationIdHasBeenSet; }
97 template<typename SnapshotCopyConfigurationIdT = Aws::String>
98 void SetSnapshotCopyConfigurationId(SnapshotCopyConfigurationIdT&& value) { m_snapshotCopyConfigurationIdHasBeenSet = true; m_snapshotCopyConfigurationId = std::forward<SnapshotCopyConfigurationIdT>(value); }
99 template<typename SnapshotCopyConfigurationIdT = Aws::String>
100 SnapshotCopyConfiguration& WithSnapshotCopyConfigurationId(SnapshotCopyConfigurationIdT&& value) { SetSnapshotCopyConfigurationId(std::forward<SnapshotCopyConfigurationIdT>(value)); return *this;}
102
104
108 inline int GetSnapshotRetentionPeriod() const { return m_snapshotRetentionPeriod; }
109 inline bool SnapshotRetentionPeriodHasBeenSet() const { return m_snapshotRetentionPeriodHasBeenSet; }
110 inline void SetSnapshotRetentionPeriod(int value) { m_snapshotRetentionPeriodHasBeenSet = true; m_snapshotRetentionPeriod = value; }
113 private:
114
115 Aws::String m_destinationKmsKeyId;
116 bool m_destinationKmsKeyIdHasBeenSet = false;
117
118 Aws::String m_destinationRegion;
119 bool m_destinationRegionHasBeenSet = false;
120
121 Aws::String m_namespaceName;
122 bool m_namespaceNameHasBeenSet = false;
123
124 Aws::String m_snapshotCopyConfigurationArn;
125 bool m_snapshotCopyConfigurationArnHasBeenSet = false;
126
127 Aws::String m_snapshotCopyConfigurationId;
128 bool m_snapshotCopyConfigurationIdHasBeenSet = false;
129
130 int m_snapshotRetentionPeriod{0};
131 bool m_snapshotRetentionPeriodHasBeenSet = false;
132 };
133
134} // namespace Model
135} // namespace RedshiftServerless
136} // 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