Package oracle.jdbc

## Interface OracleCommonResultSet

All Superinterfaces:
  `java.lang.AutoCloseable`, `java.sql.ResultSet`, `java.sql.Wrapper`

All Known Subinterfaces:
  `OracleResultSet`

    public interface OracleCommonResultSet
    extends java.sql.ResultSet

Interface that defines common methods.

Since:
  23

### Field Summary

### Fields inherited from interface java.sql.ResultSet

`CLOSE_CURSORS_AT_COMMIT, CONCUR_READ_ONLY, CONCUR_UPDATABLE, FETCH_FORWARD, FETCH_REVERSE, FETCH_UNKNOWN, HOLD_CURSORS_OVER_COMMIT, TYPE_FORWARD_ONLY, TYPE_SCROLL_INSENSITIVE, TYPE_SCROLL_SENSITIVE`

### Method Summary

All Methods Instance Methods Abstract Methods
`<T> java.util.concurrent.Flow.Publisher<T>` `publisherOracle​(java.util.function.Function<? super OracleRow,​T> rowMappingFunction)` Returns a `Publisher` that publishes the rows of this `ResultSet` beginning with the first row.

### Methods inherited from interface java.sql.ResultSet

`absolute, afterLast, beforeFirst, cancelRowUpdates, clearWarnings, close, deleteRow, findColumn, first, getArray, getArray, getAsciiStream, getAsciiStream, getBigDecimal, getBigDecimal, getBigDecimal, getBigDecimal, getBinaryStream, getBinaryStream, getBlob, getBlob, getBoolean, getBoolean, getByte, getByte, getBytes, getBytes, getCharacterStream, getCharacterStream, getClob, getClob, getConcurrency, getCursorName, getDate, getDate, getDate, getDate, getDouble, getDouble, getFetchDirection, getFetchSize, getFloat, getFloat, getHoldability, getInt, getInt, getLong, getLong, getMetaData, getNCharacterStream, getNCharacterStream, getNClob, getNClob, getNString, getNString, getObject, getObject, getObject, getObject, getObject, getObject, getRef, getRef, getRow, getRowId, getRowId, getShort, getShort, getSQLXML, getSQLXML, getStatement, getString, getString, getTime, getTime, getTime, getTime, getTimestamp, getTimestamp, getTimestamp, getTimestamp, getType, getUnicodeStream, getUnicodeStream, getURL, getURL, getWarnings, insertRow, isAfterLast, isBeforeFirst, isClosed, isFirst, isLast, last, moveToCurrentRow, moveToInsertRow, next, previous, refreshRow, relative, rowDeleted, rowInserted, rowUpdated, setFetchDirection, setFetchSize, updateArray, updateArray, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateBigDecimal, updateBigDecimal, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBlob, updateBlob, updateBlob, updateBlob, updateBlob, updateBlob, updateBoolean, updateBoolean, updateByte, updateByte, updateBytes, updateBytes, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateClob, updateClob, updateClob, updateClob, updateClob, updateClob, updateDate, updateDate, updateDouble, updateDouble, updateFloat, updateFloat, updateInt, updateInt, updateLong, updateLong, updateNCharacterStream, updateNCharacterStream, updateNCharacterStream, updateNCharacterStream, updateNClob, updateNClob, updateNClob, updateNClob, updateNClob, updateNClob, updateNString, updateNString, updateNull, updateNull, updateObject, updateObject, updateObject, updateObject, updateObject, updateObject, updateObject, updateObject, updateRef, updateRef, updateRow, updateRowId, updateRowId, updateShort, updateShort, updateSQLXML, updateSQLXML, updateString, updateString, updateTime, updateTime, updateTimestamp, updateTimestamp, wasNull`

### Methods inherited from interface java.sql.Wrapper

`isWrapperFor, unwrap`

### Method Detail

#### publisherOracle

    <T> java.util.concurrent.Flow.Publisher<T> publisherOracle​(java.util.function.Function<? super OracleRow,​T> rowMappingFunction)
                                                        throws java.sql.SQLException

Returns a `Publisher` that publishes the rows of this `ResultSet` beginning with the first row. A `rowMappingFunction` defines the type `T` which rows are published as. Each `OracleRow` is valid only for the duration of the call to the `rowMappingFunction`. `OracleRow.clone()` will create a new instance of `OracleRow` which persists after the `rowMappingFunction` returns. An unchecked exception thrown by the row mapping function is emitted as an `onError` signal to subscribers.

The returned `Publisher` supports multiple `Subscribers`. `Subscribers` which subscribe after some rows are published will not see the already published rows. It may be the case that rows are published only when all subscribers have requested additional rows.

This method closes the `ResultSet`.

Parameters:
  `rowMappingFunction` - Function applied to each row which produces the published type `T`.
Returns:
  a `Publisher` of the rows of this `ResultSet`
Throws:
  `java.sql.SQLException` - If a database error occurs, if this method is called on a closed `ResultSet`, or if this `ResultSet`'s cursor has been moved from its initial position before the first row.
Since:
  20