package org.ovirt.engine.core.vdsbroker.vdsbroker; import org.ovirt.engine.core.common.errors.*; import org.ovirt.engine.core.common.vdscommands.*; public class ConnectStoragePoolVDSCommand<P extends ConnectStoragePoolVDSCommandParameters> extends VdsBrokerCommand<P> { public ConnectStoragePoolVDSCommand(P parameters) { super(parameters); } @Override protected void ExecuteVdsBrokerCommand() { status = getBroker().connectStoragePool(getParameters().getStoragePoolId().toString(), getParameters().getvds_spm_id(), getParameters().getStoragePoolId().toString(), getParameters().getMasterDomainId().toString(), getParameters().getMasterVersion()); ProceedProxyReturnValue(); } // dont throw exception on errors except StoragePoolMasterNotFound for // master domain failure treatment @Override protected void ProceedProxyReturnValue() { VdcBllErrors returnStatus = GetReturnValueFromStatus(getReturnStatus()); switch (returnStatus) { case Done: case StoragePoolMasterNotFound: case StoragePoolTooManyMasters: case StoragePoolWrongMaster: super.ProceedProxyReturnValue(); break; default: getVDSReturnValue().setSucceeded(false); InitializeVdsError(returnStatus); break; } } }