package org.ovirt.engine.core.bll; import java.util.ArrayList; import java.util.List; import javax.inject.Inject; import org.ovirt.engine.core.bll.context.EngineContext; import org.ovirt.engine.core.common.businessentities.VmDevice; import org.ovirt.engine.core.common.businessentities.VmDeviceGeneralType; import org.ovirt.engine.core.common.businessentities.VmHostDevice; import org.ovirt.engine.core.common.queries.IdQueryParameters; import org.ovirt.engine.core.dao.VmDeviceDao; public class GetVmHostDevicesQuery<P extends IdQueryParameters> extends QueriesCommandBase<P> { @Inject VmDeviceDao vmDeviceDao; public GetVmHostDevicesQuery(P parameters) { super(parameters); } public GetVmHostDevicesQuery(P parameters, EngineContext engineContext) { super(parameters, engineContext); } @Override protected void executeQueryCommand() { List<VmHostDevice> result = new ArrayList<>(); List<VmDevice> vmHostDevices = vmDeviceDao.getVmDeviceByVmIdAndType( getParameters().getId(), VmDeviceGeneralType.HOSTDEV); for (VmDevice device : vmHostDevices) { result.add(new VmHostDevice(device)); } setReturnValue(result); } }