mirror of
https://github.com/essentials/Essentials.git
synced 2025-08-15 02:59:06 +02:00
Thread safety for XMPP
This commit is contained in:
@@ -2,6 +2,7 @@ package com.earth2me.essentials.xmpp;
|
||||
|
||||
import com.earth2me.essentials.IEssentials;
|
||||
import com.earth2me.essentials.User;
|
||||
import java.util.List;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.EventPriority;
|
||||
import org.bukkit.event.Listener;
|
||||
@@ -45,11 +46,15 @@ class EssentialsXMPPPlayerListener implements Listener
|
||||
{
|
||||
try
|
||||
{
|
||||
for (String address : EssentialsXMPP.getInstance().getSpyUsers())
|
||||
List<String> users = EssentialsXMPP.getInstance().getSpyUsers();
|
||||
synchronized (users)
|
||||
{
|
||||
for (String address : users)
|
||||
{
|
||||
EssentialsXMPP.getInstance().sendMessage(address, message);
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// Ignore exceptions
|
||||
|
@@ -9,7 +9,7 @@ import java.util.*;
|
||||
public class UserManager implements IConf
|
||||
{
|
||||
private final transient EssentialsConf users;
|
||||
private final transient List<String> spyusers = new ArrayList<String>();
|
||||
private final transient List<String> spyusers = Collections.synchronizedList(new ArrayList<String>());
|
||||
private final static String ADDRESS = "address";
|
||||
private final static String SPY = "spy";
|
||||
|
||||
|
Reference in New Issue
Block a user