Interface EntityManagerFactoryBuilder


  • @ProviderType
    public interface EntityManagerFactoryBuilder
    This service interface offers JPA clients the ability to create instances of EntityManagerFactory for a given named persistence unit. A service instance will be created for each named persistence unit and can be filtered by comparing the value of the osgi.unit.name property containing the persistence unit name. This service is used specifically when the caller wants to pass in factory-scoped properties as arguments. If no properties are being used in the creation of the EntityManagerFactory then the basic EntityManagerFactory service should be used.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String JPA_CAPABILITY_NAME
      The name of the JPA extender capability.
      static java.lang.String JPA_SPECIFICATION_VERSION
      The version of the extender capability for the JPA Service specification
      static java.lang.String JPA_UNIT_NAME
      The name of the persistence unit.
      static java.lang.String JPA_UNIT_PROVIDER
      The class name of the provider that registered the service and implements the JPA javax.persistence.PersistenceProvider interface.
      static java.lang.String JPA_UNIT_VERSION
      The version of the persistence unit bundle.
    • Field Detail

      • JPA_UNIT_NAME

        static final java.lang.String JPA_UNIT_NAME
        The name of the persistence unit.
        See Also:
        Constant Field Values
      • JPA_UNIT_VERSION

        static final java.lang.String JPA_UNIT_VERSION
        The version of the persistence unit bundle.
        See Also:
        Constant Field Values
      • JPA_UNIT_PROVIDER

        static final java.lang.String JPA_UNIT_PROVIDER
        The class name of the provider that registered the service and implements the JPA javax.persistence.PersistenceProvider interface.
        See Also:
        Constant Field Values
      • JPA_CAPABILITY_NAME

        static final java.lang.String JPA_CAPABILITY_NAME
        The name of the JPA extender capability.
        Since:
        1.1
        See Also:
        Constant Field Values
      • JPA_SPECIFICATION_VERSION

        static final java.lang.String JPA_SPECIFICATION_VERSION
        The version of the extender capability for the JPA Service specification
        Since:
        1.1
        See Also:
        Constant Field Values
    • Method Detail

      • createEntityManagerFactory

        javax.persistence.EntityManagerFactory createEntityManagerFactory​(java.util.Map<java.lang.String,​java.lang.Object> props)
        Return an EntityManagerFactory instance configured according to the properties defined in the corresponding persistence descriptor, as well as the properties passed into the method.
        Parameters:
        props - Properties to be used, in addition to those in the persistence descriptor, for configuring the EntityManagerFactory for the persistence unit.
        Returns:
        An EntityManagerFactory for the persistence unit associated with this service. Must not be null.
      • getPersistenceProviderName

        java.lang.String getPersistenceProviderName()
        This method returns the name of the PersistenceProvider implementation that is used by this EntityManagerFactoryBuilder. The returned value will be the same as the value of the JPA_UNIT_PROVIDER service property.
        Returns:
        the name of the PersistenceProvider implementation
        Since:
        1.1
      • getPersistenceProviderBundle

        org.osgi.framework.Bundle getPersistenceProviderBundle()
        This method returns the Bundle which provides the PersistenceProvider implementation that is used by this EntityManagerFactoryBuilder.

        If the PersistenceProvider is provided as an OSGi service then this method must return the bundle which registered the service. Otherwise this method must return the bundle which loaded the PersistenceProvider implementation class.

        Returns:
        The Bundle which provides the PersistenceProvider implementation used by this EntityManagerFactoryBuilder.
        Since:
        1.1