Class HibernateSession

  • All Implemented Interfaces:
    InvocationHandler

    public class HibernateSession
    extends Object
    implements InvocationHandler
    The Hibernate stack implementation of the SQL Engine session contract. In fact it's a proxy to the Session. It's the first parameter to all primary methods in the SqlQueryEngine and SqlCrudEngine.

    The implementation is based on the dynamic proxy design pattern provided by the Java API.

    The primary contract is the method for the SqlQuery instance creation.

    For more info please see the Tutorials.

    Author:
    Vladimir Hudec
    • Field Detail

      • PROXY_INTERFACES

        private static final Class[] PROXY_INTERFACES
        The contracts implemented by this dynamic proxy.
      • session

        private org.hibernate.Session session
        The Hibernate Session, the first level cache and the context for all database operations.
      • name

        private String name
        The name of the database related to this session. It's usage is implementation specific.
    • Constructor Detail

      • HibernateSession

        private HibernateSession​(org.hibernate.Session session)
        Creates a new instance of this dynamic proxy.
        Parameters:
        session - the Hibernate Session instance
      • HibernateSession

        public HibernateSession​(org.hibernate.Session session,
                                String name)
        Creates a new instance of this dynamic proxy.
        Parameters:
        session - the Hibernate Session instance
        name - the name of the database
    • Method Detail

      • generateProxy

        public static SqlSession generateProxy​(org.hibernate.Session session)
        The factory method to obtain this dynamic proxy.
        Parameters:
        session - the Hibernate Session instance
        Returns:
        the Hibernate stack implementation of the SQL Engine session contract
      • generateProxy

        public static SqlSession generateProxy​(org.hibernate.Session session,
                                               String name)
        The factory method to obtain this dynamic proxy.
        Parameters:
        session - the Hibernate Session instance
        name - the name of the database
        Returns:
        the Hibernate stack implementation of the SQL Engine session contract
      • getProxyClassLoader

        public static ClassLoader getProxyClassLoader()
        Returns the class loader instance.
        Returns:
        the class loader instance