public class PersistenceFactoryBase extends java.lang.Object implements PersistenceContextFactory
Modifier and Type | Field and Description |
---|---|
protected java.util.Map<java.lang.String,java.util.Set<PersistenceContext>> |
dynamicPersistenceContexts |
Constructor and Description |
---|
PersistenceFactoryBase() |
Modifier and Type | Method and Description |
---|---|
PersistenceContext |
bootstrapPersistenceContext(java.lang.String name,
EntityManagerFactory emf,
java.net.URI baseURI,
java.lang.String version,
boolean replace)
Bootstrap a PersistenceContext based on an pre-existing EntityManagerFactory.
|
void |
close()
Stop the factory.
|
void |
closePersistenceContext(java.lang.String name)
Close the PersistenceContext of a given name and clean it out of our list of PersistenceContexts.
|
protected static java.util.Map<java.lang.String,java.lang.Object> |
createProperties(DynamicClassLoader dcl,
java.util.Map<java.lang.String,?> originalProperties)
Provide an initial set of properties for bootstrapping PersistenceContexts.
|
PersistenceContext |
get(java.lang.String persistenceUnitName,
java.net.URI defaultURI,
java.lang.String version,
java.util.Map<java.lang.String,java.lang.Object> initializationProperties) |
PersistenceContext |
getDynamicPersistenceContext(java.lang.String name,
java.lang.String version)
Gets cached persistence context by its name and JPARS version.
|
java.util.Set<java.lang.String> |
getPersistenceContextNames() |
protected final java.util.Map<java.lang.String,java.util.Set<PersistenceContext>> dynamicPersistenceContexts
public PersistenceContext bootstrapPersistenceContext(java.lang.String name, EntityManagerFactory emf, java.net.URI baseURI, java.lang.String version, boolean replace)
name
- persistence context nameemf
- entity manager factorybaseURI
- base URIversion
- JPARS version. See ServiceVersion
for more details.replace
- Indicates that existing persistence context with given name and version must be replaced
with the newly created one. If false passed the newly created context is not added to cache at all.public void close()
close
in interface PersistenceContextFactory
public void closePersistenceContext(java.lang.String name)
closePersistenceContext
in interface PersistenceContextFactory
name
- name of the persistence context to close.protected static java.util.Map<java.lang.String,java.lang.Object> createProperties(DynamicClassLoader dcl, java.util.Map<java.lang.String,?> originalProperties)
dcl
- originalProperties
- public PersistenceContext get(java.lang.String persistenceUnitName, java.net.URI defaultURI, java.lang.String version, java.util.Map<java.lang.String,java.lang.Object> initializationProperties)
get
in interface PersistenceContextFactory
public java.util.Set<java.lang.String> getPersistenceContextNames()
getPersistenceContextNames
in interface PersistenceContextFactory
public PersistenceContext getDynamicPersistenceContext(java.lang.String name, java.lang.String version)
name
- persistent unit name.version
- JPARS version. See ServiceVersion
for more details.