/**
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for
* license information.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
*/
package com.microsoft.azure.management.compute;
import com.microsoft.azure.SubResource;
import com.fasterxml.jackson.annotation.JsonProperty;
/**
* Describes an Operating System disk.
*/
public class ImageOSDisk {
/**
* The Operating System type. Possible values include: 'Windows', 'Linux'.
*/
@JsonProperty(value = "osType", required = true)
private OperatingSystemTypes osType;
/**
* The OS State. Possible values include: 'Generalized', 'Specialized'.
*/
@JsonProperty(value = "osState", required = true)
private OperatingSystemStateTypes osState;
/**
* The snapshot.
*/
@JsonProperty(value = "snapshot")
private SubResource snapshot;
/**
* The managedDisk.
*/
@JsonProperty(value = "managedDisk")
private SubResource managedDisk;
/**
* The Virtual Hard Disk.
*/
@JsonProperty(value = "blobUri")
private String blobUri;
/**
* The caching type. Possible values include: 'None', 'ReadOnly',
* 'ReadWrite'.
*/
@JsonProperty(value = "caching")
private CachingTypes caching;
/**
* The initial managed disk size in GB for blank data disks, and the new
* desired size for existing OS and Data disks.
*/
@JsonProperty(value = "diskSizeGB")
private Integer diskSizeGB;
/**
* Get the osType value.
*
* @return the osType value
*/
public OperatingSystemTypes osType() {
return this.osType;
}
/**
* Set the osType value.
*
* @param osType the osType value to set
* @return the ImageOSDisk object itself.
*/
public ImageOSDisk withOsType(OperatingSystemTypes osType) {
this.osType = osType;
return this;
}
/**
* Get the osState value.
*
* @return the osState value
*/
public OperatingSystemStateTypes osState() {
return this.osState;
}
/**
* Set the osState value.
*
* @param osState the osState value to set
* @return the ImageOSDisk object itself.
*/
public ImageOSDisk withOsState(OperatingSystemStateTypes osState) {
this.osState = osState;
return this;
}
/**
* Get the snapshot value.
*
* @return the snapshot value
*/
public SubResource snapshot() {
return this.snapshot;
}
/**
* Set the snapshot value.
*
* @param snapshot the snapshot value to set
* @return the ImageOSDisk object itself.
*/
public ImageOSDisk withSnapshot(SubResource snapshot) {
this.snapshot = snapshot;
return this;
}
/**
* Get the managedDisk value.
*
* @return the managedDisk value
*/
public SubResource managedDisk() {
return this.managedDisk;
}
/**
* Set the managedDisk value.
*
* @param managedDisk the managedDisk value to set
* @return the ImageOSDisk object itself.
*/
public ImageOSDisk withManagedDisk(SubResource managedDisk) {
this.managedDisk = managedDisk;
return this;
}
/**
* Get the blobUri value.
*
* @return the blobUri value
*/
public String blobUri() {
return this.blobUri;
}
/**
* Set the blobUri value.
*
* @param blobUri the blobUri value to set
* @return the ImageOSDisk object itself.
*/
public ImageOSDisk withBlobUri(String blobUri) {
this.blobUri = blobUri;
return this;
}
/**
* Get the caching value.
*
* @return the caching value
*/
public CachingTypes caching() {
return this.caching;
}
/**
* Set the caching value.
*
* @param caching the caching value to set
* @return the ImageOSDisk object itself.
*/
public ImageOSDisk withCaching(CachingTypes caching) {
this.caching = caching;
return this;
}
/**
* Get the diskSizeGB value.
*
* @return the diskSizeGB value
*/
public Integer diskSizeGB() {
return this.diskSizeGB;
}
/**
* Set the diskSizeGB value.
*
* @param diskSizeGB the diskSizeGB value to set
* @return the ImageOSDisk object itself.
*/
public ImageOSDisk withDiskSizeGB(Integer diskSizeGB) {
this.diskSizeGB = diskSizeGB;
return this;
}
}