bug 9274: listPublicIpAddresses - don't list Direct ip addresses by default; list them only when "forVirtualNetwork=false" is specified in the request.

status 9274: resolved fixed
This commit is contained in:
alena 2011-04-04 15:40:31 -07:00
parent a47a4c8cfe
commit 6736569d22
1 changed files with 9 additions and 7 deletions

View File

@ -2580,11 +2580,9 @@ public class ManagementServerImpl implements ManagementServer {
sb.and("addressLIKE", sb.entity().getAddress(), SearchCriteria.Op.LIKE);
}
if (forVirtualNetwork != null) {
SearchBuilder<VlanVO> vlanSearch = _vlanDao.createSearchBuilder();
vlanSearch.and("vlanType", vlanSearch.entity().getVlanType(), SearchCriteria.Op.EQ);
sb.join("vlanSearch", vlanSearch, sb.entity().getVlanId(), vlanSearch.entity().getId(), JoinBuilder.JoinType.INNER);
}
SearchBuilder<VlanVO> vlanSearch = _vlanDao.createSearchBuilder();
vlanSearch.and("vlanType", vlanSearch.entity().getVlanType(), SearchCriteria.Op.EQ);
sb.join("vlanSearch", vlanSearch, sb.entity().getVlanId(), vlanSearch.entity().getId(), JoinBuilder.JoinType.INNER);
if ((isAllocated != null) && (isAllocated == true)) {
sb.and("allocated", sb.entity().getAllocatedTime(), SearchCriteria.Op.NNULL);
@ -2598,10 +2596,14 @@ public class ManagementServerImpl implements ManagementServer {
sc.setJoinParameters("domainSearch", "path", domain.getPath() + "%");
}
VlanType vlanType = null;
if (forVirtualNetwork != null) {
VlanType vlanType = (Boolean) forVirtualNetwork ? VlanType.VirtualNetwork : VlanType.DirectAttached;
sc.setJoinParameters("vlanSearch", "vlanType", vlanType);
vlanType = (Boolean) forVirtualNetwork ? VlanType.VirtualNetwork : VlanType.DirectAttached;
} else {
vlanType = VlanType.VirtualNetwork;
}
sc.setJoinParameters("vlanSearch", "vlanType", vlanType);
if (zone != null) {
sc.setParameters("dataCenterId", zone);