Example usage for org.hibernate.criterion Subqueries notIn

List of usage examples for org.hibernate.criterion Subqueries notIn

Introduction

In this page you can find the example usage for org.hibernate.criterion Subqueries notIn.

Prototype

public static Criterion notIn(Object value, DetachedCriteria dc) 

Source Link

Document

Creates a criterion which checks that the value of a literal is NOT IN the values in the subquery result.

Usage

From source file:com.qcadoo.model.api.search.SearchSubqueries.java

License:Open Source License

/**
 * Creates criterion which checks if given value doesn't exist in given subquery.
 * // w w  w .  j  ava 2s  .c o  m
 * @param value
 *            value
 * @param criteria
 *            subcriteria
 * @return criteria
 */
public static SearchCriterion notIn(final Object value, final SearchCriteriaBuilder criteria) {
    return new SearchCriterionImpl(
            Subqueries.notIn(value, ((SearchCriteria) criteria).getHibernateDetachedCriteria()));
}

From source file:org.hoteia.qalingo.core.dao.ProductDao.java

License:Apache License

public List<ProductSku> findProductSkusNotInThisMasterCatalogCategoryId(final Long categoryId,
        Object... params) {/*from   w w  w  . j  a v a 2s .c o m*/
    DetachedCriteria subquery = DetachedCriteria.forClass(ProductSku.class);
    subquery.createAlias("catalogCategoryMasterProductSkuRels", "catalogCategoryProductSkuRel",
            JoinType.LEFT_OUTER_JOIN);
    subquery.add(Restrictions.eq("catalogCategoryProductSkuRel.pk.catalogCategoryMaster.id", categoryId));
    subquery.setProjection(Projections.property("id"));

    Criteria criteria = createDefaultCriteria(ProductSku.class);
    handleSpecificProductSkuFetchMode(criteria, params);
    criteria.add(Subqueries.notIn("id", subquery));

    criteria.addOrder(Order.asc("id"));

    @SuppressWarnings("unchecked")
    List<ProductSku> productSkus = criteria.list();
    return productSkus;
}