VersionDAOImpl.java
- package org.itracker.persistence.dao;
- import org.hibernate.HibernateException;
- import org.hibernate.criterion.Expression;
- import org.itracker.model.Project;
- import org.itracker.model.Version;
- import java.util.List;
- /**
- * Hibernate implementation of <code>VersionDAO</code> interface
- */
- public class VersionDAOImpl extends BaseHibernateDAOImpl<Version>
- implements VersionDAO {
- /**
- * find <code>Version</code> by id
- *
- * @param versionId id of the <code>Version</code> to find
- * @return <code>Version</code> found
- */
- public Version findByPrimaryKey(Integer versionId) {
- try {
- return (Version) getSession().get(Version.class, versionId);
- } catch (HibernateException e) {
- throw convertHibernateAccessException(e);
- }
- }
- /**
- * Finds <code>Version</code>s by a project id and returns them as
- * a <code>Collection</code>.
- *
- * @param projectId id of the parent <code>Project</code>
- * @return a <code>Collection</code> containing the <code>Version</code>s found
- */
- @SuppressWarnings("unchecked")
- public List<Version> findByProjectId(Integer projectId) {
- try {
- Project project = (Project) getSession().load(Project.class, projectId);
- return getSession().createCriteria(Version.class)
- .add(Expression.eq("project", project))
- .list();
- } catch (HibernateException e) {
- throw convertHibernateAccessException(e);
- }
- }
- }