List of usage examples for org.hibernate.criterion DetachedCriteria getExecutableCriteria
public Criteria getExecutableCriteria(Session session)
From source file:org.openehealth.ipf.commons.flow.repository.FlowRepositoryImpl.java
License:Apache License
private Object execute(FlowFinderCriteria flowFinderCriteria, DetachedCriteria flowStatusCriteria, Session session, boolean idProjection) { Criteria criteria = flowStatusCriteria.getExecutableCriteria(session); if (idProjection) { criteria.setProjection(Projections.id()); }/*from w w w . j a va 2 s .com*/ int maxResults = flowFinderCriteria.getMaxResults(); if (maxResults != FlowFinderCriteria.DEFAULT_MAX_RESULTS) { criteria.setMaxResults(maxResults); } if (flowFinderCriteria.hasMessageQuery()) { FlowSearchCriteria flowSearchCriteria = new FlowSearchCriteria(); flowSearchCriteria.setHibernateCriteria(criteria); flowSearchCriteria.setInboundMessageQuery(flowFinderCriteria.getInboundMessageQuery()); flowSearchCriteria.setOutboundMessageQuery(flowFinderCriteria.getOutboundMessageQuery()); return flowSearchCallback.findFlows(session, flowSearchCriteria); } else { return criteria.list(); } }
From source file:org.openehealth.ipf.commons.flow.repository.FlowRepositoryImpl.java
License:Apache License
private Object execute(FlowPurgeCriteria flowPurgeCriteria, DetachedCriteria flowStatusCriteria, Session session) {// ww w .ja va 2 s. c o m Criteria criteria = flowStatusCriteria.getExecutableCriteria(session); int purgeCount = flowPurgeCriteria.getMaxPurgeCount(); if (purgeCount != FlowPurgeCriteria.DEFAULT_MAX_PURGE_COUNT) { // Setting max results adds "fetch first 100 rows only" to the select query // Works on Derby version 1.5.x and above with Hibernate version 3.5.x and above criteria.setMaxResults(purgeCount); } return criteria.list(); }
From source file:org.opengoss.dao.hibernate.DataAccessor.java
License:Apache License
public List findByCriteria(final DetachedCriteria criteria, final int firstResult, final int maxResults) throws DaoException { return (List) execute(new IAccessorCallback() { public Object call(Session session) throws HibernateException { Criteria executableCriteria = criteria.getExecutableCriteria(session); if (firstResult >= 0) { executableCriteria.setFirstResult(firstResult); }//from ww w.jav a 2 s . c om if (maxResults > 0) { executableCriteria.setMaxResults(maxResults); } return executableCriteria.list(); } }); }
From source file:org.openremote.beehive.api.service.impl.GenericDAO.java
License:Open Source License
/** * Find persistent instances by DetachedCriteria in pagination. * /* www .j a v a 2 s . c o m*/ * @param <T> * a persistent generics * @param detachedCriteria * DetachedCriteria * @param pageSize * page size * @param startPos * start position * @return persistent instances to find */ @SuppressWarnings("unchecked") public <T> List<T> findPagedDateByDetachedCriteria(final DetachedCriteria detachedCriteria, final int pageSize, final int startPos) { return (List<T>) getHibernateTemplate().execute(new HibernateCallback() { public Object doInHibernate(Session session) throws HibernateException, SQLException { Criteria criteria = detachedCriteria.getExecutableCriteria(session); criteria.setMaxResults(pageSize).setFirstResult(startPos); return criteria.list(); } }, true); }
From source file:org.openremote.beehive.api.service.impl.GenericDAO.java
License:Open Source License
/** * Counts By DetachedCriteria/* www. j a va 2 s . c o m*/ * * @param detachedCriteria * must have Projections.count * @return the count */ public int countByDetachedCriteria(final DetachedCriteria detachedCriteria) { return Integer.valueOf(getHibernateTemplate().execute(new HibernateCallback() { public Object doInHibernate(Session session) throws HibernateException, SQLException { Criteria criteria = detachedCriteria.getExecutableCriteria(session); return criteria.uniqueResult(); } }, true).toString()); }
From source file:org.openremote.modeler.dao.GenericDAO.java
License:Open Source License
/** * Find persistent instances by DetachedCriteria in pagination. * //from www.j a va 2 s. co m * @param detachedCriteria DetachedCriteria * @param pageSize page size * @param startPos start position * @param <T> t * * @return persistent instances to find */ @SuppressWarnings("unchecked") public <T> List<T> findPagedDateByDetachedCriteria(final DetachedCriteria detachedCriteria, final int pageSize, final int startPos) { return (List<T>) getHibernateTemplate().execute(new HibernateCallback() { public Object doInHibernate(Session session) throws SQLException { Criteria criteria = detachedCriteria.getExecutableCriteria(session); criteria.setMaxResults(pageSize).setFirstResult(startPos); return criteria.list(); } }, true); }
From source file:org.openremote.modeler.dao.GenericDAO.java
License:Open Source License
/** * Counts By DetachedCriteria./*from www. j a v a2s . c o m*/ * * @param detachedCriteria must have Projections.count * * @return the count */ public int countByDetachedCriteria(final DetachedCriteria detachedCriteria) { return Integer.valueOf(getHibernateTemplate().execute(new HibernateCallback() { public Object doInHibernate(Session session) throws SQLException { Criteria criteria = detachedCriteria.getExecutableCriteria(session); return criteria.uniqueResult(); } }, true).toString()); }
From source file:org.reusables.access.AbstractHibernateRepository.java
License:Apache License
/** * @param criteria The criteria to use for the query. * @return The result found./* w w w .j a va2 s.c o m*/ */ protected List<T> findByCriteria(final DetachedCriteria criteria) // TODO support first, max results, TODO different entity class. TODO cachable boolean { return criteria.getExecutableCriteria(getSession()).list(); }
From source file:org.sakaiproject.scorm.dao.hibernate.AttemptDaoImpl.java
License:Educational Community License
protected Attempt uniqueResult(final DetachedCriteria criteria) { return (Attempt) getHibernateTemplate().execute(new HibernateCallback() { public Object doInHibernate(Session session) throws HibernateException, SQLException { Criteria s = criteria.getExecutableCriteria(session); return s.uniqueResult(); }/*from ww w.java 2 s . c o m*/ }); }
From source file:org.springframework.orm.hibernate3.HibernateTemplate.java
License:Apache License
@Override public List<?> findByCriteria(final DetachedCriteria criteria, final int firstResult, final int maxResults) throws DataAccessException { Assert.notNull(criteria, "DetachedCriteria must not be null"); return executeWithNativeSession(new HibernateCallback<List<?>>() { @Override/* w w w . j a v a2s . c o m*/ @SuppressWarnings("unchecked") public List<?> doInHibernate(Session session) throws HibernateException { Criteria executableCriteria = criteria.getExecutableCriteria(session); prepareCriteria(executableCriteria); if (firstResult >= 0) { executableCriteria.setFirstResult(firstResult); } if (maxResults > 0) { executableCriteria.setMaxResults(maxResults); } return executableCriteria.list(); } }); }