Class EclipseLinkJpaVendorAdapter
- java.lang.Object
- org.springframework.orm.jpa.vendor.AbstractJpaVendorAdapter
- org.springframework.orm.jpa.vendor.EclipseLinkJpaVendorAdapter
- All Implemented Interfaces:
JpaVendorAdapter
public class EclipseLinkJpaVendorAdapter extends AbstractJpaVendorAdapter
JpaVendorAdapter
implementation for Eclipse Persistence Services (EclipseLink). Developed and tested against EclipseLink 2.7; backwards-compatible with EclipseLink 2.5 and 2.6 at runtime.Exposes EclipseLink's persistence provider and EntityManager extension interface, and adapts
AbstractJpaVendorAdapter
's common configuration settings. No support for the detection of annotated packages (throughSmartPersistenceUnitInfo.getManagedPackages()
) since EclipseLink doesn't use package-level metadata.- Since:
- 2.5.2
- Author:
- Juergen Hoeller, Thomas Risberg
- See Also:
EclipseLinkJpaDialect
,PersistenceProvider
,JpaEntityManager
Constructor Summary
Constructors Constructor Description EclipseLinkJpaVendorAdapter()
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected String
determineTargetDatabaseName(Database database)
Determine the EclipseLink target database name for the given database.Class<? extends EntityManager>
getEntityManagerInterface()
Return the vendor-specific EntityManager interface that this provider's EntityManagers will implement.EclipseLinkJpaDialect
getJpaDialect()
Return the vendor-specific JpaDialect implementation for this provider, ornull
if there is none.Map<String,Object>
getJpaPropertyMap()
Return a Map of vendor-specific JPA properties, typically based on settings in this JpaVendorAdapter instance.PersistenceProvider
getPersistenceProvider()
Return the vendor-specific persistence provider.Methods inherited from class org.springframework.orm.jpa.vendor.AbstractJpaVendorAdapter
getDatabase, getDatabasePlatform, getEntityManagerFactoryInterface, getJpaPropertyMap, getPersistenceProviderRootPackage, isGenerateDdl, isShowSql, postProcessEntityManagerFactory, setDatabase, setDatabasePlatform, setGenerateDdl, setShowSql
Constructor Detail
EclipseLinkJpaVendorAdapter
public EclipseLinkJpaVendorAdapter()
Method Detail
getPersistenceProvider
public PersistenceProvider getPersistenceProvider()
Description copied from interface:JpaVendorAdapter
Return the vendor-specific persistence provider.
getJpaPropertyMap
public Map<String,Object> getJpaPropertyMap()
Description copied from interface:JpaVendorAdapter
Return a Map of vendor-specific JPA properties, typically based on settings in this JpaVendorAdapter instance.Note that there might be further JPA properties defined on the EntityManagerFactory bean, which might potentially override individual JPA property values specified here.
- Specified by:
getJpaPropertyMap
in interfaceJpaVendorAdapter
- Overrides:
getJpaPropertyMap
in classAbstractJpaVendorAdapter
- Returns:
- a Map of JPA properties, as accepted by the standard JPA bootstrap facilities, or an empty Map if there are no properties to expose
- See Also:
Persistence.createEntityManagerFactory(String, Map)
determineTargetDatabaseName
@Nullable protected String determineTargetDatabaseName(Database database)
Determine the EclipseLink target database name for the given database.- Parameters:
database
- the specified database- Returns:
- the EclipseLink target database name, or
null
if none found
getJpaDialect
public EclipseLinkJpaDialect getJpaDialect()
Description copied from interface:JpaVendorAdapter
Return the vendor-specific JpaDialect implementation for this provider, ornull
if there is none.- Specified by:
getJpaDialect
in interfaceJpaVendorAdapter
- Overrides:
getJpaDialect
in classAbstractJpaVendorAdapter
getEntityManagerInterface
public Class<? extends EntityManager> getEntityManagerInterface()
Description copied from interface:JpaVendorAdapter
Return the vendor-specific EntityManager interface that this provider's EntityManagers will implement.If the provider does not offer any EntityManager extensions, the adapter should simply return the standard
EntityManager
class here.- Specified by:
getEntityManagerInterface
in interfaceJpaVendorAdapter
- Overrides:
getEntityManagerInterface
in classAbstractJpaVendorAdapter