AWS SDK for C++

AWS SDK for C++ Version 1.11.744

Loading...
Searching...
No Matches
CreateClusterSnapshotRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/redshift/RedshiftRequest.h>
10#include <aws/redshift/Redshift_EXPORTS.h>
11#include <aws/redshift/model/Tag.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Redshift {
17namespace Model {
18
25 public:
26 AWS_REDSHIFT_API CreateClusterSnapshotRequest() = default;
27
28 // Service request name is the Operation name which will send this request out,
29 // each operation should has unique request name, so that we can get operation's name from this request.
30 // Note: this is not true for response, multiple operations may have the same response name,
31 // so we can not get operation's name from response.
32 inline virtual const char* GetServiceRequestName() const override { return "CreateClusterSnapshot"; }
33
34 AWS_REDSHIFT_API Aws::String SerializePayload() const override;
35
36 protected:
37 AWS_REDSHIFT_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
38
39 public:
41
50 inline const Aws::String& GetSnapshotIdentifier() const { return m_snapshotIdentifier; }
51 inline bool SnapshotIdentifierHasBeenSet() const { return m_snapshotIdentifierHasBeenSet; }
52 template <typename SnapshotIdentifierT = Aws::String>
53 void SetSnapshotIdentifier(SnapshotIdentifierT&& value) {
54 m_snapshotIdentifierHasBeenSet = true;
55 m_snapshotIdentifier = std::forward<SnapshotIdentifierT>(value);
56 }
57 template <typename SnapshotIdentifierT = Aws::String>
59 SetSnapshotIdentifier(std::forward<SnapshotIdentifierT>(value));
60 return *this;
61 }
63
65
68 inline const Aws::String& GetClusterIdentifier() const { return m_clusterIdentifier; }
69 inline bool ClusterIdentifierHasBeenSet() const { return m_clusterIdentifierHasBeenSet; }
70 template <typename ClusterIdentifierT = Aws::String>
71 void SetClusterIdentifier(ClusterIdentifierT&& value) {
72 m_clusterIdentifierHasBeenSet = true;
73 m_clusterIdentifier = std::forward<ClusterIdentifierT>(value);
74 }
75 template <typename ClusterIdentifierT = Aws::String>
77 SetClusterIdentifier(std::forward<ClusterIdentifierT>(value));
78 return *this;
79 }
81
83
88 inline int GetManualSnapshotRetentionPeriod() const { return m_manualSnapshotRetentionPeriod; }
89 inline bool ManualSnapshotRetentionPeriodHasBeenSet() const { return m_manualSnapshotRetentionPeriodHasBeenSet; }
90 inline void SetManualSnapshotRetentionPeriod(int value) {
91 m_manualSnapshotRetentionPeriodHasBeenSet = true;
92 m_manualSnapshotRetentionPeriod = value;
93 }
96 return *this;
97 }
99
101
104 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
105 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
106 template <typename TagsT = Aws::Vector<Tag>>
107 void SetTags(TagsT&& value) {
108 m_tagsHasBeenSet = true;
109 m_tags = std::forward<TagsT>(value);
110 }
111 template <typename TagsT = Aws::Vector<Tag>>
113 SetTags(std::forward<TagsT>(value));
114 return *this;
115 }
116 template <typename TagsT = Tag>
118 m_tagsHasBeenSet = true;
119 m_tags.emplace_back(std::forward<TagsT>(value));
120 return *this;
121 }
123 private:
124 Aws::String m_snapshotIdentifier;
125
126 Aws::String m_clusterIdentifier;
127
128 int m_manualSnapshotRetentionPeriod{0};
129
130 Aws::Vector<Tag> m_tags;
131 bool m_snapshotIdentifierHasBeenSet = false;
132 bool m_clusterIdentifierHasBeenSet = false;
133 bool m_manualSnapshotRetentionPeriodHasBeenSet = false;
134 bool m_tagsHasBeenSet = false;
135};
136
137} // namespace Model
138} // namespace Redshift
139} // namespace Aws
AWS_REDSHIFT_API CreateClusterSnapshotRequest()=default
CreateClusterSnapshotRequest & AddTags(TagsT &&value)
CreateClusterSnapshotRequest & WithClusterIdentifier(ClusterIdentifierT &&value)
CreateClusterSnapshotRequest & WithManualSnapshotRetentionPeriod(int value)
CreateClusterSnapshotRequest & WithSnapshotIdentifier(SnapshotIdentifierT &&value)
CreateClusterSnapshotRequest & WithTags(TagsT &&value)
AWS_REDSHIFT_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
AWS_REDSHIFT_API Aws::String SerializePayload() const override
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector