Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT License. See License.txt in the project root for license information.
/** * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for * license information. */
package com.microsoft.azure.management.compute.implementation; import com.microsoft.azure.SubResource; import com.microsoft.azure.management.apigeneration.LangDefinition; import com.microsoft.azure.management.compute.CachingTypes; import com.microsoft.azure.management.compute.Disk; import com.microsoft.azure.management.compute.ImageDataDisk; import com.microsoft.azure.management.compute.VirtualMachineCustomImage; import com.microsoft.azure.management.resources.fluentcore.arm.models.implementation.ChildResourceImpl;
The implementation for CustomImageDataDisk.
/** * The implementation for {@link VirtualMachineCustomImage.CustomImageDataDisk}. */
@LangDefinition class CustomImageDataDiskImpl extends ChildResourceImpl<ImageDataDisk, VirtualMachineCustomImageImpl, VirtualMachineCustomImage> implements VirtualMachineCustomImage.CustomImageDataDisk, VirtualMachineCustomImage.CustomImageDataDisk.Definition<VirtualMachineCustomImage.DefinitionStages.WithCreateAndDataDiskImageOSDiskSettings> { CustomImageDataDiskImpl(ImageDataDisk inner, VirtualMachineCustomImageImpl parent) { super(inner, parent); } @Override public CustomImageDataDiskImpl withDiskSizeInGB(int diskSizeGB) { this.inner().withDiskSizeGB(diskSizeGB); return this; } @Override public CustomImageDataDiskImpl withDiskCaching(CachingTypes cachingType) { this.inner().withCaching(cachingType); return this; } @Override public CustomImageDataDiskImpl withLun(int lun) { this.inner().withLun(lun); return this; } @Override public CustomImageDataDiskImpl fromVhd(String sourceVhdUrl) { this.inner().withBlobUri(sourceVhdUrl); return this; } @Override public CustomImageDataDiskImpl fromSnapshot(String sourceSnapshotId) { this.inner().withSnapshot(new SubResource().withId(sourceSnapshotId)); return this; } @Override public CustomImageDataDiskImpl fromManagedDisk(String sourceManagedDiskId) { this.inner().withManagedDisk(new SubResource().withId(sourceManagedDiskId)); return this; } @Override public CustomImageDataDiskImpl fromManagedDisk(Disk sourceManagedDisk) { this.inner().withManagedDisk(new SubResource().withId(sourceManagedDisk.id())); return this; } @Override public String name() { return Integer.toString(this.inner().lun()); } @Override public VirtualMachineCustomImageImpl attach() { return this.parent().withCustomImageDataDisk(this); } }