[jboss-svn-commits] JBL Code SVN: r26160 - in labs/jbosstm/workspace/whitingjr/HibernateWithInMemoryObjects/src/main/java/uk/ac/ncl/sdia/a8905943: impl and 2 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Mon Apr 20 13:23:40 EDT 2009


Author: whitingjr
Date: 2009-04-20 13:23:40 -0400 (Mon, 20 Apr 2009)
New Revision: 26160

Added:
   labs/jbosstm/workspace/whitingjr/HibernateWithInMemoryObjects/src/main/java/uk/ac/ncl/sdia/a8905943/impl/PersonDAOBean.java
   labs/jbosstm/workspace/whitingjr/HibernateWithInMemoryObjects/src/main/java/uk/ac/ncl/sdia/a8905943/mvcc/dao/PersonDAO.java
Removed:
   labs/jbosstm/workspace/whitingjr/HibernateWithInMemoryObjects/src/main/java/uk/ac/ncl/sdia/a8905943/mapping/HandleUtils.java
Modified:
   labs/jbosstm/workspace/whitingjr/HibernateWithInMemoryObjects/src/main/java/uk/ac/ncl/sdia/a8905943/event/MVCCLoadEventListener.java
   labs/jbosstm/workspace/whitingjr/HibernateWithInMemoryObjects/src/main/java/uk/ac/ncl/sdia/a8905943/mapping/MappingSessionMVCC.java
Log:
Added basic classes to prove concept.

Modified: labs/jbosstm/workspace/whitingjr/HibernateWithInMemoryObjects/src/main/java/uk/ac/ncl/sdia/a8905943/event/MVCCLoadEventListener.java
===================================================================
--- labs/jbosstm/workspace/whitingjr/HibernateWithInMemoryObjects/src/main/java/uk/ac/ncl/sdia/a8905943/event/MVCCLoadEventListener.java	2009-04-20 17:17:29 UTC (rev 26159)
+++ labs/jbosstm/workspace/whitingjr/HibernateWithInMemoryObjects/src/main/java/uk/ac/ncl/sdia/a8905943/event/MVCCLoadEventListener.java	2009-04-20 17:23:40 UTC (rev 26160)
@@ -30,8 +30,7 @@
         long startTime = 0;
         if ( stats ) startTime = System.currentTimeMillis();
 
-        Transaction transaction = mapping.getTransaction(event.getSession());
-        transaction.l
+        Object entity = mapping.load(keyToLoad, event.getSession());
         
         /*
         Object entity = persister.load(
@@ -46,7 +45,6 @@
 			source.getFactory().getStatisticsImplementor().fetchEntity( event.getEntityClassName(), System.currentTimeMillis() - startTime);
 		}
 
-		//return entity;
-		return null;
+		return entity;
 	}
 }

Added: labs/jbosstm/workspace/whitingjr/HibernateWithInMemoryObjects/src/main/java/uk/ac/ncl/sdia/a8905943/impl/PersonDAOBean.java
===================================================================
--- labs/jbosstm/workspace/whitingjr/HibernateWithInMemoryObjects/src/main/java/uk/ac/ncl/sdia/a8905943/impl/PersonDAOBean.java	                        (rev 0)
+++ labs/jbosstm/workspace/whitingjr/HibernateWithInMemoryObjects/src/main/java/uk/ac/ncl/sdia/a8905943/impl/PersonDAOBean.java	2009-04-20 17:23:40 UTC (rev 26160)
@@ -0,0 +1,28 @@
+package uk.ac.ncl.sdia.a8905943.impl;
+
+import javax.ejb.Stateless;
+import javax.ejb.TransactionAttribute;
+import javax.ejb.TransactionAttributeType;
+
+import org.codehaus.multiverse.multiversionedstm.examples.Person;
+
+import uk.ac.ncl.sdia.a8905943.mvcc.dao.PersonDAO;
+import auction.dao.ejb3.GenericEJB3DAO;
+ at Stateless
+ at TransactionAttribute(TransactionAttributeType.REQUIRED)
+public class PersonDAOBean extends GenericEJB3DAO<Person, Long> implements PersonDAO {
+
+	@Override
+	public Person getPersonById(Long _id) {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	@Override
+	public void save(Person _person) {
+		// TODO Auto-generated method stub
+
+	}
+
+	
+}

Deleted: labs/jbosstm/workspace/whitingjr/HibernateWithInMemoryObjects/src/main/java/uk/ac/ncl/sdia/a8905943/mapping/HandleUtils.java
===================================================================
--- labs/jbosstm/workspace/whitingjr/HibernateWithInMemoryObjects/src/main/java/uk/ac/ncl/sdia/a8905943/mapping/HandleUtils.java	2009-04-20 17:17:29 UTC (rev 26159)
+++ labs/jbosstm/workspace/whitingjr/HibernateWithInMemoryObjects/src/main/java/uk/ac/ncl/sdia/a8905943/mapping/HandleUtils.java	2009-04-20 17:23:40 UTC (rev 26160)
@@ -1,20 +0,0 @@
-package uk.ac.ncl.sdia.a8905943.mapping;
-
-/**
- * Convenience object to get handles.
- * @author whitingjr
- *
- */
-public class HandleUtils {
-
-	/**
-	 * 
-	 * Use this method to generate a handle based on an object the user has requested to
-	 * load.
-	 * @return long representing a handle that represents the mapping on the Hibernate side.
-	 */
-	public static long getHibernateHandle()
-	{
-		
-	}
-}

