Example usage for org.hibernate Criteria add

List of usage examples for org.hibernate Criteria add

Introduction

In this page you can find the example usage for org.hibernate Criteria add.

Prototype

public Criteria add(Criterion criterion);

Source Link

Document

Add a Criterion restriction to constrain the results to be retrieved.

Usage

From source file:au.org.theark.core.dao.AuditDao.java

License:Open Source License

@SuppressWarnings("unchecked")
public List<LssConsentHistory> getLssConsentHistoryList(LinkSubjectStudy linkSubjectStudy) {
    Criteria criteria = getSession().createCriteria(LssConsentHistory.class);
    criteria.add(Restrictions.eq("linkSubjectStudy", linkSubjectStudy));
    criteria.addOrder(Order.desc("id"));
    return criteria.list();
}

From source file:au.org.theark.core.dao.AuditDao.java

License:Open Source License

@SuppressWarnings("unchecked")
public List<ConsentHistory> getConsentHistoryList(Consent consent) {
    Criteria criteria = getSession().createCriteria(ConsentHistory.class);
    criteria.add(Restrictions.eq("linkSubjectStudy", consent.getLinkSubjectStudy()));

    if (consent.getStudyComp() != null) {
        criteria.add(Restrictions.eq("studyComp", consent.getStudyComp()));
    } else {//  w w w  .j a  va  2  s.  co m
        criteria.add(Restrictions.isNull("studyComp"));
    }
    criteria.addOrder(Order.desc("id"));
    return criteria.list();
}

From source file:au.org.theark.core.dao.AuditDao.java

License:Open Source License

@Override
public boolean isAudited(Class<?> type) {
    Criteria criteria = getSession().createCriteria(AuditEntity.class);
    criteria.add(Restrictions.eq("classIdentifier", type.getName()));
    criteria.setProjection(Projections.rowCount());
    Long rowCount = (Long) criteria.uniqueResult();
    return rowCount != 0;
}

From source file:au.org.theark.core.dao.AuditDao.java

License:Open Source License

@Override
public String getFieldName(Class<?> cls, String field) {
    Criteria criteria = getSession().createCriteria(AuditField.class);
    criteria.add(Restrictions.eq("fieldName", field));
    criteria.createAlias("auditEntity", "ae");
    criteria.add(Restrictions.eq("ae.classIdentifier", cls.getCanonicalName()));
    criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
    return ((AuditField) criteria.uniqueResult()).getName();
}

From source file:au.org.theark.core.dao.CSVLoaderDao.java

License:Open Source License

public String getDelimiterTypeByDelimiterChar(char phenotypicDelimChr) {
    String delimiterTypeName = null;
    Criteria criteria = getSession().createCriteria(DelimiterType.class);
    criteria.add(Restrictions.eq("delimiterCharacter", delimiterCharacter));
    List<DelimiterType> results = criteria.list();
    if (results.size() > 0) {
        DelimiterType delimiterType = (DelimiterType) results.get(0);
        delimiterTypeName = delimiterType.getName();
    }//ww  w  . j  av a  2 s  .  c  om
    return delimiterTypeName;
}

From source file:au.org.theark.core.dao.DataExtractionDao.java

License:Open Source License

private String getPhenoCollectionName(String collectionID) {
    Criteria c = getSession().createCriteria(PhenoDataSetCollection.class, "p");
    c.add(Restrictions.eq("p.id", Long.parseLong(collectionID)));

    PhenoDataSetCollection pc = (PhenoDataSetCollection) c.uniqueResult();
    return pc.getQuestionnaire().getName();
}

From source file:au.org.theark.core.dao.StudyDao.java

License:Open Source License

@SuppressWarnings("unchecked")
public List<Study> getStudy(Study study) {

    Criteria studyCriteria = getSession().createCriteria(Study.class);

    if (study.getId() != null) {
        studyCriteria.add(Restrictions.eq(Constants.STUDY_KEY, study.getId()));
    }/*from   w  w w.ja  v a2s .c  o  m*/

    if (study.getName() != null) {
        studyCriteria.add(Restrictions.ilike(Constants.STUDY_NAME, study.getName(), MatchMode.ANYWHERE));
    }

    if (study.getDateOfApplication() != null) {
        studyCriteria.add(Restrictions.eq(Constants.DATE_OF_APPLICATION, study.getDateOfApplication()));
    }

    if (study.getEstimatedYearOfCompletion() != null) {
        studyCriteria
                .add(Restrictions.eq(Constants.EST_YEAR_OF_COMPLETION, study.getEstimatedYearOfCompletion()));
    }

    if (study.getChiefInvestigator() != null) {
        studyCriteria.add(Restrictions.ilike(Constants.CHIEF_INVESTIGATOR, study.getChiefInvestigator(),
                MatchMode.ANYWHERE));
    }

    if (study.getContactPerson() != null) {
        studyCriteria.add(
                Restrictions.ilike(Constants.CONTACT_PERSON, study.getContactPerson(), MatchMode.ANYWHERE));
    }

    if (study.getStudyStatus() != null) {
        studyCriteria.add(Restrictions.eq(Constants.STUDY_STATUS, study.getStudyStatus()));
        try {
            StudyStatus status = getStudyStatus("Archive");
            studyCriteria.add(Restrictions.ne(Constants.STUDY_STATUS, status));
        } catch (StatusNotAvailableException notAvailable) {
            log.error("Cannot look up and filter on archive status. Reference data could be missing");
        }
    } else {
        try {
            StudyStatus status = getStudyStatus("Archive");
            studyCriteria.add(Restrictions.ne(Constants.STUDY_STATUS, status));
        } catch (StatusNotAvailableException notAvailable) {
            log.error("Cannot look up and filter on archive status. Reference data could be missing");
        }

    }

    studyCriteria.addOrder(Order.asc(Constants.STUDY_NAME));
    List<Study> studyList = studyCriteria.list();

    return studyList;
}

