package com.metrink.croquet.hibernate; import javax.persistence.EntityManager; import javax.persistence.EntityManagerFactory; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.inject.AbstractModule; import com.google.inject.persist.PersistService; import com.google.inject.persist.UnitOfWork; /** * A Guice module that takes care of all the Hibernate bindings when using the persistance.xml. */ public class PersistanceUnitHibernateModule extends AbstractModule { @SuppressWarnings("unused") private static final Logger LOG = LoggerFactory.getLogger(PersistanceUnitHibernateModule.class); @Override protected void configure() { bind(PersistService.class).to(JpaPersistService.class); bind(UnitOfWork.class).to(JpaPersistService.class); bind(EntityManager.class).toProvider(JpaPersistService.class); bind(CroquetPersistService.class).to(JpaPersistService.class); bind(EntityManagerFactory.class).toProvider(CroquetPersistService.EntityManagerFactoryProvider.class); } }