Package org.elasticsearch.index.mapper
Class KeywordFieldMapper
java.lang.Object
org.elasticsearch.index.mapper.Mapper
org.elasticsearch.index.mapper.FieldMapper
org.elasticsearch.index.mapper.KeywordFieldMapper
- All Implemented Interfaces:
Cloneable
,Iterable<Mapper>
,ToXContent
,ToXContentFragment
A field mapper for keywords. This mapper accepts strings and indexes them as-is.
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
static class
static class
static final class
Nested classes/interfaces inherited from class org.elasticsearch.index.mapper.FieldMapper
FieldMapper.Conflicts, FieldMapper.CopyTo, FieldMapper.MergeValidator<T>, FieldMapper.MultiFields, FieldMapper.Parameter<T>, FieldMapper.Serializer<T>, FieldMapper.SerializerCheck<T>, FieldMapper.TypeParser
Nested classes/interfaces inherited from interface org.elasticsearch.xcontent.ToXContent
ToXContent.DelegatingMapParams, ToXContent.MapParams, ToXContent.Params
-
Field Summary
Fields inherited from class org.elasticsearch.index.mapper.FieldMapper
COERCE_SETTING, copyTo, hasScript, IGNORE_MALFORMED_SETTING, mappedFieldType, multiFields, onScriptError
Fields inherited from interface org.elasticsearch.xcontent.ToXContent
EMPTY_PARAMS
-
Method Summary
Modifier and TypeMethodDescriptionprotected String
Returns aFieldMapper.Builder
to be used for merging and serialization Implement as follows:return new MyBuilder(simpleName()).init(this);
protected void
indexScriptValues
(SearchLookup searchLookup, org.apache.lucene.index.LeafReaderContext readerContext, int doc, DocumentParserContext documentParserContext) Run the script associated with the field and index the values that it emits This method should only be called ifFieldMapper.hasScript()
has returnedtrue
protected void
parseCreateField
(DocumentParserContext context) Parse the field value and populate the fields onDocumentParserContext.doc()
.Methods inherited from class org.elasticsearch.index.mapper.FieldMapper
checkIncomingMergeType, copyTo, doValidate, doXContentBody, executeScript, hasScript, indexAnalyzers, iterator, merge, multiFields, name, notInMultiFields, parse, parsesArrayValue, toXContent, typeName, validate
Methods inherited from class org.elasticsearch.index.mapper.Mapper
simpleName
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface java.lang.Iterable
forEach, spliterator
Methods inherited from interface org.elasticsearch.xcontent.ToXContentFragment
isFragment
-
Field Details
-
CONTENT_TYPE
- See Also:
-
PARSER
-
-
Method Details
-
fieldType
- Overrides:
fieldType
in classFieldMapper
-
parseCreateField
Description copied from class:FieldMapper
Parse the field value and populate the fields onDocumentParserContext.doc()
. Implementations of this method should ensure that on failing to parse parser.currentToken() must be the current failing token- Specified by:
parseCreateField
in classFieldMapper
- Throws:
IOException
-
indexScriptValues
protected void indexScriptValues(SearchLookup searchLookup, org.apache.lucene.index.LeafReaderContext readerContext, int doc, DocumentParserContext documentParserContext) Description copied from class:FieldMapper
Run the script associated with the field and index the values that it emits This method should only be called ifFieldMapper.hasScript()
has returnedtrue
- Overrides:
indexScriptValues
in classFieldMapper
- Parameters:
searchLookup
- a SearchLookup to be passed the scriptreaderContext
- a LeafReaderContext exposing values from an incoming documentdoc
- the id of the document to execute the script againstdocumentParserContext
- the ParseContext over the incoming document
-
contentType
- Specified by:
contentType
in classFieldMapper
-
getMergeBuilder
Description copied from class:FieldMapper
Returns aFieldMapper.Builder
to be used for merging and serialization Implement as follows:return new MyBuilder(simpleName()).init(this);
- Specified by:
getMergeBuilder
in classFieldMapper
-