AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
CreateFileSystemLustreConfiguration.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/AutoImportPolicyType.h>
10#include <aws/fsx/model/CreateFileSystemLustreMetadataConfiguration.h>
11#include <aws/fsx/model/DataCompressionType.h>
12#include <aws/fsx/model/DriveCacheType.h>
13#include <aws/fsx/model/LustreDeploymentType.h>
14#include <aws/fsx/model/LustreLogCreateConfiguration.h>
15#include <aws/fsx/model/LustreReadCacheConfiguration.h>
16#include <aws/fsx/model/LustreRootSquashConfiguration.h>
17
18#include <utility>
19
20namespace Aws {
21namespace Utils {
22namespace Json {
23class JsonValue;
24class JsonView;
25} // namespace Json
26} // namespace Utils
27namespace FSx {
28namespace Model {
29
41 public:
42 AWS_FSX_API CreateFileSystemLustreConfiguration() = default;
46
48
53 inline const Aws::String& GetWeeklyMaintenanceStartTime() const { return m_weeklyMaintenanceStartTime; }
54 inline bool WeeklyMaintenanceStartTimeHasBeenSet() const { return m_weeklyMaintenanceStartTimeHasBeenSet; }
55 template <typename WeeklyMaintenanceStartTimeT = Aws::String>
56 void SetWeeklyMaintenanceStartTime(WeeklyMaintenanceStartTimeT&& value) {
57 m_weeklyMaintenanceStartTimeHasBeenSet = true;
58 m_weeklyMaintenanceStartTime = std::forward<WeeklyMaintenanceStartTimeT>(value);
59 }
60 template <typename WeeklyMaintenanceStartTimeT = Aws::String>
62 SetWeeklyMaintenanceStartTime(std::forward<WeeklyMaintenanceStartTimeT>(value));
63 return *this;
64 }
66
68
78 inline const Aws::String& GetImportPath() const { return m_importPath; }
79 inline bool ImportPathHasBeenSet() const { return m_importPathHasBeenSet; }
80 template <typename ImportPathT = Aws::String>
81 void SetImportPath(ImportPathT&& value) {
82 m_importPathHasBeenSet = true;
83 m_importPath = std::forward<ImportPathT>(value);
84 }
85 template <typename ImportPathT = Aws::String>
87 SetImportPath(std::forward<ImportPathT>(value));
88 return *this;
89 }
91
93
112 inline const Aws::String& GetExportPath() const { return m_exportPath; }
113 inline bool ExportPathHasBeenSet() const { return m_exportPathHasBeenSet; }
114 template <typename ExportPathT = Aws::String>
115 void SetExportPath(ExportPathT&& value) {
116 m_exportPathHasBeenSet = true;
117 m_exportPath = std::forward<ExportPathT>(value);
118 }
119 template <typename ExportPathT = Aws::String>
121 SetExportPath(std::forward<ExportPathT>(value));
122 return *this;
123 }
125
127
137 inline int GetImportedFileChunkSize() const { return m_importedFileChunkSize; }
138 inline bool ImportedFileChunkSizeHasBeenSet() const { return m_importedFileChunkSizeHasBeenSet; }
139 inline void SetImportedFileChunkSize(int value) {
140 m_importedFileChunkSizeHasBeenSet = true;
141 m_importedFileChunkSize = value;
142 }
145 return *this;
146 }
148
150
183 inline LustreDeploymentType GetDeploymentType() const { return m_deploymentType; }
184 inline bool DeploymentTypeHasBeenSet() const { return m_deploymentTypeHasBeenSet; }
186 m_deploymentTypeHasBeenSet = true;
187 m_deploymentType = value;
188 }
190 SetDeploymentType(value);
191 return *this;
192 }
194
196
220 inline AutoImportPolicyType GetAutoImportPolicy() const { return m_autoImportPolicy; }
221 inline bool AutoImportPolicyHasBeenSet() const { return m_autoImportPolicyHasBeenSet; }
223 m_autoImportPolicyHasBeenSet = true;
224 m_autoImportPolicy = value;
225 }
227 SetAutoImportPolicy(value);
228 return *this;
229 }
231
233
248 inline int GetPerUnitStorageThroughput() const { return m_perUnitStorageThroughput; }
249 inline bool PerUnitStorageThroughputHasBeenSet() const { return m_perUnitStorageThroughputHasBeenSet; }
250 inline void SetPerUnitStorageThroughput(int value) {
251 m_perUnitStorageThroughputHasBeenSet = true;
252 m_perUnitStorageThroughput = value;
253 }
256 return *this;
257 }
259
261
262 inline const Aws::String& GetDailyAutomaticBackupStartTime() const { return m_dailyAutomaticBackupStartTime; }
263 inline bool DailyAutomaticBackupStartTimeHasBeenSet() const { return m_dailyAutomaticBackupStartTimeHasBeenSet; }
264 template <typename DailyAutomaticBackupStartTimeT = Aws::String>
265 void SetDailyAutomaticBackupStartTime(DailyAutomaticBackupStartTimeT&& value) {
266 m_dailyAutomaticBackupStartTimeHasBeenSet = true;
267 m_dailyAutomaticBackupStartTime = std::forward<DailyAutomaticBackupStartTimeT>(value);
268 }
269 template <typename DailyAutomaticBackupStartTimeT = Aws::String>
271 SetDailyAutomaticBackupStartTime(std::forward<DailyAutomaticBackupStartTimeT>(value));
272 return *this;
273 }
275
277
282 inline int GetAutomaticBackupRetentionDays() const { return m_automaticBackupRetentionDays; }
283 inline bool AutomaticBackupRetentionDaysHasBeenSet() const { return m_automaticBackupRetentionDaysHasBeenSet; }
284 inline void SetAutomaticBackupRetentionDays(int value) {
285 m_automaticBackupRetentionDaysHasBeenSet = true;
286 m_automaticBackupRetentionDays = value;
287 }
290 return *this;
291 }
293
295
309 inline bool GetCopyTagsToBackups() const { return m_copyTagsToBackups; }
310 inline bool CopyTagsToBackupsHasBeenSet() const { return m_copyTagsToBackupsHasBeenSet; }
311 inline void SetCopyTagsToBackups(bool value) {
312 m_copyTagsToBackupsHasBeenSet = true;
313 m_copyTagsToBackups = value;
314 }
317 return *this;
318 }
320
322
330 inline DriveCacheType GetDriveCacheType() const { return m_driveCacheType; }
331 inline bool DriveCacheTypeHasBeenSet() const { return m_driveCacheTypeHasBeenSet; }
333 m_driveCacheTypeHasBeenSet = true;
334 m_driveCacheType = value;
335 }
337 SetDriveCacheType(value);
338 return *this;
339 }
341
343
353 inline DataCompressionType GetDataCompressionType() const { return m_dataCompressionType; }
354 inline bool DataCompressionTypeHasBeenSet() const { return m_dataCompressionTypeHasBeenSet; }
356 m_dataCompressionTypeHasBeenSet = true;
357 m_dataCompressionType = value;
358 }
361 return *this;
362 }
364
366
371 inline bool GetEfaEnabled() const { return m_efaEnabled; }
372 inline bool EfaEnabledHasBeenSet() const { return m_efaEnabledHasBeenSet; }
373 inline void SetEfaEnabled(bool value) {
374 m_efaEnabledHasBeenSet = true;
375 m_efaEnabled = value;
376 }
378 SetEfaEnabled(value);
379 return *this;
380 }
382
384
390 inline const LustreLogCreateConfiguration& GetLogConfiguration() const { return m_logConfiguration; }
391 inline bool LogConfigurationHasBeenSet() const { return m_logConfigurationHasBeenSet; }
392 template <typename LogConfigurationT = LustreLogCreateConfiguration>
393 void SetLogConfiguration(LogConfigurationT&& value) {
394 m_logConfigurationHasBeenSet = true;
395 m_logConfiguration = std::forward<LogConfigurationT>(value);
396 }
397 template <typename LogConfigurationT = LustreLogCreateConfiguration>
399 SetLogConfiguration(std::forward<LogConfigurationT>(value));
400 return *this;
401 }
403
405
410 inline const LustreRootSquashConfiguration& GetRootSquashConfiguration() const { return m_rootSquashConfiguration; }
411 inline bool RootSquashConfigurationHasBeenSet() const { return m_rootSquashConfigurationHasBeenSet; }
412 template <typename RootSquashConfigurationT = LustreRootSquashConfiguration>
413 void SetRootSquashConfiguration(RootSquashConfigurationT&& value) {
414 m_rootSquashConfigurationHasBeenSet = true;
415 m_rootSquashConfiguration = std::forward<RootSquashConfigurationT>(value);
416 }
417 template <typename RootSquashConfigurationT = LustreRootSquashConfiguration>
419 SetRootSquashConfiguration(std::forward<RootSquashConfigurationT>(value));
420 return *this;
421 }
423
425
429 inline const CreateFileSystemLustreMetadataConfiguration& GetMetadataConfiguration() const { return m_metadataConfiguration; }
430 inline bool MetadataConfigurationHasBeenSet() const { return m_metadataConfigurationHasBeenSet; }
431 template <typename MetadataConfigurationT = CreateFileSystemLustreMetadataConfiguration>
432 void SetMetadataConfiguration(MetadataConfigurationT&& value) {
433 m_metadataConfigurationHasBeenSet = true;
434 m_metadataConfiguration = std::forward<MetadataConfigurationT>(value);
435 }
436 template <typename MetadataConfigurationT = CreateFileSystemLustreMetadataConfiguration>
438 SetMetadataConfiguration(std::forward<MetadataConfigurationT>(value));
439 return *this;
440 }
442
444
450 inline int GetThroughputCapacity() const { return m_throughputCapacity; }
451 inline bool ThroughputCapacityHasBeenSet() const { return m_throughputCapacityHasBeenSet; }
452 inline void SetThroughputCapacity(int value) {
453 m_throughputCapacityHasBeenSet = true;
454 m_throughputCapacity = value;
455 }
458 return *this;
459 }
461
463
468 inline const LustreReadCacheConfiguration& GetDataReadCacheConfiguration() const { return m_dataReadCacheConfiguration; }
469 inline bool DataReadCacheConfigurationHasBeenSet() const { return m_dataReadCacheConfigurationHasBeenSet; }
470 template <typename DataReadCacheConfigurationT = LustreReadCacheConfiguration>
471 void SetDataReadCacheConfiguration(DataReadCacheConfigurationT&& value) {
472 m_dataReadCacheConfigurationHasBeenSet = true;
473 m_dataReadCacheConfiguration = std::forward<DataReadCacheConfigurationT>(value);
474 }
475 template <typename DataReadCacheConfigurationT = LustreReadCacheConfiguration>
477 SetDataReadCacheConfiguration(std::forward<DataReadCacheConfigurationT>(value));
478 return *this;
479 }
481 private:
482 Aws::String m_weeklyMaintenanceStartTime;
483
484 Aws::String m_importPath;
485
486 Aws::String m_exportPath;
487
488 int m_importedFileChunkSize{0};
489
491
493
494 int m_perUnitStorageThroughput{0};
495
496 Aws::String m_dailyAutomaticBackupStartTime;
497
498 int m_automaticBackupRetentionDays{0};
499
500 bool m_copyTagsToBackups{false};
501
502 DriveCacheType m_driveCacheType{DriveCacheType::NOT_SET};
503
505
506 bool m_efaEnabled{false};
507
508 LustreLogCreateConfiguration m_logConfiguration;
509
510 LustreRootSquashConfiguration m_rootSquashConfiguration;
511
512 CreateFileSystemLustreMetadataConfiguration m_metadataConfiguration;
513
514 int m_throughputCapacity{0};
515
516 LustreReadCacheConfiguration m_dataReadCacheConfiguration;
517 bool m_weeklyMaintenanceStartTimeHasBeenSet = false;
518 bool m_importPathHasBeenSet = false;
519 bool m_exportPathHasBeenSet = false;
520 bool m_importedFileChunkSizeHasBeenSet = false;
521 bool m_deploymentTypeHasBeenSet = false;
522 bool m_autoImportPolicyHasBeenSet = false;
523 bool m_perUnitStorageThroughputHasBeenSet = false;
524 bool m_dailyAutomaticBackupStartTimeHasBeenSet = false;
525 bool m_automaticBackupRetentionDaysHasBeenSet = false;
526 bool m_copyTagsToBackupsHasBeenSet = false;
527 bool m_driveCacheTypeHasBeenSet = false;
528 bool m_dataCompressionTypeHasBeenSet = false;
529 bool m_efaEnabledHasBeenSet = false;
530 bool m_logConfigurationHasBeenSet = false;
531 bool m_rootSquashConfigurationHasBeenSet = false;
532 bool m_metadataConfigurationHasBeenSet = false;
533 bool m_throughputCapacityHasBeenSet = false;
534 bool m_dataReadCacheConfigurationHasBeenSet = false;
535};
536
537} // namespace Model
538} // namespace FSx
539} // namespace Aws
CreateFileSystemLustreConfiguration & WithDataReadCacheConfiguration(DataReadCacheConfigurationT &&value)
CreateFileSystemLustreConfiguration & WithEfaEnabled(bool value)
CreateFileSystemLustreConfiguration & WithThroughputCapacity(int value)
CreateFileSystemLustreConfiguration & WithDriveCacheType(DriveCacheType value)
CreateFileSystemLustreConfiguration & WithExportPath(ExportPathT &&value)
CreateFileSystemLustreConfiguration & WithImportedFileChunkSize(int value)
const LustreRootSquashConfiguration & GetRootSquashConfiguration() const
void SetWeeklyMaintenanceStartTime(WeeklyMaintenanceStartTimeT &&value)
CreateFileSystemLustreConfiguration & WithCopyTagsToBackups(bool value)
CreateFileSystemLustreConfiguration & WithLogConfiguration(LogConfigurationT &&value)
CreateFileSystemLustreConfiguration & WithMetadataConfiguration(MetadataConfigurationT &&value)
void SetDailyAutomaticBackupStartTime(DailyAutomaticBackupStartTimeT &&value)
AWS_FSX_API Aws::Utils::Json::JsonValue Jsonize() const
CreateFileSystemLustreConfiguration & WithWeeklyMaintenanceStartTime(WeeklyMaintenanceStartTimeT &&value)
CreateFileSystemLustreConfiguration & WithDailyAutomaticBackupStartTime(DailyAutomaticBackupStartTimeT &&value)
CreateFileSystemLustreConfiguration & WithRootSquashConfiguration(RootSquashConfigurationT &&value)
CreateFileSystemLustreConfiguration & WithAutomaticBackupRetentionDays(int value)
const CreateFileSystemLustreMetadataConfiguration & GetMetadataConfiguration() const
CreateFileSystemLustreConfiguration & WithImportPath(ImportPathT &&value)
CreateFileSystemLustreConfiguration & WithDataCompressionType(DataCompressionType value)
CreateFileSystemLustreConfiguration & WithDeploymentType(LustreDeploymentType value)
CreateFileSystemLustreConfiguration & WithAutoImportPolicy(AutoImportPolicyType value)
const LustreReadCacheConfiguration & GetDataReadCacheConfiguration() const
AWS_FSX_API CreateFileSystemLustreConfiguration(Aws::Utils::Json::JsonView jsonValue)
CreateFileSystemLustreConfiguration & WithPerUnitStorageThroughput(int value)
AWS_FSX_API CreateFileSystemLustreConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue