Class VolumePatch

java.lang.Object
com.azure.core.management.ProxyResource
com.azure.core.management.Resource
com.azure.resourcemanager.netapp.models.VolumePatch
All Implemented Interfaces:
com.azure.json.JsonSerializable<com.azure.core.management.ProxyResource>

public final class VolumePatch extends com.azure.core.management.Resource
Volume patch resource.
  • Constructor Details

    • VolumePatch

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

    • type

      public String type()
      Get the type property: The type of the resource.
      Overrides:
      type in class com.azure.core.management.ProxyResource
      Returns:
      the type value.
    • name

      public String name()
      Get the name property: The name of the resource.
      Overrides:
      name in class com.azure.core.management.ProxyResource
      Returns:
      the name value.
    • id

      public String id()
      Get the id property: Fully qualified resource Id for the resource.
      Overrides:
      id in class com.azure.core.management.ProxyResource
      Returns:
      the id value.
    • withLocation

      public VolumePatch withLocation(String location)
      Overrides:
      withLocation in class com.azure.core.management.Resource
    • withTags

      public VolumePatch withTags(Map<String,String> tags)
      Overrides:
      withTags in class com.azure.core.management.Resource
    • serviceLevel

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

      public VolumePatch withServiceLevel(ServiceLevel serviceLevel)
      Set the serviceLevel property: The service level of the file system.
      Parameters:
      serviceLevel - the serviceLevel value to set.
      Returns:
      the VolumePatch 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 VolumePatch 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 VolumePatch object itself.
    • exportPolicy

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

      public VolumePatch withExportPolicy(VolumePatchPropertiesExportPolicy exportPolicy)
      Set the exportPolicy property: Set of export policy rules.
      Parameters:
      exportPolicy - the exportPolicy value to set.
      Returns:
      the VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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 VolumePatch 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<com.azure.core.management.ProxyResource>
      Overrides:
      toJson in class com.azure.core.management.Resource
      Throws:
      IOException
    • fromJson

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