/* * Copyright (c) 2012-2015 iWave Software LLC * All Rights Reserved */ package com.emc.sa.service.windows.tasks; import java.util.Collection; import org.apache.commons.lang.StringUtils; import com.emc.sa.service.windows.WindowsUtils; public class VerifyMountPointHostDriveIsMounted extends WindowsExecutionTask<Void> { private final Collection<String> assignedMountPoints; private final String driveletter; public VerifyMountPointHostDriveIsMounted(String mountpoint, Collection<String> assignedMountPoints) { logDebug("verify.mount.host.drive.letter.mountpoint", mountpoint); this.driveletter = WindowsUtils.getDriveLetterFromMountPath(mountpoint); logInfo("verify.mount.host.drive.letter", driveletter); logDebug("verify.mount.host.assigned", StringUtils.join(assignedMountPoints, ", ")); this.assignedMountPoints = assignedMountPoints; provideDetailArgs(driveletter); } @Override public void execute() throws Exception { if (!assignedMountPoints.contains(driveletter + ":")) { throw stateException("illegalState.VerifyMountPointHostDriveIsMounted.notMounted"); } } }