Commit d3c4c137 authored by Gaston Dombiak's avatar Gaston Dombiak Committed by gato

Fixed storing/loading group members. JM-1080

git-svn-id: http://svn.igniterealtime.org/svn/repos/openfire/trunk@9347 b35dd754-fafc-0310-a699-88a17e54d16e
parent a2741cce
......@@ -11,17 +11,16 @@
package org.jivesoftware.openfire.group;
import org.jivesoftware.database.DbConnectionManager;
import org.jivesoftware.openfire.XMPPServer;
import org.jivesoftware.util.JiveGlobals;
import org.jivesoftware.util.Log;
import org.xmpp.packet.JID;
import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.*;
import java.sql.*;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
/**
* The JDBC group provider allows you to use an external database to define the make up of groups.
......@@ -73,6 +72,8 @@ public class JDBCGroupProvider implements GroupProvider {
private String loadMembersSQL;
private String loadAdminsSQL;
private XMPPServer server = XMPPServer.getInstance();
/**
* Constructor of the JDBCGroupProvider class.
*/
......@@ -168,7 +169,13 @@ public class JDBCGroupProvider implements GroupProvider {
while (rs.next()) {
String user = rs.getString(1);
if (user != null) {
JID userJID = new JID(user);
JID userJID;
if (user.contains("@")) {
userJID = new JID(user);
}
else {
userJID = server.createJID(user, null);
}
members.add(userJID);
}
}
......@@ -282,7 +289,7 @@ public class JDBCGroupProvider implements GroupProvider {
try {
con = DriverManager.getConnection(connectionString);
pstmt = con.prepareStatement(userGroupsSQL);
pstmt.setString(1, user.toString());
pstmt.setString(1, server.isLocal(user) ? user.getNode() : user.toString());
rs = pstmt.executeQuery();
while (rs.next()) {
groupNames.add(rs.getString(1));
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment