Example #1
0
 /// <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="supportedCapabilities">List of supported capabilities
 /// 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="publicNetworkAccess">Possible values include:
 /// 'Enabled', 'Disabled'</param>
 /// <param name="dataAccessAuthMode">Possible values include:
 /// 'AzureActiveDirectory', 'None'</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?), PurchasePlan purchasePlan = default(PurchasePlan), SupportedCapabilities supportedCapabilities = default(SupportedCapabilities), PropertyUpdatesInProgress propertyUpdatesInProgress = default(PropertyUpdatesInProgress), bool?supportsHibernation = default(bool?), string publicNetworkAccess = default(string), string dataAccessAuthMode = default(string), 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;
     SupportedCapabilities     = supportedCapabilities;
     PropertyUpdatesInProgress = propertyUpdatesInProgress;
     SupportsHibernation       = supportsHibernation;
     PublicNetworkAccess       = publicNetworkAccess;
     DataAccessAuthMode        = dataAccessAuthMode;
     Tags                      = tags;
     Sku = sku;
     CustomInit();
 }
 /// <summary>
 /// Validate the object.
 /// </summary>
 /// <exception cref="ValidationException">
 /// Thrown if validation fails
 /// </exception>
 public virtual void Validate()
 {
     if (PurchasePlan != null)
     {
         PurchasePlan.Validate();
     }
 }
Example #3
0
 /// <summary>
 /// Initializes a new instance of the VirtualMachineImage class.
 /// </summary>
 public VirtualMachineImage(string name, string location, string id = default(string), IDictionary <string, string> tags = default(IDictionary <string, string>), PurchasePlan plan = default(PurchasePlan), OSDiskImage osDiskImage = default(OSDiskImage), IList <DataDiskImage> dataDiskImages = default(IList <DataDiskImage>))
     : base(name, location, id, tags)
 {
     Plan           = plan;
     OsDiskImage    = osDiskImage;
     DataDiskImages = dataDiskImages;
 }
 public VirtualMachineImage(string name, string location, string id, IDictionary <string, string> tags, PurchasePlan plan, OSDiskImage osDiskImage)
     : base(name, location, id, tags)
 {
     Plan        = plan;
     OsDiskImage = osDiskImage;
     CustomInit();
 }
Example #5
0
 /// <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="supportedCapabilities">List of supported capabilities
 /// for the image from which the source disk from 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', 'Frozen',
 /// 'ActiveSAS', 'ActiveSASFrozen', '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="securityProfile">Contains the security related
 /// information for the resource.</param>
 /// <param name="supportsHibernation">Indicates the OS on a snapshot
 /// supports hibernation.</param>
 /// <param name="publicNetworkAccess">Possible values include:
 /// 'Enabled', 'Disabled'</param>
 /// <param name="completionPercent">Percentage complete for the
 /// background copy when a resource is created via the CopyStart
 /// operation.</param>
 /// <param name="dataAccessAuthMode">Possible values include:
 /// 'AzureActiveDirectory', 'None'</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), PurchasePlan purchasePlan = default(PurchasePlan), SupportedCapabilities supportedCapabilities = default(SupportedCapabilities), 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), DiskSecurityProfile securityProfile = default(DiskSecurityProfile), bool?supportsHibernation = default(bool?), string publicNetworkAccess = default(string), double?completionPercent = default(double?), string dataAccessAuthMode = default(string))
     : base(location, id, name, type, tags)
 {
     ManagedBy                    = managedBy;
     Sku                          = sku;
     ExtendedLocation             = extendedLocation;
     TimeCreated                  = timeCreated;
     OsType                       = osType;
     HyperVGeneration             = hyperVGeneration;
     PurchasePlan                 = purchasePlan;
     SupportedCapabilities        = supportedCapabilities;
     CreationData                 = creationData;
     DiskSizeGB                   = diskSizeGB;
     DiskSizeBytes                = diskSizeBytes;
     DiskState                    = diskState;
     UniqueId                     = uniqueId;
     EncryptionSettingsCollection = encryptionSettingsCollection;
     ProvisioningState            = provisioningState;
     Incremental                  = incremental;
     Encryption                   = encryption;
     NetworkAccessPolicy          = networkAccessPolicy;
     DiskAccessId                 = diskAccessId;
     SecurityProfile              = securityProfile;
     SupportsHibernation          = supportsHibernation;
     PublicNetworkAccess          = publicNetworkAccess;
     CompletionPercent            = completionPercent;
     DataAccessAuthMode           = dataAccessAuthMode;
     CustomInit();
 }
