org.krakenapps.jpa
Interface JpaService

All Known Implementing Classes:
HibernateJpaService

public interface JpaService

Provides management functionality for JPA entity manager

Author:
xeraph

Method Summary
 void addEntityManagerFactoryListener(EntityManagerFactoryListener listener)
          Add a listener for receiving entity manager factory event
 javax.persistence.EntityManager createEntityManager(java.lang.String factoryName)
          Create a new entity manager using registered entity manager factory
 javax.persistence.EntityManager createEntityManager(java.lang.String factoryName, java.util.Map map)
          Create a new entity manager with the specified Map of properties using registered entity manager factory
 javax.persistence.EntityManagerFactory createEntityManagerFactory(java.util.Properties props, java.util.List<java.lang.Class> entityClasses)
          Create new entity manager factory with specified configurations.
 javax.persistence.EntityManagerFactory getEntityManagerFactory(java.lang.String factoryName)
          Get an entity manager factory from JPA service
 EntityManagerFactoryConfig getEntityManagerFactoryConfig(java.lang.String factoryName)
          Returns JPA configurations for specified entity manager factory
 java.util.Set<java.lang.String> getEntityManagerFactoryNames()
          Returns names of current registered JPA entity manager factories
 void registerEntityManagerFactory(java.lang.String factoryName, java.util.Properties props, long bundleId)
          Create and register new entity manager factory
 void removeEntityManagerFactoryListener(EntityManagerFactoryListener listener)
          Remove the listener for receiving entity manager factory event
 void unregisterEntityManagerFactory(java.lang.String factoryName)
          Close and unregister the entity manager factory
 

Method Detail

createEntityManagerFactory

javax.persistence.EntityManagerFactory createEntityManagerFactory(java.util.Properties props,
                                                                  java.util.List<java.lang.Class> entityClasses)
Create new entity manager factory with specified configurations. Entity manager factory's life cycle is not managed by JPA service.

Parameters:
props - the jpa configurations
entityClasses - the related JPA entity class names
Returns:
the newly created entity manager factory

getEntityManagerFactoryNames

java.util.Set<java.lang.String> getEntityManagerFactoryNames()
Returns names of current registered JPA entity manager factories


getEntityManagerFactoryConfig

EntityManagerFactoryConfig getEntityManagerFactoryConfig(java.lang.String factoryName)
Returns JPA configurations for specified entity manager factory

Parameters:
factoryName - the alias for entity manager factory
Returns:
the configurations for the entity manager factory or null

registerEntityManagerFactory

void registerEntityManagerFactory(java.lang.String factoryName,
                                  java.util.Properties props,
                                  long bundleId)
                                  throws org.osgi.framework.BundleException
Create and register new entity manager factory

Parameters:
factoryName - the alias for new entity manager factory
props - the JPA configurations
bundleId - the id of bundle that contains kraken-jpa configurations and entity classes
Throws:
org.osgi.framework.BundleException - if bundle not found

unregisterEntityManagerFactory

void unregisterEntityManagerFactory(java.lang.String factoryName)
Close and unregister the entity manager factory

Parameters:
factoryName - the alias for new entity manager factory

getEntityManagerFactory

javax.persistence.EntityManagerFactory getEntityManagerFactory(java.lang.String factoryName)
Get an entity manager factory from JPA service

Parameters:
factoryName - the alias for the entity manager factory
Returns:
the entity manager factory or null

createEntityManager

javax.persistence.EntityManager createEntityManager(java.lang.String factoryName)
Create a new entity manager using registered entity manager factory

Parameters:
factoryName - the name of registered entity manager factory
Returns:
an entity manager or null if factory not found

createEntityManager

javax.persistence.EntityManager createEntityManager(java.lang.String factoryName,
                                                    java.util.Map map)
Create a new entity manager with the specified Map of properties using registered entity manager factory

Parameters:
factoryName - the alias for the entity manager factory
map - the properties
Returns:
an entity manager or null if factory not found

addEntityManagerFactoryListener

void addEntityManagerFactoryListener(EntityManagerFactoryListener listener)
Add a listener for receiving entity manager factory event

Parameters:
listener - the listener instance

removeEntityManagerFactoryListener

void removeEntityManagerFactoryListener(EntityManagerFactoryListener listener)
Remove the listener for receiving entity manager factory event

Parameters:
listener - the listener instance


Copyright © 2008-2009 Kraken Project. All Rights Reserved.