package org.ovirt.engine.core.bll;
import javax.inject.Inject;
import org.ovirt.engine.core.common.businessentities.ArchitectureType;
import org.ovirt.engine.core.common.businessentities.ServerCpu;
import org.ovirt.engine.core.common.businessentities.VDS;
import org.ovirt.engine.core.common.queries.IdQueryParameters;
import org.ovirt.engine.core.dao.VdsDao;
public class GetHostArchitectureQuery<P extends IdQueryParameters> extends QueriesCommandBase<P> {
public GetHostArchitectureQuery(P parameters) {
super(parameters);
}
@Inject
protected CpuFlagsManagerHandler cpuFlagsManagerHandler;
@Inject
private VdsDao vdsDao;
@Override
protected void executeQueryCommand() {
VDS host = vdsDao.get(getParameters().getId());
ServerCpu sc =
cpuFlagsManagerHandler.findMaxServerCpuByFlags(host.getCpuFlags(),
host.getClusterCompatibilityVersion());
getQueryReturnValue().setReturnValue(sc == null ? ArchitectureType.undefined : sc.getArchitecture());
}
}