MetaDone
metadone.repository.kernel.jpa2.FactoryProjectJPA2 Class Reference
Inheritance diagram for metadone.repository.kernel.jpa2.FactoryProjectJPA2:
Collaboration diagram for metadone.repository.kernel.jpa2.FactoryProjectJPA2:

List of all members.

Public Member Functions

 FactoryProjectJPA2 (Properties properties) throws BadPreCondition
void setEventManager (EventTower<?super Metal1Event > e)
ProjectJPA2 createProject (String name) throws BadPreCondition, FailedOperation
Transaction currentTransaction () throws BadPreCondition
void dispose ()
Set< String > listProjects () throws BadPreCondition, FailedOperation
Transaction newTransaction () throws BadPreCondition
Project openProject (String name) throws BadPreCondition, FailedOperation

Protected Member Functions

EntityManager getEntityManager ()
EntityManagerFactory getEntityManagerFactory ()

Private Member Functions

ProjectJPA2 retrieveTheProjectInDatastore (String argname) throws FailedOperation

Static Private Member Functions

static Pair< EntityManager,
EntityManagerFactory > 
createEntityManager (Properties properties) throws FailedOperation

Private Attributes

transient EventTower<?super
Metal1Event
eventManager
final transient
EntityManagerFactory 
entityManagerFactory
final transient EntityManager entityManager

Static Private Attributes

static final Logger logger = Logger.getLogger(FactoryProject.class)

Constructor & Destructor Documentation


Member Function Documentation

static Pair<EntityManager, EntityManagerFactory> metadone.repository.kernel.jpa2.FactoryProjectJPA2.createEntityManager ( Properties  properties) throws FailedOperation [static, private]
ProjectJPA2 metadone.repository.kernel.jpa2.FactoryProjectJPA2.createProject ( String  name) throws BadPreCondition, FailedOperation
Transaction metadone.repository.kernel.jpa2.FactoryProjectJPA2.currentTransaction ( ) throws BadPreCondition

Depending on the persistence layer, this transaction can be more efficient (does not require to open a new connection to the server for instance.

Returns:
The default transaction.
Exceptions:
BadPreCondition

Implements metadone.repository.kernel.FactoryProject.

References metadone.repository.kernel.jpa2.FactoryProjectJPA2.entityManager.

Referenced by metadone.repository.kernel.jpa2.FactoryProjectJPA2.dispose().

EntityManagerFactory metadone.repository.kernel.jpa2.FactoryProjectJPA2.getEntityManagerFactory ( ) [protected]
Set<String> metadone.repository.kernel.jpa2.FactoryProjectJPA2.listProjects ( ) throws BadPreCondition, FailedOperation

This operation returns the list of all the name of the projects in the datastore. This operation is transsactional. If the caller is already running in a transaction, then this transaction is reused, otherwise, a transaction is created and committed inside the operation.

Returns:
The list of the names of the projetcs in the datastore.
Exceptions:
BadPreCondition
FailedOperation

Implements metadone.repository.kernel.FactoryProject.

References metadone.repository.kernel.jpa2.FactoryProjectJPA2.getEntityManager().

Transaction metadone.repository.kernel.jpa2.FactoryProjectJPA2.newTransaction ( ) throws BadPreCondition
Returns:
A new transaction that can be used in concurrent threads.
Exceptions:
BadPreCondition

Implements metadone.repository.kernel.FactoryProject.

References metadone.repository.kernel.jpa2.FactoryProjectJPA2.getEntityManager().

Project metadone.repository.kernel.jpa2.FactoryProjectJPA2.openProject ( String  name) throws BadPreCondition, FailedOperation

Open a project named 'name' If the operation succeeds, then a transaction has been created. If an exception is thrown, then no transaction has been created.

Parameters:
nameDenotes the name of the project.
Exceptions:
BadPreConditionif some precondition is not fulfilled or if there is no project with this name in the datastore.
FailedOperationIf some error occured while using the datastore.

Implements metadone.repository.kernel.FactoryProject.

References metadone.repository.kernel.jpa2.FactoryProjectJPA2.eventManager, metadone.repository.kernel.jpa2.FactoryProjectJPA2.getEntityManager(), metadone.repository.kernel.jpa2.FactoryProjectJPA2.getEntityManagerFactory(), metadone.repository.kernel.jpa2.FactoryProjectJPA2.retrieveTheProjectInDatastore(), metadone.repository.kernel.jpa2.ProjectJPA2.setEntityManager(), metadone.repository.kernel.jpa2.ProjectJPA2.setEntityManagerFactory(), and metadone.repository.kernel.AbstractProject.setEvents().

ProjectJPA2 metadone.repository.kernel.jpa2.FactoryProjectJPA2.retrieveTheProjectInDatastore ( String  argname) throws FailedOperation [private]
void metadone.repository.kernel.jpa2.FactoryProjectJPA2.setEventManager ( EventTower<?super Metal1Event e)

Sets the event manager that will be used by the projects by default.

Parameters:
eThe event manager or null

Implements metadone.repository.kernel.FactoryProject.

References metadone.repository.kernel.jpa2.FactoryProjectJPA2.eventManager.


Member Data Documentation

final Logger metadone.repository.kernel.jpa2.FactoryProjectJPA2.logger = Logger.getLogger(FactoryProject.class) [static, private]

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Enumerations