package org.ovirt.engine.core.bll; import javax.inject.Inject; import org.ovirt.engine.core.common.businessentities.VM; import org.ovirt.engine.core.common.businessentities.VmPool; import org.ovirt.engine.core.common.queries.IdQueryParameters; import org.ovirt.engine.core.common.queries.NameQueryParameters; import org.ovirt.engine.core.common.queries.VdcQueryReturnValue; import org.ovirt.engine.core.common.queries.VdcQueryType; import org.ovirt.engine.core.dao.VmPoolDao; public class GetVmDataByPoolNameQuery<P extends NameQueryParameters> extends QueriesCommandBase<P> { @Inject private VmPoolDao vmPoolDao; public GetVmDataByPoolNameQuery(P parameters) { super(parameters); } @Override protected void executeQueryCommand() { VM vm = null; VmPool vmpool = vmPoolDao.getByName(getParameters().getName()); if (vmpool != null) { VdcQueryReturnValue getVmRet = backend.runInternalQuery(VdcQueryType.GetVmDataByPoolId, new IdQueryParameters(vmpool.getVmPoolId())); if (getVmRet != null) { vm = getVmRet.getReturnValue(); } } getQueryReturnValue().setReturnValue(vm); } }