AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
EnableSnapshotCopyRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/redshift/RedshiftRequest.h>
9#include <aws/redshift/Redshift_EXPORTS.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Redshift {
15namespace Model {
16
23 public:
24 AWS_REDSHIFT_API EnableSnapshotCopyRequest() = default;
25
26 // Service request name is the Operation name which will send this request out,
27 // each operation should has unique request name, so that we can get operation's name from this request.
28 // Note: this is not true for response, multiple operations may have the same response name,
29 // so we can not get operation's name from response.
30 inline virtual const char* GetServiceRequestName() const override { return "EnableSnapshotCopy"; }
31
32 AWS_REDSHIFT_API Aws::String SerializePayload() const override;
33
34 protected:
35 AWS_REDSHIFT_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
36
37 public:
39
44 inline const Aws::String& GetClusterIdentifier() const { return m_clusterIdentifier; }
45 inline bool ClusterIdentifierHasBeenSet() const { return m_clusterIdentifierHasBeenSet; }
46 template <typename ClusterIdentifierT = Aws::String>
47 void SetClusterIdentifier(ClusterIdentifierT&& value) {
48 m_clusterIdentifierHasBeenSet = true;
49 m_clusterIdentifier = std::forward<ClusterIdentifierT>(value);
50 }
51 template <typename ClusterIdentifierT = Aws::String>
52 EnableSnapshotCopyRequest& WithClusterIdentifier(ClusterIdentifierT&& value) {
53 SetClusterIdentifier(std::forward<ClusterIdentifierT>(value));
54 return *this;
55 }
57
59
66 inline const Aws::String& GetDestinationRegion() const { return m_destinationRegion; }
67 inline bool DestinationRegionHasBeenSet() const { return m_destinationRegionHasBeenSet; }
68 template <typename DestinationRegionT = Aws::String>
69 void SetDestinationRegion(DestinationRegionT&& value) {
70 m_destinationRegionHasBeenSet = true;
71 m_destinationRegion = std::forward<DestinationRegionT>(value);
72 }
73 template <typename DestinationRegionT = Aws::String>
74 EnableSnapshotCopyRequest& WithDestinationRegion(DestinationRegionT&& value) {
75 SetDestinationRegion(std::forward<DestinationRegionT>(value));
76 return *this;
77 }
79
81
86 inline int GetRetentionPeriod() const { return m_retentionPeriod; }
87 inline bool RetentionPeriodHasBeenSet() const { return m_retentionPeriodHasBeenSet; }
88 inline void SetRetentionPeriod(int value) {
89 m_retentionPeriodHasBeenSet = true;
90 m_retentionPeriod = value;
91 }
93 SetRetentionPeriod(value);
94 return *this;
95 }
97
99
103 inline const Aws::String& GetSnapshotCopyGrantName() const { return m_snapshotCopyGrantName; }
104 inline bool SnapshotCopyGrantNameHasBeenSet() const { return m_snapshotCopyGrantNameHasBeenSet; }
105 template <typename SnapshotCopyGrantNameT = Aws::String>
106 void SetSnapshotCopyGrantName(SnapshotCopyGrantNameT&& value) {
107 m_snapshotCopyGrantNameHasBeenSet = true;
108 m_snapshotCopyGrantName = std::forward<SnapshotCopyGrantNameT>(value);
109 }
110 template <typename SnapshotCopyGrantNameT = Aws::String>
111 EnableSnapshotCopyRequest& WithSnapshotCopyGrantName(SnapshotCopyGrantNameT&& value) {
112 SetSnapshotCopyGrantName(std::forward<SnapshotCopyGrantNameT>(value));
113 return *this;
114 }
116
118
124 inline int GetManualSnapshotRetentionPeriod() const { return m_manualSnapshotRetentionPeriod; }
125 inline bool ManualSnapshotRetentionPeriodHasBeenSet() const { return m_manualSnapshotRetentionPeriodHasBeenSet; }
126 inline void SetManualSnapshotRetentionPeriod(int value) {
127 m_manualSnapshotRetentionPeriodHasBeenSet = true;
128 m_manualSnapshotRetentionPeriod = value;
129 }
132 return *this;
133 }
135 private:
136 Aws::String m_clusterIdentifier;
137
138 Aws::String m_destinationRegion;
139
140 int m_retentionPeriod{0};
141
142 Aws::String m_snapshotCopyGrantName;
143
144 int m_manualSnapshotRetentionPeriod{0};
145 bool m_clusterIdentifierHasBeenSet = false;
146 bool m_destinationRegionHasBeenSet = false;
147 bool m_retentionPeriodHasBeenSet = false;
148 bool m_snapshotCopyGrantNameHasBeenSet = false;
149 bool m_manualSnapshotRetentionPeriodHasBeenSet = false;
150};
151
152} // namespace Model
153} // namespace Redshift
154} // namespace Aws
AWS_REDSHIFT_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
EnableSnapshotCopyRequest & WithClusterIdentifier(ClusterIdentifierT &&value)
AWS_REDSHIFT_API EnableSnapshotCopyRequest()=default
EnableSnapshotCopyRequest & WithManualSnapshotRetentionPeriod(int value)
void SetSnapshotCopyGrantName(SnapshotCopyGrantNameT &&value)
AWS_REDSHIFT_API Aws::String SerializePayload() const override
virtual const char * GetServiceRequestName() const override
EnableSnapshotCopyRequest & WithSnapshotCopyGrantName(SnapshotCopyGrantNameT &&value)
EnableSnapshotCopyRequest & WithDestinationRegion(DestinationRegionT &&value)
EnableSnapshotCopyRequest & WithRetentionPeriod(int value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String