mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
Fix VGPU available devices listing (#9573)
* Fix VGPU available devices listing * Missing space * Refactor
This commit is contained in:
parent
0204cb75e3
commit
abaf4b52ad
@ -22,6 +22,7 @@ import javax.persistence.Column;
|
||||
|
||||
import com.cloud.utils.Pair;
|
||||
import com.cloud.utils.ReflectUtil;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
/**
|
||||
* Try to use static initialization to help you in finding incorrect
|
||||
@ -59,6 +60,11 @@ public class Filter {
|
||||
_orderBy = " ORDER BY RAND() LIMIT " + limit;
|
||||
}
|
||||
|
||||
public Filter(Long offset, Long limit) {
|
||||
_offset = offset;
|
||||
_limit = limit;
|
||||
}
|
||||
|
||||
/**
|
||||
* Note that this copy constructor does not copy offset and limit.
|
||||
* @param that filter
|
||||
@ -70,6 +76,10 @@ public class Filter {
|
||||
}
|
||||
|
||||
public void addOrderBy(Class<?> clazz, String field, boolean ascending) {
|
||||
addOrderBy(clazz, field, ascending, null);
|
||||
}
|
||||
|
||||
public void addOrderBy(Class<?> clazz, String field, boolean ascending, String tableAlias) {
|
||||
if (field == null) {
|
||||
return;
|
||||
}
|
||||
@ -83,7 +93,9 @@ public class Filter {
|
||||
String name = column != null ? column.name() : field;
|
||||
|
||||
StringBuilder order = new StringBuilder();
|
||||
if (column == null || column.table() == null || column.table().length() == 0) {
|
||||
if (StringUtils.isNotBlank(tableAlias)) {
|
||||
order.append(tableAlias);
|
||||
} else if (column == null || column.table() == null || column.table().length() == 0) {
|
||||
order.append(DbUtil.getTableName(clazz));
|
||||
} else {
|
||||
order.append(column.table());
|
||||
|
||||
@ -3417,7 +3417,8 @@ public class ResourceManagerImpl extends ManagerBase implements ResourceManager,
|
||||
|
||||
@Override
|
||||
public List<HostGpuGroupsVO> listAvailableGPUDevice(final long hostId, final String groupName, final String vgpuType) {
|
||||
final Filter searchFilter = new Filter(VGPUTypesVO.class, "remainingCapacity", false, null, null);
|
||||
Filter searchFilter = new Filter(null, null);
|
||||
searchFilter.addOrderBy(VGPUTypesVO.class, "remainingCapacity", false, "groupId");
|
||||
final SearchCriteria<HostGpuGroupsVO> sc = _gpuAvailability.create();
|
||||
sc.setParameters("hostId", hostId);
|
||||
sc.setParameters("groupName", groupName);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user