Ver código fonte

BETA: Updated most Comparators to use lambdas.
* Removed `Comparators` class predefined comparators are not needed anymore since its very short to make one.
* Removed more anonymous classes.

Nos 11 anos atrás
pai
commit
b75179561e

+ 2 - 2
L2J_Server_BETA/java/com/l2jserver/gameserver/communitybbs/Manager/RegionBBSManager.java

@@ -19,6 +19,7 @@
 package com.l2jserver.gameserver.communitybbs.Manager;
 
 import java.util.ArrayList;
+import java.util.Comparator;
 import java.util.List;
 import java.util.Map;
 import java.util.StringTokenizer;
@@ -41,7 +42,6 @@ import com.l2jserver.gameserver.network.clientpackets.Say2;
 import com.l2jserver.gameserver.network.serverpackets.CreatureSay;
 import com.l2jserver.gameserver.network.serverpackets.ShowBoard;
 import com.l2jserver.gameserver.network.serverpackets.SystemMessage;
-import com.l2jserver.gameserver.util.Comparators;
 import com.l2jserver.util.StringUtil;
 
 public class RegionBBSManager extends BaseBBSManager
@@ -274,7 +274,7 @@ public class RegionBBSManager extends BaseBBSManager
 		_onlineCount = 0;
 		_onlineCountGm = 0;
 		
-		for (L2PcInstance player : L2World.getInstance().getPlayersSortedBy(Comparators.PLAYER_NAME_COMPARATOR))
+		for (L2PcInstance player : L2World.getInstance().getPlayersSortedBy(Comparator.comparing(L2PcInstance::getName, String::compareToIgnoreCase)))
 		{
 			addOnlinePlayer(player);
 		}

+ 1 - 11
L2J_Server_BETA/java/com/l2jserver/gameserver/instancemanager/RaidBossPointsManager.java

@@ -24,7 +24,6 @@ import java.sql.ResultSet;
 import java.sql.SQLException;
 import java.sql.Statement;
 import java.util.ArrayList;
-import java.util.Collections;
 import java.util.Comparator;
 import java.util.Map;
 import java.util.Map.Entry;
@@ -46,15 +45,6 @@ public class RaidBossPointsManager
 	
 	private FastMap<Integer, Map<Integer, Integer>> _list;
 	
-	private final Comparator<Map.Entry<Integer, Integer>> _comparator = new Comparator<Map.Entry<Integer, Integer>>()
-	{
-		@Override
-		public int compare(Map.Entry<Integer, Integer> entry, Map.Entry<Integer, Integer> entry1)
-		{
-			return entry.getValue().equals(entry1.getValue()) ? 0 : entry.getValue() < entry1.getValue() ? 1 : -1;
-		}
-	};
-	
 	public RaidBossPointsManager()
 	{
 		init();
@@ -186,7 +176,7 @@ public class RaidBossPointsManager
 		}
 		ArrayList<Entry<Integer, Integer>> list = new ArrayList<>(tmpPoints.entrySet());
 		
-		Collections.sort(list, _comparator);
+		list.sort(Comparator.comparing(Entry<Integer, Integer>::getValue).reversed());
 		
 		int ranking = 1;
 		for (Map.Entry<Integer, Integer> entry : list)

+ 9 - 21
L2J_Server_BETA/java/com/l2jserver/gameserver/model/entity/L2Event.java

@@ -21,7 +21,6 @@ package com.l2jserver.gameserver.model.entity;
 import java.io.BufferedReader;
 import java.io.FileReader;
 import java.util.ArrayList;
-import java.util.Collections;
 import java.util.Comparator;
 import java.util.HashMap;
 import java.util.LinkedHashMap;
@@ -46,7 +45,6 @@ import com.l2jserver.gameserver.model.actor.L2Npc;
 import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
 import com.l2jserver.gameserver.model.actor.templates.L2NpcTemplate;
 import com.l2jserver.gameserver.model.holders.PlayerEventHolder;
-import com.l2jserver.gameserver.model.interfaces.IProcedure;
 import com.l2jserver.gameserver.network.serverpackets.CharInfo;
 import com.l2jserver.gameserver.network.serverpackets.ExBrExtraUserInfo;
 import com.l2jserver.gameserver.network.serverpackets.MagicSkillUse;
