public final class PersistenceUtil extends Object
| Modifier and Type | Class and Description |
|---|---|
static class |
PersistenceUtil.DatabaseVendor |
| Modifier and Type | Field and Description |
|---|---|
static com.entwinemedia.fn.Fn<javax.persistence.EntityManager,com.entwinemedia.fn.data.Opt<DatabaseMetaData>> |
getDatabaseMetadata
getDatabaseMetadata(EntityManager) as a function. |
static Map<String,Object> |
NO_PERSISTENCE_PROPS |
| Modifier and Type | Method and Description |
|---|---|
static void |
closeQuietly(Connection c) |
static com.entwinemedia.fn.data.Opt<DatabaseMetaData> |
getDatabaseMetadata(javax.persistence.EntityManager em)
Try to get the database metadata from an entity manager.
|
static PersistenceUtil.DatabaseVendor |
getVendor(DatabaseMetaData m)
Get the database vendor from some metadata.
|
static com.entwinemedia.fn.data.Opt<javax.persistence.EntityManager> |
mkEntityManager(javax.persistence.EntityManagerFactory emf)
Create a new entity manager or return none, if the factory has already been closed.
|
static javax.persistence.EntityManagerFactory |
mkEntityManagerFactory(org.osgi.service.component.ComponentContext cc,
String emName)
Create a new entity manager factory with the persistence unit name
emName. |
static javax.persistence.EntityManagerFactory |
mkEntityManagerFactory(org.osgi.service.component.ComponentContext cc,
String emName,
Map persistenceProps)
Create a new entity manager factory with the persistence unit name
emName. |
static javax.persistence.EntityManagerFactory |
mkEntityManagerFactory(String emName,
String vendor,
String driver,
String url,
String user,
String pwd,
Map<String,?> persistenceProps,
javax.persistence.spi.PersistenceProvider pp) |
static javax.persistence.EntityManagerFactory |
mkMySqlTestEntityManagerFactory(String emName,
String jdbcUri,
String user,
String pwd,
boolean withSqlLogging,
boolean keepDatabase)
Create a new entity manager factory using a MySQL database for testing purposes.
|
static javax.persistence.EntityManagerFactory |
mkTestEntityManagerFactory(String emName)
Create a new entity manager factory backed by an in-memory H2 database for testing purposes.
|
static javax.persistence.EntityManagerFactory |
mkTestEntityManagerFactory(String emName,
boolean withSqlLogging)
Create a new entity manager factory backed by an in-memory H2 database for testing purposes.
|
static javax.persistence.EntityManagerFactory |
mkTestEntityManagerFactoryFromSystemProperties(String emName)
Create an entity manager for unit tests configured by the following system properties.
|
static javax.persistence.spi.PersistenceProvider |
mkTestPersistenceProvider()
Create a new persistence provider for unit tests.
|
static com.entwinemedia.fn.data.Opt<SQLException> |
testConnection(DataSource ds)
Test if a connection to the given data source can be established.
|
public static final com.entwinemedia.fn.Fn<javax.persistence.EntityManager,com.entwinemedia.fn.data.Opt<DatabaseMetaData>> getDatabaseMetadata
getDatabaseMetadata(EntityManager) as a function.public static javax.persistence.EntityManagerFactory mkEntityManagerFactory(org.osgi.service.component.ComponentContext cc,
String emName)
emName. A
PersistenceProvider named persistence has to be registered as an OSGi
service. If you want to configure the factory please also register a map containing all properties under the name
persistenceProps. See
PersistenceProvider.createEntityManagerFactory(String, java.util.Map) for more
information about config maps.emName - name of the persistence unitpublic static javax.persistence.EntityManagerFactory mkEntityManagerFactory(org.osgi.service.component.ComponentContext cc,
String emName,
Map persistenceProps)
emName. A
PersistenceProvider named persistence has to be registered as an OSGi
service. See PersistenceProvider.createEntityManagerFactory(String, java.util.Map)
for more information about config maps.emName - name of the persistence unitpersistenceProps - config map for the creation of an EntityManagerFactorypublic static javax.persistence.EntityManagerFactory mkEntityManagerFactory(String emName, String vendor, String driver, String url, String user, String pwd, Map<String,?> persistenceProps, javax.persistence.spi.PersistenceProvider pp)
public static com.entwinemedia.fn.data.Opt<javax.persistence.EntityManager> mkEntityManager(javax.persistence.EntityManagerFactory emf)
public static javax.persistence.EntityManagerFactory mkTestEntityManagerFactory(String emName)
mkTestEntityManagerFactory(String)emName - name of the persistence unit (see META-INF/persistence.xml)public static javax.persistence.EntityManagerFactory mkTestEntityManagerFactory(String emName, boolean withSqlLogging)
emName - name of the persistence unit (see META-INF/persistence.xml)withSqlLogging - turn on EclipseLink SQL loggingpublic static javax.persistence.EntityManagerFactory mkTestEntityManagerFactoryFromSystemProperties(String emName)
emName - name of the persistence unit (see META-INF/persistence.xml)public static javax.persistence.EntityManagerFactory mkMySqlTestEntityManagerFactory(String emName, String jdbcUri, String user, String pwd, boolean withSqlLogging, boolean keepDatabase)
emName - name of the persistence unit (see META-INF/persistence.xml)jdbcUri - the JDBC URI of the database, e.g. jdbc:mysql://localhost/test_databaseuser - the database userpwd - the user's passwordwithSqlLogging - turn on SQL loggingkeepDatabase - recreate or keep the database at startuppublic static javax.persistence.spi.PersistenceProvider mkTestPersistenceProvider()
public static void closeQuietly(Connection c)
public static com.entwinemedia.fn.data.Opt<SQLException> testConnection(DataSource ds)
public static com.entwinemedia.fn.data.Opt<DatabaseMetaData> getDatabaseMetadata(javax.persistence.EntityManager em)
public static PersistenceUtil.DatabaseVendor getVendor(DatabaseMetaData m)
PersistenceUtil.DatabaseVendor.UNKNOWN in case the database is not known or an arbitrary error occursCopyright © 2009–2021 Opencast Project. All rights reserved.