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.phenotypic.model.dao.PhenotypicDao.java

License:Open Source License

@Override
public List<PickedPhenoDataSetCategory> getAllParentPickedPhenoDataSetCategories(Study study,
        ArkFunction arkFunction, ArkUser arkUser) {
    Criteria criteria = getSession().createCriteria(PickedPhenoDataSetCategory.class);
    criteria.add(Restrictions.eq("arkFunction", arkFunction));
    criteria.add(Restrictions.eq("study", study));
    criteria.add(Restrictions.eq("arkUser", arkUser));
    criteria.add(Restrictions.isNull("parentPickedPhenoDataSetCategory"));
    criteria.addOrder(Order.asc("orderNumber"));
    return (List<PickedPhenoDataSetCategory>) criteria.list();
}

From source file:au.org.theark.phenotypic.model.dao.PhenotypicDao.java

License:Open Source License

@Override
public List<LinkPhenoDataSetCategoryField> getLinkPhenoDataSetCategoryFieldsForPickedPhenoDataSetCategory(
        PickedPhenoDataSetCategory pickedPhenoDataSetCategory) {
    Criteria criteria = getSession().createCriteria(LinkPhenoDataSetCategoryField.class);
    criteria.add(Restrictions.eq("study", pickedPhenoDataSetCategory.getStudy()));
    criteria.add(Restrictions.eq("arkFunction", pickedPhenoDataSetCategory.getArkFunction()));
    criteria.add(Restrictions.eq("arkUser", pickedPhenoDataSetCategory.getArkUser()));
    criteria.add(Restrictions.eq("phenoDataSetCategory", pickedPhenoDataSetCategory.getPhenoDataSetCategory()));
    criteria.addOrder(Order.asc("orderNumber"));
    return (List<LinkPhenoDataSetCategoryField>) criteria.list();
}

From source file:au.org.theark.phenotypic.model.dao.PhenotypicDao.java

License:Open Source License

@Override
public PhenoDataSetCategory getPhenoDataFieldCategoryByNameStudyAndArkFunction(String name, Study study,
        ArkFunction arkFunction) {// ww  w  .  ja v  a  2  s.  co  m
    Criteria criteria = getSession().createCriteria(PhenoDataSetCategory.class);
    criteria.add(Restrictions.eq("name", name));
    criteria.add(Restrictions.eq("study", study));
    criteria.add(Restrictions.eq("arkFunction", arkFunction));
    return (PhenoDataSetCategory) criteria.uniqueResult();
}

From source file:au.org.theark.phenotypic.model.dao.PhenotypicDao.java

License:Open Source License

@Override
public PhenoDataSetField getPhenoDataSetFieldByNameStudyArkFunction(String name, Study study,
        ArkFunction arkFunction) {/*from   w  w  w. j a v  a2 s . c o  m*/
    Criteria criteria = getSession().createCriteria(PhenoDataSetField.class);
    criteria.add(Restrictions.eq("name", name));
    criteria.add(Restrictions.eq("study", study));
    criteria.add(Restrictions.eq("arkFunction", arkFunction));
    return (PhenoDataSetField) criteria.uniqueResult();
}

From source file:au.org.theark.phenotypic.model.dao.PhenotypicDao.java

License:Open Source License

/**
 * This return both categories and the fields of phenodatasetfieldsDisplay tables.
 * Note:Not only the fields.          //from  w w  w.j ava2 s  .c  o m
 */
@Override
public List<PhenoDataSetFieldDisplay> getPhenoDataSetFieldDisplayForPhenoDataSetFieldGroup(
        PhenoDataSetGroup phenoDataSetGroup) {
    Criteria criteria = getSession().createCriteria(PhenoDataSetFieldDisplay.class);
    criteria.add(Restrictions.eq("phenoDataSetGroup", phenoDataSetGroup));
    //Ordering first from the category and then from the field
    criteria.addOrder(Order.asc("phenoDataSetCategoryOrderNumber"))
            .addOrder(Order.asc("phenoDataSetFiledOrderNumber"));
    return criteria.list();
}

From source file:au.org.theark.phenotypic.model.dao.PhenotypicDao.java

License:Open Source License

@Override
public void deletePickedCategoriesAndAllTheirChildren(Study study, ArkFunction arkFunction, ArkUser arkUser) {
    //Delete all fields
    Criteria criteriaField = getSession().createCriteria(LinkPhenoDataSetCategoryField.class);
    criteriaField.add(Restrictions.eq("study", study));
    criteriaField.add(Restrictions.eq("arkFunction", arkFunction));
    criteriaField.add(Restrictions.eq("arkUser", arkUser));
    List<LinkPhenoDataSetCategoryField> linkPhenoDataSetCategoryFields = (List<LinkPhenoDataSetCategoryField>) criteriaField
            .list();//  w ww . j a  v  a 2 s.  c  o m
    for (LinkPhenoDataSetCategoryField linkPhenoDataSetCategoryField : linkPhenoDataSetCategoryFields) {
        getSession().delete(linkPhenoDataSetCategoryField);
    }
    //Delete all categories.
    Criteria criteriaCategory = getSession().createCriteria(PickedPhenoDataSetCategory.class);
    criteriaCategory.add(Restrictions.eq("study", study));
    criteriaCategory.add(Restrictions.eq("arkFunction", arkFunction));
    criteriaCategory.add(Restrictions.eq("arkUser", arkUser));
    List<PickedPhenoDataSetCategory> pickedPhenoDataSetCategories = (List<PickedPhenoDataSetCategory>) criteriaCategory
            .list();
    for (PickedPhenoDataSetCategory pickedPhenoDataSetCategory : pickedPhenoDataSetCategories) {
        getSession().delete(pickedPhenoDataSetCategory);
    }
    getSession().flush();
}

