Interface RuntimeField

All Superinterfaces:
org.elasticsearch.common.xcontent.ToXContent, org.elasticsearch.common.xcontent.ToXContentFragment
All Known Implementing Classes:
BooleanScriptFieldType, DateScriptFieldType, DoubleScriptFieldType, GeoPointScriptFieldType, IpScriptFieldType, KeywordScriptFieldType, LongScriptFieldType

public interface RuntimeField extends org.elasticsearch.common.xcontent.ToXContentFragment
Definition of a runtime field that can be defined as part of the runtime section of the index mappings
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Interface
    Description
    static class 
     
    static class 
    Parser for a runtime field.

    Nested classes/interfaces inherited from interface org.elasticsearch.common.xcontent.ToXContent

    org.elasticsearch.common.xcontent.ToXContent.DelegatingMapParams, org.elasticsearch.common.xcontent.ToXContent.MapParams, org.elasticsearch.common.xcontent.ToXContent.Params
  • Field Summary

    Fields inherited from interface org.elasticsearch.common.xcontent.ToXContent

    EMPTY_PARAMS
  • Method Summary

    Modifier and Type
    Method
    Description
    Exposes the MappedFieldTypes backing this runtime field, used to execute queries, run aggs etc.
    Collect and return all MappedFieldType exposed by the provided RuntimeFields.
    void
    doXContentBody(org.elasticsearch.common.xcontent.XContentBuilder builder, org.elasticsearch.common.xcontent.ToXContent.Params params)
    Prints out the parameters that subclasses expose
    Exposes the name of the runtime field
    parseRuntimeFields(Map<String,Object> node, MappingParserContext parserContext, boolean supportsRemoval)
    Parse runtime fields from the provided map, using the provided parser context.
    default org.elasticsearch.common.xcontent.XContentBuilder
    toXContent(org.elasticsearch.common.xcontent.XContentBuilder builder, org.elasticsearch.common.xcontent.ToXContent.Params params)
     
    Exposes the type of the runtime field

    Methods inherited from interface org.elasticsearch.common.xcontent.ToXContentFragment

    isFragment
  • Method Details

    • toXContent

      default org.elasticsearch.common.xcontent.XContentBuilder toXContent(org.elasticsearch.common.xcontent.XContentBuilder builder, org.elasticsearch.common.xcontent.ToXContent.Params params) throws IOException
      Specified by:
      toXContent in interface org.elasticsearch.common.xcontent.ToXContent
      Throws:
      IOException
    • doXContentBody

      void doXContentBody(org.elasticsearch.common.xcontent.XContentBuilder builder, org.elasticsearch.common.xcontent.ToXContent.Params params) throws IOException
      Prints out the parameters that subclasses expose
      Throws:
      IOException
    • name

      String name()
      Exposes the name of the runtime field
      Returns:
      name of the field
    • typeName

      String typeName()
      Exposes the type of the runtime field
      Returns:
      type of the field
    • asMappedFieldTypes

      Collection<MappedFieldType> asMappedFieldTypes()
      Exposes the MappedFieldTypes backing this runtime field, used to execute queries, run aggs etc.
      Returns:
      the MappedFieldTypes backing this runtime field
    • parseRuntimeFields

      static Map<String,RuntimeField> parseRuntimeFields(Map<String,Object> node, MappingParserContext parserContext, boolean supportsRemoval)
      Parse runtime fields from the provided map, using the provided parser context.
      Parameters:
      node - the map that holds the runtime fields configuration
      parserContext - the parser context that holds info needed when parsing mappings
      supportsRemoval - whether a null value for a runtime field should be properly parsed and translated to the removal of such runtime field
      Returns:
      the parsed runtime fields
    • collectFieldTypes

      static Map<String,MappedFieldType> collectFieldTypes(Collection<RuntimeField> runtimeFields)
      Collect and return all MappedFieldType exposed by the provided RuntimeFields. Note that validation is performed to make sure that there are no name clashes among the collected runtime fields. This is because runtime fields with the same name are not accepted as part of the same section.
      Parameters:
      runtimeFields - the runtime to extract the mapped field types from
      Returns:
      the collected mapped field types