Example #6
0
 /// <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', 'Frozen',
 /// 'ActiveSAS', 'ActiveSASFrozen', '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>
 /// <param name="supportedCapabilities">List of supported capabilities
 /// for the image from which the OS disk was created.</param>
 /// <param name="completionPercent">Percentage complete for the
 /// background copy when a resource is created via the CopyStart
 /// operation.</param>
 /// <param name="publicNetworkAccess">Possible values include:
 /// 'Enabled', 'Disabled'</param>
 public Disk(string location, CreationData creationData, string id, string name, string type, IDictionary <string, string> tags, string managedBy, IList <string> managedByExtended, DiskSku sku, IList <string> zones, ExtendedLocation extendedLocation, System.DateTime?timeCreated, OperatingSystemTypes?osType, string hyperVGeneration, PurchasePlan purchasePlan, int?diskSizeGB, 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();
 }
 public VirtualMachineImage(string name, string location, string id, IDictionary <string, string> tags, PurchasePlan plan, OSDiskImage osDiskImage, IList <DataDiskImage> dataDiskImages, AutomaticOSUpgradeProperties automaticOSUpgradeProperties)
     : base(name, location, id, tags)
 {
     Plan           = plan;
     OsDiskImage    = osDiskImage;
     DataDiskImages = dataDiskImages;
     AutomaticOSUpgradeProperties = automaticOSUpgradeProperties;
     CustomInit();
 }
 /// <summary>
 /// Initializes a new instance of the VirtualMachineImage class.
 /// </summary>
 /// <param name="name">The name of the resource.</param>
 /// <param name="location">The supported Azure location of the
 /// resource.</param>
 /// <param name="id">Resource Id</param>
 /// <param name="tags">Specifies the tags that are assigned to the
 /// virtual machine. For more information about using tags, see [Using
 /// tags to organize your Azure
 /// resources](https://docs.microsoft.com/azure/azure-resource-manager/resource-group-using-tags.md).</param>
 /// <param name="hyperVGeneration">Possible values include: 'V1',
 /// 'V2'</param>
 public VirtualMachineImage(string name, string location, string id = default(string), IDictionary <string, string> tags = default(IDictionary <string, string>), PurchasePlan plan = default(PurchasePlan), OSDiskImage osDiskImage = default(OSDiskImage), IList <DataDiskImage> dataDiskImages = default(IList <DataDiskImage>), AutomaticOSUpgradeProperties automaticOSUpgradeProperties = default(AutomaticOSUpgradeProperties), string hyperVGeneration = default(string))
     : base(name, location, id, tags)
 {
     Plan           = plan;
     OsDiskImage    = osDiskImage;
     DataDiskImages = dataDiskImages;
     AutomaticOSUpgradeProperties = automaticOSUpgradeProperties;
     HyperVGeneration             = hyperVGeneration;
     CustomInit();
 }
Example #9
0
 /// <summary>
 /// Validate the object.
 /// </summary>
 /// <exception cref="ValidationException">
 /// Thrown if validation fails
 /// </exception>
 public virtual void Validate()
 {
     if (EncryptionSettingsCollection != null)
     {
         EncryptionSettingsCollection.Validate();
     }
     if (PurchasePlan != null)
     {
         PurchasePlan.Validate();
     }
 }
 /// <summary>
 /// Initializes a new instance of the VirtualMachineImage class.
 /// </summary>
 /// <param name="name">The name of the resource.</param>
 /// <param name="location">The supported Azure location of the
 /// resource.</param>
 /// <param name="id">Resource Id</param>
 /// <param name="tags">Specifies the tags that are assigned to the
 /// virtual machine. For more information about using tags, see [Using
 /// tags to organize your Azure
 /// resources](https://docs.microsoft.com/azure/azure-resource-manager/resource-group-using-tags.md).</param>
 /// <param name="hyperVGeneration">Possible values include: 'V1',
 /// 'V2'</param>
 /// <param name="disallowed">Specifies disallowed configuration for the
 /// VirtualMachine created from the image</param>
 public VirtualMachineImage(string name, string location, string id, IDictionary <string, string> tags, PurchasePlan plan, OSDiskImage osDiskImage, IList <DataDiskImage> dataDiskImages, AutomaticOSUpgradeProperties automaticOSUpgradeProperties, string hyperVGeneration, DisallowedConfiguration disallowed)
     : base(name, location, id, tags)
 {
     Plan           = plan;
     OsDiskImage    = osDiskImage;
     DataDiskImages = dataDiskImages;
     AutomaticOSUpgradeProperties = automaticOSUpgradeProperties;
     HyperVGeneration             = hyperVGeneration;
     Disallowed = disallowed;
     CustomInit();
 }
Example #11
0
 /// <summary>
 /// Initializes a new instance of the VirtualMachineImage class.
 /// </summary>
 /// <param name="name">The name of the resource.</param>
 /// <param name="location">The supported Azure location of the
 /// resource.</param>
 /// <param name="id">Resource Id</param>
 /// <param name="tags">Specifies the tags that are assigned to the
 /// virtual machine. For more information about using tags, see [Using
 /// tags to organize your Azure
 /// resources](https://docs.microsoft.com/azure/azure-resource-manager/resource-group-using-tags.md).</param>
 /// <param name="extendedLocation">The extended location of the Virtual
 /// Machine.</param>
 /// <param name="hyperVGeneration">Possible values include: 'V1',
 /// 'V2'</param>
 /// <param name="disallowed">Specifies disallowed configuration for the
 /// VirtualMachine created from the image</param>
 public VirtualMachineImage(string name, string location, string id = default(string), IDictionary <string, string> tags = default(IDictionary <string, string>), ExtendedLocation extendedLocation = default(ExtendedLocation), PurchasePlan plan = default(PurchasePlan), OSDiskImage osDiskImage = default(OSDiskImage), IList <DataDiskImage> dataDiskImages = default(IList <DataDiskImage>), AutomaticOSUpgradeProperties automaticOSUpgradeProperties = default(AutomaticOSUpgradeProperties), string hyperVGeneration = default(string), DisallowedConfiguration disallowed = default(DisallowedConfiguration), IList <VirtualMachineImageFeature> features = default(IList <VirtualMachineImageFeature>))
     : base(name, location, id, tags, extendedLocation)
 {
     Plan           = plan;
     OsDiskImage    = osDiskImage;
     DataDiskImages = dataDiskImages;
     AutomaticOSUpgradeProperties = automaticOSUpgradeProperties;
     HyperVGeneration             = hyperVGeneration;
     Disallowed = disallowed;
     Features   = features;
     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>
 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), PurchasePlan purchasePlan = default(PurchasePlan), string familyId = default(string), string sourceUniqueId = default(string), Encryption encryption = default(Encryption))
     : base(id, name, type)
 {
     TimeCreated      = timeCreated;
     SourceResourceId = sourceResourceId;
     OsType           = osType;
     HyperVGeneration = hyperVGeneration;
     PurchasePlan     = purchasePlan;
     FamilyId         = familyId;
     SourceUniqueId   = sourceUniqueId;
     Encryption       = encryption;
     CustomInit();
 }
