protected List<LoadBalancerVO> findExistingLoadBalancers(final String lbName, final Long ipId, final Long accountId, final Long domainId, final Integer publicPort) { final SearchBuilder<LoadBalancerVO> sb = _lbDao.createSearchBuilder(); sb.and("name", sb.entity().getName(), SearchCriteria.Op.EQ); sb.and("accountId", sb.entity().getAccountId(), SearchCriteria.Op.EQ); sb.and("publicPort", sb.entity().getSourcePortStart(), SearchCriteria.Op.EQ); if (ipId != null) { sb.and("sourceIpAddress", sb.entity().getSourceIpAddressId(), SearchCriteria.Op.EQ); } if (domainId != null) { sb.and("domainId", sb.entity().getDomainId(), SearchCriteria.Op.EQ); } if (publicPort != null) { sb.and("publicPort", sb.entity().getSourcePortStart(), SearchCriteria.Op.EQ); } final SearchCriteria<LoadBalancerVO> sc = sb.create(); sc.setParameters("name", lbName); sc.setParameters("accountId", accountId); if (ipId != null) { sc.setParameters("sourceIpAddress", ipId); } if (domainId != null) { sc.setParameters("domainId", domainId); } if (publicPort != null) { sc.setParameters("publicPort", publicPort); } final List<LoadBalancerVO> lbs = _lbDao.search(sc, null); return lbs == null || lbs.size() == 0 ? null : lbs; }
@PostConstruct protected void init() { AllFieldsSearch = createSearchBuilder(); AllFieldsSearch.and("ipId", AllFieldsSearch.entity().getIpAddressId(), SearchCriteria.Op.EQ); AllFieldsSearch.and("lbId", AllFieldsSearch.entity().getLbId(), SearchCriteria.Op.EQ); AllFieldsSearch.and("elbVmId", AllFieldsSearch.entity().getElbVmId(), SearchCriteria.Op.EQ); AllFieldsSearch.done(); ElbVmSearch = _routerDao.createSearchBuilder(); ElbVmSearch.and("role", ElbVmSearch.entity().getRole(), SearchCriteria.Op.EQ); UnusedVmSearch = createSearchBuilder(); UnusedVmSearch.and("elbVmId", UnusedVmSearch.entity().getElbVmId(), SearchCriteria.Op.NULL); ElbVmSearch.join("UnusedVmSearch", UnusedVmSearch, ElbVmSearch.entity().getId(), UnusedVmSearch.entity().getElbVmId(), JoinType.LEFTOUTER); ElbVmSearch.done(); UnusedVmSearch.done(); LoadBalancerSearch = _loadbalancerDao.createSearchBuilder(); LoadBalancersForElbVmSearch = createSearchBuilder(); LoadBalancersForElbVmSearch.and("elbVmId", LoadBalancersForElbVmSearch.entity().getElbVmId(), SearchCriteria.Op.EQ); LoadBalancerSearch.join("LoadBalancersForElbVm", LoadBalancersForElbVmSearch, LoadBalancerSearch.entity().getId(), LoadBalancersForElbVmSearch.entity().getLbId(), JoinType.INNER); LoadBalancersForElbVmSearch.done(); LoadBalancerSearch.done(); }
SearchBuilder<LoadBalancerVO> sb = _lbDao.createSearchBuilder(); _accountMgr.buildACLSearchBuilder(sb, domainId, isRecursive, permittedAccounts, listProjectResourcesCriteria);
final SearchBuilder<LoadBalancerVO> lbSearch = _loadbalancerDao.createSearchBuilder(); sb.join("lbSearch", lbSearch, sb.entity().getId(), lbSearch.entity().getSourceIpAddressId(), JoinType.INNER); sb.groupBy(sb.entity().getId());