package org.ovirt.engine.core.vdsbroker.vdsbroker; import java.util.List; import org.ovirt.engine.core.common.vdscommands.CreateVGVDSCommandParameters; import org.ovirt.engine.core.dal.dbbroker.DbFacade; import org.ovirt.engine.core.vdsbroker.irsbroker.OneUuidReturn; public class CreateVGVDSCommand<P extends CreateVGVDSCommandParameters> extends VdsBrokerCommand<P> { private OneUuidReturn result; public CreateVGVDSCommand(P parameters) { super(parameters, DbFacade.getInstance().getVdsDao().get(parameters.getVdsId())); } @Override protected void executeVdsBrokerCommand() { String storageDomainId = getParameters().getStorageDomainId().toString(); List<String> deviceList = getParameters().getDeviceList(); String[] deviceArray = deviceList.toArray(new String[deviceList.size()]); boolean isForce = getParameters().isForce(); result = getBroker().createVG(storageDomainId, deviceArray, isForce); proceedProxyReturnValue(); setReturnValue(result.uuid); } @Override protected Status getReturnStatus() { return result.getStatus(); } @Override protected Object getReturnValueFromBroker() { return result; } }