@@ -209,20 +207,16 @@ public class L2Event
 	 */
 	public static void unspawnEventNpcs()
 	{
-		SpawnTable.getInstance().forEachSpawn(new IProcedure<L2Spawn, Boolean>()
+		SpawnTable.getInstance().forEachSpawn(spawn ->
 		{
-			@Override
-			public Boolean execute(L2Spawn spawn)
+			L2Npc npc = spawn.getLastSpawn();
+			if ((npc != null) && npc.isEventMob())
 			{
-				L2Npc npc = spawn.getLastSpawn();
-				if ((npc != null) && npc.isEventMob())
-				{
-					npc.deleteMe();
-					spawn.stopRespawn();
-					SpawnTable.getInstance().deleteSpawn(spawn, false);
-				}
-				return true;
+				npc.deleteMe();
+				spawn.stopRespawn();
+				SpawnTable.getInstance().deleteSpawn(spawn, false);
 			}
+			return true;
 		});
 	}
 	
@@ -550,14 +544,8 @@ public class L2Event
 	private static final Map<L2PcInstance, Integer> sortByValue(Map<L2PcInstance, Integer> unsortMap)
 	{
 		final List<Entry<L2PcInstance, Integer>> list = new LinkedList<>(unsortMap.entrySet());
-		Collections.sort(list, new Comparator<Entry<L2PcInstance, Integer>>()
-		{
-			@Override
-			public int compare(Entry<L2PcInstance, Integer> e1, Entry<L2PcInstance, Integer> e2)
-			{
-				return e1.getValue().compareTo(e2.getValue());
-			}
-		});
+		
+		list.sort(Comparator.comparing(Entry<L2PcInstance, Integer>::getValue));
 		
 		final Map<L2PcInstance, Integer> sortedMap = new LinkedHashMap<>();
 		for (Entry<L2PcInstance, Integer> entry : list)

+ 1 - 13
L2J_Server_BETA/java/com/l2jserver/gameserver/model/itemauction/ItemAuctionInstance.java

@@ -68,18 +68,6 @@ public final class ItemAuctionInstance
 	private static final String DELETE_AUCTION_BID_INFO_BY_AUCTION_ID = "DELETE FROM item_auction_bid WHERE auctionId = ?";
 	private static final String SELECT_PLAYERS_ID_BY_AUCTION_ID = "SELECT playerObjId, playerBid FROM item_auction_bid WHERE auctionId = ?";
 	
-	/**
-	 * Cached comparator to avoid initialization on each loop run.
-	 */
-	private static final Comparator<ItemAuction> itemAuctionComparator = new Comparator<ItemAuction>()
-	{
-		@Override
-		public final int compare(final ItemAuction o1, final ItemAuction o2)
-		{
-			return Long.valueOf(o2.getStartingTime()).compareTo(Long.valueOf(o1.getStartingTime()));
-		}
-	};
-	
 	private final int _instanceId;
 	private final AtomicInteger _auctionIds;
 	private final Map<Integer, ItemAuction> _auctions;
@@ -300,7 +288,7 @@ public final class ItemAuctionInstance
 			
 			default:
 			{
-				Arrays.sort(auctions, itemAuctionComparator);
+				Arrays.sort(auctions, Comparator.comparingLong(ItemAuction::getStartingTime));
 				
 				// just to make sure we won't skip any auction because of little different times
 				final long currentTime = System.currentTimeMillis();

+ 0 - 67
L2J_Server_BETA/java/com/l2jserver/gameserver/util/Comparators.java

@@ -1,67 +0,0 @@
-/*
- * Copyright (C) 2004-2014 L2J Server
- * 
- * This file is part of L2J Server.
- * 
- * L2J Server is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- * 
- * L2J Server is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-package com.l2jserver.gameserver.util;
-
-import java.util.Comparator;
-
-import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
-
-/**
- * Static comparators.
- * @author Zoey76
- */
-public class Comparators
-{
-	/** Compares its two arguments for order by it's name. */
-	public static final Comparator<L2PcInstance> PLAYER_NAME_COMPARATOR = new Comparator<L2PcInstance>()
-	{
-		@Override
-		public int compare(L2PcInstance p1, L2PcInstance p2)
-		{
-			return p1.getName().compareToIgnoreCase(p2.getName());
-		}
-	};
-	/** Compares its two arguments for order by it's up-time, the one that logged first. */
-	public static final Comparator<L2PcInstance> PLAYER_UPTIME_COMPARATOR = new Comparator<L2PcInstance>()
-	{
-		@Override
-		public int compare(L2PcInstance p1, L2PcInstance p2)
-		{
-			return Long.compare(p1.getUptime(), p2.getUptime());
-		}
-	};
-	/** Compares its two arguments for order by it's PVP kills. */
-	public static final Comparator<L2PcInstance> PLAYER_PVP_COMPARATOR = new Comparator<L2PcInstance>()
-	{
-		@Override
-		public int compare(L2PcInstance p1, L2PcInstance p2)
-		{
-			return Integer.compare(p1.getPvpKills(), p2.getPvpKills());
-		}
-	};
-	/** Compares its two arguments for order by it's PK kills. */
-	public static final Comparator<L2PcInstance> PLAYER_PK_COMPARATOR = new Comparator<L2PcInstance>()
-	{
-		@Override
-		public int compare(L2PcInstance p1, L2PcInstance p2)
-		{
-			return Integer.compare(p1.getPkKills(), p2.getPkKills());
-		}
-	};
-}