List of usage examples for org.hibernate.criterion Subqueries geAll
public static Criterion geAll(Object value, DetachedCriteria dc)
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(); }