public class PersistenceProvider extends java.lang.Object implements PersistenceProvider, ProviderUtil
Constructor and Description |
---|
PersistenceProvider() |
Modifier and Type | Method and Description |
---|---|
boolean |
checkForProviderProperty(java.util.Map properties)
Need to check that the provider property is null or set for EclipseLink
|
EntityManagerFactory |
createContainerEntityManagerFactory(PersistenceUnitInfo info,
java.util.Map properties)
Called by the container when an EntityManagerFactory
is to be created.
|
EntityManagerFactory |
createEntityManagerFactory(java.lang.String emName,
java.util.Map properties)
Called by Persistence class when an EntityManagerFactory
is to be created.
|
protected org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl |
createEntityManagerFactoryImpl(PersistenceUnitInfo puInfo,
java.util.Map properties,
boolean requiresConnection)
Internal method to return the entity manager factory.
|
void |
generateSchema(PersistenceUnitInfo info,
java.util.Map properties)
Create database schemas and/or tables and/or create DDL
scripts as determined by the supplied properties.
|
boolean |
generateSchema(java.lang.String persistenceUnitName,
java.util.Map properties)
Create database schemas and/or tables and/or create DDL scripts as
determined by the supplied properties.
|
java.lang.ClassLoader |
getClassLoader(java.lang.String emName,
java.util.Map properties)
Answer the classloader to use to create an EntityManager.
|
org.eclipse.persistence.internal.jpa.deployment.JPAInitializer |
getInitializer(java.lang.String emName,
java.util.Map m)
Return JPAInitializer corresponding to the passed classLoader.
|
ProviderUtil |
getProviderUtil()
Return the utility interface implemented by the persistence
provider.
|
LoadState |
isLoaded(java.lang.Object entity)
If the provider determines that the entity has been provided
by itself and that the state of all attributes for which
FetchType.EAGER has been specified have been loaded, this
method returns LoadState.LOADED . |
LoadState |
isLoadedWithoutReference(java.lang.Object entity,
java.lang.String attributeName)
If the provider determines that the entity has been provided
by itself and that the state of the specified attribute has
been loaded, this method returns
LoadState.LOADED . |
LoadState |
isLoadedWithReference(java.lang.Object entity,
java.lang.String attributeName)
If the provider determines that the entity has been provided
by itself and that the state of the specified attribute has
been loaded, this method returns
LoadState.LOADED . |
protected org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl createEntityManagerFactoryImpl(PersistenceUnitInfo puInfo, java.util.Map properties, boolean requiresConnection)
public EntityManagerFactory createEntityManagerFactory(java.lang.String emName, java.util.Map properties)
createEntityManagerFactory
in interface PersistenceProvider
emName
- The name of the persistence unitmap
- A Map of properties for use by the
persistence provider. These properties may be used to
override the values of the corresponding elements in
the persistence.xml file or specify values for
properties not specified in the persistence.xml.public void generateSchema(PersistenceUnitInfo info, java.util.Map properties)
Called by the Persistence class when schema generation is to occur as a separate phase from creation of the entity manager factory.
generateSchema
in interface PersistenceProvider
persistenceUnitName
- the name of the persistence unitproperties
- properties for schema generation; these may also
contain provider-specific properties. The value of these
properties override any values that may have been configured
elsewhere.PersistenceException
- if insufficient or inconsistent
configuration information is provided of if schema generation
otherwise failspublic boolean generateSchema(java.lang.String persistenceUnitName, java.util.Map properties)
Called by the Persistence class when schema generation is to occur as a separate phase from creation of the entity manager factory.
generateSchema
in interface PersistenceProvider
persistenceUnitName
- the name of the persistence unitproperties
- properties for schema generation; these may also
contain provider-specific properties. The value of these
properties override any values that may have been configured
elsewhere.PersistenceException
- if insufficient or inconsistent
configuration information is provided of if schema generation
otherwise failspublic org.eclipse.persistence.internal.jpa.deployment.JPAInitializer getInitializer(java.lang.String emName, java.util.Map m)
emName
- m
- public boolean checkForProviderProperty(java.util.Map properties)
public EntityManagerFactory createContainerEntityManagerFactory(PersistenceUnitInfo info, java.util.Map properties)
createContainerEntityManagerFactory
in interface PersistenceProvider
info
- Metadata for use by the persistence providermap
- A Map of integration-level properties for use
by the persistence provider.public ProviderUtil getProviderUtil()
getProviderUtil
in interface PersistenceProvider
public LoadState isLoadedWithoutReference(java.lang.Object entity, java.lang.String attributeName)
LoadState.LOADED
.
If the provider determines that the entity has been provided
by itself and that either entity attributes with FetchType.EAGER
have not been loaded or that the state of the specified
attribute has not been loaded, this methods returns
LoadState.NOT_LOADED
.
If a provider cannot determine the load state, this method
returns LoadState.UNKNOWN
.
The provider's implementation of this method must not obtain
a reference to an attribute value, as this could trigger the
loading of entity state if the entity has been provided by a
different provider.isLoadedWithoutReference
in interface ProviderUtil
entity
- attributeName
- name of attribute whose load status is
to be determinedpublic LoadState isLoadedWithReference(java.lang.Object entity, java.lang.String attributeName)
LoadState.LOADED
.
If a provider determines that the entity has been provided
by itself and that either the entity attributes with FetchType.EAGER
have not been loaded or that the state of the specified
attribute has not been loaded, this method returns
return LoadState.NOT_LOADED
.
If the provider cannot determine the load state, this method
returns LoadState.UNKNOWN
.
The provider's implementation of this method is permitted to
obtain a reference to the attribute value. (This access is
safe because providers which might trigger the loading of the
attribute state will have already been determined by
isLoadedWithoutReference
. )isLoadedWithReference
in interface ProviderUtil
entity
- attributeName
- name of attribute whose load status is
to be determinedpublic LoadState isLoaded(java.lang.Object entity)
FetchType.EAGER
has been specified have been loaded, this
method returns LoadState.LOADED
.
If the provider determines that the entity has been provided
by itself and that not all attributes with FetchType.EAGER
have been loaded, this method returns LoadState.NOT_LOADED
.
If the provider cannot determine if the entity has been
provided by itself, this method returns LoadState.UNKNOWN
.
The provider's implementation of this method must not obtain
a reference to any attribute value, as this could trigger the
loading of entity state if the entity has been provided by a
different provider.isLoaded
in interface ProviderUtil
entity
- whose loaded status is to be determinedpublic java.lang.ClassLoader getClassLoader(java.lang.String emName, java.util.Map properties)
properties
-