/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.fsx.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *

* The configuration updates for an Amazon FSx for OpenZFS file system. *

* * @see AWS API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class UpdateFileSystemOpenZFSConfiguration implements Serializable, Cloneable, StructuredPojo { private Integer automaticBackupRetentionDays; /** *

* A Boolean value indicating whether tags for the file system should be copied to backups. This value defaults to * false. If it's set to true, all tags for the file system are copied to all automatic * and user-initiated backups where the user doesn't specify tags. If this value is true and you * specify one or more tags, only the specified tags are copied to backups. If you specify one or more tags when * creating a user-initiated backup, no tags are copied from the file system, regardless of this value. *

*/ private Boolean copyTagsToBackups; /** *

* A Boolean value indicating whether tags for the volume should be copied to snapshots. This value defaults to * false. If it's set to true, all tags for the volume are copied to snapshots where the * user doesn't specify tags. If this value is true and you specify one or more tags, only the * specified tags are copied to snapshots. If you specify one or more tags when creating the snapshot, no tags are * copied from the volume, regardless of this value. *

*/ private Boolean copyTagsToVolumes; private String dailyAutomaticBackupStartTime; /** *

* The throughput of an Amazon FSx for OpenZFS file system, measured in megabytes per second
 (MB/s). Valid * values depend on the DeploymentType you choose, as follows: *

* */ private Integer throughputCapacity; private String weeklyMaintenanceStartTime; private DiskIopsConfiguration diskIopsConfiguration; /** * @param automaticBackupRetentionDays */ public void setAutomaticBackupRetentionDays(Integer automaticBackupRetentionDays) { this.automaticBackupRetentionDays = automaticBackupRetentionDays; } /** * @return */ public Integer getAutomaticBackupRetentionDays() { return this.automaticBackupRetentionDays; } /** * @param automaticBackupRetentionDays * @return Returns a reference to this object so that method calls can be chained together. */ public UpdateFileSystemOpenZFSConfiguration withAutomaticBackupRetentionDays(Integer automaticBackupRetentionDays) { setAutomaticBackupRetentionDays(automaticBackupRetentionDays); return this; } /** *

* A Boolean value indicating whether tags for the file system should be copied to backups. This value defaults to * false. If it's set to true, all tags for the file system are copied to all automatic * and user-initiated backups where the user doesn't specify tags. If this value is true and you * specify one or more tags, only the specified tags are copied to backups. If you specify one or more tags when * creating a user-initiated backup, no tags are copied from the file system, regardless of this value. *

* * @param copyTagsToBackups * A Boolean value indicating whether tags for the file system should be copied to backups. This value * defaults to false. If it's set to true, all tags for the file system are copied * to all automatic and user-initiated backups where the user doesn't specify tags. If this value is * true and you specify one or more tags, only the specified tags are copied to backups. If you * specify one or more tags when creating a user-initiated backup, no tags are copied from the file system, * regardless of this value. */ public void setCopyTagsToBackups(Boolean copyTagsToBackups) { this.copyTagsToBackups = copyTagsToBackups; } /** *

* A Boolean value indicating whether tags for the file system should be copied to backups. This value defaults to * false. If it's set to true, all tags for the file system are copied to all automatic * and user-initiated backups where the user doesn't specify tags. If this value is true and you * specify one or more tags, only the specified tags are copied to backups. If you specify one or more tags when * creating a user-initiated backup, no tags are copied from the file system, regardless of this value. *

* * @return A Boolean value indicating whether tags for the file system should be copied to backups. This value * defaults to false. If it's set to true, all tags for the file system are copied * to all automatic and user-initiated backups where the user doesn't specify tags. If this value is * true and you specify one or more tags, only the specified tags are copied to backups. If you * specify one or more tags when creating a user-initiated backup, no tags are copied from the file system, * regardless of this value. */ public Boolean getCopyTagsToBackups() { return this.copyTagsToBackups; } /** *

* A Boolean value indicating whether tags for the file system should be copied to backups. This value defaults to * false. If it's set to true, all tags for the file system are copied to all automatic * and user-initiated backups where the user doesn't specify tags. If this value is true and you * specify one or more tags, only the specified tags are copied to backups. If you specify one or more tags when * creating a user-initiated backup, no tags are copied from the file system, regardless of this value. *

* * @param copyTagsToBackups * A Boolean value indicating whether tags for the file system should be copied to backups. This value * defaults to false. If it's set to true, all tags for the file system are copied * to all automatic and user-initiated backups where the user doesn't specify tags. If this value is * true and you specify one or more tags, only the specified tags are copied to backups. If you * specify one or more tags when creating a user-initiated backup, no tags are copied from the file system, * regardless of this value. * @return Returns a reference to this object so that method calls can be chained together. */ public UpdateFileSystemOpenZFSConfiguration withCopyTagsToBackups(Boolean copyTagsToBackups) { setCopyTagsToBackups(copyTagsToBackups); return this; } /** *

* A Boolean value indicating whether tags for the file system should be copied to backups. This value defaults to * false. If it's set to true, all tags for the file system are copied to all automatic * and user-initiated backups where the user doesn't specify tags. If this value is true and you * specify one or more tags, only the specified tags are copied to backups. If you specify one or more tags when * creating a user-initiated backup, no tags are copied from the file system, regardless of this value. *

* * @return A Boolean value indicating whether tags for the file system should be copied to backups. This value * defaults to false. If it's set to true, all tags for the file system are copied * to all automatic and user-initiated backups where the user doesn't specify tags. If this value is * true and you specify one or more tags, only the specified tags are copied to backups. If you * specify one or more tags when creating a user-initiated backup, no tags are copied from the file system, * regardless of this value. */ public Boolean isCopyTagsToBackups() { return this.copyTagsToBackups; } /** *

* A Boolean value indicating whether tags for the volume should be copied to snapshots. This value defaults to * false. If it's set to true, all tags for the volume are copied to snapshots where the * user doesn't specify tags. If this value is true and you specify one or more tags, only the * specified tags are copied to snapshots. If you specify one or more tags when creating the snapshot, no tags are * copied from the volume, regardless of this value. *

* * @param copyTagsToVolumes * A Boolean value indicating whether tags for the volume should be copied to snapshots. This value defaults * to false. If it's set to true, all tags for the volume are copied to snapshots * where the user doesn't specify tags. If this value is true and you specify one or more tags, * only the specified tags are copied to snapshots. If you specify one or more tags when creating the * snapshot, no tags are copied from the volume, regardless of this value. */ public void setCopyTagsToVolumes(Boolean copyTagsToVolumes) { this.copyTagsToVolumes = copyTagsToVolumes; } /** *

* A Boolean value indicating whether tags for the volume should be copied to snapshots. This value defaults to * false. If it's set to true, all tags for the volume are copied to snapshots where the * user doesn't specify tags. If this value is true and you specify one or more tags, only the * specified tags are copied to snapshots. If you specify one or more tags when creating the snapshot, no tags are * copied from the volume, regardless of this value. *

* * @return A Boolean value indicating whether tags for the volume should be copied to snapshots. This value defaults * to false. If it's set to true, all tags for the volume are copied to snapshots * where the user doesn't specify tags. If this value is true and you specify one or more tags, * only the specified tags are copied to snapshots. If you specify one or more tags when creating the * snapshot, no tags are copied from the volume, regardless of this value. */ public Boolean getCopyTagsToVolumes() { return this.copyTagsToVolumes; } /** *

* A Boolean value indicating whether tags for the volume should be copied to snapshots. This value defaults to * false. If it's set to true, all tags for the volume are copied to snapshots where the * user doesn't specify tags. If this value is true and you specify one or more tags, only the * specified tags are copied to snapshots. If you specify one or more tags when creating the snapshot, no tags are * copied from the volume, regardless of this value. *

* * @param copyTagsToVolumes * A Boolean value indicating whether tags for the volume should be copied to snapshots. This value defaults * to false. If it's set to true, all tags for the volume are copied to snapshots * where the user doesn't specify tags. If this value is true and you specify one or more tags, * only the specified tags are copied to snapshots. If you specify one or more tags when creating the * snapshot, no tags are copied from the volume, regardless of this value. * @return Returns a reference to this object so that method calls can be chained together. */ public UpdateFileSystemOpenZFSConfiguration withCopyTagsToVolumes(Boolean copyTagsToVolumes) { setCopyTagsToVolumes(copyTagsToVolumes); return this; } /** *

* A Boolean value indicating whether tags for the volume should be copied to snapshots. This value defaults to * false. If it's set to true, all tags for the volume are copied to snapshots where the * user doesn't specify tags. If this value is true and you specify one or more tags, only the * specified tags are copied to snapshots. If you specify one or more tags when creating the snapshot, no tags are * copied from the volume, regardless of this value. *

* * @return A Boolean value indicating whether tags for the volume should be copied to snapshots. This value defaults * to false. If it's set to true, all tags for the volume are copied to snapshots * where the user doesn't specify tags. If this value is true and you specify one or more tags, * only the specified tags are copied to snapshots. If you specify one or more tags when creating the * snapshot, no tags are copied from the volume, regardless of this value. */ public Boolean isCopyTagsToVolumes() { return this.copyTagsToVolumes; } /** * @param dailyAutomaticBackupStartTime */ public void setDailyAutomaticBackupStartTime(String dailyAutomaticBackupStartTime) { this.dailyAutomaticBackupStartTime = dailyAutomaticBackupStartTime; } /** * @return */ public String getDailyAutomaticBackupStartTime() { return this.dailyAutomaticBackupStartTime; } /** * @param dailyAutomaticBackupStartTime * @return Returns a reference to this object so that method calls can be chained together. */ public UpdateFileSystemOpenZFSConfiguration withDailyAutomaticBackupStartTime(String dailyAutomaticBackupStartTime) { setDailyAutomaticBackupStartTime(dailyAutomaticBackupStartTime); return this; } /** *

* The throughput of an Amazon FSx for OpenZFS file system, measured in megabytes per second
 (MB/s). Valid * values depend on the DeploymentType you choose, as follows: *

* * * @param throughputCapacity * The throughput of an Amazon FSx for OpenZFS file system, measured in megabytes per second
 (MB/s). * Valid values depend on the DeploymentType you choose, as follows:

*