1 package org
.argeo
.slc
.hibernate
.test
.tree
;
3 import java
.sql
.SQLException
;
4 import java
.util
.SortedSet
;
5 import java
.util
.TreeSet
;
7 import org
.springframework
.orm
.hibernate3
.HibernateCallback
;
8 import org
.springframework
.orm
.hibernate3
.support
.HibernateDaoSupport
;
10 import org
.argeo
.slc
.core
.test
.tree
.TreeTestResult
;
11 import org
.argeo
.slc
.core
.test
.tree
.TreeTestResultCollection
;
12 import org
.argeo
.slc
.dao
.test
.tree
.TreeTestResultCollectionDao
;
13 import org
.hibernate
.HibernateException
;
14 import org
.hibernate
.Session
;
15 import org
.hibernate
.action
.Executable
;
17 public class TreeTestResultCollectionDaoHibernate
extends HibernateDaoSupport
18 implements TreeTestResultCollectionDao
{
20 public void create(TreeTestResultCollection ttrCollection
) {
21 getHibernateTemplate().save(ttrCollection
);
24 public TreeTestResultCollection
getTestResultCollection(String id
) {
25 return (TreeTestResultCollection
) getHibernateTemplate().get(
26 TreeTestResultCollection
.class, id
);
29 public void update(TreeTestResultCollection ttrCollection
) {
30 getHibernateTemplate().update(ttrCollection
);
33 public SortedSet
<TreeTestResultCollection
> listCollections() {
34 return new TreeSet
<TreeTestResultCollection
>(getHibernateTemplate()
35 .find("from TreeTestResultCollection"));
38 public void addResultToCollection(final TreeTestResultCollection ttrc
,
39 final String resultUuid
) {
40 getHibernateTemplate().execute(new HibernateCallback() {
41 public Object
doInHibernate(Session session
)
42 throws HibernateException
, SQLException
{
43 session
.refresh(ttrc
);
44 TreeTestResult ttr
= (TreeTestResult
) session
.get(
45 TreeTestResult
.class, resultUuid
);
46 ttrc
.getResults().add(ttr
);
53 public void removeResultFromCollection(final TreeTestResultCollection ttrc
,
54 final String resultUuid
) {
55 getHibernateTemplate().execute(new HibernateCallback() {
56 public Object
doInHibernate(Session session
)
57 throws HibernateException
, SQLException
{
58 session
.refresh(ttrc
);
59 TreeTestResult ttr
= (TreeTestResult
) session
.get(
60 TreeTestResult
.class, resultUuid
);
61 if (ttrc
.getResults().remove(ttr
))