Interface PlanStreamInput


public interface PlanStreamInput
Interface for streams that can serialize plan components. This exists so ESQL proper can expose streaming capability to ESQL-core. If the world is kind and just we'll remove this when we flatten everything from ESQL-core into ESQL proper.
  • Method Details

    • sourceText

      String sourceText()
      The query sent by the user to build this plan. This is used to rebuild Source without sending the query over the wire over and over and over again.
    • mapNameId

      NameId mapNameId(long id) throws IOException
      Translate a long into a NameId, mapping the same long into the same NameId each time. Each new long gets assigned a unique id to the node, but when the same id is sent in the stream we get the same result.
      Throws:
      IOException
    • readAttributeWithCache

      <A extends Attribute> A readAttributeWithCache(org.elasticsearch.core.CheckedFunction<StreamInput,A,IOException> constructor) throws IOException
      Reads an Attribute using the attribute cache.
      Parameters:
      constructor - the constructor needed to build the actual attribute when read from the wire
      Returns:
      An attribute; this will generally be the same type as the provided constructor
      Throws:
      IOException
    • readEsFieldWithCache

      <A extends EsField> A readEsFieldWithCache() throws IOException
      Throws:
      IOException
    • readCachedString

      String readCachedString() throws IOException
      Throws:
      IOException
    • readCachedStringWithVersionCheck

      static String readCachedStringWithVersionCheck(StreamInput planStreamInput) throws IOException
      Throws:
      IOException
    • readOptionalCachedString

      String readOptionalCachedString() throws IOException
      Throws:
      IOException