");
}
if(replays != null && replays.size() > 0) {
@@ -183,11 +183,11 @@ public class DeckRenderer {
StringBuilder result = new StringBuilder();
result.append("
")
- .append("
").append(StringEscapeUtils.escapeHtml(deck.getDeckName())).append("
")
- .append("
Format: ").append(StringEscapeUtils.escapeHtml(deck.getTargetFormat())).append("
");
+ .append("
").append(StringEscapeUtils.escapeHtml3(deck.getDeckName())).append("
")
+ .append("
Format: ").append(StringEscapeUtils.escapeHtml3(deck.getTargetFormat())).append("
");
if(author != null) {
- result.append("
Author: ").append(StringEscapeUtils.escapeHtml(author)).append("
");
+ result.append("
Author: ").append(StringEscapeUtils.escapeHtml3(author)).append("
");
}
if(replays != null && replays.size() > 0) {
diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/db/CachedDeckDAO.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/db/CachedDeckDAO.java
index 403307f5c..7fdbfb52b 100644
--- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/db/CachedDeckDAO.java
+++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/db/CachedDeckDAO.java
@@ -3,7 +3,7 @@ package com.gempukku.lotro.db;
import com.gempukku.lotro.cache.Cached;
import com.gempukku.lotro.game.Player;
import com.gempukku.lotro.logic.vo.LotroDeck;
-import org.apache.commons.collections.map.LRUMap;
+import org.apache.commons.collections4.map.LRUMap;
import java.util.*;
diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/db/CachedMerchantDAO.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/db/CachedMerchantDAO.java
index ab86804c0..6aebc4933 100644
--- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/db/CachedMerchantDAO.java
+++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/db/CachedMerchantDAO.java
@@ -1,7 +1,7 @@
package com.gempukku.lotro.db;
import com.gempukku.lotro.cache.Cached;
-import org.apache.commons.collections.map.LRUMap;
+import org.apache.commons.collections4.map.LRUMap;
import java.util.Collections;
import java.util.Date;
diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/db/CachedPlayerDAO.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/db/CachedPlayerDAO.java
index d8ea43f03..7e838b04b 100644
--- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/db/CachedPlayerDAO.java
+++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/db/CachedPlayerDAO.java
@@ -3,7 +3,7 @@ package com.gempukku.lotro.db;
import com.gempukku.lotro.cache.Cached;
import com.gempukku.lotro.common.DBDefs;
import com.gempukku.lotro.game.Player;
-import org.apache.commons.collections.map.LRUMap;
+import org.apache.commons.collections4.map.LRUMap;
import java.sql.SQLException;
import java.util.*;
diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/db/DbAccess.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/db/DbAccess.java
index 1be67fbef..4e23991b6 100644
--- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/db/DbAccess.java
+++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/db/DbAccess.java
@@ -1,11 +1,11 @@
package com.gempukku.lotro.db;
import com.gempukku.lotro.common.AppConfig;
-import org.apache.commons.dbcp.ConnectionFactory;
-import org.apache.commons.dbcp.DriverManagerConnectionFactory;
-import org.apache.commons.dbcp.PoolableConnectionFactory;
-import org.apache.commons.dbcp.PoolingDataSource;
-import org.apache.commons.pool.impl.GenericObjectPool;
+import org.apache.commons.dbcp2.ConnectionFactory;
+import org.apache.commons.dbcp2.DriverManagerConnectionFactory;
+import org.apache.commons.dbcp2.PoolableConnectionFactory;
+import org.apache.commons.dbcp2.PoolingDataSource;
+import org.apache.commons.pool2.impl.GenericObjectPool;
import javax.sql.DataSource;
import java.util.Properties;
@@ -48,6 +48,16 @@ public class DbAccess {
ConnectionFactory connectionFactory =
new DriverManagerConnectionFactory(connectURI, props);
+ //
+ // Next we'll create the PoolableConnectionFactory, which wraps
+ // the "real" Connections created by the ConnectionFactory with
+ // the classes that implement the pooling functionality.
+ //
+ var poolableConnectionFactory = new PoolableConnectionFactory(connectionFactory, null);
+ poolableConnectionFactory.setDefaultAutoCommit(true);
+ poolableConnectionFactory.setDefaultReadOnly(false);
+ poolableConnectionFactory.setValidationQuery(AppConfig.getProperty("db.connection.validateQuery"));
+
//
// Now we'll need a ObjectPool that serves as the
// actual pool of connections.
@@ -55,19 +65,11 @@ public class DbAccess {
// We'll use a GenericObjectPool instance, although
// any ObjectPool implementation will suffice.
//
- GenericObjectPool connectionPool =
- new GenericObjectPool();
+ var connectionPool = new GenericObjectPool<>(poolableConnectionFactory);
connectionPool.setTestOnBorrow(true);
- //
- // Next we'll create the PoolableConnectionFactory, which wraps
- // the "real" Connections created by the ConnectionFactory with
- // the classes that implement the pooling functionality.
- //
- PoolableConnectionFactory poolableConnectionFactory =
- new PoolableConnectionFactory(connectionFactory, connectionPool, null, AppConfig.getProperty("db.connection.validateQuery"), false, true);
-
- connectionPool.setFactory(poolableConnectionFactory);
+ // Set the factory's pool property to the owning pool
+ poolableConnectionFactory.setPool(connectionPool);
//
// Finally, we create the PoolingDriver itself,
diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/draft2/SoloDraftDefinitions.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/draft2/SoloDraftDefinitions.java
index 1d9cbd47e..e84d57916 100644
--- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/draft2/SoloDraftDefinitions.java
+++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/draft2/SoloDraftDefinitions.java
@@ -5,8 +5,8 @@ import com.gempukku.lotro.common.AppConfig;
import com.gempukku.lotro.draft2.builder.*;
import com.gempukku.lotro.game.LotroCardBlueprintLibrary;
import com.gempukku.lotro.game.formats.LotroFormatLibrary;
-import org.apache.log4j.Logger;
-import org.json.simple.JSONArray;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
import org.json.simple.parser.ParseException;
@@ -20,7 +20,7 @@ import java.util.*;
import java.util.concurrent.Semaphore;
public class SoloDraftDefinitions {
- private static final Logger _logger = Logger.getLogger(SoloDraftDefinitions.class);
+ private static final Logger _logger = LogManager.getLogger(SoloDraftDefinitions.class);
private Map
_draftTypes = new HashMap<>();
private final DraftChoiceBuilder _draftChoiceBuilder;
private final File _draftDefinitionPath;
diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/game/LotroGameMediator.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/game/LotroGameMediator.java
index 252a09f18..73ec27d67 100644
--- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/game/LotroGameMediator.java
+++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/game/LotroGameMediator.java
@@ -16,13 +16,13 @@ import com.gempukku.lotro.logic.modifiers.Modifier;
import com.gempukku.lotro.logic.timing.DefaultLotroGame;
import com.gempukku.lotro.logic.timing.GameResultListener;
import com.gempukku.lotro.logic.vo.LotroDeck;
-import org.apache.log4j.Logger;
-
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import java.util.*;
import java.util.concurrent.locks.ReentrantReadWriteLock;
public class LotroGameMediator {
- private static final Logger LOG = Logger.getLogger(LotroGameMediator.class);
+ private static final Logger LOG = LogManager.getLogger(LotroGameMediator.class);
private final Map _communicationChannels = Collections.synchronizedMap(new HashMap<>());
private final DefaultUserFeedback _userFeedback;
diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/game/LotroServer.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/game/LotroServer.java
index 05e83a772..80ada48fa 100644
--- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/game/LotroServer.java
+++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/game/LotroServer.java
@@ -8,15 +8,15 @@ import com.gempukku.lotro.db.DeckDAO;
import com.gempukku.lotro.hall.GameSettings;
import com.gempukku.lotro.logic.timing.GameResultListener;
import com.gempukku.lotro.logic.vo.LotroDeck;
-import org.apache.log4j.Logger;
-
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.locks.ReadWriteLock;
import java.util.concurrent.locks.ReentrantReadWriteLock;
public class LotroServer extends AbstractServer {
- private static final Logger log = Logger.getLogger(LotroServer.class);
+ private static final Logger log = LogManager.getLogger(LotroServer.class);
private final LotroCardBlueprintLibrary _lotroCardBlueprintLibrary;
diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/game/formats/LotroFormatLibrary.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/game/formats/LotroFormatLibrary.java
index 80023dab5..7ab9b75b4 100644
--- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/game/formats/LotroFormatLibrary.java
+++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/game/formats/LotroFormatLibrary.java
@@ -88,12 +88,12 @@ public class LotroFormatLibrary {
for (var def : defs) {
if(def == null)
continue;
- var sealed = new SealedLeagueDefinition(def.Name, def.ID, _allFormats.get(def.Format), def.SeriesProduct);
+ var sealed = new SealedLeagueDefinition(def.name, def.id, _allFormats.get(def.format), def.seriesProduct);
- if(_sealedTemplates.containsKey(def.ID)) {
- System.out.println("Overwriting existing sealed definition '" + def.ID + "'!");
+ if(_sealedTemplates.containsKey(def.id)) {
+ System.out.println("Overwriting existing sealed definition '" + def.id + "'!");
}
- _sealedTemplates.put(def.ID, sealed);
+ _sealedTemplates.put(def.id, sealed);
}
} catch (IOException e) {
diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/hall/HallCommunicationChannel.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/hall/HallCommunicationChannel.java
index 6e104c31f..1c628cd3e 100644
--- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/hall/HallCommunicationChannel.java
+++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/hall/HallCommunicationChannel.java
@@ -3,8 +3,8 @@ package com.gempukku.lotro.hall;
import com.gempukku.lotro.game.Player;
import com.gempukku.polling.LongPollableResource;
import com.gempukku.polling.WaitingRequest;
-import org.apache.commons.lang.StringUtils;
-import org.apache.commons.lang.mutable.MutableObject;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.lang3.mutable.MutableObject;
import java.util.*;
diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/hall/HallServer.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/hall/HallServer.java
index 6f69e519c..75a5b9525 100644
--- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/hall/HallServer.java
+++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/hall/HallServer.java
@@ -19,8 +19,8 @@ import com.gempukku.lotro.logic.vo.LotroDeck;
import com.gempukku.lotro.packs.ProductLibrary;
import com.gempukku.lotro.service.AdminService;
import com.gempukku.lotro.tournament.*;
-import org.apache.log4j.Logger;
-
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import java.io.IOException;
import java.sql.SQLException;
import java.time.ZonedDateTime;
@@ -66,7 +66,8 @@ public class HallServer extends AbstractServer {
private final ChatRoomMediator _hallChat;
private final GameResultListener _notifyHallListeners = new NotifyHallListenersGameResultListener();
- private static final Logger _log = Logger.getLogger(HallServer.class);
+
+ private static final Logger _log = LogManager.getLogger(HallServer.class);
public HallServer(IgnoreDAO ignoreDAO, LotroServer lotroServer, ChatServer chatServer, LeagueService leagueService, TournamentService tournamentService, LotroCardBlueprintLibrary library,
LotroFormatLibrary formatLibrary, ProductLibrary productLibrary, CollectionsManager collectionsManager, AdminService adminService) {
diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/league/CachedLeagueMatchDAO.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/league/CachedLeagueMatchDAO.java
index 97189d1df..a024d3509 100644
--- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/league/CachedLeagueMatchDAO.java
+++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/league/CachedLeagueMatchDAO.java
@@ -3,7 +3,7 @@ package com.gempukku.lotro.league;
import com.gempukku.lotro.cache.Cached;
import com.gempukku.lotro.db.LeagueMatchDAO;
import com.gempukku.lotro.db.vo.LeagueMatchResult;
-import org.apache.commons.collections.map.LRUMap;
+import org.apache.commons.collections4.map.LRUMap;
import java.util.Collection;
import java.util.Collections;
diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/league/CachedLeagueParticipationDAO.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/league/CachedLeagueParticipationDAO.java
index f2122f00b..c412ac319 100644
--- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/league/CachedLeagueParticipationDAO.java
+++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/league/CachedLeagueParticipationDAO.java
@@ -3,7 +3,7 @@ package com.gempukku.lotro.league;
import com.gempukku.lotro.cache.Cached;
import com.gempukku.lotro.db.LeagueParticipationDAO;
import com.gempukku.lotro.game.Player;
-import org.apache.commons.collections.map.LRUMap;
+import org.apache.commons.collections4.map.LRUMap;
import java.util.Collection;
import java.util.Collections;
diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/league/SealedLeagueDefinition.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/league/SealedLeagueDefinition.java
index 4ed1e9cd9..a9e47f0b0 100644
--- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/league/SealedLeagueDefinition.java
+++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/league/SealedLeagueDefinition.java
@@ -41,10 +41,10 @@ public class SealedLeagueDefinition {
public JSONDefs.SealedTemplate Serialize() {
return new JSONDefs.SealedTemplate() {{
- Name = _name;
- ID = _id;
- Format = _format.getCode();
- SeriesProduct = _seriesProduct.stream()
+ name = _name;
+ id = _id;
+ format = _format.getCode();
+ seriesProduct = _seriesProduct.stream()
.map(x->x.stream().map(CardCollection.Item::toString).collect(Collectors.toList()))
.collect(Collectors.toList());
}};
diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/log/LoggingProxy.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/log/LoggingProxy.java
index be89cb88b..78795b51d 100644
--- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/log/LoggingProxy.java
+++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/log/LoggingProxy.java
@@ -1,12 +1,12 @@
package com.gempukku.lotro.log;
-import org.apache.log4j.Logger;
-
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Proxy;
public class LoggingProxy {
- private static final Logger logger = Logger.getLogger(LoggingProxy.class);
+ private static final Logger logger = LogManager.getLogger(LoggingProxy.class);
private static final long ERROR_LEVEL = 3000;
private static final long WARN_LEVEL = 1000;
private static final long INFO_LEVEL = 500;
diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/merchant/MerchantService.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/merchant/MerchantService.java
index 31fc64313..6da06691e 100644
--- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/merchant/MerchantService.java
+++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/merchant/MerchantService.java
@@ -4,7 +4,7 @@ import com.gempukku.lotro.collection.CollectionsManager;
import com.gempukku.lotro.db.vo.CollectionType;
import com.gempukku.lotro.game.*;
import com.gempukku.lotro.game.packs.SetDefinition;
-import org.apache.commons.collections.map.LRUMap;
+import org.apache.commons.collections4.map.LRUMap;
import java.io.IOException;
import java.sql.SQLException;
diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/packs/ProductLibrary.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/packs/ProductLibrary.java
index 2875a1055..100ffb9d6 100644
--- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/packs/ProductLibrary.java
+++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/packs/ProductLibrary.java
@@ -85,46 +85,46 @@ public class ProductLibrary {
PackBox result = null;
String[] rarities;
String[] sets;
- switch (def.Type)
+ switch (def.type)
{
case RANDOM:
- if(def.Items == null || def.Items.isEmpty())
+ if(def.items == null || def.items.isEmpty())
continue;
- if(def.Items.stream().anyMatch(x -> x.contains("%"))) {
- result = WeightedRandomPack.LoadFromArray(def.Items);
+ if(def.items.stream().anyMatch(x -> x.contains("%"))) {
+ result = WeightedRandomPack.LoadFromArray(def.items);
}
else {
- result = UnweightedRandomPack.LoadFromArray(def.Items);
+ result = UnweightedRandomPack.LoadFromArray(def.items);
}
break;
case RANDOM_FOIL:
- if(def.Data == null || !def.Data.containsKey("rarities") || !def.Data.containsKey("sets")) {
- System.out.println(def.Name + " RANDOM_FOIL pack type must contain a definition for 'rarities' and 'sets' within data.");
+ if(def.data == null || !def.data.containsKey("rarities") || !def.data.containsKey("sets")) {
+ System.out.println(def.name + " RANDOM_FOIL pack type must contain a definition for 'rarities' and 'sets' within data.");
continue;
}
- rarities = def.Data.get("rarities").toUpperCase().split("\\s*,\\s*");
- sets = def.Data.get("sets").split("\\s*,\\s*");
+ rarities = def.data.get("rarities").toUpperCase().split("\\s*,\\s*");
+ sets = def.data.get("sets").split("\\s*,\\s*");
result = new RandomFoilPack(rarities, sets, _cardLibrary);
break;
case TENGWAR:
- if(def.Data == null || !def.Data.containsKey("sets")) {
- System.out.println(def.Name + " TENGWAR pack type must contain a definition for 'sets' within data.");
+ if(def.data == null || !def.data.containsKey("sets")) {
+ System.out.println(def.name + " TENGWAR pack type must contain a definition for 'sets' within data.");
continue;
}
- sets = def.Data.get("sets").split("\\s*,\\s*");
+ sets = def.data.get("sets").split("\\s*,\\s*");
result = new TengwarPackBox(sets, _cardLibrary);
break;
case BOOSTER:
- if(def.Data == null || !def.Data.containsKey("set")) {
- System.out.println(def.Name + " BOOSTER pack type must contain a definition for 'set' within data.");
+ if(def.data == null || !def.data.containsKey("set")) {
+ System.out.println(def.name + " BOOSTER pack type must contain a definition for 'set' within data.");
continue;
}
- if(def.Data.get("set").contains(",")) {
- System.out.println(def.Name + " BOOSTER pack type must define exactly one set.");
+ if(def.data.get("set").contains(",")) {
+ System.out.println(def.name + " BOOSTER pack type must define exactly one set.");
continue;
}
- String set = def.Data.get("set").trim();
+ String set = def.data.get("set").trim();
if(set.equals("9")) {
result = new ReflectionsPackBox(_cardLibrary);
}
@@ -134,14 +134,14 @@ public class ProductLibrary {
break;
case PACK:
case SELECTION:
- if(def.Items == null || def.Items.isEmpty())
+ if(def.items == null || def.items.isEmpty())
continue;
- result = FixedPackBox.LoadFromArray(def.Items, def.Recursive);
+ result = FixedPackBox.LoadFromArray(def.items, def.recursive);
break;
}
if(result == null)
{
- System.out.println("Unrecognized pack type: " + def.Type);
+ System.out.println("Unrecognized pack type: " + def.type);
continue;
}
@@ -149,10 +149,10 @@ public class ProductLibrary {
// var items = result.openPack().stream().map(CardCollection.Item::toString).toList();
// result = FixedPackBox.LoadFromArray(items);
// }
- if(_products.containsKey(def.Name)) {
- System.out.println("Overwriting existing pack '" + def.Name + "'!");
+ if(_products.containsKey(def.name)) {
+ System.out.println("Overwriting existing pack '" + def.name + "'!");
}
- _products.put(def.Name, result);
+ _products.put(def.name, result);
}
diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/tournament/DefaultTournament.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/tournament/DefaultTournament.java
index 3723c088a..c24f73fed 100644
--- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/tournament/DefaultTournament.java
+++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/tournament/DefaultTournament.java
@@ -15,8 +15,8 @@ import com.gempukku.lotro.logic.GameUtils;
import com.gempukku.lotro.logic.vo.LotroDeck;
import com.gempukku.lotro.packs.PacksStorage;
import com.gempukku.lotro.packs.ProductLibrary;
-import org.apache.commons.lang.StringEscapeUtils;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringEscapeUtils;
+import org.apache.commons.lang3.StringUtils;
import org.json.XML;
import java.time.ZonedDateTime;
@@ -502,7 +502,7 @@ public class DefaultTournament implements Tournament {
StringBuilder summary = new StringBuilder();
summary.append("")
- .append("").append(StringEscapeUtils.escapeHtml(_tournamentName)).append("
")
+ .append("").append(StringEscapeUtils.escapeHtml3(_tournamentName)).append("
")
.append("")
.append("- Format: ").append(_format).append("
")
.append("- Collection: ").append(_collectionType.getFullName()).append("
")
diff --git a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/tournament/ChampionshipSwissPairingMechanismTest.java b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/tournament/ChampionshipSwissPairingMechanismTest.java
index b51f6b887..868a13e0f 100644
--- a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/tournament/ChampionshipSwissPairingMechanismTest.java
+++ b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/tournament/ChampionshipSwissPairingMechanismTest.java
@@ -3,7 +3,7 @@ package com.gempukku.lotro.tournament;
import com.gempukku.lotro.at.AbstractAtTest;
import com.gempukku.lotro.competitive.BestOfOneStandingsProducer;
import com.gempukku.lotro.competitive.PlayerStanding;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.junit.Test;
import java.util.*;
diff --git a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/tournament/SwissPairingMechanismTest.java b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/tournament/SwissPairingMechanismTest.java
index c15ece043..478981683 100644
--- a/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/tournament/SwissPairingMechanismTest.java
+++ b/gemp-lotr/gemp-lotr-server/src/test/java/com/gempukku/lotro/tournament/SwissPairingMechanismTest.java
@@ -3,7 +3,7 @@ package com.gempukku.lotro.tournament;
import com.gempukku.lotro.at.AbstractAtTest;
import com.gempukku.lotro.competitive.BestOfOneStandingsProducer;
import com.gempukku.lotro.competitive.PlayerStanding;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import org.junit.Test;
import java.util.*;
diff --git a/gemp-lotr/pom.xml b/gemp-lotr/pom.xml
index 558214c97..4b5408bd4 100644
--- a/gemp-lotr/pom.xml
+++ b/gemp-lotr/pom.xml
@@ -21,7 +21,7 @@
UTF-8
- 17
+ 21
@@ -29,7 +29,7 @@
org.apache.maven.plugins
maven-compiler-plugin
- 2.3.2
+ 3.8.1
${java.version}
${java.version}