Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McContentDAO.java =================================================================== diff -u -r1a02559e19419af9991eaeb9363f809355b39bc7 -r961f7b9e1f0d4e83ac360e6625dcc6248b9d936b --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McContentDAO.java (.../McContentDAO.java) (revision 1a02559e19419af9991eaeb9363f809355b39bc7) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McContentDAO.java (.../McContentDAO.java) (revision 961f7b9e1f0d4e83ac360e6625dcc6248b9d936b) @@ -25,32 +25,29 @@ import java.util.List; import org.hibernate.FlushMode; -import org.hibernate.HibernateException; -import org.hibernate.Session; +import org.lamsfoundation.lams.dao.hibernate.LAMSBaseDAO; import org.lamsfoundation.lams.tool.mc.dao.IMcContentDAO; import org.lamsfoundation.lams.tool.mc.pojos.McContent; import org.lamsfoundation.lams.tool.mc.pojos.McSession; -import org.springframework.orm.hibernate4.HibernateCallback; -import org.springframework.orm.hibernate4.HibernateTemplate; -import org.springframework.orm.hibernate4.support.HibernateDaoSupport; +import org.springframework.stereotype.Repository; /** * @author Ozgur Demirtas *
* Hibernate implementation for database access to McContent for the mc tool. *
*/ -public class McContentDAO extends HibernateDaoSupport implements IMcContentDAO { +@Repository +public class McContentDAO extends LAMSBaseDAO implements IMcContentDAO { private static final String FIND_MC_CONTENT = "from " + McContent.class.getName() + " as mc where content_id=?"; public McContent getMcContentByUID(Long uid) { - return (McContent) this.getHibernateTemplate().get(McContent.class, uid); + return (McContent) this.getSession().get(McContent.class, uid); } public McContent findMcContentById(Long mcContentId) { String query = "from McContent as mc where mc.mcContentId = ?"; - HibernateTemplate templ = this.getHibernateTemplate(); List list = getSessionFactory().getCurrentSession().createQuery(FIND_MC_CONTENT).setLong(0, mcContentId.longValue()).list(); @@ -63,56 +60,55 @@ public void saveMcContent(McContent mcContent) { getSessionFactory().getCurrentSession().setFlushMode(FlushMode.AUTO); - this.getHibernateTemplate().saveOrUpdate(mcContent); + this.getSession().saveOrUpdate(mcContent); } public void updateMcContent(McContent mcContent) { getSessionFactory().getCurrentSession().setFlushMode(FlushMode.AUTO); - this.getHibernateTemplate().update(mcContent); + this.getSession().update(mcContent); } public void saveOrUpdateMc(McContent mc) { getSessionFactory().getCurrentSession().setFlushMode(FlushMode.AUTO); - this.getHibernateTemplate().saveOrUpdate(mc); + this.getSession().saveOrUpdate(mc); } public void removeMcById(Long mcContentId) { - HibernateTemplate templ = this.getHibernateTemplate(); if (mcContentId != null) { List list = getSessionFactory().getCurrentSession().createQuery(FIND_MC_CONTENT).setLong(0, mcContentId.longValue()).list(); if (list != null && list.size() > 0) { McContent mc = (McContent) list.get(0); getSessionFactory().getCurrentSession().setFlushMode(FlushMode.AUTO); - templ.delete(mc); - templ.flush(); + getSession().delete(mc); + getSession().flush(); } } } public void removeMcSessions(McContent mcContent) { - this.getHibernateTemplate().deleteAll(mcContent.getMcSessions()); + deleteAll(mcContent.getMcSessions()); } public void addMcSession(Long mcContentId, McSession mcSession) { McContent content = findMcContentById(mcContentId); mcSession.setMcContent(content); content.getMcSessions().add(mcSession); - this.getHibernateTemplate().saveOrUpdate(mcSession); - this.getHibernateTemplate().saveOrUpdate(content); + this.getSession().saveOrUpdate(mcSession); + this.getSession().saveOrUpdate(content); } public List findAll(Class objClass) { String query = "from obj in class " + objClass.getName(); - return this.getHibernateTemplate().find(query); + return doFind(query); } public void flush() { - this.getHibernateTemplate().flush(); + this.getSession().flush(); } @Override public void delete(Object object) { - getHibernateTemplate().delete(object); + getSession().delete(object); } } Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McOptionsContentDAO.java =================================================================== diff -u -r1a02559e19419af9991eaeb9363f809355b39bc7 -r961f7b9e1f0d4e83ac360e6625dcc6248b9d936b --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McOptionsContentDAO.java (.../McOptionsContentDAO.java) (revision 1a02559e19419af9991eaeb9363f809355b39bc7) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McOptionsContentDAO.java (.../McOptionsContentDAO.java) (revision 961f7b9e1f0d4e83ac360e6625dcc6248b9d936b) @@ -22,24 +22,23 @@ /* $$Id$$ */ package org.lamsfoundation.lams.tool.mc.dao.hibernate; -import java.util.Iterator; import java.util.LinkedList; import java.util.List; import org.apache.log4j.Logger; -import org.hibernate.FlushMode; +import org.lamsfoundation.lams.dao.hibernate.LAMSBaseDAO; import org.lamsfoundation.lams.tool.mc.McOptionDTO; import org.lamsfoundation.lams.tool.mc.dao.IMcOptionsContentDAO; import org.lamsfoundation.lams.tool.mc.pojos.McOptsContent; -import org.springframework.orm.hibernate4.HibernateTemplate; -import org.springframework.orm.hibernate4.support.HibernateDaoSupport; +import org.springframework.stereotype.Repository; /** * Hibernate implementation for database access to McOptionsContent for the mc tool. * * @author Ozgur Demirtas */ -public class McOptionsContentDAO extends HibernateDaoSupport implements IMcOptionsContentDAO { +@Repository +public class McOptionsContentDAO extends LAMSBaseDAO implements IMcOptionsContentDAO { private static Logger logger = Logger.getLogger(McOptionsContentDAO.class.getName()); private static final String FIND_OPTIONS_BY_QUESTION_UID = "from mcOptsContent in class McOptsContent where mcOptsContent.mcQueContentId=:mcQueContentUid order by mcOptsContent.displayOrder"; @@ -71,10 +70,10 @@ } public void updateMcOptionsContent(McOptsContent mcOptsContent) { - this.getHibernateTemplate().update(mcOptsContent); + this.getSession().update(mcOptsContent); } public void flush() { - this.getHibernateTemplate().flush(); + this.getSession().flush(); } } \ No newline at end of file Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McQueContentDAO.java =================================================================== diff -u -r1a02559e19419af9991eaeb9363f809355b39bc7 -r961f7b9e1f0d4e83ac360e6625dcc6248b9d936b --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McQueContentDAO.java (.../McQueContentDAO.java) (revision 1a02559e19419af9991eaeb9363f809355b39bc7) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McQueContentDAO.java (.../McQueContentDAO.java) (revision 961f7b9e1f0d4e83ac360e6625dcc6248b9d936b) @@ -22,21 +22,21 @@ /* $$Id$$ */ package org.lamsfoundation.lams.tool.mc.dao.hibernate; -import java.util.Iterator; import java.util.List; import org.hibernate.FlushMode; +import org.lamsfoundation.lams.dao.hibernate.LAMSBaseDAO; import org.lamsfoundation.lams.tool.mc.dao.IMcQueContentDAO; import org.lamsfoundation.lams.tool.mc.pojos.McQueContent; -import org.springframework.orm.hibernate4.HibernateTemplate; -import org.springframework.orm.hibernate4.support.HibernateDaoSupport; +import org.springframework.stereotype.Repository; /** * Hibernate implementation for database access to McQueContent for the mc tool. * * @author Ozgur Demirtas */ -public class McQueContentDAO extends HibernateDaoSupport implements IMcQueContentDAO { +@Repository +public class McQueContentDAO extends LAMSBaseDAO implements IMcQueContentDAO { private static final String LOAD_QUESTION_CONTENT_BY_CONTENT_ID = "from mcQueContent in class McQueContent where mcQueContent.mcContentId=:mcContentId order by mcQueContent.displayOrder"; @@ -50,7 +50,6 @@ @Override public McQueContent findMcQuestionContentByUid(Long uid) { - HibernateTemplate templ = this.getHibernateTemplate(); if (uid != null) { List list = getSessionFactory().getCurrentSession().createQuery(FIND_QUESTION_CONTENT_BY_UID).setLong("uid", uid.longValue()).list(); @@ -64,7 +63,6 @@ @Override public List getQuestionsByContentUid(final long contentUid) { - HibernateTemplate templ = this.getHibernateTemplate(); List list = getSessionFactory().getCurrentSession().createQuery(LOAD_QUESTION_CONTENT_BY_CONTENT_ID).setLong("mcContentId", contentUid) .list(); @@ -73,7 +71,6 @@ @Override public List refreshQuestionContent(final Long mcContentId) { - HibernateTemplate templ = this.getHibernateTemplate(); List list = getSessionFactory().getCurrentSession().createQuery(REFRESH_QUESTION_CONTENT).setLong("mcContentId", mcContentId.longValue()) .list(); @@ -82,7 +79,6 @@ @Override public McQueContent getQuestionContentByDisplayOrder(final Long displayOrder, final Long mcContentUid) { - HibernateTemplate templ = this.getHibernateTemplate(); List list = getSessionFactory().getCurrentSession().createQuery(LOAD_QUESTION_CONTENT_BY_DISPLAY_ORDER) .setLong("displayOrder", displayOrder.longValue()).setLong("mcContentUid", mcContentUid.longValue()) .list(); @@ -96,18 +92,17 @@ @Override public void saveOrUpdateMcQueContent(McQueContent mcQueContent) { - this.getHibernateTemplate().saveOrUpdate(mcQueContent); + this.getSession().saveOrUpdate(mcQueContent); } @Override public void updateMcQueContent(McQueContent mcQueContent) { getSessionFactory().getCurrentSession().setFlushMode(FlushMode.AUTO); - this.getHibernateTemplate().saveOrUpdate(mcQueContent); + this.getSession().saveOrUpdate(mcQueContent); } @Override public List getAllQuestionEntriesSorted(final long mcContentId) { - HibernateTemplate templ = this.getHibernateTemplate(); List list = getSessionFactory().getCurrentSession().createQuery(SORT_QUESTION_CONTENT_BY_DISPLAY_ORDER) .setLong("mcContentId", mcContentId).list(); @@ -118,13 +113,13 @@ public void removeMcQueContent(McQueContent mcQueContent) { if ((mcQueContent != null) && (mcQueContent.getUid() != null)) { getSessionFactory().getCurrentSession().setFlushMode(FlushMode.AUTO); - this.getHibernateTemplate().delete(mcQueContent); + this.getSession().delete(mcQueContent); } } @Override public void releaseQuestionFromCache(McQueContent question) { - getHibernateTemplate().evict(question); + getSession().evict(question); } } \ No newline at end of file Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McSessionDAO.java =================================================================== diff -u -r1a02559e19419af9991eaeb9363f809355b39bc7 -r961f7b9e1f0d4e83ac360e6625dcc6248b9d936b --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McSessionDAO.java (.../McSessionDAO.java) (revision 1a02559e19419af9991eaeb9363f809355b39bc7) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McSessionDAO.java (.../McSessionDAO.java) (revision 961f7b9e1f0d4e83ac360e6625dcc6248b9d936b) @@ -25,22 +25,20 @@ import java.util.List; import org.hibernate.FlushMode; -import org.hibernate.HibernateException; -import org.hibernate.Session; +import org.lamsfoundation.lams.dao.hibernate.LAMSBaseDAO; import org.lamsfoundation.lams.tool.mc.dao.IMcSessionDAO; import org.lamsfoundation.lams.tool.mc.pojos.McSession; -import org.springframework.orm.hibernate4.HibernateCallback; -import org.springframework.orm.hibernate4.support.HibernateDaoSupport; +import org.springframework.stereotype.Repository; /** * @author ozgurd ** Hibernate implementation for database access to Mc sessions for the mc tool. *
*/ +@Repository +public class McSessionDAO extends LAMSBaseDAO implements IMcSessionDAO { -public class McSessionDAO extends HibernateDaoSupport implements IMcSessionDAO { - private static final String LOAD_MCSESSION_BY_USER = "select ms from McSession ms left join fetch " + "ms.mcQueUsers user where user.queUsrId=:userId"; @@ -58,26 +56,22 @@ } public void saveMcSession(McSession mcSession) { - this.getHibernateTemplate().save(mcSession); + this.getSession().save(mcSession); } public void updateMcSession(McSession mcSession) { getSessionFactory().getCurrentSession().setFlushMode(FlushMode.AUTO); - this.getHibernateTemplate().update(mcSession); + this.getSession().update(mcSession); } public void removeMcSession(McSession mcSession) { getSessionFactory().getCurrentSession().setFlushMode(FlushMode.AUTO); - this.getHibernateTemplate().delete(mcSession); + this.getSession().delete(mcSession); } - public McSession getMcSessionByUser(final Long userId) { - return (McSession) getHibernateTemplate().execute(new HibernateCallback() { + public McSession getMcSessionByUser(final Long userId) { + return (McSession) getSession().createQuery(LOAD_MCSESSION_BY_USER).setLong("userId", userId.longValue()) + .uniqueResult(); + } - public Object doInHibernate(Session session) throws HibernateException { - return session.createQuery(LOAD_MCSESSION_BY_USER).setLong("userId", userId.longValue()).uniqueResult(); - } - }); - } - } Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McUserDAO.java =================================================================== diff -u -rccfd66f1abbfc63cd0ed0a044f89914418d67cd1 -r961f7b9e1f0d4e83ac360e6625dcc6248b9d936b --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McUserDAO.java (.../McUserDAO.java) (revision ccfd66f1abbfc63cd0ed0a044f89914418d67cd1) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McUserDAO.java (.../McUserDAO.java) (revision 961f7b9e1f0d4e83ac360e6625dcc6248b9d936b) @@ -25,25 +25,27 @@ import java.util.List; import org.hibernate.FlushMode; +import org.lamsfoundation.lams.dao.hibernate.LAMSBaseDAO; import org.lamsfoundation.lams.tool.mc.dao.IMcUserDAO; import org.lamsfoundation.lams.tool.mc.pojos.McQueUsr; -import org.springframework.orm.hibernate4.support.HibernateDaoSupport; +import org.springframework.stereotype.Repository; /** * @author Ozgur Demirtas ** Hibernate implementation for database access to Mc users (learners) for the mc tool. *
*/ -public class McUserDAO extends HibernateDaoSupport implements IMcUserDAO { +@Repository +public class McUserDAO extends LAMSBaseDAO implements IMcUserDAO { private static final String CALC_MARK_STATS_FOR_SESSION = "select max(mu.lastAttemptTotalMark), min(mu.lastAttemptTotalMark), avg(mu.lastAttemptTotalMark)" + " from McQueUsr mu where mu.mcSessionId = :mcSessionUid"; private static final String GET_USER_BY_USER_ID_SESSION = "from mcQueUsr in class McQueUsr where mcQueUsr.queUsrId=:queUsrId and mcQueUsr.mcSessionId=:mcSessionUid"; public McQueUsr getMcUserByUID(Long uid) { - return (McQueUsr) this.getHibernateTemplate().get(McQueUsr.class, uid); + return (McQueUsr) this.getSession().get(McQueUsr.class, uid); } public McQueUsr getMcUserBySession(final Long queUsrId, final Long mcSessionUid) { @@ -59,16 +61,16 @@ } public void saveMcUser(McQueUsr mcUser) { - this.getHibernateTemplate().save(mcUser); + this.getSession().save(mcUser); } public void updateMcUser(McQueUsr mcUser) { - this.getHibernateTemplate().update(mcUser); + this.getSession().update(mcUser); } public void removeMcUser(McQueUsr mcUser) { getSessionFactory().getCurrentSession().setFlushMode(FlushMode.AUTO); - this.getHibernateTemplate().delete(mcUser); + this.getSession().delete(mcUser); } /** Get the max, min and average mark (in that order) for a session */ Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McUsrAttemptDAO.java =================================================================== diff -u -rccfd66f1abbfc63cd0ed0a044f89914418d67cd1 -r961f7b9e1f0d4e83ac360e6625dcc6248b9d936b --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McUsrAttemptDAO.java (.../McUsrAttemptDAO.java) (revision ccfd66f1abbfc63cd0ed0a044f89914418d67cd1) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McUsrAttemptDAO.java (.../McUsrAttemptDAO.java) (revision 961f7b9e1f0d4e83ac360e6625dcc6248b9d936b) @@ -25,9 +25,10 @@ import java.util.List; import org.hibernate.FlushMode; +import org.lamsfoundation.lams.dao.hibernate.LAMSBaseDAO; import org.lamsfoundation.lams.tool.mc.dao.IMcUsrAttemptDAO; import org.lamsfoundation.lams.tool.mc.pojos.McUsrAttempt; -import org.springframework.orm.hibernate4.support.HibernateDaoSupport; +import org.springframework.stereotype.Repository; /** * @author Ozgur Demirtas @@ -42,7 +43,8 @@ * session, but if McQueUser.queUsrId is supplied, then this is just the user, not the session and the session * must also be checked. */ -public class McUsrAttemptDAO extends HibernateDaoSupport implements IMcUsrAttemptDAO { +@Repository +public class McUsrAttemptDAO extends LAMSBaseDAO implements IMcUsrAttemptDAO { private static final String LOAD_PARTICULAR_QUESTION_ATTEMPT = "from attempt in class McUsrAttempt where attempt.mcQueUsr.uid=:queUsrUid" + " and attempt.mcQueContentId=:mcQueContentId" @@ -61,12 +63,12 @@ @Override public McUsrAttempt getUserAttemptByUid(Long uid) { - return (McUsrAttempt) this.getHibernateTemplate().get(McUsrAttempt.class, uid); + return (McUsrAttempt) this.getSession().get(McUsrAttempt.class, uid); } @Override public void saveMcUsrAttempt(McUsrAttempt mcUsrAttempt) { - this.getHibernateTemplate().saveOrUpdate(mcUsrAttempt); + this.getSession().saveOrUpdate(mcUsrAttempt); } @Override @@ -102,7 +104,7 @@ @Override public void updateMcUsrAttempt(McUsrAttempt mcUsrAttempt) { getSessionFactory().getCurrentSession().setFlushMode(FlushMode.AUTO); - this.getHibernateTemplate().update(mcUsrAttempt); + this.getSession().update(mcUsrAttempt); } @Override @@ -113,18 +115,18 @@ .setLong("queUsrUid", queUserUid.longValue()).list(); for (McUsrAttempt userAttempt : userAttempts) { - this.getHibernateTemplate().delete(userAttempt); + this.getSession().delete(userAttempt); } } @Override public void removeAttempt(McUsrAttempt userAttempt) { - this.getHibernateTemplate().delete(userAttempt); + this.getSession().delete(userAttempt); } @Override public int getAttemptsCountPerOption(Long optionUid) { - List list = getHibernateTemplate().find(FIND_ATTEMPTS_COUNT_BY_OPTION, new Object[] { optionUid }); + List list = doFind(FIND_ATTEMPTS_COUNT_BY_OPTION, new Object[] { optionUid }); if (list == null || list.size() == 0) return 0; return ((Number) list.get(0)).intValue();