ProjectScriptDAOImpl.java

  1. package org.itracker.persistence.dao;

  2. import org.hibernate.HibernateException;
  3. import org.hibernate.Query;
  4. import org.itracker.model.ProjectScript;

  5. import java.util.List;

  6. /**
  7.  * ProjectScript DAO implementation.
  8.  *
  9.  * @author johnny
  10.  */
  11. public class ProjectScriptDAOImpl extends BaseHibernateDAOImpl<ProjectScript>
  12.         implements ProjectScriptDAO {

  13.     /**
  14.      *
  15.      */
  16.     public ProjectScriptDAOImpl() {
  17.     }

  18.     public ProjectScript findByPrimaryKey(Integer scriptId) {
  19.         ProjectScript script;

  20.         try {
  21.             script = (ProjectScript) getSession().get(ProjectScript.class, scriptId);
  22.         } catch (HibernateException ex) {
  23.             throw convertHibernateAccessException(ex);
  24.         }
  25.         return script;
  26.     }

  27.     @SuppressWarnings("unchecked")
  28.     public List<ProjectScript> findAll() {
  29.         List<ProjectScript> scripts;

  30.         try {
  31.             Query query = getSession().getNamedQuery("ProjectScriptsAllQuery");
  32.             scripts = query.list();
  33.         } catch (HibernateException ex) {
  34.             throw convertHibernateAccessException(ex);
  35.         }
  36.         return scripts;
  37.     }

  38.     @SuppressWarnings("unchecked")
  39.     public List<ProjectScript> findByProject(Integer projectId) {
  40.         List<ProjectScript> scripts;

  41.         try {
  42.             Query query = getSession().getNamedQuery(
  43.                     "ProjectScriptsByProjectQuery");
  44.             query.setInteger("projectId", projectId);
  45.             scripts = query.list();
  46.         } catch (HibernateException ex) {
  47.             throw convertHibernateAccessException(ex);
  48.         }
  49.         return scripts;
  50.     }

  51.     @SuppressWarnings("unchecked")
  52.     public List<ProjectScript> findByProjectField(Integer projectId,
  53.                                                   Integer fieldId) {
  54.         List<ProjectScript> scripts;

  55.         try {
  56.             Query query = getSession().getNamedQuery(
  57.                     "ProjectScriptsByProjectAndFieldQuery");
  58.             query.setInteger("projectId", projectId);
  59.             query.setInteger("fieldId", fieldId);
  60.             scripts = query.list();
  61.         } catch (HibernateException ex) {
  62.             throw convertHibernateAccessException(ex);
  63.         }
  64.         return scripts;
  65.     }

  66. }