Interface EMFProviderInterface

All Known Implementing Classes:
EMFProviderBMT, EMFProviderCMT, EMFProviderLMT, EMFProviderNoTransactions, EMFProviderSpring

public interface EMFProviderInterface
Interface used to provide specific implementation of EntityManager and transaction acquiring and handling.

Implementation of this interface should provide at least two constructors:

  1. default constructor - will be used if implementation is used as default EMF provider
  2. constructor with single parameter of type Properties - will be used if implementation is used as additional named EMF provider
  • Field Details

    • PERSISTENCE_UNIT_NAME

      static final String PERSISTENCE_UNIT_NAME
      Name of sub property for persistence unit name.
      See Also:
    • JPA_PERSISTENCE_UNIT_NAME

      static final String JPA_PERSISTENCE_UNIT_NAME
      Name of property for persistence unit name.
      See Also:
    • ENTITY_MANAGER

      static final String ENTITY_MANAGER
      Name of sub property for resource reference to entity manager.
      See Also:
    • JPA_ENTITY_MANAGER

      static final String JPA_ENTITY_MANAGER
      Name of property for resource reference to entity manager.
      See Also:
    • ENTITY_MANAGER_FACTORY

      static final String ENTITY_MANAGER_FACTORY
      Name of sub property for resource reference to entity manager factory.
      See Also:
    • JPA_ENTITY_MANAGER_FACTORY

      static final String JPA_ENTITY_MANAGER_FACTORY
      Name of property for resource reference to entity manager factory.
      See Also:
    • TRANSACTION

      static final String TRANSACTION
      Name of sub property for resource reference to transaction or transaction manager.
      See Also:
    • JPA_TRANSACTION

      static final String JPA_TRANSACTION
      Name of property for resource reference to transaction or transaction manager.
      See Also:
  • Method Details

    • get

      jakarta.persistence.EntityManagerFactory get()
      Returns EntityManagerFactory.
      Returns:
      EntityManagerFactory.
    • getEntityManager

      jakarta.persistence.EntityManager getEntityManager() throws jakarta.persistence.PersistenceException
      Returns EntityManager for persistence operations.
      Returns:
      EntityManager for persistence operations.
      Throws:
      jakarta.persistence.PersistenceException - if unable to acquire EntityManager.
    • returnEntityManager

      void returnEntityManager(jakarta.persistence.EntityManager em)
      Closes EntityManager.
      Parameters:
      em - EntityManager which should be closed.
    • getTransaction

      Object getTransaction(jakarta.persistence.EntityManager em) throws Exception
      Returns started transaction.
      Parameters:
      em - EntityManager needed if joining to existing transaction or starting transaction locally.
      Returns:
      Object Already started transaction for persistence operations.
      Throws:
      Exception - if unable to acquire or open transaction.
    • commitTransaction

      void commitTransaction(Object tx) throws Exception
      Commits specified transaction.
      Parameters:
      tx - Object transaction to be commited.
      Throws:
      Exception - occured while committing transaction.
    • rollbackTransaction

      void rollbackTransaction(Object tx)
      Rolls back specified transaction.
      Parameters:
      tx - Object transaction to be rolled back.