List of usage examples for org.hibernate.criterion DetachedCriteria addOrder
public DetachedCriteria addOrder(Order order)
From source file:org.infoscoop.dao.StaticTabDAO.java
License:Open Source License
/** * Get all static tabs without commandBar and portalHeader. * @return//from w w w.j a v a 2 s .c o m */ public List getStaticTabList() { DetachedCriteria c = DetachedCriteria.forClass(StaticTab.class); c.add(Expression.eq(StaticTab.PROP_DELETEFLAG, StaticTab.DELETEFLAG_FALSE)); c.add(Expression.ne(StaticTab.PROP_ID, StaticTab.COMMANDBAR_TAB_ID)); c.add(Expression.ne(StaticTab.PROP_ID, StaticTab.PORTALHEADER_TAB_ID)); c.createAlias(TabAdmin.REF, "ta", CriteriaSpecification.LEFT_JOIN); c.addOrder(Order.asc(StaticTab.PROP_TABNUMBER)); return super.getHibernateTemplate().findByCriteria(c); }
From source file:org.infoscoop.dao.StaticTabDAO.java
License:Open Source License
/** * Get all static tabs with commandBar and portalHeader. * @return/*from w w w . ja v a2s . c om*/ */ public List getAllStaicLayoutList() { DetachedCriteria c = DetachedCriteria.forClass(StaticTab.class); c.add(Expression.eq(StaticTab.PROP_DELETEFLAG, StaticTab.DELETEFLAG_FALSE)); c.createAlias(TabAdmin.REF, "ta", CriteriaSpecification.LEFT_JOIN); c.addOrder(Order.asc(StaticTab.PROP_TABNUMBER)); return super.getHibernateTemplate().findByCriteria(c); }
From source file:org.infoscoop.dao.StaticTabDAO.java
License:Open Source License
/** * get tabId list without commandbar and portalHeader. * /*from ww w .ja v a 2 s. com*/ * @return */ public List getTabIdList() { DetachedCriteria c = DetachedCriteria.forClass(StaticTab.class); c.add(Expression.ne(StaticTab.PROP_ID, StaticTab.COMMANDBAR_TAB_ID)); c.add(Expression.ne(StaticTab.PROP_ID, StaticTab.PORTALHEADER_TAB_ID)); c.add(Expression.eq(StaticTab.PROP_DELETEFLAG, StaticTab.DELETEFLAG_FALSE)); c.setProjection(Projections.property("Tabid")); c.addOrder(Order.asc(StaticTab.PROP_TABNUMBER)); return super.getHibernateTemplate().findByCriteria(c); }
From source file:org.jspresso.framework.model.persistence.hibernate.criterion.DefaultCriteriaFactory.java
License:Open Source License
/** * {@inheritDoc}//from w w w . ja v a 2 s .c om */ @SuppressWarnings("ConstantConditions") @Override public void completeCriteriaWithOrdering(EnhancedDetachedCriteria criteria, IQueryComponent queryComponent, Map<String, Object> context) { criteria.setProjection(null); criteria.setResultTransformer(CriteriaSpecification.ROOT_ENTITY); // complete sorting properties if (queryComponent.getOrderingProperties() != null) { for (Map.Entry<String, ESort> orderingProperty : queryComponent.getOrderingProperties().entrySet()) { String propertyName = orderingProperty.getKey(); String[] propElts = propertyName.split("\\."); DetachedCriteria orderingCriteria = criteria; boolean sortable = true; if (propElts.length > 1) { IComponentDescriptor<?> currentCompDesc = queryComponent.getQueryDescriptor(); int i = 0; List<String> path = new ArrayList<>(); for (; sortable && i < propElts.length - 1; i++) { IReferencePropertyDescriptor<?> refPropDescriptor = ((IReferencePropertyDescriptor<?>) currentCompDesc .getPropertyDescriptor(propElts[i])); if (refPropDescriptor != null) { sortable = sortable && isSortable(refPropDescriptor); if (EntityHelper.isInlineComponentReference(refPropDescriptor)) { break; } currentCompDesc = refPropDescriptor.getReferencedDescriptor(); path.add(propElts[i]); } else { LOG.error("Ordering property {} not found on {}", propElts[i], currentCompDesc.getComponentContract().getName()); sortable = false; } } if (sortable) { StringBuilder name = new StringBuilder(); for (int j = i; sortable && j < propElts.length; j++) { IPropertyDescriptor propDescriptor = currentCompDesc.getPropertyDescriptor(propElts[j]); sortable = sortable && isSortable(propDescriptor); if (j < propElts.length - 1) { currentCompDesc = ((IReferencePropertyDescriptor<?>) propDescriptor) .getReferencedDescriptor(); } if (j > i) { name.append("."); } name.append(propElts[j]); } if (sortable) { for (String pathElt : path) { if (isUseAliasesForJoins()) { orderingCriteria = criteria.getSubCriteriaFor(orderingCriteria, pathElt, pathElt, JoinType.LEFT_OUTER_JOIN); } else { orderingCriteria = criteria.getSubCriteriaFor(orderingCriteria, pathElt, JoinType.LEFT_OUTER_JOIN); } } propertyName = name.toString(); } } } else { IPropertyDescriptor propertyDescriptor = queryComponent.getQueryDescriptor() .getPropertyDescriptor(propertyName); if (propertyDescriptor != null) { sortable = isSortable(propertyDescriptor); } else { LOG.error("Ordering property {} not found on {}", propertyName, queryComponent.getQueryDescriptor().getComponentContract().getName()); sortable = false; } } if (sortable) { Order order; switch (orderingProperty.getValue()) { case DESCENDING: order = Order.desc(PropertyHelper.toJavaBeanPropertyName(propertyName)); break; case ASCENDING: default: order = Order.asc(PropertyHelper.toJavaBeanPropertyName(propertyName)); } orderingCriteria.addOrder(order); } } } // Query should always be ordered to preserve pagination. criteria.addOrder(Order.desc(IEntity.ID)); }
From source file:org.linagora.linshare.core.repository.hibernate.AllowedMimeTypeRepositoryImpl.java
License:Open Source License
@Override protected DetachedCriteria getNaturalKeyCriteria(AllowedMimeType entity) { DetachedCriteria det = DetachedCriteria.forClass(AllowedMimeType.class); det.add(Restrictions.eq("id", entity.getId())); det.addOrder(Order.asc("mimetype")); return det;/*from w w w . ja v a2s . com*/ }
From source file:org.linagora.linshare.core.repository.hibernate.LogEntryRepositoryImpl.java
License:Open Source License
public List<LogEntry> findByCriteria(LogCriteriaBean logCriteria, String domainId) { DetachedCriteria criteria = DetachedCriteria.forClass(LogEntry.class); if (CollectionUtils.isNotEmpty(logCriteria.getActorMails())) { Disjunction or = Restrictions.disjunction(); for (String mail : logCriteria.getActorMails()) { if (StringUtils.isNotBlank(mail)) or.add(Restrictions.like("actorMail", mail, MatchMode.ANYWHERE)); }/*from w ww . j a v a 2s . c om*/ criteria.add(or); } if (CollectionUtils.isNotEmpty(logCriteria.getTargetMails())) { Disjunction or = Restrictions.disjunction(); for (String mail : logCriteria.getTargetMails()) { if (StringUtils.isNotBlank(mail)) or.add(Restrictions.like("targetMail", mail, MatchMode.ANYWHERE)); } criteria.add(or); } if (StringUtils.isNotBlank(logCriteria.getActorFirstname())) { criteria.add(Restrictions.like("actorFirstname", logCriteria.getActorFirstname(), MatchMode.ANYWHERE) .ignoreCase()); } if (StringUtils.isNotBlank(logCriteria.getActorLastname()) && (logCriteria.getActorLastname().length() > 0)) { criteria.add(Restrictions.like("actorLastname", logCriteria.getActorLastname(), MatchMode.ANYWHERE) .ignoreCase()); } if (StringUtils.isNotBlank(domainId)) { criteria.add(Restrictions.like("actorDomain", domainId)); } else if (StringUtils.isNotBlank(logCriteria.getActorDomain())) { criteria.add(Restrictions.like("actorDomain", logCriteria.getActorDomain())); } if (StringUtils.isNotBlank(logCriteria.getTargetFirstname())) { criteria.add(Restrictions.like("targetFirstname", logCriteria.getTargetFirstname(), MatchMode.ANYWHERE) .ignoreCase()); } if (StringUtils.isNotBlank(logCriteria.getTargetLastname())) { criteria.add(Restrictions.like("targetLastname", logCriteria.getTargetLastname(), MatchMode.ANYWHERE) .ignoreCase()); } if (StringUtils.isNotBlank(logCriteria.getTargetDomain())) { criteria.add(Restrictions.like("targetDomain", logCriteria.getTargetDomain())); } if (CollectionUtils.isNotEmpty(logCriteria.getLogActions())) { criteria.add(Restrictions.in("logAction", logCriteria.getLogActions())); } if (logCriteria.getBeforeDate() != null) { criteria.add(Restrictions.gt("actionDate", logCriteria.getBeforeDate())); } if (logCriteria.getAfterDate() != null) { criteria.add(Restrictions.lt("actionDate", logCriteria.getAfterDate())); } if (StringUtils.isNotBlank(logCriteria.getFileName())) { if (logCriteria.getFileNameMatchMode().equals(CriterionMatchMode.ANYWHERE)) { criteria.add( Restrictions.like("fileName", logCriteria.getFileName(), MatchMode.ANYWHERE).ignoreCase()); } else { criteria.add( Restrictions.like("fileName", logCriteria.getFileName(), MatchMode.ANYWHERE).ignoreCase()); } } if (StringUtils.isNotBlank(logCriteria.getFileExtension())) { criteria.add(Restrictions.like("fileName", logCriteria.getFileExtension(), MatchMode.END).ignoreCase()); } criteria.addOrder(Order.desc("actionDate")); return findBy(criteria); }
From source file:org.linagora.linshare.core.repository.hibernate.MailingListRepositoryImpl.java
License:Open Source License
@Override public List<MailingList> searchMyListWithInput(User user, String input) { DetachedCriteria det = DetachedCriteria.forClass(getPersistentClass()); det.add(Restrictions.and(Restrictions.eq("owner", user), Restrictions.like("identifier", "%" + input + "%").ignoreCase())); det.addOrder(Property.forName("identifier").desc()); return findByCriteria(det); }
From source file:org.linagora.linshare.core.repository.hibernate.MailingListRepositoryImpl.java
License:Open Source License
@Override public List<MailingList> searchListWithInput(User user, String input) { DetachedCriteria det = DetachedCriteria.forClass(getPersistentClass()); if (user.isSuperAdmin()) { det.add(Restrictions.like("identifier", "%" + input + "%").ignoreCase()); } else {/* w w w . j a v a 2 s . com*/ // all public lists that belong to my domain. LogicalExpression allPublicLists = Restrictions.and(Restrictions.eq("isPublic", true), Restrictions.eq("domain", user.getDomain())); // we exclude my personal lists. LogicalExpression allMyDomainPublicLists = Restrictions.and(allPublicLists, Restrictions.ne("owner", user)); // adding all private and public lists that belong to me, to the // public // lists. LogicalExpression allMyLists = Restrictions.or(Restrictions.eq("owner", user), allMyDomainPublicLists); det.add(Restrictions.and(allMyLists, Restrictions.like("identifier", "%" + input + "%").ignoreCase())); } det.addOrder(Property.forName("identifier").desc()); return findByCriteria(det); }
From source file:org.linagora.linshare.core.repository.hibernate.MailingListRepositoryImpl.java
License:Open Source License
@Override public List<MailingList> searchWithInputByVisibility(User user, boolean isPublic, String input) { DetachedCriteria det = DetachedCriteria.forClass(getPersistentClass()); if (isPublic == false) { if (user.isSuperAdmin()) { det.add(Restrictions.and(Restrictions.like("identifier", "%" + input + "%").ignoreCase(), Restrictions.eq("isPublic", false))); } else {/*from www . j ava 2 s.com*/ LogicalExpression publicLists = Restrictions.and(Restrictions.eq("owner", user), Restrictions.eq("isPublic", false)); det.add(Restrictions.and(Restrictions.like("identifier", "%" + input + "%").ignoreCase(), publicLists)); } } else { if (user.isSuperAdmin()) { det.add(Restrictions.and(Restrictions.like("identifier", "%" + input + "%").ignoreCase(), Restrictions.eq("isPublic", true))); } else { LogicalExpression privateLists = Restrictions.and(Restrictions.eq("isPublic", true), Restrictions.eq("domain", user.getDomain())); det.add(Restrictions.and(Restrictions.like("identifier", "%" + input + "%").ignoreCase(), privateLists)); } } det.addOrder(Property.forName("identifier").desc()); return findByCriteria(det); }
From source file:org.linagora.linshare.core.repository.hibernate.MailingListRepositoryImpl.java
License:Open Source License
@Override public List<MailingList> searchListByVisibility(User user, boolean isPublic) { DetachedCriteria det = DetachedCriteria.forClass(getPersistentClass()); if (isPublic == false) { if (user.isSuperAdmin()) { det.add(Restrictions.eq("isPublic", false)); } else {// w w w . j a v a 2 s .c om det.add(Restrictions.and(Restrictions.eq("owner", user), Restrictions.eq("isPublic", false))); } } else { if (user.isSuperAdmin()) { det.add(Restrictions.eq("isPublic", true)); } else { det.add(Restrictions.and(Restrictions.eq("isPublic", true), Restrictions.eq("domain", user.getDomain()))); } } det.addOrder(Property.forName("identifier").desc()); return findByCriteria(det); }