/// <summary> /// Initializes a new instance of the Disk class. /// </summary> /// <param name="location">Resource location</param> /// <param name="creationData">Disk source information. CreationData /// information cannot be changed after the disk has been /// created.</param> /// <param name="id">Resource Id</param> /// <param name="name">Resource name</param> /// <param name="type">Resource type</param> /// <param name="tags">Resource tags</param> /// <param name="managedBy">A relative URI containing the ID of the VM /// that has the disk attached.</param> /// <param name="managedByExtended">List of relative URIs containing /// the IDs of the 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.</param> /// <param name="zones">The Logical zone list for Disk.</param> /// <param name="extendedLocation">The extended location where the disk /// will be created. Extended location cannot be changed.</param> /// <param name="timeCreated">The time when the disk was /// created.</param> /// <param name="osType">The Operating System type. Possible values /// include: 'Windows', 'Linux'</param> /// <param name="hyperVGeneration">The hypervisor generation of the /// Virtual Machine. Applicable to OS disks only. Possible values /// include: 'V1', 'V2'</param> /// <param name="purchasePlan">Purchase plan information for the the /// image from which the OS disk was created. E.g. - {name: /// 2019-Datacenter, publisher: MicrosoftWindowsServer, product: /// WindowsServer}</param> /// <param name="diskSizeGB">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.</param> /// <param name="diskSizeBytes">The size of the disk in bytes. This /// field is read only.</param> /// <param name="uniqueId">Unique Guid identifying the /// resource.</param> /// <param name="encryptionSettingsCollection">Encryption settings /// collection used for Azure Disk Encryption, can contain multiple /// encryption settings per disk or snapshot.</param> /// <param name="provisioningState">The disk provisioning /// state.</param> /// <param name="diskIOPSReadWrite">The number of IOPS allowed for this /// disk; only settable for UltraSSD disks. One operation can transfer /// between 4k and 256k bytes.</param> /// <param name="diskMBpsReadWrite">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.</param> /// <param name="diskIOPSReadOnly">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.</param> /// <param name="diskMBpsReadOnly">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.</param> /// <param name="diskState">The state of the disk. Possible values /// include: 'Unattached', 'Attached', 'Reserved', 'ActiveSAS', /// 'ReadyToUpload', 'ActiveUpload'</param> /// <param name="encryption">Encryption property can be used to encrypt /// data at rest with customer managed keys or platform managed /// keys.</param> /// <param name="maxShares">The maximum number of VMs that can attach /// to the disk at the same time. Value greater than one indicates a /// disk that can be mounted on multiple VMs at the same time.</param> /// <param name="shareInfo">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.</param> /// <param name="networkAccessPolicy">Possible values include: /// 'AllowAll', 'AllowPrivate', 'DenyAll'</param> /// <param name="diskAccessId">ARM id of the DiskAccess resource for /// using private endpoints on disks.</param> /// <param name="tier">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.</param> /// <param name="burstingEnabled">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.</param> /// <param name="propertyUpdatesInProgress">Properties of the disk for /// which update is pending.</param> /// <param name="supportsHibernation">Indicates the OS on a disk /// supports hibernation.</param> /// <param name="securityProfile">Contains the security related /// information for the resource.</param> public Disk(string location, CreationData creationData, string id = default(string), string name = default(string), string type = default(string), IDictionary <string, string> tags = default(IDictionary <string, string>), string managedBy = default(string), IList <string> managedByExtended = default(IList <string>), DiskSku sku = default(DiskSku), IList <string> zones = default(IList <string>), ExtendedLocation extendedLocation = default(ExtendedLocation), System.DateTime?timeCreated = default(System.DateTime?), OperatingSystemTypes?osType = default(OperatingSystemTypes?), string hyperVGeneration = default(string), DiskPurchasePlan purchasePlan = default(DiskPurchasePlan), int?diskSizeGB = default(int?), long?diskSizeBytes = default(long?), string uniqueId = default(string), EncryptionSettingsCollection encryptionSettingsCollection = default(EncryptionSettingsCollection), string provisioningState = default(string), long?diskIOPSReadWrite = default(long?), long?diskMBpsReadWrite = default(long?), long?diskIOPSReadOnly = default(long?), long?diskMBpsReadOnly = default(long?), string diskState = default(string), Encryption encryption = default(Encryption), int?maxShares = default(int?), IList <ShareInfoElement> shareInfo = default(IList <ShareInfoElement>), string networkAccessPolicy = default(string), string diskAccessId = default(string), string tier = default(string), bool?burstingEnabled = default(bool?), PropertyUpdatesInProgress propertyUpdatesInProgress = default(PropertyUpdatesInProgress), bool?supportsHibernation = default(bool?), DiskSecurityProfile securityProfile = default(DiskSecurityProfile)) : base(location, id, name, type, tags) { ManagedBy = managedBy; ManagedByExtended = managedByExtended; Sku = sku; Zones = zones; ExtendedLocation = extendedLocation; TimeCreated = timeCreated; OsType = osType; HyperVGeneration = hyperVGeneration; PurchasePlan = purchasePlan; CreationData = creationData; DiskSizeGB = diskSizeGB; DiskSizeBytes = diskSizeBytes; UniqueId = uniqueId; EncryptionSettingsCollection = encryptionSettingsCollection; ProvisioningState = provisioningState; DiskIOPSReadWrite = diskIOPSReadWrite; DiskMBpsReadWrite = diskMBpsReadWrite; DiskIOPSReadOnly = diskIOPSReadOnly; DiskMBpsReadOnly = diskMBpsReadOnly; DiskState = diskState; Encryption = encryption; MaxShares = maxShares; ShareInfo = shareInfo; NetworkAccessPolicy = networkAccessPolicy; DiskAccessId = diskAccessId; Tier = tier; BurstingEnabled = burstingEnabled; PropertyUpdatesInProgress = propertyUpdatesInProgress; SupportsHibernation = supportsHibernation; SecurityProfile = securityProfile; CustomInit(); }
/// <summary> /// Initializes a new instance of the DiskRestorePoint class. /// </summary> /// <param name="id">Resource Id</param> /// <param name="name">Resource name</param> /// <param name="type">Resource type</param> /// <param name="timeCreated">The timestamp of restorePoint /// creation</param> /// <param name="sourceResourceId">arm id of source disk</param> /// <param name="osType">The Operating System type. Possible values /// include: 'Windows', 'Linux'</param> /// <param name="hyperVGeneration">The hypervisor generation of the /// Virtual Machine. Applicable to OS disks only. Possible values /// include: 'V1', 'V2'</param> /// <param name="purchasePlan">Purchase plan information for the the /// image from which the OS disk was created.</param> /// <param name="familyId">id of the backing snapshot's MIS /// family</param> /// <param name="sourceUniqueId">unique incarnation id of the source /// disk</param> /// <param name="encryption">Encryption property can be used to encrypt /// data at rest with customer managed keys or platform managed /// keys.</param> /// <param name="supportsHibernation">Indicates the OS on a disk /// supports hibernation.</param> public DiskRestorePoint(string id = default(string), string name = default(string), string type = default(string), System.DateTime?timeCreated = default(System.DateTime?), string sourceResourceId = default(string), OperatingSystemTypes?osType = default(OperatingSystemTypes?), string hyperVGeneration = default(string), DiskPurchasePlan purchasePlan = default(DiskPurchasePlan), string familyId = default(string), string sourceUniqueId = default(string), Encryption encryption = default(Encryption), bool?supportsHibernation = default(bool?)) : base(id, name, type) { TimeCreated = timeCreated; SourceResourceId = sourceResourceId; OsType = osType; HyperVGeneration = hyperVGeneration; PurchasePlan = purchasePlan; FamilyId = familyId; SourceUniqueId = sourceUniqueId; Encryption = encryption; SupportsHibernation = supportsHibernation; CustomInit(); }
/// <summary> /// Initializes a new instance of the DiskUpdate class. /// </summary> /// <param name="osType">the Operating System type. Possible values /// include: 'Windows', 'Linux'</param> /// <param name="diskSizeGB">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.</param> /// <param name="encryptionSettingsCollection">Encryption settings /// collection used be Azure Disk Encryption, can contain multiple /// encryption settings per disk or snapshot.</param> /// <param name="diskIOPSReadWrite">The number of IOPS allowed for this /// disk; only settable for UltraSSD disks. One operation can transfer /// between 4k and 256k bytes.</param> /// <param name="diskMBpsReadWrite">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.</param> /// <param name="diskIOPSReadOnly">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.</param> /// <param name="diskMBpsReadOnly">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.</param> /// <param name="maxShares">The maximum number of VMs that can attach /// to the disk at the same time. Value greater than one indicates a /// disk that can be mounted on multiple VMs at the same time.</param> /// <param name="encryption">Encryption property can be used to encrypt /// data at rest with customer managed keys or platform managed /// keys.</param> /// <param name="networkAccessPolicy">Possible values include: /// 'AllowAll', 'AllowPrivate', 'DenyAll'</param> /// <param name="diskAccessId">ARM id of the DiskAccess resource for /// using private endpoints on disks.</param> /// <param name="tier">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.</param> /// <param name="burstingEnabled">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.</param> /// <param name="purchasePlan">Purchase plan information to be added on /// the OS disk</param> /// <param name="propertyUpdatesInProgress">Properties of the disk for /// which update is pending.</param> /// <param name="supportsHibernation">Indicates the OS on a disk /// supports hibernation.</param> /// <param name="tags">Resource tags</param> public DiskUpdate(OperatingSystemTypes?osType = default(OperatingSystemTypes?), int?diskSizeGB = default(int?), EncryptionSettingsCollection encryptionSettingsCollection = default(EncryptionSettingsCollection), long?diskIOPSReadWrite = default(long?), long?diskMBpsReadWrite = default(long?), long?diskIOPSReadOnly = default(long?), long?diskMBpsReadOnly = default(long?), int?maxShares = default(int?), Encryption encryption = default(Encryption), string networkAccessPolicy = default(string), string diskAccessId = default(string), string tier = default(string), bool?burstingEnabled = default(bool?), DiskPurchasePlan purchasePlan = default(DiskPurchasePlan), PropertyUpdatesInProgress propertyUpdatesInProgress = default(PropertyUpdatesInProgress), bool?supportsHibernation = default(bool?), IDictionary <string, string> tags = default(IDictionary <string, string>), DiskSku sku = default(DiskSku)) { OsType = osType; DiskSizeGB = diskSizeGB; EncryptionSettingsCollection = encryptionSettingsCollection; DiskIOPSReadWrite = diskIOPSReadWrite; DiskMBpsReadWrite = diskMBpsReadWrite; DiskIOPSReadOnly = diskIOPSReadOnly; DiskMBpsReadOnly = diskMBpsReadOnly; MaxShares = maxShares; Encryption = encryption; NetworkAccessPolicy = networkAccessPolicy; DiskAccessId = diskAccessId; Tier = tier; BurstingEnabled = burstingEnabled; PurchasePlan = purchasePlan; PropertyUpdatesInProgress = propertyUpdatesInProgress; SupportsHibernation = supportsHibernation; Tags = tags; Sku = sku; CustomInit(); }
/// <summary> /// Initializes a new instance of the Snapshot class. /// </summary> /// <param name="location">Resource location</param> /// <param name="creationData">Disk source information. CreationData /// information cannot be changed after the disk has been /// created.</param> /// <param name="id">Resource Id</param> /// <param name="name">Resource name</param> /// <param name="type">Resource type</param> /// <param name="tags">Resource tags</param> /// <param name="managedBy">Unused. Always Null.</param> /// <param name="extendedLocation">The extended location where the /// snapshot will be created. Extended location cannot be /// changed.</param> /// <param name="timeCreated">The time when the snapshot was /// created.</param> /// <param name="osType">The Operating System type. Possible values /// include: 'Windows', 'Linux'</param> /// <param name="hyperVGeneration">The hypervisor generation of the /// Virtual Machine. Applicable to OS disks only. Possible values /// include: 'V1', 'V2'</param> /// <param name="purchasePlan">Purchase plan information for the image /// from which the source disk for the snapshot was originally /// created.</param> /// <param name="diskSizeGB">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.</param> /// <param name="diskSizeBytes">The size of the disk in bytes. This /// field is read only.</param> /// <param name="diskState">The state of the snapshot. Possible values /// include: 'Unattached', 'Attached', 'Reserved', 'ActiveSAS', /// 'ReadyToUpload', 'ActiveUpload'</param> /// <param name="uniqueId">Unique Guid identifying the /// resource.</param> /// <param name="encryptionSettingsCollection">Encryption settings /// collection used be Azure Disk Encryption, can contain multiple /// encryption settings per disk or snapshot.</param> /// <param name="provisioningState">The disk provisioning /// state.</param> /// <param name="incremental">Whether a snapshot is incremental. /// Incremental snapshots on the same disk occupy less space than full /// snapshots and can be diffed.</param> /// <param name="encryption">Encryption property can be used to encrypt /// data at rest with customer managed keys or platform managed /// keys.</param> /// <param name="networkAccessPolicy">Possible values include: /// 'AllowAll', 'AllowPrivate', 'DenyAll'</param> /// <param name="diskAccessId">ARM id of the DiskAccess resource for /// using private endpoints on disks.</param> /// <param name="supportsHibernation">Indicates the OS on a snapshot /// supports hibernation.</param> public Snapshot(string location, CreationData creationData, string id = default(string), string name = default(string), string type = default(string), IDictionary <string, string> tags = default(IDictionary <string, string>), string managedBy = default(string), SnapshotSku sku = default(SnapshotSku), ExtendedLocation extendedLocation = default(ExtendedLocation), System.DateTime?timeCreated = default(System.DateTime?), OperatingSystemTypes?osType = default(OperatingSystemTypes?), string hyperVGeneration = default(string), DiskPurchasePlan purchasePlan = default(DiskPurchasePlan), int?diskSizeGB = default(int?), long?diskSizeBytes = default(long?), string diskState = default(string), string uniqueId = default(string), EncryptionSettingsCollection encryptionSettingsCollection = default(EncryptionSettingsCollection), string provisioningState = default(string), bool?incremental = default(bool?), Encryption encryption = default(Encryption), string networkAccessPolicy = default(string), string diskAccessId = default(string), bool?supportsHibernation = default(bool?)) : base(location, id, name, type, tags) { ManagedBy = managedBy; Sku = sku; ExtendedLocation = extendedLocation; TimeCreated = timeCreated; OsType = osType; HyperVGeneration = hyperVGeneration; PurchasePlan = purchasePlan; CreationData = creationData; DiskSizeGB = diskSizeGB; DiskSizeBytes = diskSizeBytes; DiskState = diskState; UniqueId = uniqueId; EncryptionSettingsCollection = encryptionSettingsCollection; ProvisioningState = provisioningState; Incremental = incremental; Encryption = encryption; NetworkAccessPolicy = networkAccessPolicy; DiskAccessId = diskAccessId; SupportsHibernation = supportsHibernation; CustomInit(); }