From c88494698e81343b7fb92a6084f6d862f61dfc49 Mon Sep 17 00:00:00 2001 From: Steve Ebersole Date: Thu, 17 Oct 2013 11:08:30 -0500 Subject: [PATCH] HHH-8625 - Wrong warning about deprecated persistence provider --- .../hibernate/ejb/HibernatePersistence.java | 56 +++++++++++++++++++ 1 file changed, 56 insertions(+) diff --git a/hibernate-entitymanager/src/main/java/org/hibernate/ejb/HibernatePersistence.java b/hibernate-entitymanager/src/main/java/org/hibernate/ejb/HibernatePersistence.java index b3a824814a..90fd3640b0 100755 --- a/hibernate-entitymanager/src/main/java/org/hibernate/ejb/HibernatePersistence.java +++ b/hibernate-entitymanager/src/main/java/org/hibernate/ejb/HibernatePersistence.java @@ -23,9 +23,15 @@ */ package org.hibernate.ejb; +import javax.persistence.EntityManagerFactory; import javax.persistence.spi.PersistenceProvider; +import javax.persistence.spi.PersistenceUnitInfo; +import javax.persistence.spi.ProviderUtil; + +import java.util.Map; import org.hibernate.jpa.HibernatePersistenceProvider; +import org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder; import org.hibernate.jpa.internal.EntityManagerMessageLogger; import org.hibernate.jpa.internal.HEMLogging; @@ -41,9 +47,59 @@ public class HibernatePersistence extends HibernatePersistenceProvider implement private static final EntityManagerMessageLogger log = HEMLogging.messageLogger( HibernatePersistence.class ); public HibernatePersistence() { + } + + @Override + public EntityManagerFactory createEntityManagerFactory(String persistenceUnitName, Map properties) { + logDeprecation(); + return super.createEntityManagerFactory( persistenceUnitName, properties ); + } + + protected void logDeprecation() { log.deprecatedPersistenceProvider( HibernatePersistence.class.getName(), HibernatePersistenceProvider.class.getName() ); } + + @Override + public EntityManagerFactory createContainerEntityManagerFactory(PersistenceUnitInfo info, Map properties) { + logDeprecation(); + return super.createContainerEntityManagerFactory( info, properties ); + } + + @Override + public void generateSchema(PersistenceUnitInfo info, Map map) { + logDeprecation(); + super.generateSchema( info, map ); + } + + @Override + public boolean generateSchema(String persistenceUnitName, Map map) { + logDeprecation(); + return super.generateSchema( persistenceUnitName, map ); + } + + @Override + public ProviderUtil getProviderUtil() { + logDeprecation(); + return super.getProviderUtil(); + } + + @Override + protected EntityManagerFactoryBuilder getEntityManagerFactoryBuilderOrNull( + String persistenceUnitName, + Map properties, + ClassLoader providedClassLoader) { + logDeprecation(); + return super.getEntityManagerFactoryBuilderOrNull( persistenceUnitName, properties, providedClassLoader ); + } + + @Override + protected EntityManagerFactoryBuilder getEntityManagerFactoryBuilderOrNull( + String persistenceUnitName, + Map properties) { + logDeprecation(); + return super.getEntityManagerFactoryBuilderOrNull( persistenceUnitName, properties ); + } } \ No newline at end of file