From source file:au.org.theark.phenotypic.model.dao.PhenotypicDao.java

License:Open Source License

@Override
public long getPhenoFieldGroupCount(Study study, ArkFunction arkFunction, Boolean status) {
    // Handle for study or function not in context
    /*if (phenoDataSetGroup.getStudy() == null || phenoDataSetGroup.getArkFunction() == null) {
       return 0L;// w  w  w  .  j a v  a  2s .  c  o  m
    }*/
    //Criteria criteria = buildGenericPhenoFieldGroupCriteria(phenoDataSetGroup);
    Criteria criteria = getSession().createCriteria(PhenoDataSetGroup.class);
    criteria.add(Restrictions.eq("study", study));
    criteria.add(Restrictions.eq("arkFunction", arkFunction));
    criteria.add(Restrictions.eq("published", true));
    criteria.setProjection(Projections.rowCount());
    Long totalCount = (Long) criteria.uniqueResult();
    return totalCount;
}

From source file:au.org.theark.phenotypic.model.dao.PhenotypicDao.java

License:Open Source License

private Criteria buildGenericPhenoFieldGroupCriteria(PhenoDataSetGroup phenoDataSetGroup) {

    Criteria criteria = getSession().createCriteria(PhenoDataSetGroup.class);

    criteria.add(Restrictions.eq("study", phenoDataSetGroup.getStudy()));
    criteria.add(Restrictions.eq("arkFunction", phenoDataSetGroup.getArkFunction()));

    if (phenoDataSetGroup.getName() != null) {
        criteria.add(Restrictions.ilike("name", phenoDataSetGroup.getName(), MatchMode.ANYWHERE));
    }/*from   w  w  w . ja  v a  2 s .  c om*/

    if (phenoDataSetGroup.getPublished() != null) {
        criteria.add(Restrictions.eq("published", phenoDataSetGroup.getPublished()));
    }
    return criteria;

}

From source file:au.org.theark.phenotypic.model.dao.PhenotypicDao.java

License:Open Source License

@Override
public List<PhenoDataSetFieldDisplay> getPhenoDataSetFieldDisplayForPhenoDataSetFieldGroupOrderByPhenoDataSetCategory(
        PhenoDataSetGroup phenoDataSetGroup) {
    Criteria criteria = getSession().createCriteria(PhenoDataSetFieldDisplay.class);
    criteria.add(Restrictions.eq("phenoDataSetGroup", phenoDataSetGroup));
    ProjectionList projectionList = Projections.projectionList();
    projectionList.add(Projections.groupProperty("phenoDataSetGroup"), "phenoDataSetGroup");
    projectionList.add(Projections.groupProperty("phenoDataSetCategory"), "phenoDataSetCategory");
    projectionList.add(Projections.groupProperty("parentPhenoDataSetCategory"), "parentPhenoDataSetCategory");
    projectionList.add(Projections.groupProperty("phenoDataSetCategoryOrderNumber"),
            "phenoDataSetCategoryOrderNumber");
    criteria.setProjection(projectionList);
    criteria.addOrder(Order.asc("phenoDataSetCategoryOrderNumber"));
    criteria.setResultTransformer(Transformers.aliasToBean(PhenoDataSetFieldDisplay.class));
    return (List<PhenoDataSetFieldDisplay>) criteria.list();
}

From source file:au.org.theark.phenotypic.model.dao.PhenotypicDao.java

License:Open Source License

@Override
public List<PhenoDataSetField> getPhenoDataSetFieldsLinkedToPhenoDataSetFieldGroupAndPhenoDataSetCategory(
        PhenoDataSetGroup phenoDataSetGroupCriteria, PhenoDataSetCategory phenoDataSetCategory) {
    Criteria criteria = getSession().createCriteria(PhenoDataSetFieldDisplay.class);
    criteria.add(Restrictions.eq("phenoDataSetGroup", phenoDataSetGroupCriteria));
    criteria.add(Restrictions.eq("phenoDataSetCategory", phenoDataSetCategory));
    criteria.add(Restrictions.isNotNull("phenoDataSetField"));
    criteria.addOrder(Order.asc("phenoDataSetFiledOrderNumber"));
    List<PhenoDataSetFieldDisplay> phenoDataSetFieldDisplays = (List<PhenoDataSetFieldDisplay>) criteria.list();
    List<PhenoDataSetField> phenoDataSetFields = new ArrayList<PhenoDataSetField>();
    for (PhenoDataSetFieldDisplay phenoDataSetFieldDisplay : phenoDataSetFieldDisplays) {
        phenoDataSetFields.add(phenoDataSetFieldDisplay.getPhenoDataSetField());
    }//from   w w  w .j  ava 2  s  .com
    return phenoDataSetFields;
}