/* * 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 for this Microsoft Windows file system. *
* * @see AWS * API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class WindowsFileSystemConfiguration implements Serializable, Cloneable, StructuredPojo { /** ** The ID for an existing Amazon Web Services Managed Microsoft Active Directory instance that the file system is * joined to. *
*/ private String activeDirectoryId; private SelfManagedActiveDirectoryAttributes selfManagedActiveDirectoryConfiguration; /** ** Specifies the file system deployment type, valid values are the following: *
*
* MULTI_AZ_1
- Specifies a high availability file system that is configured for Multi-AZ redundancy to
* tolerate temporary Availability Zone (AZ) unavailability, and supports SSD and HDD storage.
*
* SINGLE_AZ_1
- (Default) Specifies a file system that is configured for single AZ redundancy, only
* supports SSD storage.
*
* SINGLE_AZ_2
- Latest generation Single AZ file system. Specifies a file system that is configured
* for single AZ redundancy and supports SSD and HDD storage.
*
* For more information, see Single-AZ and Multi-AZ * File Systems. *
*/ private String deploymentType; /** *
* For MULTI_AZ_1
deployment types, use this endpoint when performing administrative tasks on the file
* system using Amazon FSx Remote PowerShell.
*
* For SINGLE_AZ_1
and SINGLE_AZ_2
deployment types, this is the DNS name of the file
* system.
*
* This endpoint is temporarily unavailable when the file system is undergoing maintenance. *
*/ private String remoteAdministrationEndpoint; /** *
* For MULTI_AZ_1
deployment types, it specifies the ID of the subnet where the preferred file server
* is located. Must be one of the two subnet IDs specified in SubnetIds
property. Amazon FSx serves
* traffic from this subnet except in the event of a failover to the secondary file server.
*
* For SINGLE_AZ_1
and SINGLE_AZ_2
deployment types, this value is the same as that for
* SubnetIDs
. For more information, see Availability and durability: Single-AZ and Multi-AZ file systems.
*
* For MULTI_AZ_1
deployment types, the IP address of the primary, or preferred, file server.
*
* Use this IP address when mounting the file system on Linux SMB clients or Windows SMB clients that are not joined * to a Microsoft Active Directory. Applicable for all Windows file system deployment types. This IP address is * temporarily unavailable when the file system is undergoing maintenance. For Linux and Windows SMB clients that * are joined to an Active Directory, use the file system's DNSName instead. For more information on mapping and * mounting file shares, see Accessing File Shares. *
*/ private String preferredFileServerIp; /** ** The throughput of the Amazon FSx file system, measured in megabytes per second. *
*/ private Integer throughputCapacity; /** ** The list of maintenance operations in progress for this file system. *
*/ private java.util.List* The preferred start time to perform weekly maintenance, formatted d:HH:MM in the UTC time zone. d is the weekday * number, from 1 through 7, beginning with Monday and ending with Sunday. *
*/ private String weeklyMaintenanceStartTime; /** ** The preferred time to take daily automatic backups, in the UTC time zone. *
*/ private String dailyAutomaticBackupStartTime; /** ** The number of days to retain automatic backups. Setting this to 0 disables automatic backups. You can retain * automatic backups for a maximum of 90 days. *
*/ private Integer automaticBackupRetentionDays; /** ** A boolean flag indicating whether tags on the file system should be copied to backups. This value defaults to * false. If it's set to true, all tags on the file system are copied to all automatic backups and any * user-initiated backups where the user doesn't specify any 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; private java.util.List* The configuration that Amazon FSx for Windows File Server uses to audit and log user accesses of files, folders, * and file shares on the Amazon FSx for Windows File Server file system. *
*/ private WindowsAuditLogConfiguration auditLogConfiguration; /** ** The ID for an existing Amazon Web Services Managed Microsoft Active Directory instance that the file system is * joined to. *
* * @param activeDirectoryId * The ID for an existing Amazon Web Services Managed Microsoft Active Directory instance that the file * system is joined to. */ public void setActiveDirectoryId(String activeDirectoryId) { this.activeDirectoryId = activeDirectoryId; } /** ** The ID for an existing Amazon Web Services Managed Microsoft Active Directory instance that the file system is * joined to. *
* * @return The ID for an existing Amazon Web Services Managed Microsoft Active Directory instance that the file * system is joined to. */ public String getActiveDirectoryId() { return this.activeDirectoryId; } /** ** The ID for an existing Amazon Web Services Managed Microsoft Active Directory instance that the file system is * joined to. *
* * @param activeDirectoryId * The ID for an existing Amazon Web Services Managed Microsoft Active Directory instance that the file * system is joined to. * @return Returns a reference to this object so that method calls can be chained together. */ public WindowsFileSystemConfiguration withActiveDirectoryId(String activeDirectoryId) { setActiveDirectoryId(activeDirectoryId); return this; } /** * @param selfManagedActiveDirectoryConfiguration */ public void setSelfManagedActiveDirectoryConfiguration(SelfManagedActiveDirectoryAttributes selfManagedActiveDirectoryConfiguration) { this.selfManagedActiveDirectoryConfiguration = selfManagedActiveDirectoryConfiguration; } /** * @return */ public SelfManagedActiveDirectoryAttributes getSelfManagedActiveDirectoryConfiguration() { return this.selfManagedActiveDirectoryConfiguration; } /** * @param selfManagedActiveDirectoryConfiguration * @return Returns a reference to this object so that method calls can be chained together. */ public WindowsFileSystemConfiguration withSelfManagedActiveDirectoryConfiguration( SelfManagedActiveDirectoryAttributes selfManagedActiveDirectoryConfiguration) { setSelfManagedActiveDirectoryConfiguration(selfManagedActiveDirectoryConfiguration); return this; } /** ** Specifies the file system deployment type, valid values are the following: *
*
* MULTI_AZ_1
- Specifies a high availability file system that is configured for Multi-AZ redundancy to
* tolerate temporary Availability Zone (AZ) unavailability, and supports SSD and HDD storage.
*
* SINGLE_AZ_1
- (Default) Specifies a file system that is configured for single AZ redundancy, only
* supports SSD storage.
*
* SINGLE_AZ_2
- Latest generation Single AZ file system. Specifies a file system that is configured
* for single AZ redundancy and supports SSD and HDD storage.
*
* For more information, see Single-AZ and Multi-AZ * File Systems. *
* * @param deploymentType * Specifies the file system deployment type, valid values are the following: *
* MULTI_AZ_1
- Specifies a high availability file system that is configured for Multi-AZ
* redundancy to tolerate temporary Availability Zone (AZ) unavailability, and supports SSD and HDD storage.
*
* SINGLE_AZ_1
- (Default) Specifies a file system that is configured for single AZ redundancy,
* only supports SSD storage.
*
* SINGLE_AZ_2
- Latest generation Single AZ file system. Specifies a file system that is
* configured for single AZ redundancy and supports SSD and HDD storage.
*
* For more information, see Single-AZ and * Multi-AZ File Systems. * @see WindowsDeploymentType */ public void setDeploymentType(String deploymentType) { this.deploymentType = deploymentType; } /** *
* Specifies the file system deployment type, valid values are the following: *
*
* MULTI_AZ_1
- Specifies a high availability file system that is configured for Multi-AZ redundancy to
* tolerate temporary Availability Zone (AZ) unavailability, and supports SSD and HDD storage.
*
* SINGLE_AZ_1
- (Default) Specifies a file system that is configured for single AZ redundancy, only
* supports SSD storage.
*
* SINGLE_AZ_2
- Latest generation Single AZ file system. Specifies a file system that is configured
* for single AZ redundancy and supports SSD and HDD storage.
*
* For more information, see Single-AZ and Multi-AZ * File Systems. *
* * @return Specifies the file system deployment type, valid values are the following: *
* MULTI_AZ_1
- Specifies a high availability file system that is configured for Multi-AZ
* redundancy to tolerate temporary Availability Zone (AZ) unavailability, and supports SSD and HDD storage.
*
* SINGLE_AZ_1
- (Default) Specifies a file system that is configured for single AZ redundancy,
* only supports SSD storage.
*
* SINGLE_AZ_2
- Latest generation Single AZ file system. Specifies a file system that is
* configured for single AZ redundancy and supports SSD and HDD storage.
*
* For more information, see Single-AZ and * Multi-AZ File Systems. * @see WindowsDeploymentType */ public String getDeploymentType() { return this.deploymentType; } /** *
* Specifies the file system deployment type, valid values are the following: *
*
* MULTI_AZ_1
- Specifies a high availability file system that is configured for Multi-AZ redundancy to
* tolerate temporary Availability Zone (AZ) unavailability, and supports SSD and HDD storage.
*
* SINGLE_AZ_1
- (Default) Specifies a file system that is configured for single AZ redundancy, only
* supports SSD storage.
*
* SINGLE_AZ_2
- Latest generation Single AZ file system. Specifies a file system that is configured
* for single AZ redundancy and supports SSD and HDD storage.
*
* For more information, see Single-AZ and Multi-AZ * File Systems. *
* * @param deploymentType * Specifies the file system deployment type, valid values are the following: *
* MULTI_AZ_1
- Specifies a high availability file system that is configured for Multi-AZ
* redundancy to tolerate temporary Availability Zone (AZ) unavailability, and supports SSD and HDD storage.
*
* SINGLE_AZ_1
- (Default) Specifies a file system that is configured for single AZ redundancy,
* only supports SSD storage.
*
* SINGLE_AZ_2
- Latest generation Single AZ file system. Specifies a file system that is
* configured for single AZ redundancy and supports SSD and HDD storage.
*
* For more information, see Single-AZ and * Multi-AZ File Systems. * @return Returns a reference to this object so that method calls can be chained together. * @see WindowsDeploymentType */ public WindowsFileSystemConfiguration withDeploymentType(String deploymentType) { setDeploymentType(deploymentType); return this; } /** *
* Specifies the file system deployment type, valid values are the following: *
*
* MULTI_AZ_1
- Specifies a high availability file system that is configured for Multi-AZ redundancy to
* tolerate temporary Availability Zone (AZ) unavailability, and supports SSD and HDD storage.
*
* SINGLE_AZ_1
- (Default) Specifies a file system that is configured for single AZ redundancy, only
* supports SSD storage.
*
* SINGLE_AZ_2
- Latest generation Single AZ file system. Specifies a file system that is configured
* for single AZ redundancy and supports SSD and HDD storage.
*
* For more information, see Single-AZ and Multi-AZ * File Systems. *
* * @param deploymentType * Specifies the file system deployment type, valid values are the following: *
* MULTI_AZ_1
- Specifies a high availability file system that is configured for Multi-AZ
* redundancy to tolerate temporary Availability Zone (AZ) unavailability, and supports SSD and HDD storage.
*
* SINGLE_AZ_1
- (Default) Specifies a file system that is configured for single AZ redundancy,
* only supports SSD storage.
*
* SINGLE_AZ_2
- Latest generation Single AZ file system. Specifies a file system that is
* configured for single AZ redundancy and supports SSD and HDD storage.
*
* For more information, see Single-AZ and * Multi-AZ File Systems. * @return Returns a reference to this object so that method calls can be chained together. * @see WindowsDeploymentType */ public WindowsFileSystemConfiguration withDeploymentType(WindowsDeploymentType deploymentType) { this.deploymentType = deploymentType.toString(); return this; } /** *
* For MULTI_AZ_1
deployment types, use this endpoint when performing administrative tasks on the file
* system using Amazon FSx Remote PowerShell.
*
* For SINGLE_AZ_1
and SINGLE_AZ_2
deployment types, this is the DNS name of the file
* system.
*
* This endpoint is temporarily unavailable when the file system is undergoing maintenance. *
* * @param remoteAdministrationEndpoint * ForMULTI_AZ_1
deployment types, use this endpoint when performing administrative tasks on
* the file system using Amazon FSx Remote PowerShell.
*
* For SINGLE_AZ_1
and SINGLE_AZ_2
deployment types, this is the DNS name of the
* file system.
*
* This endpoint is temporarily unavailable when the file system is undergoing maintenance. */ public void setRemoteAdministrationEndpoint(String remoteAdministrationEndpoint) { this.remoteAdministrationEndpoint = remoteAdministrationEndpoint; } /** *
* For MULTI_AZ_1
deployment types, use this endpoint when performing administrative tasks on the file
* system using Amazon FSx Remote PowerShell.
*
* For SINGLE_AZ_1
and SINGLE_AZ_2
deployment types, this is the DNS name of the file
* system.
*
* This endpoint is temporarily unavailable when the file system is undergoing maintenance. *
* * @return ForMULTI_AZ_1
deployment types, use this endpoint when performing administrative tasks on
* the file system using Amazon FSx Remote PowerShell.
*
* For SINGLE_AZ_1
and SINGLE_AZ_2
deployment types, this is the DNS name of the
* file system.
*
* This endpoint is temporarily unavailable when the file system is undergoing maintenance. */ public String getRemoteAdministrationEndpoint() { return this.remoteAdministrationEndpoint; } /** *
* For MULTI_AZ_1
deployment types, use this endpoint when performing administrative tasks on the file
* system using Amazon FSx Remote PowerShell.
*
* For SINGLE_AZ_1
and SINGLE_AZ_2
deployment types, this is the DNS name of the file
* system.
*
* This endpoint is temporarily unavailable when the file system is undergoing maintenance. *
* * @param remoteAdministrationEndpoint * ForMULTI_AZ_1
deployment types, use this endpoint when performing administrative tasks on
* the file system using Amazon FSx Remote PowerShell.
*
* For SINGLE_AZ_1
and SINGLE_AZ_2
deployment types, this is the DNS name of the
* file system.
*
* This endpoint is temporarily unavailable when the file system is undergoing maintenance. * @return Returns a reference to this object so that method calls can be chained together. */ public WindowsFileSystemConfiguration withRemoteAdministrationEndpoint(String remoteAdministrationEndpoint) { setRemoteAdministrationEndpoint(remoteAdministrationEndpoint); return this; } /** *
* For MULTI_AZ_1
deployment types, it specifies the ID of the subnet where the preferred file server
* is located. Must be one of the two subnet IDs specified in SubnetIds
property. Amazon FSx serves
* traffic from this subnet except in the event of a failover to the secondary file server.
*
* For SINGLE_AZ_1
and SINGLE_AZ_2
deployment types, this value is the same as that for
* SubnetIDs
. For more information, see Availability and durability: Single-AZ and Multi-AZ file systems.
*
MULTI_AZ_1
deployment types, it specifies the ID of the subnet where the preferred file
* server is located. Must be one of the two subnet IDs specified in SubnetIds
property. Amazon
* FSx serves traffic from this subnet except in the event of a failover to the secondary file server.
*
* For SINGLE_AZ_1
and SINGLE_AZ_2
deployment types, this value is the same as that
* for SubnetIDs
. For more information, see Availability and durability: Single-AZ and Multi-AZ file systems.
*/
public void setPreferredSubnetId(String preferredSubnetId) {
this.preferredSubnetId = preferredSubnetId;
}
/**
*
* For MULTI_AZ_1
deployment types, it specifies the ID of the subnet where the preferred file server
* is located. Must be one of the two subnet IDs specified in SubnetIds
property. Amazon FSx serves
* traffic from this subnet except in the event of a failover to the secondary file server.
*
* For SINGLE_AZ_1
and SINGLE_AZ_2
deployment types, this value is the same as that for
* SubnetIDs
. For more information, see Availability and durability: Single-AZ and Multi-AZ file systems.
*
MULTI_AZ_1
deployment types, it specifies the ID of the subnet where the preferred file
* server is located. Must be one of the two subnet IDs specified in SubnetIds
property. Amazon
* FSx serves traffic from this subnet except in the event of a failover to the secondary file server.
*
* For SINGLE_AZ_1
and SINGLE_AZ_2
deployment types, this value is the same as
* that for SubnetIDs
. For more information, see Availability and durability: Single-AZ and Multi-AZ file systems.
*/
public String getPreferredSubnetId() {
return this.preferredSubnetId;
}
/**
*
* For MULTI_AZ_1
deployment types, it specifies the ID of the subnet where the preferred file server
* is located. Must be one of the two subnet IDs specified in SubnetIds
property. Amazon FSx serves
* traffic from this subnet except in the event of a failover to the secondary file server.
*
* For SINGLE_AZ_1
and SINGLE_AZ_2
deployment types, this value is the same as that for
* SubnetIDs
. For more information, see Availability and durability: Single-AZ and Multi-AZ file systems.
*
MULTI_AZ_1
deployment types, it specifies the ID of the subnet where the preferred file
* server is located. Must be one of the two subnet IDs specified in SubnetIds
property. Amazon
* FSx serves traffic from this subnet except in the event of a failover to the secondary file server.
*
* For SINGLE_AZ_1
and SINGLE_AZ_2
deployment types, this value is the same as that
* for SubnetIDs
. For more information, see Availability and durability: Single-AZ and Multi-AZ file systems.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public WindowsFileSystemConfiguration withPreferredSubnetId(String preferredSubnetId) {
setPreferredSubnetId(preferredSubnetId);
return this;
}
/**
*
* For MULTI_AZ_1
deployment types, the IP address of the primary, or preferred, file server.
*
* Use this IP address when mounting the file system on Linux SMB clients or Windows SMB clients that are not joined * to a Microsoft Active Directory. Applicable for all Windows file system deployment types. This IP address is * temporarily unavailable when the file system is undergoing maintenance. For Linux and Windows SMB clients that * are joined to an Active Directory, use the file system's DNSName instead. For more information on mapping and * mounting file shares, see Accessing File Shares. *
* * @param preferredFileServerIp * ForMULTI_AZ_1
deployment types, the IP address of the primary, or preferred, file
* server.
* * Use this IP address when mounting the file system on Linux SMB clients or Windows SMB clients that are not * joined to a Microsoft Active Directory. Applicable for all Windows file system deployment types. This IP * address is temporarily unavailable when the file system is undergoing maintenance. For Linux and Windows * SMB clients that are joined to an Active Directory, use the file system's DNSName instead. For more * information on mapping and mounting file shares, see Accessing File * Shares. */ public void setPreferredFileServerIp(String preferredFileServerIp) { this.preferredFileServerIp = preferredFileServerIp; } /** *
* For MULTI_AZ_1
deployment types, the IP address of the primary, or preferred, file server.
*
* Use this IP address when mounting the file system on Linux SMB clients or Windows SMB clients that are not joined * to a Microsoft Active Directory. Applicable for all Windows file system deployment types. This IP address is * temporarily unavailable when the file system is undergoing maintenance. For Linux and Windows SMB clients that * are joined to an Active Directory, use the file system's DNSName instead. For more information on mapping and * mounting file shares, see Accessing File Shares. *
* * @return ForMULTI_AZ_1
deployment types, the IP address of the primary, or preferred, file
* server.
* * Use this IP address when mounting the file system on Linux SMB clients or Windows SMB clients that are * not joined to a Microsoft Active Directory. Applicable for all Windows file system deployment types. This * IP address is temporarily unavailable when the file system is undergoing maintenance. For Linux and * Windows SMB clients that are joined to an Active Directory, use the file system's DNSName instead. For * more information on mapping and mounting file shares, see Accessing File * Shares. */ public String getPreferredFileServerIp() { return this.preferredFileServerIp; } /** *
* For MULTI_AZ_1
deployment types, the IP address of the primary, or preferred, file server.
*
* Use this IP address when mounting the file system on Linux SMB clients or Windows SMB clients that are not joined * to a Microsoft Active Directory. Applicable for all Windows file system deployment types. This IP address is * temporarily unavailable when the file system is undergoing maintenance. For Linux and Windows SMB clients that * are joined to an Active Directory, use the file system's DNSName instead. For more information on mapping and * mounting file shares, see Accessing File Shares. *
* * @param preferredFileServerIp * ForMULTI_AZ_1
deployment types, the IP address of the primary, or preferred, file
* server.
* * Use this IP address when mounting the file system on Linux SMB clients or Windows SMB clients that are not * joined to a Microsoft Active Directory. Applicable for all Windows file system deployment types. This IP * address is temporarily unavailable when the file system is undergoing maintenance. For Linux and Windows * SMB clients that are joined to an Active Directory, use the file system's DNSName instead. For more * information on mapping and mounting file shares, see Accessing File * Shares. * @return Returns a reference to this object so that method calls can be chained together. */ public WindowsFileSystemConfiguration withPreferredFileServerIp(String preferredFileServerIp) { setPreferredFileServerIp(preferredFileServerIp); return this; } /** *
* The throughput of the Amazon FSx file system, measured in megabytes per second. *
* * @param throughputCapacity * The throughput of the Amazon FSx file system, measured in megabytes per second. */ public void setThroughputCapacity(Integer throughputCapacity) { this.throughputCapacity = throughputCapacity; } /** ** The throughput of the Amazon FSx file system, measured in megabytes per second. *
* * @return The throughput of the Amazon FSx file system, measured in megabytes per second. */ public Integer getThroughputCapacity() { return this.throughputCapacity; } /** ** The throughput of the Amazon FSx file system, measured in megabytes per second. *
* * @param throughputCapacity * The throughput of the Amazon FSx file system, measured in megabytes per second. * @return Returns a reference to this object so that method calls can be chained together. */ public WindowsFileSystemConfiguration withThroughputCapacity(Integer throughputCapacity) { setThroughputCapacity(throughputCapacity); return this; } /** ** The list of maintenance operations in progress for this file system. *
* * @return The list of maintenance operations in progress for this file system. * @see FileSystemMaintenanceOperation */ public java.util.List* The list of maintenance operations in progress for this file system. *
* * @param maintenanceOperationsInProgress * The list of maintenance operations in progress for this file system. * @see FileSystemMaintenanceOperation */ public void setMaintenanceOperationsInProgress(java.util.Collection* The list of maintenance operations in progress for this file system. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setMaintenanceOperationsInProgress(java.util.Collection)} or * {@link #withMaintenanceOperationsInProgress(java.util.Collection)} if you want to override the existing values. *
* * @param maintenanceOperationsInProgress * The list of maintenance operations in progress for this file system. * @return Returns a reference to this object so that method calls can be chained together. * @see FileSystemMaintenanceOperation */ public WindowsFileSystemConfiguration withMaintenanceOperationsInProgress(String... maintenanceOperationsInProgress) { if (this.maintenanceOperationsInProgress == null) { setMaintenanceOperationsInProgress(new java.util.ArrayList* The list of maintenance operations in progress for this file system. *
* * @param maintenanceOperationsInProgress * The list of maintenance operations in progress for this file system. * @return Returns a reference to this object so that method calls can be chained together. * @see FileSystemMaintenanceOperation */ public WindowsFileSystemConfiguration withMaintenanceOperationsInProgress(java.util.Collection* The list of maintenance operations in progress for this file system. *
* * @param maintenanceOperationsInProgress * The list of maintenance operations in progress for this file system. * @return Returns a reference to this object so that method calls can be chained together. * @see FileSystemMaintenanceOperation */ public WindowsFileSystemConfiguration withMaintenanceOperationsInProgress(FileSystemMaintenanceOperation... maintenanceOperationsInProgress) { java.util.ArrayList* The preferred start time to perform weekly maintenance, formatted d:HH:MM in the UTC time zone. d is the weekday * number, from 1 through 7, beginning with Monday and ending with Sunday. *
* * @param weeklyMaintenanceStartTime * The preferred start time to perform weekly maintenance, formatted d:HH:MM in the UTC time zone. d is the * weekday number, from 1 through 7, beginning with Monday and ending with Sunday. */ public void setWeeklyMaintenanceStartTime(String weeklyMaintenanceStartTime) { this.weeklyMaintenanceStartTime = weeklyMaintenanceStartTime; } /** ** The preferred start time to perform weekly maintenance, formatted d:HH:MM in the UTC time zone. d is the weekday * number, from 1 through 7, beginning with Monday and ending with Sunday. *
* * @return The preferred start time to perform weekly maintenance, formatted d:HH:MM in the UTC time zone. d is the * weekday number, from 1 through 7, beginning with Monday and ending with Sunday. */ public String getWeeklyMaintenanceStartTime() { return this.weeklyMaintenanceStartTime; } /** ** The preferred start time to perform weekly maintenance, formatted d:HH:MM in the UTC time zone. d is the weekday * number, from 1 through 7, beginning with Monday and ending with Sunday. *
* * @param weeklyMaintenanceStartTime * The preferred start time to perform weekly maintenance, formatted d:HH:MM in the UTC time zone. d is the * weekday number, from 1 through 7, beginning with Monday and ending with Sunday. * @return Returns a reference to this object so that method calls can be chained together. */ public WindowsFileSystemConfiguration withWeeklyMaintenanceStartTime(String weeklyMaintenanceStartTime) { setWeeklyMaintenanceStartTime(weeklyMaintenanceStartTime); return this; } /** ** The preferred time to take daily automatic backups, in the UTC time zone. *
* * @param dailyAutomaticBackupStartTime * The preferred time to take daily automatic backups, in the UTC time zone. */ public void setDailyAutomaticBackupStartTime(String dailyAutomaticBackupStartTime) { this.dailyAutomaticBackupStartTime = dailyAutomaticBackupStartTime; } /** ** The preferred time to take daily automatic backups, in the UTC time zone. *
* * @return The preferred time to take daily automatic backups, in the UTC time zone. */ public String getDailyAutomaticBackupStartTime() { return this.dailyAutomaticBackupStartTime; } /** ** The preferred time to take daily automatic backups, in the UTC time zone. *
* * @param dailyAutomaticBackupStartTime * The preferred time to take daily automatic backups, in the UTC time zone. * @return Returns a reference to this object so that method calls can be chained together. */ public WindowsFileSystemConfiguration withDailyAutomaticBackupStartTime(String dailyAutomaticBackupStartTime) { setDailyAutomaticBackupStartTime(dailyAutomaticBackupStartTime); return this; } /** ** The number of days to retain automatic backups. Setting this to 0 disables automatic backups. You can retain * automatic backups for a maximum of 90 days. *
* * @param automaticBackupRetentionDays * The number of days to retain automatic backups. Setting this to 0 disables automatic backups. You can * retain automatic backups for a maximum of 90 days. */ public void setAutomaticBackupRetentionDays(Integer automaticBackupRetentionDays) { this.automaticBackupRetentionDays = automaticBackupRetentionDays; } /** ** The number of days to retain automatic backups. Setting this to 0 disables automatic backups. You can retain * automatic backups for a maximum of 90 days. *
* * @return The number of days to retain automatic backups. Setting this to 0 disables automatic backups. You can * retain automatic backups for a maximum of 90 days. */ public Integer getAutomaticBackupRetentionDays() { return this.automaticBackupRetentionDays; } /** ** The number of days to retain automatic backups. Setting this to 0 disables automatic backups. You can retain * automatic backups for a maximum of 90 days. *
* * @param automaticBackupRetentionDays * The number of days to retain automatic backups. Setting this to 0 disables automatic backups. You can * retain automatic backups for a maximum of 90 days. * @return Returns a reference to this object so that method calls can be chained together. */ public WindowsFileSystemConfiguration withAutomaticBackupRetentionDays(Integer automaticBackupRetentionDays) { setAutomaticBackupRetentionDays(automaticBackupRetentionDays); return this; } /** ** A boolean flag indicating whether tags on the file system should be copied to backups. This value defaults to * false. If it's set to true, all tags on the file system are copied to all automatic backups and any * user-initiated backups where the user doesn't specify any 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 flag indicating whether tags on the file system should be copied to backups. This value defaults * to false. If it's set to true, all tags on the file system are copied to all automatic backups and any * user-initiated backups where the user doesn't specify any 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 flag indicating whether tags on the file system should be copied to backups. This value defaults to * false. If it's set to true, all tags on the file system are copied to all automatic backups and any * user-initiated backups where the user doesn't specify any 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 flag indicating whether tags on the file system should be copied to backups. This value * defaults to false. If it's set to true, all tags on the file system are copied to all automatic backups * and any user-initiated backups where the user doesn't specify any 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 flag indicating whether tags on the file system should be copied to backups. This value defaults to * false. If it's set to true, all tags on the file system are copied to all automatic backups and any * user-initiated backups where the user doesn't specify any 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 flag indicating whether tags on the file system should be copied to backups. This value defaults * to false. If it's set to true, all tags on the file system are copied to all automatic backups and any * user-initiated backups where the user doesn't specify any 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 WindowsFileSystemConfiguration withCopyTagsToBackups(Boolean copyTagsToBackups) { setCopyTagsToBackups(copyTagsToBackups); return this; } /** ** A boolean flag indicating whether tags on the file system should be copied to backups. This value defaults to * false. If it's set to true, all tags on the file system are copied to all automatic backups and any * user-initiated backups where the user doesn't specify any 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 flag indicating whether tags on the file system should be copied to backups. This value * defaults to false. If it's set to true, all tags on the file system are copied to all automatic backups * and any user-initiated backups where the user doesn't specify any 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; } /** * @return */ public java.util.List* NOTE: This method appends the values to the existing list (if any). Use * {@link #setAliases(java.util.Collection)} or {@link #withAliases(java.util.Collection)} if you want to override * the existing values. *
* * @param aliases * @return Returns a reference to this object so that method calls can be chained together. */ public WindowsFileSystemConfiguration withAliases(Alias... aliases) { if (this.aliases == null) { setAliases(new java.util.ArrayList* The configuration that Amazon FSx for Windows File Server uses to audit and log user accesses of files, folders, * and file shares on the Amazon FSx for Windows File Server file system. *
* * @param auditLogConfiguration * The configuration that Amazon FSx for Windows File Server uses to audit and log user accesses of files, * folders, and file shares on the Amazon FSx for Windows File Server file system. */ public void setAuditLogConfiguration(WindowsAuditLogConfiguration auditLogConfiguration) { this.auditLogConfiguration = auditLogConfiguration; } /** ** The configuration that Amazon FSx for Windows File Server uses to audit and log user accesses of files, folders, * and file shares on the Amazon FSx for Windows File Server file system. *
* * @return The configuration that Amazon FSx for Windows File Server uses to audit and log user accesses of files, * folders, and file shares on the Amazon FSx for Windows File Server file system. */ public WindowsAuditLogConfiguration getAuditLogConfiguration() { return this.auditLogConfiguration; } /** ** The configuration that Amazon FSx for Windows File Server uses to audit and log user accesses of files, folders, * and file shares on the Amazon FSx for Windows File Server file system. *
* * @param auditLogConfiguration * The configuration that Amazon FSx for Windows File Server uses to audit and log user accesses of files, * folders, and file shares on the Amazon FSx for Windows File Server file system. * @return Returns a reference to this object so that method calls can be chained together. */ public WindowsFileSystemConfiguration withAuditLogConfiguration(WindowsAuditLogConfiguration auditLogConfiguration) { setAuditLogConfiguration(auditLogConfiguration); return this; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getActiveDirectoryId() != null) sb.append("ActiveDirectoryId: ").append(getActiveDirectoryId()).append(","); if (getSelfManagedActiveDirectoryConfiguration() != null) sb.append("SelfManagedActiveDirectoryConfiguration: ").append(getSelfManagedActiveDirectoryConfiguration()).append(","); if (getDeploymentType() != null) sb.append("DeploymentType: ").append(getDeploymentType()).append(","); if (getRemoteAdministrationEndpoint() != null) sb.append("RemoteAdministrationEndpoint: ").append(getRemoteAdministrationEndpoint()).append(","); if (getPreferredSubnetId() != null) sb.append("PreferredSubnetId: ").append(getPreferredSubnetId()).append(","); if (getPreferredFileServerIp() != null) sb.append("PreferredFileServerIp: ").append(getPreferredFileServerIp()).append(","); if (getThroughputCapacity() != null) sb.append("ThroughputCapacity: ").append(getThroughputCapacity()).append(","); if (getMaintenanceOperationsInProgress() != null) sb.append("MaintenanceOperationsInProgress: ").append(getMaintenanceOperationsInProgress()).append(","); if (getWeeklyMaintenanceStartTime() != null) sb.append("WeeklyMaintenanceStartTime: ").append(getWeeklyMaintenanceStartTime()).append(","); if (getDailyAutomaticBackupStartTime() != null) sb.append("DailyAutomaticBackupStartTime: ").append(getDailyAutomaticBackupStartTime()).append(","); if (getAutomaticBackupRetentionDays() != null) sb.append("AutomaticBackupRetentionDays: ").append(getAutomaticBackupRetentionDays()).append(","); if (getCopyTagsToBackups() != null) sb.append("CopyTagsToBackups: ").append(getCopyTagsToBackups()).append(","); if (getAliases() != null) sb.append("Aliases: ").append(getAliases()).append(","); if (getAuditLogConfiguration() != null) sb.append("AuditLogConfiguration: ").append(getAuditLogConfiguration()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof WindowsFileSystemConfiguration == false) return false; WindowsFileSystemConfiguration other = (WindowsFileSystemConfiguration) obj; if (other.getActiveDirectoryId() == null ^ this.getActiveDirectoryId() == null) return false; if (other.getActiveDirectoryId() != null && other.getActiveDirectoryId().equals(this.getActiveDirectoryId()) == false) return false; if (other.getSelfManagedActiveDirectoryConfiguration() == null ^ this.getSelfManagedActiveDirectoryConfiguration() == null) return false; if (other.getSelfManagedActiveDirectoryConfiguration() != null && other.getSelfManagedActiveDirectoryConfiguration().equals(this.getSelfManagedActiveDirectoryConfiguration()) == false) return false; if (other.getDeploymentType() == null ^ this.getDeploymentType() == null) return false; if (other.getDeploymentType() != null && other.getDeploymentType().equals(this.getDeploymentType()) == false) return false; if (other.getRemoteAdministrationEndpoint() == null ^ this.getRemoteAdministrationEndpoint() == null) return false; if (other.getRemoteAdministrationEndpoint() != null && other.getRemoteAdministrationEndpoint().equals(this.getRemoteAdministrationEndpoint()) == false) return false; if (other.getPreferredSubnetId() == null ^ this.getPreferredSubnetId() == null) return false; if (other.getPreferredSubnetId() != null && other.getPreferredSubnetId().equals(this.getPreferredSubnetId()) == false) return false; if (other.getPreferredFileServerIp() == null ^ this.getPreferredFileServerIp() == null) return false; if (other.getPreferredFileServerIp() != null && other.getPreferredFileServerIp().equals(this.getPreferredFileServerIp()) == false) return false; if (other.getThroughputCapacity() == null ^ this.getThroughputCapacity() == null) return false; if (other.getThroughputCapacity() != null && other.getThroughputCapacity().equals(this.getThroughputCapacity()) == false) return false; if (other.getMaintenanceOperationsInProgress() == null ^ this.getMaintenanceOperationsInProgress() == null) return false; if (other.getMaintenanceOperationsInProgress() != null && other.getMaintenanceOperationsInProgress().equals(this.getMaintenanceOperationsInProgress()) == false) return false; if (other.getWeeklyMaintenanceStartTime() == null ^ this.getWeeklyMaintenanceStartTime() == null) return false; if (other.getWeeklyMaintenanceStartTime() != null && other.getWeeklyMaintenanceStartTime().equals(this.getWeeklyMaintenanceStartTime()) == false) return false; if (other.getDailyAutomaticBackupStartTime() == null ^ this.getDailyAutomaticBackupStartTime() == null) return false; if (other.getDailyAutomaticBackupStartTime() != null && other.getDailyAutomaticBackupStartTime().equals(this.getDailyAutomaticBackupStartTime()) == false) return false; if (other.getAutomaticBackupRetentionDays() == null ^ this.getAutomaticBackupRetentionDays() == null) return false; if (other.getAutomaticBackupRetentionDays() != null && other.getAutomaticBackupRetentionDays().equals(this.getAutomaticBackupRetentionDays()) == false) return false; if (other.getCopyTagsToBackups() == null ^ this.getCopyTagsToBackups() == null) return false; if (other.getCopyTagsToBackups() != null && other.getCopyTagsToBackups().equals(this.getCopyTagsToBackups()) == false) return false; if (other.getAliases() == null ^ this.getAliases() == null) return false; if (other.getAliases() != null && other.getAliases().equals(this.getAliases()) == false) return false; if (other.getAuditLogConfiguration() == null ^ this.getAuditLogConfiguration() == null) return false; if (other.getAuditLogConfiguration() != null && other.getAuditLogConfiguration().equals(this.getAuditLogConfiguration()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getActiveDirectoryId() == null) ? 0 : getActiveDirectoryId().hashCode()); hashCode = prime * hashCode + ((getSelfManagedActiveDirectoryConfiguration() == null) ? 0 : getSelfManagedActiveDirectoryConfiguration().hashCode()); hashCode = prime * hashCode + ((getDeploymentType() == null) ? 0 : getDeploymentType().hashCode()); hashCode = prime * hashCode + ((getRemoteAdministrationEndpoint() == null) ? 0 : getRemoteAdministrationEndpoint().hashCode()); hashCode = prime * hashCode + ((getPreferredSubnetId() == null) ? 0 : getPreferredSubnetId().hashCode()); hashCode = prime * hashCode + ((getPreferredFileServerIp() == null) ? 0 : getPreferredFileServerIp().hashCode()); hashCode = prime * hashCode + ((getThroughputCapacity() == null) ? 0 : getThroughputCapacity().hashCode()); hashCode = prime * hashCode + ((getMaintenanceOperationsInProgress() == null) ? 0 : getMaintenanceOperationsInProgress().hashCode()); hashCode = prime * hashCode + ((getWeeklyMaintenanceStartTime() == null) ? 0 : getWeeklyMaintenanceStartTime().hashCode()); hashCode = prime * hashCode + ((getDailyAutomaticBackupStartTime() == null) ? 0 : getDailyAutomaticBackupStartTime().hashCode()); hashCode = prime * hashCode + ((getAutomaticBackupRetentionDays() == null) ? 0 : getAutomaticBackupRetentionDays().hashCode()); hashCode = prime * hashCode + ((getCopyTagsToBackups() == null) ? 0 : getCopyTagsToBackups().hashCode()); hashCode = prime * hashCode + ((getAliases() == null) ? 0 : getAliases().hashCode()); hashCode = prime * hashCode + ((getAuditLogConfiguration() == null) ? 0 : getAuditLogConfiguration().hashCode()); return hashCode; } @Override public WindowsFileSystemConfiguration clone() { try { return (WindowsFileSystemConfiguration) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } @com.amazonaws.annotation.SdkInternalApi @Override public void marshall(ProtocolMarshaller protocolMarshaller) { com.amazonaws.services.fsx.model.transform.WindowsFileSystemConfigurationMarshaller.getInstance().marshall(this, protocolMarshaller); } }