AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
CopyClusterSnapshotRequest.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 CopyClusterSnapshotRequest() = 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 "CopyClusterSnapshot"; }
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& GetSourceSnapshotIdentifier() const { return m_sourceSnapshotIdentifier; }
45 inline bool SourceSnapshotIdentifierHasBeenSet() const { return m_sourceSnapshotIdentifierHasBeenSet; }
46 template <typename SourceSnapshotIdentifierT = Aws::String>
47 void SetSourceSnapshotIdentifier(SourceSnapshotIdentifierT&& value) {
48 m_sourceSnapshotIdentifierHasBeenSet = true;
49 m_sourceSnapshotIdentifier = std::forward<SourceSnapshotIdentifierT>(value);
50 }
51 template <typename SourceSnapshotIdentifierT = Aws::String>
52 CopyClusterSnapshotRequest& WithSourceSnapshotIdentifier(SourceSnapshotIdentifierT&& value) {
53 SetSourceSnapshotIdentifier(std::forward<SourceSnapshotIdentifierT>(value));
54 return *this;
55 }
57
59
66 inline const Aws::String& GetSourceSnapshotClusterIdentifier() const { return m_sourceSnapshotClusterIdentifier; }
67 inline bool SourceSnapshotClusterIdentifierHasBeenSet() const { return m_sourceSnapshotClusterIdentifierHasBeenSet; }
68 template <typename SourceSnapshotClusterIdentifierT = Aws::String>
69 void SetSourceSnapshotClusterIdentifier(SourceSnapshotClusterIdentifierT&& value) {
70 m_sourceSnapshotClusterIdentifierHasBeenSet = true;
71 m_sourceSnapshotClusterIdentifier = std::forward<SourceSnapshotClusterIdentifierT>(value);
72 }
73 template <typename SourceSnapshotClusterIdentifierT = Aws::String>
74 CopyClusterSnapshotRequest& WithSourceSnapshotClusterIdentifier(SourceSnapshotClusterIdentifierT&& value) {
75 SetSourceSnapshotClusterIdentifier(std::forward<SourceSnapshotClusterIdentifierT>(value));
76 return *this;
77 }
79
81
89 inline const Aws::String& GetTargetSnapshotIdentifier() const { return m_targetSnapshotIdentifier; }
90 inline bool TargetSnapshotIdentifierHasBeenSet() const { return m_targetSnapshotIdentifierHasBeenSet; }
91 template <typename TargetSnapshotIdentifierT = Aws::String>
92 void SetTargetSnapshotIdentifier(TargetSnapshotIdentifierT&& value) {
93 m_targetSnapshotIdentifierHasBeenSet = true;
94 m_targetSnapshotIdentifier = std::forward<TargetSnapshotIdentifierT>(value);
95 }
96 template <typename TargetSnapshotIdentifierT = Aws::String>
97 CopyClusterSnapshotRequest& WithTargetSnapshotIdentifier(TargetSnapshotIdentifierT&& value) {
98 SetTargetSnapshotIdentifier(std::forward<TargetSnapshotIdentifierT>(value));
99 return *this;
100 }
102
104
109 inline int GetManualSnapshotRetentionPeriod() const { return m_manualSnapshotRetentionPeriod; }
110 inline bool ManualSnapshotRetentionPeriodHasBeenSet() const { return m_manualSnapshotRetentionPeriodHasBeenSet; }
111 inline void SetManualSnapshotRetentionPeriod(int value) {
112 m_manualSnapshotRetentionPeriodHasBeenSet = true;
113 m_manualSnapshotRetentionPeriod = value;
114 }
117 return *this;
118 }
120 private:
121 Aws::String m_sourceSnapshotIdentifier;
122
123 Aws::String m_sourceSnapshotClusterIdentifier;
124
125 Aws::String m_targetSnapshotIdentifier;
126
127 int m_manualSnapshotRetentionPeriod{0};
128 bool m_sourceSnapshotIdentifierHasBeenSet = false;
129 bool m_sourceSnapshotClusterIdentifierHasBeenSet = false;
130 bool m_targetSnapshotIdentifierHasBeenSet = false;
131 bool m_manualSnapshotRetentionPeriodHasBeenSet = false;
132};
133
134} // namespace Model
135} // namespace Redshift
136} // namespace Aws
void SetSourceSnapshotClusterIdentifier(SourceSnapshotClusterIdentifierT &&value)
void SetTargetSnapshotIdentifier(TargetSnapshotIdentifierT &&value)
virtual const char * GetServiceRequestName() const override
CopyClusterSnapshotRequest & WithSourceSnapshotIdentifier(SourceSnapshotIdentifierT &&value)
CopyClusterSnapshotRequest & WithTargetSnapshotIdentifier(TargetSnapshotIdentifierT &&value)
void SetSourceSnapshotIdentifier(SourceSnapshotIdentifierT &&value)
AWS_REDSHIFT_API CopyClusterSnapshotRequest()=default
AWS_REDSHIFT_API Aws::String SerializePayload() const override
CopyClusterSnapshotRequest & WithSourceSnapshotClusterIdentifier(SourceSnapshotClusterIdentifierT &&value)
AWS_REDSHIFT_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
CopyClusterSnapshotRequest & WithManualSnapshotRetentionPeriod(int value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String