AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CreateFileSystemLustreConfiguration.h
1
6#pragma once
7#include <aws/fsx/FSx_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/fsx/model/LustreDeploymentType.h>
10#include <aws/fsx/model/AutoImportPolicyType.h>
11#include <aws/fsx/model/DriveCacheType.h>
12#include <aws/fsx/model/DataCompressionType.h>
13#include <aws/fsx/model/LustreLogCreateConfiguration.h>
14#include <aws/fsx/model/LustreRootSquashConfiguration.h>
15#include <aws/fsx/model/CreateFileSystemLustreMetadataConfiguration.h>
16#include <aws/fsx/model/LustreReadCacheConfiguration.h>
17#include <utility>
18
19namespace Aws
20{
21namespace Utils
22{
23namespace Json
24{
25 class JsonValue;
26 class JsonView;
27} // namespace Json
28} // namespace Utils
29namespace FSx
30{
31namespace Model
32{
33
45 {
46 public:
47 AWS_FSX_API CreateFileSystemLustreConfiguration() = default;
51
52
54
59 inline const Aws::String& GetWeeklyMaintenanceStartTime() const { return m_weeklyMaintenanceStartTime; }
60 inline bool WeeklyMaintenanceStartTimeHasBeenSet() const { return m_weeklyMaintenanceStartTimeHasBeenSet; }
61 template<typename WeeklyMaintenanceStartTimeT = Aws::String>
62 void SetWeeklyMaintenanceStartTime(WeeklyMaintenanceStartTimeT&& value) { m_weeklyMaintenanceStartTimeHasBeenSet = true; m_weeklyMaintenanceStartTime = std::forward<WeeklyMaintenanceStartTimeT>(value); }
63 template<typename WeeklyMaintenanceStartTimeT = Aws::String>
64 CreateFileSystemLustreConfiguration& WithWeeklyMaintenanceStartTime(WeeklyMaintenanceStartTimeT&& value) { SetWeeklyMaintenanceStartTime(std::forward<WeeklyMaintenanceStartTimeT>(value)); return *this;}
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) { m_importPathHasBeenSet = true; m_importPath = std::forward<ImportPathT>(value); }
82 template<typename ImportPathT = Aws::String>
83 CreateFileSystemLustreConfiguration& WithImportPath(ImportPathT&& value) { SetImportPath(std::forward<ImportPathT>(value)); return *this;}
85
87
106 inline const Aws::String& GetExportPath() const { return m_exportPath; }
107 inline bool ExportPathHasBeenSet() const { return m_exportPathHasBeenSet; }
108 template<typename ExportPathT = Aws::String>
109 void SetExportPath(ExportPathT&& value) { m_exportPathHasBeenSet = true; m_exportPath = std::forward<ExportPathT>(value); }
110 template<typename ExportPathT = Aws::String>
111 CreateFileSystemLustreConfiguration& WithExportPath(ExportPathT&& value) { SetExportPath(std::forward<ExportPathT>(value)); return *this;}
113
115
125 inline int GetImportedFileChunkSize() const { return m_importedFileChunkSize; }
126 inline bool ImportedFileChunkSizeHasBeenSet() const { return m_importedFileChunkSizeHasBeenSet; }
127 inline void SetImportedFileChunkSize(int value) { m_importedFileChunkSizeHasBeenSet = true; m_importedFileChunkSize = value; }
130
132
165 inline LustreDeploymentType GetDeploymentType() const { return m_deploymentType; }
166 inline bool DeploymentTypeHasBeenSet() const { return m_deploymentTypeHasBeenSet; }
167 inline void SetDeploymentType(LustreDeploymentType value) { m_deploymentTypeHasBeenSet = true; m_deploymentType = value; }
170
172
196 inline AutoImportPolicyType GetAutoImportPolicy() const { return m_autoImportPolicy; }
197 inline bool AutoImportPolicyHasBeenSet() const { return m_autoImportPolicyHasBeenSet; }
198 inline void SetAutoImportPolicy(AutoImportPolicyType value) { m_autoImportPolicyHasBeenSet = true; m_autoImportPolicy = value; }
201
203
218 inline int GetPerUnitStorageThroughput() const { return m_perUnitStorageThroughput; }
219 inline bool PerUnitStorageThroughputHasBeenSet() const { return m_perUnitStorageThroughputHasBeenSet; }
220 inline void SetPerUnitStorageThroughput(int value) { m_perUnitStorageThroughputHasBeenSet = true; m_perUnitStorageThroughput = value; }
223
225
226 inline const Aws::String& GetDailyAutomaticBackupStartTime() const { return m_dailyAutomaticBackupStartTime; }
227 inline bool DailyAutomaticBackupStartTimeHasBeenSet() const { return m_dailyAutomaticBackupStartTimeHasBeenSet; }
228 template<typename DailyAutomaticBackupStartTimeT = Aws::String>
229 void SetDailyAutomaticBackupStartTime(DailyAutomaticBackupStartTimeT&& value) { m_dailyAutomaticBackupStartTimeHasBeenSet = true; m_dailyAutomaticBackupStartTime = std::forward<DailyAutomaticBackupStartTimeT>(value); }
230 template<typename DailyAutomaticBackupStartTimeT = Aws::String>
231 CreateFileSystemLustreConfiguration& WithDailyAutomaticBackupStartTime(DailyAutomaticBackupStartTimeT&& value) { SetDailyAutomaticBackupStartTime(std::forward<DailyAutomaticBackupStartTimeT>(value)); return *this;}
233
235
240 inline int GetAutomaticBackupRetentionDays() const { return m_automaticBackupRetentionDays; }
241 inline bool AutomaticBackupRetentionDaysHasBeenSet() const { return m_automaticBackupRetentionDaysHasBeenSet; }
242 inline void SetAutomaticBackupRetentionDays(int value) { m_automaticBackupRetentionDaysHasBeenSet = true; m_automaticBackupRetentionDays = value; }
245
247
261 inline bool GetCopyTagsToBackups() const { return m_copyTagsToBackups; }
262 inline bool CopyTagsToBackupsHasBeenSet() const { return m_copyTagsToBackupsHasBeenSet; }
263 inline void SetCopyTagsToBackups(bool value) { m_copyTagsToBackupsHasBeenSet = true; m_copyTagsToBackups = value; }
266
268
276 inline DriveCacheType GetDriveCacheType() const { return m_driveCacheType; }
277 inline bool DriveCacheTypeHasBeenSet() const { return m_driveCacheTypeHasBeenSet; }
278 inline void SetDriveCacheType(DriveCacheType value) { m_driveCacheTypeHasBeenSet = true; m_driveCacheType = value; }
281
283
293 inline DataCompressionType GetDataCompressionType() const { return m_dataCompressionType; }
294 inline bool DataCompressionTypeHasBeenSet() const { return m_dataCompressionTypeHasBeenSet; }
295 inline void SetDataCompressionType(DataCompressionType value) { m_dataCompressionTypeHasBeenSet = true; m_dataCompressionType = value; }
298
300
305 inline bool GetEfaEnabled() const { return m_efaEnabled; }
306 inline bool EfaEnabledHasBeenSet() const { return m_efaEnabledHasBeenSet; }
307 inline void SetEfaEnabled(bool value) { m_efaEnabledHasBeenSet = true; m_efaEnabled = value; }
308 inline CreateFileSystemLustreConfiguration& WithEfaEnabled(bool value) { SetEfaEnabled(value); return *this;}
310
312
318 inline const LustreLogCreateConfiguration& GetLogConfiguration() const { return m_logConfiguration; }
319 inline bool LogConfigurationHasBeenSet() const { return m_logConfigurationHasBeenSet; }
320 template<typename LogConfigurationT = LustreLogCreateConfiguration>
321 void SetLogConfiguration(LogConfigurationT&& value) { m_logConfigurationHasBeenSet = true; m_logConfiguration = std::forward<LogConfigurationT>(value); }
322 template<typename LogConfigurationT = LustreLogCreateConfiguration>
323 CreateFileSystemLustreConfiguration& WithLogConfiguration(LogConfigurationT&& value) { SetLogConfiguration(std::forward<LogConfigurationT>(value)); return *this;}
325
327
332 inline const LustreRootSquashConfiguration& GetRootSquashConfiguration() const { return m_rootSquashConfiguration; }
333 inline bool RootSquashConfigurationHasBeenSet() const { return m_rootSquashConfigurationHasBeenSet; }
334 template<typename RootSquashConfigurationT = LustreRootSquashConfiguration>
335 void SetRootSquashConfiguration(RootSquashConfigurationT&& value) { m_rootSquashConfigurationHasBeenSet = true; m_rootSquashConfiguration = std::forward<RootSquashConfigurationT>(value); }
336 template<typename RootSquashConfigurationT = LustreRootSquashConfiguration>
337 CreateFileSystemLustreConfiguration& WithRootSquashConfiguration(RootSquashConfigurationT&& value) { SetRootSquashConfiguration(std::forward<RootSquashConfigurationT>(value)); return *this;}
339
341
345 inline const CreateFileSystemLustreMetadataConfiguration& GetMetadataConfiguration() const { return m_metadataConfiguration; }
346 inline bool MetadataConfigurationHasBeenSet() const { return m_metadataConfigurationHasBeenSet; }
347 template<typename MetadataConfigurationT = CreateFileSystemLustreMetadataConfiguration>
348 void SetMetadataConfiguration(MetadataConfigurationT&& value) { m_metadataConfigurationHasBeenSet = true; m_metadataConfiguration = std::forward<MetadataConfigurationT>(value); }
349 template<typename MetadataConfigurationT = CreateFileSystemLustreMetadataConfiguration>
350 CreateFileSystemLustreConfiguration& WithMetadataConfiguration(MetadataConfigurationT&& value) { SetMetadataConfiguration(std::forward<MetadataConfigurationT>(value)); return *this;}
352
354
360 inline int GetThroughputCapacity() const { return m_throughputCapacity; }
361 inline bool ThroughputCapacityHasBeenSet() const { return m_throughputCapacityHasBeenSet; }
362 inline void SetThroughputCapacity(int value) { m_throughputCapacityHasBeenSet = true; m_throughputCapacity = value; }
365
367
372 inline const LustreReadCacheConfiguration& GetDataReadCacheConfiguration() const { return m_dataReadCacheConfiguration; }
373 inline bool DataReadCacheConfigurationHasBeenSet() const { return m_dataReadCacheConfigurationHasBeenSet; }
374 template<typename DataReadCacheConfigurationT = LustreReadCacheConfiguration>
375 void SetDataReadCacheConfiguration(DataReadCacheConfigurationT&& value) { m_dataReadCacheConfigurationHasBeenSet = true; m_dataReadCacheConfiguration = std::forward<DataReadCacheConfigurationT>(value); }
376 template<typename DataReadCacheConfigurationT = LustreReadCacheConfiguration>
377 CreateFileSystemLustreConfiguration& WithDataReadCacheConfiguration(DataReadCacheConfigurationT&& value) { SetDataReadCacheConfiguration(std::forward<DataReadCacheConfigurationT>(value)); return *this;}
379 private:
380
381 Aws::String m_weeklyMaintenanceStartTime;
382 bool m_weeklyMaintenanceStartTimeHasBeenSet = false;
383
384 Aws::String m_importPath;
385 bool m_importPathHasBeenSet = false;
386
387 Aws::String m_exportPath;
388 bool m_exportPathHasBeenSet = false;
389
390 int m_importedFileChunkSize{0};
391 bool m_importedFileChunkSizeHasBeenSet = false;
392
394 bool m_deploymentTypeHasBeenSet = false;
395
397 bool m_autoImportPolicyHasBeenSet = false;
398
399 int m_perUnitStorageThroughput{0};
400 bool m_perUnitStorageThroughputHasBeenSet = false;
401
402 Aws::String m_dailyAutomaticBackupStartTime;
403 bool m_dailyAutomaticBackupStartTimeHasBeenSet = false;
404
405 int m_automaticBackupRetentionDays{0};
406 bool m_automaticBackupRetentionDaysHasBeenSet = false;
407
408 bool m_copyTagsToBackups{false};
409 bool m_copyTagsToBackupsHasBeenSet = false;
410
411 DriveCacheType m_driveCacheType{DriveCacheType::NOT_SET};
412 bool m_driveCacheTypeHasBeenSet = false;
413
415 bool m_dataCompressionTypeHasBeenSet = false;
416
417 bool m_efaEnabled{false};
418 bool m_efaEnabledHasBeenSet = false;
419
420 LustreLogCreateConfiguration m_logConfiguration;
421 bool m_logConfigurationHasBeenSet = false;
422
423 LustreRootSquashConfiguration m_rootSquashConfiguration;
424 bool m_rootSquashConfigurationHasBeenSet = false;
425
426 CreateFileSystemLustreMetadataConfiguration m_metadataConfiguration;
427 bool m_metadataConfigurationHasBeenSet = false;
428
429 int m_throughputCapacity{0};
430 bool m_throughputCapacityHasBeenSet = false;
431
432 LustreReadCacheConfiguration m_dataReadCacheConfiguration;
433 bool m_dataReadCacheConfigurationHasBeenSet = false;
434 };
435
436} // namespace Model
437} // namespace FSx
438} // 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