Interface ArrowToBlockConverter

Functional Interface:
This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

@FunctionalInterface public interface ArrowToBlockConverter
Converts Apache Arrow FieldVector to ESQL Blocks. This is the inverse operation of BlockConverter (Block → Arrow). Together they provide symmetric conversion: Block ↔ Arrow.

Note: Timestamp types are converted to milliseconds or nanoseconds. Float types (FLOAT2, FLOAT4) are converted to double (ESQL doesn't have a separate float type).

  • Method Summary

    Modifier and Type
    Method
    Description
    convert(org.apache.arrow.vector.FieldVector vector, BlockFactory factory)
    Convert an Arrow FieldVector to an ESQL Block.
    forType(org.apache.arrow.vector.types.Types.MinorType arrowType)
    Get a converter for the given Arrow type.
  • Method Details

    • convert

      Block convert(org.apache.arrow.vector.FieldVector vector, BlockFactory factory)
      Convert an Arrow FieldVector to an ESQL Block.
      Parameters:
      vector - the Arrow vector
      factory - the block factory for memory management
      Returns:
      the ESQL block
    • forType

      static ArrowToBlockConverter forType(org.apache.arrow.vector.types.Types.MinorType arrowType)
      Get a converter for the given Arrow type.
      Parameters:
      arrowType - the Arrow minor type
      Returns:
      the appropriate converter, or null if the type is not supported