]> git.argeo.org Git - gpl/argeo-slc.git/blobdiff - org.argeo.slc.core/src/main/java/org/argeo/slc/hibernate/test/tree/TestResultDaoHibernate.java
Improve Spring templates and defaults
[gpl/argeo-slc.git] / org.argeo.slc.core / src / main / java / org / argeo / slc / hibernate / test / tree / TestResultDaoHibernate.java
index afe76abeb68bcf79fc4a90fcd1dbaaf006022149..3dcf0088738237f884b85977518806e0d9569559 100644 (file)
@@ -4,10 +4,12 @@ import java.util.List;
 \r
 import org.springframework.orm.hibernate3.support.HibernateDaoSupport;\r
 \r
+import org.argeo.slc.core.structure.tree.TreeSPath;\r
 import org.argeo.slc.core.test.NumericTRId;\r
 import org.argeo.slc.core.test.TestResult;\r
 import org.argeo.slc.core.test.TestResultId;\r
-import org.argeo.slc.dao.test.TestResultDao;\r
+import org.argeo.slc.core.test.tree.TreeTestResult;\r
+import org.argeo.slc.dao.test.tree.TreeTestResultDao;\r
 \r
 /**\r
  * The Hibernate implementation for tree-based result of the test result dao.\r
@@ -15,7 +17,7 @@ import org.argeo.slc.dao.test.TestResultDao;
  * @see TreeTestResult\r
  */\r
 public class TestResultDaoHibernate extends HibernateDaoSupport implements\r
-               TestResultDao {\r
+               TreeTestResultDao {\r
 \r
        public void create(TestResult testResult) {\r
                getHibernateTemplate().save(testResult);\r
@@ -25,22 +27,27 @@ public class TestResultDaoHibernate extends HibernateDaoSupport implements
                getHibernateTemplate().saveOrUpdate(testResult);\r
        }\r
 \r
-       public TestResult getTestResult(TestResultId id) {\r
-               NumericTRId ntrid = (NumericTRId) id;\r
+       public TreeTestResult getTestResult(String uuid) {\r
                List<?> list = getHibernateTemplate().find(\r
-                               "from TreeTestResult where numericResultId.value=?",\r
-                               ntrid.getValue());\r
+                               "from TreeTestResult where uuid=?", uuid);\r
                if (list.size() == 0) {\r
                        return null;\r
                } else {\r
-                       return (TestResult) list.get(0);\r
+                       return (TreeTestResult) list.get(0);\r
                }\r
 \r
        }\r
 \r
-       public List<TestResult> listTestResults() {\r
-               return (List<TestResult>) getHibernateTemplate().find(\r
+       public List<TreeTestResult> listTestResults() {\r
+               return (List<TreeTestResult>) getHibernateTemplate().find(\r
                                "from TreeTestResult");\r
        }\r
 \r
+       public List<TreeTestResult> listResults(TreeSPath path) {\r
+               List<TreeTestResult> list = getHibernateTemplate().find(\r
+                               "from TreeTestResult res where ? in indices(res.resultParts)",\r
+                               path.getAsUniqueString());\r
+               return list;\r
+       }\r
+\r
 }\r