fix related to 38d6c4e7e7d7535e08f1e45dad0f4e5fd1eb2239

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
This commit is contained in:
Abhishek Kumar 2024-09-13 17:40:20 +05:30
parent 1d47e4d4ae
commit 97ddd17f94

View File

@ -546,14 +546,19 @@ public class VMTemplateDaoImpl extends GenericDaoBase<VMTemplateVO, Long> implem
@Override
public List<VMTemplateVO> listAllReadySystemVMTemplates(Long zoneId) {
List<HypervisorType> availableHypervisors = _hostDao.findDistinctHypervisorTypesForZone(zoneId);
if (CollectionUtils.isEmpty(availableHypervisors)) {
return Collections.emptyList();
List<HypervisorType> availableHypervisors = null;
if (zoneId != null) {
availableHypervisors = _hostDao.findDistinctHypervisorTypesForZone(zoneId);
if (CollectionUtils.isEmpty(availableHypervisors)) {
return Collections.emptyList();
}
}
SearchCriteria<VMTemplateVO> sc = readySystemTemplateSearch.create();
sc.setParameters("templateType", Storage.TemplateType.SYSTEM);
sc.setParameters("state", VirtualMachineTemplate.State.Active);
sc.setParameters("hypervisorType", availableHypervisors.toArray());
if (CollectionUtils.isNotEmpty(availableHypervisors)) {
sc.setParameters("hypervisorType", availableHypervisors.toArray());
}
sc.setJoinParameters("vmTemplateJoinTemplateStoreRef", "downloadState",
List.of(VMTemplateStorageResourceAssoc.Status.DOWNLOADED,
VMTemplateStorageResourceAssoc.Status.BYPASSED).toArray());