Class RowCursorResultSet

java.lang.Object
app.babylon.table.io.RowCursorResultSet
All Implemented Interfaces:
RowCursor, AutoCloseable

public class RowCursorResultSet extends Object implements RowCursor
Supplies rows from a caller-owned ResultSet.

This supplier adapts a caller-owned ResultSet. Closing the supplier is a no-op; the caller remains responsible for the lifecycle of the underlying JDBC resources.

Example:


 Connection connection = ...;
 try (PreparedStatement statement = connection
         .prepareStatement("select city, amount from trades where trade_date >= ?"))
 {
     statement.setDate(1, java.sql.Date.valueOf("2026-01-01"));
     try (ResultSet resultSet = statement.executeQuery())
     {
         RowCursor supplier = new RowCursorResultSet(resultSet);

         ColumnDefinition[] columns = supplier.columns();
         while (supplier.next())
         {
             Row row = supplier.current();
         }
     }
 }
 
This implementation is a demonstration of what is possible and the likely structure given the ResultSet API. Different drivers may still have quirks that require special implementations.