AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
CreateFileCacheLustreConfiguration.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/FileCacheLustreDeploymentType.h>
10#include <aws/fsx/model/FileCacheLustreMetadataConfiguration.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace FSx {
22namespace Model {
23
31 public:
32 AWS_FSX_API CreateFileCacheLustreConfiguration() = default;
36
38
43 inline int GetPerUnitStorageThroughput() const { return m_perUnitStorageThroughput; }
44 inline bool PerUnitStorageThroughputHasBeenSet() const { return m_perUnitStorageThroughputHasBeenSet; }
45 inline void SetPerUnitStorageThroughput(int value) {
46 m_perUnitStorageThroughputHasBeenSet = true;
47 m_perUnitStorageThroughput = value;
48 }
51 return *this;
52 }
54
56
59 inline FileCacheLustreDeploymentType GetDeploymentType() const { return m_deploymentType; }
60 inline bool DeploymentTypeHasBeenSet() const { return m_deploymentTypeHasBeenSet; }
62 m_deploymentTypeHasBeenSet = true;
63 m_deploymentType = value;
64 }
66 SetDeploymentType(value);
67 return *this;
68 }
70
72
73 inline const Aws::String& GetWeeklyMaintenanceStartTime() const { return m_weeklyMaintenanceStartTime; }
74 inline bool WeeklyMaintenanceStartTimeHasBeenSet() const { return m_weeklyMaintenanceStartTimeHasBeenSet; }
75 template <typename WeeklyMaintenanceStartTimeT = Aws::String>
76 void SetWeeklyMaintenanceStartTime(WeeklyMaintenanceStartTimeT&& value) {
77 m_weeklyMaintenanceStartTimeHasBeenSet = true;
78 m_weeklyMaintenanceStartTime = std::forward<WeeklyMaintenanceStartTimeT>(value);
79 }
80 template <typename WeeklyMaintenanceStartTimeT = Aws::String>
82 SetWeeklyMaintenanceStartTime(std::forward<WeeklyMaintenanceStartTimeT>(value));
83 return *this;
84 }
86
88
91 inline const FileCacheLustreMetadataConfiguration& GetMetadataConfiguration() const { return m_metadataConfiguration; }
92 inline bool MetadataConfigurationHasBeenSet() const { return m_metadataConfigurationHasBeenSet; }
93 template <typename MetadataConfigurationT = FileCacheLustreMetadataConfiguration>
94 void SetMetadataConfiguration(MetadataConfigurationT&& value) {
95 m_metadataConfigurationHasBeenSet = true;
96 m_metadataConfiguration = std::forward<MetadataConfigurationT>(value);
97 }
98 template <typename MetadataConfigurationT = FileCacheLustreMetadataConfiguration>
100 SetMetadataConfiguration(std::forward<MetadataConfigurationT>(value));
101 return *this;
102 }
104 private:
105 int m_perUnitStorageThroughput{0};
106
108
109 Aws::String m_weeklyMaintenanceStartTime;
110
111 FileCacheLustreMetadataConfiguration m_metadataConfiguration;
112 bool m_perUnitStorageThroughputHasBeenSet = false;
113 bool m_deploymentTypeHasBeenSet = false;
114 bool m_weeklyMaintenanceStartTimeHasBeenSet = false;
115 bool m_metadataConfigurationHasBeenSet = false;
116};
117
118} // namespace Model
119} // namespace FSx
120} // namespace Aws
const FileCacheLustreMetadataConfiguration & GetMetadataConfiguration() const
AWS_FSX_API CreateFileCacheLustreConfiguration(Aws::Utils::Json::JsonView jsonValue)
void SetWeeklyMaintenanceStartTime(WeeklyMaintenanceStartTimeT &&value)
AWS_FSX_API Aws::Utils::Json::JsonValue Jsonize() const
CreateFileCacheLustreConfiguration & WithWeeklyMaintenanceStartTime(WeeklyMaintenanceStartTimeT &&value)
CreateFileCacheLustreConfiguration & WithDeploymentType(FileCacheLustreDeploymentType value)
AWS_FSX_API CreateFileCacheLustreConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
CreateFileCacheLustreConfiguration & WithPerUnitStorageThroughput(int value)
CreateFileCacheLustreConfiguration & WithMetadataConfiguration(MetadataConfigurationT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue