java.lang.Object
org.elasticsearch.index.mapper.Mapper
org.elasticsearch.index.mapper.FieldMapper
org.elasticsearch.index.mapper.NumberFieldMapper
- All Implemented Interfaces:
Cloneable
,Iterable<Mapper>
,ToXContent
,ToXContentFragment
A
FieldMapper
for numeric types: byte, short, int, long, float and double.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
static class
static enum
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
FieldsFields inherited from class org.elasticsearch.index.mapper.FieldMapper
copyTo, deprecationLogger, hasScript, IGNORE_MALFORMED_SETTING, mappedFieldType, multiFields, onScriptError
Fields inherited from interface org.elasticsearch.xcontent.ToXContent
EMPTY, EMPTY_PARAMS
-
Method Summary
Modifier and TypeMethodDescriptionprotected String
void
doValidate
(MappingLookup lookup) Returns aFieldMapper.Builder
to be used for merging and serialization Implement as follows:return new MyBuilder(simpleName()).init(this);
boolean
Will this field ignore malformed values for this field and accept the document (true
) or will it reject documents with malformed values for this field (false
).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
void
indexValue
(DocumentParserContext context, Number numericValue) Index a value for this field.protected void
parseCreateField
(DocumentParserContext context) Parse the field value and populate the fields onDocumentParserContext.doc()
.Create aSourceLoader.SyntheticFieldLoader
to populate synthetic source.value
(XContentParser parser) Read the value at the current position of the parser.Methods inherited from class org.elasticsearch.index.mapper.FieldMapper
checkIncomingMergeType, copyTo, doXContentBody, executeScript, hasScript, indexAnalyzers, iterator, merge, multiFields, name, notInMultiFields, parse, parsesArrayValue, toXContent, typeName, validate
Methods inherited from class org.elasticsearch.index.mapper.Mapper
internFieldName, simpleName, toString
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.lang.Iterable
forEach, spliterator
Methods inherited from interface org.elasticsearch.xcontent.ToXContentFragment
isFragment
-
Field Details
-
COERCE_SETTING
-
-
Method Details
-
ignoreMalformed
public boolean ignoreMalformed()Description copied from class:FieldMapper
Will this field ignore malformed values for this field and accept the document (true
) or will it reject documents with malformed values for this field (false
). Some fields don't have a concept of "malformed" and will returnfalse
here.- Overrides:
ignoreMalformed
in classFieldMapper
-
fieldType
- Overrides:
fieldType
in classFieldMapper
-
contentType
- Specified by:
contentType
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
-
value
Read the value at the current position of the parser. For numeric fields this is called byparseCreateField(org.elasticsearch.index.mapper.DocumentParserContext)
but it is public so it can be used by other fields that want to share the behavior of numeric fields.- Throws:
IllegalArgumentException
- if there was an error parsing the value from the jsonIOException
- if there was any other IO error
-
indexValue
Index a value for this field. For numeric fields this is called byparseCreateField(org.elasticsearch.index.mapper.DocumentParserContext)
but it is public so it can be used by other fields that want to share the behavior of numeric fields. -
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
-
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
-
doValidate
- Overrides:
doValidate
in classFieldMapper
-
syntheticFieldLoader
Description copied from class:Mapper
Create aSourceLoader.SyntheticFieldLoader
to populate synthetic source.- Overrides:
syntheticFieldLoader
in classMapper
-