Package cz.cvut.kbss.jopa.model
Interface EntityManagerFactory
- All Superinterfaces:
AutoCloseable
- All Known Implementing Classes:
EntityManagerFactoryImpl
-
Method Summary
Modifier and TypeMethodDescriptionvoidaddNamedQuery(String name, Query query) Define the query or typed query as a named query such that future query objects can be created from it using thecreateNamedQuerymethod.voidclose()Close the factory, releasing any resources that it holds.Create a new application-managed EntityManager.createEntityManager(Map<String, String> map) Create a new EntityManager with the specified Map of properties.getCache()Access the cache that is associated with the entity manager factory (the "second level cache").Returns an instance ofCriteriaBuilderwhich may be used to constructCriteriaQueryobjects.Return an instance of Metamodel interface for access to the metamodel of the persistence unit.Return interface providing access to utility methods for the persistence unit.Get the properties and associated values that are in effect for the entity manager factory.booleanisOpen()Indicates whether the factory is open.<T> TReturn an object of the specified type to allow access to the provider-specific API.
-
Method Details
-
createEntityManager
EntityManager createEntityManager()Create a new application-managed EntityManager. This method returns a new EntityManager instance each time it is invoked. The isOpen method will return true on the returned instance.- Returns:
- entity manager instance
- Throws:
IllegalStateException- if the entity manager factory has been closed
-
createEntityManager
Create a new EntityManager with the specified Map of properties. This method returns a new EntityManager instance each time it is invoked. The isOpen method will return true on the returned instance.- Parameters:
map- properties for entity manager- Returns:
- entity manager instance
-
getCriteriaBuilder
CriteriaBuilder getCriteriaBuilder()Returns an instance ofCriteriaBuilderwhich may be used to constructCriteriaQueryobjects.- Returns:
- an instance of
CriteriaBuilder - Throws:
IllegalStateException- if the entity manager factory has been closed
-
getMetamodel
Metamodel getMetamodel()Return an instance of Metamodel interface for access to the metamodel of the persistence unit.- Returns:
- Metamodel instance
- Throws:
IllegalStateException- if the entity manager factory has been closed
-
close
void close()Close the factory, releasing any resources that it holds. After a factory instance is closed, all methods invoked on it will throw an IllegalStateException, except for isOpen, which will return false. Once an EntityManagerFactory has been closed, all its entity managers are considered to be in the closed state.- Specified by:
closein interfaceAutoCloseable- Throws:
IllegalStateException- if the entity manager factory has been closed
-
isOpen
boolean isOpen()Indicates whether the factory is open. Returns true until the factory has been closed.- Returns:
- true if the entity manager is open
- Throws:
IllegalStateException- if the entity manager factory has been closed
-
getProperties
Get the properties and associated values that are in effect for the entity manager factory.Changing the contents of the map does not change the configuration in effect.
- Returns:
- properties
- Throws:
IllegalStateException- if the entity manager factory has been closed
-
getCache
Cache getCache()Access the cache that is associated with the entity manager factory (the "second level cache").- Returns:
- instance of the Cache interface
- Throws:
IllegalStateException- if the entity manager factory has been closed
-
getPersistenceUnitUtil
PersistenceUnitUtil getPersistenceUnitUtil()Return interface providing access to utility methods for the persistence unit.- Returns:
PersistenceUnitUtilinterface- Throws:
IllegalStateException- if the entity manager factory has been closed
-
addNamedQuery
Define the query or typed query as a named query such that future query objects can be created from it using thecreateNamedQuerymethod. Any configuration of the query object (except for actual parameter binding) in effect when the named query is added is retained as part of the named query definition. This includes configuration information such as max results and result set mapping information.When the query is executed, information that can be set by means of the query APIs can be overridden. Information that is overridden does not affect the named query as registered with the entity manager factory, and thus does not affect subsequent query objects created from it by means of the
createNamedQuerymethod.If a named query of the same name has been previously defined, either statically via metadata or via this method, that query definition is replaced.
- Parameters:
name- name for the queryquery-QueryorTypedQueryobject- Since:
- JPA 2.1
-
unwrap
Return an object of the specified type to allow access to the provider-specific API. If the provider's EntityManagerFactory implementation does not support the specified class, theOWLPersistenceExceptionis thrown.- Parameters:
cls- The class of the object to be returned. This can be also an implementation of the underlying driver- Returns:
- an instance of the specified class
- Throws:
OWLPersistenceException- If the provider does not support the specified class
-