RESOLVED - issue BATCH-1513: HibernateItemReaderHelper requires queryProvider field to be an instance of AbstractHibernateQueryProvider

This commit is contained in:
dsyer
2010-02-27 13:51:17 +00:00
parent 46584fb87b
commit 598301de8d

View File

@@ -25,7 +25,6 @@ import org.hibernate.ScrollableResults;
import org.hibernate.Session; import org.hibernate.Session;
import org.hibernate.SessionFactory; import org.hibernate.SessionFactory;
import org.hibernate.StatelessSession; import org.hibernate.StatelessSession;
import org.springframework.batch.item.database.orm.AbstractHibernateQueryProvider;
import org.springframework.batch.item.database.orm.HibernateQueryProvider; import org.springframework.batch.item.database.orm.HibernateQueryProvider;
import org.springframework.beans.factory.InitializingBean; import org.springframework.beans.factory.InitializingBean;
import org.springframework.util.Assert; import org.springframework.util.Assert;
@@ -106,8 +105,7 @@ public class HibernateItemReaderHelper<T> implements InitializingBean {
} }
// making sure that the appropriate (Hibernate) query provider is set // making sure that the appropriate (Hibernate) query provider is set
else { else {
Assert.state(queryProvider instanceof AbstractHibernateQueryProvider, Assert.state(queryProvider != null, "Hibernate query provider must be set");
"Hibernate query provider must be set");
} }
} }
@@ -134,8 +132,8 @@ public class HibernateItemReaderHelper<T> implements InitializingBean {
public Query createQuery() { public Query createQuery() {
if (useStatelessSession) { if (useStatelessSession) {
if (statelessSession==null) { if (statelessSession == null) {
statelessSession = sessionFactory.openStatelessSession(); statelessSession = sessionFactory.openStatelessSession();
} }
if (queryProvider != null) { if (queryProvider != null) {
queryProvider.setStatelessSession(statelessSession); queryProvider.setStatelessSession(statelessSession);
@@ -150,7 +148,7 @@ public class HibernateItemReaderHelper<T> implements InitializingBean {
} }
} }
else { else {
if (statefulSession==null) { if (statefulSession == null) {
statefulSession = sessionFactory.openSession(); statefulSession = sessionFactory.openSession();
} }
if (queryProvider != null) { if (queryProvider != null) {