Package org.elasticsearch.index.mapper
Class StringFieldType
- java.lang.Object
-
- org.apache.lucene.document.FieldType
-
- org.elasticsearch.index.mapper.MappedFieldType
-
- org.elasticsearch.index.mapper.SimpleMappedFieldType
-
- org.elasticsearch.index.mapper.StringFieldType
-
- All Implemented Interfaces:
org.apache.lucene.index.IndexableFieldType
- Direct Known Subclasses:
KeywordFieldMapper.KeywordFieldType,TextFieldMapper.TextFieldType
public abstract class StringFieldType extends SimpleMappedFieldType
Base class forMappedFieldTypeimplementations that use the same representation for internal index terms as the external representation so that partial matching queries such as prefix, wildcard and fuzzy queries can be implemented.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.elasticsearch.index.mapper.MappedFieldType
MappedFieldType.Relation
-
-
Constructor Summary
Constructors Modifier Constructor Description StringFieldType()protectedStringFieldType(MappedFieldType ref)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.apache.lucene.search.QueryfuzzyQuery(java.lang.Object value, Fuzziness fuzziness, int prefixLength, int maxExpansions, boolean transpositions)protected org.apache.lucene.util.BytesRefindexedValueForSearch(java.lang.Object value)Returns the indexed value used to construct search "values".org.apache.lucene.search.QuerymultiPhraseQuery(java.lang.String field, org.apache.lucene.analysis.TokenStream stream, int slop, boolean enablePositionIncrements)org.apache.lucene.search.QueryphraseQuery(java.lang.String field, org.apache.lucene.analysis.TokenStream stream, int slop, boolean enablePosIncrements)org.apache.lucene.search.QueryprefixQuery(java.lang.String value, org.apache.lucene.search.MultiTermQuery.RewriteMethod method, QueryShardContext context)org.apache.lucene.search.QueryrangeQuery(java.lang.Object lowerTerm, java.lang.Object upperTerm, boolean includeLower, boolean includeUpper, QueryShardContext context)Same asSimpleMappedFieldType.rangeQuery(Object, Object, boolean, boolean, ShapeRelation, DateTimeZone, DateMathParser, QueryShardContext)but without the trouble of relations or date-specific options.org.apache.lucene.search.QueryregexpQuery(java.lang.String value, int flags, int maxDeterminizedStates, org.apache.lucene.search.MultiTermQuery.RewriteMethod method, QueryShardContext context)org.apache.lucene.search.QuerytermQuery(java.lang.Object value, QueryShardContext context)Generates a query that will only match documents that contain the given value.org.apache.lucene.search.QuerytermsQuery(java.util.List<?> values, QueryShardContext context)Build a constant-scoring query that matches all values.-
Methods inherited from class org.apache.lucene.document.FieldType
checkIfFrozen, docValuesType, freeze, indexOptions, omitNorms, pointDimensionCount, pointNumBytes, setDimensions, setDocValuesType, setIndexOptions, setOmitNorms, setStored, setStoreTermVectorOffsets, setStoreTermVectorPayloads, setStoreTermVectorPositions, setStoreTermVectors, setTokenized, stored, storeTermVectorOffsets, storeTermVectorPayloads, storeTermVectorPositions, storeTermVectors, tokenized, toString
-
Methods inherited from class org.elasticsearch.index.mapper.MappedFieldType
boost, checkCompatibility, clone, docValueFormat, eagerGlobalOrdinals, equals, existsQuery, extractTerm, failIfNoDocValues, failIfNotIndexed, fielddataBuilder, hasDocValues, hashCode, indexAnalyzer, isAggregatable, isFieldWithinQuery, isSearchable, name, nullValue, nullValueAsString, nullValueQuery, queryStringTermQuery, searchAnalyzer, searchQuoteAnalyzer, setBoost, setEagerGlobalOrdinals, setHasDocValues, setIndexAnalyzer, setName, setNullValue, setSearchAnalyzer, setSearchQuoteAnalyzer, setSimilarity, similarity, typeName, valueForDisplay
-
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from class org.elasticsearch.index.mapper.SimpleMappedFieldType
rangeQuery
-
-
-
-
Constructor Detail
-
StringFieldType
public StringFieldType()
-
StringFieldType
protected StringFieldType(MappedFieldType ref)
-
-
Method Detail
-
termsQuery
public org.apache.lucene.search.Query termsQuery(java.util.List<?> values, QueryShardContext context)Description copied from class:MappedFieldTypeBuild a constant-scoring query that matches all values. The default implementation uses aConstantScoreQueryaround aBooleanQuerywhoseBooleanClause.Occur.SHOULDclauses are generated withMappedFieldType.termQuery(java.lang.Object, org.elasticsearch.index.query.QueryShardContext).
-
fuzzyQuery
public org.apache.lucene.search.Query fuzzyQuery(java.lang.Object value, Fuzziness fuzziness, int prefixLength, int maxExpansions, boolean transpositions)- Overrides:
fuzzyQueryin classMappedFieldType
-
prefixQuery
public org.apache.lucene.search.Query prefixQuery(java.lang.String value, org.apache.lucene.search.MultiTermQuery.RewriteMethod method, QueryShardContext context)- Overrides:
prefixQueryin classMappedFieldType
-
regexpQuery
public org.apache.lucene.search.Query regexpQuery(java.lang.String value, int flags, int maxDeterminizedStates, org.apache.lucene.search.MultiTermQuery.RewriteMethod method, QueryShardContext context)- Overrides:
regexpQueryin classMappedFieldType
-
rangeQuery
public org.apache.lucene.search.Query rangeQuery(java.lang.Object lowerTerm, java.lang.Object upperTerm, boolean includeLower, boolean includeUpper, QueryShardContext context)Description copied from class:SimpleMappedFieldTypeSame asSimpleMappedFieldType.rangeQuery(Object, Object, boolean, boolean, ShapeRelation, DateTimeZone, DateMathParser, QueryShardContext)but without the trouble of relations or date-specific options.- Overrides:
rangeQueryin classSimpleMappedFieldType
-
phraseQuery
public org.apache.lucene.search.Query phraseQuery(java.lang.String field, org.apache.lucene.analysis.TokenStream stream, int slop, boolean enablePosIncrements) throws java.io.IOException- Overrides:
phraseQueryin classMappedFieldType- Throws:
java.io.IOException
-
multiPhraseQuery
public org.apache.lucene.search.Query multiPhraseQuery(java.lang.String field, org.apache.lucene.analysis.TokenStream stream, int slop, boolean enablePositionIncrements) throws java.io.IOException- Overrides:
multiPhraseQueryin classMappedFieldType- Throws:
java.io.IOException
-
indexedValueForSearch
protected org.apache.lucene.util.BytesRef indexedValueForSearch(java.lang.Object value)
Returns the indexed value used to construct search "values". This method is used for the default implementations of most query factory methods such astermQuery(java.lang.Object, org.elasticsearch.index.query.QueryShardContext).
-
termQuery
public org.apache.lucene.search.Query termQuery(java.lang.Object value, QueryShardContext context)Description copied from class:MappedFieldTypeGenerates a query that will only match documents that contain the given value. The default implementation returns aTermQueryover the value bytes, boosted byMappedFieldType.boost().- Specified by:
termQueryin classMappedFieldType
-
-