mirror of https://github.com/apache/cloudstack.git
bug 9195: don't return domR/SSVM/CPVM volumes in listVolumes api response
status 9195: resolved fixed Conflicts: server/src/com/cloud/api/ApiResponseHelper.java server/src/com/cloud/server/ManagementServerImpl.java
This commit is contained in:
parent
7a3a56b118
commit
f9a575a657
|
|
@ -782,12 +782,9 @@ public class ApiResponseHelper implements ResponseGenerator {
|
|||
VMInstanceVO vm = ApiDBUtils.findVMInstanceById(instanceId);
|
||||
volResponse.setVirtualMachineId(vm.getId());
|
||||
volResponse.setVirtualMachineName(vm.getHostName());
|
||||
if(vm.getType().equals(VirtualMachine.Type.User)) {
|
||||
UserVm userVm = ApiDBUtils.findUserVmById(vm.getId());
|
||||
volResponse.setVirtualMachineDisplayName(userVm.getDisplayName());
|
||||
}else {
|
||||
volResponse.setVirtualMachineDisplayName(vm.getHostName());
|
||||
}
|
||||
UserVm userVm = ApiDBUtils.findUserVmById(vm.getId());
|
||||
volResponse.setVirtualMachineDisplayName(userVm.getDisplayName());
|
||||
|
||||
volResponse.setVirtualMachineState(vm.getState().toString());
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -2430,11 +2430,6 @@ public class ManagementServerImpl implements ManagementServer {
|
|||
sb.and("dataCenterId", sb.entity().getDataCenterId(), SearchCriteria.Op.EQ);
|
||||
sb.and("podId", sb.entity().getPodId(), SearchCriteria.Op.EQ);
|
||||
|
||||
// Don't return DomR and ConsoleProxy volumes
|
||||
sb.and("domRNameLabel", sb.entity().getName(), SearchCriteria.Op.NLIKE);
|
||||
sb.and("domPNameLabel", sb.entity().getName(), SearchCriteria.Op.NLIKE);
|
||||
sb.and("domSNameLabel", sb.entity().getName(), SearchCriteria.Op.NLIKE);
|
||||
|
||||
// Only return volumes that are not destroyed
|
||||
sb.and("state", sb.entity().getState(), SearchCriteria.Op.NEQ);
|
||||
|
||||
|
|
@ -2451,8 +2446,13 @@ public class ManagementServerImpl implements ManagementServer {
|
|||
SearchBuilder<DomainVO> domainSearch = _domainDao.createSearchBuilder();
|
||||
domainSearch.and("path", domainSearch.entity().getPath(), SearchCriteria.Op.EQ);
|
||||
sb.join("domainSearch", domainSearch, sb.entity().getDomainId(), domainSearch.entity().getId(), JoinBuilder.JoinType.INNER);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//display user vm volumes only
|
||||
SearchBuilder<VMInstanceVO> vmSearch = _vmInstanceDao.createSearchBuilder();
|
||||
vmSearch.and("type", vmSearch.entity().getType(), SearchCriteria.Op.NIN);
|
||||
sb.join("vmSearch", vmSearch, sb.entity().getInstanceId(), vmSearch.entity().getId(), JoinBuilder.JoinType.INNER);
|
||||
|
||||
// now set the SC criteria...
|
||||
SearchCriteria<VolumeVO> sc = sb.create();
|
||||
if (keyword != null) {
|
||||
|
|
@ -2496,11 +2496,8 @@ public class ManagementServerImpl implements ManagementServer {
|
|||
}
|
||||
|
||||
// Don't return DomR and ConsoleProxy volumes
|
||||
/*
|
||||
* sc.setParameters("domRNameLabel", "r-%"); sc.setParameters("domPNameLabel", "v-%"); sc.setParameters("domSNameLabel",
|
||||
* "s-%");
|
||||
*/
|
||||
|
||||
sc.setJoinParameters("vmSearch", "type", VirtualMachine.Type.ConsoleProxy, VirtualMachine.Type.SecondaryStorageVm, VirtualMachine.Type.DomainRouter);
|
||||
|
||||
// Only return volumes that are not destroyed
|
||||
sc.setParameters("state", Volume.State.Destroy);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue