Fabric3 JPA/Hibernate Extension

org.fabric3.jpa.runtime.proxy
Class MultiThreadedEntityManagerProxy

java.lang.Object
  extended by org.fabric3.jpa.runtime.proxy.MultiThreadedEntityManagerProxy
All Implemented Interfaces:
javax.persistence.EntityManager, HibernateProxy

public class MultiThreadedEntityManagerProxy
extends Object
implements HibernateProxy, javax.persistence.EntityManager

An EntityManager proxy that delegates to a backing instance. This proxy is injected on composite-scoped components where more than one thread may be accessing the proxy at a time.

If the persistence context is transaction-scoped (as defined by JPA), the proxy will attempt to retrieve the EntityManager instance associated with the current transaction context from the EntityManagerService.

Version:
$Rev: 11083 $ $Date: 2012-06-21 10:38:50 +0000 (Thu, 21 Jun 2012) $

Constructor Summary
MultiThreadedEntityManagerProxy(String unitName, EntityManagerService emService, TransactionManager tm)
           
 
Method Summary
 void clear()
           
 void clearEntityManager()
          Clear a cached EntityManager if the proxy implementation supports caching.
 void close()
           
 boolean contains(Object entity)
           
 javax.persistence.Query createNamedQuery(String name)
           
<T> javax.persistence.TypedQuery<T>
createNamedQuery(String s, Class<T> tClass)
           
 javax.persistence.Query createNativeQuery(String sqlString)
           
 javax.persistence.Query createNativeQuery(String sqlString, Class resultClass)
           
 javax.persistence.Query createNativeQuery(String sqlString, String resultSetMapping)
           
<T> javax.persistence.TypedQuery<T>
createQuery(javax.persistence.criteria.CriteriaQuery<T> tCriteriaQuery)
           
 javax.persistence.Query createQuery(String qlString)
           
<T> javax.persistence.TypedQuery<T>
createQuery(String s, Class<T> tClass)
           
 void detach(Object o)
           
<T> T
find(Class<T> entityClass, Object primaryKey)
           
<T> T
find(Class<T> tClass, Object o, javax.persistence.LockModeType lockModeType)
           
<T> T
find(Class<T> tClass, Object o, javax.persistence.LockModeType lockModeType, Map<String,Object> stringObjectMap)
           
<T> T
find(Class<T> tClass, Object o, Map<String,Object> stringObjectMap)
           
 void flush()
           
 javax.persistence.criteria.CriteriaBuilder getCriteriaBuilder()
           
 Object getDelegate()
           
 javax.persistence.EntityManagerFactory getEntityManagerFactory()
           
 javax.persistence.FlushModeType getFlushMode()
           
 javax.persistence.LockModeType getLockMode(Object o)
           
 javax.persistence.metamodel.Metamodel getMetamodel()
           
 Map<String,Object> getProperties()
           
<T> T
getReference(Class<T> entityClass, Object primaryKey)
           
 javax.persistence.EntityTransaction getTransaction()
           
 boolean isOpen()
           
 void joinTransaction()
           
 void lock(Object entity, javax.persistence.LockModeType lockMode)
           
 void lock(Object o, javax.persistence.LockModeType lockModeType, Map<String,Object> stringObjectMap)
           
<T> T
merge(T entity)
           
 void persist(Object entity)
           
 void refresh(Object entity)
           
 void refresh(Object o, javax.persistence.LockModeType lockModeType)
           
 void refresh(Object o, javax.persistence.LockModeType lockModeType, Map<String,Object> stringObjectMap)
           
 void refresh(Object o, Map<String,Object> stringObjectMap)
           
 void remove(Object entity)
           
 void setFlushMode(javax.persistence.FlushModeType flushMode)
           
 void setProperty(String s, Object o)
           
<T> T
unwrap(Class<T> tClass)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MultiThreadedEntityManagerProxy

public MultiThreadedEntityManagerProxy(String unitName,
                                       EntityManagerService emService,
                                       TransactionManager tm)
Method Detail

persist

public void persist(Object entity)
Specified by:
persist in interface javax.persistence.EntityManager

merge

public <T> T merge(T entity)
Specified by:
merge in interface javax.persistence.EntityManager

remove

public void remove(Object entity)
Specified by:
remove in interface javax.persistence.EntityManager

find

public <T> T find(Class<T> entityClass,
                  Object primaryKey)
Specified by:
find in interface javax.persistence.EntityManager

find

public <T> T find(Class<T> tClass,
                  Object o,
                  Map<String,Object> stringObjectMap)
Specified by:
find in interface javax.persistence.EntityManager

find

public <T> T find(Class<T> tClass,
                  Object o,
                  javax.persistence.LockModeType lockModeType)
Specified by:
find in interface javax.persistence.EntityManager

find

public <T> T find(Class<T> tClass,
                  Object o,
                  javax.persistence.LockModeType lockModeType,
                  Map<String,Object> stringObjectMap)
Specified by:
find in interface javax.persistence.EntityManager

getReference

