Class FlattenedFieldMapper.RootFlattenedFieldType

Enclosing class:
FlattenedFieldMapper

public static final class FlattenedFieldMapper.RootFlattenedFieldType
extends StringFieldType
A field type that represents all 'root' values. This field type is used in searches on the flattened field itself, e.g. 'my_flattened: some_value'.
  • Constructor Details

    • RootFlattenedFieldType

      public RootFlattenedFieldType​(java.lang.String name, boolean indexed, boolean hasDocValues, java.util.Map<java.lang.String,​java.lang.String> meta, boolean splitQueriesOnWhitespace, boolean eagerGlobalOrdinals)
  • Method Details

    • typeName

      public java.lang.String typeName()
      Description copied from class: MappedFieldType
      Returns the name of this type, as would be specified in mapping properties
      Specified by:
      typeName in class MappedFieldType
    • eagerGlobalOrdinals

      public boolean eagerGlobalOrdinals()
      Overrides:
      eagerGlobalOrdinals in class MappedFieldType
      Returns:
      if this field type should load global ordinals eagerly
    • valueForDisplay

      public java.lang.Object valueForDisplay​(java.lang.Object value)
      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 class MappedFieldType
    • fielddataBuilder

      public IndexFieldData.Builder fielddataBuilder​(java.lang.String fullyQualifiedIndexName, java.util.function.Supplier<SearchLookup> searchLookup)
      Description copied from class: MappedFieldType
      Return a fielddata builder for this field
      Overrides:
      fielddataBuilder in class MappedFieldType
      Parameters:
      fullyQualifiedIndexName - the name of the index this field-data is build for
      searchLookup - a SearchLookup supplier to allow for accessing other fields values in the context of runtime fields
    • valueFetcher

      public ValueFetcher valueFetcher​(SearchExecutionContext context, java.lang.String format)
      Description copied from class: MappedFieldType
      Create a helper class to fetch field values during the FetchFieldsPhase.

      New field types must implement this method in order to support the search 'fields' option. Except for metadata fields, field types should not throw UnsupportedOperationException since this could cause a search retrieving multiple fields (like "fields": ["*"]) to fail.

      Specified by:
      valueFetcher in class MappedFieldType