java.lang.Object
org.postgresql.pljava.internal.ResultSetPicker
- All Implemented Interfaces:
ResultSetProvider
,ResultSetProvider.Large
An adapter class used internally when a set-returning user function returns
a
ResultSetHandle
, presenting it as a ResultSetProvider
instead.
Note on the current implementation:
this class operates by fetching every field of every row of the result set
as a Java object via the one-argument getObject
, then storing it into
the writable result set supplied by PL/Java. Apart from being rather
inefficient, this can involve conversions through legacy types (such as
java.sql.Timestamp
when the JSR 310 java.time
conversions are
better specified). In cases where that isn't acceptable, the user function
should be declared to return ResultSetProvider
and do this work
itself.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.postgresql.pljava.ResultSetProvider
ResultSetProvider.Large
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionboolean
assignRowValues
(ResultSet receiver, long currentRow) void
close()
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.postgresql.pljava.ResultSetProvider.Large
assignRowValues
-
Constructor Details
-
ResultSetPicker
- Throws:
SQLException
-
-
Method Details
-
assignRowValues
- Specified by:
assignRowValues
in interfaceResultSetProvider
- Specified by:
assignRowValues
in interfaceResultSetProvider.Large
- Throws:
SQLException
-
close
- Specified by:
close
in interfaceResultSetProvider
- Throws:
SQLException
-