Package org.opensearch.index.mapper
Class SearchAsYouTypeFieldMapper
- java.lang.Object
-
- org.opensearch.index.mapper.Mapper
-
- org.opensearch.index.mapper.FieldMapper
-
- org.opensearch.index.mapper.ParametrizedFieldMapper
-
- org.opensearch.index.mapper.SearchAsYouTypeFieldMapper
-
- All Implemented Interfaces:
java.lang.Cloneable,java.lang.Iterable<Mapper>,ToXContent,ToXContentFragment
public class SearchAsYouTypeFieldMapper extends ParametrizedFieldMapper
Mapper for a text field that optimizes itself for as-you-type completion by indexing its content into subfields. Each subfield modifies the analysis chain of the root field to index terms the user would create as they type out the value in the root field The structure of these fields is[ SearchAsYouTypeFieldMapper, SearchAsYouTypeFieldType, unmodified analysis ] ├── [ ShingleFieldMapper, ShingleFieldType, analysis wrapped with 2-shingles ] ├── ... ├── [ ShingleFieldMapper, ShingleFieldType, analysis wrapped with max_shingle_size-shingles ] └── [ PrefixFieldMapper, PrefixFieldType, analysis wrapped with max_shingle_size-shingles and edge-ngrams ]
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classSearchAsYouTypeFieldMapper.Builderstatic classSearchAsYouTypeFieldMapper.Defaults-
Nested classes/interfaces inherited from class org.opensearch.index.mapper.ParametrizedFieldMapper
ParametrizedFieldMapper.Parameter<T extends java.lang.Object>, ParametrizedFieldMapper.Serializer<T extends java.lang.Object>, ParametrizedFieldMapper.SerializerCheck<T extends java.lang.Object>, ParametrizedFieldMapper.TypeParser
-
Nested classes/interfaces inherited from class org.opensearch.index.mapper.FieldMapper
FieldMapper.CopyTo, FieldMapper.MultiFields
-
Nested classes/interfaces inherited from class org.opensearch.index.mapper.Mapper
Mapper.BuilderContext
-
Nested classes/interfaces inherited from interface org.opensearch.common.xcontent.ToXContent
ToXContent.DelegatingMapParams, ToXContent.MapParams, ToXContent.Params
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringCONTENT_TYPEstatic ParametrizedFieldMapper.TypeParserPARSER-
Fields inherited from class org.opensearch.index.mapper.FieldMapper
COERCE_SETTING, copyTo, fieldType, IGNORE_MALFORMED_SETTING, mappedFieldType, multiFields
-
Fields inherited from interface org.opensearch.common.xcontent.ToXContent
EMPTY_PARAMS
-
-
Constructor Summary
Constructors Constructor Description SearchAsYouTypeFieldMapper(java.lang.String simpleName, org.opensearch.index.mapper.SearchAsYouTypeFieldMapper.SearchAsYouTypeFieldType mappedFieldType, FieldMapper.CopyTo copyTo, org.opensearch.index.mapper.SearchAsYouTypeFieldMapper.PrefixFieldMapper prefixField, org.opensearch.index.mapper.SearchAsYouTypeFieldMapper.ShingleFieldMapper[] shingleFields, SearchAsYouTypeFieldMapper.Builder builder)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.lang.StringcontentType()org.opensearch.index.mapper.SearchAsYouTypeFieldMapper.SearchAsYouTypeFieldTypefieldType()ParametrizedFieldMapper.BuildergetMergeBuilder()static java.lang.StringgetShingleFieldName(java.lang.String parentField, int shingleSize)java.util.Iterator<Mapper>iterator()intmaxShingleSize()protected voidparseCreateField(ParseContext context)org.opensearch.index.mapper.SearchAsYouTypeFieldMapper.PrefixFieldMapperprefixField()org.opensearch.index.mapper.SearchAsYouTypeFieldMapper.ShingleFieldMapper[]shingleFields()-
Methods inherited from class org.opensearch.index.mapper.ParametrizedFieldMapper
doXContentBody, merge, mergeOptions
-
Methods inherited from class org.opensearch.index.mapper.FieldMapper
clone, copyTo, createFieldNamesField, docValuesByDefault, doValidate, doXContentAnalyzers, indexedByDefault, indexOptionToString, multiFields, name, parse, parsesArrayValue, storedByDefault, toXContent, typeName, validate
-
Methods inherited from class org.opensearch.index.mapper.Mapper
hasIndexCreated, simpleName
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.opensearch.common.xcontent.ToXContentFragment
isFragment
-
-
-
-
Field Detail
-
CONTENT_TYPE
public static final java.lang.String CONTENT_TYPE
- See Also:
- Constant Field Values
-
PARSER
public static final ParametrizedFieldMapper.TypeParser PARSER
-
-
Constructor Detail
-
SearchAsYouTypeFieldMapper
public SearchAsYouTypeFieldMapper(java.lang.String simpleName, org.opensearch.index.mapper.SearchAsYouTypeFieldMapper.SearchAsYouTypeFieldType mappedFieldType, FieldMapper.CopyTo copyTo, org.opensearch.index.mapper.SearchAsYouTypeFieldMapper.PrefixFieldMapper prefixField, org.opensearch.index.mapper.SearchAsYouTypeFieldMapper.ShingleFieldMapper[] shingleFields, SearchAsYouTypeFieldMapper.Builder builder)
-
-
Method Detail
-
parseCreateField
protected void parseCreateField(ParseContext context) throws java.io.IOException
- Specified by:
parseCreateFieldin classFieldMapper- Throws:
java.io.IOException
-
contentType
protected java.lang.String contentType()
- Specified by:
contentTypein classFieldMapper
-
getMergeBuilder
public ParametrizedFieldMapper.Builder getMergeBuilder()
- Specified by:
getMergeBuilderin classParametrizedFieldMapper
-
getShingleFieldName
public static java.lang.String getShingleFieldName(java.lang.String parentField, int shingleSize)
-
fieldType
public org.opensearch.index.mapper.SearchAsYouTypeFieldMapper.SearchAsYouTypeFieldType fieldType()
- Overrides:
fieldTypein classFieldMapper
-
maxShingleSize
public int maxShingleSize()
-
prefixField
public org.opensearch.index.mapper.SearchAsYouTypeFieldMapper.PrefixFieldMapper prefixField()
-
shingleFields
public org.opensearch.index.mapper.SearchAsYouTypeFieldMapper.ShingleFieldMapper[] shingleFields()
-
iterator
public java.util.Iterator<Mapper> iterator()
- Specified by:
iteratorin interfacejava.lang.Iterable<Mapper>- Overrides:
iteratorin classFieldMapper
-
-