AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
OntapVolumeConfiguration.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/fsx/FSx_EXPORTS.h>
9#include <aws/fsx/model/AggregateConfiguration.h>
10#include <aws/fsx/model/FlexCacheEndpointType.h>
11#include <aws/fsx/model/OntapVolumeType.h>
12#include <aws/fsx/model/SecurityStyle.h>
13#include <aws/fsx/model/SnaplockConfiguration.h>
14#include <aws/fsx/model/TieringPolicy.h>
15#include <aws/fsx/model/VolumeStyle.h>
16
17#include <utility>
18
19namespace Aws {
20namespace Utils {
21namespace Json {
22class JsonValue;
23class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace FSx {
27namespace Model {
28
36 public:
37 AWS_FSX_API OntapVolumeConfiguration() = default;
41
43
51 inline FlexCacheEndpointType GetFlexCacheEndpointType() const { return m_flexCacheEndpointType; }
52 inline bool FlexCacheEndpointTypeHasBeenSet() const { return m_flexCacheEndpointTypeHasBeenSet; }
54 m_flexCacheEndpointTypeHasBeenSet = true;
55 m_flexCacheEndpointType = value;
56 }
59 return *this;
60 }
62
64
73 inline const Aws::String& GetJunctionPath() const { return m_junctionPath; }
74 inline bool JunctionPathHasBeenSet() const { return m_junctionPathHasBeenSet; }
75 template <typename JunctionPathT = Aws::String>
76 void SetJunctionPath(JunctionPathT&& value) {
77 m_junctionPathHasBeenSet = true;
78 m_junctionPath = std::forward<JunctionPathT>(value);
79 }
80 template <typename JunctionPathT = Aws::String>
82 SetJunctionPath(std::forward<JunctionPathT>(value));
83 return *this;
84 }
86
88
92 inline SecurityStyle GetSecurityStyle() const { return m_securityStyle; }
93 inline bool SecurityStyleHasBeenSet() const { return m_securityStyleHasBeenSet; }
94 inline void SetSecurityStyle(SecurityStyle value) {
95 m_securityStyleHasBeenSet = true;
96 m_securityStyle = value;
97 }
99 SetSecurityStyle(value);
100 return *this;
101 }
103
105
108 inline int GetSizeInMegabytes() const { return m_sizeInMegabytes; }
109 inline bool SizeInMegabytesHasBeenSet() const { return m_sizeInMegabytesHasBeenSet; }
110 inline void SetSizeInMegabytes(int value) {
111 m_sizeInMegabytesHasBeenSet = true;
112 m_sizeInMegabytes = value;
113 }
115 SetSizeInMegabytes(value);
116 return *this;
117 }
119
121
124 inline bool GetStorageEfficiencyEnabled() const { return m_storageEfficiencyEnabled; }
125 inline bool StorageEfficiencyEnabledHasBeenSet() const { return m_storageEfficiencyEnabledHasBeenSet; }
126 inline void SetStorageEfficiencyEnabled(bool value) {
127 m_storageEfficiencyEnabledHasBeenSet = true;
128 m_storageEfficiencyEnabled = value;
129 }
132 return *this;
133 }
135
137
140 inline const Aws::String& GetStorageVirtualMachineId() const { return m_storageVirtualMachineId; }
141 inline bool StorageVirtualMachineIdHasBeenSet() const { return m_storageVirtualMachineIdHasBeenSet; }
142 template <typename StorageVirtualMachineIdT = Aws::String>
143 void SetStorageVirtualMachineId(StorageVirtualMachineIdT&& value) {
144 m_storageVirtualMachineIdHasBeenSet = true;
145 m_storageVirtualMachineId = std::forward<StorageVirtualMachineIdT>(value);
146 }
147 template <typename StorageVirtualMachineIdT = Aws::String>
148 OntapVolumeConfiguration& WithStorageVirtualMachineId(StorageVirtualMachineIdT&& value) {
149 SetStorageVirtualMachineId(std::forward<StorageVirtualMachineIdT>(value));
150 return *this;
151 }
153
155
164 inline bool GetStorageVirtualMachineRoot() const { return m_storageVirtualMachineRoot; }
165 inline bool StorageVirtualMachineRootHasBeenSet() const { return m_storageVirtualMachineRootHasBeenSet; }
166 inline void SetStorageVirtualMachineRoot(bool value) {
167 m_storageVirtualMachineRootHasBeenSet = true;
168 m_storageVirtualMachineRoot = value;
169 }
172 return *this;
173 }
175
177
180 inline const TieringPolicy& GetTieringPolicy() const { return m_tieringPolicy; }
181 inline bool TieringPolicyHasBeenSet() const { return m_tieringPolicyHasBeenSet; }
182 template <typename TieringPolicyT = TieringPolicy>
183 void SetTieringPolicy(TieringPolicyT&& value) {
184 m_tieringPolicyHasBeenSet = true;
185 m_tieringPolicy = std::forward<TieringPolicyT>(value);
186 }
187 template <typename TieringPolicyT = TieringPolicy>
189 SetTieringPolicy(std::forward<TieringPolicyT>(value));
190 return *this;
191 }
193
195
198 inline const Aws::String& GetUUID() const { return m_uUID; }
199 inline bool UUIDHasBeenSet() const { return m_uUIDHasBeenSet; }
200 template <typename UUIDT = Aws::String>
201 void SetUUID(UUIDT&& value) {
202 m_uUIDHasBeenSet = true;
203 m_uUID = std::forward<UUIDT>(value);
204 }
205 template <typename UUIDT = Aws::String>
207 SetUUID(std::forward<UUIDT>(value));
208 return *this;
209 }
211
213
223 inline OntapVolumeType GetOntapVolumeType() const { return m_ontapVolumeType; }
224 inline bool OntapVolumeTypeHasBeenSet() const { return m_ontapVolumeTypeHasBeenSet; }
226 m_ontapVolumeTypeHasBeenSet = true;
227 m_ontapVolumeType = value;
228 }
230 SetOntapVolumeType(value);
231 return *this;
232 }
234
236
252 inline const Aws::String& GetSnapshotPolicy() const { return m_snapshotPolicy; }
253 inline bool SnapshotPolicyHasBeenSet() const { return m_snapshotPolicyHasBeenSet; }
254 template <typename SnapshotPolicyT = Aws::String>
255 void SetSnapshotPolicy(SnapshotPolicyT&& value) {
256 m_snapshotPolicyHasBeenSet = true;
257 m_snapshotPolicy = std::forward<SnapshotPolicyT>(value);
258 }
259 template <typename SnapshotPolicyT = Aws::String>
261 SetSnapshotPolicy(std::forward<SnapshotPolicyT>(value));
262 return *this;
263 }
265
267
276 inline bool GetCopyTagsToBackups() const { return m_copyTagsToBackups; }
277 inline bool CopyTagsToBackupsHasBeenSet() const { return m_copyTagsToBackupsHasBeenSet; }
278 inline void SetCopyTagsToBackups(bool value) {
279 m_copyTagsToBackupsHasBeenSet = true;
280 m_copyTagsToBackups = value;
281 }
284 return *this;
285 }
287
289
292 inline const SnaplockConfiguration& GetSnaplockConfiguration() const { return m_snaplockConfiguration; }
293 inline bool SnaplockConfigurationHasBeenSet() const { return m_snaplockConfigurationHasBeenSet; }
294 template <typename SnaplockConfigurationT = SnaplockConfiguration>
295 void SetSnaplockConfiguration(SnaplockConfigurationT&& value) {
296 m_snaplockConfigurationHasBeenSet = true;
297 m_snaplockConfiguration = std::forward<SnaplockConfigurationT>(value);
298 }
299 template <typename SnaplockConfigurationT = SnaplockConfiguration>
300 OntapVolumeConfiguration& WithSnaplockConfiguration(SnaplockConfigurationT&& value) {
301 SetSnaplockConfiguration(std::forward<SnaplockConfigurationT>(value));
302 return *this;
303 }
305
307
313 inline VolumeStyle GetVolumeStyle() const { return m_volumeStyle; }
314 inline bool VolumeStyleHasBeenSet() const { return m_volumeStyleHasBeenSet; }
315 inline void SetVolumeStyle(VolumeStyle value) {
316 m_volumeStyleHasBeenSet = true;
317 m_volumeStyle = value;
318 }
320 SetVolumeStyle(value);
321 return *this;
322 }
324
326
330 inline const AggregateConfiguration& GetAggregateConfiguration() const { return m_aggregateConfiguration; }
331 inline bool AggregateConfigurationHasBeenSet() const { return m_aggregateConfigurationHasBeenSet; }
332 template <typename AggregateConfigurationT = AggregateConfiguration>
333 void SetAggregateConfiguration(AggregateConfigurationT&& value) {
334 m_aggregateConfigurationHasBeenSet = true;
335 m_aggregateConfiguration = std::forward<AggregateConfigurationT>(value);
336 }
337 template <typename AggregateConfigurationT = AggregateConfiguration>
338 OntapVolumeConfiguration& WithAggregateConfiguration(AggregateConfigurationT&& value) {
339 SetAggregateConfiguration(std::forward<AggregateConfigurationT>(value));
340 return *this;
341 }
343
345
348 inline long long GetSizeInBytes() const { return m_sizeInBytes; }
349 inline bool SizeInBytesHasBeenSet() const { return m_sizeInBytesHasBeenSet; }
350 inline void SetSizeInBytes(long long value) {
351 m_sizeInBytesHasBeenSet = true;
352 m_sizeInBytes = value;
353 }
354 inline OntapVolumeConfiguration& WithSizeInBytes(long long value) {
355 SetSizeInBytes(value);
356 return *this;
357 }
359 private:
361
362 Aws::String m_junctionPath;
363
364 SecurityStyle m_securityStyle{SecurityStyle::NOT_SET};
365
366 int m_sizeInMegabytes{0};
367
368 bool m_storageEfficiencyEnabled{false};
369
370 Aws::String m_storageVirtualMachineId;
371
372 bool m_storageVirtualMachineRoot{false};
373
374 TieringPolicy m_tieringPolicy;
375
376 Aws::String m_uUID;
377
378 OntapVolumeType m_ontapVolumeType{OntapVolumeType::NOT_SET};
379
380 Aws::String m_snapshotPolicy;
381
382 bool m_copyTagsToBackups{false};
383
384 SnaplockConfiguration m_snaplockConfiguration;
385
386 VolumeStyle m_volumeStyle{VolumeStyle::NOT_SET};
387
388 AggregateConfiguration m_aggregateConfiguration;
389
390 long long m_sizeInBytes{0};
391 bool m_flexCacheEndpointTypeHasBeenSet = false;
392 bool m_junctionPathHasBeenSet = false;
393 bool m_securityStyleHasBeenSet = false;
394 bool m_sizeInMegabytesHasBeenSet = false;
395 bool m_storageEfficiencyEnabledHasBeenSet = false;
396 bool m_storageVirtualMachineIdHasBeenSet = false;
397 bool m_storageVirtualMachineRootHasBeenSet = false;
398 bool m_tieringPolicyHasBeenSet = false;
399 bool m_uUIDHasBeenSet = false;
400 bool m_ontapVolumeTypeHasBeenSet = false;
401 bool m_snapshotPolicyHasBeenSet = false;
402 bool m_copyTagsToBackupsHasBeenSet = false;
403 bool m_snaplockConfigurationHasBeenSet = false;
404 bool m_volumeStyleHasBeenSet = false;
405 bool m_aggregateConfigurationHasBeenSet = false;
406 bool m_sizeInBytesHasBeenSet = false;
407};
408
409} // namespace Model
410} // namespace FSx
411} // namespace Aws
const AggregateConfiguration & GetAggregateConfiguration() const
OntapVolumeConfiguration & WithStorageVirtualMachineRoot(bool value)
OntapVolumeConfiguration & WithAggregateConfiguration(AggregateConfigurationT &&value)
OntapVolumeConfiguration & WithVolumeStyle(VolumeStyle value)
OntapVolumeConfiguration & WithTieringPolicy(TieringPolicyT &&value)
AWS_FSX_API Aws::Utils::Json::JsonValue Jsonize() const
OntapVolumeConfiguration & WithSizeInBytes(long long value)
OntapVolumeConfiguration & WithOntapVolumeType(OntapVolumeType value)
OntapVolumeConfiguration & WithJunctionPath(JunctionPathT &&value)
OntapVolumeConfiguration & WithUUID(UUIDT &&value)
void SetAggregateConfiguration(AggregateConfigurationT &&value)
OntapVolumeConfiguration & WithStorageEfficiencyEnabled(bool value)
OntapVolumeConfiguration & WithCopyTagsToBackups(bool value)
OntapVolumeConfiguration & WithSnaplockConfiguration(SnaplockConfigurationT &&value)
void SetSnaplockConfiguration(SnaplockConfigurationT &&value)
void SetFlexCacheEndpointType(FlexCacheEndpointType value)
OntapVolumeConfiguration & WithSnapshotPolicy(SnapshotPolicyT &&value)
AWS_FSX_API OntapVolumeConfiguration(Aws::Utils::Json::JsonView jsonValue)
void SetStorageVirtualMachineId(StorageVirtualMachineIdT &&value)
AWS_FSX_API OntapVolumeConfiguration()=default
const SnaplockConfiguration & GetSnaplockConfiguration() const
AWS_FSX_API OntapVolumeConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
OntapVolumeConfiguration & WithSizeInMegabytes(int value)
OntapVolumeConfiguration & WithSecurityStyle(SecurityStyle value)
OntapVolumeConfiguration & WithStorageVirtualMachineId(StorageVirtualMachineIdT &&value)
FlexCacheEndpointType GetFlexCacheEndpointType() const
OntapVolumeConfiguration & WithFlexCacheEndpointType(FlexCacheEndpointType value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue