java.lang.Object
org.elasticsearch.index.mapper.MappedFieldType
org.elasticsearch.index.mapper.KeywordScriptFieldType
-
Nested Class Summary
Nested classes/interfaces inherited from class org.elasticsearch.index.mapper.MappedFieldType
MappedFieldType.CollapseType, MappedFieldType.Relation
-
Field Summary
Modifier and TypeFieldDescriptionprotected static final Script
static final RuntimeField.Parser
protected final Script
-
Constructor Summary
ConstructorDescriptionKeywordScriptFieldType
(String name, StringFieldScript.Factory scriptFactory, Script script, Map<String, String> meta) -
Method Summary
Modifier and TypeMethodDescriptionprotected final void
applyScriptContext
(SearchExecutionContext context) org.apache.lucene.search.Query
existsQuery
(SearchExecutionContext context) fielddataBuilder
(FieldDataContext fieldDataContext) Return a fielddata builder for this fieldorg.apache.lucene.search.Query
fuzzyQuery
(Object value, Fuzziness fuzziness, int prefixLength, int maxExpansions, boolean transpositions, SearchExecutionContext context) final boolean
Returns true if the field is aggregatable.final boolean
Returns true if the field is searchable.protected final StringFieldScript.LeafFactory
leafFactory
(SearchExecutionContext context) Create a script leaf factory for queries.protected final StringFieldScript.LeafFactory
leafFactory
(SearchLookup searchLookup) Create a script leaf factory.org.apache.lucene.search.Query
multiPhraseQuery
(org.apache.lucene.analysis.TokenStream stream, int slop, boolean enablePositionIncrements, SearchExecutionContext context) org.apache.lucene.search.Query
normalizedWildcardQuery
(String value, org.apache.lucene.search.MultiTermQuery.RewriteMethod method, SearchExecutionContext context) org.apache.lucene.search.Query
phrasePrefixQuery
(org.apache.lucene.analysis.TokenStream stream, int slop, int maxExpansions, SearchExecutionContext context) org.apache.lucene.search.Query
phraseQuery
(org.apache.lucene.analysis.TokenStream stream, int slop, boolean enablePositionIncrements, SearchExecutionContext context) org.apache.lucene.search.Query
prefixQuery
(String value, org.apache.lucene.search.MultiTermQuery.RewriteMethod method, boolean caseInsensitive, SearchExecutionContext context) org.apache.lucene.search.Query
rangeQuery
(Object lowerTerm, Object upperTerm, boolean includeLower, boolean includeUpper, ZoneId timeZone, DateMathParser parser, SearchExecutionContext context) final org.apache.lucene.search.Query
rangeQuery
(Object lowerTerm, Object upperTerm, boolean includeLower, boolean includeUpper, ShapeRelation relation, ZoneId timeZone, DateMathParser parser, SearchExecutionContext context) Factory method for range queries.org.apache.lucene.search.Query
regexpQuery
(String value, int syntaxFlags, int matchFlags, int maxDeterminizedStates, org.apache.lucene.search.MultiTermQuery.RewriteMethod method, SearchExecutionContext context) static RuntimeField
sourceOnly
(String name) org.apache.lucene.queries.spans.SpanQuery
spanPrefixQuery
(String value, org.apache.lucene.queries.spans.SpanMultiTermQueryWrapper.SpanRewriteMethod method, SearchExecutionContext context) org.apache.lucene.search.Query
termQuery
(Object value, SearchExecutionContext context) Generates a query that will only match documents that contain the given value.org.apache.lucene.search.Query
termQueryCaseInsensitive
(Object value, SearchExecutionContext context) org.apache.lucene.search.Query
termsQuery
(Collection<?> values, SearchExecutionContext context) Build a constant-scoring query that matches all values.typeName()
Returns the name of this type, as would be specified in mapping propertiesvoid
Validate that this field can be the target ofIndexMetadata.INDEX_ROUTING_PATH
.final ValueFetcher
valueFetcher
(SearchExecutionContext context, String format) Create a helper class to fetch field values during theFetchFieldsPhase
.valueForDisplay
(Object value) Given a value that comes from the stored fields API, convert it to the expected type.org.apache.lucene.search.Query
wildcardQuery
(String value, org.apache.lucene.search.MultiTermQuery.RewriteMethod method, boolean caseInsensitive, SearchExecutionContext context) Methods inherited from class org.elasticsearch.index.mapper.MappedFieldType
checkNoFormat, checkNoTimeZone, collapseType, distanceFeatureQuery, docValueFormat, eagerGlobalOrdinals, extractTerm, failIfNoDocValues, failIfNotIndexed, failIfNotIndexedNorDocValuesFallback, familyTypeName, fuzzyIntervals, getMetricType, getTerms, getTextSearchInfo, hasDocValues, isDimension, isFieldWithinQuery, isIndexed, isStored, mayExistInIndex, meta, name, pointReaderIfPossible, prefixIntervals, prefixQuery, termIntervals, wildcardIntervals, wildcardQuery
-
Field Details
-
PARSER
-
script
-
DEFAULT_SCRIPT
-
-
Constructor Details
-
KeywordScriptFieldType
-
-
Method Details
-
sourceOnly
-
typeName
Description copied from class:MappedFieldType
Returns the name of this type, as would be specified in mapping properties- Specified by:
typeName
in classMappedFieldType
-
valueForDisplay
Description copied from class:MappedFieldType
Given a value that comes from the stored fields API, convert it to the expected type. For instance a date field would store dates as longs and format it back to a string in this method.- Overrides:
valueForDisplay
in classMappedFieldType
-
fielddataBuilder
Description copied from class:MappedFieldType
Return a fielddata builder for this field- Overrides:
fielddataBuilder
in classMappedFieldType
- Parameters:
fieldDataContext
- the context for the fielddata
-
existsQuery
- Overrides:
existsQuery
in classMappedFieldType
-
fuzzyQuery
public org.apache.lucene.search.Query fuzzyQuery(Object value, Fuzziness fuzziness, int prefixLength, int maxExpansions, boolean transpositions, SearchExecutionContext context) -
prefixQuery
public org.apache.lucene.search.Query prefixQuery(String value, org.apache.lucene.search.MultiTermQuery.RewriteMethod method, boolean caseInsensitive, SearchExecutionContext context) -
rangeQuery
public org.apache.lucene.search.Query rangeQuery(Object lowerTerm, Object upperTerm, boolean includeLower, boolean includeUpper, ZoneId timeZone, DateMathParser parser, SearchExecutionContext context) -
regexpQuery
public org.apache.lucene.search.Query regexpQuery(String value, int syntaxFlags, int matchFlags, int maxDeterminizedStates, org.apache.lucene.search.MultiTermQuery.RewriteMethod method, SearchExecutionContext context) -
termQueryCaseInsensitive
public org.apache.lucene.search.Query termQueryCaseInsensitive(Object value, SearchExecutionContext context) - Overrides:
termQueryCaseInsensitive
in classMappedFieldType
-
termQuery
Description copied from class:MappedFieldType
Generates a query that will only match documents that contain the given value. The default implementation returns aTermQuery
over the value bytes- Specified by:
termQuery
in classMappedFieldType
-
termsQuery
public org.apache.lucene.search.Query termsQuery(Collection<?> values, SearchExecutionContext context) Description copied from class:MappedFieldType
Build a constant-scoring query that matches all values. The default implementation uses aConstantScoreQuery
around aBooleanQuery
whoseBooleanClause.Occur.SHOULD
clauses are generated withMappedFieldType.termQuery(java.lang.Object, org.elasticsearch.index.query.SearchExecutionContext)
.- Overrides:
termsQuery
in classMappedFieldType
-
wildcardQuery
public org.apache.lucene.search.Query wildcardQuery(String value, org.apache.lucene.search.MultiTermQuery.RewriteMethod method, boolean caseInsensitive, SearchExecutionContext context) -
normalizedWildcardQuery
public org.apache.lucene.search.Query normalizedWildcardQuery(String value, org.apache.lucene.search.MultiTermQuery.RewriteMethod method, SearchExecutionContext context) - Overrides:
normalizedWildcardQuery
in classMappedFieldType
-
isSearchable
public final boolean isSearchable()Description copied from class:MappedFieldType
Returns true if the field is searchable.- Overrides:
isSearchable
in classMappedFieldType
-
isAggregatable
public final boolean isAggregatable()Description copied from class:MappedFieldType
Returns true if the field is aggregatable.- Overrides:
isAggregatable
in classMappedFieldType
-
rangeQuery
public final org.apache.lucene.search.Query rangeQuery(Object lowerTerm, Object upperTerm, boolean includeLower, boolean includeUpper, ShapeRelation relation, ZoneId timeZone, DateMathParser parser, SearchExecutionContext context) Description copied from class:MappedFieldType
Factory method for range queries.- Overrides:
rangeQuery
in classMappedFieldType
relation
- the relation, nulls should be interpreted like INTERSECTS
-
phraseQuery
public org.apache.lucene.search.Query phraseQuery(org.apache.lucene.analysis.TokenStream stream, int slop, boolean enablePositionIncrements, SearchExecutionContext context) - Overrides:
phraseQuery
in classMappedFieldType
-
multiPhraseQuery
public org.apache.lucene.search.Query multiPhraseQuery(org.apache.lucene.analysis.TokenStream stream, int slop, boolean enablePositionIncrements, SearchExecutionContext context) - Overrides:
multiPhraseQuery
in classMappedFieldType
-
phrasePrefixQuery
public org.apache.lucene.search.Query phrasePrefixQuery(org.apache.lucene.analysis.TokenStream stream, int slop, int maxExpansions, SearchExecutionContext context) - Overrides:
phrasePrefixQuery
in classMappedFieldType
-
spanPrefixQuery
public org.apache.lucene.queries.spans.SpanQuery spanPrefixQuery(String value, org.apache.lucene.queries.spans.SpanMultiTermQueryWrapper.SpanRewriteMethod method, SearchExecutionContext context) - Overrides:
spanPrefixQuery
in classMappedFieldType
-
applyScriptContext
-
valueFetcher
Description copied from class:MappedFieldType
Create a helper class to fetch field values during theFetchFieldsPhase
. New field types must implement this method in order to support the search 'fields' option. Except for metadata fields, field types should not throwUnsupportedOperationException
since this could cause a search retrieving multiple fields (like "fields": ["*"]) to fail.- Specified by:
valueFetcher
in classMappedFieldType
-
leafFactory
Create a script leaf factory. -
leafFactory
Create a script leaf factory for queries. -
validateMatchedRoutingPath
public void validateMatchedRoutingPath()Description copied from class:MappedFieldType
Validate that this field can be the target ofIndexMetadata.INDEX_ROUTING_PATH
.- Overrides:
validateMatchedRoutingPath
in classMappedFieldType
-