Package org.jboss.as.jpa.container
Class UnsynchronizedEntityManagerWrapper
- java.lang.Object
-
- org.jboss.as.jpa.container.UnsynchronizedEntityManagerWrapper
-
- All Implemented Interfaces:
javax.persistence.EntityManager,SynchronizationTypeAccess
public class UnsynchronizedEntityManagerWrapper extends Object implements javax.persistence.EntityManager, SynchronizationTypeAccess
UnsynchronizedEntityManagerWrapper helps track transaction scoped persistence contexts that are SynchronizationType.UNSYNCHRONIZED, for error checking. If an SynchronizationType.SYNCHRONIZED transaction scoped persistence context is accessed while there is already an SynchronizationType.UNSYNCHRONIZED (with the same pu name + in active Jakarta Transactions TX), an IllegalStateException needs to be thrown as per the JPA 2.1 spec (see 7.6.4.1 Requirements for Persistence Context Propagation).- Author:
- Scott Marlow
-
-
Constructor Summary
Constructors Constructor Description UnsynchronizedEntityManagerWrapper(javax.persistence.EntityManager entityManager)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclear()voidclose()booleancontains(Object entity)<T> javax.persistence.EntityGraph<T>createEntityGraph(Class<T> rootType)javax.persistence.EntityGraph<?>createEntityGraph(String graphName)javax.persistence.QuerycreateNamedQuery(String name)<T> javax.persistence.TypedQuery<T>createNamedQuery(String name, Class<T> resultClass)javax.persistence.StoredProcedureQuerycreateNamedStoredProcedureQuery(String name)javax.persistence.QuerycreateNativeQuery(String sqlString)javax.persistence.QuerycreateNativeQuery(String sqlString, Class resultClass)javax.persistence.QuerycreateNativeQuery(String sqlString, String resultSetMapping)javax.persistence.QuerycreateQuery(String qlString)<T> javax.persistence.TypedQuery<T>createQuery(String qlString, Class<T> resultClass)javax.persistence.QuerycreateQuery(javax.persistence.criteria.CriteriaDelete deleteQuery)<T> javax.persistence.TypedQuery<T>createQuery(javax.persistence.criteria.CriteriaQuery<T> criteriaQuery)javax.persistence.QuerycreateQuery(javax.persistence.criteria.CriteriaUpdate updateQuery)javax.persistence.StoredProcedureQuerycreateStoredProcedureQuery(String procedureName)javax.persistence.StoredProcedureQuerycreateStoredProcedureQuery(String procedureName, Class... resultClasses)javax.persistence.StoredProcedureQuerycreateStoredProcedureQuery(String procedureName, String... resultSetMappings)voiddetach(Object entity)<T> Tfind(Class<T> entityClass, Object primaryKey)<T> Tfind(Class<T> entityClass, Object primaryKey, Map<String,Object> properties)<T> Tfind(Class<T> entityClass, Object primaryKey, javax.persistence.LockModeType lockMode)<T> Tfind(Class<T> entityClass, Object primaryKey, javax.persistence.LockModeType lockMode, Map<String,Object> properties)voidflush()javax.persistence.criteria.CriteriaBuildergetCriteriaBuilder()ObjectgetDelegate()javax.persistence.EntityGraph<?>getEntityGraph(String graphName)<T> List<javax.persistence.EntityGraph<? super T>>getEntityGraphs(Class<T> entityClass)javax.persistence.EntityManagerFactorygetEntityManagerFactory()javax.persistence.FlushModeTypegetFlushMode()javax.persistence.LockModeTypegetLockMode(Object entity)javax.persistence.metamodel.MetamodelgetMetamodel()Map<String,Object>getProperties()<T> TgetReference(Class<T> entityClass, Object primaryKey)javax.persistence.SynchronizationTypegetSynchronizationType()javax.persistence.EntityTransactiongetTransaction()booleanisJoinedToTransaction()booleanisOpen()voidjoinTransaction()voidlock(Object entity, javax.persistence.LockModeType lockMode)voidlock(Object entity, javax.persistence.LockModeType lockMode, Map<String,Object> properties)<T> Tmerge(T entity)voidpersist(Object entity)voidrefresh(Object entity)voidrefresh(Object entity, Map<String,Object> properties)voidrefresh(Object entity, javax.persistence.LockModeType lockMode)voidrefresh(Object entity, javax.persistence.LockModeType lockMode, Map<String,Object> properties)voidremove(Object entity)voidsetFlushMode(javax.persistence.FlushModeType flushMode)voidsetProperty(String propertyName, Object value)<T> Tunwrap(Class<T> cls)
-
-
-
Method Detail
-
getSynchronizationType
public javax.persistence.SynchronizationType getSynchronizationType()
- Specified by:
getSynchronizationTypein interfaceSynchronizationTypeAccess
-
clear
public void clear()
- Specified by:
clearin interfacejavax.persistence.EntityManager
-
close
public void close()
- Specified by:
closein interfacejavax.persistence.EntityManager
-
contains
public boolean contains(Object entity)
- Specified by:
containsin interfacejavax.persistence.EntityManager
-
createEntityGraph
public javax.persistence.EntityGraph<?> createEntityGraph(String graphName)
- Specified by:
createEntityGraphin interfacejavax.persistence.EntityManager
-
createEntityGraph
public <T> javax.persistence.EntityGraph<T> createEntityGraph(Class<T> rootType)
- Specified by:
createEntityGraphin interfacejavax.persistence.EntityManager
-
createNamedQuery
public javax.persistence.Query createNamedQuery(String name)
- Specified by:
createNamedQueryin interfacejavax.persistence.EntityManager
-
createNamedQuery
public <T> javax.persistence.TypedQuery<T> createNamedQuery(String name, Class<T> resultClass)
- Specified by:
createNamedQueryin interfacejavax.persistence.EntityManager
-
createNamedStoredProcedureQuery
public javax.persistence.StoredProcedureQuery createNamedStoredProcedureQuery(String name)
- Specified by:
createNamedStoredProcedureQueryin interfacejavax.persistence.EntityManager
-
createNativeQuery
public javax.persistence.Query createNativeQuery(String sqlString)
- Specified by:
createNativeQueryin interfacejavax.persistence.EntityManager
-
createNativeQuery
public javax.persistence.Query createNativeQuery(String sqlString, Class resultClass)
- Specified by:
createNativeQueryin interfacejavax.persistence.EntityManager
-
createNativeQuery
public javax.persistence.Query createNativeQuery(String sqlString, String resultSetMapping)
- Specified by:
createNativeQueryin interfacejavax.persistence.EntityManager
-
createQuery
public <T> javax.persistence.TypedQuery<T> createQuery(javax.persistence.criteria.CriteriaQuery<T> criteriaQuery)
- Specified by:
createQueryin interfacejavax.persistence.EntityManager
-
createQuery
public javax.persistence.Query createQuery(javax.persistence.criteria.CriteriaDelete deleteQuery)
- Specified by:
createQueryin interfacejavax.persistence.EntityManager
-
createQuery
public javax.persistence.Query createQuery(String qlString)
- Specified by:
createQueryin interfacejavax.persistence.EntityManager
-
createQuery
public <T> javax.persistence.TypedQuery<T> createQuery(String qlString, Class<T> resultClass)
- Specified by:
createQueryin interfacejavax.persistence.EntityManager
-
createQuery
public javax.persistence.Query createQuery(javax.persistence.criteria.CriteriaUpdate updateQuery)
- Specified by:
createQueryin interfacejavax.persistence.EntityManager
-
createStoredProcedureQuery
public javax.persistence.StoredProcedureQuery createStoredProcedureQuery(String procedureName)
- Specified by:
createStoredProcedureQueryin interfacejavax.persistence.EntityManager
-
createStoredProcedureQuery
public javax.persistence.StoredProcedureQuery createStoredProcedureQuery(String procedureName, Class... resultClasses)
- Specified by:
createStoredProcedureQueryin interfacejavax.persistence.EntityManager
-
createStoredProcedureQuery
public javax.persistence.StoredProcedureQuery createStoredProcedureQuery(String procedureName, String... resultSetMappings)
- Specified by:
createStoredProcedureQueryin interfacejavax.persistence.EntityManager
-
detach
public void detach(Object entity)
- Specified by:
detachin interfacejavax.persistence.EntityManager
-
find
public <T> T find(Class<T> entityClass, Object primaryKey)
- Specified by:
findin interfacejavax.persistence.EntityManager
-
find
public <T> T find(Class<T> entityClass, Object primaryKey, javax.persistence.LockModeType lockMode)
- Specified by:
findin interfacejavax.persistence.EntityManager
-
find
public <T> T find(Class<T> entityClass, Object primaryKey, javax.persistence.LockModeType lockMode, Map<String,Object> properties)
- Specified by:
findin interfacejavax.persistence.EntityManager
-
find
public <T> T find(Class<T> entityClass, Object primaryKey, Map<String,Object> properties)
- Specified by:
findin interfacejavax.persistence.EntityManager
-
flush
public void flush()
- Specified by:
flushin interfacejavax.persistence.EntityManager
-
getCriteriaBuilder
public javax.persistence.criteria.CriteriaBuilder getCriteriaBuilder()
- Specified by:
getCriteriaBuilderin interfacejavax.persistence.EntityManager
-
getDelegate
public Object getDelegate()
- Specified by:
getDelegatein interfacejavax.persistence.EntityManager
-
getEntityGraph
public javax.persistence.EntityGraph<?> getEntityGraph(String graphName)
- Specified by:
getEntityGraphin interfacejavax.persistence.EntityManager
-
getEntityGraphs
public <T> List<javax.persistence.EntityGraph<? super T>> getEntityGraphs(Class<T> entityClass)
- Specified by:
getEntityGraphsin interfacejavax.persistence.EntityManager
-
getEntityManagerFactory
public javax.persistence.EntityManagerFactory getEntityManagerFactory()
- Specified by:
getEntityManagerFactoryin interfacejavax.persistence.EntityManager
-
getFlushMode
public javax.persistence.FlushModeType getFlushMode()
- Specified by:
getFlushModein interfacejavax.persistence.EntityManager
-
getLockMode
public javax.persistence.LockModeType getLockMode(Object entity)
- Specified by:
getLockModein interfacejavax.persistence.EntityManager
-
getMetamodel
public javax.persistence.metamodel.Metamodel getMetamodel()
- Specified by:
getMetamodelin interfacejavax.persistence.EntityManager
-
getProperties
public Map<String,Object> getProperties()
- Specified by:
getPropertiesin interfacejavax.persistence.EntityManager
-
getReference
public <T> T getReference(Class<T> entityClass, Object primaryKey)
- Specified by:
getReferencein interfacejavax.persistence.EntityManager
-
getTransaction
public javax.persistence.EntityTransaction getTransaction()
- Specified by:
getTransactionin interfacejavax.persistence.EntityManager
-
isJoinedToTransaction
public boolean isJoinedToTransaction()
- Specified by:
isJoinedToTransactionin interfacejavax.persistence.EntityManager
-
isOpen
public boolean isOpen()
- Specified by:
isOpenin interfacejavax.persistence.EntityManager
-
joinTransaction
public void joinTransaction()
- Specified by:
joinTransactionin interfacejavax.persistence.EntityManager
-
lock
public void lock(Object entity, javax.persistence.LockModeType lockMode)
- Specified by:
lockin interfacejavax.persistence.EntityManager
-
lock
public void lock(Object entity, javax.persistence.LockModeType lockMode, Map<String,Object> properties)
- Specified by:
lockin interfacejavax.persistence.EntityManager
-
merge
public <T> T merge(T entity)
- Specified by:
mergein interfacejavax.persistence.EntityManager
-
persist
public void persist(Object entity)
- Specified by:
persistin interfacejavax.persistence.EntityManager
-
refresh
public void refresh(Object entity)
- Specified by:
refreshin interfacejavax.persistence.EntityManager
-
refresh
public void refresh(Object entity, javax.persistence.LockModeType lockMode)
- Specified by:
refreshin interfacejavax.persistence.EntityManager
-
refresh
public void refresh(Object entity, javax.persistence.LockModeType lockMode, Map<String,Object> properties)
- Specified by:
refreshin interfacejavax.persistence.EntityManager
-
refresh
public void refresh(Object entity, Map<String,Object> properties)
- Specified by:
refreshin interfacejavax.persistence.EntityManager
-
remove
public void remove(Object entity)
- Specified by:
removein interfacejavax.persistence.EntityManager
-
setFlushMode
public void setFlushMode(javax.persistence.FlushModeType flushMode)
- Specified by:
setFlushModein interfacejavax.persistence.EntityManager
-
setProperty
public void setProperty(String propertyName, Object value)
- Specified by:
setPropertyin interfacejavax.persistence.EntityManager
-
unwrap
public <T> T unwrap(Class<T> cls)
- Specified by:
unwrapin interfacejavax.persistence.EntityManager
-
-