7#include <aws/fsx/FSx_EXPORTS.h>
8#include <aws/fsx/model/AutocommitPeriod.h>
9#include <aws/fsx/model/PrivilegedDelete.h>
10#include <aws/fsx/model/SnaplockRetentionPeriod.h>
11#include <aws/fsx/model/SnaplockType.h>
51 m_auditLogVolumeHasBeenSet =
true;
52 m_auditLogVolume = value;
67 template <
typename AutocommitPeriodT = AutocommitPeriod>
69 m_autocommitPeriodHasBeenSet =
true;
70 m_autocommitPeriod = std::forward<AutocommitPeriodT>(value);
72 template <
typename AutocommitPeriodT = AutocommitPeriod>
93 m_privilegedDeleteHasBeenSet =
true;
94 m_privilegedDelete = value;
108 template <
typename RetentionPeriodT = SnaplockRetentionPeriod>
110 m_retentionPeriodHasBeenSet =
true;
111 m_retentionPeriod = std::forward<RetentionPeriodT>(value);
113 template <
typename RetentionPeriodT = SnaplockRetentionPeriod>
142 m_snaplockTypeHasBeenSet =
true;
143 m_snaplockType = value;
163 m_volumeAppendModeEnabledHasBeenSet =
true;
164 m_volumeAppendModeEnabled = value;
172 bool m_auditLogVolume{
false};
174 AutocommitPeriod m_autocommitPeriod;
178 SnaplockRetentionPeriod m_retentionPeriod;
182 bool m_volumeAppendModeEnabled{
false};
183 bool m_auditLogVolumeHasBeenSet =
false;
184 bool m_autocommitPeriodHasBeenSet =
false;
185 bool m_privilegedDeleteHasBeenSet =
false;
186 bool m_retentionPeriodHasBeenSet =
false;
187 bool m_snaplockTypeHasBeenSet =
false;
188 bool m_volumeAppendModeEnabledHasBeenSet =
false;
bool GetAuditLogVolume() const
void SetAuditLogVolume(bool value)
bool AutocommitPeriodHasBeenSet() const
CreateSnaplockConfiguration & WithPrivilegedDelete(PrivilegedDelete value)
void SetRetentionPeriod(RetentionPeriodT &&value)
const AutocommitPeriod & GetAutocommitPeriod() const
AWS_FSX_API Aws::Utils::Json::JsonValue Jsonize() const
CreateSnaplockConfiguration & WithSnaplockType(SnaplockType value)
bool PrivilegedDeleteHasBeenSet() const
bool AuditLogVolumeHasBeenSet() const
bool SnaplockTypeHasBeenSet() const
AWS_FSX_API CreateSnaplockConfiguration()=default
CreateSnaplockConfiguration & WithRetentionPeriod(RetentionPeriodT &&value)
bool VolumeAppendModeEnabledHasBeenSet() const
void SetPrivilegedDelete(PrivilegedDelete value)
AWS_FSX_API CreateSnaplockConfiguration(Aws::Utils::Json::JsonView jsonValue)
bool RetentionPeriodHasBeenSet() const
CreateSnaplockConfiguration & WithAutocommitPeriod(AutocommitPeriodT &&value)
PrivilegedDelete GetPrivilegedDelete() const
AWS_FSX_API CreateSnaplockConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
const SnaplockRetentionPeriod & GetRetentionPeriod() const
void SetSnaplockType(SnaplockType value)
void SetVolumeAppendModeEnabled(bool value)
CreateSnaplockConfiguration & WithVolumeAppendModeEnabled(bool value)
CreateSnaplockConfiguration & WithAuditLogVolume(bool value)
bool GetVolumeAppendModeEnabled() const
void SetAutocommitPeriod(AutocommitPeriodT &&value)
SnaplockType GetSnaplockType() const
Aws::Utils::Json::JsonValue JsonValue