Replaced several CopyOnWriteArrayList occurrences with ConcurrentHashMap.newKeySet().
This commit is contained in:
		| @@ -19,11 +19,12 @@ package org.l2jmobius.commons.util; | ||||
| import java.io.File; | ||||
| import java.io.FileFilter; | ||||
| import java.util.ArrayList; | ||||
| import java.util.Collection; | ||||
| import java.util.HashMap; | ||||
| import java.util.LinkedHashMap; | ||||
| import java.util.List; | ||||
| import java.util.Map; | ||||
| import java.util.concurrent.CopyOnWriteArrayList; | ||||
| import java.util.concurrent.ConcurrentHashMap; | ||||
| import java.util.concurrent.ScheduledFuture; | ||||
| import java.util.function.Consumer; | ||||
| import java.util.function.Predicate; | ||||
| @@ -167,7 +168,7 @@ public interface IXmlReader | ||||
| 		 | ||||
| 		if (Config.THREADS_FOR_LOADING) | ||||
| 		{ | ||||
| 			final List<ScheduledFuture<?>> jobs = new CopyOnWriteArrayList<>(); | ||||
| 			final Collection<ScheduledFuture<?>> jobs = ConcurrentHashMap.newKeySet(); | ||||
| 			final File[] listOfFiles = dir.listFiles(); | ||||
| 			for (File file : listOfFiles) | ||||
| 			{ | ||||
|   | ||||
| @@ -19,10 +19,9 @@ package org.l2jmobius.gameserver.communitybbs.BB; | ||||
| import java.sql.Connection; | ||||
| import java.sql.PreparedStatement; | ||||
| import java.sql.ResultSet; | ||||
| import java.util.List; | ||||
| import java.util.Collection; | ||||
| import java.util.Map; | ||||
| import java.util.concurrent.ConcurrentHashMap; | ||||
| import java.util.concurrent.CopyOnWriteArrayList; | ||||
| import java.util.logging.Level; | ||||
| import java.util.logging.Logger; | ||||
|  | ||||
| @@ -46,7 +45,7 @@ public class Forum | ||||
| 	public static final int CLANMEMBERONLY = 2; | ||||
| 	public static final int OWNERONLY = 3; | ||||
| 	 | ||||
| 	private final List<Forum> _children; | ||||
| 	private final Collection<Forum> _children; | ||||
| 	private final Map<Integer, Topic> _topic = new ConcurrentHashMap<>(); | ||||
| 	private final int _forumId; | ||||
| 	private String _forumName; | ||||
| @@ -66,7 +65,7 @@ public class Forum | ||||
| 	{ | ||||
| 		_forumId = Forumid; | ||||
| 		_fParent = FParent; | ||||
| 		_children = new CopyOnWriteArrayList<>(); | ||||
| 		_children = ConcurrentHashMap.newKeySet(); | ||||
| 	} | ||||
| 	 | ||||
| 	/** | ||||
| @@ -85,7 +84,7 @@ public class Forum | ||||
| 		_forumPerm = perm; | ||||
| 		_fParent = parent; | ||||
| 		_ownerID = OwnerID; | ||||
| 		_children = new CopyOnWriteArrayList<>(); | ||||
| 		_children = ConcurrentHashMap.newKeySet(); | ||||
| 		parent._children.add(this); | ||||
| 		ForumsBBSManager.getInstance().addForum(this); | ||||
| 		_loaded = true; | ||||
|   | ||||
| @@ -19,8 +19,8 @@ package org.l2jmobius.gameserver.communitybbs.BB; | ||||
| import java.sql.Connection; | ||||
| import java.sql.PreparedStatement; | ||||
| import java.sql.ResultSet; | ||||
| import java.util.List; | ||||
| import java.util.concurrent.CopyOnWriteArrayList; | ||||
| import java.util.Collection; | ||||
| import java.util.concurrent.ConcurrentHashMap; | ||||
| import java.util.logging.Level; | ||||
| import java.util.logging.Logger; | ||||
|  | ||||
| @@ -45,7 +45,7 @@ public class Post | ||||
| 		public String postTxt; | ||||
| 	} | ||||
| 	 | ||||
| 	private final List<CPost> _post; | ||||
| 	private final Collection<CPost> _post; | ||||
| 	 | ||||
| 	/** | ||||
| 	 * @param _PostOwner | ||||
| @@ -57,7 +57,7 @@ public class Post | ||||
| 	 */ | ||||
| 	public Post(String _PostOwner, int _PostOwnerID, long date, int tid, int _PostForumID, String txt) | ||||
| 	{ | ||||
| 		_post = new CopyOnWriteArrayList<>(); | ||||
| 		_post = ConcurrentHashMap.newKeySet(); | ||||
| 		final CPost cp = new CPost(); | ||||
| 		cp.postId = 0; | ||||
| 		cp.postOwner = _PostOwner; | ||||
| @@ -92,7 +92,7 @@ public class Post | ||||
| 	 | ||||
| 	public Post(Topic t) | ||||
| 	{ | ||||
| 		_post = new CopyOnWriteArrayList<>(); | ||||
| 		_post = ConcurrentHashMap.newKeySet(); | ||||
| 		load(t); | ||||
| 	} | ||||
| 	 | ||||
|   | ||||
| @@ -19,8 +19,8 @@ package org.l2jmobius.gameserver.communitybbs.Manager; | ||||
| import java.sql.Connection; | ||||
| import java.sql.ResultSet; | ||||
| import java.sql.Statement; | ||||
| import java.util.List; | ||||
| import java.util.concurrent.CopyOnWriteArrayList; | ||||
| import java.util.Collection; | ||||
| import java.util.concurrent.ConcurrentHashMap; | ||||
| import java.util.logging.Level; | ||||
| import java.util.logging.Logger; | ||||
|  | ||||
| @@ -31,7 +31,7 @@ import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; | ||||
| public class ForumsBBSManager extends BaseBBSManager | ||||
| { | ||||
| 	private static Logger LOGGER = Logger.getLogger(ForumsBBSManager.class.getName()); | ||||
| 	private final List<Forum> _table; | ||||
| 	private final Collection<Forum> _table; | ||||
| 	private int _lastid = 1; | ||||
| 	 | ||||
| 	/** | ||||
| @@ -39,7 +39,7 @@ public class ForumsBBSManager extends BaseBBSManager | ||||
| 	 */ | ||||
| 	protected ForumsBBSManager() | ||||
| 	{ | ||||
| 		_table = new CopyOnWriteArrayList<>(); | ||||
| 		_table = ConcurrentHashMap.newKeySet(); | ||||
| 		try (Connection con = DatabaseFactory.getConnection(); | ||||
| 			Statement s = con.createStatement(); | ||||
| 			ResultSet rs = s.executeQuery("SELECT forum_id FROM forums WHERE forum_type = 0")) | ||||
|   | ||||
| @@ -18,12 +18,11 @@ package org.l2jmobius.gameserver.communitybbs.Manager; | ||||
|  | ||||
| import java.text.DateFormat; | ||||
| import java.util.Calendar; | ||||
| import java.util.Collection; | ||||
| import java.util.Date; | ||||
| import java.util.List; | ||||
| import java.util.Map; | ||||
| import java.util.StringTokenizer; | ||||
| import java.util.concurrent.ConcurrentHashMap; | ||||
| import java.util.concurrent.CopyOnWriteArrayList; | ||||
|  | ||||
| import org.l2jmobius.gameserver.communitybbs.BB.Forum; | ||||
| import org.l2jmobius.gameserver.communitybbs.BB.Post; | ||||
| @@ -34,7 +33,7 @@ import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; | ||||
|  | ||||
| public class TopicBBSManager extends BaseBBSManager | ||||
| { | ||||
| 	private final List<Topic> _table = new CopyOnWriteArrayList<>(); | ||||
| 	private final Collection<Topic> _table = ConcurrentHashMap.newKeySet(); | ||||
| 	private final Map<Forum, Integer> _maxId = new ConcurrentHashMap<>(); | ||||
| 	 | ||||
| 	protected TopicBBSManager() | ||||
|   | ||||
| @@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.data.xml.impl; | ||||
|  | ||||
| import java.io.File; | ||||
| import java.util.ArrayList; | ||||
| import java.util.Collection; | ||||
| import java.util.Collections; | ||||
| import java.util.EnumMap; | ||||
| import java.util.HashMap; | ||||
| @@ -27,7 +28,6 @@ import java.util.Map; | ||||
| import java.util.Map.Entry; | ||||
| import java.util.Set; | ||||
| import java.util.concurrent.ConcurrentHashMap; | ||||
| import java.util.concurrent.CopyOnWriteArrayList; | ||||
| import java.util.function.Predicate; | ||||
| import java.util.logging.Logger; | ||||
| import java.util.stream.Collectors; | ||||
| @@ -60,7 +60,7 @@ public class NpcData implements IXmlReader | ||||
| 	 | ||||
| 	private final Map<Integer, NpcTemplate> _npcs = new ConcurrentHashMap<>(); | ||||
| 	private final Map<String, Integer> _clans = new ConcurrentHashMap<>(); | ||||
| 	private static final List<Integer> _masterMonsterIDs = new CopyOnWriteArrayList<>(); | ||||
| 	private static final Collection<Integer> _masterMonsterIDs = ConcurrentHashMap.newKeySet(); | ||||
| 	 | ||||
| 	protected NpcData() | ||||
| 	{ | ||||
| @@ -789,7 +789,7 @@ public class NpcData implements IXmlReader | ||||
| 	/** | ||||
| 	 * @return the IDs of monsters that have minions. | ||||
| 	 */ | ||||
| 	public static List<Integer> getMasterMonsterIDs() | ||||
| 	public static Collection<Integer> getMasterMonsterIDs() | ||||
| 	{ | ||||
| 		return _masterMonsterIDs; | ||||
| 	} | ||||
|   | ||||
| @@ -18,10 +18,11 @@ package org.l2jmobius.gameserver.data.xml.impl; | ||||
|  | ||||
| import java.io.File; | ||||
| import java.util.ArrayList; | ||||
| import java.util.Collection; | ||||
| import java.util.Collections; | ||||
| import java.util.List; | ||||
| import java.util.Map; | ||||
| import java.util.concurrent.CopyOnWriteArrayList; | ||||
| import java.util.concurrent.ConcurrentHashMap; | ||||
| import java.util.concurrent.ScheduledFuture; | ||||
| import java.util.function.Predicate; | ||||
| import java.util.logging.Level; | ||||
| @@ -54,7 +55,7 @@ public class SpawnsData implements IXmlReader | ||||
| { | ||||
| 	protected static final Logger LOGGER = Logger.getLogger(SpawnsData.class.getName()); | ||||
| 	 | ||||
| 	private final List<SpawnTemplate> _spawns = new CopyOnWriteArrayList<>(); | ||||
| 	private final Collection<SpawnTemplate> _spawns = ConcurrentHashMap.newKeySet(); | ||||
| 	 | ||||
| 	protected SpawnsData() | ||||
| 	{ | ||||
| @@ -98,7 +99,7 @@ public class SpawnsData implements IXmlReader | ||||
| 		 | ||||
| 		if (Config.THREADS_FOR_LOADING) | ||||
| 		{ | ||||
| 			final List<ScheduledFuture<?>> jobs = new CopyOnWriteArrayList<>(); | ||||
| 			final Collection<ScheduledFuture<?>> jobs = ConcurrentHashMap.newKeySet(); | ||||
| 			for (SpawnTemplate template : _spawns) | ||||
| 			{ | ||||
| 				if (template.isSpawningByDefault()) | ||||
| @@ -146,7 +147,7 @@ public class SpawnsData implements IXmlReader | ||||
| 		LOGGER.info(getClass().getSimpleName() + ": All spawns has been removed!"); | ||||
| 	} | ||||
| 	 | ||||
| 	public List<SpawnTemplate> getSpawns() | ||||
| 	public Collection<SpawnTemplate> getSpawns() | ||||
| 	{ | ||||
| 		return _spawns; | ||||
| 	} | ||||
| @@ -166,7 +167,7 @@ public class SpawnsData implements IXmlReader | ||||
| 		return _spawns.stream().flatMap(template -> template.getGroups().stream()).flatMap(group -> group.getSpawns().stream()).filter(condition).collect(Collectors.toList()); | ||||
| 	} | ||||
| 	 | ||||
| 	public void parseSpawn(Node spawnsNode, File file, List<SpawnTemplate> spawns) | ||||
| 	public void parseSpawn(Node spawnsNode, File file, Collection<SpawnTemplate> spawns) | ||||
| 	{ | ||||
| 		final SpawnTemplate spawnTemplate = new SpawnTemplate(new StatsSet(parseAttributes(spawnsNode)), file); | ||||
| 		SpawnGroup defaultGroup = null; | ||||
|   | ||||
| @@ -16,10 +16,11 @@ | ||||
|  */ | ||||
| package org.l2jmobius.gameserver.datatables; | ||||
|  | ||||
| import java.util.Collection; | ||||
| import java.util.Date; | ||||
| import java.util.LinkedList; | ||||
| import java.util.List; | ||||
| import java.util.concurrent.CopyOnWriteArrayList; | ||||
| import java.util.concurrent.ConcurrentHashMap; | ||||
|  | ||||
| import org.l2jmobius.gameserver.script.DateRange; | ||||
| import org.l2jmobius.gameserver.script.EventDrop; | ||||
| @@ -35,7 +36,7 @@ public class EventDroplist | ||||
| 	/** | ||||
| 	 * The table containing all DataDrop object | ||||
| 	 */ | ||||
| 	private static final List<DateDrop> ALL_NPC_DATE_DROPS = new CopyOnWriteArrayList<>(); | ||||
| 	private static final Collection<DateDrop> ALL_NPC_DATE_DROPS = ConcurrentHashMap.newKeySet(); | ||||
| 	 | ||||
| 	public static class DateDrop | ||||
| 	{ | ||||
|   | ||||
| @@ -18,8 +18,9 @@ package org.l2jmobius.gameserver.engines; | ||||
|  | ||||
| import java.io.File; | ||||
| import java.util.ArrayList; | ||||
| import java.util.Collection; | ||||
| import java.util.List; | ||||
| import java.util.concurrent.CopyOnWriteArrayList; | ||||
| import java.util.concurrent.ConcurrentHashMap; | ||||
| import java.util.concurrent.ScheduledFuture; | ||||
| import java.util.logging.Logger; | ||||
|  | ||||
| @@ -66,13 +67,13 @@ public class DocumentEngine | ||||
| 	 * Return created items | ||||
| 	 * @return List of {@link Item} | ||||
| 	 */ | ||||
| 	public List<Item> loadItems() | ||||
| 	public Collection<Item> loadItems() | ||||
| 	{ | ||||
| 		final List<Item> list = new CopyOnWriteArrayList<>(); | ||||
| 		final Collection<Item> list = ConcurrentHashMap.newKeySet(); | ||||
| 		 | ||||
| 		if (Config.THREADS_FOR_LOADING) | ||||
| 		{ | ||||
| 			final List<ScheduledFuture<?>> jobs = new CopyOnWriteArrayList<>(); | ||||
| 			final Collection<ScheduledFuture<?>> jobs = ConcurrentHashMap.newKeySet(); | ||||
| 			for (File file : _itemFiles) | ||||
| 			{ | ||||
| 				jobs.add(ThreadPool.schedule(() -> | ||||
|   | ||||
| @@ -16,9 +16,10 @@ | ||||
|  */ | ||||
| package org.l2jmobius.gameserver.model; | ||||
|  | ||||
| import java.util.Collection; | ||||
| import java.util.LinkedList; | ||||
| import java.util.List; | ||||
| import java.util.concurrent.CopyOnWriteArrayList; | ||||
| import java.util.concurrent.ConcurrentHashMap; | ||||
| import java.util.function.Function; | ||||
|  | ||||
| import org.l2jmobius.Config; | ||||
| @@ -36,7 +37,7 @@ import org.l2jmobius.gameserver.network.serverpackets.SystemMessage; | ||||
|  */ | ||||
| public class CommandChannel extends AbstractPlayerGroup | ||||
| { | ||||
| 	private final List<Party> _parties = new CopyOnWriteArrayList<>(); | ||||
| 	private final Collection<Party> _parties = ConcurrentHashMap.newKeySet(); | ||||
| 	private PlayerInstance _commandLeader; | ||||
| 	private int _channelLvl; | ||||
| 	 | ||||
| @@ -150,7 +151,7 @@ public class CommandChannel extends AbstractPlayerGroup | ||||
| 	/** | ||||
| 	 * @return a list of all parties in this command channel | ||||
| 	 */ | ||||
| 	public List<Party> getPartys() | ||||
| 	public Collection<Party> getParties() | ||||
| 	{ | ||||
| 		return _parties; | ||||
| 	} | ||||
|   | ||||
| @@ -16,8 +16,8 @@ | ||||
|  */ | ||||
| package org.l2jmobius.gameserver.model; | ||||
|  | ||||
| import java.util.List; | ||||
| import java.util.concurrent.CopyOnWriteArrayList; | ||||
| import java.util.Collection; | ||||
| import java.util.concurrent.ConcurrentHashMap; | ||||
|  | ||||
| import org.l2jmobius.gameserver.enums.PetitionState; | ||||
| import org.l2jmobius.gameserver.enums.PetitionType; | ||||
| @@ -41,7 +41,7 @@ public class Petition | ||||
| 	private final PetitionType _type; | ||||
| 	private PetitionState _state = PetitionState.PENDING; | ||||
| 	private final String _content; | ||||
| 	private final List<CreatureSay> _messageLog = new CopyOnWriteArrayList<>(); | ||||
| 	private final Collection<CreatureSay> _messageLog = ConcurrentHashMap.newKeySet(); | ||||
| 	private final PlayerInstance _petitioner; | ||||
| 	private PlayerInstance _responder; | ||||
| 	 | ||||
| @@ -58,7 +58,7 @@ public class Petition | ||||
| 		return _messageLog.add(cs); | ||||
| 	} | ||||
| 	 | ||||
| 	public List<CreatureSay> getLogMessages() | ||||
| 	public Collection<CreatureSay> getLogMessages() | ||||
| 	{ | ||||
| 		return _messageLog; | ||||
| 	} | ||||
|   | ||||
| @@ -16,8 +16,8 @@ | ||||
|  */ | ||||
| package org.l2jmobius.gameserver.model.actor.instance; | ||||
|  | ||||
| import java.util.List; | ||||
| import java.util.concurrent.CopyOnWriteArrayList; | ||||
| import java.util.Collection; | ||||
| import java.util.concurrent.ConcurrentHashMap; | ||||
|  | ||||
| import org.l2jmobius.Config; | ||||
| import org.l2jmobius.commons.concurrent.ThreadPool; | ||||
| @@ -45,7 +45,7 @@ public class RaceManagerInstance extends Npc | ||||
| 	public static final int LANES = 8; | ||||
| 	public static final int WINDOW_START = 0; | ||||
| 	 | ||||
| 	private static List<RaceManagerInstance> _managers; | ||||
| 	private static Collection<RaceManagerInstance> _managers; | ||||
| 	protected static int _raceNumber = 4; | ||||
| 	 | ||||
| 	// Time Constants | ||||
| @@ -104,7 +104,7 @@ public class RaceManagerInstance extends Npc | ||||
| 		{ | ||||
| 			_notInitialized = false; | ||||
| 			 | ||||
| 			_managers = new CopyOnWriteArrayList<>(); | ||||
| 			_managers = ConcurrentHashMap.newKeySet(); | ||||
| 			 | ||||
| 			ThreadPool.scheduleAtFixedRate(new Announcement(SystemMessageId.TICKETS_ARE_NOW_AVAILABLE_FOR_MONSTER_RACE_S1), 0, 10 * MINUTE); | ||||
| 			ThreadPool.scheduleAtFixedRate(new Announcement(SystemMessageId.NOW_SELLING_TICKETS_FOR_MONSTER_RACE_S1), 30 * SECOND, 10 * MINUTE); | ||||
|   | ||||
| @@ -19,10 +19,12 @@ package org.l2jmobius.gameserver.model.actor.instance; | ||||
| import java.sql.Connection; | ||||
| import java.sql.PreparedStatement; | ||||
| import java.sql.ResultSet; | ||||
| import java.util.Collection; | ||||
| import java.util.Collections; | ||||
| import java.util.HashMap; | ||||
| import java.util.List; | ||||
| import java.util.Map; | ||||
| import java.util.concurrent.ConcurrentHashMap; | ||||
| import java.util.concurrent.CopyOnWriteArrayList; | ||||
| import java.util.concurrent.Future; | ||||
| import java.util.logging.Level; | ||||
| @@ -304,7 +306,7 @@ public class ServitorInstance extends Summon implements Runnable | ||||
| 			 | ||||
| 			int buff_index = 0; | ||||
| 			 | ||||
| 			final List<Long> storedSkills = new CopyOnWriteArrayList<>(); | ||||
| 			final Collection<Long> storedSkills = ConcurrentHashMap.newKeySet(); | ||||
| 			 | ||||
| 			// Store all effect data along with calculated remaining | ||||
| 			if (storeEffects) | ||||
|   | ||||
| @@ -18,8 +18,8 @@ package org.l2jmobius.gameserver.model.actor.instance; | ||||
|  | ||||
| import static org.l2jmobius.gameserver.ai.CtrlIntention.AI_INTENTION_IDLE; | ||||
|  | ||||
| import java.util.List; | ||||
| import java.util.concurrent.CopyOnWriteArrayList; | ||||
| import java.util.Collection; | ||||
| import java.util.concurrent.ConcurrentHashMap; | ||||
| import java.util.concurrent.Future; | ||||
|  | ||||
| import org.l2jmobius.commons.concurrent.ThreadPool; | ||||
| @@ -62,7 +62,7 @@ public class TamedBeastInstance extends FeedableBeastInstance | ||||
| 	private Future<?> _buffTask = null; | ||||
| 	private Future<?> _durationCheckTask = null; | ||||
| 	protected boolean _isFreyaBeast; | ||||
| 	private List<Skill> _beastSkills = null; | ||||
| 	private Collection<Skill> _beastSkills = null; | ||||
| 	 | ||||
| 	public TamedBeastInstance(int npcTemplateId) | ||||
| 	{ | ||||
| @@ -205,7 +205,7 @@ public class TamedBeastInstance extends FeedableBeastInstance | ||||
| 	{ | ||||
| 		if (_beastSkills == null) | ||||
| 		{ | ||||
| 			_beastSkills = new CopyOnWriteArrayList<>(); | ||||
| 			_beastSkills = ConcurrentHashMap.newKeySet(); | ||||
| 		} | ||||
| 		_beastSkills.add(skill); | ||||
| 	} | ||||
|   | ||||
| @@ -49,7 +49,7 @@ public interface Siegable | ||||
| 	 | ||||
| 	SiegeClan getDefenderClan(Clan clan); | ||||
| 	 | ||||
| 	List<SiegeClan> getDefenderClans(); | ||||
| 	Collection<SiegeClan> getDefenderClans(); | ||||
| 	 | ||||
| 	boolean checkIsDefender(Clan clan); | ||||
| 	 | ||||
|   | ||||
| @@ -21,12 +21,13 @@ import java.sql.PreparedStatement; | ||||
| import java.sql.ResultSet; | ||||
| import java.util.ArrayList; | ||||
| import java.util.Calendar; | ||||
| import java.util.Collection; | ||||
| import java.util.Collections; | ||||
| import java.util.Iterator; | ||||
| import java.util.List; | ||||
| import java.util.Objects; | ||||
| import java.util.Set; | ||||
| import java.util.concurrent.CopyOnWriteArrayList; | ||||
| import java.util.concurrent.ConcurrentHashMap; | ||||
| import java.util.concurrent.ScheduledFuture; | ||||
| import java.util.logging.Level; | ||||
| import java.util.logging.Logger; | ||||
| @@ -221,9 +222,9 @@ public class Siege implements Siegable | ||||
| 	} | ||||
| 	 | ||||
| 	// must support Concurrent Modifications | ||||
| 	private final List<SiegeClan> _attackerClans = new CopyOnWriteArrayList<>(); | ||||
| 	private final List<SiegeClan> _defenderClans = new CopyOnWriteArrayList<>(); | ||||
| 	private final List<SiegeClan> _defenderWaitingClans = new CopyOnWriteArrayList<>(); | ||||
| 	private final Collection<SiegeClan> _attackerClans = ConcurrentHashMap.newKeySet(); | ||||
| 	private final Collection<SiegeClan> _defenderClans = ConcurrentHashMap.newKeySet(); | ||||
| 	private final Collection<SiegeClan> _defenderWaitingClans = ConcurrentHashMap.newKeySet(); | ||||
| 	 | ||||
| 	// Castle setting | ||||
| 	private final List<ControlTowerInstance> _controlTowers = new ArrayList<>(); | ||||
| @@ -1582,7 +1583,7 @@ public class Siege implements Siegable | ||||
| 	} | ||||
| 	 | ||||
| 	@Override | ||||
| 	public List<SiegeClan> getAttackerClans() | ||||
| 	public Collection<SiegeClan> getAttackerClans() | ||||
| 	{ | ||||
| 		if (_isNormalSide) | ||||
| 		{ | ||||
| @@ -1625,7 +1626,7 @@ public class Siege implements Siegable | ||||
| 	} | ||||
| 	 | ||||
| 	@Override | ||||
| 	public List<SiegeClan> getDefenderClans() | ||||
| 	public Collection<SiegeClan> getDefenderClans() | ||||
| 	{ | ||||
| 		if (_isNormalSide) | ||||
| 		{ | ||||
| @@ -1655,7 +1656,7 @@ public class Siege implements Siegable | ||||
| 		return null; | ||||
| 	} | ||||
| 	 | ||||
| 	public List<SiegeClan> getDefenderWaitingClans() | ||||
| 	public Collection<SiegeClan> getDefenderWaitingClans() | ||||
| 	{ | ||||
| 		return _defenderWaitingClans; | ||||
| 	} | ||||
|   | ||||
| @@ -16,8 +16,9 @@ | ||||
|  */ | ||||
| package org.l2jmobius.gameserver.model.holders; | ||||
|  | ||||
| import java.util.Collection; | ||||
| import java.util.List; | ||||
| import java.util.concurrent.CopyOnWriteArrayList; | ||||
| import java.util.concurrent.ConcurrentHashMap; | ||||
|  | ||||
| import org.l2jmobius.gameserver.enums.Movie; | ||||
| import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; | ||||
| @@ -29,7 +30,7 @@ public class MovieHolder | ||||
| { | ||||
| 	private final Movie _movie; | ||||
| 	private final List<PlayerInstance> _players; | ||||
| 	private final List<PlayerInstance> _votedPlayers = new CopyOnWriteArrayList<>(); | ||||
| 	private final Collection<PlayerInstance> _votedPlayers = ConcurrentHashMap.newKeySet(); | ||||
| 	 | ||||
| 	public MovieHolder(List<PlayerInstance> players, Movie movie) | ||||
| 	{ | ||||
| @@ -64,7 +65,7 @@ public class MovieHolder | ||||
| 		return _players; | ||||
| 	} | ||||
| 	 | ||||
| 	public List<PlayerInstance> getVotedPlayers() | ||||
| 	public Collection<PlayerInstance> getVotedPlayers() | ||||
| 	{ | ||||
| 		return _votedPlayers; | ||||
| 	} | ||||
|   | ||||
| @@ -127,7 +127,7 @@ public class CommandChannelMatchingRoom extends MatchingRoom | ||||
| 		if (leaderParty != null) | ||||
| 		{ | ||||
| 			final CommandChannel cc = leaderParty.getCommandChannel(); | ||||
| 			if ((leaderParty == playerParty) || ((cc != null) && cc.getPartys().contains(playerParty))) | ||||
| 			if ((leaderParty == playerParty) || ((cc != null) && cc.getParties().contains(playerParty))) | ||||
| 			{ | ||||
| 				return MatchingMemberType.COMMAND_CHANNEL_PARTY_MEMBER; | ||||
| 			} | ||||
|   | ||||
| @@ -45,8 +45,8 @@ public class ExMultiPartyCommandChannelInfo implements IClientOutgoingPacket | ||||
| 		packet.writeD(0x00); // Channel loot 0 or 1 | ||||
| 		packet.writeD(_channel.getMemberCount()); | ||||
| 		 | ||||
| 		packet.writeD(_channel.getPartys().size()); | ||||
| 		for (Party p : _channel.getPartys()) | ||||
| 		packet.writeD(_channel.getParties().size()); | ||||
| 		for (Party p : _channel.getParties()) | ||||
| 		{ | ||||
| 			packet.writeS(p.getLeader().getName()); | ||||
| 			packet.writeD(p.getLeaderObjectId()); | ||||
|   | ||||
| @@ -26,11 +26,10 @@ import java.sql.ResultSet; | ||||
| import java.sql.SQLException; | ||||
| import java.text.DateFormat; | ||||
| import java.util.Calendar; | ||||
| import java.util.Collection; | ||||
| import java.util.Date; | ||||
| import java.util.List; | ||||
| import java.util.Map; | ||||
| import java.util.concurrent.ConcurrentHashMap; | ||||
| import java.util.concurrent.CopyOnWriteArrayList; | ||||
| import java.util.concurrent.ScheduledFuture; | ||||
| import java.util.logging.Level; | ||||
| import java.util.logging.Logger; | ||||
| @@ -50,7 +49,7 @@ public class TaskManager | ||||
| 	static final Logger LOGGER = Logger.getLogger(TaskManager.class.getName()); | ||||
| 	 | ||||
| 	private final Map<Integer, Task> _tasks = new ConcurrentHashMap<>(); | ||||
| 	final List<ExecutedTask> _currentTasks = new CopyOnWriteArrayList<>(); | ||||
| 	final Collection<ExecutedTask> _currentTasks = ConcurrentHashMap.newKeySet(); | ||||
| 	 | ||||
| 	static final String[] SQL_STATEMENTS = | ||||
| 	{ | ||||
|   | ||||
| @@ -18,8 +18,8 @@ package org.l2jmobius.loginserver; | ||||
|  | ||||
| import java.io.IOException; | ||||
| import java.net.Socket; | ||||
| import java.util.List; | ||||
| import java.util.concurrent.CopyOnWriteArrayList; | ||||
| import java.util.Collection; | ||||
| import java.util.concurrent.ConcurrentHashMap; | ||||
|  | ||||
| import org.l2jmobius.Config; | ||||
|  | ||||
| @@ -28,7 +28,7 @@ import org.l2jmobius.Config; | ||||
|  */ | ||||
| public class GameServerListener extends FloodProtectedListener | ||||
| { | ||||
| 	private static List<GameServerThread> _gameServers = new CopyOnWriteArrayList<>(); | ||||
| 	private static Collection<GameServerThread> _gameServers = ConcurrentHashMap.newKeySet(); | ||||
| 	 | ||||
| 	public GameServerListener() throws IOException | ||||
| 	{ | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 MobiusDevelopment
					MobiusDevelopment