Dropped some Iterator uses.

This commit is contained in:
MobiusDev
2016-04-30 18:06:44 +00:00
parent 25fae223c2
commit 15d263a788
9 changed files with 24 additions and 77 deletions

View File

@ -26,7 +26,6 @@ import java.nio.channels.SelectionKey;
import java.nio.channels.Selector;
import java.nio.channels.ServerSocketChannel;
import java.nio.channels.SocketChannel;
import java.util.Iterator;
import java.util.LinkedList;
/**
@ -142,12 +141,8 @@ public final class SelectorThread<T extends MMOClient<?>>extends Thread
public final void run()
{
int selectedKeysCount = 0;
SelectionKey key;
MMOConnection<T> con;
Iterator<SelectionKey> selectedKeys;
while (!_shutdown)
{
try
@ -161,13 +156,9 @@ public final class SelectorThread<T extends MMOClient<?>>extends Thread
if (selectedKeysCount > 0)
{
selectedKeys = _selector.selectedKeys().iterator();
while (selectedKeys.hasNext())
for (SelectionKey key : _selector.selectedKeys())
{
key = selectedKeys.next();
selectedKeys.remove();
_selector.selectedKeys().remove(key);
con = (MMOConnection<T>) key.attachment();
switch (key.readyOps())

View File

@ -19,7 +19,6 @@ package com.l2jmobius.gameserver.data.xml.impl;
import java.io.File;
import java.io.FileFilter;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.logging.Level;
@ -388,12 +387,8 @@ public final class MultisellData implements IXmlReader
private final void verify()
{
ListContainer list;
final Iterator<ListContainer> iter = _entries.values().iterator();
while (iter.hasNext())
for (ListContainer list : _entries.values())
{
list = iter.next();
for (Entry ent : list.getEntries())
{
for (Ingredient ing : ent.getIngredients())

View File

@ -21,7 +21,6 @@ import java.lang.reflect.Constructor;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.logging.Level;
@ -707,15 +706,13 @@ public final class ZoneManager implements IXmlReader
{
if (_debugItems != null)
{
final Iterator<L2ItemInstance> it = _debugItems.iterator();
while (it.hasNext())
for (L2ItemInstance item : _debugItems)
{
final L2ItemInstance item = it.next();
if (item != null)
{
item.decayMe();
}
it.remove();
_debugItems.remove(item);
}
}
}

View File

@ -16,7 +16,6 @@
*/
package com.l2jmobius.gameserver.model.actor.instance;
import java.util.Iterator;
import java.util.List;
import com.l2jmobius.gameserver.ai.L2ShuttleAI;
@ -120,18 +119,13 @@ public class L2ShuttleInstance extends L2Vehicle
@Override
public void oustPlayers()
{
L2PcInstance player;
// Use iterator because oustPlayer will try to remove player from _passengers
final Iterator<L2PcInstance> iter = _passengers.iterator();
while (iter.hasNext())
for (L2PcInstance player : _passengers)
{
player = iter.next();
iter.remove();
if (player != null)
{
oustPlayer(player);
}
_passengers.remove(player);
}
}

View File

