List of usage examples for com.liferay.portal.kernel.search SearchContext setKeywords
public void setKeywords(String keywords)
From source file:com.liferay.dynamic.data.lists.form.web.internal.display.context.DDLFormViewRecordsDisplayContext.java
License:Open Source License
protected void updateSearchContainerResults() { List<DDLRecord> results = null; int total = 0; DisplayTerms displayTerms = _recordSearchContainer.getDisplayTerms(); int status = WorkflowConstants.STATUS_ANY; if (Validator.isNull(displayTerms.getKeywords())) { results = _ddlRecordLocalService.getRecords(_ddlRecordSet.getRecordSetId(), status, _recordSearchContainer.getStart(), _recordSearchContainer.getEnd(), _recordSearchContainer.getOrderByComparator()); total = _ddlRecordLocalService.getRecordsCount(_ddlRecordSet.getRecordSetId(), status); } else {// w w w . j a v a2 s . c o m SearchContext searchContext = SearchContextFactory .getInstance(PortalUtil.getHttpServletRequest(_renderRequest)); searchContext.setAttribute(Field.STATUS, status); searchContext.setAttribute("recordSetId", _ddlRecordSet.getRecordSetId()); searchContext.setAttribute("recordSetScope", _ddlRecordSet.getScope()); searchContext.setEnd(_recordSearchContainer.getEnd()); searchContext.setKeywords(displayTerms.getKeywords()); searchContext.setStart(_recordSearchContainer.getStart()); BaseModelSearchResult<DDLRecord> baseModelSearchResult = _ddlRecordLocalService .searchDDLRecords(searchContext); results = baseModelSearchResult.getBaseModels(); total = baseModelSearchResult.getLength(); } _recordSearchContainer.setResults(results); _recordSearchContainer.setTotal(total); }
From source file:com.liferay.dynamic.data.lists.search.test.DDLRecordSearchTest.java
License:Open Source License
@Test public void testBasicSearchWithDefaultUser() throws Exception { long companyId = TestPropsValues.getCompanyId(); User user = UserLocalServiceUtil.getDefaultUser(companyId); Group group = GroupTestUtil.addGroup(companyId, user.getUserId(), GroupConstants.DEFAULT_PARENT_GROUP_ID); DDLRecordSetTestHelper recordSetTestHelper = new DDLRecordSetTestHelper(group); DDMStructureTestHelper ddmStructureTestHelper = new DDMStructureTestHelper( PortalUtil.getClassNameId(DDLRecordSet.class), group); DDMStructure ddmStructure = ddmStructureTestHelper.addStructure(createDDMForm(), StorageType.JSON.toString()); DDLRecordSet recordSet = recordSetTestHelper.addRecordSet(ddmStructure); SearchContext searchContext = getSearchContext(group, user, recordSet); DDLRecordTestHelper recordTestHelper = new DDLRecordTestHelper(group, recordSet); DDMFormValues ddmFormValues = createDDMFormValues(); DDMFormFieldValue nameDDMFormFieldValue = createLocalizedDDMFormFieldValue("name", "Joe Bloggs"); ddmFormValues.addDDMFormFieldValue(nameDDMFormFieldValue); DDMFormFieldValue descriptionDDMFormFieldValue = createLocalizedDDMFormFieldValue("description", "Simple description"); ddmFormValues.addDDMFormFieldValue(descriptionDDMFormFieldValue); recordTestHelper.addRecord(ddmFormValues, WorkflowConstants.ACTION_PUBLISH); searchContext.setKeywords("Simple description"); Hits hits = DDLRecordLocalServiceUtil.search(searchContext); Assert.assertEquals(hits.toString(), 1, hits.getLength()); }
From source file:com.liferay.dynamic.data.mapping.form.web.internal.display.context.DDMFormViewFormInstanceRecordsDisplayContext.java
License:Open Source License
protected void updateSearchContainerResults() { List<DDMFormInstanceRecord> results = null; int total = 0; DisplayTerms displayTerms = _ddmFormInstanceRecordSearchContainer.getDisplayTerms(); int status = WorkflowConstants.STATUS_ANY; if (Validator.isNull(displayTerms.getKeywords())) { results = _ddmFormInstanceRecordLocalService.getFormInstanceRecords( _ddmFormInstance.getFormInstanceId(), status, _ddmFormInstanceRecordSearchContainer.getStart(), _ddmFormInstanceRecordSearchContainer.getEnd(), _ddmFormInstanceRecordSearchContainer.getOrderByComparator()); total = _ddmFormInstanceRecordLocalService .getFormInstanceRecordsCount(_ddmFormInstance.getFormInstanceId(), status); } else {//ww w . ja v a 2 s . c o m SearchContext searchContext = SearchContextFactory .getInstance(PortalUtil.getHttpServletRequest(_renderRequest)); searchContext.setAttribute(Field.STATUS, status); searchContext.setAttribute("formInstanceId", _ddmFormInstance.getFormInstanceId()); searchContext.setEnd(_ddmFormInstanceRecordSearchContainer.getEnd()); searchContext.setKeywords(displayTerms.getKeywords()); searchContext.setStart(_ddmFormInstanceRecordSearchContainer.getStart()); BaseModelSearchResult<DDMFormInstanceRecord> baseModelSearchResult = _ddmFormInstanceRecordLocalService .searchFormInstanceRecords(searchContext); results = baseModelSearchResult.getBaseModels(); total = baseModelSearchResult.getLength(); } _ddmFormInstanceRecordSearchContainer.setResults(results); _ddmFormInstanceRecordSearchContainer.setTotal(total); }
From source file:com.liferay.experts.service.impl.QuestionLocalServiceImpl.java
License:Open Source License
public Hits search(long companyId, long groupId, String keywords, LinkedHashMap<String, Object> params, int start, int end, Sort sort) throws SystemException { try {//from ww w .j ava2 s. c o m SearchContext searchContext = new SearchContext(); searchContext.setCompanyId(companyId); searchContext.setEnd(end); searchContext.setGroupIds(new long[] { groupId }); if (params != null) { if (Validator.isNull(keywords)) { keywords = (String) params.get("keywords"); } params.remove("keywords"); } if (Validator.isNotNull(keywords)) { searchContext.setKeywords(keywords); } QueryConfig queryConfig = new QueryConfig(); queryConfig.setHighlightEnabled(false); searchContext.setQueryConfig(queryConfig); if (sort != null) { searchContext.setSorts(new Sort[] { sort }); } searchContext.setStart(start); Indexer indexer = IndexerRegistryUtil.nullSafeGetIndexer(Question.class); return indexer.search(searchContext); } catch (Exception e) { throw new SystemException(e); } }
From source file:com.liferay.journal.content.search.web.internal.display.context.JournalContentSearchDisplayContext.java
License:Open Source License
public Hits getHits() throws Exception { if (_hits != null) { return _hits; }/*from w w w. j a va 2 s. c o m*/ Indexer<JournalArticle> indexer = IndexerRegistryUtil.getIndexer(JournalArticle.class); SearchContext searchContext = SearchContextFactory.getInstance(_request); searchContext.setGroupIds(null); searchContext.setKeywords(getKeywords()); QueryConfig queryConfig = searchContext.getQueryConfig(); queryConfig.setHighlightEnabled(_journalContentSearchPortletInstanceConfiguration.enableHighlighting()); _hits = indexer.search(searchContext); return _hits; }
From source file:com.liferay.journal.search.test.JournalArticleIndexerLocalizedContentTest.java
License:Open Source License
private SearchContext _getSearchContext(String searchTerm, Locale locale) throws Exception { SearchContext searchContext = SearchContextTestUtil.getSearchContext(_group.getGroupId()); searchContext.setKeywords(searchTerm); searchContext.setLocale(locale);/*from ww w.j a va 2s. c o m*/ QueryConfig queryConfig = searchContext.getQueryConfig(); queryConfig.setSelectedFieldNames(StringPool.STAR); return searchContext; }
From source file:com.liferay.journal.search.test.JournalIndexerTest.java
License:Open Source License
@Test public void testCopyArticle() throws Exception { SearchContext searchContext = SearchContextTestUtil.getSearchContext(_group.getGroupId()); searchContext.setKeywords("Architectural"); assertSearchCount(0, _group.getGroupId(), searchContext); JournalFolder folder = JournalTestUtil.addFolder(_group.getGroupId(), RandomTestUtil.randomString()); JournalArticle article = JournalTestUtil.addArticleWithWorkflow(_group.getGroupId(), folder.getFolderId(), "title", "Liferay Architectural Approach", true); assertSearchCount(1, _group.getGroupId(), searchContext); JournalArticleLocalServiceUtil.copyArticle(TestPropsValues.getUserId(), _group.getGroupId(), article.getArticleId(), StringPool.BLANK, true, article.getVersion()); assertSearchCount(2, _group.getGroupId(), searchContext); }
From source file:com.liferay.journal.search.test.JournalIndexerTest.java
License:Open Source License
@Test public void testDeleteArticles() throws Exception { SearchContext searchContext = SearchContextTestUtil.getSearchContext(_group.getGroupId()); searchContext.setKeywords("Architectural"); assertSearchCount(0, _group.getGroupId(), searchContext); JournalFolder folder = JournalTestUtil.addFolder(_group.getGroupId(), RandomTestUtil.randomString()); JournalArticle article1 = JournalTestUtil.addArticleWithWorkflow(_group.getGroupId(), folder.getFolderId(), "title", "Liferay Architectural Approach", true); assertSearchCount(1, _group.getGroupId(), searchContext); String content = DDMStructureTestUtil.getSampleStructuredContent("Architectural Approach"); ServiceContext serviceContext = ServiceContextTestUtil.getServiceContext(_group.getGroupId()); serviceContext.setWorkflowAction(WorkflowConstants.ACTION_PUBLISH); JournalTestUtil.updateArticle(article1, article1.getTitleMap(), content, false, true, serviceContext); JournalArticle article2 = JournalTestUtil.addArticleWithWorkflow(_group.getGroupId(), folder.getFolderId(), "title", "Apple Architectural Tablet", true); assertSearchCount(2, _group.getGroupId(), searchContext); content = DDMStructureTestUtil.getSampleStructuredContent("Architectural Tablet"); JournalTestUtil.updateArticle(article2, article2.getTitleMap(), content, false, true, serviceContext); JournalArticleLocalServiceUtil.deleteArticles(_group.getGroupId()); assertSearchCount(0, _group.getGroupId(), searchContext); }
From source file:com.liferay.journal.search.test.JournalIndexerTest.java
License:Open Source License
@Test public void testMoveArticleToTrashAndRestore() throws Exception { SearchContext searchContext = SearchContextTestUtil.getSearchContext(_group.getGroupId()); searchContext.setKeywords("Architectural"); assertSearchCount(0, _group.getGroupId(), searchContext); JournalFolder folder = JournalTestUtil.addFolder(_group.getGroupId(), RandomTestUtil.randomString()); JournalArticle article = JournalTestUtil.addArticleWithWorkflow(_group.getGroupId(), folder.getFolderId(), "title", "Liferay Architectural Approach", true); assertSearchCount(1, _group.getGroupId(), searchContext); article = JournalArticleLocalServiceUtil.moveArticleToTrash(TestPropsValues.getUserId(), article); assertSearchCount(0, _group.getGroupId(), searchContext); assertSearchCount(1, _group.getGroupId(), true, WorkflowConstants.STATUS_IN_TRASH, searchContext); JournalArticleLocalServiceUtil.restoreArticleFromTrash(TestPropsValues.getUserId(), article); assertSearchCount(1, _group.getGroupId(), searchContext); assertSearchCount(0, _group.getGroupId(), true, WorkflowConstants.STATUS_IN_TRASH, searchContext); }
From source file:com.liferay.journal.search.test.JournalIndexerTest.java
License:Open Source License
@Test public void testRemoveArticleLocale() throws Exception { SearchContext searchContext1 = SearchContextTestUtil.getSearchContext(_group.getGroupId()); searchContext1.setKeywords("Arquitectura"); searchContext1.setLocale(LocaleUtil.SPAIN); assertSearchCount(0, _group.getGroupId(), searchContext1); SearchContext searchContext2 = SearchContextTestUtil.getSearchContext(_group.getGroupId()); searchContext2.setKeywords("Architectural"); searchContext2.setLocale(LocaleUtil.SPAIN); assertSearchCount(0, _group.getGroupId(), searchContext2); Map<Locale, String> titleMap = new HashMap<>(); titleMap.put(LocaleUtil.GERMANY, "Titel"); titleMap.put(LocaleUtil.SPAIN, "Titulo"); titleMap.put(LocaleUtil.US, "Title"); Map<Locale, String> contentMap = new HashMap<>(); contentMap.put(LocaleUtil.GERMANY, "Liferay Architektur Ansatz"); contentMap.put(LocaleUtil.SPAIN, "Liferay Arquitectura Aproximacion"); contentMap.put(LocaleUtil.US, "Liferay Architectural Approach"); JournalArticle article = JournalTestUtil.addArticleWithWorkflow(_group.getGroupId(), titleMap, titleMap, contentMap, true);// ww w.j a v a2 s. co m assertSearchCount(1, _group.getGroupId(), searchContext1); JournalArticleLocalServiceUtil.removeArticleLocale(_group.getGroupId(), article.getArticleId(), article.getVersion(), LocaleUtil.toLanguageId(LocaleUtil.SPAIN)); assertSearchCount(0, _group.getGroupId(), searchContext1); assertSearchCount(1, _group.getGroupId(), searchContext2); }