diff --git a/spring-orm/src/main/java/org/springframework/orm/hibernate5/HibernateCallback.java b/spring-orm/src/main/java/org/springframework/orm/hibernate5/HibernateCallback.java deleted file mode 100644 index a5515947bc8..00000000000 --- a/spring-orm/src/main/java/org/springframework/orm/hibernate5/HibernateCallback.java +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright 2002-2018 the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.springframework.orm.hibernate5; - -import org.hibernate.HibernateException; -import org.hibernate.Session; - -import org.springframework.lang.Nullable; - -/** - * Callback interface for Hibernate code. To be used with {@link HibernateTemplate}'s - * execution methods, often as anonymous classes within a method implementation. - * A typical implementation will call {@code Session.load/find/update} to perform - * some operations on persistent objects. - * - * @author Juergen Hoeller - * @since 4.2 - * @param the result type - * @see HibernateTemplate - * @see HibernateTransactionManager - */ -@FunctionalInterface -public interface HibernateCallback { - - /** - * Gets called by {@code HibernateTemplate.execute} with an active - * Hibernate {@code Session}. Does not need to care about activating - * or closing the {@code Session}, or handling transactions. - *

Allows for returning a result object created within the callback, - * i.e. a domain object or a collection of domain objects. - * A thrown custom RuntimeException is treated as an application exception: - * It gets propagated to the caller of the template. - * @param session active Hibernate session - * @return a result object, or {@code null} if none - * @throws HibernateException if thrown by the Hibernate API - * @see HibernateTemplate#execute - */ - @Nullable - T doInHibernate(Session session) throws HibernateException; - -} diff --git a/spring-orm/src/main/java/org/springframework/orm/hibernate5/HibernateTransactionManager.java b/spring-orm/src/main/java/org/springframework/orm/hibernate5/HibernateTransactionManager.java index fd52e4e4e28..13c707d701d 100644 --- a/spring-orm/src/main/java/org/springframework/orm/hibernate5/HibernateTransactionManager.java +++ b/spring-orm/src/main/java/org/springframework/orm/hibernate5/HibernateTransactionManager.java @@ -771,10 +771,9 @@ public class HibernateTransactionManager extends AbstractPlatformTransactionMana /** * Disconnect a pre-existing Hibernate Session on transaction completion, * returning its database connection but preserving its entity state. - *

The default implementation calls the equivalent of {@link Session#disconnect()}. - * Subclasses may override this with a no-op or with fine-tuned disconnection logic. + *

The default implementation triggers a manual disconnect. Subclasses + * may override this with a no-op or with fine-tuned disconnection logic. * @param session the Hibernate Session to disconnect - * @see Session#disconnect() */ protected void disconnectOnCompletion(Session session) { if (session instanceof SessionImplementor sessionImpl) {