AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
CreateLocationFsxOntapRequest.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/datasync/DataSyncRequest.h>
10#include <aws/datasync/DataSync_EXPORTS.h>
11#include <aws/datasync/model/FsxProtocol.h>
12#include <aws/datasync/model/TagListEntry.h>
13
14#include <utility>
15
16namespace Aws {
17namespace DataSync {
18namespace Model {
19
23 public:
24 AWS_DATASYNC_API CreateLocationFsxOntapRequest() = 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 "CreateLocationFsxOntap"; }
31
32 AWS_DATASYNC_API Aws::String SerializePayload() const override;
33
35
37
38 inline const FsxProtocol& GetProtocol() const { return m_protocol; }
39 inline bool ProtocolHasBeenSet() const { return m_protocolHasBeenSet; }
40 template <typename ProtocolT = FsxProtocol>
41 void SetProtocol(ProtocolT&& value) {
42 m_protocolHasBeenSet = true;
43 m_protocol = std::forward<ProtocolT>(value);
44 }
45 template <typename ProtocolT = FsxProtocol>
47 SetProtocol(std::forward<ProtocolT>(value));
48 return *this;
49 }
51
53
62 inline const Aws::Vector<Aws::String>& GetSecurityGroupArns() const { return m_securityGroupArns; }
63 inline bool SecurityGroupArnsHasBeenSet() const { return m_securityGroupArnsHasBeenSet; }
64 template <typename SecurityGroupArnsT = Aws::Vector<Aws::String>>
65 void SetSecurityGroupArns(SecurityGroupArnsT&& value) {
66 m_securityGroupArnsHasBeenSet = true;
67 m_securityGroupArns = std::forward<SecurityGroupArnsT>(value);
68 }
69 template <typename SecurityGroupArnsT = Aws::Vector<Aws::String>>
71 SetSecurityGroupArns(std::forward<SecurityGroupArnsT>(value));
72 return *this;
73 }
74 template <typename SecurityGroupArnsT = Aws::String>
76 m_securityGroupArnsHasBeenSet = true;
77 m_securityGroupArns.emplace_back(std::forward<SecurityGroupArnsT>(value));
78 return *this;
79 }
81
83
87 inline const Aws::String& GetStorageVirtualMachineArn() const { return m_storageVirtualMachineArn; }
88 inline bool StorageVirtualMachineArnHasBeenSet() const { return m_storageVirtualMachineArnHasBeenSet; }
89 template <typename StorageVirtualMachineArnT = Aws::String>
90 void SetStorageVirtualMachineArn(StorageVirtualMachineArnT&& value) {
91 m_storageVirtualMachineArnHasBeenSet = true;
92 m_storageVirtualMachineArn = std::forward<StorageVirtualMachineArnT>(value);
93 }
94 template <typename StorageVirtualMachineArnT = Aws::String>
95 CreateLocationFsxOntapRequest& WithStorageVirtualMachineArn(StorageVirtualMachineArnT&& value) {
96 SetStorageVirtualMachineArn(std::forward<StorageVirtualMachineArnT>(value));
97 return *this;
98 }
100
102
113 inline const Aws::String& GetSubdirectory() const { return m_subdirectory; }
114 inline bool SubdirectoryHasBeenSet() const { return m_subdirectoryHasBeenSet; }
115 template <typename SubdirectoryT = Aws::String>
116 void SetSubdirectory(SubdirectoryT&& value) {
117 m_subdirectoryHasBeenSet = true;
118 m_subdirectory = std::forward<SubdirectoryT>(value);
119 }
120 template <typename SubdirectoryT = Aws::String>
122 SetSubdirectory(std::forward<SubdirectoryT>(value));
123 return *this;
124 }
126
128
133 inline const Aws::Vector<TagListEntry>& GetTags() const { return m_tags; }
134 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
135 template <typename TagsT = Aws::Vector<TagListEntry>>
136 void SetTags(TagsT&& value) {
137 m_tagsHasBeenSet = true;
138 m_tags = std::forward<TagsT>(value);
139 }
140 template <typename TagsT = Aws::Vector<TagListEntry>>
142 SetTags(std::forward<TagsT>(value));
143 return *this;
144 }
145 template <typename TagsT = TagListEntry>
147 m_tagsHasBeenSet = true;
148 m_tags.emplace_back(std::forward<TagsT>(value));
149 return *this;
150 }
152 private:
153 FsxProtocol m_protocol;
154
155 Aws::Vector<Aws::String> m_securityGroupArns;
156
157 Aws::String m_storageVirtualMachineArn;
158
159 Aws::String m_subdirectory;
160
162 bool m_protocolHasBeenSet = false;
163 bool m_securityGroupArnsHasBeenSet = false;
164 bool m_storageVirtualMachineArnHasBeenSet = false;
165 bool m_subdirectoryHasBeenSet = false;
166 bool m_tagsHasBeenSet = false;
167};
168
169} // namespace Model
170} // namespace DataSync
171} // namespace Aws
CreateLocationFsxOntapRequest & WithProtocol(ProtocolT &&value)
CreateLocationFsxOntapRequest & WithTags(TagsT &&value)
CreateLocationFsxOntapRequest & AddSecurityGroupArns(SecurityGroupArnsT &&value)
const Aws::Vector< Aws::String > & GetSecurityGroupArns() const
CreateLocationFsxOntapRequest & WithSecurityGroupArns(SecurityGroupArnsT &&value)
CreateLocationFsxOntapRequest & WithStorageVirtualMachineArn(StorageVirtualMachineArnT &&value)
CreateLocationFsxOntapRequest & AddTags(TagsT &&value)
AWS_DATASYNC_API CreateLocationFsxOntapRequest()=default
CreateLocationFsxOntapRequest & WithSubdirectory(SubdirectoryT &&value)
AWS_DATASYNC_API Aws::String SerializePayload() const override
void SetStorageVirtualMachineArn(StorageVirtualMachineArnT &&value)
AWS_DATASYNC_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
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