Class SnapshotUpdateProperties

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

public final class SnapshotUpdateProperties extends Object implements com.azure.json.JsonSerializable<SnapshotUpdateProperties>
Snapshot resource update properties.
  • Constructor Details

    • SnapshotUpdateProperties

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

    • osType

      public OperatingSystemTypes osType()
      Get the osType property: the Operating System type.
      Returns:
      the osType value.
    • withOsType

      public SnapshotUpdateProperties withOsType(OperatingSystemTypes osType)
      Set the osType property: the Operating System type.
      Parameters:
      osType - the osType value to set.
      Returns:
      the SnapshotUpdateProperties object itself.
    • diskSizeGB

      public Integer diskSizeGB()
      Get the diskSizeGB property: If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size.
      Returns:
      the diskSizeGB value.
    • withDiskSizeGB

      public SnapshotUpdateProperties withDiskSizeGB(Integer diskSizeGB)
      Set the diskSizeGB property: If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size.
      Parameters:
      diskSizeGB - the diskSizeGB value to set.
      Returns:
      the SnapshotUpdateProperties object itself.
    • encryptionSettingsCollection

      public EncryptionSettingsCollection encryptionSettingsCollection()
      Get the encryptionSettingsCollection property: Encryption settings collection used be Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot.
      Returns:
      the encryptionSettingsCollection value.
    • withEncryptionSettingsCollection

      public SnapshotUpdateProperties withEncryptionSettingsCollection(EncryptionSettingsCollection encryptionSettingsCollection)
      Set the encryptionSettingsCollection property: Encryption settings collection used be Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot.
      Parameters:
      encryptionSettingsCollection - the encryptionSettingsCollection value to set.
      Returns:
      the SnapshotUpdateProperties object itself.
    • encryption

      public Encryption encryption()
      Get the encryption property: Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys.
      Returns:
      the encryption value.
    • withEncryption

      public SnapshotUpdateProperties withEncryption(Encryption encryption)
      Set the encryption property: Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys.
      Parameters:
      encryption - the encryption value to set.
      Returns:
      the SnapshotUpdateProperties object itself.
    • networkAccessPolicy

      public NetworkAccessPolicy networkAccessPolicy()
      Get the networkAccessPolicy property: Policy for accessing the disk via network.
      Returns:
      the networkAccessPolicy value.
    • withNetworkAccessPolicy

      public SnapshotUpdateProperties withNetworkAccessPolicy(NetworkAccessPolicy networkAccessPolicy)
      Set the networkAccessPolicy property: Policy for accessing the disk via network.
      Parameters:
      networkAccessPolicy - the networkAccessPolicy value to set.
      Returns:
      the SnapshotUpdateProperties object itself.
    • diskAccessId

      public String diskAccessId()
      Get the diskAccessId property: ARM id of the DiskAccess resource for using private endpoints on disks.
      Returns:
      the diskAccessId value.
    • withDiskAccessId

      public SnapshotUpdateProperties withDiskAccessId(String diskAccessId)
      Set the diskAccessId property: ARM id of the DiskAccess resource for using private endpoints on disks.
      Parameters:
      diskAccessId - the diskAccessId value to set.
      Returns:
      the SnapshotUpdateProperties object itself.
    • supportsHibernation

      public Boolean supportsHibernation()
      Get the supportsHibernation property: Indicates the OS on a snapshot supports hibernation.
      Returns:
      the supportsHibernation value.
    • withSupportsHibernation

      public SnapshotUpdateProperties withSupportsHibernation(Boolean supportsHibernation)
      Set the supportsHibernation property: Indicates the OS on a snapshot supports hibernation.
      Parameters:
      supportsHibernation - the supportsHibernation value to set.
      Returns:
      the SnapshotUpdateProperties object itself.
    • publicNetworkAccess

      public PublicNetworkAccess publicNetworkAccess()
      Get the publicNetworkAccess property: Policy for controlling export on the disk.
      Returns:
      the publicNetworkAccess value.
    • withPublicNetworkAccess

      public SnapshotUpdateProperties withPublicNetworkAccess(PublicNetworkAccess publicNetworkAccess)
      Set the publicNetworkAccess property: Policy for controlling export on the disk.
      Parameters:
      publicNetworkAccess - the publicNetworkAccess value to set.
      Returns:
      the SnapshotUpdateProperties object itself.
    • dataAccessAuthMode

      public DataAccessAuthMode dataAccessAuthMode()
      Get the dataAccessAuthMode property: Additional authentication requirements when exporting or uploading to a disk or snapshot.
      Returns:
      the dataAccessAuthMode value.
    • withDataAccessAuthMode

      public SnapshotUpdateProperties withDataAccessAuthMode(DataAccessAuthMode dataAccessAuthMode)
      Set the dataAccessAuthMode property: Additional authentication requirements when exporting or uploading to a disk or snapshot.
      Parameters:
      dataAccessAuthMode - the dataAccessAuthMode value to set.
      Returns:
      the SnapshotUpdateProperties object itself.
    • supportedCapabilities

      public SupportedCapabilities supportedCapabilities()
      Get the supportedCapabilities property: List of supported capabilities for the image from which the OS disk was created.
      Returns:
      the supportedCapabilities value.
    • withSupportedCapabilities

      public SnapshotUpdateProperties withSupportedCapabilities(SupportedCapabilities supportedCapabilities)
      Set the supportedCapabilities property: List of supported capabilities for the image from which the OS disk was created.
      Parameters:
      supportedCapabilities - the supportedCapabilities value to set.
      Returns:
      the SnapshotUpdateProperties 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<SnapshotUpdateProperties>
      Throws:
      IOException
    • fromJson

      public static SnapshotUpdateProperties fromJson(com.azure.json.JsonReader jsonReader) throws IOException
      Reads an instance of SnapshotUpdateProperties from the JsonReader.
      Parameters:
      jsonReader - The JsonReader being read.
      Returns:
      An instance of SnapshotUpdateProperties 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 SnapshotUpdateProperties.