Example usage for org.hibernate.criterion Subqueries geAll

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

Introduction

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

Prototype

public static Criterion geAll(Object value, DetachedCriteria dc) 

Source Link

Document

Creates a criterion which checks that the value of a literal is greater-than-or-equal-to ALL the values in the subquery result.

Usage

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

License:Open Source License

public static SearchCriterion geAll(final Object value, final SearchCriteriaBuilder criteria) {
    return new SearchCriterionImpl(
            Subqueries.geAll(value, ((SearchCriteria) criteria).getHibernateDetachedCriteria()));
}

From source file:eu.cloud4soa.relational.persistence.SLAViolationRepository.java

License:Apache License

/**
 * Returns all sla violations for a given PaaS provider following
 * the following query:/*  w ww . j  a v  a  2  s .  c o  m*/
 * 
 * SELECT slaviolation.id
 *    FROM slaviolation
 *    WHERE slaviolation.idenforcementjob IN (
 *       SELECT enforcementjob.id
 *        FROM enforcementjob
 *        JOIN slacontract ON enforcementjob.idslacontract=slacontract.id
 *        WHERE slacontract.idprovider=XXX
 *    )
 * 
 * @param providerId the id of the PaaS provider
 * @return a list of SLAViolation objects
 */
public List<SLAViolation> retrieveAllForProvider(String providerId) {
    DetachedCriteria slap_criteria = DetachedCriteria.forClass(SLATemplate.class)
            .add(Restrictions.eq("serviceProvider", providerId)).setProjection(Projections.property("id"));

    DetachedCriteria enf_criteria = DetachedCriteria.forClass(SLAEnforcementJob.class)
            .add(Property.forName("slaContractId").in(slap_criteria)).setProjection(Projections.property("id"));

    return (List<SLAViolation>) getSession().createCriteria(SLAViolation.class)
            .add(Subqueries.geAll("slaEnforcementJobId", enf_criteria)).list();
}

From source file:eu.cloud4soa.relational.persistence.SLAViolationRepository.java

License:Apache License

/**
 * Returns all sla violations for a given PaaS offering following
 * the following query:// w  w  w.j  av a2 s . c o m
 * 
 * SELECT slaviolation.id
 *    FROM slaviolation
 *    WHERE slaviolation.idappinstance IN (
 *       SELECT idappinstance.id
 *        FROM idappinstance
 *        JOIN paas ON idappinstance.idpaas=paas.id
 *        WHERE paas.id=XXX
 *    )
 * 
 * @param offeringId the id of the PaaS offering
 * @return a list of SLAViolation objects
 */
public List<SLAViolation> retrieveAllForOffering(String offeringId) {
    DetachedCriteria pass_criteria = DetachedCriteria.forClass(Paas.class)
            .add(Restrictions.eq("url", offeringId));

    DetachedCriteria acc_criteria = DetachedCriteria.forClass(Account.class)
            .add(Property.forName("paas").in(pass_criteria));

    DetachedCriteria app_criteria = DetachedCriteria.forClass(ApplicationInstance.class)
            .add(Property.forName("account").in(acc_criteria)).setProjection(Projections.property("id"));

    return (List<SLAViolation>) getSession().createCriteria(SLAViolation.class)
            .add(Subqueries.geAll("applicationInstanceUriId", app_criteria)).list();
}