@@ -220,7 +220,7 @@ public interface SessionFactory extends EntityManagerFactory, Referenceable, Ser
220220 /**
221221 * Open a {@link Session} and use it to perform an action.
222222 */
223- default void inSession (Consumer <Session > action ) {
223+ default void inSession (Consumer <? super Session > action ) {
224224 try ( Session session = openSession () ) {
225225 action .accept ( session );
226226 }
@@ -231,7 +231,7 @@ default void inSession(Consumer<Session> action) {
231231 *
232232 * @since 6.3
233233 */
234- default void inStatelessSession (Consumer <StatelessSession > action ) {
234+ default void inStatelessSession (Consumer <? super StatelessSession > action ) {
235235 try ( StatelessSession session = openStatelessSession () ) {
236236 action .accept ( session );
237237 }
@@ -244,7 +244,7 @@ default void inStatelessSession(Consumer<StatelessSession> action) {
244244 * @apiNote This method competes with the JPA-defined method
245245 * {@link #runInTransaction}
246246 */
247- default void inTransaction (Consumer <Session > action ) {
247+ default void inTransaction (Consumer <? super Session > action ) {
248248 inSession ( session -> manageTransaction ( session , session .beginTransaction (), action ) );
249249 }
250250
@@ -254,14 +254,14 @@ default void inTransaction(Consumer<Session> action) {
254254 *
255255 * @since 6.3
256256 */
257- default void inStatelessTransaction (Consumer <StatelessSession > action ) {
257+ default void inStatelessTransaction (Consumer <? super StatelessSession > action ) {
258258 inStatelessSession ( session -> manageTransaction ( session , session .beginTransaction (), action ) );
259259 }
260260
261261 /**
262262 * Open a {@link Session} and use it to obtain a value.
263263 */
264- default <R > R fromSession (Function <Session ,R > action ) {
264+ default <R > R fromSession (Function <? super Session ,R > action ) {
265265 try ( Session session = openSession () ) {
266266 return action .apply ( session );
267267 }
@@ -272,7 +272,7 @@ default <R> R fromSession(Function<Session,R> action) {
272272 *
273273 * @since 6.3
274274 */
275- default <R > R fromStatelessSession (Function <StatelessSession ,R > action ) {
275+ default <R > R fromStatelessSession (Function <? super StatelessSession ,R > action ) {
276276 try ( StatelessSession session = openStatelessSession () ) {
277277 return action .apply ( session );
278278 }
@@ -285,7 +285,7 @@ default <R> R fromStatelessSession(Function<StatelessSession,R> action) {
285285 * @apiNote This method competes with the JPA-defined method
286286 * {@link #callInTransaction}
287287 */
288- default <R > R fromTransaction (Function <Session ,R > action ) {
288+ default <R > R fromTransaction (Function <? super Session ,R > action ) {
289289 return fromSession ( session -> manageTransaction ( session , session .beginTransaction (), action ) );
290290 }
291291
@@ -295,7 +295,7 @@ default <R> R fromTransaction(Function<Session,R> action) {
295295 *
296296 * @since 6.3
297297 */
298- default <R > R fromStatelessTransaction (Function <StatelessSession ,R > action ) {
298+ default <R > R fromStatelessTransaction (Function <? super StatelessSession ,R > action ) {
299299 return fromStatelessSession ( session -> manageTransaction ( session , session .beginTransaction (), action ) );
300300 }
301301
0 commit comments