1 package com.panogenesis.dao.hibernate;
2
3 import java.util.List;
4
5 import com.panogenesis.model.Project;
6 import com.panogenesis.dao.ProjectDAO;
7
8 import org.springframework.orm.ObjectRetrievalFailureException;
9
10 public class ProjectDAOHibernate extends BaseDAOHibernate implements ProjectDAO {
11
12 /***
13 * @see com.panogenesis.dao.ProjectDAO#getProjects(com.panogenesis.model.Project)
14 */
15 public List getProjects(Project project) {
16
17 return getHibernateTemplate().find("from Project");
18 }
19
20 /***
21 * @see com.panogenesis.dao.ProjectDAO#getProject(final Integer id)
22 */
23 public Project getProject(final Integer id) {
24 Project project = (Project) getHibernateTemplate().get(Project.class, id);
25 if (project == null) {
26 log.warn("uh oh, project with id '" + id + "' not found...");
27 throw new ObjectRetrievalFailureException(Project.class, id);
28 }
29
30 return project;
31 }
32
33 /***
34 * @see com.panogenesis.dao.ProjectDAO#saveProject(Project project)
35 */
36 public void saveProject(final Project project) {
37 getHibernateTemplate().saveOrUpdate(project);
38 }
39
40 /***
41 * @see com.panogenesis.dao.ProjectDAO#removeProject(final Integer id)
42 */
43 public void removeProject(final Integer id) {
44 getHibernateTemplate().delete(getProject(id));
45 }
46 }