List of usage examples for com.liferay.portal.kernel.search Sort STRING_TYPE
int STRING_TYPE
To view the source code for com.liferay.portal.kernel.search Sort STRING_TYPE.
Click Source Link
From source file:com.liferay.asset.browser.web.internal.display.context.AssetBrowserDisplayContext.java
License:Open Source License
public AssetBrowserSearch getAssetBrowserSearch() throws Exception { ThemeDisplay themeDisplay = (ThemeDisplay) _request.getAttribute(WebKeys.THEME_DISPLAY); AssetBrowserSearch assetBrowserSearch = new AssetBrowserSearch(_renderRequest, getPortletURL()); if (Validator.isNull(getKeywords())) { if (Validator.isNotNull(getAddButtonURL())) { assetBrowserSearch/*from w ww .ja v a 2s . co m*/ .setEmptyResultsMessageCssClass("taglib-empty-result-message-header-has-plus-btn"); } } else { assetBrowserSearch.setSearch(true); } AssetRendererFactory assetRendererFactory = getAssetRendererFactory(); int total = getTotal(); assetBrowserSearch.setTotal(total); if (AssetBrowserWebConfigurationValues.SEARCH_WITH_DATABASE) { List<AssetEntry> assetEntries = AssetEntryLocalServiceUtil.getEntries(getFilterGroupIds(), new long[] { assetRendererFactory.getClassNameId() }, getKeywords(), getKeywords(), getKeywords(), getKeywords(), getListable(), false, false, assetBrowserSearch.getStart(), assetBrowserSearch.getEnd(), "modifiedDate", StringPool.BLANK, getOrderByType(), StringPool.BLANK); assetBrowserSearch.setResults(assetEntries); } else { Sort sort = null; boolean orderByAsc = false; if (Objects.equals(getOrderByType(), "asc")) { orderByAsc = true; } if (Objects.equals(getOrderByCol(), "modified-date")) { sort = new Sort(Field.MODIFIED_DATE, Sort.LONG_TYPE, orderByAsc); } else if (Objects.equals(getOrderByCol(), "title")) { String sortFieldName = DocumentImpl .getSortableFieldName("localized_title_".concat(themeDisplay.getLanguageId())); sort = new Sort(sortFieldName, Sort.STRING_TYPE, orderByAsc); } Hits hits = AssetEntryLocalServiceUtil.search(themeDisplay.getCompanyId(), getFilterGroupIds(), themeDisplay.getUserId(), assetRendererFactory.getClassName(), getSubtypeSelectionId(), getKeywords(), isShowNonindexable(), getStatuses(), assetBrowserSearch.getStart(), assetBrowserSearch.getEnd(), sort); List<AssetEntry> assetEntries = _assetHelper.getAssetEntries(hits); assetBrowserSearch.setResults(assetEntries); } return assetBrowserSearch; }
From source file:com.liferay.asset.internal.util.AssetHelperImpl.java
License:Open Source License
private int _getSortType(String fieldType) { int sortType = Sort.STRING_TYPE; if (fieldType.equals(Field.CREATE_DATE) || fieldType.equals(Field.EXPIRATION_DATE) || fieldType.equals(Field.PUBLISH_DATE) || fieldType.equals("ddm-date") || fieldType.equals("modifiedDate")) { sortType = Sort.LONG_TYPE;/*from w ww. j a v a 2s . c om*/ } else if (fieldType.equals(Field.PRIORITY) || fieldType.equals("ddm-decimal") || fieldType.equals("ddm-number")) { sortType = Sort.DOUBLE_TYPE; } else if (fieldType.equals("ddm-integer")) { sortType = Sort.INT_TYPE; } return sortType; }
From source file:com.liferay.asset.tags.admin.web.internal.display.context.AssetTagsDisplayContext.java
License:Open Source License
public SearchContainer getTagsSearchContainer() throws PortalException { if (_tagsSearchContainer != null) { return _tagsSearchContainer; }/* w w w . j a v a2 s. co m*/ SearchContainer tagsSearchContainer = new SearchContainer(_renderRequest, _renderResponse.createRenderURL(), null, "there-are-no-tags"); String keywords = getKeywords(); if (Validator.isNull(keywords)) { if (isShowAddButton()) { tagsSearchContainer.setEmptyResultsMessage("there-are-no-tags.-you-can-add-a-tag-by-clicking-the-" + "plus-button-on-the-bottom-right-corner"); tagsSearchContainer .setEmptyResultsMessageCssClass("taglib-empty-result-message-header-has-plus-btn"); } } else { tagsSearchContainer.setSearch(true); } tagsSearchContainer.setRowChecker(new EmptyOnClickRowChecker(_renderResponse)); ThemeDisplay themeDisplay = (ThemeDisplay) _request.getAttribute(WebKeys.THEME_DISPLAY); if (Validator.isNotNull(keywords)) { Sort sort = null; String orderByCol = getOrderByCol(); if (orderByCol.equals("name")) { sort = SortFactoryUtil.getSort(AssetTag.class, Sort.STRING_TYPE, Field.NAME, getOrderByType()); } else if (orderByCol.equals("usages")) { sort = SortFactoryUtil.getSort(AssetTag.class, Sort.INT_TYPE, "assetCount_Number", getOrderByType()); } BaseModelSearchResult<AssetTag> baseModelSearchResult = AssetTagLocalServiceUtil.searchTags( new long[] { themeDisplay.getScopeGroupId() }, keywords, tagsSearchContainer.getStart(), tagsSearchContainer.getEnd(), sort); tagsSearchContainer.setResults(baseModelSearchResult.getBaseModels()); tagsSearchContainer.setTotal(baseModelSearchResult.getLength()); } else { String orderByCol = getOrderByCol(); tagsSearchContainer.setOrderByCol(orderByCol); OrderByComparator<AssetTag> orderByComparator = null; boolean orderByAsc = false; String orderByType = getOrderByType(); if (orderByType.equals("asc")) { orderByAsc = true; } if (orderByCol.equals("name")) { orderByComparator = new AssetTagNameComparator(orderByAsc); } else if (orderByCol.equals("usages")) { orderByComparator = new AssetTagAssetCountComparator(orderByAsc); } tagsSearchContainer.setOrderByComparator(orderByComparator); tagsSearchContainer.setOrderByType(orderByType); long scopeGroupId = themeDisplay.getScopeGroupId(); int tagsCount = AssetTagServiceUtil.getTagsCount(scopeGroupId, keywords); tagsSearchContainer.setTotal(tagsCount); List<AssetTag> tags = AssetTagServiceUtil.getTags(scopeGroupId, StringPool.BLANK, tagsSearchContainer.getStart(), tagsSearchContainer.getEnd(), tagsSearchContainer.getOrderByComparator()); tagsSearchContainer.setResults(tags); } _tagsSearchContainer = tagsSearchContainer; return _tagsSearchContainer; }
From source file:com.liferay.journal.web.internal.display.context.JournalDisplayContext.java
License:Open Source License
public SearchContainer getSearchContainer(boolean showVersions) throws PortalException { ThemeDisplay themeDisplay = (ThemeDisplay) _request.getAttribute(WebKeys.THEME_DISPLAY); SearchContainer articleSearchContainer = new SearchContainer(_liferayPortletRequest, getPortletURL(), null, null);/*from w ww . ja va 2 s . com*/ if (!isSearch()) { articleSearchContainer .setEmptyResultsMessageCssClass("taglib-empty-result-message-header-has-plus-btn"); } else { articleSearchContainer.setSearch(true); } OrderByComparator<JournalArticle> orderByComparator = JournalPortletUtil .getArticleOrderByComparator(getOrderByCol(), getOrderByType()); articleSearchContainer.setOrderByCol(getOrderByCol()); articleSearchContainer.setOrderByComparator(orderByComparator); articleSearchContainer.setOrderByType(getOrderByType()); EntriesChecker entriesChecker = new EntriesChecker(_liferayPortletRequest, _liferayPortletResponse); entriesChecker.setCssClass("entry-selector"); entriesChecker.setRememberCheckBoxStateURLRegex( "^(?!.*" + _liferayPortletResponse.getNamespace() + "redirect).*(folderId=" + getFolderId() + ")"); articleSearchContainer.setRowChecker(entriesChecker); EntriesMover entriesMover = new EntriesMover(themeDisplay.getScopeGroupId()); articleSearchContainer.setRowMover(entriesMover); if (isNavigationMine() || isNavigationRecent()) { boolean includeOwner = true; if (isNavigationMine()) { includeOwner = false; } if (isNavigationRecent()) { articleSearchContainer.setOrderByCol("create-date"); articleSearchContainer.setOrderByType(getOrderByType()); } int total = JournalArticleServiceUtil.getGroupArticlesCount(themeDisplay.getScopeGroupId(), themeDisplay.getUserId(), getFolderId(), getStatus(), includeOwner); articleSearchContainer.setTotal(total); List results = JournalArticleServiceUtil.getGroupArticles(themeDisplay.getScopeGroupId(), themeDisplay.getUserId(), getFolderId(), getStatus(), includeOwner, articleSearchContainer.getStart(), articleSearchContainer.getEnd(), articleSearchContainer.getOrderByComparator()); articleSearchContainer.setResults(results); } else if (Validator.isNotNull(getDDMStructureKey())) { int total = JournalArticleServiceUtil.getArticlesCountByStructureId(themeDisplay.getScopeGroupId(), getDDMStructureKey(), getStatus()); articleSearchContainer.setTotal(total); List results = JournalArticleServiceUtil.getArticlesByStructureId(themeDisplay.getScopeGroupId(), getDDMStructureKey(), getStatus(), articleSearchContainer.getStart(), articleSearchContainer.getEnd(), articleSearchContainer.getOrderByComparator()); articleSearchContainer.setResults(results); } else if (Validator.isNotNull(getDDMTemplateKey())) { List<Long> folderIds = new ArrayList<>(1); if (getFolderId() != JournalFolderConstants.DEFAULT_PARENT_FOLDER_ID) { folderIds.add(getFolderId()); } int total = JournalArticleServiceUtil.searchCount(themeDisplay.getCompanyId(), themeDisplay.getScopeGroupId(), folderIds, JournalArticleConstants.CLASSNAME_ID_DEFAULT, getKeywords(), -1.0, getDDMStructureKey(), getDDMTemplateKey(), null, null, getStatus(), null); articleSearchContainer.setTotal(total); List results = JournalArticleServiceUtil.search(themeDisplay.getCompanyId(), themeDisplay.getScopeGroupId(), folderIds, JournalArticleConstants.CLASSNAME_ID_DEFAULT, getKeywords(), -1.0, getDDMStructureKey(), getDDMTemplateKey(), null, null, getStatus(), null, articleSearchContainer.getStart(), articleSearchContainer.getEnd(), articleSearchContainer.getOrderByComparator()); articleSearchContainer.setResults(results); } else if (isSearch()) { List<Long> folderIds = new ArrayList<>(1); if (getFolderId() != JournalFolderConstants.DEFAULT_PARENT_FOLDER_ID) { folderIds.add(getFolderId()); } JournalWebConfiguration journalWebConfiguration = (JournalWebConfiguration) _request .getAttribute(JournalWebConfiguration.class.getName()); if (journalWebConfiguration.journalArticlesSearchWithIndex()) { boolean orderByAsc = false; if (Objects.equals(getOrderByType(), "asc")) { orderByAsc = true; } Sort sort = null; if (Objects.equals(getOrderByCol(), "display-date")) { sort = new Sort("displayDate", Sort.LONG_TYPE, orderByAsc); } else if (Objects.equals(getOrderByCol(), "id")) { sort = new Sort(DocumentImpl.getSortableFieldName(Field.ARTICLE_ID), Sort.STRING_TYPE, !orderByAsc); } else if (Objects.equals(getOrderByCol(), "modified-date")) { sort = new Sort(Field.MODIFIED_DATE, Sort.LONG_TYPE, orderByAsc); } else if (Objects.equals(getOrderByCol(), "title")) { sort = new Sort("title", Sort.STRING_TYPE, !orderByAsc); } LinkedHashMap<String, Object> params = new LinkedHashMap<>(); params.put("expandoAttributes", getKeywords()); Indexer indexer = JournalSearcher.getInstance(); SearchContext searchContext = buildSearchContext(themeDisplay.getCompanyId(), themeDisplay.getScopeGroupId(), folderIds, JournalArticleConstants.CLASSNAME_ID_DEFAULT, getDDMStructureKey(), getDDMTemplateKey(), getKeywords(), params, articleSearchContainer.getStart(), articleSearchContainer.getEnd(), sort, showVersions); Hits hits = indexer.search(searchContext); int total = hits.getLength(); articleSearchContainer.setTotal(total); List results = new ArrayList<>(); Document[] documents = hits.getDocs(); for (int i = 0; i < documents.length; i++) { Document document = documents[i]; JournalArticle article = null; JournalFolder folder = null; String className = document.get(Field.ENTRY_CLASS_NAME); long classPK = GetterUtil.getLong(document.get(Field.ENTRY_CLASS_PK)); if (className.equals(JournalArticle.class.getName())) { if (!showVersions) { article = JournalArticleLocalServiceUtil.fetchLatestArticle(classPK, WorkflowConstants.STATUS_ANY, false); } else { String articleId = document.get(Field.ARTICLE_ID); long groupId = GetterUtil.getLong(document.get(Field.GROUP_ID)); double version = GetterUtil.getDouble(document.get(Field.VERSION)); article = JournalArticleLocalServiceUtil.fetchArticle(groupId, articleId, version); } results.add(article); } else if (className.equals(JournalFolder.class.getName())) { folder = JournalFolderLocalServiceUtil.getFolder(classPK); results.add(folder); } } articleSearchContainer.setResults(results); } else { int total = JournalArticleServiceUtil.searchCount(themeDisplay.getCompanyId(), themeDisplay.getScopeGroupId(), folderIds, JournalArticleConstants.CLASSNAME_ID_DEFAULT, getKeywords(), -1.0, getDDMStructureKey(), getDDMTemplateKey(), null, null, getStatus(), null); articleSearchContainer.setTotal(total); List results = JournalArticleServiceUtil.search(themeDisplay.getCompanyId(), themeDisplay.getScopeGroupId(), folderIds, JournalArticleConstants.CLASSNAME_ID_DEFAULT, getKeywords(), -1.0, getDDMStructureKey(), getDDMTemplateKey(), null, null, getStatus(), null, articleSearchContainer.getStart(), articleSearchContainer.getEnd(), articleSearchContainer.getOrderByComparator()); articleSearchContainer.setResults(results); } } else { int total = JournalFolderServiceUtil.getFoldersAndArticlesCount(themeDisplay.getScopeGroupId(), 0, getFolderId(), getStatus()); articleSearchContainer.setTotal(total); OrderByComparator<Object> folderOrderByComparator = null; boolean orderByAsc = false; if (Objects.equals(getOrderByType(), "asc")) { orderByAsc = true; } if (Objects.equals(getOrderByCol(), "display-date")) { folderOrderByComparator = new FolderArticleDisplayDateComparator(orderByAsc); } else if (Objects.equals(getOrderByCol(), "id")) { folderOrderByComparator = new FolderArticleArticleIdComparator(orderByAsc); } else if (Objects.equals(getOrderByCol(), "modified-date")) { folderOrderByComparator = new FolderArticleModifiedDateComparator(orderByAsc); } else if (Objects.equals(getOrderByCol(), "title")) { folderOrderByComparator = new FolderArticleTitleComparator(orderByAsc); } List results = JournalFolderServiceUtil.getFoldersAndArticles(themeDisplay.getScopeGroupId(), 0, getFolderId(), getStatus(), themeDisplay.getLocale(), articleSearchContainer.getStart(), articleSearchContainer.getEnd(), folderOrderByComparator); articleSearchContainer.setResults(results); } return articleSearchContainer; }
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 www . jav a2s . co m 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(); }
From source file:org.apache.jsp.html.portlet.enterprise_005fadmin.view_005fusers_jsp.java
License:Open Source License
private static Sort _getSort(String orderByCol, String orderByType) { String sortField = "firstName"; if (Validator.isNotNull(orderByCol)) { if (orderByCol.equals("email-address")) { sortField = "emailAddress"; } else if (orderByCol.equals("first-name")) { sortField = "firstName"; } else if (orderByCol.equals("job-title")) { sortField = "jobTitle"; } else if (orderByCol.equals("last-name")) { sortField = "lastName"; } else if (orderByCol.equals("screen-name")) { sortField = "screenName"; } else { sortField = orderByCol;//from w w w .j a v a 2 s .co m } } if (Validator.isNull(orderByType)) { orderByType = "asc"; } return new Sort(sortField, Sort.STRING_TYPE, !orderByType.equalsIgnoreCase("asc")); }
From source file:org.fit.portlet.service.service.impl.InserFitxaPersonalLocalServiceImpl.java
License:Open Source License
private int getType(String orderByColumn) { if (orderByColumn.equalsIgnoreCase(Field.CLASS_PK)) { return Sort.LONG_TYPE; }/* ww w .j av a2 s. c om*/ return Sort.STRING_TYPE; }