001
014
015 package com.liferay.portal.search.generic;
016
017 import com.liferay.portal.kernel.search.BooleanClause;
018 import com.liferay.portal.kernel.search.BooleanClauseFactory;
019 import com.liferay.portal.kernel.search.BooleanClauseOccur;
020 import com.liferay.portal.kernel.search.BooleanClauseOccurImpl;
021 import com.liferay.portal.kernel.search.Query;
022 import com.liferay.portal.kernel.search.SearchContext;
023 import com.liferay.portal.kernel.search.SearchEngine;
024 import com.liferay.portal.kernel.search.SearchEngineUtil;
025 import com.liferay.portal.kernel.search.TermQueryFactory;
026
027
030 public class BooleanClauseFactoryImpl implements BooleanClauseFactory {
031
032 @Override
033 public BooleanClause create(
034 SearchContext searchContext, Query query, String occur) {
035
036 BooleanClauseOccur booleanClauseOccur = new BooleanClauseOccurImpl(
037 occur);
038
039 return new BooleanClauseImpl(query, booleanClauseOccur);
040 }
041
042 @Override
043 public BooleanClause create(
044 SearchContext searchContext, String field, String value, String occur) {
045
046 String searchEngineId = searchContext.getSearchEngineId();
047
048 SearchEngine searchEngine = SearchEngineUtil.getSearchEngine(
049 searchEngineId);
050
051 TermQueryFactory termQueryFactory = searchEngine.getTermQueryFactory();
052
053 Query query = termQueryFactory.create(field, value);
054
055 BooleanClauseOccur booleanClauseOccur = new BooleanClauseOccurImpl(
056 occur);
057
058 return new BooleanClauseImpl(query, booleanClauseOccur);
059 }
060
061 }