View Javadoc

1   package net.ramapuram.thomas.dao.hibernate;
2   
3   import org.apache.commons.logging.Log;
4   import org.apache.commons.logging.LogFactory;
5   import net.ramapuram.thomas.dao.LookupDao;
6   import net.ramapuram.thomas.model.Role;
7   import org.hibernate.SessionFactory;
8   import org.springframework.beans.factory.annotation.Autowired;
9   import org.springframework.orm.hibernate3.HibernateTemplate;
10  import org.springframework.stereotype.Repository;
11  
12  import java.util.List;
13  
14  /**
15   * Hibernate implementation of LookupDao.
16   *
17   * @author <a href="mailto:matt@raibledesigns.com">Matt Raible</a>
18   */
19  @Repository
20  public class LookupDaoHibernate implements LookupDao {
21      private Log log = LogFactory.getLog(LookupDaoHibernate.class);
22      private HibernateTemplate hibernateTemplate;
23  
24      /**
25       * Initialize LookupDaoHibernate with Hibernate SessionFactory.
26       * @param sessionFactory
27       */
28      @Autowired
29      public LookupDaoHibernate(final SessionFactory sessionFactory) {
30          this.hibernateTemplate = new HibernateTemplate(sessionFactory);
31      }
32  
33      /**
34       * {@inheritDoc}
35       */
36      @SuppressWarnings("unchecked")
37      public List<Role> getRoles() {
38          log.debug("Retrieving all role names...");
39  
40          return hibernateTemplate.find("from Role order by name");
41      }
42  }