in flight/flight-sql-jdbc-core/src/main/java/org/apache/arrow/driver/jdbc/accessor/ArrowFlightJdbcAccessorFactory.java [89:205]
public static ArrowFlightJdbcAccessor createAccessor(
ValueVector vector, IntSupplier getCurrentRow, WasNullConsumer setCursorWasNull) {
if (vector instanceof UInt1Vector) {
return new ArrowFlightJdbcBaseIntVectorAccessor(
(UInt1Vector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof UInt2Vector) {
return new ArrowFlightJdbcBaseIntVectorAccessor(
(UInt2Vector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof UInt4Vector) {
return new ArrowFlightJdbcBaseIntVectorAccessor(
(UInt4Vector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof UInt8Vector) {
return new ArrowFlightJdbcBaseIntVectorAccessor(
(UInt8Vector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof TinyIntVector) {
return new ArrowFlightJdbcBaseIntVectorAccessor(
(TinyIntVector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof SmallIntVector) {
return new ArrowFlightJdbcBaseIntVectorAccessor(
(SmallIntVector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof IntVector) {
return new ArrowFlightJdbcBaseIntVectorAccessor(
(IntVector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof BigIntVector) {
return new ArrowFlightJdbcBaseIntVectorAccessor(
(BigIntVector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof Float4Vector) {
return new ArrowFlightJdbcFloat4VectorAccessor(
(Float4Vector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof Float8Vector) {
return new ArrowFlightJdbcFloat8VectorAccessor(
(Float8Vector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof BitVector) {
return new ArrowFlightJdbcBitVectorAccessor(
(BitVector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof DecimalVector) {
return new ArrowFlightJdbcDecimalVectorAccessor(
(DecimalVector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof Decimal256Vector) {
return new ArrowFlightJdbcDecimalVectorAccessor(
(Decimal256Vector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof VarBinaryVector) {
return new ArrowFlightJdbcBinaryVectorAccessor(
(VarBinaryVector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof LargeVarBinaryVector) {
return new ArrowFlightJdbcBinaryVectorAccessor(
(LargeVarBinaryVector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof FixedSizeBinaryVector) {
return new ArrowFlightJdbcBinaryVectorAccessor(
(FixedSizeBinaryVector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof TimeStampVector) {
return new ArrowFlightJdbcTimeStampVectorAccessor(
(TimeStampVector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof TimeNanoVector) {
return new ArrowFlightJdbcTimeVectorAccessor(
(TimeNanoVector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof TimeMicroVector) {
return new ArrowFlightJdbcTimeVectorAccessor(
(TimeMicroVector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof TimeMilliVector) {
return new ArrowFlightJdbcTimeVectorAccessor(
(TimeMilliVector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof TimeSecVector) {
return new ArrowFlightJdbcTimeVectorAccessor(
(TimeSecVector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof DateDayVector) {
return new ArrowFlightJdbcDateVectorAccessor(
((DateDayVector) vector), getCurrentRow, setCursorWasNull);
} else if (vector instanceof DateMilliVector) {
return new ArrowFlightJdbcDateVectorAccessor(
((DateMilliVector) vector), getCurrentRow, setCursorWasNull);
} else if (vector instanceof VarCharVector) {
return new ArrowFlightJdbcVarCharVectorAccessor(
(VarCharVector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof LargeVarCharVector) {
return new ArrowFlightJdbcVarCharVectorAccessor(
(LargeVarCharVector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof DurationVector) {
return new ArrowFlightJdbcDurationVectorAccessor(
(DurationVector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof IntervalDayVector) {
return new ArrowFlightJdbcIntervalVectorAccessor(
((IntervalDayVector) vector), getCurrentRow, setCursorWasNull);
} else if (vector instanceof IntervalYearVector) {
return new ArrowFlightJdbcIntervalVectorAccessor(
((IntervalYearVector) vector), getCurrentRow, setCursorWasNull);
} else if (vector instanceof IntervalMonthDayNanoVector) {
return new ArrowFlightJdbcIntervalVectorAccessor(
((IntervalMonthDayNanoVector) vector), getCurrentRow, setCursorWasNull);
} else if (vector instanceof StructVector) {
return new ArrowFlightJdbcStructVectorAccessor(
(StructVector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof MapVector) {
return new ArrowFlightJdbcMapVectorAccessor(
(MapVector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof ListVector) {
return new ArrowFlightJdbcListVectorAccessor(
(ListVector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof LargeListVector) {
return new ArrowFlightJdbcLargeListVectorAccessor(
(LargeListVector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof FixedSizeListVector) {
return new ArrowFlightJdbcFixedSizeListVectorAccessor(
(FixedSizeListVector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof UnionVector) {
return new ArrowFlightJdbcUnionVectorAccessor(
(UnionVector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof DenseUnionVector) {
return new ArrowFlightJdbcDenseUnionVectorAccessor(
(DenseUnionVector) vector, getCurrentRow, setCursorWasNull);
} else if (vector instanceof NullVector || vector == null) {
return new ArrowFlightJdbcNullVectorAccessor(setCursorWasNull);
}
throw new UnsupportedOperationException(
"Unsupported vector type: " + vector.getClass().getName());
}