Example usage for org.hibernate.criterion DetachedCriteria addOrder

List of usage examples for org.hibernate.criterion DetachedCriteria addOrder

Introduction

In this page you can find the example usage for org.hibernate.criterion DetachedCriteria addOrder.

Prototype

public DetachedCriteria addOrder(Order order) 

Source Link

Document

Adds an ordering

Usage

From source file:de.escidoc.core.aa.business.persistence.hibernate.HibernateUserGroupDao.java

License:Open Source License

/**
 * See Interface for functional description.
 *
 * @see UserGroupDaoInterface #retrieveUserGroups(java.util.Map, int, int, String, ListSorting)
 */// www .ja  va 2 s  .c  o m
@Override
public List<UserGroup> retrieveUserGroups(final Map<String, Object> criteria, final int offset,
        final int maxResults, final String orderBy, final ListSorting sorting)
        throws SqlDatabaseSystemException {
    final DetachedCriteria detachedCriteria = DetachedCriteria.forClass(UserGroup.class);
    final Map<String, Object> clonedCriterias = new HashMap<String, Object>(criteria);

    // ids
    final Set<String> userGroupIds = mergeSets(
            (Set<String>) clonedCriterias.remove(Constants.DC_IDENTIFIER_URI),
            (Set<String>) clonedCriterias.remove(Constants.FILTER_PATH_ID));

    if (userGroupIds != null) {
        detachedCriteria.add(Restrictions.in("id", userGroupIds.toArray()));
    }

    // active flag
    final String active = (String) clonedCriterias.remove(Constants.FILTER_ACTIVE);
    final String active1 = (String) clonedCriterias.remove(Constants.FILTER_PATH_ACTIVE);

    if (active != null) {
        detachedCriteria.add(Restrictions.eq("active", Boolean.valueOf(active)));
    } else if (active1 != null) {
        detachedCriteria.add(Restrictions.eq("active", Boolean.valueOf(active1)));
    }

    for (final Entry<String, Object[]> stringEntry : criteriaMap.entrySet()) {
        final Object criteriaValue = clonedCriterias.remove(stringEntry.getKey());
        if (criteriaValue != null) {
            final Object[] parts = stringEntry.getValue();
            if (parts[0].equals(COMPARE_EQ)) {
                detachedCriteria.add(Restrictions.eq((String) parts[1], criteriaValue));
            } else {
                detachedCriteria.add(Restrictions.like((String) parts[1], criteriaValue));
            }
        }
    }
    if (orderBy != null) {
        if (sorting == ListSorting.ASCENDING) {
            detachedCriteria.addOrder(Order.asc(propertiesNamesMap.get(orderBy)));
        } else if (sorting == ListSorting.DESCENDING) {
            detachedCriteria.addOrder(Order.desc(propertiesNamesMap.get(orderBy)));
        }
    }
    final List<UserGroup> result;
    if (clonedCriterias.isEmpty()) {
        try {
            result = getHibernateTemplate().findByCriteria(detachedCriteria, offset, maxResults);
        } catch (final DataAccessException e) {
            throw new SqlDatabaseSystemException(e);
        }
    } else {
        // unsupported filter criteria has been found, therefore the result
        // list must be empty.
        result = new ArrayList<UserGroup>(0);
    }
    return result;
}

From source file:de.escidoc.core.oai.business.persistence.hibernate.HibernateSetDefinitionDao.java

License:Open Source License

/**
 * See Interface for functional description.
 *
 * @see UserGroupDaoInterface #retrieveSetDefinitions(java.util.Map, int, int, String, ListSorting)
 *///w w  w .  j a  v  a  2s .co m
@Override
public List<SetDefinition> retrieveSetDefinitions(final Map<String, Object> criteria, final int offset,
        final int maxResults, final String orderBy, final ListSorting sorting)
        throws SqlDatabaseSystemException {
    final DetachedCriteria detachedCriteria = DetachedCriteria.forClass(SetDefinition.class);
    final Map<String, Object> clonedCriterias = new HashMap<String, Object>(criteria);

    // ids
    final Set<String> setIds = mergeSets((Set<String>) clonedCriterias.remove(Constants.DC_IDENTIFIER_URI),
            (Set<String>) clonedCriterias.remove(Constants.FILTER_PATH_ID));

    if (setIds != null) {
        detachedCriteria.add(Restrictions.in("id", setIds.toArray()));
    }

    for (final Entry<String, Object[]> stringEntry : criteriaMap.entrySet()) {
        final Object criteriaValue = clonedCriterias.remove(stringEntry.getKey());
        if (criteriaValue != null) {
            final Object[] parts = stringEntry.getValue();
            if (parts[0].equals(COMPARE_EQ)) {
                detachedCriteria.add(Restrictions.eq((String) parts[1], criteriaValue));
            } else {
                detachedCriteria.add(Restrictions.like((String) parts[1], criteriaValue));
            }
        }
    }
    if (orderBy != null) {
        if (sorting == ListSorting.ASCENDING) {
            detachedCriteria.addOrder(Order.asc(propertiesNamesMap.get(orderBy)));
        } else if (sorting == ListSorting.DESCENDING) {
            detachedCriteria.addOrder(Order.desc(propertiesNamesMap.get(orderBy)));
        }
    }
    final List<SetDefinition> result;
    if (clonedCriterias.isEmpty()) {
        try {
            result = getHibernateTemplate().findByCriteria(detachedCriteria, offset, maxResults);
        } catch (final DataAccessException e) {
            throw new SqlDatabaseSystemException(e);
        }
    } else {
        // unsupported filter criteria has been found, therefore the result
        // list must be empty.
        result = new ArrayList<SetDefinition>(0);
    }
    return result;
}

