Introduce transaction management
authorMathieu Baudier <mbaudier@argeo.org>
Sat, 28 Jun 2008 17:07:20 +0000 (17:07 +0000)
committerMathieu Baudier <mbaudier@argeo.org>
Sat, 28 Jun 2008 17:07:20 +0000 (17:07 +0000)
git-svn-id: https://svn.argeo.org/slc/trunk@1313 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc

org.argeo.slc.hibernate/src/main/java/org/argeo/slc/hibernate/process/SlcExecutionDaoHibernate.java
org.argeo.slc.hibernate/src/main/java/org/argeo/slc/hibernate/test/tree/TreeTestResultCollectionDaoHibernate.java

index 0e21b3a9d9ae768f154a18ffb93108d46206b1ca..a6c387868a9ea21f82147762d26954a6faec8b16 100644 (file)
@@ -20,10 +20,14 @@ public class SlcExecutionDaoHibernate extends HibernateDaoSupport implements
                getHibernateTemplate().save(slcExecution);\r
        }\r
 \r
-       public void update(SlcExecution slcExecution) {\r
+       public void update(final SlcExecution slcExecution) {\r
                getHibernateTemplate().update(slcExecution);\r
        }\r
 \r
+       public void merge(final SlcExecution slcExecution) {\r
+               getHibernateTemplate().merge(slcExecution);\r
+       }\r
+\r
        public SlcExecution getSlcExecution(String uuid) {\r
                return (SlcExecution) getHibernateTemplate().get(SlcExecution.class,\r
                                uuid);\r
index 513a1212347f002884e65d8bf655640077562d1f..667df6231c9dbf573e68b6c5d91f53406449e899 100644 (file)
@@ -11,6 +11,7 @@ import org.argeo.slc.core.test.tree.TreeTestResult;
 import org.argeo.slc.core.test.tree.TreeTestResultCollection;\r
 import org.argeo.slc.dao.test.tree.TreeTestResultCollectionDao;\r
 import org.hibernate.HibernateException;\r
+import org.hibernate.LockMode;\r
 import org.hibernate.Session;\r
 import org.hibernate.action.Executable;\r
 \r
@@ -40,7 +41,7 @@ public class TreeTestResultCollectionDaoHibernate extends HibernateDaoSupport
                getHibernateTemplate().execute(new HibernateCallback() {\r
                        public Object doInHibernate(Session session)\r
                                        throws HibernateException, SQLException {\r
-                               session.refresh(ttrc);\r
+                               session.lock(ttrc, LockMode.NONE);\r
                                TreeTestResult ttr = (TreeTestResult) session.get(\r
                                                TreeTestResult.class, resultUuid);\r
                                ttrc.getResults().add(ttr);\r
@@ -55,7 +56,7 @@ public class TreeTestResultCollectionDaoHibernate extends HibernateDaoSupport
                getHibernateTemplate().execute(new HibernateCallback() {\r
                        public Object doInHibernate(Session session)\r
                                        throws HibernateException, SQLException {\r
-                               session.refresh(ttrc);\r
+                               session.lock(ttrc, LockMode.NONE);\r
                                TreeTestResult ttr = (TreeTestResult) session.get(\r
                                                TreeTestResult.class, resultUuid);\r
                                if (ttrc.getResults().remove(ttr))\r