org.springframework.orm.hibernate3
Class SpringSessionContext

java.lang.Object
  extended by org.springframework.orm.hibernate3.SpringSessionContext
All Implemented Interfaces:
Serializable, org.hibernate.context.CurrentSessionContext

public class SpringSessionContext
extends Object
implements org.hibernate.context.CurrentSessionContext

Implementation of Hibernate 3.1's CurrentSessionContext interface that delegates to Spring's SessionFactoryUtils for providing a Spring-managed current Session.

Used by Spring's LocalSessionFactoryBean when told to expose a transaction-aware SessionFactory. This is the default as of Spring 2.5.

This CurrentSessionContext implementation can also be specified in custom SessionFactory setup through the "hibernate.current_session_context_class" property, with the fully qualified name of this class as value.

Since:
2.0
Author:
Juergen Hoeller
See Also:
SessionFactoryUtils.doGetSession(org.hibernate.SessionFactory, boolean), AbstractSessionFactoryBean.setExposeTransactionAwareSessionFactory(boolean), Serialized Form

Constructor Summary
SpringSessionContext(org.hibernate.engine.SessionFactoryImplementor sessionFactory)
          Create a new SpringSessionContext for the given Hibernate SessionFactory.
 
Method Summary
 org.hibernate.classic.Session currentSession()
          Retrieve the Spring-managed Session for the current thread, if any.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SpringSessionContext

public SpringSessionContext(org.hibernate.engine.SessionFactoryImplementor sessionFactory)
Create a new SpringSessionContext for the given Hibernate SessionFactory.

Parameters:
sessionFactory - the SessionFactory to provide current Sessions for
Method Detail

currentSession

public org.hibernate.classic.Session currentSession()
                                             throws org.hibernate.HibernateException
Retrieve the Spring-managed Session for the current thread, if any.

Specified by:
currentSession in interface org.hibernate.context.CurrentSessionContext
Throws:
org.hibernate.HibernateException