From source file:au.org.theark.core.dao.StudyDao.java

License:Open Source License

/**
 * Look up the Link Subject Study for subjects linked to a study
 * /*  www  .  j ava  2 s  . com*/
 * @param subjectVO
 * @return
 */
@SuppressWarnings("unchecked")
public Collection<SubjectVO> getSubject(SubjectVO subjectVO) {
    Criteria criteria = getSession().createCriteria(LinkSubjectStudy.class);
    criteria.createAlias("person", "p");
    criteria.add(Restrictions.eq("study.id", subjectVO.getLinkSubjectStudy().getStudy().getId()));

    if (subjectVO.getLinkSubjectStudy().getPerson() != null) {

        if (subjectVO.getLinkSubjectStudy().getPerson().getId() != null) {
            criteria.add(Restrictions.eq("p.id", subjectVO.getLinkSubjectStudy().getPerson().getId()));
        }

        if (subjectVO.getLinkSubjectStudy().getPerson().getFirstName() != null) {
            criteria.add(Restrictions.ilike("p.firstName",
                    subjectVO.getLinkSubjectStudy().getPerson().getFirstName(), MatchMode.ANYWHERE));
        }

        if (subjectVO.getLinkSubjectStudy().getPerson().getMiddleName() != null) {
            criteria.add(Restrictions.ilike("p.middleName",
                    subjectVO.getLinkSubjectStudy().getPerson().getMiddleName(), MatchMode.ANYWHERE));
        }

        if (subjectVO.getLinkSubjectStudy().getPerson().getLastName() != null) {
            criteria.add(Restrictions.ilike("p.lastName",
                    subjectVO.getLinkSubjectStudy().getPerson().getLastName(), MatchMode.ANYWHERE));
        }

        if (subjectVO.getLinkSubjectStudy().getPerson().getDateOfBirth() != null) {
            criteria.add(Restrictions.eq("p.dateOfBirth",
                    subjectVO.getLinkSubjectStudy().getPerson().getDateOfBirth()));
        }

        if (subjectVO.getLinkSubjectStudy().getPerson().getGenderType() != null) {
            criteria.add(Restrictions.eq("p.genderType.id",
                    subjectVO.getLinkSubjectStudy().getPerson().getGenderType().getId()));
        }

        if (subjectVO.getLinkSubjectStudy().getPerson().getVitalStatus() != null) {
            criteria.add(Restrictions.eq("p.vitalStatus.id",
                    subjectVO.getLinkSubjectStudy().getPerson().getVitalStatus().getId()));
        }

    }

    if (subjectVO.getLinkSubjectStudy().getSubjectUID() != null
            && subjectVO.getLinkSubjectStudy().getSubjectUID().length() > 0) {
        criteria.add(Restrictions.eq("subjectUID", subjectVO.getLinkSubjectStudy().getSubjectUID()));
    }

    if (subjectVO.getLinkSubjectStudy().getSubjectStatus() != null) {
        criteria.add(Restrictions.eq("subjectStatus", subjectVO.getLinkSubjectStudy().getSubjectStatus()));
        SubjectStatus subjectStatus = getSubjectStatus("Archive");
        if (subjectStatus != null) {
            criteria.add(Restrictions.ne("subjectStatus", subjectStatus));
        }
    } else {
        SubjectStatus subjectStatus = getSubjectStatus("Archive");
        if (subjectStatus != null) {
            criteria.add(Restrictions.ne("subjectStatus", subjectStatus));
        }
    }

    criteria.addOrder(Order.asc("subjectUID"));
    List<LinkSubjectStudy> list = criteria.list();

    Collection<SubjectVO> subjectVOList = new ArrayList<SubjectVO>();

    for (Iterator iterator = list.iterator(); iterator.hasNext();) {

        LinkSubjectStudy linkSubjectStudy = (LinkSubjectStudy) iterator.next();
        // Place the LinkSubjectStudy instance into a SubjectVO and add the
        // SubjectVO into a List
        SubjectVO subject = new SubjectVO();
        subject.setLinkSubjectStudy(linkSubjectStudy);
        Person person = subject.getLinkSubjectStudy().getPerson();
        subject.setSubjectPreviousLastname(getPreviousLastname(person));
        subjectVOList.add(subject);
    }
    return subjectVOList;

}

From source file:au.org.theark.core.dao.StudyDao.java

License:Open Source License

@SuppressWarnings("unchecked")
public List<Phone> getPhonesForPerson(Person person) {
    Criteria personCriteria = getSession().createCriteria(Phone.class);
    personCriteria.add(Restrictions.eq("person", person));// Filter the
    // phones linked
    // to this//www .j  av  a 2s. c  o m
    // personID/Key
    return personCriteria.list();
}

From source file:au.org.theark.core.dao.StudyDao.java

License:Open Source License

@SuppressWarnings("unchecked")
public LinkSubjectStudy getLinkSubjectStudy(Long id) throws EntityNotFoundException {

    Criteria linkSubjectStudyCriteria = getSession().createCriteria(LinkSubjectStudy.class);
    linkSubjectStudyCriteria.add(Restrictions.eq("id", id));
    List<LinkSubjectStudy> listOfSubjects = linkSubjectStudyCriteria.list();
    if (listOfSubjects != null && listOfSubjects.size() > 0) {
        return listOfSubjects.get(0);
    } else {//from   w  ww. j a v a 2s  .c o  m
        throw new EntityNotFoundException("The entity with id" + id.toString() + " cannot be found.");
    }
}