Class EntityManagerFactoryImpl

java.lang.Object
cz.cvut.kbss.jopa.model.EntityManagerFactoryImpl
All Implemented Interfaces:
EntityManagerFactory, PersistenceUnitUtil, AutoCloseable

public class EntityManagerFactoryImpl extends Object implements EntityManagerFactory, PersistenceUnitUtil
  • Constructor Details

  • Method Details

    • close

      public void close()
      Description copied from interface: EntityManagerFactory
      Close the factory, releasing any resources that it holds. After a factory instance is closed, all methods invoked on it will throw an IllegalStateException, except for isOpen, which will return false. Once an EntityManagerFactory has been closed, all its entity managers are considered to be in the closed state.
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface EntityManagerFactory
    • createEntityManager

      public EntityManager createEntityManager()
      Description copied from interface: EntityManagerFactory
      Create a new application-managed EntityManager. This method returns a new EntityManager instance each time it is invoked. The isOpen method will return true on the returned instance.
      Specified by:
      createEntityManager in interface EntityManagerFactory
      Returns:
      entity manager instance
    • createEntityManager

      public EntityManager createEntityManager(Map<String,String> map)
      Description copied from interface: EntityManagerFactory
      Create a new EntityManager with the specified Map of properties. This method returns a new EntityManager instance each time it is invoked. The isOpen method will return true on the returned instance.
      Specified by:
      createEntityManager in interface EntityManagerFactory
      Parameters:
      map - properties for entity manager
      Returns:
      entity manager instance
    • getCriteriaBuilder

      public CriteriaBuilder getCriteriaBuilder()
      Description copied from interface: EntityManagerFactory
      Returns an instance of CriteriaBuilder which may be used to construct CriteriaQuery objects.
      Specified by:
      getCriteriaBuilder in interface EntityManagerFactory
      Returns:
      an instance of CriteriaBuilder
    • getServerSession

      public ServerSession getServerSession()
      Gets the ServerSession that provides storage access and second level cache in this persistence unit.
      Returns:
      The ServerSession for this factory.
      Throws:
      IllegalStateException - If the factory is closed
    • isOpen

      public boolean isOpen()
      Description copied from interface: EntityManagerFactory
      Indicates whether the factory is open. Returns true until the factory has been closed.
      Specified by:
      isOpen in interface EntityManagerFactory
      Returns:
      true if the entity manager is open
    • getProperties

      public Map<String,String> getProperties()
      Description copied from interface: EntityManagerFactory
      Get the properties and associated values that are in effect for the entity manager factory.

      Changing the contents of the map does not change the configuration in effect.

      Specified by:
      getProperties in interface EntityManagerFactory
      Returns:
      properties
    • getMetamodel

      public MetamodelImpl getMetamodel()
      Description copied from interface: EntityManagerFactory
      Return an instance of Metamodel interface for access to the metamodel of the persistence unit.
      Specified by:
      getMetamodel in interface EntityManagerFactory
      Returns:
      Metamodel instance
    • getPersistenceUnitUtil

      public PersistenceUnitUtil getPersistenceUnitUtil()
      Description copied from interface: EntityManagerFactory
      Return interface providing access to utility methods for the persistence unit.
      Specified by:
      getPersistenceUnitUtil in interface EntityManagerFactory
      Returns:
      PersistenceUnitUtil interface
    • addNamedQuery

      public void addNamedQuery(String name, Query query)
      Description copied from interface: EntityManagerFactory
      Define the query or typed query as a named query such that future query objects can be created from it using the createNamedQuery method. Any configuration of the query object (except for actual parameter binding) in effect when the named query is added is retained as part of the named query definition. This includes configuration information such as max results and result set mapping information.

      When the query is executed, information that can be set by means of the query APIs can be overridden. Information that is overridden does not affect the named query as registered with the entity manager factory, and thus does not affect subsequent query objects created from it by means of the createNamedQuery method.

      If a named query of the same name has been previously defined, either statically via metadata or via this method, that query definition is replaced.

      Specified by:
      addNamedQuery in interface EntityManagerFactory
      Parameters:
      name - name for the query
      query - Query or TypedQuery object
    • unwrap

      public <T> T unwrap(Class<T> cls)
      Description copied from interface: EntityManagerFactory
      Return an object of the specified type to allow access to the provider-specific API. If the provider's EntityManagerFactory implementation does not support the specified class, the OWLPersistenceException is thrown.
      Specified by:
      unwrap in interface EntityManagerFactory
      Parameters:
      cls - The class of the object to be returned. This can be also an implementation of the underlying driver
      Returns:
      an instance of the specified class
    • getIdentifier

      public Object getIdentifier(Object entity)
      Description copied from interface: PersistenceUnitUtil
      Return the id of the entity. A generated id is not guaranteed to be available until after the database insert has occurred. Returns null if the entity does not yet have an id.
      Specified by:
      getIdentifier in interface PersistenceUnitUtil
      Parameters:
      entity - entity instance
      Returns:
      id of the entity
    • isLoaded

      public boolean isLoaded(Object entity, String attributeName)
      Description copied from interface: PersistenceUnitUtil
      Determine the load state of a given persistent attribute of an entity belonging to the persistence unit.
      Specified by:
      isLoaded in interface PersistenceUnitUtil
      Parameters:
      entity - entity instance containing the attribute
      attributeName - name of attribute whose load state is to be determined
      Returns:
      false if entity's state has not been loaded or if the attribute state has not been loaded, else true
    • isLoaded

      public boolean isLoaded(Object entity)
      Description copied from interface: PersistenceUnitUtil
      Determine the load state of an entity belonging to the persistence unit.

      This method can be used to determine the load state of an entity passed as a reference. An entity is considered loaded if all attributes for which FetchType.EAGER has been specified have been loaded.

      The PersistenceUnitUtil.isLoaded(Object, String) method should be used to determine the load state of an attribute. Not doing so might lead to unintended loading of state.

      Specified by:
      isLoaded in interface PersistenceUnitUtil
      Parameters:
      entity - entity instance whose load state is to be determined
      Returns:
      false if the entity has not been loaded, else true
    • getCache

      public Cache getCache()
      Description copied from interface: EntityManagerFactory
      Access the cache that is associated with the entity manager factory (the "second level cache").
      Specified by:
      getCache in interface EntityManagerFactory
      Returns:
      instance of the Cache interface