/// <summary> /// Initializes a new instance of the <see cref="ImageManagementAssetUpdateSpec" /> class. /// </summary> /// <param name="additionalDetails">Additional details about image management asset..</param> /// <param name="cloneType">Image management asset clone type. * FULL_CLONE: Image management asset to be used in full clone automated desktop pool. * INSTANT_CLONE: Image management asset to be used in instant clone desktop pool/farm. (required).</param> /// <param name="imageType">Image management asset image type. * RDSH_APPS: Image management asset to be used for farm creation which is be used in application. * RDSH_DESKTOP: Image management asset is for farm creation to be created. * VDI_DESKTOP: Image management asset is available for desktops/farms to be created. (required).</param> /// <param name="status">Image management asset status. * AVAILABLE: Image management asset is available for desktop pools/farms to be created. * DEPLOYING_VM: Image management asset is deploying VM on the virtual center. * DEPLOYMENT_DONE: Image management asset VM deployed on the virtual center. * DELETED: Image management asset has been deleted. * DISABLED: Image management asset has been disabled and no further pool/farm operation can be done using the same. * FAILED: Image management asset creation has failed. * REPLICATING: Copying the specialized images across all virtual centers. * RETRY_PENDING: When image management asset creation has failed, retry action is pending for asset to be created. * SPECIALIZING_VM: Image management asset is being published and specialized internally like installing agents etc. (required).</param> public ImageManagementAssetUpdateSpec(Dictionary <string, string> additionalDetails = default(Dictionary <string, string>), CloneTypeEnum cloneType = default(CloneTypeEnum), ImageTypeEnum imageType = default(ImageTypeEnum), StatusEnum status = default(StatusEnum)) { // to ensure "cloneType" is required (not null) if (cloneType == null) { throw new InvalidDataException("cloneType is a required property for ImageManagementAssetUpdateSpec and cannot be null"); } else { this.CloneType = cloneType; } // to ensure "imageType" is required (not null) if (imageType == null) { throw new InvalidDataException("imageType is a required property for ImageManagementAssetUpdateSpec and cannot be null"); } else { this.ImageType = imageType; } // to ensure "status" is required (not null) if (status == null) { throw new InvalidDataException("status is a required property for ImageManagementAssetUpdateSpec and cannot be null"); } else { this.Status = status; } this.AdditionalDetails = additionalDetails; }
/// <summary> /// Initializes a new instance of the <see cref="ImageManagementAssetCreateSpec" /> class. /// </summary> /// <param name="additionalDetails">Additional details about image management asset..</param> /// <param name="baseSnapshotId">Virtual machine snapshot. Must be set if vm_template_id is unset..</param> /// <param name="baseVmId">Virtual machine ID. Must be set if vm_template_id is unset..</param> /// <param name="cloneType">Image management asset clone type. * FULL_CLONE: Image management asset to be used in full clone automated desktop pool. * INSTANT_CLONE: Image management asset to be used in instant clone desktop pool/farm. (required).</param> /// <param name="imStreamId">Image management stream to which this asset belongs to. (required).</param> /// <param name="imVersionId">Image management version to which this asset belongs to. (required).</param> /// <param name="imageType">Image management asset image type. * RDSH_APPS: Image management asset to be used for farm creation which is be used in application. * RDSH_DESKTOP: Image management asset is for farm creation to be created. * VDI_DESKTOP: Image management asset is available for desktops/farms to be created. (required).</param> /// <param name="status">Image management asset status. * AVAILABLE: Image management asset is available for desktop pools/farms to be created. * DEPLOYING_VM: Image management asset is deploying VM on the virtual center. * DEPLOYMENT_DONE: Image management asset VM deployed on the virtual center. * DELETED: Image management asset has been deleted. * DISABLED: Image management asset has been disabled and no further pool/farm operation can be done using the same. * FAILED: Image management asset creation has failed. * REPLICATING: Copying the specialized images across all virtual centers. * RETRY_PENDING: When image management asset creation has failed, retry action is pending for asset to be created. * SPECIALIZING_VM: Image management asset is being published and specialized internally like installing agents etc. (required).</param> /// <param name="vcenterId">Virtual Center where this asset is created. (required).</param> /// <param name="vmTemplateId">Virtual machine template ID..</param> public ImageManagementAssetCreateSpec(Dictionary <string, string> additionalDetails = default(Dictionary <string, string>), string baseSnapshotId = default(string), string baseVmId = default(string), CloneTypeEnum cloneType = default(CloneTypeEnum), string imStreamId = default(string), string imVersionId = default(string), ImageTypeEnum imageType = default(ImageTypeEnum), StatusEnum status = default(StatusEnum), string vcenterId = default(string), string vmTemplateId = default(string)) { // to ensure "cloneType" is required (not null) if (cloneType == null) { throw new InvalidDataException("cloneType is a required property for ImageManagementAssetCreateSpec and cannot be null"); } else { this.CloneType = cloneType; } // to ensure "imStreamId" is required (not null) if (imStreamId == null) { throw new InvalidDataException("imStreamId is a required property for ImageManagementAssetCreateSpec and cannot be null"); } else { this.ImStreamId = imStreamId; } // to ensure "imVersionId" is required (not null) if (imVersionId == null) { throw new InvalidDataException("imVersionId is a required property for ImageManagementAssetCreateSpec and cannot be null"); } else { this.ImVersionId = imVersionId; } // to ensure "imageType" is required (not null) if (imageType == null) { throw new InvalidDataException("imageType is a required property for ImageManagementAssetCreateSpec and cannot be null"); } else { this.ImageType = imageType; } // to ensure "status" is required (not null) if (status == null) { throw new InvalidDataException("status is a required property for ImageManagementAssetCreateSpec and cannot be null"); } else { this.Status = status; } // to ensure "vcenterId" is required (not null) if (vcenterId == null) { throw new InvalidDataException("vcenterId is a required property for ImageManagementAssetCreateSpec and cannot be null"); } else { this.VcenterId = vcenterId; } this.AdditionalDetails = additionalDetails; this.BaseSnapshotId = baseSnapshotId; this.BaseVmId = baseVmId; this.VmTemplateId = vmTemplateId; }