AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
RestoreVolumeFromSnapshotRequest.h
1
6#pragma once
7#include <aws/fsx/FSx_EXPORTS.h>
8#include <aws/fsx/FSxRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/fsx/model/RestoreOpenZFSVolumeOption.h>
12#include <utility>
13#include <aws/core/utils/UUID.h>
14
15namespace Aws
16{
17namespace FSx
18{
19namespace Model
20{
21
25 {
26 public:
27 AWS_FSX_API RestoreVolumeFromSnapshotRequest() = default;
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 "RestoreVolumeFromSnapshot"; }
34
35 AWS_FSX_API Aws::String SerializePayload() const override;
36
38
39
41
42 inline const Aws::String& GetClientRequestToken() const { return m_clientRequestToken; }
43 inline bool ClientRequestTokenHasBeenSet() const { return m_clientRequestTokenHasBeenSet; }
44 template<typename ClientRequestTokenT = Aws::String>
45 void SetClientRequestToken(ClientRequestTokenT&& value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken = std::forward<ClientRequestTokenT>(value); }
46 template<typename ClientRequestTokenT = Aws::String>
47 RestoreVolumeFromSnapshotRequest& WithClientRequestToken(ClientRequestTokenT&& value) { SetClientRequestToken(std::forward<ClientRequestTokenT>(value)); return *this;}
49
51
54 inline const Aws::String& GetVolumeId() const { return m_volumeId; }
55 inline bool VolumeIdHasBeenSet() const { return m_volumeIdHasBeenSet; }
56 template<typename VolumeIdT = Aws::String>
57 void SetVolumeId(VolumeIdT&& value) { m_volumeIdHasBeenSet = true; m_volumeId = std::forward<VolumeIdT>(value); }
58 template<typename VolumeIdT = Aws::String>
59 RestoreVolumeFromSnapshotRequest& WithVolumeId(VolumeIdT&& value) { SetVolumeId(std::forward<VolumeIdT>(value)); return *this;}
61
63
67 inline const Aws::String& GetSnapshotId() const { return m_snapshotId; }
68 inline bool SnapshotIdHasBeenSet() const { return m_snapshotIdHasBeenSet; }
69 template<typename SnapshotIdT = Aws::String>
70 void SetSnapshotId(SnapshotIdT&& value) { m_snapshotIdHasBeenSet = true; m_snapshotId = std::forward<SnapshotIdT>(value); }
71 template<typename SnapshotIdT = Aws::String>
72 RestoreVolumeFromSnapshotRequest& WithSnapshotId(SnapshotIdT&& value) { SetSnapshotId(std::forward<SnapshotIdT>(value)); return *this;}
74
76
86 inline const Aws::Vector<RestoreOpenZFSVolumeOption>& GetOptions() const { return m_options; }
87 inline bool OptionsHasBeenSet() const { return m_optionsHasBeenSet; }
88 template<typename OptionsT = Aws::Vector<RestoreOpenZFSVolumeOption>>
89 void SetOptions(OptionsT&& value) { m_optionsHasBeenSet = true; m_options = std::forward<OptionsT>(value); }
90 template<typename OptionsT = Aws::Vector<RestoreOpenZFSVolumeOption>>
91 RestoreVolumeFromSnapshotRequest& WithOptions(OptionsT&& value) { SetOptions(std::forward<OptionsT>(value)); return *this;}
92 inline RestoreVolumeFromSnapshotRequest& AddOptions(RestoreOpenZFSVolumeOption value) { m_optionsHasBeenSet = true; m_options.push_back(value); return *this; }
94 private:
95
96 Aws::String m_clientRequestToken{Aws::Utils::UUID::PseudoRandomUUID()};
97 bool m_clientRequestTokenHasBeenSet = true;
98
99 Aws::String m_volumeId;
100 bool m_volumeIdHasBeenSet = false;
101
102 Aws::String m_snapshotId;
103 bool m_snapshotIdHasBeenSet = false;
104
106 bool m_optionsHasBeenSet = false;
107 };
108
109} // namespace Model
110} // namespace FSx
111} // namespace Aws
const Aws::Vector< RestoreOpenZFSVolumeOption > & GetOptions() const
AWS_FSX_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
RestoreVolumeFromSnapshotRequest & AddOptions(RestoreOpenZFSVolumeOption value)
AWS_FSX_API Aws::String SerializePayload() const override
RestoreVolumeFromSnapshotRequest & WithClientRequestToken(ClientRequestTokenT &&value)
RestoreVolumeFromSnapshotRequest & WithSnapshotId(SnapshotIdT &&value)
RestoreVolumeFromSnapshotRequest & WithOptions(OptionsT &&value)
RestoreVolumeFromSnapshotRequest & WithVolumeId(VolumeIdT &&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