/** * 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; import com.microsoft.azure.management.apigeneration.Beta; import com.microsoft.azure.management.resources.fluentcore.model.Refreshable; import rx.Observable; /** * Type that can be used to monitor encryption enable and disable status of a virtual machine. */ public interface DiskVolumeEncryptionMonitor extends Refreshable<DiskVolumeEncryptionMonitor> { /** * @return operating system type of the virtual machine */ OperatingSystemTypes osType(); /** * @return the encryption progress message */ String progressMessage(); /** * @return operating system disk encryption status */ EncryptionStatus osDiskStatus(); /** * @return data disks encryption status */ EncryptionStatus dataDiskStatus(); /** * @return observable that emits encryption status once the refresh is done */ @Beta Observable<DiskVolumeEncryptionMonitor> refreshAsync(); }