package org.ovirt.engine.core.vdsbroker.vdsbroker; import java.util.ArrayList; import java.util.List; import org.ovirt.engine.core.common.businessentities.VM; import org.ovirt.engine.core.common.vdscommands.GetVmsFromExternalProviderParameters; public class GetVmsNamesFromExternalProviderVDSCommand<T extends GetVmsFromExternalProviderParameters> extends VdsBrokerCommand<T> { private VMNamesListReturn vmListReturn; public GetVmsNamesFromExternalProviderVDSCommand(T parameters) { super(parameters); } @Override protected void executeVdsBrokerCommand() { vmListReturn = getBroker().getExternalVmNamesList(getParameters().getUrl(), getParameters().getUsername(), getParameters().getPassword()); proceedProxyReturnValue(); List<VM> vms = new ArrayList<>(); for (String vmName : vmListReturn.getNamesList()) { VM vm = new VM(); if (vmName != null) { vm.setName(vmName); vm.setOrigin(getParameters().getOriginType()); vms.add(vm); } } setReturnValue(vms); } @Override protected Status getReturnStatus() { return vmListReturn.getStatus(); } @Override protected Object getReturnValueFromBroker() { return vmListReturn; } }