@ -16,7 +16,6 @@
*/
package com.l2jmobius.gameserver.model.actor.knownlist;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
@ -123,30 +122,25 @@ public class CharKnownList extends ObjectKnownList
{
if (!fullCheck)
{
final Iterator<L2PcInstance> pIter = getKnownPlayers().values().iterator();
while (pIter.hasNext())
for (L2PcInstance player : getKnownPlayers().values())
{
final L2PcInstance player = pIter.next();
if (player == null)
{
pIter.remove();
removeKnownObject(player, true);
}
else if (!player.isVisible() || !Util.checkIfInShortRadius(getDistanceToForgetObject(player), getActiveObject(), player, true))
{
pIter.remove();
removeKnownObject(player, true);
getKnownRelations().remove(player.getObjectId());
getKnownObjects().remove(player.getObjectId());
}
}
final Iterator<L2Summon> sIter = getKnownSummons().values().iterator();
while (sIter.hasNext())
for (L2Summon summon : getKnownSummons().values())
{
final L2Summon summon = sIter.next();
if (summon == null)
{
sIter.remove();
removeKnownObject(summon, true);
}
else if (getActiveChar().isPlayer() && (summon.getOwner() == getActiveChar()))
{
@ -154,7 +148,6 @@ public class CharKnownList extends ObjectKnownList
}
else if (!summon.isVisible() || !Util.checkIfInShortRadius(getDistanceToForgetObject(summon), getActiveObject(), summon, true))
{
sIter.remove();
removeKnownObject(summon, true);
getKnownObjects().remove(summon.getObjectId());
}
@ -163,17 +156,14 @@ public class CharKnownList extends ObjectKnownList
return;
}
// Go through knownObjects
final Iterator<L2Object> oIter = getKnownObjects().values().iterator();
while (oIter.hasNext())
for (L2Object object : getKnownObjects().values())
{
final L2Object object = oIter.next();
if (object == null)
{
oIter.remove();
removeKnownObject(object, true);
}
else if (!object.isVisible() || !Util.checkIfInShortRadius(getDistanceToForgetObject(object), getActiveObject(), object, true))
{
oIter.remove();
removeKnownObject(object, true);
if (object.isPlayer())

View File

@ -16,7 +16,6 @@
*/
package com.l2jmobius.gameserver.model.actor.knownlist;
import java.util.Iterator;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
@ -159,10 +158,8 @@ public class ObjectKnownList
*/
public void forgetObjects(boolean fullCheck)
{
final Iterator<L2Object> oIter = getKnownObjects().values().iterator();
while (oIter.hasNext())
for (L2Object object : getKnownObjects().values())
{
final L2Object object = oIter.next();
if (!fullCheck && !object.isPlayable())
{
continue;
@ -171,7 +168,6 @@ public class ObjectKnownList
// Remove all objects invisible or too far
if (!object.isVisible() || !Util.checkIfInShortRadius(getDistanceToForgetObject(object), getActiveObject(), object, true))
{
oIter.remove();
removeKnownObject(object, true);
}
}

View File

@ -22,7 +22,6 @@ import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import java.util.concurrent.CopyOnWriteArrayList;
import java.util.concurrent.ScheduledFuture;
@ -1083,13 +1082,11 @@ public class Siege implements Siegable
case NotOwner:
{
players = getPlayersInZone();
final Iterator<L2PcInstance> it = players.iterator();
while (it.hasNext())
for (L2PcInstance player : players)
{
final L2PcInstance player = it.next();
if ((player == null) || player.inObserverMode() || ((player.getClanId() > 0) && (player.getClanId() == getCastle().getOwnerId())))
{
it.remove();
players.remove(player);
}
}
break;

View File

@ -17,7 +17,6 @@
package com.l2jmobius.gameserver.model.entity;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
@ -189,17 +188,13 @@ public class TvTEvent
_teams[0].cleanMe();
_teams[1].cleanMe();
L2PcInstance player;
Iterator<L2PcInstance> iter;
if (needParticipationFee())
{
iter = allParticipants.values().iterator();
while (iter.hasNext())
for (L2PcInstance player : allParticipants.values())
{
player = iter.next();
if (!hasParticipationFee(player))
{
iter.remove();
allParticipants.remove(player.getObjectId());
}
}
}
@ -253,22 +248,18 @@ public class TvTEvent
if (needParticipationFee())
{
iter = _teams[0].getParticipatedPlayers().values().iterator();
while (iter.hasNext())
for (L2PcInstance player : _teams[0].getParticipatedPlayers().values())
{
player = iter.next();
if (!payParticipationFee(player))
{
iter.remove();
_teams[0].removePlayer(player.getObjectId());
}
}
iter = _teams[1].getParticipatedPlayers().values().iterator();
while (iter.hasNext())
for (L2PcInstance player : _teams[1].getParticipatedPlayers().values())
{
player = iter.next();
if (!payParticipationFee(player))
{
iter.remove();
_teams[1].removePlayer(player.getObjectId());
}
}
}

View File

@ -16,7 +16,6 @@
*/
package com.l2jmobius.gameserver.taskmanager;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.concurrent.ConcurrentHashMap;
@ -113,12 +112,9 @@ public class AttackStanceTaskManager
final long current = System.currentTimeMillis();
try
{
final Iterator<Entry<L2Character, Long>> iter = _attackStanceTasks.entrySet().iterator();
Entry<L2Character, Long> e;
L2Character actor;
while (iter.hasNext())
for (Entry<L2Character, Long> e : _attackStanceTasks.entrySet())
{
e = iter.next();
if ((current - e.getValue()) > 15000)
{
actor = e.getKey();
@ -136,7 +132,7 @@ public class AttackStanceTaskManager
actor.getServitors().values().forEach(s -> s.broadcastPacket(new AutoAttackStop(s.getObjectId())));
}
}
iter.remove();
_attackStanceTasks.remove(e);
}
}
}