public class EntityManagerImpl extends Object implements javax.persistence.EntityManager, ResourceManager
| Modifier and Type | Field and Description |
|---|---|
private boolean |
closed
The closed.
|
private javax.persistence.EntityTransaction |
entityTransaction |
private javax.persistence.EntityManagerFactory |
factory
The factory.
|
private javax.persistence.FlushModeType |
flushMode
Flush mode for this EM, default is AUTO.
|
private static org.slf4j.Logger |
logger
The Constant log.
|
private PersistenceCache |
persistenceCache |
private javax.persistence.PersistenceContextType |
persistenceContextType
Persistence Context Type (Transaction/ Extended)
|
private PersistenceDelegator |
persistenceDelegator
Properties provided by user at the time of EntityManager Creation.
|
private Map<String,Object> |
properties
Properties provided by user at the time of EntityManager Creation.
|
private javax.persistence.spi.PersistenceUnitTransactionType |
transactionType
Transaction Type (JTA/ RESOURCE_LOCAL)
|
private UserTransaction |
utx |
| Constructor and Description |
|---|
EntityManagerImpl(javax.persistence.EntityManagerFactory factory,
Map properties,
javax.persistence.spi.PersistenceUnitTransactionType transactionType,
javax.persistence.PersistenceContextType persistenceContextType)
Instantiates a new entity manager impl.
|
EntityManagerImpl(javax.persistence.EntityManagerFactory factory,
javax.persistence.spi.PersistenceUnitTransactionType transactionType,
javax.persistence.PersistenceContextType persistenceContextType)
Instantiates a new entity manager impl.
|
| Modifier and Type | Method and Description |
|---|---|
private void |
checkClosed()
Check closed.
|
private void |
checkTransactionNeeded() |
void |
clear() |
void |
close() |
boolean |
contains(Object entity)
Check if the instance is a managed entity instance belonging to the
current persistence context.
|
<T> javax.persistence.EntityGraph<T> |
createEntityGraph(Class<T> arg0) |
javax.persistence.EntityGraph<?> |
createEntityGraph(String arg0) |
javax.persistence.Query |
createNamedQuery(String name) |
<T> javax.persistence.TypedQuery<T> |
createNamedQuery(String paramString,
Class<T> paramClass) |
javax.persistence.StoredProcedureQuery |
createNamedStoredProcedureQuery(String arg0) |
javax.persistence.Query |
createNativeQuery(String sqlString) |
javax.persistence.Query |
createNativeQuery(String sqlString,
Class resultClass) |
javax.persistence.Query |
createNativeQuery(String sqlString,
String resultSetMapping) |
javax.persistence.Query |
createQuery(javax.persistence.criteria.CriteriaDelete arg0) |
<T> javax.persistence.TypedQuery<T> |
createQuery(javax.persistence.criteria.CriteriaQuery<T> paramCriteriaQuery) |
javax.persistence.Query |
createQuery(javax.persistence.criteria.CriteriaUpdate arg0) |
javax.persistence.Query |
createQuery(String query) |
<T> javax.persistence.TypedQuery<T> |
createQuery(String paramString,
Class<T> paramClass) |
javax.persistence.StoredProcedureQuery |
createStoredProcedureQuery(String arg0) |
javax.persistence.StoredProcedureQuery |
createStoredProcedureQuery(String arg0,
Class... arg1) |
javax.persistence.StoredProcedureQuery |
createStoredProcedureQuery(String arg0,
String... arg1) |
void |
detach(Object entity)
Remove the given entity from the persistence context, causing a managed
entity to become detached.
|
private Client |
discoverClient(String persistenceUnit)
Gets the client.
|
void |
doCommit()
Do commit.
|
void |
doRollback()
Do rollback.
|
<E> E |
find(Class<E> entityClass,
Object primaryKey)
Find by primary key.
|
<T> T |
find(Class<T> paramClass,
Object paramObject,
javax.persistence.LockModeType paramLockModeType) |
<T> T |
find(Class<T> arg0,
Object arg1,
javax.persistence.LockModeType arg2,
Map<String,Object> arg3) |
<T> T |
find(Class<T> entityClass,
Object primaryKey,
Map<String,Object> properties)
Find by primary key, using the specified properties.
|
void |
flush() |
javax.persistence.criteria.CriteriaBuilder |
getCriteriaBuilder() |
Object |
getDelegate() |
javax.persistence.EntityGraph<?> |
getEntityGraph(String arg0) |
<T> List<javax.persistence.EntityGraph<? super T>> |
getEntityGraphs(Class<T> arg0) |
javax.persistence.EntityManagerFactory |
getEntityManagerFactory() |
javax.persistence.FlushModeType |
getFlushMode() |
javax.persistence.LockModeType |
getLockMode(Object paramObject) |
javax.persistence.metamodel.Metamodel |
getMetamodel() |
private javax.persistence.PersistenceContextType |
getPersistenceContextType() |
(package private) PersistenceDelegator |
getPersistenceDelegator()
Gets the persistence delegator.
|
private String |
getPersistenceUnit()
Returns Persistence unit (or comma separated units) associated with EMF.
|
Map<String,Object> |
getProperties()
Get the properties and hints and associated values that are in effect for
the entity manager.
|
<T> T |
getReference(Class<T> entityClass,
Object primaryKey) |
javax.persistence.EntityTransaction |
getTransaction() |
boolean |
isJoinedToTransaction() |
boolean |
isOpen() |
void |
joinTransaction() |
void |
lock(Object entity,
javax.persistence.LockModeType lockMode) |
void |
lock(Object paramObject,
javax.persistence.LockModeType paramLockModeType,
Map<String,Object> paramMap) |
<E> E |
merge(E e)
Merge the state of the given entity into the current persistence context.
|
private void |
onLookUp(javax.persistence.spi.PersistenceUnitTransactionType transactionType) |
private <T> javax.persistence.TypedQuery<T> |
onTypedQuery(Class<T> paramClass,
javax.persistence.Query q)
Validates if expected result class is matching with supplied one, else
throws
IllegalArgumentException |
void |
persist(Object e)
Make an instance managed and persistent.
|
void |
refresh(Object entity)
Refresh the state of the instance from the database, overwriting changes
made to the entity, if any.
|
void |
refresh(Object paramObject,
javax.persistence.LockModeType paramLockModeType) |
void |
refresh(Object paramObject,
javax.persistence.LockModeType paramLockModeType,
Map<String,Object> paramMap) |
void |
refresh(Object entity,
Map<String,Object> properties)
Refresh the state of the instance from the database, using the specified
properties, and overwriting changes made to the entity, if any.
|
void |
remove(Object e)
Remove the entity instance.
|
void |
setFlushMode(javax.persistence.FlushModeType flushMode) |
void |
setProperty(String paramString,
Object paramObject)
Set an entity manager property or hint.
|
<T> T |
unwrap(Class<T> paramClass) |
private static org.slf4j.Logger logger
private final javax.persistence.EntityManagerFactory factory
private boolean closed
private javax.persistence.FlushModeType flushMode
private Map<String,Object> properties
private final PersistenceDelegator persistenceDelegator
private final javax.persistence.PersistenceContextType persistenceContextType
private final javax.persistence.spi.PersistenceUnitTransactionType transactionType
private final PersistenceCache persistenceCache
private UserTransaction utx
private javax.persistence.EntityTransaction entityTransaction
EntityManagerImpl(javax.persistence.EntityManagerFactory factory,
Map properties,
javax.persistence.spi.PersistenceUnitTransactionType transactionType,
javax.persistence.PersistenceContextType persistenceContextType)
factory - the factoryproperties - the propertiesEntityManagerImpl(javax.persistence.EntityManagerFactory factory,
javax.persistence.spi.PersistenceUnitTransactionType transactionType,
javax.persistence.PersistenceContextType persistenceContextType)
factory - the factorypublic final void persist(Object e)
persist in interface javax.persistence.EntityManagerentity - javax.persistence.EntityExistsException - if the entity already exists. (If the entity already exists,
the EntityExistsException may be thrown when the persist
operation is invoked, or the EntityExistsException or another
PersistenceException may be thrown at flush or commit time.)IllegalArgumentException - if the instance is not an entityjavax.persistence.TransactionRequiredException - if invoked on a container-managed entity manager of type
PersistenceContextType.TRANSACTION and there is no
transactionpublic final <E> E merge(E e)
merge in interface javax.persistence.EntityManagerentity - IllegalArgumentException - if instance is not an entity or is a removed entityjavax.persistence.TransactionRequiredException - if invoked on a container-managed entity manager of type
PersistenceContextType.TRANSACTION and there is no
transactionEntityManager.merge(java.lang.Object)public final void remove(Object e)
remove in interface javax.persistence.EntityManagerentity - IllegalArgumentException - if the instance is not an entity or is a detached entityjavax.persistence.TransactionRequiredException - if invoked on a container-managed entity manager of type
PersistenceContextType.TRANSACTION and there is no
transactionpublic final <E> E find(Class<E> entityClass, Object primaryKey)
find in interface javax.persistence.EntityManagerentityClass - primaryKey - IllegalArgumentException - if the first argument does not denote an entity type or the
second argument is is not a valid type for that entity’s
primary key or is nullEntityManager.find(java.lang.Class,
java.lang.Object)public <T> T find(Class<T> entityClass, Object primaryKey, Map<String,Object> properties)
find in interface javax.persistence.EntityManagerentityClass - primaryKey - properties - standard and vendor-specific properties and hintsIllegalArgumentException - if the first argument does not denote an entity type or the
second argument is is not a valid type for that entity’s
primary key or is nullEntityManager.find(java.lang.Class,
java.lang.Object, java.util.Map)public <T> T find(Class<T> paramClass, Object paramObject, javax.persistence.LockModeType paramLockModeType)
find in interface javax.persistence.EntityManagerpublic <T> T find(Class<T> arg0, Object arg1, javax.persistence.LockModeType arg2, Map<String,Object> arg3)
find in interface javax.persistence.EntityManagerpublic final void clear()
clear in interface javax.persistence.EntityManagerpublic final void close()
close in interface javax.persistence.EntityManagerpublic final boolean contains(Object entity)
contains in interface javax.persistence.EntityManagerentity - IllegalArgumentException - if not an entityEntityManager.contains(java.lang.Object)public final javax.persistence.Query createQuery(String query)
createQuery in interface javax.persistence.EntityManagerpublic final void flush()
flush in interface javax.persistence.EntityManagerpublic final Object getDelegate()
getDelegate in interface javax.persistence.EntityManagerpublic final javax.persistence.Query createNamedQuery(String name)
createNamedQuery in interface javax.persistence.EntityManagerpublic final javax.persistence.Query createNativeQuery(String sqlString)
createNativeQuery in interface javax.persistence.EntityManagerpublic final javax.persistence.Query createNativeQuery(String sqlString, Class resultClass)
createNativeQuery in interface javax.persistence.EntityManagerpublic final javax.persistence.Query createNativeQuery(String sqlString, String resultSetMapping)
createNativeQuery in interface javax.persistence.EntityManagerpublic final <T> T getReference(Class<T> entityClass, Object primaryKey)
getReference in interface javax.persistence.EntityManagerpublic final javax.persistence.FlushModeType getFlushMode()
getFlushMode in interface javax.persistence.EntityManagerpublic final javax.persistence.EntityTransaction getTransaction()
getTransaction in interface javax.persistence.EntityManagerpublic final void joinTransaction()
joinTransaction in interface javax.persistence.EntityManagerpublic final void lock(Object entity, javax.persistence.LockModeType lockMode)
lock in interface javax.persistence.EntityManagerpublic final void refresh(Object entity)
refresh in interface javax.persistence.EntityManagerentity - IllegalArgumentException - if the instance is not an entity or the entity is not managedjavax.persistence.TransactionRequiredException - if invoked on a container-managed entity manager of type
PersistenceContextType.TRANSACTION and there is no
transactionjavax.persistence.EntityNotFoundException - if the entity no longer exists in the databaseEntityManager.refresh(java.lang.Object)public void refresh(Object entity, Map<String,Object> properties)
refresh in interface javax.persistence.EntityManagerentity - properties - standard and vendor-specific properties and hintsIllegalArgumentException - if the instance is not an entity or the entity is not managedjavax.persistence.TransactionRequiredException - if invoked on a container-managed entity manager of type
PersistenceContextType.TRANSACTION and there is no
transactionjavax.persistence.EntityNotFoundException - if the entity no longer exists in the databaseEntityManager.refresh(java.lang.Object,
java.util.Map)public void lock(Object paramObject, javax.persistence.LockModeType paramLockModeType, Map<String,Object> paramMap)
lock in interface javax.persistence.EntityManagerpublic void refresh(Object paramObject, javax.persistence.LockModeType paramLockModeType)
refresh in interface javax.persistence.EntityManagerpublic void refresh(Object paramObject, javax.persistence.LockModeType paramLockModeType, Map<String,Object> paramMap)
refresh in interface javax.persistence.EntityManagerpublic void detach(Object entity)
detach in interface javax.persistence.EntityManagerentity - IllegalArgumentException - if the instance is not an entityEntityManager.detach(java.lang.Object)public javax.persistence.LockModeType getLockMode(Object paramObject)
getLockMode in interface javax.persistence.EntityManagerpublic void setProperty(String paramString, Object paramObject)
setProperty in interface javax.persistence.EntityManagerpropertyName - name of property or hintvalue - IllegalArgumentException - if the second argument is not valid for the implementationEntityManager.setProperty(java.lang.String,
java.lang.Object)public <T> javax.persistence.TypedQuery<T> createQuery(javax.persistence.criteria.CriteriaQuery<T> paramCriteriaQuery)
createQuery in interface javax.persistence.EntityManagerpublic <T> javax.persistence.TypedQuery<T> createQuery(String paramString, Class<T> paramClass)
createQuery in interface javax.persistence.EntityManagerpublic <T> javax.persistence.TypedQuery<T> createNamedQuery(String paramString, Class<T> paramClass)
createNamedQuery in interface javax.persistence.EntityManagerpublic <T> T unwrap(Class<T> paramClass)
unwrap in interface javax.persistence.EntityManagerpublic final void setFlushMode(javax.persistence.FlushModeType flushMode)
setFlushMode in interface javax.persistence.EntityManagerpublic Map<String,Object> getProperties()
getProperties in interface javax.persistence.EntityManagerpublic javax.persistence.EntityManagerFactory getEntityManagerFactory()
getEntityManagerFactory in interface javax.persistence.EntityManagerpublic javax.persistence.criteria.CriteriaBuilder getCriteriaBuilder()
getCriteriaBuilder in interface javax.persistence.EntityManagerpublic javax.persistence.metamodel.Metamodel getMetamodel()
getMetamodel in interface javax.persistence.EntityManagerpublic final boolean isOpen()
isOpen in interface javax.persistence.EntityManagerprivate void checkClosed()
private void checkTransactionNeeded()
private void onLookUp(javax.persistence.spi.PersistenceUnitTransactionType transactionType)
private String getPersistenceUnit()
PersistenceDelegator getPersistenceDelegator()
private javax.persistence.PersistenceContextType getPersistenceContextType()
public void doCommit()
ResourceManagerdoCommit in interface ResourceManagerpublic void doRollback()
ResourceManagerdoRollback in interface ResourceManagerprivate <T> javax.persistence.TypedQuery<T> onTypedQuery(Class<T> paramClass, javax.persistence.Query q)
IllegalArgumentExceptionT - object typeparamClass - expected result classq - queryprivate Client discoverClient(String persistenceUnit)
persistenceUnit - the persistence unitpublic <T> javax.persistence.EntityGraph<T> createEntityGraph(Class<T> arg0)
createEntityGraph in interface javax.persistence.EntityManagerpublic javax.persistence.EntityGraph<?> createEntityGraph(String arg0)
createEntityGraph in interface javax.persistence.EntityManagerpublic javax.persistence.StoredProcedureQuery createNamedStoredProcedureQuery(String arg0)
createNamedStoredProcedureQuery in interface javax.persistence.EntityManagerpublic javax.persistence.Query createQuery(javax.persistence.criteria.CriteriaUpdate arg0)
createQuery in interface javax.persistence.EntityManagerpublic javax.persistence.Query createQuery(javax.persistence.criteria.CriteriaDelete arg0)
createQuery in interface javax.persistence.EntityManagerpublic javax.persistence.StoredProcedureQuery createStoredProcedureQuery(String arg0)
createStoredProcedureQuery in interface javax.persistence.EntityManagerpublic javax.persistence.StoredProcedureQuery createStoredProcedureQuery(String arg0, Class... arg1)
createStoredProcedureQuery in interface javax.persistence.EntityManagerpublic javax.persistence.StoredProcedureQuery createStoredProcedureQuery(String arg0, String... arg1)
createStoredProcedureQuery in interface javax.persistence.EntityManagerpublic javax.persistence.EntityGraph<?> getEntityGraph(String arg0)
getEntityGraph in interface javax.persistence.EntityManagerpublic <T> List<javax.persistence.EntityGraph<? super T>> getEntityGraphs(Class<T> arg0)
getEntityGraphs in interface javax.persistence.EntityManagerpublic boolean isJoinedToTransaction()
isJoinedToTransaction in interface javax.persistence.EntityManagerCopyright © 2015. All Rights Reserved.