Package org.codelibs.fess.helper
Class QueryHelper
- java.lang.Object
-
- org.codelibs.fess.helper.QueryHelper
-
public class QueryHelper extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description protected java.util.List<org.codelibs.core.misc.Pair<java.lang.String,java.lang.Float>>additionalDefaultListprotected java.lang.StringadditionalQueryprotected java.util.Set<java.lang.String>apiResponseFieldSetprotected java.util.List<org.elasticsearch.index.query.functionscore.FunctionScoreQueryBuilder.FilterFunctionBuilder>boostFunctionListprotected java.lang.String[]cacheResponseFieldsprotected FacetInfodefaultFacetInfoprotected GeoInfodefaultGeoInfoprotected org.elasticsearch.search.sort.SortBuilder<?>[]defaultSortBuildersprotected static java.lang.StringES_SCORE_FIELDprotected java.lang.String[]facetFieldsprotected java.util.Map<java.lang.String,java.lang.String>fieldBoostMapprotected java.lang.String[]highlightedFieldsprotected java.util.Set<java.lang.String>highlightFieldSetprotected java.lang.StringhighlightPrefixprotected static java.lang.StringINURL_FIELDprotected booleanlowercaseWildcardprotected java.util.Set<java.lang.String>notAnalyzedFieldSetprotected static java.lang.StringPREFERENCE_QUERYprotected java.util.List<QueryRescorer>queryRescorerListprotected java.lang.String[]responseFieldsprotected static java.lang.StringSCORE_FIELDprotected static java.lang.StringSCORE_SORT_VALUEprotected java.lang.String[]scrollResponseFieldsprotected java.lang.String[]searchFieldsprotected static java.lang.StringSITE_FIELDprotected java.lang.String[]sortFieldsprotected java.lang.StringsortPrefix
-
Constructor Summary
Constructors Constructor Description QueryHelper()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddBoostFunction(org.elasticsearch.index.query.functionscore.ScoreFunctionBuilder<?> scoreFunction)voidaddBoostFunction(org.elasticsearch.index.query.QueryBuilder filter, org.elasticsearch.index.query.functionscore.ScoreFunctionBuilder<?> scoreFunction)voidaddDefaultSort(java.lang.String fieldName, java.lang.String order)voidaddHighlightField(java.lang.String field)voidaddQueryRescorer(QueryRescorer rescorer)QueryContextbuild(SearchRequestParams.SearchRequestType searchRequestType, java.lang.String query, java.util.function.Consumer<QueryContext> context)voidbuildBaseQuery(QueryContext queryContext, java.util.function.Consumer<QueryContext> context)protected voidbuildBoostQuery(QueryContext queryContext)protected org.elasticsearch.index.query.QueryBuilderbuildDefaultQueryBuilder(org.codelibs.fess.helper.QueryHelper.DefaultQueryBuilderFunction builder)protected org.elasticsearch.index.query.QueryBuilderbuildMatchPhraseQuery(java.lang.String f, java.lang.String text)voidbuildRoleQuery(java.util.Set<java.lang.String> roleSet, org.elasticsearch.index.query.BoolQueryBuilder boolQuery)protected voidbuildRoleQuery(QueryContext queryContext, SearchRequestParams.SearchRequestType searchRequestType)protected voidbuildVirtualHostQuery(QueryContext queryContext, SearchRequestParams.SearchRequestType searchRequestType)protected org.elasticsearch.index.query.QueryBuilderconvertBooleanQuery(QueryContext context, org.apache.lucene.search.BooleanQuery booleanQuery, float boost)protected org.elasticsearch.index.query.QueryBuilderconvertFuzzyQuery(QueryContext context, org.apache.lucene.search.FuzzyQuery fuzzyQuery, float boost)protected org.elasticsearch.index.query.QueryBuilderconvertPhraseQuery(QueryContext context, org.apache.lucene.search.PhraseQuery query, float boost)protected org.elasticsearch.index.query.QueryBuilderconvertPrefixQuery(QueryContext context, org.apache.lucene.search.PrefixQuery prefixQuery, float boost)protected org.elasticsearch.index.query.QueryBuilderconvertQuery(QueryContext context, org.apache.lucene.search.Query query, float boost)protected org.elasticsearch.index.query.QueryBuilderconvertSiteQuery(QueryContext context, java.lang.String text, float boost)protected org.elasticsearch.index.query.QueryBuilderconvertTermQuery(QueryContext context, org.apache.lucene.search.TermQuery termQuery, float boost)protected org.elasticsearch.index.query.QueryBuilderconvertTermRangeQuery(QueryContext context, org.apache.lucene.search.TermRangeQuery termRangeQuery, float boost)protected org.elasticsearch.index.query.QueryBuilderconvertWildcardQuery(QueryContext context, org.apache.lucene.search.WildcardQuery wildcardQuery, float boost)protected org.elasticsearch.search.sort.SortBuilder<?>createFieldSortBuilder(java.lang.String field, org.elasticsearch.search.sort.SortOrder order)java.lang.StringgenerateId()java.lang.StringgetAdditionalQuery()java.lang.String[]getCacheResponseFields()FacetInfogetDefaultFacetInfo()GeoInfogetDefaultGeoInfo()java.lang.String[]getFacetFields()java.lang.String[]getHighlightedFields()java.lang.StringgetHighlightPrefix()protected org.dbflute.optional.OptionalThing<java.lang.String[]>getQueryLanguages()protected org.apache.lucene.queryparser.classic.QueryParsergetQueryParser()org.elasticsearch.search.rescore.RescorerBuilder<?>[]getRescorers(java.util.Map<java.lang.String,java.lang.Object> params)java.lang.String[]getResponseFields()java.lang.String[]getScrollResponseFields()protected java.lang.StringgetSearchField(QueryContext context, java.lang.String field)java.lang.String[]getSearchFields()java.lang.String[]getSortFields()java.lang.StringgetSortPrefix()voidhighlightedFields(java.util.function.Consumer<java.util.stream.Stream<java.lang.String>> stream)voidinit()booleanisApiResponseField(java.lang.String field)booleanisFacetField(java.lang.String field)booleanisFacetSortValue(java.lang.String sort)protected booleanisSearchField(java.lang.String field)protected booleanisSortField(java.lang.String field)protected java.lang.StringprocessGsaSearchPreference(javax.servlet.http.HttpServletRequest req, java.lang.String query)protected java.lang.StringprocessJsonSearchPreference(javax.servlet.http.HttpServletRequest req, java.lang.String query)voidprocessSearchPreference(org.elasticsearch.action.search.SearchRequestBuilder searchRequestBuilder, org.dbflute.optional.OptionalThing<FessUserBean> userBean, java.lang.String query)voidsetAdditionalQuery(java.lang.String additionalQuery)voidsetApiResponseFields(java.lang.String[] fields)voidsetCacheResponseFields(java.lang.String[] cacheResponseFields)voidsetDefaultFacetInfo(FacetInfo defaultFacetInfo)voidsetDefaultGeoInfo(GeoInfo defaultGeoInfo)voidsetFacetFields(java.lang.String[] facetFields)voidsetHighlightedFields(java.lang.String[] highlightedFields)voidsetHighlightPrefix(java.lang.String highlightPrefix)voidsetLowercaseWildcard(boolean lowercaseWildcard)voidsetNotAnalyzedFields(java.lang.String[] fields)voidsetResponseFields(java.lang.String[] responseFields)voidsetScrollResponseFields(java.lang.String[] scrollResponseFields)voidsetSearchFields(java.lang.String[] supportedFields)voidsetSortFields(java.lang.String[] sortFields)voidsetSortPrefix(java.lang.String sortPrefix)protected java.lang.StringtoLowercaseWildcard(java.lang.String value)
-
-
-
Field Detail
-
PREFERENCE_QUERY
protected static final java.lang.String PREFERENCE_QUERY
- See Also:
- Constant Field Values
-
ES_SCORE_FIELD
protected static final java.lang.String ES_SCORE_FIELD
- See Also:
- Constant Field Values
-
SCORE_SORT_VALUE
protected static final java.lang.String SCORE_SORT_VALUE
- See Also:
- Constant Field Values
-
SCORE_FIELD
protected static final java.lang.String SCORE_FIELD
- See Also:
- Constant Field Values
-
INURL_FIELD
protected static final java.lang.String INURL_FIELD
- See Also:
- Constant Field Values
-
SITE_FIELD
protected static final java.lang.String SITE_FIELD
- See Also:
- Constant Field Values
-
apiResponseFieldSet
protected java.util.Set<java.lang.String> apiResponseFieldSet
-
highlightFieldSet
protected java.util.Set<java.lang.String> highlightFieldSet
-
notAnalyzedFieldSet
protected java.util.Set<java.lang.String> notAnalyzedFieldSet
-
responseFields
protected java.lang.String[] responseFields
-
scrollResponseFields
protected java.lang.String[] scrollResponseFields
-
cacheResponseFields
protected java.lang.String[] cacheResponseFields
-
highlightedFields
protected java.lang.String[] highlightedFields
-
searchFields
protected java.lang.String[] searchFields
-
facetFields
protected java.lang.String[] facetFields
-
sortPrefix
protected java.lang.String sortPrefix
-
sortFields
protected java.lang.String[] sortFields
-
additionalQuery
protected java.lang.String additionalQuery
-
lowercaseWildcard
protected boolean lowercaseWildcard
-
defaultSortBuilders
protected org.elasticsearch.search.sort.SortBuilder<?>[] defaultSortBuilders
-
highlightPrefix
protected java.lang.String highlightPrefix
-
defaultFacetInfo
protected FacetInfo defaultFacetInfo
-
defaultGeoInfo
protected GeoInfo defaultGeoInfo
-
fieldBoostMap
protected java.util.Map<java.lang.String,java.lang.String> fieldBoostMap
-
boostFunctionList
protected java.util.List<org.elasticsearch.index.query.functionscore.FunctionScoreQueryBuilder.FilterFunctionBuilder> boostFunctionList
-
queryRescorerList
protected java.util.List<QueryRescorer> queryRescorerList
-
additionalDefaultList
protected java.util.List<org.codelibs.core.misc.Pair<java.lang.String,java.lang.Float>> additionalDefaultList
-
-
Method Detail
-
init
@PostConstruct public void init()
-
build
public QueryContext build(SearchRequestParams.SearchRequestType searchRequestType, java.lang.String query, java.util.function.Consumer<QueryContext> context)
-
buildVirtualHostQuery
protected void buildVirtualHostQuery(QueryContext queryContext, SearchRequestParams.SearchRequestType searchRequestType)
-
buildRoleQuery
protected void buildRoleQuery(QueryContext queryContext, SearchRequestParams.SearchRequestType searchRequestType)
-
buildRoleQuery
public void buildRoleQuery(java.util.Set<java.lang.String> roleSet, org.elasticsearch.index.query.BoolQueryBuilder boolQuery)
-
buildBoostQuery
protected void buildBoostQuery(QueryContext queryContext)
-
buildBaseQuery
public void buildBaseQuery(QueryContext queryContext, java.util.function.Consumer<QueryContext> context)
-
getQueryParser
protected org.apache.lucene.queryparser.classic.QueryParser getQueryParser()
-
convertQuery
protected org.elasticsearch.index.query.QueryBuilder convertQuery(QueryContext context, org.apache.lucene.search.Query query, float boost)
-
convertBooleanQuery
protected org.elasticsearch.index.query.QueryBuilder convertBooleanQuery(QueryContext context, org.apache.lucene.search.BooleanQuery booleanQuery, float boost)
-
toLowercaseWildcard
protected java.lang.String toLowercaseWildcard(java.lang.String value)
-
getSearchField
protected java.lang.String getSearchField(QueryContext context, java.lang.String field)
-
convertWildcardQuery
protected org.elasticsearch.index.query.QueryBuilder convertWildcardQuery(QueryContext context, org.apache.lucene.search.WildcardQuery wildcardQuery, float boost)
-
convertPrefixQuery
protected org.elasticsearch.index.query.QueryBuilder convertPrefixQuery(QueryContext context, org.apache.lucene.search.PrefixQuery prefixQuery, float boost)
-
convertFuzzyQuery
protected org.elasticsearch.index.query.QueryBuilder convertFuzzyQuery(QueryContext context, org.apache.lucene.search.FuzzyQuery fuzzyQuery, float boost)
-
convertTermRangeQuery
protected org.elasticsearch.index.query.QueryBuilder convertTermRangeQuery(QueryContext context, org.apache.lucene.search.TermRangeQuery termRangeQuery, float boost)
-
buildMatchPhraseQuery
protected org.elasticsearch.index.query.QueryBuilder buildMatchPhraseQuery(java.lang.String f, java.lang.String text)
-
convertTermQuery
protected org.elasticsearch.index.query.QueryBuilder convertTermQuery(QueryContext context, org.apache.lucene.search.TermQuery termQuery, float boost)
-
convertSiteQuery
protected org.elasticsearch.index.query.QueryBuilder convertSiteQuery(QueryContext context, java.lang.String text, float boost)
-
convertPhraseQuery
protected org.elasticsearch.index.query.QueryBuilder convertPhraseQuery(QueryContext context, org.apache.lucene.search.PhraseQuery query, float boost)
-
isSearchField
protected boolean isSearchField(java.lang.String field)
-
buildDefaultQueryBuilder
protected org.elasticsearch.index.query.QueryBuilder buildDefaultQueryBuilder(org.codelibs.fess.helper.QueryHelper.DefaultQueryBuilderFunction builder)
-
getQueryLanguages
protected org.dbflute.optional.OptionalThing<java.lang.String[]> getQueryLanguages()
-
isSortField
protected boolean isSortField(java.lang.String field)
-
isFacetField
public boolean isFacetField(java.lang.String field)
-
isFacetSortValue
public boolean isFacetSortValue(java.lang.String sort)
-
setApiResponseFields
public void setApiResponseFields(java.lang.String[] fields)
-
setNotAnalyzedFields
public void setNotAnalyzedFields(java.lang.String[] fields)
-
isApiResponseField
public boolean isApiResponseField(java.lang.String field)
-
processSearchPreference
public void processSearchPreference(org.elasticsearch.action.search.SearchRequestBuilder searchRequestBuilder, org.dbflute.optional.OptionalThing<FessUserBean> userBean, java.lang.String query)
-
processJsonSearchPreference
protected java.lang.String processJsonSearchPreference(javax.servlet.http.HttpServletRequest req, java.lang.String query)
-
processGsaSearchPreference
protected java.lang.String processGsaSearchPreference(javax.servlet.http.HttpServletRequest req, java.lang.String query)
-
getResponseFields
public java.lang.String[] getResponseFields()
- Returns:
- the responseFields
-
setResponseFields
public void setResponseFields(java.lang.String[] responseFields)
- Parameters:
responseFields- the responseFields to set
-
getScrollResponseFields
public java.lang.String[] getScrollResponseFields()
-
setScrollResponseFields
public void setScrollResponseFields(java.lang.String[] scrollResponseFields)
-
getCacheResponseFields
public java.lang.String[] getCacheResponseFields()
-
setCacheResponseFields
public void setCacheResponseFields(java.lang.String[] cacheResponseFields)
-
getHighlightedFields
public java.lang.String[] getHighlightedFields()
- Returns:
- the highlightedFields
-
setHighlightedFields
public void setHighlightedFields(java.lang.String[] highlightedFields)
- Parameters:
highlightedFields- the highlightedFields to set
-
highlightedFields
public void highlightedFields(java.util.function.Consumer<java.util.stream.Stream<java.lang.String>> stream)
-
getSearchFields
public java.lang.String[] getSearchFields()
- Returns:
- the supportedFields
-
setSearchFields
public void setSearchFields(java.lang.String[] supportedFields)
- Parameters:
supportedFields- the supportedFields to set
-
getFacetFields
public java.lang.String[] getFacetFields()
- Returns:
- the facetFields
-
setFacetFields
public void setFacetFields(java.lang.String[] facetFields)
- Parameters:
facetFields- the facetFields to set
-
getSortPrefix
public java.lang.String getSortPrefix()
- Returns:
- the sortPrefix
-
setSortPrefix
public void setSortPrefix(java.lang.String sortPrefix)
- Parameters:
sortPrefix- the sortPrefix to set
-
getSortFields
public java.lang.String[] getSortFields()
- Returns:
- the sortFields
-
setSortFields
public void setSortFields(java.lang.String[] sortFields)
- Parameters:
sortFields- the sortFields to set
-
addHighlightField
public void addHighlightField(java.lang.String field)
-
getAdditionalQuery
public java.lang.String getAdditionalQuery()
- Returns:
- the additionalQuery
-
setAdditionalQuery
public void setAdditionalQuery(java.lang.String additionalQuery)
- Parameters:
additionalQuery- the additionalQuery to set
-
addDefaultSort
public void addDefaultSort(java.lang.String fieldName, java.lang.String order)
-
createFieldSortBuilder
protected org.elasticsearch.search.sort.SortBuilder<?> createFieldSortBuilder(java.lang.String field, org.elasticsearch.search.sort.SortOrder order)
-
setHighlightPrefix
public void setHighlightPrefix(java.lang.String highlightPrefix)
-
getHighlightPrefix
public java.lang.String getHighlightPrefix()
-
getDefaultFacetInfo
public FacetInfo getDefaultFacetInfo()
-
setDefaultFacetInfo
public void setDefaultFacetInfo(FacetInfo defaultFacetInfo)
-
getDefaultGeoInfo
public GeoInfo getDefaultGeoInfo()
-
setDefaultGeoInfo
public void setDefaultGeoInfo(GeoInfo defaultGeoInfo)
-
generateId
public java.lang.String generateId()
-
setLowercaseWildcard
public void setLowercaseWildcard(boolean lowercaseWildcard)
-
addBoostFunction
public void addBoostFunction(org.elasticsearch.index.query.functionscore.ScoreFunctionBuilder<?> scoreFunction)
-
addBoostFunction
public void addBoostFunction(org.elasticsearch.index.query.QueryBuilder filter, org.elasticsearch.index.query.functionscore.ScoreFunctionBuilder<?> scoreFunction)
-
getRescorers
public org.elasticsearch.search.rescore.RescorerBuilder<?>[] getRescorers(java.util.Map<java.lang.String,java.lang.Object> params)
-
addQueryRescorer
public void addQueryRescorer(QueryRescorer rescorer)
-
-