AWS SDK for C++  1.9.125
AWS SDK for C++
StartSnapshotRequest.h
Go to the documentation of this file.
1 
6 #pragma once
7 #include <aws/ebs/EBS_EXPORTS.h>
8 #include <aws/ebs/EBSRequest.h>
11 #include <aws/ebs/model/Tag.h>
12 #include <utility>
13 #include <aws/core/utils/UUID.h>
14 
15 namespace Aws
16 {
17 namespace EBS
18 {
19 namespace Model
20 {
21 
25  {
26  public:
28 
29  // Service request name is the Operation name which will send this request out,
30  // each operation should has unique request name, so that we can get operation's name from this request.
31  // Note: this is not true for response, multiple operations may have the same response name,
32  // so we can not get operation's name from response.
33  inline virtual const char* GetServiceRequestName() const override { return "StartSnapshot"; }
34 
35  Aws::String SerializePayload() const override;
36 
37 
42  inline long long GetVolumeSize() const{ return m_volumeSize; }
43 
48  inline bool VolumeSizeHasBeenSet() const { return m_volumeSizeHasBeenSet; }
49 
54  inline void SetVolumeSize(long long value) { m_volumeSizeHasBeenSet = true; m_volumeSize = value; }
55 
60  inline StartSnapshotRequest& WithVolumeSize(long long value) { SetVolumeSize(value); return *this;}
61 
62 
71  inline const Aws::String& GetParentSnapshotId() const{ return m_parentSnapshotId; }
72 
81  inline bool ParentSnapshotIdHasBeenSet() const { return m_parentSnapshotIdHasBeenSet; }
82 
91  inline void SetParentSnapshotId(const Aws::String& value) { m_parentSnapshotIdHasBeenSet = true; m_parentSnapshotId = value; }
92 
101  inline void SetParentSnapshotId(Aws::String&& value) { m_parentSnapshotIdHasBeenSet = true; m_parentSnapshotId = std::move(value); }
102 
111  inline void SetParentSnapshotId(const char* value) { m_parentSnapshotIdHasBeenSet = true; m_parentSnapshotId.assign(value); }
112 
121  inline StartSnapshotRequest& WithParentSnapshotId(const Aws::String& value) { SetParentSnapshotId(value); return *this;}
122 
131  inline StartSnapshotRequest& WithParentSnapshotId(Aws::String&& value) { SetParentSnapshotId(std::move(value)); return *this;}
132 
141  inline StartSnapshotRequest& WithParentSnapshotId(const char* value) { SetParentSnapshotId(value); return *this;}
142 
143 
147  inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
148 
152  inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
153 
157  inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
158 
162  inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
163 
167  inline StartSnapshotRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
168 
172  inline StartSnapshotRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
173 
177  inline StartSnapshotRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
178 
182  inline StartSnapshotRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
183 
184 
188  inline const Aws::String& GetDescription() const{ return m_description; }
189 
193  inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
194 
198  inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; }
199 
203  inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); }
204 
208  inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); }
209 
213  inline StartSnapshotRequest& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
214 
218  inline StartSnapshotRequest& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}
219 
223  inline StartSnapshotRequest& WithDescription(const char* value) { SetDescription(value); return *this;}
224 
225 
238  inline const Aws::String& GetClientToken() const{ return m_clientToken; }
239 
252  inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
253 
266  inline void SetClientToken(const Aws::String& value) { m_clientTokenHasBeenSet = true; m_clientToken = value; }
267 
280  inline void SetClientToken(Aws::String&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::move(value); }
281 
294  inline void SetClientToken(const char* value) { m_clientTokenHasBeenSet = true; m_clientToken.assign(value); }
295 
308  inline StartSnapshotRequest& WithClientToken(const Aws::String& value) { SetClientToken(value); return *this;}
309 
322  inline StartSnapshotRequest& WithClientToken(Aws::String&& value) { SetClientToken(std::move(value)); return *this;}
323 
336  inline StartSnapshotRequest& WithClientToken(const char* value) { SetClientToken(value); return *this;}
337 
338 
355  inline bool GetEncrypted() const{ return m_encrypted; }
356 
373  inline bool EncryptedHasBeenSet() const { return m_encryptedHasBeenSet; }
374 
391  inline void SetEncrypted(bool value) { m_encryptedHasBeenSet = true; m_encrypted = value; }
392 
409  inline StartSnapshotRequest& WithEncrypted(bool value) { SetEncrypted(value); return *this;}
410 
411 
421  inline const Aws::String& GetKmsKeyArn() const{ return m_kmsKeyArn; }
422 
432  inline bool KmsKeyArnHasBeenSet() const { return m_kmsKeyArnHasBeenSet; }
433 
443  inline void SetKmsKeyArn(const Aws::String& value) { m_kmsKeyArnHasBeenSet = true; m_kmsKeyArn = value; }
444 
454  inline void SetKmsKeyArn(Aws::String&& value) { m_kmsKeyArnHasBeenSet = true; m_kmsKeyArn = std::move(value); }
455 
465  inline void SetKmsKeyArn(const char* value) { m_kmsKeyArnHasBeenSet = true; m_kmsKeyArn.assign(value); }
466 
476  inline StartSnapshotRequest& WithKmsKeyArn(const Aws::String& value) { SetKmsKeyArn(value); return *this;}
477 
487  inline StartSnapshotRequest& WithKmsKeyArn(Aws::String&& value) { SetKmsKeyArn(std::move(value)); return *this;}
488 
498  inline StartSnapshotRequest& WithKmsKeyArn(const char* value) { SetKmsKeyArn(value); return *this;}
499 
500 
508  inline int GetTimeout() const{ return m_timeout; }
509 
517  inline bool TimeoutHasBeenSet() const { return m_timeoutHasBeenSet; }
518 
526  inline void SetTimeout(int value) { m_timeoutHasBeenSet = true; m_timeout = value; }
527 
535  inline StartSnapshotRequest& WithTimeout(int value) { SetTimeout(value); return *this;}
536 
537  private:
538 
539  long long m_volumeSize;
540  bool m_volumeSizeHasBeenSet;
541 
542  Aws::String m_parentSnapshotId;
543  bool m_parentSnapshotIdHasBeenSet;
544 
545  Aws::Vector<Tag> m_tags;
546  bool m_tagsHasBeenSet;
547 
548  Aws::String m_description;
549  bool m_descriptionHasBeenSet;
550 
551  Aws::String m_clientToken;
552  bool m_clientTokenHasBeenSet;
553 
554  bool m_encrypted;
555  bool m_encryptedHasBeenSet;
556 
557  Aws::String m_kmsKeyArn;
558  bool m_kmsKeyArnHasBeenSet;
559 
560  int m_timeout;
561  bool m_timeoutHasBeenSet;
562  };
563 
564 } // namespace Model
565 } // namespace EBS
566 } // namespace Aws
Aws::EBS::Model::StartSnapshotRequest::TagsHasBeenSet
bool TagsHasBeenSet() const
Definition: StartSnapshotRequest.h:152
Aws::EBS::Model::StartSnapshotRequest::KmsKeyArnHasBeenSet
bool KmsKeyArnHasBeenSet() const
Definition: StartSnapshotRequest.h:432
Aws::EBS::Model::StartSnapshotRequest::SetKmsKeyArn
void SetKmsKeyArn(Aws::String &&value)
Definition: StartSnapshotRequest.h:454
Aws::EBS::Model::StartSnapshotRequest::SetTags
void SetTags(Aws::Vector< Tag > &&value)
Definition: StartSnapshotRequest.h:162
Aws::EBS::Model::StartSnapshotRequest::WithDescription
StartSnapshotRequest & WithDescription(Aws::String &&value)
Definition: StartSnapshotRequest.h:218
Tag.h
Aws::EBS::Model::StartSnapshotRequest::GetDescription
const Aws::String & GetDescription() const
Definition: StartSnapshotRequest.h:188
Aws::EBS::Model::StartSnapshotRequest::SerializePayload
Aws::String SerializePayload() const override
Aws::EBS::Model::StartSnapshotRequest::SetKmsKeyArn
void SetKmsKeyArn(const Aws::String &value)
Definition: StartSnapshotRequest.h:443
Aws::EBS::Model::StartSnapshotRequest::VolumeSizeHasBeenSet
bool VolumeSizeHasBeenSet() const
Definition: StartSnapshotRequest.h:48
Aws::EBS::Model::StartSnapshotRequest::WithClientToken
StartSnapshotRequest & WithClientToken(const Aws::String &value)
Definition: StartSnapshotRequest.h:308
Aws::EBS::Model::StartSnapshotRequest::SetParentSnapshotId
void SetParentSnapshotId(Aws::String &&value)
Definition: StartSnapshotRequest.h:101
Aws::EBS::Model::StartSnapshotRequest::WithTags
StartSnapshotRequest & WithTags(Aws::Vector< Tag > &&value)
Definition: StartSnapshotRequest.h:172
Aws::EBS::Model::StartSnapshotRequest::WithClientToken
StartSnapshotRequest & WithClientToken(Aws::String &&value)
Definition: StartSnapshotRequest.h:322
Aws::EBS::Model::StartSnapshotRequest::SetTags
void SetTags(const Aws::Vector< Tag > &value)
Definition: StartSnapshotRequest.h:157
Aws::EBS::Model::StartSnapshotRequest::GetServiceRequestName
virtual const char * GetServiceRequestName() const override
Definition: StartSnapshotRequest.h:33
Aws::EBS::Model::StartSnapshotRequest::WithParentSnapshotId
StartSnapshotRequest & WithParentSnapshotId(Aws::String &&value)
Definition: StartSnapshotRequest.h:131
Aws::EBS::Model::StartSnapshotRequest::SetClientToken
void SetClientToken(const Aws::String &value)
Definition: StartSnapshotRequest.h:266
Aws::EBS::Model::StartSnapshotRequest::WithDescription
StartSnapshotRequest & WithDescription(const Aws::String &value)
Definition: StartSnapshotRequest.h:213
Aws::EBS::Model::StartSnapshotRequest::SetVolumeSize
void SetVolumeSize(long long value)
Definition: StartSnapshotRequest.h:54
EBS_EXPORTS.h
Aws::EBS::Model::StartSnapshotRequest::SetKmsKeyArn
void SetKmsKeyArn(const char *value)
Definition: StartSnapshotRequest.h:465
Aws::EBS::Model::StartSnapshotRequest::WithVolumeSize
StartSnapshotRequest & WithVolumeSize(long long value)
Definition: StartSnapshotRequest.h:60
Aws::Vector
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
Aws::EBS::Model::StartSnapshotRequest::EncryptedHasBeenSet
bool EncryptedHasBeenSet() const
Definition: StartSnapshotRequest.h:373
Aws::EBS::Model::Tag
Definition: Tag.h:32
AWSVector.h
Aws::EBS::EBSRequest
Definition: EBSRequest.h:18
Aws::EBS::Model::StartSnapshotRequest::AddTags
StartSnapshotRequest & AddTags(const Tag &value)
Definition: StartSnapshotRequest.h:177
Aws::EBS::Model::StartSnapshotRequest::GetKmsKeyArn
const Aws::String & GetKmsKeyArn() const
Definition: StartSnapshotRequest.h:421
Aws::EBS::Model::StartSnapshotRequest::WithClientToken
StartSnapshotRequest & WithClientToken(const char *value)
Definition: StartSnapshotRequest.h:336
Aws::EBS::Model::StartSnapshotRequest::SetParentSnapshotId
void SetParentSnapshotId(const char *value)
Definition: StartSnapshotRequest.h:111
EBSRequest.h
Aws::EBS::Model::StartSnapshotRequest::SetTimeout
void SetTimeout(int value)
Definition: StartSnapshotRequest.h:526
AWS_EBS_API
#define AWS_EBS_API
Definition: EBS_EXPORTS.h:28
Aws::EBS::Model::StartSnapshotRequest::AddTags
StartSnapshotRequest & AddTags(Tag &&value)
Definition: StartSnapshotRequest.h:182
Aws::EBS::Model::StartSnapshotRequest::SetDescription
void SetDescription(Aws::String &&value)
Definition: StartSnapshotRequest.h:203
Aws::EBS::Model::StartSnapshotRequest::WithKmsKeyArn
StartSnapshotRequest & WithKmsKeyArn(Aws::String &&value)
Definition: StartSnapshotRequest.h:487
Aws::EBS::Model::StartSnapshotRequest::WithKmsKeyArn
StartSnapshotRequest & WithKmsKeyArn(const char *value)
Definition: StartSnapshotRequest.h:498
Aws::EBS::Model::StartSnapshotRequest::WithKmsKeyArn
StartSnapshotRequest & WithKmsKeyArn(const Aws::String &value)
Definition: StartSnapshotRequest.h:476
Aws::EBS::Model::StartSnapshotRequest::DescriptionHasBeenSet
bool DescriptionHasBeenSet() const
Definition: StartSnapshotRequest.h:193
Aws::EBS::Model::StartSnapshotRequest::WithParentSnapshotId
StartSnapshotRequest & WithParentSnapshotId(const char *value)
Definition: StartSnapshotRequest.h:141
Aws::EBS::Model::StartSnapshotRequest::ParentSnapshotIdHasBeenSet
bool ParentSnapshotIdHasBeenSet() const
Definition: StartSnapshotRequest.h:81
Aws::EBS::Model::StartSnapshotRequest::ClientTokenHasBeenSet
bool ClientTokenHasBeenSet() const
Definition: StartSnapshotRequest.h:252
Aws::EBS::Model::StartSnapshotRequest::GetTimeout
int GetTimeout() const
Definition: StartSnapshotRequest.h:508
AWSString.h
Aws::EBS::Model::StartSnapshotRequest::StartSnapshotRequest
StartSnapshotRequest()
Aws::EBS::Model::StartSnapshotRequest::SetDescription
void SetDescription(const Aws::String &value)
Definition: StartSnapshotRequest.h:198
Aws::EBS::Model::StartSnapshotRequest::GetClientToken
const Aws::String & GetClientToken() const
Definition: StartSnapshotRequest.h:238
Aws::EBS::Model::StartSnapshotRequest::WithTimeout
StartSnapshotRequest & WithTimeout(int value)
Definition: StartSnapshotRequest.h:535
Aws::EBS::Model::StartSnapshotRequest::SetDescription
void SetDescription(const char *value)
Definition: StartSnapshotRequest.h:208
Aws::EBS::Model::StartSnapshotRequest::WithDescription
StartSnapshotRequest & WithDescription(const char *value)
Definition: StartSnapshotRequest.h:223
Aws::EBS::Model::StartSnapshotRequest::GetEncrypted
bool GetEncrypted() const
Definition: StartSnapshotRequest.h:355
Aws::EBS::Model::StartSnapshotRequest::GetVolumeSize
long long GetVolumeSize() const
Definition: StartSnapshotRequest.h:42
Aws
Definition: AccessManagementClient.h:15
Aws::EBS::Model::StartSnapshotRequest::SetClientToken
void SetClientToken(const char *value)
Definition: StartSnapshotRequest.h:294
Aws::String
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
Aws::EBS::Model::StartSnapshotRequest
Definition: StartSnapshotRequest.h:25
Aws::EBS::Model::StartSnapshotRequest::WithParentSnapshotId
StartSnapshotRequest & WithParentSnapshotId(const Aws::String &value)
Definition: StartSnapshotRequest.h:121
Aws::EBS::Model::StartSnapshotRequest::GetTags
const Aws::Vector< Tag > & GetTags() const
Definition: StartSnapshotRequest.h:147
Aws::EBS::Model::StartSnapshotRequest::TimeoutHasBeenSet
bool TimeoutHasBeenSet() const
Definition: StartSnapshotRequest.h:517
Aws::EBS::Model::StartSnapshotRequest::WithEncrypted
StartSnapshotRequest & WithEncrypted(bool value)
Definition: StartSnapshotRequest.h:409
UUID.h
Aws::EBS::Model::StartSnapshotRequest::SetEncrypted
void SetEncrypted(bool value)
Definition: StartSnapshotRequest.h:391
Aws::EBS::Model::StartSnapshotRequest::WithTags
StartSnapshotRequest & WithTags(const Aws::Vector< Tag > &value)
Definition: StartSnapshotRequest.h:167
Aws::EBS::Model::StartSnapshotRequest::GetParentSnapshotId
const Aws::String & GetParentSnapshotId() const
Definition: StartSnapshotRequest.h:71
Aws::EBS::Model::StartSnapshotRequest::SetClientToken
void SetClientToken(Aws::String &&value)
Definition: StartSnapshotRequest.h:280
Aws::EBS::Model::StartSnapshotRequest::SetParentSnapshotId
void SetParentSnapshotId(const Aws::String &value)
Definition: StartSnapshotRequest.h:91