Example #13
0
 /// <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
 public DiskUpdate(OperatingSystemTypes?osType, int?diskSizeGB, EncryptionSettingsCollection encryptionSettingsCollection, long?diskIOPSReadWrite, long?diskMBpsReadWrite, long?diskIOPSReadOnly, long?diskMBpsReadOnly, int?maxShares, Encryption encryption, string networkAccessPolicy, string diskAccessId, string tier, bool?burstingEnabled, PurchasePlan purchasePlan)
 {
     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;
     CustomInit();
 }
Example #14
0
 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?), PurchasePlan purchasePlan = default(PurchasePlan), IDictionary <string, string> tags = default(IDictionary <string, string>))
 {
     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;
     Tags            = tags;
     CustomInit();
 }
Example #15
0
 /// <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="supportedCapabilities">List of supported capabilities
 /// (like accelerated networking) for 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>
 /// <param name="networkAccessPolicy">Possible values include:
 /// 'AllowAll', 'AllowPrivate', 'DenyAll'</param>
 /// <param name="publicNetworkAccess">Possible values include:
 /// 'Enabled', 'Disabled'</param>
 /// <param name="diskAccessId">ARM id of the DiskAccess resource for
 /// using private endpoints on disks.</param>
 /// <param name="completionPercent">Percentage complete for the
 /// background copy when a resource is created via the CopyStart
 /// operation.</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), PurchasePlan purchasePlan = default(PurchasePlan), SupportedCapabilities supportedCapabilities = default(SupportedCapabilities), string familyId = default(string), string sourceUniqueId = default(string), Encryption encryption = default(Encryption), bool?supportsHibernation = default(bool?), string networkAccessPolicy = default(string), string publicNetworkAccess = default(string), string diskAccessId = default(string), double?completionPercent = default(double?))
     : base(id, name, type)
 {
     TimeCreated           = timeCreated;
     SourceResourceId      = sourceResourceId;
     OsType                = osType;
     HyperVGeneration      = hyperVGeneration;
     PurchasePlan          = purchasePlan;
     SupportedCapabilities = supportedCapabilities;
     FamilyId              = familyId;
     SourceUniqueId        = sourceUniqueId;
     Encryption            = encryption;
     SupportsHibernation   = supportsHibernation;
     NetworkAccessPolicy   = networkAccessPolicy;
     PublicNetworkAccess   = publicNetworkAccess;
     DiskAccessId          = diskAccessId;
     CompletionPercent     = completionPercent;
     CustomInit();
 }
Example #16
0
 /// <summary>
 /// Validate the object.
 /// </summary>
 /// <exception cref="ValidationException">
 /// Thrown if validation fails
 /// </exception>
 public override void Validate()
 {
     base.Validate();
     if (CreationData == null)
     {
         throw new ValidationException(ValidationRules.CannotBeNull, "CreationData");
     }
     if (PurchasePlan != null)
     {
         PurchasePlan.Validate();
     }
     if (CreationData != null)
     {
         CreationData.Validate();
     }
     if (EncryptionSettingsCollection != null)
     {
         EncryptionSettingsCollection.Validate();
     }
 }
Example #17
0
 public DiskUpdate(OperatingSystemTypes?osType, int?diskSizeGB, EncryptionSettingsCollection encryptionSettingsCollection, long?diskIOPSReadWrite, long?diskMBpsReadWrite, long?diskIOPSReadOnly, long?diskMBpsReadOnly, int?maxShares, Encryption encryption, string networkAccessPolicy, string diskAccessId, string tier, bool?burstingEnabled, PurchasePlan purchasePlan, PropertyUpdatesInProgress 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();
 }
Example #18
0
 /// <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>
 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), PurchasePlan purchasePlan = default(PurchasePlan), 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))
     : 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;
     CustomInit();
 }