## org.springframework.orm.jpa.vendor
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 1.0.

Exposes EclipseLink's persistence provider and EntityManager extension interface, and supports `AbstractJpaVendorAdapter`'s common configuration settings.

This class is very analogous to `TopLinkJpaVendorAdapter`, since EclipseLink is effectively the next generation of the TopLink product. Thanks to Mike Keith for the original EclipseLink support prototype!

NOTE: No need to filter out classes from the JPA providers package for EclipseLink (see SPR-6040)

Since:
  2.5.2
Author:
  Juergen Hoeller, Thomas Risberg
See Also:
  `PersistenceProvider`, `JpaEntityManager`

Constructor Summary
`EclipseLinkJpaVendorAdapter()`

Method Summary
`protected String` `determineTargetDatabaseName(Database database)` Determine the EclipseLink target database name for the given database.
`Class<? extends javax.persistence.EntityManager>` `getEntityManagerInterface()` Return the vendor-specific EntityManager interface that this provider's EntityManagers will implement.
`JpaDialect` `getJpaDialect()` Return the vendor-specific JpaDialect implementation for this provider, or `null` if there is none.
`Map<String,Object>` `getJpaPropertyMap()` Return a Map of vendor-specific JPA properties, typically based on settings in this JpaVendorAdapter instance.
`javax.persistence.spi.PersistenceProvider` `getPersistenceProvider()` Return the vendor-specific persistence provider.

Methods inherited from class org.springframework.orm.jpa.vendor.AbstractJpaVendorAdapter
`getDatabase, getDatabasePlatform, getEntityManagerFactoryInterface, getPersistenceProviderRootPackage, isGenerateDdl, isShowSql, postProcessEntityManagerFactory, setDatabase, setDatabasePlatform, setGenerateDdl, setShowSql`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### EclipseLinkJpaVendorAdapter

    public EclipseLinkJpaVendorAdapter()

Method Detail

### getPersistenceProvider

    public javax.persistence.spi.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 interface `JpaVendorAdapter`
  Overrides:
    `getJpaPropertyMap` in class `AbstractJpaVendorAdapter`
  Returns:
    a Map of JPA properties, as as accepted by the standard JPA bootstrap facilities, or `null` or an empty Map if there are no such properties to expose
  See Also:
    `Persistence.createEntityManagerFactory(String, java.util.Map)`, `PersistenceProvider.createContainerEntityManagerFactory(javax.persistence.spi.PersistenceUnitInfo, java.util.Map)`

### determineTargetDatabaseName

    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 JpaDialect getJpaDialect()

  Description copied from interface: `JpaVendorAdapter`
  Return the vendor-specific JpaDialect implementation for this provider, or `null` if there is none.

  Specified by:
    `getJpaDialect` in interface `JpaVendorAdapter`
  Overrides:
    `getJpaDialect` in class `AbstractJpaVendorAdapter`

### getEntityManagerInterface

    public Class<? extends javax.persistence.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 interface `JpaVendorAdapter`
  Overrides:
    `getEntityManagerInterface` in class `AbstractJpaVendorAdapter`