org.granite.tide.seam.lazy
Class TideHibernatePersistenceFactory

java.lang.Object
  extended by org.granite.tide.seam.lazy.TideHibernatePersistenceFactory

public class TideHibernatePersistenceFactory
extends Object

Factory for creating the correct ITidePersistenceManager based on the persistence strategy passed in. Supported types are EntityManager,Session, EntityQuery, EntityHome, HibernateEntityHome and a injected(@In) EntityManager or HibernateSession

Author:
CIngram

Constructor Summary
TideHibernatePersistenceFactory()
           
 
Method Summary
static org.granite.tide.TidePersistenceManager createTidePersistence(Component component, Component.BijectedAttribute<In> att)
          Create a ITidePersistenceManager for a injected attribute(@In).
static org.granite.tide.TidePersistenceManager createTidePersistence(Component component, EntityManager persistenceType)
          Create a ITideInterceptor for a EntityManager.
static org.granite.tide.TidePersistenceManager createTidePersistence(Component component, Object persistenceType)
          Create the ITidePersistenceManager.
static org.granite.tide.TidePersistenceManager createTidePersistence(Component component, PersistenceController<?> controller)
          Create ITidePersistenceManager for a PersistenceController
static org.granite.tide.TidePersistenceManager createTidePersistence(Component component, org.hibernate.Session persistenceType)
          Create ITidePersistenceManager for a HibernateSession
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TideHibernatePersistenceFactory

public TideHibernatePersistenceFactory()
Method Detail

createTidePersistence

public static org.granite.tide.TidePersistenceManager createTidePersistence(Component component,
                                                                            Object persistenceType)
Create the ITidePersistenceManager. Supported types are EntityManager,Session, EntityQuery, EntityHome, HibernateEntityHome and a injected(@In) EntityManager or HibernateSession

Parameters:
component -
persistenceType -
Returns:
a ITidePersistenceManager.

createTidePersistence

public static org.granite.tide.TidePersistenceManager createTidePersistence(Component component,
                                                                            EntityManager persistenceType)
Create a ITideInterceptor for a EntityManager.

Parameters:
component -
persistenceType -
Returns:
a ITidePersistenceManager.

createTidePersistence

public static org.granite.tide.TidePersistenceManager createTidePersistence(Component component,
                                                                            org.hibernate.Session persistenceType)
Create ITidePersistenceManager for a HibernateSession

Parameters:
component -
persistenceType -
Returns:
a ITidePersistenceManager.

createTidePersistence

public static org.granite.tide.TidePersistenceManager createTidePersistence(Component component,
                                                                            PersistenceController<?> controller)
Create ITidePersistenceManager for a PersistenceController

Parameters:
component -
controller -
Returns:
a ITidePersistenceManager.

createTidePersistence

public static org.granite.tide.TidePersistenceManager createTidePersistence(Component component,
                                                                            Component.BijectedAttribute<In> att)
Create a ITidePersistenceManager for a injected attribute(@In). Supported Types are EntityManager or Session.

Parameters:
component -
att -
Returns:
a ITidePersistenceManager.