3232 */
3333public class CachedResultSets
3434{
35- public static CachedResultSet create (ResultSet rs , boolean cacheMetaData , int maxRows ) throws SQLException
35+ public static CachedResultSet create (ResultSet rs , boolean cacheMetaData , boolean requireClose , int maxRows ) throws SQLException
3636 {
37- return create (rs , cacheMetaData , maxRows , null , QueryLogging .emptyQueryLogging ());
37+ return create (rs , cacheMetaData , requireClose , maxRows , null , QueryLogging .emptyQueryLogging ());
3838 }
3939
40- public static CachedResultSet create (ResultSet rsIn , boolean cacheMetaData , int maxRows , @ Nullable StackTraceElement [] stackTrace , QueryLogging queryLogging ) throws SQLException
40+ public static CachedResultSet create (ResultSet rsIn , boolean cacheMetaData , boolean requireClose , int maxRows , @ Nullable StackTraceElement [] stackTrace , QueryLogging queryLogging ) throws SQLException
4141 {
4242 try (ResultSet rs = new LoggingResultSetWrapper (rsIn , queryLogging )) // TODO: avoid if we're passed a read-only and empty one??
4343 {
@@ -58,13 +58,13 @@ public static CachedResultSet create(ResultSet rsIn, boolean cacheMetaData, int
5858 // If we have another row, then we're not complete
5959 boolean isComplete = !rs .next ();
6060
61- return new CachedResultSet (md , list , isComplete , stackTrace );
61+ return new CachedResultSet (md , list , isComplete , requireClose , stackTrace );
6262 }
6363 }
6464
6565 public static CachedResultSet create (ResultSetMetaData md , List <Map <String , Object >> maps , boolean isComplete )
6666 {
67- return new CachedResultSet (md , convertToRowMaps (md , maps ), isComplete , null );
67+ return new CachedResultSet (md , convertToRowMaps (md , maps ), isComplete , true , null );
6868 }
6969
7070 public static CachedResultSet create (List <Map <String , Object >> maps )
@@ -88,7 +88,7 @@ public static CachedResultSet create(List<Map<String, Object>> maps, Collection<
8888 ResultSetMetaData md = createMetaData (columnNames );
8989
9090 // Avoid error message from CachedResultSet.finalize() about unclosed CachedResultSet.
91- try (CachedResultSet crs = new CachedResultSet (md , convertToRowMaps (md , maps ), true , null ))
91+ try (CachedResultSet crs = new CachedResultSet (md , convertToRowMaps (md , maps ), true , true , null ))
9292 {
9393 return crs ;
9494 }
0 commit comments