/* * Hibernate OGM, Domain model persistence for NoSQL datastores * * License: GNU Lesser General Public License (LGPL), version 2.1 or later * See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>. */ package org.hibernate.ogm; import org.hibernate.HibernateException; import org.hibernate.SessionBuilder; import org.hibernate.SessionFactory; /** * Provides OGM-specific functionality on the session factory level. * * @author Gunnar Morling */ public interface OgmSessionFactory extends SessionFactory { /** * A {@link SessionBuilder} which creates {@link OgmSession}s. * * @author Gunnar Morling * */ interface OgmSessionBuilder extends SessionBuilder { @Override OgmSession openSession(); } @Override OgmSessionBuilder withOptions(); /** * Opens a new session based on the configured NoSQL datastore. * * @return A new Hibernate OGM session */ @Override OgmSession openSession() throws HibernateException; @Override OgmSession getCurrentSession() throws HibernateException; }