/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Specifies the SnapLock configuration for an FSx for ONTAP SnapLock volume.
* See Also:
AWS
* API Reference
Enables or disables the audit log volume for an FSx for ONTAP SnapLock
* volume. The default value is false
. If you set
* AuditLogVolume
to true
, the SnapLock volume is created
* as an audit log volume. The minimum retention period for an audit log volume is
* six months.
For more information, see * SnapLock audit log volumes.
*/ inline bool GetAuditLogVolume() const{ return m_auditLogVolume; } /** *Enables or disables the audit log volume for an FSx for ONTAP SnapLock
* volume. The default value is false
. If you set
* AuditLogVolume
to true
, the SnapLock volume is created
* as an audit log volume. The minimum retention period for an audit log volume is
* six months.
For more information, see * SnapLock audit log volumes.
*/ inline bool AuditLogVolumeHasBeenSet() const { return m_auditLogVolumeHasBeenSet; } /** *Enables or disables the audit log volume for an FSx for ONTAP SnapLock
* volume. The default value is false
. If you set
* AuditLogVolume
to true
, the SnapLock volume is created
* as an audit log volume. The minimum retention period for an audit log volume is
* six months.
For more information, see * SnapLock audit log volumes.
*/ inline void SetAuditLogVolume(bool value) { m_auditLogVolumeHasBeenSet = true; m_auditLogVolume = value; } /** *Enables or disables the audit log volume for an FSx for ONTAP SnapLock
* volume. The default value is false
. If you set
* AuditLogVolume
to true
, the SnapLock volume is created
* as an audit log volume. The minimum retention period for an audit log volume is
* six months.
For more information, see * SnapLock audit log volumes.
*/ inline SnaplockConfiguration& WithAuditLogVolume(bool value) { SetAuditLogVolume(value); return *this;} /** *The configuration object for setting the autocommit period of files in an FSx * for ONTAP SnapLock volume.
*/ inline const AutocommitPeriod& GetAutocommitPeriod() const{ return m_autocommitPeriod; } /** *The configuration object for setting the autocommit period of files in an FSx * for ONTAP SnapLock volume.
*/ inline bool AutocommitPeriodHasBeenSet() const { return m_autocommitPeriodHasBeenSet; } /** *The configuration object for setting the autocommit period of files in an FSx * for ONTAP SnapLock volume.
*/ inline void SetAutocommitPeriod(const AutocommitPeriod& value) { m_autocommitPeriodHasBeenSet = true; m_autocommitPeriod = value; } /** *The configuration object for setting the autocommit period of files in an FSx * for ONTAP SnapLock volume.
*/ inline void SetAutocommitPeriod(AutocommitPeriod&& value) { m_autocommitPeriodHasBeenSet = true; m_autocommitPeriod = std::move(value); } /** *The configuration object for setting the autocommit period of files in an FSx * for ONTAP SnapLock volume.
*/ inline SnaplockConfiguration& WithAutocommitPeriod(const AutocommitPeriod& value) { SetAutocommitPeriod(value); return *this;} /** *The configuration object for setting the autocommit period of files in an FSx * for ONTAP SnapLock volume.
*/ inline SnaplockConfiguration& WithAutocommitPeriod(AutocommitPeriod&& value) { SetAutocommitPeriod(std::move(value)); return *this;} /** *Enables, disables, or permanently disables privileged delete on an FSx for
* ONTAP SnapLock Enterprise volume. Enabling privileged delete allows SnapLock
* administrators to delete write once, read many (WORM) files even if they have
* active retention periods. PERMANENTLY_DISABLED
is a terminal state.
* If privileged delete is permanently disabled on a SnapLock volume, you can't
* re-enable it. The default value is DISABLED
.
For more * information, see Privileged * delete.
*/ inline const PrivilegedDelete& GetPrivilegedDelete() const{ return m_privilegedDelete; } /** *Enables, disables, or permanently disables privileged delete on an FSx for
* ONTAP SnapLock Enterprise volume. Enabling privileged delete allows SnapLock
* administrators to delete write once, read many (WORM) files even if they have
* active retention periods. PERMANENTLY_DISABLED
is a terminal state.
* If privileged delete is permanently disabled on a SnapLock volume, you can't
* re-enable it. The default value is DISABLED
.
For more * information, see Privileged * delete.
*/ inline bool PrivilegedDeleteHasBeenSet() const { return m_privilegedDeleteHasBeenSet; } /** *Enables, disables, or permanently disables privileged delete on an FSx for
* ONTAP SnapLock Enterprise volume. Enabling privileged delete allows SnapLock
* administrators to delete write once, read many (WORM) files even if they have
* active retention periods. PERMANENTLY_DISABLED
is a terminal state.
* If privileged delete is permanently disabled on a SnapLock volume, you can't
* re-enable it. The default value is DISABLED
.
For more * information, see Privileged * delete.
*/ inline void SetPrivilegedDelete(const PrivilegedDelete& value) { m_privilegedDeleteHasBeenSet = true; m_privilegedDelete = value; } /** *Enables, disables, or permanently disables privileged delete on an FSx for
* ONTAP SnapLock Enterprise volume. Enabling privileged delete allows SnapLock
* administrators to delete write once, read many (WORM) files even if they have
* active retention periods. PERMANENTLY_DISABLED
is a terminal state.
* If privileged delete is permanently disabled on a SnapLock volume, you can't
* re-enable it. The default value is DISABLED
.
For more * information, see Privileged * delete.
*/ inline void SetPrivilegedDelete(PrivilegedDelete&& value) { m_privilegedDeleteHasBeenSet = true; m_privilegedDelete = std::move(value); } /** *Enables, disables, or permanently disables privileged delete on an FSx for
* ONTAP SnapLock Enterprise volume. Enabling privileged delete allows SnapLock
* administrators to delete write once, read many (WORM) files even if they have
* active retention periods. PERMANENTLY_DISABLED
is a terminal state.
* If privileged delete is permanently disabled on a SnapLock volume, you can't
* re-enable it. The default value is DISABLED
.
For more * information, see Privileged * delete.
*/ inline SnaplockConfiguration& WithPrivilegedDelete(const PrivilegedDelete& value) { SetPrivilegedDelete(value); return *this;} /** *Enables, disables, or permanently disables privileged delete on an FSx for
* ONTAP SnapLock Enterprise volume. Enabling privileged delete allows SnapLock
* administrators to delete write once, read many (WORM) files even if they have
* active retention periods. PERMANENTLY_DISABLED
is a terminal state.
* If privileged delete is permanently disabled on a SnapLock volume, you can't
* re-enable it. The default value is DISABLED
.
For more * information, see Privileged * delete.
*/ inline SnaplockConfiguration& WithPrivilegedDelete(PrivilegedDelete&& value) { SetPrivilegedDelete(std::move(value)); return *this;} /** *Specifies the retention period of an FSx for ONTAP SnapLock volume.
*/ inline const SnaplockRetentionPeriod& GetRetentionPeriod() const{ return m_retentionPeriod; } /** *Specifies the retention period of an FSx for ONTAP SnapLock volume.
*/ inline bool RetentionPeriodHasBeenSet() const { return m_retentionPeriodHasBeenSet; } /** *Specifies the retention period of an FSx for ONTAP SnapLock volume.
*/ inline void SetRetentionPeriod(const SnaplockRetentionPeriod& value) { m_retentionPeriodHasBeenSet = true; m_retentionPeriod = value; } /** *Specifies the retention period of an FSx for ONTAP SnapLock volume.
*/ inline void SetRetentionPeriod(SnaplockRetentionPeriod&& value) { m_retentionPeriodHasBeenSet = true; m_retentionPeriod = std::move(value); } /** *Specifies the retention period of an FSx for ONTAP SnapLock volume.
*/ inline SnaplockConfiguration& WithRetentionPeriod(const SnaplockRetentionPeriod& value) { SetRetentionPeriod(value); return *this;} /** *Specifies the retention period of an FSx for ONTAP SnapLock volume.
*/ inline SnaplockConfiguration& WithRetentionPeriod(SnaplockRetentionPeriod&& value) { SetRetentionPeriod(std::move(value)); return *this;} /** *Specifies the retention mode of an FSx for ONTAP SnapLock volume. After it is * set, it can't be changed. You can choose one of the following retention modes: *
COMPLIANCE
: Files transitioned to write once,
* read many (WORM) on a Compliance volume can't be deleted until their retention
* periods expire. This retention mode is used to address government or
* industry-specific mandates or to protect against ransomware attacks. For more
* information, see SnapLock
* Compliance.
ENTERPRISE
: Files transitioned
* to WORM on an Enterprise volume can be deleted by authorized users before their
* retention periods expire using privileged delete. This retention mode is used to
* advance an organization's data integrity and internal compliance or to test
* retention settings before using SnapLock Compliance. For more information, see
* SnapLock
* Enterprise.
Specifies the retention mode of an FSx for ONTAP SnapLock volume. After it is * set, it can't be changed. You can choose one of the following retention modes: *
COMPLIANCE
: Files transitioned to write once,
* read many (WORM) on a Compliance volume can't be deleted until their retention
* periods expire. This retention mode is used to address government or
* industry-specific mandates or to protect against ransomware attacks. For more
* information, see SnapLock
* Compliance.
ENTERPRISE
: Files transitioned
* to WORM on an Enterprise volume can be deleted by authorized users before their
* retention periods expire using privileged delete. This retention mode is used to
* advance an organization's data integrity and internal compliance or to test
* retention settings before using SnapLock Compliance. For more information, see
* SnapLock
* Enterprise.
Specifies the retention mode of an FSx for ONTAP SnapLock volume. After it is * set, it can't be changed. You can choose one of the following retention modes: *
COMPLIANCE
: Files transitioned to write once,
* read many (WORM) on a Compliance volume can't be deleted until their retention
* periods expire. This retention mode is used to address government or
* industry-specific mandates or to protect against ransomware attacks. For more
* information, see SnapLock
* Compliance.
ENTERPRISE
: Files transitioned
* to WORM on an Enterprise volume can be deleted by authorized users before their
* retention periods expire using privileged delete. This retention mode is used to
* advance an organization's data integrity and internal compliance or to test
* retention settings before using SnapLock Compliance. For more information, see
* SnapLock
* Enterprise.
Specifies the retention mode of an FSx for ONTAP SnapLock volume. After it is * set, it can't be changed. You can choose one of the following retention modes: *
COMPLIANCE
: Files transitioned to write once,
* read many (WORM) on a Compliance volume can't be deleted until their retention
* periods expire. This retention mode is used to address government or
* industry-specific mandates or to protect against ransomware attacks. For more
* information, see SnapLock
* Compliance.
ENTERPRISE
: Files transitioned
* to WORM on an Enterprise volume can be deleted by authorized users before their
* retention periods expire using privileged delete. This retention mode is used to
* advance an organization's data integrity and internal compliance or to test
* retention settings before using SnapLock Compliance. For more information, see
* SnapLock
* Enterprise.
Specifies the retention mode of an FSx for ONTAP SnapLock volume. After it is * set, it can't be changed. You can choose one of the following retention modes: *
COMPLIANCE
: Files transitioned to write once,
* read many (WORM) on a Compliance volume can't be deleted until their retention
* periods expire. This retention mode is used to address government or
* industry-specific mandates or to protect against ransomware attacks. For more
* information, see SnapLock
* Compliance.
ENTERPRISE
: Files transitioned
* to WORM on an Enterprise volume can be deleted by authorized users before their
* retention periods expire using privileged delete. This retention mode is used to
* advance an organization's data integrity and internal compliance or to test
* retention settings before using SnapLock Compliance. For more information, see
* SnapLock
* Enterprise.
Specifies the retention mode of an FSx for ONTAP SnapLock volume. After it is * set, it can't be changed. You can choose one of the following retention modes: *
COMPLIANCE
: Files transitioned to write once,
* read many (WORM) on a Compliance volume can't be deleted until their retention
* periods expire. This retention mode is used to address government or
* industry-specific mandates or to protect against ransomware attacks. For more
* information, see SnapLock
* Compliance.
ENTERPRISE
: Files transitioned
* to WORM on an Enterprise volume can be deleted by authorized users before their
* retention periods expire using privileged delete. This retention mode is used to
* advance an organization's data integrity and internal compliance or to test
* retention settings before using SnapLock Compliance. For more information, see
* SnapLock
* Enterprise.
Enables or disables volume-append mode on an FSx for ONTAP SnapLock volume.
* Volume-append mode allows you to create WORM-appendable files and write data to
* them incrementally. The default value is false
.
For more * information, see Volume-append * mode.
*/ inline bool GetVolumeAppendModeEnabled() const{ return m_volumeAppendModeEnabled; } /** *Enables or disables volume-append mode on an FSx for ONTAP SnapLock volume.
* Volume-append mode allows you to create WORM-appendable files and write data to
* them incrementally. The default value is false
.
For more * information, see Volume-append * mode.
*/ inline bool VolumeAppendModeEnabledHasBeenSet() const { return m_volumeAppendModeEnabledHasBeenSet; } /** *Enables or disables volume-append mode on an FSx for ONTAP SnapLock volume.
* Volume-append mode allows you to create WORM-appendable files and write data to
* them incrementally. The default value is false
.
For more * information, see Volume-append * mode.
*/ inline void SetVolumeAppendModeEnabled(bool value) { m_volumeAppendModeEnabledHasBeenSet = true; m_volumeAppendModeEnabled = value; } /** *Enables or disables volume-append mode on an FSx for ONTAP SnapLock volume.
* Volume-append mode allows you to create WORM-appendable files and write data to
* them incrementally. The default value is false
.
For more * information, see Volume-append * mode.
*/ inline SnaplockConfiguration& WithVolumeAppendModeEnabled(bool value) { SetVolumeAppendModeEnabled(value); return *this;} private: bool m_auditLogVolume; bool m_auditLogVolumeHasBeenSet = false; AutocommitPeriod m_autocommitPeriod; bool m_autocommitPeriodHasBeenSet = false; PrivilegedDelete m_privilegedDelete; bool m_privilegedDeleteHasBeenSet = false; SnaplockRetentionPeriod m_retentionPeriod; bool m_retentionPeriodHasBeenSet = false; SnaplockType m_snaplockType; bool m_snaplockTypeHasBeenSet = false; bool m_volumeAppendModeEnabled; bool m_volumeAppendModeEnabledHasBeenSet = false; }; } // namespace Model } // namespace FSx } // namespace Aws