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:org.encuestame.persistence.dao.imp.HashTagDao.java

License:Apache License

@SuppressWarnings("unchecked")
public List<HashTagRanking> getHashTagRankStats(final Date maxDate) {
    final DetachedCriteria criteria = DetachedCriteria.forClass(HashTagRanking.class);
    criteria.add(Restrictions.eq("rankingDate", maxDate));
    criteria.addOrder(Order.desc("average"));
    return (List<HashTagRanking>) getHibernateTemplate().findByCriteria(criteria);
}

From source file:org.encuestame.persistence.dao.imp.HashTagDao.java

License:Apache License

public List<HashTagRanking> getHashTagRankingLastPosition(final Date maxDate) {
    DetachedCriteria criteria = DetachedCriteria.forClass(HashTagRanking.class);
    criteria.add(Restrictions.not(Restrictions.eq("rankingDate", maxDate)));
    criteria.addOrder(Order.desc("average"));
    @SuppressWarnings("unchecked")
    List<HashTagRanking> results = (List<HashTagRanking>) getHibernateTemplate().findByCriteria(criteria);
    return results;
}

From source file:org.encuestame.persistence.dao.imp.NotificationDao.java

License:Apache License

/**
 * Load Notifications By {@link Account} and Limit. This method add all notifications without User (global)
 * @param secUser {@link Account}/*from   ww  w  . j  a va  2s. c  o  m*/
 * @param limit limit
 * @return
 */
@SuppressWarnings("unchecked")
public final List<Notification> loadNotificationByUserAndLimit(final Account user, final Integer limit,
        final Integer start, final Boolean onlyUnread) {
    final DetachedCriteria criteria = DetachedCriteria.forClass(Notification.class);
    criteria.add(Restrictions.or(Restrictions.eq("account", user), Restrictions.isNull("account")));
    if (onlyUnread) {
        criteria.add(Restrictions.eq("readed", Boolean.FALSE));
    }
    criteria.addOrder(Order.desc("created"));
    return (List<Notification>) getHibernateTemplate().findByCriteria(criteria, start, limit);
}

From source file:org.encuestame.persistence.dao.imp.NotificationDao.java

License:Apache License

@SuppressWarnings("unchecked")
public final List<Notification> loadNotificationByDate(final Account user, final Integer limit,
        final Integer start, final Date startDate, final Date endDate, final Boolean onlyUnread) {
    final DetachedCriteria criteria = DetachedCriteria.forClass(Notification.class);
    criteria.add(Restrictions.or(Restrictions.eq("account", user), Restrictions.isNull("account")));
    criteria.add(Restrictions.between("created", startDate, endDate));
    criteria.addOrder(Order.desc("created"));
    return (List<Notification>) getHibernateTemplate().findByCriteria(criteria, start, limit);
}

From source file:org.encuestame.persistence.dao.imp.PollDao.java

License:Apache License

@SuppressWarnings("unchecked")
public List<Poll> findAllPollByEditorOwner(final UserAccount userAcc, final Integer maxResults,
        final Integer start) {
    final DetachedCriteria criteria = DetachedCriteria.forClass(Poll.class);
    criteria.add(Restrictions.eq("editorOwner", userAcc));
    criteria.add(Restrictions.eq("publish", Boolean.TRUE));
    criteria.addOrder(Order.desc("createDate"));
    return (List<Poll>) filterByMaxorStart(criteria, maxResults, start);
}

From source file:org.encuestame.persistence.dao.imp.PollDao.java

License:Apache License

/**
 * Retrieve poll by {@link Account}.//from  ww  w.  j a v a2 s.  c o  m
 * @param userAcc
 * @param maxResults
 * @param start
 * @return
 */
@SuppressWarnings("unchecked")
public List<Poll> findAllPollByAccount(final Account account, final Integer maxResults, final Integer start) {
    final DetachedCriteria criteria = DetachedCriteria.forClass(Poll.class);
    criteria.add(Restrictions.eq("owner", account));
    criteria.add(Restrictions.eq("publish", Boolean.TRUE));
    criteria.addOrder(Order.desc("createDate"));
    return (List<Poll>) filterByMaxorStart(criteria, maxResults, start);
}

From source file:org.encuestame.persistence.dao.imp.PollDao.java

License:Apache License

