Class VolumePatchProperties

java.lang.Object
com.azure.resourcemanager.netapp.fluent.models.VolumePatchProperties
All Implemented Interfaces:
com.azure.json.JsonSerializable<VolumePatchProperties>

public final class VolumePatchProperties extends Object implements com.azure.json.JsonSerializable<VolumePatchProperties>
Patchable volume properties.
  • Constructor Details

    • VolumePatchProperties

      public VolumePatchProperties()
      Creates an instance of VolumePatchProperties class.
  • Method Details

    • serviceLevel

      public ServiceLevel serviceLevel()
      Get the serviceLevel property: The service level of the file system.
      Returns:
      the serviceLevel value.
    • withServiceLevel

      public VolumePatchProperties withServiceLevel(ServiceLevel serviceLevel)
      Set the serviceLevel property: The service level of the file system.
      Parameters:
      serviceLevel - the serviceLevel value to set.
      Returns:
      the VolumePatchProperties object itself.
    • usageThreshold

      public Long usageThreshold()
      Get the usageThreshold property: Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. For regular volumes, valid values are in the range 50GiB to 100TiB. For large volumes, valid values are in the range 100TiB to 500TiB, and on an exceptional basis, from to 2400GiB to 2400TiB. Values expressed in bytes as multiples of 1 GiB.
      Returns:
      the usageThreshold value.
    • withUsageThreshold

      public VolumePatchProperties withUsageThreshold(Long usageThreshold)
      Set the usageThreshold property: Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. For regular volumes, valid values are in the range 50GiB to 100TiB. For large volumes, valid values are in the range 100TiB to 500TiB, and on an exceptional basis, from to 2400GiB to 2400TiB. Values expressed in bytes as multiples of 1 GiB.
      Parameters:
      usageThreshold - the usageThreshold value to set.
      Returns:
      the VolumePatchProperties object itself.
    • exportPolicy

      public VolumePatchPropertiesExportPolicy exportPolicy()
      Get the exportPolicy property: Set of export policy rules.
      Returns:
      the exportPolicy value.
    • withExportPolicy

      public VolumePatchProperties withExportPolicy(VolumePatchPropertiesExportPolicy exportPolicy)
      Set the exportPolicy property: Set of export policy rules.
      Parameters:
      exportPolicy - the exportPolicy value to set.
      Returns:
      the VolumePatchProperties object itself.
    • protocolTypes

      public List<String> protocolTypes()
      Get the protocolTypes property: Set of protocol types, default NFSv3, CIFS for SMB protocol.
      Returns:
      the protocolTypes value.
    • withProtocolTypes

      public VolumePatchProperties withProtocolTypes(List<String> protocolTypes)
      Set the protocolTypes property: Set of protocol types, default NFSv3, CIFS for SMB protocol.
      Parameters:
      protocolTypes - the protocolTypes value to set.
      Returns:
      the VolumePatchProperties object itself.
    • throughputMibps

      public Float throughputMibps()
      Get the throughputMibps property: Maximum throughput in MiB/s that can be achieved by this volume and this will be accepted as input only for manual qosType volume.
      Returns:
      the throughputMibps value.
    • withThroughputMibps

      public VolumePatchProperties withThroughputMibps(Float throughputMibps)
      Set the throughputMibps property: Maximum throughput in MiB/s that can be achieved by this volume and this will be accepted as input only for manual qosType volume.
      Parameters:
      throughputMibps - the throughputMibps value to set.
      Returns:
      the VolumePatchProperties object itself.
    • dataProtection

      public VolumePatchPropertiesDataProtection dataProtection()
      Get the dataProtection property: DataProtection type volumes include an object containing details of the replication.
      Returns:
      the dataProtection value.
    • withDataProtection

      public VolumePatchProperties withDataProtection(VolumePatchPropertiesDataProtection dataProtection)
      Set the dataProtection property: DataProtection type volumes include an object containing details of the replication.
      Parameters:
      dataProtection - the dataProtection value to set.
      Returns:
      the VolumePatchProperties object itself.
    • isDefaultQuotaEnabled

      public Boolean isDefaultQuotaEnabled()
      Get the isDefaultQuotaEnabled property: Specifies if default quota is enabled for the volume.
      Returns:
      the isDefaultQuotaEnabled value.
    • withIsDefaultQuotaEnabled

      public VolumePatchProperties withIsDefaultQuotaEnabled(Boolean isDefaultQuotaEnabled)
      Set the isDefaultQuotaEnabled property: Specifies if default quota is enabled for the volume.
      Parameters:
      isDefaultQuotaEnabled - the isDefaultQuotaEnabled value to set.
      Returns:
      the VolumePatchProperties object itself.
    • defaultUserQuotaInKiBs

      public Long defaultUserQuotaInKiBs()
      Get the defaultUserQuotaInKiBs property: Default user quota for volume in KiBs. If isDefaultQuotaEnabled is set, the minimum value of 4 KiBs applies .
      Returns:
      the defaultUserQuotaInKiBs value.
    • withDefaultUserQuotaInKiBs

      public VolumePatchProperties withDefaultUserQuotaInKiBs(Long defaultUserQuotaInKiBs)
      Set the defaultUserQuotaInKiBs property: Default user quota for volume in KiBs. If isDefaultQuotaEnabled is set, the minimum value of 4 KiBs applies .
      Parameters:
      defaultUserQuotaInKiBs - the defaultUserQuotaInKiBs value to set.
      Returns:
      the VolumePatchProperties object itself.
    • defaultGroupQuotaInKiBs

      public Long defaultGroupQuotaInKiBs()
      Get the defaultGroupQuotaInKiBs property: Default group quota for volume in KiBs. If isDefaultQuotaEnabled is set, the minimum value of 4 KiBs applies.
      Returns:
      the defaultGroupQuotaInKiBs value.
    • withDefaultGroupQuotaInKiBs

      public VolumePatchProperties withDefaultGroupQuotaInKiBs(Long defaultGroupQuotaInKiBs)
      Set the defaultGroupQuotaInKiBs property: Default group quota for volume in KiBs. If isDefaultQuotaEnabled is set, the minimum value of 4 KiBs applies.
      Parameters:
      defaultGroupQuotaInKiBs - the defaultGroupQuotaInKiBs value to set.
      Returns:
      the VolumePatchProperties object itself.
    • unixPermissions

      public String unixPermissions()
      Get the unixPermissions property: UNIX permissions for NFS volume accepted in octal 4 digit format. First digit selects the set user ID(4), set group ID (2) and sticky (1) attributes. Second digit selects permission for the owner of the file: read (4), write (2) and execute (1). Third selects permissions for other users in the same group. the fourth for other users not in the group. 0755 - gives read/write/execute permissions to owner and read/execute to group and other users.
      Returns:
      the unixPermissions value.
    • withUnixPermissions

      public VolumePatchProperties withUnixPermissions(String unixPermissions)
      Set the unixPermissions property: UNIX permissions for NFS volume accepted in octal 4 digit format. First digit selects the set user ID(4), set group ID (2) and sticky (1) attributes. Second digit selects permission for the owner of the file: read (4), write (2) and execute (1). Third selects permissions for other users in the same group. the fourth for other users not in the group. 0755 - gives read/write/execute permissions to owner and read/execute to group and other users.
      Parameters:
      unixPermissions - the unixPermissions value to set.
      Returns:
      the VolumePatchProperties object itself.
    • coolAccess

      public Boolean coolAccess()
      Get the coolAccess property: Specifies whether Cool Access(tiering) is enabled for the volume.
      Returns:
      the coolAccess value.
    • withCoolAccess

      public VolumePatchProperties withCoolAccess(Boolean coolAccess)
      Set the coolAccess property: Specifies whether Cool Access(tiering) is enabled for the volume.
      Parameters:
      coolAccess - the coolAccess value to set.
      Returns:
      the VolumePatchProperties object itself.
    • coolnessPeriod

      public Integer coolnessPeriod()
      Get the coolnessPeriod property: Specifies the number of days after which data that is not accessed by clients will be tiered.
      Returns:
      the coolnessPeriod value.
    • withCoolnessPeriod

      public VolumePatchProperties withCoolnessPeriod(Integer coolnessPeriod)
      Set the coolnessPeriod property: Specifies the number of days after which data that is not accessed by clients will be tiered.
      Parameters:
      coolnessPeriod - the coolnessPeriod value to set.
      Returns:
      the VolumePatchProperties object itself.
    • coolAccessRetrievalPolicy

      public CoolAccessRetrievalPolicy coolAccessRetrievalPolicy()
      Get the coolAccessRetrievalPolicy property: coolAccessRetrievalPolicy determines the data retrieval behavior from the cool tier to standard storage based on the read pattern for cool access enabled volumes. The possible values for this field are: Default - Data will be pulled from cool tier to standard storage on random reads. This policy is the default. OnRead - All client-driven data read is pulled from cool tier to standard storage on both sequential and random reads. Never - No client-driven data is pulled from cool tier to standard storage.
      Returns:
      the coolAccessRetrievalPolicy value.
    • withCoolAccessRetrievalPolicy

      public VolumePatchProperties withCoolAccessRetrievalPolicy(CoolAccessRetrievalPolicy coolAccessRetrievalPolicy)
      Set the coolAccessRetrievalPolicy property: coolAccessRetrievalPolicy determines the data retrieval behavior from the cool tier to standard storage based on the read pattern for cool access enabled volumes. The possible values for this field are: Default - Data will be pulled from cool tier to standard storage on random reads. This policy is the default. OnRead - All client-driven data read is pulled from cool tier to standard storage on both sequential and random reads. Never - No client-driven data is pulled from cool tier to standard storage.
      Parameters:
      coolAccessRetrievalPolicy - the coolAccessRetrievalPolicy value to set.
      Returns:
      the VolumePatchProperties object itself.
    • coolAccessTieringPolicy

      public CoolAccessTieringPolicy coolAccessTieringPolicy()
      Get the coolAccessTieringPolicy property: coolAccessTieringPolicy determines which cold data blocks are moved to cool tier. The possible values for this field are: Auto - Moves cold user data blocks in both the Snapshot copies and the active file system to the cool tier tier. This policy is the default. SnapshotOnly - Moves user data blocks of the Volume Snapshot copies that are not associated with the active file system to the cool tier.
      Returns:
      the coolAccessTieringPolicy value.
    • withCoolAccessTieringPolicy

      public VolumePatchProperties withCoolAccessTieringPolicy(CoolAccessTieringPolicy coolAccessTieringPolicy)
      Set the coolAccessTieringPolicy property: coolAccessTieringPolicy determines which cold data blocks are moved to cool tier. The possible values for this field are: Auto - Moves cold user data blocks in both the Snapshot copies and the active file system to the cool tier tier. This policy is the default. SnapshotOnly - Moves user data blocks of the Volume Snapshot copies that are not associated with the active file system to the cool tier.
      Parameters:
      coolAccessTieringPolicy - the coolAccessTieringPolicy value to set.
      Returns:
      the VolumePatchProperties object itself.
    • snapshotDirectoryVisible

      public Boolean snapshotDirectoryVisible()
      Get the snapshotDirectoryVisible property: If enabled (true) the volume will contain a read-only snapshot directory which provides access to each of the volume's snapshots.
      Returns:
      the snapshotDirectoryVisible value.
    • withSnapshotDirectoryVisible

      public VolumePatchProperties withSnapshotDirectoryVisible(Boolean snapshotDirectoryVisible)
      Set the snapshotDirectoryVisible property: If enabled (true) the volume will contain a read-only snapshot directory which provides access to each of the volume's snapshots.
      Parameters:
      snapshotDirectoryVisible - the snapshotDirectoryVisible value to set.
      Returns:
      the VolumePatchProperties object itself.
    • smbAccessBasedEnumeration

      public SmbAccessBasedEnumeration smbAccessBasedEnumeration()
      Get the smbAccessBasedEnumeration property: Enables access-based enumeration share property for SMB Shares. Only applicable for SMB/DualProtocol volume.
      Returns:
      the smbAccessBasedEnumeration value.
    • withSmbAccessBasedEnumeration

      public VolumePatchProperties withSmbAccessBasedEnumeration(SmbAccessBasedEnumeration smbAccessBasedEnumeration)
      Set the smbAccessBasedEnumeration property: Enables access-based enumeration share property for SMB Shares. Only applicable for SMB/DualProtocol volume.
      Parameters:
      smbAccessBasedEnumeration - the smbAccessBasedEnumeration value to set.
      Returns:
      the VolumePatchProperties object itself.
    • smbNonBrowsable

      public SmbNonBrowsable smbNonBrowsable()
      Get the smbNonBrowsable property: Enables non-browsable property for SMB Shares. Only applicable for SMB/DualProtocol volume.
      Returns:
      the smbNonBrowsable value.
    • withSmbNonBrowsable

      public VolumePatchProperties withSmbNonBrowsable(SmbNonBrowsable smbNonBrowsable)
      Set the smbNonBrowsable property: Enables non-browsable property for SMB Shares. Only applicable for SMB/DualProtocol volume.
      Parameters:
      smbNonBrowsable - the smbNonBrowsable value to set.
      Returns:
      the VolumePatchProperties object itself.
    • validate

      public void validate()
      Validates the instance.
      Throws:
      IllegalArgumentException - thrown if the instance is not valid.
    • toJson

      public com.azure.json.JsonWriter toJson(com.azure.json.JsonWriter jsonWriter) throws IOException
      Specified by:
      toJson in interface com.azure.json.JsonSerializable<VolumePatchProperties>
      Throws:
      IOException
    • fromJson

      public static VolumePatchProperties fromJson(com.azure.json.JsonReader jsonReader) throws IOException
      Reads an instance of VolumePatchProperties from the JsonReader.
      Parameters:
      jsonReader - The JsonReader being read.
      Returns:
      An instance of VolumePatchProperties if the JsonReader was pointing to an instance of it, or null if it was pointing to JSON null.
      Throws:
      IOException - If an error occurs while reading the VolumePatchProperties.