package org.ovirt.engine.core.vdsbroker.irsbroker; import org.ovirt.engine.core.compat.*; import org.ovirt.engine.core.common.vdscommands.*; public class DetachStorageDomainVDSCommand<P extends DetachStorageDomainVDSCommandParameters> extends IrsBrokerCommand<P> { public DetachStorageDomainVDSCommand(P parameters) { super(parameters); } @Override protected void ExecuteIrsBrokerCommand() { if (getParameters().getForce()) { try { status = getIrsProxy().forcedDetachStorageDomain(getParameters().getStorageDomainId().toString(), getParameters().getStoragePoolId().toString()); ProceedProxyReturnValue(); } catch (RuntimeException ex) { PrintReturnValue(); log.errorFormat("Could not force detach domain {0} on pool {1}. error: {2}", getParameters() .getStorageDomainId(), getParameters().getStoragePoolId(), ex.toString()); getVDSReturnValue().setSucceeded(false); } } else { status = getIrsProxy().detachStorageDomain(getParameters().getStorageDomainId().toString(), getParameters().getStoragePoolId().toString(), getParameters().getMasterStorageDomainId().toString(), getParameters().getMasterVersion()); ProceedProxyReturnValue(); } } private static LogCompat log = LogFactoryCompat.getLog(DetachStorageDomainVDSCommand.class); }