@SuppressWarnings("unchecked")
public List<Poll> getPollByHashTagName(final String tagName, final Integer startResults,
        final Integer limitResults, final TypeSearchResult filterby, final SearchPeriods searchPeriods) {
    final DetachedCriteria detached = DetachedCriteria.forClass(Poll.class).createAlias("hashTags", "hashTags")
            .setProjection(Projections.id())
            .add(Subqueries.propertyIn("hashTags.hashTagId",
                    DetachedCriteria.forClass(HashTag.class, "hash").setProjection(Projections.id())
                            .add(Restrictions.in("hash.hashTag", new String[] { tagName }))));
    final DetachedCriteria criteria = DetachedCriteria.forClass(Poll.class, "poll");
    criteria.add(Subqueries.propertyIn("poll.pollId", detached));
    if (filterby.equals(TypeSearchResult.HASHTAG)) {
        criteria.addOrder(Order.desc("poll.createDate"));
    } else if (filterby.equals(TypeSearchResult.HASHTAGRATED)) {
        criteria.addOrder(Order.desc("numbervotes"));
    }//  w w w .  j a v  a  2  s . c  o  m
    criteria.add(Restrictions.eq("publish", Boolean.TRUE));
    calculateSearchPeriodsDates(searchPeriods, detached, "createDate");
    return (List<Poll>) filterByMaxorStart(criteria, limitResults, startResults);
}

From source file:org.encuestame.persistence.dao.imp.PollDao.java

License:Apache License

@SuppressWarnings("unchecked")
public List<Poll> getPollsbyHashTagNameAndDateRange(final String tagName, final SearchPeriods period) {
    final DetachedCriteria detached = DetachedCriteria.forClass(Poll.class).createAlias("hashTags", "hashTags")
            .setProjection(Projections.id())
            .add(Subqueries.propertyIn("hashTags.hashTagId",
                    DetachedCriteria.forClass(HashTag.class, "hash").setProjection(Projections.id())
                            .add(Restrictions.in("hash.hashTag", new String[] { tagName }))));
    final DetachedCriteria criteria = DetachedCriteria.forClass(Poll.class, "poll");
    criteria.add(Subqueries.propertyIn("poll.pollId", detached));
    criteria.addOrder(Order.desc("poll.createDate"));
    calculateSearchPeriodsDates(period, criteria, "createDate");
    criteria.add(Restrictions.eq("publish", Boolean.TRUE));
    return (List<Poll>) getHibernateTemplate().findByCriteria(criteria);
}

From source file:org.encuestame.persistence.dao.imp.PollDao.java

License:Apache License

@SuppressWarnings("unchecked")
public List<Object[]> getPollsRangeStats(final String tagName, final SearchPeriods period) {
    final DetachedCriteria detached = DetachedCriteria.forClass(Poll.class).createAlias("hashTags", "hashTags")
            .setProjection(Projections.id())
            .add(Subqueries.propertyIn("hashTags.hashTagId",
                    DetachedCriteria.forClass(HashTag.class, "hash").setProjection(Projections.id())
                            .add(Restrictions.in("hash.hashTag", new String[] { tagName }))));
    final DetachedCriteria criteria = DetachedCriteria.forClass(Poll.class, "poll");
    criteria.add(Subqueries.propertyIn("poll.pollId", detached));
    criteria.addOrder(Order.desc("poll.createDate"));

    criteria.add(Restrictions.eq("publish", Boolean.TRUE));
    calculateSearchPeriodsDates(period, criteria, "createDate");
    ProjectionList projList = Projections.projectionList();
    projList.add(Projections.groupProperty("createDate"));
    projList.add(Projections.rowCount());
    criteria.setProjection(projList);/*w w w  . j  a va2 s. co  m*/
    return (List<Object[]>) getHibernateTemplate().findByCriteria(criteria);
}

From source file:org.encuestame.persistence.dao.imp.PollDao.java

License:Apache License

@SuppressWarnings("unchecked")
public List<Poll> retrievePollsByUserId(final UserAccount userAcc, final Integer maxResults,
        final Integer start) {
    final DetachedCriteria criteria = DetachedCriteria.forClass(Poll.class);
    criteria.add(Restrictions.eq("publish", Boolean.TRUE));
    criteria.add(Restrictions.eq("editorOwner", userAcc));
    criteria.addOrder(Order.desc("createDate"));
    return (List<Poll>) filterByMaxorStart(criteria, maxResults, start);
}