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.5 -r1.6 --- lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/IChatUserDAO.java 23 May 2006 04:11:48 -0000 1.5 +++ lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/IChatUserDAO.java 8 Jun 2006 01:51:25 -0000 1.6 @@ -45,8 +45,16 @@ /** * * @param loginName - * @param sessionId + * @param sessionID * @return */ ChatUser getByLoginNameAndSessionId(String loginName, Long toolSessionId); + + /** + * + * @param jabberID + * @param jabberRoom + * @return + */ + ChatUser getByJabberIDAndJabberRoom(String jabberID, String jabberRoom); } \ 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.6 -r1.7 --- lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/hibernate/ChatUserDAO.java 23 May 2006 04:11:48 -0000 1.6 +++ lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/hibernate/ChatUserDAO.java 8 Jun 2006 01:51:25 -0000 1.7 @@ -38,11 +38,15 @@ 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=?"; + + ChatUser.class.getName() + + " as f where login_name=? and f.chatSession.sessionId=?"; + public static final String SQL_QUERY_FIND_BY_JABBER_ID_JABBER_ROOM = "from " + + ChatUser.class.getName() + + " as f where jabber_id=? and f.chatSession.jabberRoom=?"; + public ChatUser getByUserIdAndSessionId(Long userId, Long toolSessionId) { List list = this.getHibernateTemplate().find( SQL_QUERY_FIND_BY_USER_ID_SESSION_ID, @@ -54,19 +58,33 @@ return (ChatUser) list.get(0); } - public ChatUser getByLoginNameAndSessionId(String loginName, Long toolSessionId) { + public ChatUser getByLoginNameAndSessionId(String loginName, + Long toolSessionId) { - List list = this.getHibernateTemplate().find( - SQL_QUERY_FIND_BY_LOGIN_NAME_SESSION_ID, - new Object[] { loginName, 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; + if (list == null || list.isEmpty()) + return null; - return (ChatUser) list.get(0); - + return (ChatUser) list.get(0); + } + public ChatUser getByJabberIDAndJabberRoom(String jabberID, + String jabberRoom) { + + List list = this.getHibernateTemplate().find( + SQL_QUERY_FIND_BY_JABBER_ID_JABBER_ROOM, + new Object[] { jabberID, jabberRoom }); + + if (list == null || list.isEmpty()) + return null; + + return (ChatUser) list.get(0); + } + public void saveOrUpdate(ChatUser chatUser) { this.getHibernateTemplate().saveOrUpdate(chatUser); this.getHibernateTemplate().flush();