List of usage examples for com.liferay.portal.kernel.search.filter BooleanFilter addRequiredTerm
public Filter addRequiredTerm(String field, String value)
From source file:com.liferay.configuration.admin.web.internal.search.ConfigurationModelIndexer.java
License:Open Source License
@Override public BooleanQuery getFullQuery(SearchContext searchContext) throws SearchException { try {//w ww.j av a2s. c o m BooleanFilter fullQueryBooleanFilter = new BooleanFilter(); fullQueryBooleanFilter.addRequiredTerm(Field.ENTRY_CLASS_NAME, getClassName()); BooleanQuery fullQuery = createFullQuery(fullQueryBooleanFilter, searchContext); fullQuery.setQueryConfig(searchContext.getQueryConfig()); return fullQuery; } catch (SearchException se) { throw se; } catch (Exception e) { throw new SearchException(e); } }
From source file:com.liferay.document.library.internal.trash.DLFileEntryTrashHandler.java
License:Open Source License
@Override public Filter getExcludeFilter(SearchContext searchContext) { BooleanFilter excludeBooleanFilter = new BooleanFilter(); excludeBooleanFilter.addRequiredTerm(Field.ENTRY_CLASS_NAME, DLFileEntryConstants.getClassName()); excludeBooleanFilter.addRequiredTerm(Field.HIDDEN, true); return excludeBooleanFilter; }
From source file:com.liferay.dynamic.data.lists.internal.search.DDLRecordIndexer.java
License:Open Source License
@Override public void postProcessContextBooleanFilter(BooleanFilter contextBooleanFilter, SearchContext searchContext) throws Exception { int status = GetterUtil.getInteger(searchContext.getAttribute(Field.STATUS), WorkflowConstants.STATUS_APPROVED); if (status != WorkflowConstants.STATUS_ANY) { contextBooleanFilter.addRequiredTerm(Field.STATUS, status); }/*from w w w . ja va 2 s .com*/ long recordSetId = GetterUtil.getLong(searchContext.getAttribute("recordSetId")); if (recordSetId > 0) { contextBooleanFilter.addRequiredTerm("recordSetId", recordSetId); } long recordSetScope = GetterUtil.getLong(searchContext.getAttribute("recordSetScope"), DDLRecordSetConstants.SCOPE_DYNAMIC_DATA_LISTS); contextBooleanFilter.addRequiredTerm("recordSetScope", recordSetScope); addSearchClassTypeIds(contextBooleanFilter, searchContext); String ddmStructureFieldName = (String) searchContext.getAttribute("ddmStructureFieldName"); Serializable ddmStructureFieldValue = searchContext.getAttribute("ddmStructureFieldValue"); if (Validator.isNotNull(ddmStructureFieldName) && Validator.isNotNull(ddmStructureFieldValue)) { QueryFilter queryFilter = ddmIndexer.createFieldValueQueryFilter(ddmStructureFieldName, ddmStructureFieldValue, searchContext.getLocale()); contextBooleanFilter.add(queryFilter, BooleanClauseOccur.MUST); } }
From source file:com.liferay.dynamic.data.mapping.internal.search.DDMFormInstanceRecordIndexer.java
License:Open Source License
@Override public void postProcessContextBooleanFilter(BooleanFilter contextBooleanFilter, SearchContext searchContext) throws Exception { int status = GetterUtil.getInteger(searchContext.getAttribute(Field.STATUS), WorkflowConstants.STATUS_APPROVED); if (status != WorkflowConstants.STATUS_ANY) { contextBooleanFilter.addRequiredTerm(Field.STATUS, status); }// w w w . ja v a 2s. c o m long ddmFormInstanceId = GetterUtil.getLong(searchContext.getAttribute("ddmFormInstanceId")); if (ddmFormInstanceId > 0) { contextBooleanFilter.addRequiredTerm("ddmFormInstanceId", ddmFormInstanceId); } addSearchClassTypeIds(contextBooleanFilter, searchContext); String ddmStructureFieldName = (String) searchContext.getAttribute("ddmStructureFieldName"); Serializable ddmStructureFieldValue = searchContext.getAttribute("ddmStructureFieldValue"); if (Validator.isNotNull(ddmStructureFieldName) && Validator.isNotNull(ddmStructureFieldValue)) { QueryFilter queryFilter = ddmIndexer.createFieldValueQueryFilter(ddmStructureFieldName, ddmStructureFieldValue, searchContext.getLocale()); contextBooleanFilter.add(queryFilter, BooleanClauseOccur.MUST); } }
From source file:com.liferay.exportimport.search.ExportImportConfigurationIndexer.java
License:Open Source License
@Override public void postProcessContextBooleanFilter(BooleanFilter contextBooleanFilter, SearchContext searchContext) throws Exception { addStatus(contextBooleanFilter, searchContext); contextBooleanFilter.addRequiredTerm(Field.COMPANY_ID, searchContext.getCompanyId()); contextBooleanFilter.addRequiredTerm(Field.GROUP_ID, GetterUtil.getLong(searchContext.getAttribute(Field.GROUP_ID))); Serializable type = searchContext.getAttribute(Field.TYPE); if (type != null) { contextBooleanFilter.addRequiredTerm(Field.TYPE, GetterUtil.getInteger(type)); }/* w ww. j av a2s. c o m*/ }
From source file:com.liferay.journal.internal.trash.JournalArticleTrashHandler.java
License:Open Source License
@Override public Filter getExcludeFilter(SearchContext searchContext) { BooleanFilter excludeBooleanFilter = new BooleanFilter(); excludeBooleanFilter.addRequiredTerm(Field.ENTRY_CLASS_NAME, JournalArticle.class.getName()); excludeBooleanFilter.addRequiredTerm("head", false); return excludeBooleanFilter; }
From source file:com.liferay.journal.search.JournalArticleIndexer.java
License:Open Source License
@Override public void postProcessContextBooleanFilter(BooleanFilter contextBooleanFilter, SearchContext searchContext) throws Exception { Long classNameId = (Long) searchContext.getAttribute(Field.CLASS_NAME_ID); if ((classNameId != null) && (classNameId != 0)) { contextBooleanFilter.addRequiredTerm(Field.CLASS_NAME_ID, classNameId.toString()); }// w ww . j a v a 2 s. c om addStatus(contextBooleanFilter, searchContext); addSearchClassTypeIds(contextBooleanFilter, searchContext); String ddmStructureFieldName = (String) searchContext.getAttribute("ddmStructureFieldName"); Serializable ddmStructureFieldValue = searchContext.getAttribute("ddmStructureFieldValue"); if (Validator.isNotNull(ddmStructureFieldName) && Validator.isNotNull(ddmStructureFieldValue)) { QueryFilter queryFilter = _ddmIndexer.createFieldValueQueryFilter(ddmStructureFieldName, ddmStructureFieldValue, searchContext.getLocale()); contextBooleanFilter.add(queryFilter, BooleanClauseOccur.MUST); } String ddmStructureKey = (String) searchContext.getAttribute("ddmStructureKey"); if (Validator.isNotNull(ddmStructureKey)) { contextBooleanFilter.addRequiredTerm("ddmStructureKey", ddmStructureKey); } String ddmTemplateKey = (String) searchContext.getAttribute("ddmTemplateKey"); if (Validator.isNotNull(ddmTemplateKey)) { contextBooleanFilter.addRequiredTerm("ddmTemplateKey", ddmTemplateKey); } boolean head = GetterUtil.getBoolean(searchContext.getAttribute("head"), Boolean.TRUE); boolean relatedClassName = GetterUtil.getBoolean(searchContext.getAttribute("relatedClassName")); boolean showNonindexable = GetterUtil.getBoolean(searchContext.getAttribute("showNonindexable")); if (head && !relatedClassName && !showNonindexable) { contextBooleanFilter.addRequiredTerm("head", Boolean.TRUE); } if (!relatedClassName && showNonindexable) { contextBooleanFilter.addRequiredTerm("headListable", Boolean.TRUE); } }
From source file:com.liferay.message.boards.internal.search.MBMessageIndexer.java
License:Open Source License
@Override public void postProcessContextBooleanFilter(BooleanFilter contextBooleanFilter, SearchContext searchContext) throws Exception { addStatus(contextBooleanFilter, searchContext); boolean discussion = GetterUtil.getBoolean(searchContext.getAttribute("discussion")); contextBooleanFilter.addRequiredTerm("discussion", discussion); if (searchContext.isIncludeDiscussions()) { addRelatedClassNames(contextBooleanFilter, searchContext); }//www .jav a 2s . c om String classNameId = GetterUtil.getString(searchContext.getAttribute(Field.CLASS_NAME_ID)); if (Validator.isNotNull(classNameId)) { contextBooleanFilter.addRequiredTerm(Field.CLASS_NAME_ID, classNameId); } long threadId = GetterUtil.getLong((String) searchContext.getAttribute("threadId")); if (threadId > 0) { contextBooleanFilter.addRequiredTerm("threadId", threadId); } long[] categoryIds = searchContext.getCategoryIds(); if ((categoryIds != null) && (categoryIds.length > 0) && (categoryIds[0] != MBCategoryConstants.DEFAULT_PARENT_CATEGORY_ID)) { TermsFilter categoriesTermsFilter = new TermsFilter(Field.CATEGORY_ID); for (long categoryId : categoryIds) { try { mbCategoryService.getCategory(categoryId); } catch (PortalException pe) { if (_log.isDebugEnabled()) { _log.debug("Unable to get message boards category " + categoryId, pe); } continue; } categoriesTermsFilter.addValue(String.valueOf(categoryId)); } if (!categoriesTermsFilter.isEmpty()) { contextBooleanFilter.add(categoriesTermsFilter, BooleanClauseOccur.MUST); } } }
From source file:com.liferay.message.boards.internal.search.MBThreadIndexer.java
License:Open Source License
@Override public void postProcessContextBooleanFilter(BooleanFilter contextBooleanFilter, SearchContext searchContext) throws Exception { addStatus(contextBooleanFilter, searchContext); boolean discussion = GetterUtil.getBoolean(searchContext.getAttribute("discussion")); contextBooleanFilter.addRequiredTerm("discussion", discussion); long endDate = GetterUtil.getLong(searchContext.getAttribute("endDate")); long startDate = GetterUtil.getLong(searchContext.getAttribute("startDate")); if ((endDate > 0) && (startDate > 0)) { contextBooleanFilter.addRangeTerm("lastPostDate", startDate, endDate); }//w w w .j ava2 s. c om long participantUserId = GetterUtil.getLong(searchContext.getAttribute("participantUserId")); if (participantUserId > 0) { contextBooleanFilter.addRequiredTerm("participantUserIds", participantUserId); } }
From source file:com.liferay.trash.internal.search.TrashIndexer.java
License:Open Source License
@Override public BooleanQuery getFullQuery(SearchContext searchContext) throws SearchException { try {//from w w w . j a v a 2 s . c o m BooleanFilter fullQueryBooleanFilter = new BooleanFilter(); fullQueryBooleanFilter.addRequiredTerm(Field.COMPANY_ID, searchContext.getCompanyId()); List<TrashHandler> trashHandlers = TrashHandlerRegistryUtil.getTrashHandlers(); for (TrashHandler trashHandler : trashHandlers) { Filter filter = trashHandler.getExcludeFilter(searchContext); if (filter != null) { fullQueryBooleanFilter.add(filter, BooleanClauseOccur.MUST_NOT); } processTrashHandlerExcludeQuery(searchContext, fullQueryBooleanFilter, trashHandler); } long[] groupIds = searchContext.getGroupIds(); if (ArrayUtil.isNotEmpty(groupIds)) { TermsFilter groupTermsFilter = new TermsFilter(Field.GROUP_ID); groupTermsFilter.addValues(ArrayUtil.toStringArray(groupIds)); fullQueryBooleanFilter.add(groupTermsFilter, BooleanClauseOccur.MUST); } fullQueryBooleanFilter.addRequiredTerm(Field.STATUS, WorkflowConstants.STATUS_IN_TRASH); BooleanQuery fullQuery = createFullQuery(fullQueryBooleanFilter, searchContext); return fullQuery; } catch (SearchException se) { throw se; } catch (Exception e) { throw new SearchException(e); } }