public <T> T getReference(Class<T> entityClass,
                          Object primaryKey)
Specified by:
getReference in interface javax.persistence.EntityManager

flush

public void flush()
Specified by:
flush in interface javax.persistence.EntityManager

setFlushMode

public void setFlushMode(javax.persistence.FlushModeType flushMode)
Specified by:
setFlushMode in interface javax.persistence.EntityManager

getFlushMode

public javax.persistence.FlushModeType getFlushMode()
Specified by:
getFlushMode in interface javax.persistence.EntityManager

lock

public void lock(Object entity,
                 javax.persistence.LockModeType lockMode)
Specified by:
lock in interface javax.persistence.EntityManager

lock

public void lock(Object o,
                 javax.persistence.LockModeType lockModeType,
                 Map<String,Object> stringObjectMap)
Specified by:
lock in interface javax.persistence.EntityManager

refresh

public void refresh(Object entity)
Specified by:
refresh in interface javax.persistence.EntityManager

refresh

public void refresh(Object o,
                    Map<String,Object> stringObjectMap)
Specified by:
refresh in interface javax.persistence.EntityManager

refresh

public void refresh(Object o,
                    javax.persistence.LockModeType lockModeType)
Specified by:
refresh in interface javax.persistence.EntityManager

refresh

public void refresh(Object o,
                    javax.persistence.LockModeType lockModeType,
                    Map<String,Object> stringObjectMap)
Specified by:
refresh in interface javax.persistence.EntityManager

clear

public void clear()
Specified by:
clear in interface javax.persistence.EntityManager

detach

public void detach(Object o)
Specified by:
detach in interface javax.persistence.EntityManager

contains

public boolean contains(Object entity)
Specified by:
contains in interface javax.persistence.EntityManager

getLockMode

public javax.persistence.LockModeType getLockMode(Object o)
Specified by:
getLockMode in interface javax.persistence.EntityManager

setProperty

public void setProperty(String s,
                        Object o)
Specified by:
setProperty in interface javax.persistence.EntityManager

getProperties

public Map<String,Object> getProperties()
Specified by:
getProperties in interface javax.persistence.EntityManager

createQuery

public javax.persistence.Query createQuery(String qlString)
Specified by:
createQuery in interface javax.persistence.EntityManager

createQuery

public <T> javax.persistence.TypedQuery<T> createQuery(javax.persistence.criteria.CriteriaQuery<T> tCriteriaQuery)
Specified by:
createQuery in interface javax.persistence.EntityManager

createQuery

public <T> javax.persistence.TypedQuery<T> createQuery(String s,
                                                       Class<T> tClass)
Specified by:
createQuery in interface javax.persistence.EntityManager

createNamedQuery

public javax.persistence.Query createNamedQuery(String name)
Specified by:
createNamedQuery in interface javax.persistence.EntityManager

createNamedQuery

public <T> javax.persistence.TypedQuery<T> createNamedQuery(String s,
                                                            Class<T> tClass)
Specified by:
createNamedQuery in interface javax.persistence.EntityManager

createNativeQuery

public javax.persistence.Query createNativeQuery(String sqlString)
Specified by:
createNativeQuery in interface javax.persistence.EntityManager

createNativeQuery

public javax.persistence.Query createNativeQuery(String sqlString,
                                                 Class resultClass)
Specified by:
createNativeQuery in interface javax.persistence.EntityManager

createNativeQuery

public javax.persistence.Query createNativeQuery(String sqlString,
                                                 String resultSetMapping)
Specified by:
createNativeQuery in interface javax.persistence.EntityManager

joinTransaction

public void joinTransaction()
Specified by:
joinTransaction in interface javax.persistence.EntityManager

unwrap

public <T> T unwrap(Class<T> tClass)
Specified by:
unwrap in interface javax.persistence.EntityManager

getDelegate

public Object getDelegate()
Specified by:
getDelegate in interface javax.persistence.EntityManager

close

public void close()
Specified by:
close in interface javax.persistence.EntityManager

isOpen

public boolean isOpen()
Specified by:
isOpen in interface javax.persistence.EntityManager

getTransaction

public javax.persistence.EntityTransaction getTransaction()
Specified by:
getTransaction in interface javax.persistence.EntityManager

getEntityManagerFactory

public javax.persistence.EntityManagerFactory getEntityManagerFactory()
Specified by:
getEntityManagerFactory in interface javax.persistence.EntityManager

getCriteriaBuilder

public javax.persistence.criteria.CriteriaBuilder getCriteriaBuilder()
Specified by:
getCriteriaBuilder in interface javax.persistence.EntityManager

getMetamodel

public javax.persistence.metamodel.Metamodel getMetamodel()
Specified by:
getMetamodel in interface javax.persistence.EntityManager

clearEntityManager

public void clearEntityManager()
Description copied from interface: HibernateProxy
Clear a cached EntityManager if the proxy implementation supports caching.

Specified by:
clearEntityManager in interface HibernateProxy

Fabric3 JPA/Hibernate Extension

Copyright © 2007-2012 Metaform Systems.