Modified: labs/jbosstm/workspace/whitingjr/HibernateWithInMemoryObjects/src/main/java/uk/ac/ncl/sdia/a8905943/mapping/MappingSessionMVCC.java
===================================================================
--- labs/jbosstm/workspace/whitingjr/HibernateWithInMemoryObjects/src/main/java/uk/ac/ncl/sdia/a8905943/mapping/MappingSessionMVCC.java	2009-04-20 17:17:29 UTC (rev 26159)
+++ labs/jbosstm/workspace/whitingjr/HibernateWithInMemoryObjects/src/main/java/uk/ac/ncl/sdia/a8905943/mapping/MappingSessionMVCC.java	2009-04-20 17:23:40 UTC (rev 26160)
@@ -6,6 +6,7 @@
 import org.codehaus.multiverse.api.Transaction;
 import org.codehaus.multiverse.multiversionedstm.MultiversionedStm;
 import org.hibernate.Session;
+import org.hibernate.engine.EntityKey;
 /**
  * Use this object to hold a mapping between a Hibernate Session object and an
  * STM Transaction object. Not convinced this is the right strategy but have to 
@@ -51,6 +52,13 @@
 		return mapping.remove(_session);
 	}
 	
-	
+	public Object load(EntityKey _entry, Session _session)
+	{
+		return load(_entry, mapping.get(_session));
+	}
+	public Object load(EntityKey _entry, Transaction _transaction)
+	{
+		return _transaction.read(handles.getTransactionHandle(Long.valueOf( _entry.hashCode())));
+	}
 
  }

Added: labs/jbosstm/workspace/whitingjr/HibernateWithInMemoryObjects/src/main/java/uk/ac/ncl/sdia/a8905943/mvcc/dao/PersonDAO.java
===================================================================
--- labs/jbosstm/workspace/whitingjr/HibernateWithInMemoryObjects/src/main/java/uk/ac/ncl/sdia/a8905943/mvcc/dao/PersonDAO.java	                        (rev 0)
+++ labs/jbosstm/workspace/whitingjr/HibernateWithInMemoryObjects/src/main/java/uk/ac/ncl/sdia/a8905943/mvcc/dao/PersonDAO.java	2009-04-20 17:23:40 UTC (rev 26160)
@@ -0,0 +1,11 @@
+package uk.ac.ncl.sdia.a8905943.mvcc.dao;
+
+import org.codehaus.multiverse.multiversionedstm.examples.Person;
+
+import auction.dao.GenericDAO;
+
+public interface PersonDAO extends GenericDAO<Person, Long> {
+
+	Person getPersonById( Long _id);
+	void save(Person _person);
+}




More information about the jboss-svn-commits mailing list