List of usage examples for org.hibernate.criterion DetachedCriteria addOrder
public DetachedCriteria addOrder(Order order)
From source file:org.encuestame.persistence.dao.imp.CommentDao.java
License:Apache License
@SuppressWarnings("unchecked") public List<Comment> getCommentsbPoll(final Poll poll, final Integer maxResults, final Integer start) { final DetachedCriteria criteria = DetachedCriteria.forClass(Comment.class); criteria.add(Restrictions.eq("poll", poll)); criteria.addOrder(Order.desc("likeVote")); return (List<Comment>) filterByMaxorStart(criteria, maxResults, start); }
From source file:org.encuestame.persistence.dao.imp.CommentDao.java
License:Apache License
@SuppressWarnings("unchecked") public List<Comment> getTopRatedComments(final CommentsSocialOptions socialOption, final Integer timeRange, final Integer maxResults, final Integer startResults) { final DetachedCriteria criteria = DetachedCriteria.forClass(Comment.class); log.debug("getTopRatedComments start date " + getCommentTimeRange(timeRange)); log.debug("getTopRatedComments end date " + getNextDayMidnightDate()); criteria.add(Restrictions.between("createdAt", getCommentTimeRange(timeRange), getNextDayMidnightDate())); if (socialOption != null) { if (socialOption.equals(CommentsSocialOptions.LIKE)) { criteria.addOrder(Order.desc("likeVote")); } else if (socialOption.equals(CommentsSocialOptions.DISLIKE)) { criteria.addOrder(Order.desc("dislikeVote")); } else {/*from w ww .j a v a 2s . c o m*/ criteria.addOrder(Order.desc("likeVote")); } } else { criteria.addOrder(Order.desc("likeVote")); } return (List<Comment>) filterByMaxorStart(criteria, maxResults, startResults); }
From source file:org.encuestame.persistence.dao.imp.DashboardDao.java
License:Apache License
@SuppressWarnings("unchecked") public List<Dashboard> retrieveDashboardsbyUser(final UserAccount userAcc, final Integer maxResults, final Integer start) { final DetachedCriteria criteria = DetachedCriteria.forClass(Dashboard.class); criteria.add(Restrictions.eq("userBoard", userAcc)); criteria.addOrder(Order.desc("boardSequence")); return (List<Dashboard>) filterByMaxorStart(criteria, maxResults, start); }
From source file:org.encuestame.persistence.dao.imp.FrontEndDao.java
License:Apache License
/** * Get TweetPoll Front End./*from w w w .j a v a2 s. c o m*/ * @param period date period * @param firstResult first results * @param maxResults max results * @return list of tweetPoll. */ @SuppressWarnings("unchecked") public final List<TweetPoll> getTweetPollFrontEnd(final SearchPeriods period, final Integer start, final Integer maxResults, final Integer firstResult) { final DetachedCriteria criteria = DetachedCriteria.forClass(TweetPoll.class); criteria.createAlias("question", "question"); calculateSearchPeriodsDates(period, criteria, "createDate"); criteria.add(Restrictions.eq("publishTweetPoll", Boolean.TRUE)); //should be published criteria.add(Restrictions.gt("relevance", 0L)); criteria.addOrder(Order.desc("relevance")); criteria.addOrder(Order.desc("createDate")); return (List<TweetPoll>) filterByMaxorStart(criteria, maxResults, start); //return getHibernateTemplate().findByCriteria(criteria, firstResult, maxResults); }
From source file:org.encuestame.persistence.dao.imp.FrontEndDao.java
License:Apache License
/** * Get Poll on Front End// w w w . ja va 2 s.c o m * @param period period * @param maxResults maxResults * @param firstResult firstResults. * @return list of poll. */ @SuppressWarnings("unchecked") public final List<Poll> getPollFrontEnd(final SearchPeriods period, final Integer start, final Integer maxResults, final Integer firstResult) { final DetachedCriteria criteria = DetachedCriteria.forClass(Poll.class); criteria.createAlias("question", "question"); calculateSearchPeriodsDates(period, criteria, "createDate"); criteria.add(Restrictions.gt("relevance", 0L)); criteria.add(Restrictions.eq("publish", Boolean.TRUE)); //should be published criteria.add(Restrictions.or(Restrictions.eq("isHidden", Boolean.FALSE), Restrictions.isNull("isHidden"))); criteria.add(Restrictions.isNotNull("isPasswordProtected")); criteria.add(Restrictions.isNull("passProtection")); //criteria.add(Restrictions.isEmpty("passProtection")); criteria.addOrder(Order.desc("createDate")); criteria.addOrder(Order.desc("relevance")); List<Poll> polls = (List<Poll>) filterByMaxorStart(criteria, maxResults, start); return polls; }
From source file:org.encuestame.persistence.dao.imp.FrontEndDao.java
License:Apache License
@SuppressWarnings("unchecked") public final List<Survey> getSurveyFrontEnd(final SearchPeriods period, final Integer start, final Integer maxResults, final Integer firstResult) { final DetachedCriteria criteria = DetachedCriteria.forClass(Survey.class); //criteria.createAlias("question", "question"); // TODO: Complete method, adding criteria params calculateSearchPeriodsDates(period, criteria, "createDate"); criteria.add(Restrictions.gt("relevance", 0L)); criteria.addOrder(Order.desc("relevance")); criteria.addOrder(Order.desc("createDate")); return (List<Survey>) filterByMaxorStart(criteria, maxResults, start); }
From source file:org.encuestame.persistence.dao.imp.FrontEndDao.java
License:Apache License
@SuppressWarnings("unchecked") public List<Hit> getHashTagHitsbyDateRange(final Long tagId, final Integer period) { Date startDate = null;/*from www . j a v a 2 s . co m*/ Date endDate = null; if (period != null) { final Calendar hi = Calendar.getInstance(); hi.add(Calendar.DAY_OF_YEAR, -period); startDate = hi.getTime(); endDate = Calendar.getInstance().getTime(); } final DetachedCriteria criteria = DetachedCriteria.forClass(Hit.class); criteria.createAlias("hashTag", "hashTag"); criteria.add(Restrictions.eq("hashTag.hashTagId", tagId)); criteria.addOrder(Order.desc("hitDate")); criteria.add(Restrictions.between("hitDate", startDate, endDate)); //define as a VISIT category criteria.add(Restrictions.eq("hitCategory", HitCategory.VISIT)); return (List<Hit>) getHibernateTemplate().findByCriteria(criteria); }
From source file:org.encuestame.persistence.dao.imp.FrontEndDao.java
License:Apache License
@SuppressWarnings("unchecked") public List<Hit> getHashTagHitsRange(final Long tagId, final SearchPeriods period) { final DetachedCriteria criteria = DetachedCriteria.forClass(Hit.class); criteria.createAlias("hashTag", "hashTag"); criteria.add(Restrictions.eq("hashTag.hashTagId", tagId)); criteria.addOrder(Order.desc("hitDate")); // define as a VISIT category criteria.add(Restrictions.eq("hitCategory", HitCategory.VISIT)); ProjectionList projList = Projections.projectionList(); projList.add(Projections.groupProperty("hitDate")); projList.add(Projections.rowCount()); criteria.setProjection(projList);// ww w .j a va 2 s . c om return (List<Hit>) getHibernateTemplate().findByCriteria(criteria); }
From source file:org.encuestame.persistence.dao.imp.FrontEndDao.java
License:Apache License
@SuppressWarnings("unchecked") public List<TweetPollSavedPublishedStatus> getLinksByHomeItem(final HashTag hashTag, final UserAccount userAccount, final TweetPoll tweetPoll, final Survey survey, final Poll poll, final TypeSearchResult itemType, final SearchPeriods searchPeriods, final Integer start, final Integer max, final List<TweetPoll> tpollsByHashTag, final List<Poll> pollsByHashtag) { final DetachedCriteria criteria = DetachedCriteria.forClass(TweetPollSavedPublishedStatus.class); // define if is necessary execute a query, if not exist filters it's not necessary run a query boolean queryRequired = false; List<TweetPollSavedPublishedStatus> tweetPollSavedPublishedStatus = ListUtils.EMPTY_LIST; if (itemType.equals(TypeSearchResult.TWEETPOLL)) { criteria.add(Restrictions.eq("tweetPoll", tweetPoll)); queryRequired = true;/*from www .j ava2 s .c o m*/ } else if (itemType.equals(TypeSearchResult.SURVEY)) { criteria.add(Restrictions.eq("survey", survey)); queryRequired = true; } else if (itemType.equals(TypeSearchResult.POLL)) { criteria.add(Restrictions.eq("poll", poll)); queryRequired = true; } else if (itemType.equals(TypeSearchResult.HASHTAG)) { // FUTURE: We need include Surveys by Hashtag // include on the query all published items by tweetpoll if (tpollsByHashTag.size() != 0) { criteria.add(Restrictions.in("tweetPoll", tpollsByHashTag)); queryRequired = true; } // include on the query all published items by poll if (pollsByHashtag.size() != 0) { criteria.add(Restrictions.in("poll", pollsByHashtag)); queryRequired = true; } //BUG: We have a serial problem here, if poll and tweetpoll are null the criteria retrieve ALL items. ENCUESTAME-490 } else if (itemType.equals(TypeSearchResult.PROFILE)) { //TODO: future //return ListUtils.EMPTY_LIST; //queryRequired = true; } else { log.error("Item type not valid: " + itemType); } criteria.addOrder(Order.desc("publicationDateTweet")); //FIXME: why this line are commented? //criteria.add(Restrictions.isNotNull("apiType")); //criteria.add(Restrictions.isNotNull("tweetId")); criteria.add(Restrictions.eq("status", Status.SUCCESS)); // if exist filters, we execute a query if (queryRequired) { tweetPollSavedPublishedStatus = (List<TweetPollSavedPublishedStatus>) getHibernateTemplate() .findByCriteria(criteria, start, max); } return tweetPollSavedPublishedStatus; }
From source file:org.encuestame.persistence.dao.imp.HashTagDao.java
License:Apache License
@SuppressWarnings("unchecked") public List<HashTag> getHashTags(final Integer maxResults, final Integer start, final String tagCriteria) { final DetachedCriteria criteria = DetachedCriteria.forClass(HashTag.class); // TODO: please replace "hashTagsCloud" by ENUM. if (tagCriteria.equals("hashTagsCloud")) { criteria.add(Restrictions.gt("size", MIN_SIZE_CLOUD)); // TODO: date? // criteria.add(Restrictions.gl("updatedDate", // getCurrentdMidnightDate())); criteria.addOrder(Order.desc("size")); criteria.addOrder(Order.asc("hashTag")); } else {//w ww .jav a2 s. co m criteria.addOrder(Order.desc("hits")); criteria.addOrder(Order.asc("hashTag")); } return (List<HashTag>) filterByMaxorStart(criteria, maxResults, start); }