1 package com.panogenesis.dao.hibernate;
2
3 import java.util.List;
4 import java.util.Set;
5
6 import com.panogenesis.model.Issue;
7 import com.panogenesis.model.Project;
8 import com.panogenesis.model.User;
9 import com.panogenesis.dao.IssueDAO;
10
11 import org.springframework.orm.ObjectRetrievalFailureException;
12
13 public class IssueDAOHibernate extends BaseDAOHibernate implements IssueDAO {
14
15 /***
16 * @see com.panogenesis.dao.IssueDAO#getIssues(com.panogenesis.model.Issue)
17 */
18 public List getIssues(Issue issue) {
19
20 return getHibernateTemplate().find("from Issue");
21 }
22
23 /***
24 * @see com.panogenesis.dao.IssueDAO#getIssue(final Integer id)
25 */
26 public Issue getIssue(final Integer id) {
27 Issue issue = (Issue) getHibernateTemplate().get(Issue.class, id);
28 if (issue == null) {
29 log.warn("uh oh, issue with id '" + id + "' not found...");
30 throw new ObjectRetrievalFailureException(Issue.class, id);
31 }
32
33 return issue;
34 }
35
36 /***
37 * @see com.panogenesis.dao.IssueDAO#saveIssue(Issue issue)
38 */
39 public void saveIssue(final Issue issue) {
40 getHibernateTemplate().saveOrUpdate(issue);
41 }
42
43 /***
44 * @see com.panogenesis.dao.IssueDAO#removeIssue(final Integer id)
45 */
46 public void removeIssue(final Integer id) {
47 getHibernateTemplate().delete(getIssue(id));
48 }
49
50
51
52
53
54 public List getCreatedIssuesByUsername(String username) {
55
56
57 return getHibernateTemplate().find("from Issue where creatorId = " + username);
58 }
59
60
61
62
63
64 public List getOwnedIssuesByUsername(String username) {
65
66
67 return getHibernateTemplate().find("from Issue where ownerId = " + username);
68 }
69 }