class JpaPersistService extends java.lang.Object implements Provider<javax.persistence.EntityManager>, UnitOfWork, PersistService
Modifier and Type | Class and Description |
---|---|
static class |
JpaPersistService.EntityManagerFactoryProvider |
private static interface |
JpaPersistService.Nullable |
Modifier and Type | Field and Description |
---|---|
private javax.persistence.EntityManagerFactory |
emFactory |
private java.lang.ThreadLocal<javax.persistence.EntityManager> |
entityManager |
private java.util.Map<?,?> |
persistenceProperties |
private java.lang.String |
persistenceUnitName |
Constructor and Description |
---|
JpaPersistService(java.lang.String persistenceUnitName,
java.util.Map<?,?> persistenceProperties) |
Modifier and Type | Method and Description |
---|---|
void |
begin()
Starts a Unit Of Work.
|
void |
end()
Declares an end to the current Unit of Work.
|
javax.persistence.EntityManager |
get()
Provides an instance of
T . |
boolean |
isWorking() |
void |
start()
Starts the underlying persistence engine and makes guice-persist ready for
use.
|
(package private) void |
start(javax.persistence.EntityManagerFactory emFactory) |
void |
stop()
Stops the underlying persistence engine.
|
private final java.lang.ThreadLocal<javax.persistence.EntityManager> entityManager
private final java.lang.String persistenceUnitName
private final java.util.Map<?,?> persistenceProperties
private volatile javax.persistence.EntityManagerFactory emFactory
@Inject public JpaPersistService(java.lang.String persistenceUnitName, @JpaPersistService.Nullable java.util.Map<?,?> persistenceProperties)
public javax.persistence.EntityManager get()
Provider
T
. Must never return null
.get
in interface javax.inject.Provider<javax.persistence.EntityManager>
public boolean isWorking()
public void begin()
UnitOfWork
begin
in interface UnitOfWork
public void end()
UnitOfWork
Transaction semantics are not affected.
end
in interface UnitOfWork
void start(javax.persistence.EntityManagerFactory emFactory)
public void start()
PersistService
start
in interface PersistService
public void stop()
PersistService
EntityManagerFactory
. If already stopped, calling this
method does nothing. If not yet started, it also does nothing.stop
in interface PersistService