Ejemplo n.º 1
0
  @Override
  public List<UserVmVO> listByNetworkIdAndStates(long networkId, State... states) {
    if (UserVmSearch == null) {
      SearchBuilder<NicVO> nicSearch = _nicDao.createSearchBuilder();
      nicSearch.and("networkId", nicSearch.entity().getNetworkId(), SearchCriteria.Op.EQ);
      nicSearch.and().op("ip4Address", nicSearch.entity().getIp4Address(), SearchCriteria.Op.NNULL);
      nicSearch.or("ip6Address", nicSearch.entity().getIp6Address(), SearchCriteria.Op.NNULL);
      nicSearch.cp();

      UserVmSearch = createSearchBuilder();
      UserVmSearch.and("states", UserVmSearch.entity().getState(), SearchCriteria.Op.IN);
      UserVmSearch.join(
          "nicSearch",
          nicSearch,
          UserVmSearch.entity().getId(),
          nicSearch.entity().getInstanceId(),
          JoinBuilder.JoinType.INNER);
      UserVmSearch.done();
    }

    SearchCriteria<UserVmVO> sc = UserVmSearch.create();
    if (states != null && states.length != 0) {
      sc.setParameters("states", (Object[]) states);
    }
    sc.setJoinParameters("nicSearch", "networkId", networkId);

    return listBy(sc);
  }
Ejemplo n.º 2
0
  @PostConstruct
  void init() {
    AccountSearch = createSearchBuilder();
    AccountSearch.and("account", AccountSearch.entity().getAccountId(), SearchCriteria.Op.EQ);
    AccountSearch.done();

    HostSearch = createSearchBuilder();
    HostSearch.and("host", HostSearch.entity().getHostId(), SearchCriteria.Op.EQ);
    HostSearch.done();

    LastHostSearch = createSearchBuilder();
    LastHostSearch.and("lastHost", LastHostSearch.entity().getLastHostId(), SearchCriteria.Op.EQ);
    LastHostSearch.and("state", LastHostSearch.entity().getState(), SearchCriteria.Op.EQ);
    LastHostSearch.done();

    HostUpSearch = createSearchBuilder();
    HostUpSearch.and("host", HostUpSearch.entity().getHostId(), SearchCriteria.Op.EQ);
    HostUpSearch.and("states", HostUpSearch.entity().getState(), SearchCriteria.Op.NIN);
    HostUpSearch.done();

    HostRunningSearch = createSearchBuilder();
    HostRunningSearch.and("host", HostRunningSearch.entity().getHostId(), SearchCriteria.Op.EQ);
    HostRunningSearch.and("state", HostRunningSearch.entity().getState(), SearchCriteria.Op.EQ);
    HostRunningSearch.done();

    AccountPodSearch = createSearchBuilder();
    AccountPodSearch.and("account", AccountPodSearch.entity().getAccountId(), SearchCriteria.Op.EQ);
    AccountPodSearch.and(
        "pod", AccountPodSearch.entity().getPodIdToDeployIn(), SearchCriteria.Op.EQ);
    AccountPodSearch.done();

    AccountDataCenterSearch = createSearchBuilder();
    AccountDataCenterSearch.and(
        "account", AccountDataCenterSearch.entity().getAccountId(), SearchCriteria.Op.EQ);
    AccountDataCenterSearch.and(
        "dc", AccountDataCenterSearch.entity().getDataCenterId(), SearchCriteria.Op.EQ);
    AccountDataCenterSearch.done();

    StateChangeSearch = createSearchBuilder();
    StateChangeSearch.and("id", StateChangeSearch.entity().getId(), SearchCriteria.Op.EQ);
    StateChangeSearch.and("states", StateChangeSearch.entity().getState(), SearchCriteria.Op.EQ);
    StateChangeSearch.and("host", StateChangeSearch.entity().getHostId(), SearchCriteria.Op.EQ);
    StateChangeSearch.and("update", StateChangeSearch.entity().getUpdated(), SearchCriteria.Op.EQ);
    StateChangeSearch.done();

    DestroySearch = createSearchBuilder();
    DestroySearch.and("state", DestroySearch.entity().getState(), SearchCriteria.Op.IN);
    DestroySearch.and("updateTime", DestroySearch.entity().getUpdateTime(), SearchCriteria.Op.LT);
    DestroySearch.done();

    AccountHostSearch = createSearchBuilder();
    AccountHostSearch.and(
        "accountId", AccountHostSearch.entity().getAccountId(), SearchCriteria.Op.EQ);
    AccountHostSearch.and("hostId", AccountHostSearch.entity().getHostId(), SearchCriteria.Op.EQ);
    AccountHostSearch.done();

    CountByAccountPod = createSearchBuilder(Long.class);
    CountByAccountPod.select(null, Func.COUNT, null);
    CountByAccountPod.and(
        "account", CountByAccountPod.entity().getAccountId(), SearchCriteria.Op.EQ);
    CountByAccountPod.and(
        "pod", CountByAccountPod.entity().getPodIdToDeployIn(), SearchCriteria.Op.EQ);
    CountByAccountPod.done();

    CountByAccount = createSearchBuilder(Long.class);
    CountByAccount.select(null, Func.COUNT, null);
    CountByAccount.and("account", CountByAccount.entity().getAccountId(), SearchCriteria.Op.EQ);
    CountByAccount.and("type", CountByAccount.entity().getType(), SearchCriteria.Op.EQ);
    CountByAccount.and("state", CountByAccount.entity().getState(), SearchCriteria.Op.NIN);
    CountByAccount.done();

    SearchBuilder<NicVO> nicSearch = _nicDao.createSearchBuilder();
    nicSearch.and("networkId", nicSearch.entity().getNetworkId(), SearchCriteria.Op.EQ);
    nicSearch.and("ip4Address", nicSearch.entity().getIp4Address(), SearchCriteria.Op.NNULL);

    AccountDataCenterVirtualSearch = createSearchBuilder();
    AccountDataCenterVirtualSearch.and(
        "account", AccountDataCenterVirtualSearch.entity().getAccountId(), SearchCriteria.Op.EQ);
    AccountDataCenterVirtualSearch.and(
        "dc", AccountDataCenterVirtualSearch.entity().getDataCenterId(), SearchCriteria.Op.EQ);
    AccountDataCenterVirtualSearch.join(
        "nicSearch",
        nicSearch,
        AccountDataCenterVirtualSearch.entity().getId(),
        nicSearch.entity().getInstanceId(),
        JoinBuilder.JoinType.INNER);
    AccountDataCenterVirtualSearch.done();

    UserVmByIsoSearch = createSearchBuilder();
    UserVmByIsoSearch.and("isoId", UserVmByIsoSearch.entity().getIsoId(), SearchCriteria.Op.EQ);
    UserVmByIsoSearch.done();

    _updateTimeAttr = _allAttributes.get("updateTime");
    assert _updateTimeAttr != null : "Couldn't get this updateTime attribute";
  }