package edu.asu.spring.quadriga.dao.publicwebsite.impl; import java.util.List; import org.hibernate.HibernateException; import org.hibernate.Query; import org.springframework.stereotype.Repository; import edu.asu.spring.quadriga.dao.impl.BaseDAO; import edu.asu.spring.quadriga.dao.publicwebsite.IAboutTextDAO; import edu.asu.spring.quadriga.dto.AboutTextDTO; import edu.asu.spring.quadriga.exceptions.QuadrigaStorageException; /** * DAO class for public website's about project text. * * @author Rajat Aggarwal * */ @Repository public class AboutTextDAO extends BaseDAO<AboutTextDTO> implements IAboutTextDAO { /** * * @param projectId * Returns a DTO if already present for the given projectId * @return */ public AboutTextDTO getDTOByProjectId(String projectId) throws QuadrigaStorageException { AboutTextDTO aboutTextDTO; try { Query query = sessionFactory.getCurrentSession().getNamedQuery("AboutTextDTO.findByProjectId"); query.setParameter("projectId", projectId); List<AboutTextDTO> aboutTextDTOList = query.list(); if (aboutTextDTOList.size() != 0) { aboutTextDTO = aboutTextDTOList.get(0); } else { return null; } } catch (HibernateException e) { throw (new QuadrigaStorageException("System error", e)); } return aboutTextDTO; } @Override public AboutTextDTO getDTO(String id) { return getDTO(AboutTextDTO.class, id); } }