public List getPendingDmRequestByName()

in src/main/java/com/google/gcs/sdrs/dao/impl/DmQueueDaoImpl.java [83:114]


  public List<DmRequest> getPendingDmRequestByName(String dataStorageName, String projectId) {
    if (dataStorageName == null || projectId == null) {
      return null;
    }
    Session session = null;
    List<DmRequest> result = null;
    try {
      session = openSession();
      CriteriaBuilder builder = session.getCriteriaBuilder();
      CriteriaQuery<DmRequest> query = builder.createQuery(DmRequest.class);
      Root<DmRequest> root = query.from(DmRequest.class);

      query
          .select(root)
          .where(
              builder.equal(root.get("dataStorageName"), dataStorageName),
              builder.equal(root.get("projectId"), projectId),
              builder.or(
                  builder.equal(root.get("status"), DatabaseConstants.DM_REQUEST_STATUS_PENDING),
                  builder.equal(root.get("status"), DatabaseConstants.DM_REQUEST_STATUS_SCHEDULED),
                  builder.equal(root.get("status"), DatabaseConstants.DM_REQUEST_STATIUS_RETRY)));

      result = session.createQuery(query).getResultList();
      closeSession(session);
    } catch (Exception e) {
      handleRuntimeException(e, null);
    } finally{
       closeSession(session);
    }

    return result;
  }