All Downloads are FREE. Search and download functionalities are using the official Maven repository.

javax.persistence.EntityManagerFactory Maven / Gradle / Ivy

The newest version!
/*
 * Copyright (c) 2008, 2009 Sun Microsystems. All rights reserved.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0
 * which accompanies this distribution.
 * The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html
 * and the Eclipse Distribution License is available at
 * http://www.eclipse.org/org/documents/edl-v10.php.
 *
 * Contributors:
 *     Linda DeMichiel - Java Persistence 2.0 - Version 2.0 (October 1, 2009)
 *     Specification available from http://jcp.org/en/jsr/detail?id=317
 */

// $Id: EntityManagerFactory.java 20957 2011-06-13 09:58:51Z stliu $

package javax.persistence;

import java.util.Map;
import javax.persistence.metamodel.Metamodel;
import javax.persistence.criteria.CriteriaBuilder;

/**
 * Interface used to interact with the entity manager factory
 * for the persistence unit.
 *
 * 

When the application has finished using the entity manager * factory, and/or at application shutdown, the application should * close the entity manager factory. Once an * EntityManagerFactory has been closed, all its entity managers * are considered to be in the closed state. * * @since Java Persistence 1.0 */ public 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. * @return entity manager instance * @throws IllegalStateException if the entity manager factory * has been closed */ public EntityManager createEntityManager(); /** * Create a new application-managed 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. * @param map properties for entity manager * @return entity manager instance * @throws IllegalStateException if the entity manager factory * has been closed */ public EntityManager createEntityManager(Map map); /** * Return an instance of CriteriaBuilder for the creation of * CriteriaQuery objects. * @return CriteriaBuilder instance * @throws IllegalStateException if the entity manager factory * has been closed * * @since Java Persistence 2.0 */ public CriteriaBuilder getCriteriaBuilder(); /** * Return an instance of Metamodel interface for access to the * metamodel of the persistence unit. * @return Metamodel instance * @throws IllegalStateException if the entity manager factory * has been closed * * @since Java Persistence 2.0 */ public Metamodel getMetamodel(); /** * Indicates whether the factory is open. Returns true * until the factory has been closed. * @return boolean indicating whether the factory is open */ public boolean isOpen(); /** * Close the factory, releasing any resources that it holds. * After a factory instance has been closed, all methods invoked * on it will throw the 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. * @throws IllegalStateException if the entity manager factory * has been closed */ public void close(); /** * 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. * @return properties * @throws IllegalStateException if the entity manager factory * has been closed * * @since Java Persistence 2.0 */ public Map getProperties(); /** * Access the cache that is associated with the entity manager * factory (the "second level cache"). * @return instance of the Cache interface * @throws IllegalStateException if the entity manager factory * has been closed * * @since Java Persistence 2.0 */ public Cache getCache(); /** * Return interface providing access to utility methods * for the persistence unit. * @return PersistenceUnitUtil interface * @throws IllegalStateException if the entity manager factory * has been closed * * @since Java Persistence 2.0 */ public PersistenceUnitUtil getPersistenceUnitUtil(); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy