List of usage examples for com.liferay.portal.kernel.search SortFactoryUtil create
public static Sort create(String fieldName, int type, boolean reverse)
From source file:com.ext.portlet.Activity.ActivityUtil.java
License:Open Source License
private static Hits getAggregatedActivitySearchResults(long userId, int start, int end) throws SearchException { SearchContext context = new SearchContext(); context.setCompanyId(DEFAULT_COMPANY_ID); BooleanQuery query = BooleanQueryFactoryUtil.create(context); query.addRequiredTerm(Field.ENTRY_CLASS_NAME, SocialActivity.class.getName()); BooleanQuery subQuery = BooleanQueryFactoryUtil.create(context); subQuery.addExactTerm("userId", userId); try {//from ww w . ja v a 2 s. c om query.add(subQuery, BooleanClauseOccur.MUST); } catch (ParseException e) { _log.error(e); } Sort sort = SortFactoryUtil.create("createDate", Sort.FLOAT_TYPE, true); return SearchEngineUtil.search(SearchEngineUtil.getDefaultSearchEngineId(), context.getCompanyId(), query, sort, start, end); }
From source file:com.ext.portlet.Activity.ActivityUtil.java
License:Open Source License
private static Hits getAggregatedActivitySearchResultsExcludingUsers(List<Long> excludedUserIds, int start, int end) throws SearchException { SearchContext context = new SearchContext(); context.setCompanyId(DEFAULT_COMPANY_ID); BooleanQuery query = BooleanQueryFactoryUtil.create(context); query.addRequiredTerm(Field.ENTRY_CLASS_NAME, SocialActivity.class.getName()); BooleanQuery excludeQuery = BooleanQueryFactoryUtil.create(context); for (Long excludedUserId : excludedUserIds) { excludeQuery.addExactTerm("userId", excludedUserId); }// w w w. java 2 s. co m try { query.add(excludeQuery, BooleanClauseOccurImpl.MUST_NOT); } catch (ParseException e) { _log.error(e); } Sort sort = SortFactoryUtil.create("createDate", Sort.FLOAT_TYPE, true); return SearchEngineUtil.search(SearchEngineUtil.getDefaultSearchEngineId(), context.getCompanyId(), query, sort, start, end); }
From source file:com.liferay.knowledgebase.util.KnowledgeBaseUtil.java
License:Open Source License
public static Sort[] getKBArticleSorts(String orderByCol, String orderByType) { if (Validator.isNull(orderByCol) || Validator.isNull(orderByType)) { return SortFactoryUtil.getDefaultSorts(); }/*from ww w. j a v a2 s . com*/ boolean reverse = true; if (orderByType.equals("asc")) { reverse = false; } if (orderByCol.equals("create-date")) { String fieldName = Field.CREATE_DATE; return new Sort[] { SortFactoryUtil.create(fieldName, Sort.LONG_TYPE, reverse), SortFactoryUtil.create(null, Sort.SCORE_TYPE, false) }; } else if (orderByCol.equals("modified-date")) { String fieldName = Field.MODIFIED_DATE; return new Sort[] { SortFactoryUtil.create(fieldName, Sort.LONG_TYPE, reverse), SortFactoryUtil.create(null, Sort.SCORE_TYPE, false) }; } else if (orderByCol.equals("score")) { String fieldName = null; return new Sort[] { SortFactoryUtil.create(fieldName, Sort.SCORE_TYPE, !reverse), SortFactoryUtil.create(Field.MODIFIED_DATE, Sort.LONG_TYPE, true) }; } else if (orderByCol.equals("title")) { String fieldName = "titleKeyword"; return new Sort[] { SortFactoryUtil.create(fieldName, Sort.STRING_TYPE, reverse), SortFactoryUtil.create(null, Sort.SCORE_TYPE, false) }; } else if (orderByCol.equals("user-name")) { String fieldName = Field.USER_NAME; return new Sort[] { SortFactoryUtil.create(fieldName, Sort.STRING_TYPE, reverse), SortFactoryUtil.create(null, Sort.SCORE_TYPE, false) }; } return SortFactoryUtil.getDefaultSorts(); }