Class DiskProperties
java.lang.Object
com.azure.resourcemanager.compute.fluent.models.DiskProperties
- All Implemented Interfaces:
com.azure.json.JsonSerializable<DiskProperties>
public final class DiskProperties
extends Object
implements com.azure.json.JsonSerializable<DiskProperties>
Disk resource properties.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionGet the burstingEnabled property: Set to true to enable bursting beyond the provisioned performance target of the disk.Get the burstingEnabledTime property: Latest time when bursting was last enabled on a disk.Get the completionPercent property: Percentage complete for the background copy when a resource is created via the CopyStart operation.Get the creationData property: Disk source information.Get the dataAccessAuthMode property: Additional authentication requirements when exporting or uploading to a disk or snapshot.Get the diskAccessId property: ARM id of the DiskAccess resource for using private endpoints on disks.Get the diskIopsReadOnly property: The total number of IOPS that will be allowed across all VMs mounting the shared disk as ReadOnly.Get the diskIopsReadWrite property: The number of IOPS allowed for this disk; only settable for UltraSSD disks.Get the diskMBpsReadOnly property: The total throughput (MBps) that will be allowed across all VMs mounting the shared disk as ReadOnly.Get the diskMBpsReadWrite property: The bandwidth allowed for this disk; only settable for UltraSSD disks.Get the diskSizeBytes property: The size of the disk in bytes.Get the diskSizeGB property: If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create.Get the diskState property: The state of the disk.Get the encryption property: Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys.Get the encryptionSettingsCollection property: Encryption settings collection used for Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot.static DiskPropertiesfromJson(com.azure.json.JsonReader jsonReader) Reads an instance of DiskProperties from the JsonReader.Get the hyperVGeneration property: The hypervisor generation of the Virtual Machine.Get the lastOwnershipUpdateTime property: The UTC time when the ownership state of the disk was last changed i.e., the time the disk was last attached or detached from a VM or the time when the VM to which the disk was attached was deallocated or started.Get the maxShares property: The maximum number of VMs that can attach to the disk at the same time.Get the networkAccessPolicy property: Policy for accessing the disk via network.Get the optimizedForFrequentAttach property: Setting this property to true improves reliability and performance of data disks that are frequently (more than 5 times a day) by detached from one virtual machine and attached to another.osType()Get the osType property: The Operating System type.Get the propertyUpdatesInProgress property: Properties of the disk for which update is pending.Get the provisioningState property: The disk provisioning state.Get the publicNetworkAccess property: Policy for controlling export on the disk.Get the purchasePlan property: Purchase plan information for the the image from which the OS disk was created.Get the securityProfile property: Contains the security related information for the resource.Get the shareInfo property: Details of the list of all VMs that have the disk attached. maxShares should be set to a value greater than one for disks to allow attaching them to multiple VMs.Get the supportedCapabilities property: List of supported capabilities for the image from which the OS disk was created.Get the supportsHibernation property: Indicates the OS on a disk supports hibernation.tier()Get the tier property: Performance tier of the disk (e.g, P4, S10) as described here: https://azure.microsoft.com/en-us/pricing/details/managed-disks/.Get the timeCreated property: The time when the disk was created.com.azure.json.JsonWritertoJson(com.azure.json.JsonWriter jsonWriter) uniqueId()Get the uniqueId property: Unique Guid identifying the resource.voidvalidate()Validates the instance.withBurstingEnabled(Boolean burstingEnabled) Set the burstingEnabled property: Set to true to enable bursting beyond the provisioned performance target of the disk.withCompletionPercent(Float completionPercent) Set the completionPercent property: Percentage complete for the background copy when a resource is created via the CopyStart operation.withCreationData(CreationData creationData) Set the creationData property: Disk source information.withDataAccessAuthMode(DataAccessAuthMode dataAccessAuthMode) Set the dataAccessAuthMode property: Additional authentication requirements when exporting or uploading to a disk or snapshot.withDiskAccessId(String diskAccessId) Set the diskAccessId property: ARM id of the DiskAccess resource for using private endpoints on disks.withDiskIopsReadOnly(Long diskIopsReadOnly) Set the diskIopsReadOnly property: The total number of IOPS that will be allowed across all VMs mounting the shared disk as ReadOnly.withDiskIopsReadWrite(Long diskIopsReadWrite) Set the diskIopsReadWrite property: The number of IOPS allowed for this disk; only settable for UltraSSD disks.withDiskMBpsReadOnly(Long diskMBpsReadOnly) Set the diskMBpsReadOnly property: The total throughput (MBps) that will be allowed across all VMs mounting the shared disk as ReadOnly.withDiskMBpsReadWrite(Long diskMBpsReadWrite) Set the diskMBpsReadWrite property: The bandwidth allowed for this disk; only settable for UltraSSD disks.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.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.withEncryptionSettingsCollection(EncryptionSettingsCollection encryptionSettingsCollection) Set the encryptionSettingsCollection property: Encryption settings collection used for Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot.withHyperVGeneration(HyperVGeneration hyperVGeneration) Set the hyperVGeneration property: The hypervisor generation of the Virtual Machine.withMaxShares(Integer maxShares) Set the maxShares property: The maximum number of VMs that can attach to the disk at the same time.withNetworkAccessPolicy(NetworkAccessPolicy networkAccessPolicy) Set the networkAccessPolicy property: Policy for accessing the disk via network.withOptimizedForFrequentAttach(Boolean optimizedForFrequentAttach) Set the optimizedForFrequentAttach property: Setting this property to true improves reliability and performance of data disks that are frequently (more than 5 times a day) by detached from one virtual machine and attached to another.withOsType(OperatingSystemTypes osType) Set the osType property: The Operating System type.withPublicNetworkAccess(PublicNetworkAccess publicNetworkAccess) Set the publicNetworkAccess property: Policy for controlling export on the disk.withPurchasePlan(PurchasePlanAutoGenerated purchasePlan) Set the purchasePlan property: Purchase plan information for the the image from which the OS disk was created.withSecurityProfile(DiskSecurityProfile securityProfile) Set the securityProfile property: Contains the security related information for the resource.withSupportedCapabilities(SupportedCapabilities supportedCapabilities) Set the supportedCapabilities property: List of supported capabilities for the image from which the OS disk was created.withSupportsHibernation(Boolean supportsHibernation) Set the supportsHibernation property: Indicates the OS on a disk supports hibernation.Set the tier property: Performance tier of the disk (e.g, P4, S10) as described here: https://azure.microsoft.com/en-us/pricing/details/managed-disks/.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.azure.json.JsonSerializable
toJson, toJson, toJsonBytes, toJsonString
-
Constructor Details
-
DiskProperties
public DiskProperties()Creates an instance of DiskProperties class.
-
-
Method Details
-
timeCreated
Get the timeCreated property: The time when the disk was created.- Returns:
- the timeCreated value.
-
osType
Get the osType property: The Operating System type.- Returns:
- the osType value.
-
withOsType
Set the osType property: The Operating System type.- Parameters:
osType- the osType value to set.- Returns:
- the DiskProperties object itself.
-
hyperVGeneration
Get the hyperVGeneration property: The hypervisor generation of the Virtual Machine. Applicable to OS disks only.- Returns:
- the hyperVGeneration value.
-
withHyperVGeneration
Set the hyperVGeneration property: The hypervisor generation of the Virtual Machine. Applicable to OS disks only.- Parameters:
hyperVGeneration- the hyperVGeneration value to set.- Returns:
- the DiskProperties object itself.
-
purchasePlan
Get the purchasePlan property: Purchase plan information for the the image from which the OS disk was created. E.g. - {name: 2019-Datacenter, publisher: MicrosoftWindowsServer, product: WindowsServer}.- Returns:
- the purchasePlan value.
-
withPurchasePlan
Set the purchasePlan property: Purchase plan information for the the image from which the OS disk was created. E.g. - {name: 2019-Datacenter, publisher: MicrosoftWindowsServer, product: WindowsServer}.- Parameters:
purchasePlan- the purchasePlan value to set.- Returns:
- the DiskProperties object itself.
-
supportedCapabilities
Get the supportedCapabilities property: List of supported capabilities for the image from which the OS disk was created.- Returns:
- the supportedCapabilities value.
-
withSupportedCapabilities
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 DiskProperties object itself.
-
creationData
Get the creationData property: Disk source information. CreationData information cannot be changed after the disk has been created.- Returns:
- the creationData value.
-
withCreationData
Set the creationData property: Disk source information. CreationData information cannot be changed after the disk has been created.- Parameters:
creationData- the creationData value to set.- Returns:
- the DiskProperties object itself.
-
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
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 DiskProperties object itself.
-
diskSizeBytes
Get the diskSizeBytes property: The size of the disk in bytes. This field is read only.- Returns:
- the diskSizeBytes value.
-
uniqueId
Get the uniqueId property: Unique Guid identifying the resource.- Returns:
- the uniqueId value.
-
encryptionSettingsCollection
Get the encryptionSettingsCollection property: Encryption settings collection used for Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot.- Returns:
- the encryptionSettingsCollection value.
-
withEncryptionSettingsCollection
public DiskProperties withEncryptionSettingsCollection(EncryptionSettingsCollection encryptionSettingsCollection) Set the encryptionSettingsCollection property: Encryption settings collection used for Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot.- Parameters:
encryptionSettingsCollection- the encryptionSettingsCollection value to set.- Returns:
- the DiskProperties object itself.
-
provisioningState
Get the provisioningState property: The disk provisioning state.- Returns:
- the provisioningState value.
-
diskIopsReadWrite
Get the diskIopsReadWrite property: The number of IOPS allowed for this disk; only settable for UltraSSD disks. One operation can transfer between 4k and 256k bytes.- Returns:
- the diskIopsReadWrite value.
-
withDiskIopsReadWrite
Set the diskIopsReadWrite property: The number of IOPS allowed for this disk; only settable for UltraSSD disks. One operation can transfer between 4k and 256k bytes.- Parameters:
diskIopsReadWrite- the diskIopsReadWrite value to set.- Returns:
- the DiskProperties object itself.
-
diskMBpsReadWrite
Get the diskMBpsReadWrite property: The bandwidth allowed for this disk; only settable for UltraSSD disks. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10.- Returns:
- the diskMBpsReadWrite value.
-
withDiskMBpsReadWrite
Set the diskMBpsReadWrite property: The bandwidth allowed for this disk; only settable for UltraSSD disks. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10.- Parameters:
diskMBpsReadWrite- the diskMBpsReadWrite value to set.- Returns:
- the DiskProperties object itself.
-
diskIopsReadOnly
Get the diskIopsReadOnly property: The total number of IOPS that will be allowed across all VMs mounting the shared disk as ReadOnly. One operation can transfer between 4k and 256k bytes.- Returns:
- the diskIopsReadOnly value.
-
withDiskIopsReadOnly
Set the diskIopsReadOnly property: The total number of IOPS that will be allowed across all VMs mounting the shared disk as ReadOnly. One operation can transfer between 4k and 256k bytes.- Parameters:
diskIopsReadOnly- the diskIopsReadOnly value to set.- Returns:
- the DiskProperties object itself.
-
diskMBpsReadOnly
Get the diskMBpsReadOnly property: The total throughput (MBps) that will be allowed across all VMs mounting the shared disk as ReadOnly. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10.- Returns:
- the diskMBpsReadOnly value.
-
withDiskMBpsReadOnly
Set the diskMBpsReadOnly property: The total throughput (MBps) that will be allowed across all VMs mounting the shared disk as ReadOnly. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10.- Parameters:
diskMBpsReadOnly- the diskMBpsReadOnly value to set.- Returns:
- the DiskProperties object itself.
-
diskState
Get the diskState property: The state of the disk.- Returns:
- the diskState value.
-
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
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 DiskProperties object itself.
-
networkAccessPolicy
Get the networkAccessPolicy property: Policy for accessing the disk via network.- Returns:
- the networkAccessPolicy value.
-
withNetworkAccessPolicy
Set the networkAccessPolicy property: Policy for accessing the disk via network.- Parameters:
networkAccessPolicy- the networkAccessPolicy value to set.- Returns:
- the DiskProperties object itself.
-
diskAccessId
Get the diskAccessId property: ARM id of the DiskAccess resource for using private endpoints on disks.- Returns:
- the diskAccessId value.
-
withDiskAccessId
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 DiskProperties object itself.
-
burstingEnabledTime
Get the burstingEnabledTime property: Latest time when bursting was last enabled on a disk.- Returns:
- the burstingEnabledTime value.
-
tier
Get the tier property: Performance tier of the disk (e.g, P4, S10) as described here: https://azure.microsoft.com/en-us/pricing/details/managed-disks/. Does not apply to Ultra disks.- Returns:
- the tier value.
-
withTier
Set the tier property: Performance tier of the disk (e.g, P4, S10) as described here: https://azure.microsoft.com/en-us/pricing/details/managed-disks/. Does not apply to Ultra disks.- Parameters:
tier- the tier value to set.- Returns:
- the DiskProperties object itself.
-
burstingEnabled
Get the burstingEnabled property: Set to true to enable bursting beyond the provisioned performance target of the disk. Bursting is disabled by default. Does not apply to Ultra disks.- Returns:
- the burstingEnabled value.
-
withBurstingEnabled
Set the burstingEnabled property: Set to true to enable bursting beyond the provisioned performance target of the disk. Bursting is disabled by default. Does not apply to Ultra disks.- Parameters:
burstingEnabled- the burstingEnabled value to set.- Returns:
- the DiskProperties object itself.
-
propertyUpdatesInProgress
Get the propertyUpdatesInProgress property: Properties of the disk for which update is pending.- Returns:
- the propertyUpdatesInProgress value.
-
supportsHibernation
Get the supportsHibernation property: Indicates the OS on a disk supports hibernation.- Returns:
- the supportsHibernation value.
-
withSupportsHibernation
Set the supportsHibernation property: Indicates the OS on a disk supports hibernation.- Parameters:
supportsHibernation- the supportsHibernation value to set.- Returns:
- the DiskProperties object itself.
-
securityProfile
Get the securityProfile property: Contains the security related information for the resource.- Returns:
- the securityProfile value.
-
withSecurityProfile
Set the securityProfile property: Contains the security related information for the resource.- Parameters:
securityProfile- the securityProfile value to set.- Returns:
- the DiskProperties object itself.
-
completionPercent
Get the completionPercent property: Percentage complete for the background copy when a resource is created via the CopyStart operation.- Returns:
- the completionPercent value.
-
withCompletionPercent
Set the completionPercent property: Percentage complete for the background copy when a resource is created via the CopyStart operation.- Parameters:
completionPercent- the completionPercent value to set.- Returns:
- the DiskProperties object itself.
-
publicNetworkAccess
Get the publicNetworkAccess property: Policy for controlling export on the disk.- Returns:
- the publicNetworkAccess value.
-
withPublicNetworkAccess
Set the publicNetworkAccess property: Policy for controlling export on the disk.- Parameters:
publicNetworkAccess- the publicNetworkAccess value to set.- Returns:
- the DiskProperties object itself.
-
dataAccessAuthMode
Get the dataAccessAuthMode property: Additional authentication requirements when exporting or uploading to a disk or snapshot.- Returns:
- the dataAccessAuthMode value.
-
withDataAccessAuthMode
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 DiskProperties object itself.
-
optimizedForFrequentAttach
Get the optimizedForFrequentAttach property: Setting this property to true improves reliability and performance of data disks that are frequently (more than 5 times a day) by detached from one virtual machine and attached to another. This property should not be set for disks that are not detached and attached frequently as it causes the disks to not align with the fault domain of the virtual machine.- Returns:
- the optimizedForFrequentAttach value.
-
withOptimizedForFrequentAttach
Set the optimizedForFrequentAttach property: Setting this property to true improves reliability and performance of data disks that are frequently (more than 5 times a day) by detached from one virtual machine and attached to another. This property should not be set for disks that are not detached and attached frequently as it causes the disks to not align with the fault domain of the virtual machine.- Parameters:
optimizedForFrequentAttach- the optimizedForFrequentAttach value to set.- Returns:
- the DiskProperties object itself.
-
lastOwnershipUpdateTime
Get the lastOwnershipUpdateTime property: The UTC time when the ownership state of the disk was last changed i.e., the time the disk was last attached or detached from a VM or the time when the VM to which the disk was attached was deallocated or started.- Returns:
- the lastOwnershipUpdateTime value.
-
validate
public void validate()Validates the instance.- Throws:
IllegalArgumentException- thrown if the instance is not valid.
-
toJson
- Specified by:
toJsonin interfacecom.azure.json.JsonSerializable<DiskProperties>- Throws:
IOException
-
fromJson
Reads an instance of DiskProperties from the JsonReader.- Parameters:
jsonReader- The JsonReader being read.- Returns:
- An instance of DiskProperties 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 DiskProperties.
-