[jboss-svn-commits] JBL Code SVN: r27915 - labs/jbosstm/workspace/whitingjr/trunk/MVCCSampleSTM/src/main/java/uk/ac/ncl/sdia/a8905943/entitymanager.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Sun Jul 12 14:12:54 EDT 2009
Author: whitingjr
Date: 2009-07-12 14:12:54 -0400 (Sun, 12 Jul 2009)
New Revision: 27915
Modified:
labs/jbosstm/workspace/whitingjr/trunk/MVCCSampleSTM/src/main/java/uk/ac/ncl/sdia/a8905943/entitymanager/STMEntityManagerFactoryImpl.java
Log:
Added implementation of factory methods.
Modified: labs/jbosstm/workspace/whitingjr/trunk/MVCCSampleSTM/src/main/java/uk/ac/ncl/sdia/a8905943/entitymanager/STMEntityManagerFactoryImpl.java
===================================================================
--- labs/jbosstm/workspace/whitingjr/trunk/MVCCSampleSTM/src/main/java/uk/ac/ncl/sdia/a8905943/entitymanager/STMEntityManagerFactoryImpl.java 2009-07-12 18:12:24 UTC (rev 27914)
+++ labs/jbosstm/workspace/whitingjr/trunk/MVCCSampleSTM/src/main/java/uk/ac/ncl/sdia/a8905943/entitymanager/STMEntityManagerFactoryImpl.java 2009-07-12 18:12:54 UTC (rev 27915)
@@ -9,13 +9,30 @@
import java.util.Map;
import javax.persistence.EntityManager;
+import javax.persistence.spi.PersistenceUnitTransactionType;
+import org.apache.log4j.Logger;
+
import uk.ac.ncl.sdia.a8905943.spec.entitymanager.STMEntityManagerFactory;
+/**
+ * This object is responsible for choosing the transactional type, creating a persistence contxt, entity manager
+ * and providing the entity manager with the persistence context.
+ * This implemenation creates a new instance of EntityManager for each request.
+ *
+ * @author <a href="whitingjr at hotmail.com">Jeremy Whiting</a>
+ * @version $Revision: 1.1 $
+ */
public class STMEntityManagerFactoryImpl implements STMEntityManagerFactory
{
+ private Map properties ;
+ private static final Logger logger = Logger.getLogger(STMEntityManagerFactoryImpl.class);
+ private PersistenceUnitTransactionType transactionType ;
@Override
+ /**
+ * Perform cleanup of factory.
+ */
public void close()
{
// FIXME close
@@ -25,14 +42,28 @@
@Override
public EntityManager createEntityManager()
{
- // FIXME createEntityManager
+ if (true)
+ {
+ throw new UnsupportedOperationException("Please create an Entity Manager with properties map.");
+ }
+
return null;
}
@Override
+ /**
+ *
+ * List of map entries checked for :
+ * "ISOLATION_LEVEL"
+ */
public EntityManager createEntityManager(Map map)
{
- // FIXME createEntityManager
+ // TODO: jrw complete method implementation, identify which properties will be used for creating an entity manager.
+ // create transactional type, JTA
+ // create persistence context
+ // create entity manager
+ // allocate persistence context to entity manager
+
return null;
}
@@ -42,5 +73,16 @@
// FIXME isOpen
return false;
}
-
+
+ public void setMap(Map properties)
+ {
+ if (null != properties )
+ {
+ this.properties = properties;
+ }
+ else
+ {
+ logger.error("Attempted to configure EntityManagerFactory with a null properties reference.");
+ }
+ }
}
More information about the jboss-svn-commits
mailing list