From source file:de.forsthaus.backend.dao.impl.ApplicationNewsDAOImpl.java

License:Open Source License

@SuppressWarnings("unchecked")
@Override/*from   www.j a  v  a  2 s.co  m*/
public List<ApplicationNews> getAllApplicationNews() {
    DetachedCriteria criteria = DetachedCriteria.forClass(ApplicationNews.class);
    criteria.addOrder(Order.desc("date"));

    return getHibernateTemplate().findByCriteria(criteria);
}

From source file:de.forsthaus.backend.dao.impl.ApplicationNewsDAOImpl.java

License:Open Source License

@SuppressWarnings("unchecked")
@Override//from w w w  . j a  v  a 2 s.c o  m
public ResultObject getAllApplicationNews(int start, int pageSize) {
    DetachedCriteria criteria = DetachedCriteria.forClass(ApplicationNews.class);
    criteria.addOrder(Order.desc("date"));

    int totalCount = getHibernateTemplate().findByCriteria(criteria).size();

    List<ApplicationNews> list = getHibernateTemplate().findByCriteria(criteria, start, pageSize);

    return new ResultObject(list, totalCount);
}

From source file:de.forsthaus.backend.dao.impl.ArticleDAOImpl.java

License:Open Source License

@SuppressWarnings("unchecked")
@Override//  w ww . j a  v a 2s  . c  om
public List<Article> getAllArticles() {
    DetachedCriteria criteria = DetachedCriteria.forClass(Article.class);
    criteria.addOrder(Order.asc("artKurzbezeichnung"));

    return getHibernateTemplate().findByCriteria(criteria);
}

From source file:de.forsthaus.backend.dao.impl.BrancheDAOImpl.java

License:Open Source License

@SuppressWarnings("unchecked")
@Override// w w  w  .j a  v a 2 s  .c o  m
public List<Branche> getAllBranches() {
    DetachedCriteria criteria = DetachedCriteria.forClass(Branche.class);
    criteria.addOrder(Order.asc("braBezeichnung"));

    return getHibernateTemplate().findByCriteria(criteria);
}

From source file:de.forsthaus.backend.dao.impl.BrancheDAOImpl.java

License:Open Source License

@SuppressWarnings("unchecked")
@Override//  ww w .  j a  v  a  2  s.  c om
public ResultObject getAllBranches(int start, int pageSize) {
    DetachedCriteria criteria = DetachedCriteria.forClass(Branche.class);
    criteria.addOrder(Order.asc("braBezeichnung"));

    int totalCount = getHibernateTemplate().findByCriteria(criteria).size();

    List<Branche> list = getHibernateTemplate().findByCriteria(criteria, start, pageSize);

    return new ResultObject(list, totalCount);
}

From source file:de.forsthaus.backend.dao.impl.BrancheDAOImpl.java

License:Open Source License

@SuppressWarnings("unchecked")
@Override/*from   w ww.ja  v  a  2s.  com*/
public ResultObject getAllBranchesLikeText(String text, int start, int pageSize) {
    DetachedCriteria criteria = DetachedCriteria.forClass(Branche.class);

    if (!StringUtils.isEmpty(text)) {
        criteria.add(Restrictions.ilike("braBezeichnung", text, MatchMode.ANYWHERE));
    }

    criteria.addOrder(Order.asc("braBezeichnung"));

    int totalCount = getHibernateTemplate().findByCriteria(criteria).size();

    List<Branche> list = getHibernateTemplate().findByCriteria(criteria, start, pageSize);

    return new ResultObject(list, totalCount);
}

From source file:de.forsthaus.backend.dao.impl.CountryCodeDAOImpl.java

License:Open Source License

@SuppressWarnings("unchecked")
@Override/*from  w  w  w  . j  a  v  a2s  . c om*/
public List<CountryCode> getAllCountryCodes() {
    DetachedCriteria criteria = DetachedCriteria.forClass(CountryCode.class);
    criteria.addOrder(Order.asc("ccdName"));

    return getHibernateTemplate().findByCriteria(criteria);
}

From source file:de.forsthaus.backend.dao.impl.CustomerDAOImpl.java

License:Open Source License

@SuppressWarnings("unchecked")
@Override/*from   w  ww .java2  s  .c o  m*/
public List<Customer> getAllCustomers() {
    logger.info("--> ");

    DetachedCriteria criteria = DetachedCriteria.forClass(Customer.class);
    criteria.addOrder(Order.asc("kunMatchcode")); // set the order

    return getHibernateTemplate().findByCriteria(criteria);
}