AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
CopyBackupRequest.h
1
6#pragma once
7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/fsx/FSxRequest.h>
11#include <aws/fsx/FSx_EXPORTS.h>
12#include <aws/fsx/model/Tag.h>
13
14#include <utility>
15
16namespace Aws {
17namespace FSx {
18namespace Model {
19
23 public:
24 AWS_FSX_API CopyBackupRequest() = 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 "CopyBackup"; }
31
32 AWS_FSX_API Aws::String SerializePayload() const override;
33
35
37
38 inline const Aws::String& GetClientRequestToken() const { return m_clientRequestToken; }
39 inline bool ClientRequestTokenHasBeenSet() const { return m_clientRequestTokenHasBeenSet; }
40 template <typename ClientRequestTokenT = Aws::String>
41 void SetClientRequestToken(ClientRequestTokenT&& value) {
42 m_clientRequestTokenHasBeenSet = true;
43 m_clientRequestToken = std::forward<ClientRequestTokenT>(value);
44 }
45 template <typename ClientRequestTokenT = Aws::String>
46 CopyBackupRequest& WithClientRequestToken(ClientRequestTokenT&& value) {
47 SetClientRequestToken(std::forward<ClientRequestTokenT>(value));
48 return *this;
49 }
51
53
57 inline const Aws::String& GetSourceBackupId() const { return m_sourceBackupId; }
58 inline bool SourceBackupIdHasBeenSet() const { return m_sourceBackupIdHasBeenSet; }
59 template <typename SourceBackupIdT = Aws::String>
60 void SetSourceBackupId(SourceBackupIdT&& value) {
61 m_sourceBackupIdHasBeenSet = true;
62 m_sourceBackupId = std::forward<SourceBackupIdT>(value);
63 }
64 template <typename SourceBackupIdT = Aws::String>
65 CopyBackupRequest& WithSourceBackupId(SourceBackupIdT&& value) {
66 SetSourceBackupId(std::forward<SourceBackupIdT>(value));
67 return *this;
68 }
70
72
79 inline const Aws::String& GetSourceRegion() const { return m_sourceRegion; }
80 inline bool SourceRegionHasBeenSet() const { return m_sourceRegionHasBeenSet; }
81 template <typename SourceRegionT = Aws::String>
82 void SetSourceRegion(SourceRegionT&& value) {
83 m_sourceRegionHasBeenSet = true;
84 m_sourceRegion = std::forward<SourceRegionT>(value);
85 }
86 template <typename SourceRegionT = Aws::String>
87 CopyBackupRequest& WithSourceRegion(SourceRegionT&& value) {
88 SetSourceRegion(std::forward<SourceRegionT>(value));
89 return *this;
90 }
92
94
95 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
96 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
97 template <typename KmsKeyIdT = Aws::String>
98 void SetKmsKeyId(KmsKeyIdT&& value) {
99 m_kmsKeyIdHasBeenSet = true;
100 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
101 }
102 template <typename KmsKeyIdT = Aws::String>
103 CopyBackupRequest& WithKmsKeyId(KmsKeyIdT&& value) {
104 SetKmsKeyId(std::forward<KmsKeyIdT>(value));
105 return *this;
106 }
108
110
120 inline bool GetCopyTags() const { return m_copyTags; }
121 inline bool CopyTagsHasBeenSet() const { return m_copyTagsHasBeenSet; }
122 inline void SetCopyTags(bool value) {
123 m_copyTagsHasBeenSet = true;
124 m_copyTags = value;
125 }
126 inline CopyBackupRequest& WithCopyTags(bool value) {
127 SetCopyTags(value);
128 return *this;
129 }
131
133
134 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
135 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
136 template <typename TagsT = Aws::Vector<Tag>>
137 void SetTags(TagsT&& value) {
138 m_tagsHasBeenSet = true;
139 m_tags = std::forward<TagsT>(value);
140 }
141 template <typename TagsT = Aws::Vector<Tag>>
142 CopyBackupRequest& WithTags(TagsT&& value) {
143 SetTags(std::forward<TagsT>(value));
144 return *this;
145 }
146 template <typename TagsT = Tag>
147 CopyBackupRequest& AddTags(TagsT&& value) {
148 m_tagsHasBeenSet = true;
149 m_tags.emplace_back(std::forward<TagsT>(value));
150 return *this;
151 }
153 private:
154 Aws::String m_clientRequestToken{Aws::Utils::UUID::PseudoRandomUUID()};
155
156 Aws::String m_sourceBackupId;
157
158 Aws::String m_sourceRegion;
159
160 Aws::String m_kmsKeyId;
161
162 bool m_copyTags{false};
163
164 Aws::Vector<Tag> m_tags;
165 bool m_clientRequestTokenHasBeenSet = true;
166 bool m_sourceBackupIdHasBeenSet = false;
167 bool m_sourceRegionHasBeenSet = false;
168 bool m_kmsKeyIdHasBeenSet = false;
169 bool m_copyTagsHasBeenSet = false;
170 bool m_tagsHasBeenSet = false;
171};
172
173} // namespace Model
174} // namespace FSx
175} // namespace Aws
const Aws::Vector< Tag > & GetTags() const
const Aws::String & GetKmsKeyId() const
const Aws::String & GetSourceBackupId() const
AWS_FSX_API CopyBackupRequest()=default
CopyBackupRequest & WithCopyTags(bool value)
void SetKmsKeyId(KmsKeyIdT &&value)
void SetClientRequestToken(ClientRequestTokenT &&value)
CopyBackupRequest & WithSourceBackupId(SourceBackupIdT &&value)
const Aws::String & GetSourceRegion() const
AWS_FSX_API Aws::String SerializePayload() const override
CopyBackupRequest & WithTags(TagsT &&value)
void SetSourceBackupId(SourceBackupIdT &&value)
CopyBackupRequest & AddTags(TagsT &&value)
void SetSourceRegion(SourceRegionT &&value)
const Aws::String & GetClientRequestToken() const
virtual const char * GetServiceRequestName() const override
CopyBackupRequest & WithSourceRegion(SourceRegionT &&value)
CopyBackupRequest & WithClientRequestToken(ClientRequestTokenT &&value)
AWS_FSX_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
CopyBackupRequest & WithKmsKeyId(KmsKeyIdT &&value)
static Aws::Utils::UUID PseudoRandomUUID()
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector