Index: lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/IChatUserDAO.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/IChatUserDAO.java,v diff -u -r1.4 -r1.5 --- lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/IChatUserDAO.java 5 May 2006 00:35:07 -0000 1.4 +++ lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/IChatUserDAO.java 23 May 2006 04:11:48 -0000 1.5 @@ -41,4 +41,12 @@ ChatUser getByUserIdAndSessionId(Long userId, Long toolSessionId); void saveOrUpdate(ChatUser chatUser); + + /** + * + * @param loginName + * @param sessionId + * @return + */ + ChatUser getByLoginNameAndSessionId(String loginName, Long toolSessionId); } \ No newline at end of file Index: lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/hibernate/ChatUserDAO.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/hibernate/ChatUserDAO.java,v diff -u -r1.5 -r1.6 --- lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/hibernate/ChatUserDAO.java 8 May 2006 04:39:52 -0000 1.5 +++ lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/hibernate/ChatUserDAO.java 23 May 2006 04:11:48 -0000 1.6 @@ -38,6 +38,10 @@ public static final String SQL_QUERY_FIND_BY_USER_ID_SESSION_ID = "from " + ChatUser.class.getName() + " as f" + " where user_id=? and f.chatSession.sessionId=?"; + + public static final String SQL_QUERY_FIND_BY_LOGIN_NAME_SESSION_ID = "from " + + ChatUser.class.getName() + " as f" + + " where login_name=? and f.chatSession.sessionId=?"; public ChatUser getByUserIdAndSessionId(Long userId, Long toolSessionId) { List list = this.getHibernateTemplate().find( @@ -50,6 +54,19 @@ return (ChatUser) list.get(0); } + public ChatUser getByLoginNameAndSessionId(String loginName, Long toolSessionId) { + + List list = this.getHibernateTemplate().find( + SQL_QUERY_FIND_BY_LOGIN_NAME_SESSION_ID, + new Object[] { loginName, toolSessionId }); + + if (list == null || list.isEmpty()) + return null; + + return (ChatUser) list.get(0); + + } + public void saveOrUpdate(ChatUser chatUser) { this.getHibernateTemplate().saveOrUpdate(chatUser); this.getHibernateTemplate().flush();