List of usage examples for org.hibernate.criterion Projections property
public static PropertyProjection property(String propertyName)
From source file:es.emergya.bbdd.dao.PatrullaHome.java
License:Open Source License
@SuppressWarnings("unchecked") @Transactional(propagation = Propagation.REQUIRES_NEW, readOnly = true, rollbackFor = Throwable.class) public List<String> getAllNames() { List<String> icons = new ArrayList<String>(0); try {//from w w w . ja va 2s. co m Session currentSession = getSession(); currentSession.clear(); icons = (List<String>) currentSession.createCriteria(Patrulla.class) .setProjection(Projections.property("nombre")).addOrder(Order.asc("nombre")) .setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY).list(); } catch (Throwable t) { log.error(t, t); } return icons; }
From source file:es.emergya.bbdd.dao.RecursoHome.java
License:Open Source License
/** * Devuelve todos los recursos que tienen posiciones en HistoricoGPS ms * antiguas que lmite.//from w w w.j a v a2s. com * * @param limite * @return */ @SuppressWarnings("unchecked") @Transactional(readOnly = true, rollbackFor = Throwable.class, propagation = Propagation.REQUIRES_NEW) public List<Recurso> getTodas(Calendar limite) { List<Recurso> res = new ArrayList<Recurso>(); try { Session currentSession = getSession(); currentSession.clear(); DetachedCriteria dc = DetachedCriteria.forClass(HistoricoGPS.class) .setProjection(Projections.property("recurso")) .add(Restrictions.le("marcaTemporal", limite.getTime())) .setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY); final Criteria query = currentSession.createCriteria(Recurso.class) .add(Subqueries.propertyIn("identificador", dc)).addOrder(Order.asc("identificador")); if (log.isDebugEnabled()) log.debug(query); res = query.list(); // Para evitar LazyInicializationException accedemos a // todas las flotas de los recursos devueltos ya que en // los lugares en los que se usa esta funcin es necerasio // tambin la flota. for (Recurso uniqueResult : res) { if (uniqueResult != null) { if (uniqueResult.getFlotas() != null) { uniqueResult.getFlotas().getId(); } } } } catch (Throwable t) { log.error("Sacando los recursos para generar los gpx", t); } return res; }
From source file:es.emergya.bbdd.dao.RolHome.java
License:Open Source License
@SuppressWarnings("unchecked") @Transactional(propagation = Propagation.REQUIRES_NEW, readOnly = true, rollbackFor = Throwable.class) public List<String> getAllString() { Session currentSession = getSession(); currentSession.clear();//from ww w . j a va 2 s.c om Criteria criteria = currentSession.createCriteria(Rol.class) .setProjection(Projections.distinct(Projections.property("nombre"))).addOrder(Order.asc("nombre")) .setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY); return criteria.list(); }
From source file:es.emergya.bbdd.dao.RoutingHome.java
License:Open Source License
/** * Devuelve la lista de num calles que encajan con el patrn * /*from w w w . j av a 2s . co m*/ * @param pattern * @param num * @return list of streets */ @SuppressWarnings("unchecked") @Transactional(readOnly = true, rollbackFor = Throwable.class) public List<String> find(final String pattern, final Integer num) { List<String> lista = new ArrayList<String>(); try { lista = getSession().createCriteria(Routing.class) .setProjection(Projections.distinct(Projections.property("name"))).setMaxResults(num) .add(Restrictions.ilike("name", pattern)).addOrder(Order.asc("name")).list(); } catch (Exception e) { log.error("Error al buscar las calles :" + pattern, e); } return lista; }
From source file:es.emergya.bbdd.dao.RoutingHome.java
License:Open Source License
/** * Devuelve null si hay algn error./*from www .ja va 2 s . c om*/ * * @param origen * @param destino * @return */ @SuppressWarnings("unchecked") @Transactional(readOnly = true, rollbackFor = Throwable.class) public MultiLineString calculateRoute(final Point origen, final Point destino, final funcion f) { log.trace("calculateRoute(" + origen + ", " + destino + ", " + f + ")"); MultiLineString resultado = null; try { Long origin = getVertex(origen, false); Long goal = getVertex(destino, true); List<Long> ids = new ArrayList<Long>(0); if (origin != null && goal != null) switch (f) { case SIMPLE: ids = getSimpleGid(origin, goal); break; case SHOOTING_STAR: ids = shortest_path_shooting_star(origin, goal); break; } if (ids.size() > 0) { Session currentSession = getSession(); final Criteria criteria = currentSession.createCriteria(Routing.class) .add(Restrictions.in("id", ids)).setProjection(Projections.property("geometria")); log.trace(criteria); List<Object> lineas = criteria.list(); List<LineString> lineStrings = new LinkedList<LineString>(); for (Object m : lineas) { if (m instanceof MultiLineString) for (int i = 0; i < ((MultiLineString) m).getNumGeometries(); i++) lineStrings.add((LineString) ((MultiLineString) m).getGeometryN(i)); else if (m instanceof LineString) lineStrings.add((LineString) m); else log.error("Devuelto alto extrao: " + m); } resultado = new MultiLineString(lineStrings.toArray(new LineString[0]), new GeometryFactory()); resultado.setSRID(4326); if (log.isTraceEnabled()) log.trace("Resultado: " + resultado); } } catch (Throwable t) { log.error("Error al calcular la ruta", t); resultado = null; } return resultado; }
From source file:es.sm2.openppm.core.dao.ProjectActivityDAO.java
License:Open Source License
/** * List not assigned activities to seller * /*ww w.j av a 2s . co m*/ * @param seller * @param project * @param order * @return */ @SuppressWarnings("unchecked") public List<Object[]> consNoAssignedActivities(Seller seller, Project project, Order... order) { Criteria usedCrit = getSession().createCriteria(getPersistentClass()) .setProjection(Projections.property(Projectactivity.IDACTIVITY)) .add(Restrictions.eq(Projectactivity.PROJECT, project)); usedCrit.createCriteria(Projectactivity.ACTIVITYSELLERS) .add(Restrictions.eq(Activityseller.SELLER, seller)); List<Projectactivity> lista = usedCrit.list(); Criteria crit = getSession().createCriteria(getPersistentClass()) .setProjection(Projections.projectionList().add(Projections.property(Projectactivity.IDACTIVITY)) .add(Projections.property(Projectactivity.ACTIVITYNAME))) .add(Restrictions.eq(Projectactivity.PROJECT, project)); crit.createCriteria(Projectactivity.WBSNODE).add(Restrictions.eq(Wbsnode.ISCONTROLACCOUNT, true)); if (!lista.isEmpty()) { crit.add(Restrictions.not(Restrictions.in(Projectactivity.IDACTIVITY, lista))); } for (Order o : order) { crit.addOrder(o); } return crit.list(); }
From source file:es.sm2.openppm.core.dao.ProjectassociationDAO.java
License:Open Source License
/** * Find child for update dates//from ww w . j av a2s .c om * @param proj * @return */ @SuppressWarnings("unchecked") public List<Project> findChilds(Project proj) { Criteria crit = getSession().createCriteria(getPersistentClass()); crit.setProjection(Projections.property(Projectassociation.PROJECTBYLEAD)); crit.add(Restrictions.eq(Projectassociation.PROJECTBYDEPENDENT, proj)); crit.add(Restrictions.eq(Projectassociation.UPDATEDATES, true)); crit.createCriteria(Projectassociation.PROJECTBYLEAD) .add(Restrictions.eq(Project.STATUS, Constants.STATUS_INITIATING)); return crit.list(); }
From source file:es.sm2.openppm.core.dao.ProjectassociationDAO.java
License:Open Source License
/** * Find parents for update dates of child * @param proj// w ww . j a va2s.com * @return */ @SuppressWarnings("unchecked") public List<Project> findParents(Project proj) { Criteria crit = getSession().createCriteria(getPersistentClass()); crit.setProjection(Projections.property(Projectassociation.PROJECTBYDEPENDENT)); crit.add(Restrictions.eq(Projectassociation.PROJECTBYLEAD, proj)); crit.add(Restrictions.eq(Projectassociation.UPDATEDATES, true)); crit.createCriteria(Projectassociation.PROJECTBYDEPENDENT); return crit.list(); }
From source file:es.sm2.openppm.core.dao.ProjectDAO.java
License:Open Source License
/** * Consult list of projects by seller//from w ww . ja v a 2 s .co m * * @param seller * @return */ @SuppressWarnings("unchecked") public List<String> findBySeller(Seller seller) { Criteria crit = getSession().createCriteria(getPersistentClass()); crit.setProjection(Projections.property(Project.PROJECTNAME)); crit.createCriteria(Project.PROJECTACTIVITIES).createCriteria(Projectactivity.ACTIVITYSELLERS) .add(Restrictions.eq(Activityseller.SELLER, seller)); crit.addOrder(Order.asc(Project.PROJECTNAME)); return crit.list(); }
From source file:eu.cloud4soa.relational.persistence.BreachRepository.java
License:Apache License
public List<Breach> 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")); try {//from ww w. j a v a 2 s. c o m return (List<Breach>) getSession().createCriteria(Breach.class) .add(Subqueries.eq("applicationInstanceUriId", app_criteria)).list(); } catch (Exception e) { return new ArrayList<Breach>(); } }