diff --git a/.gitignore b/.gitignore index d988c1ea0..8dde80ef0 100644 --- a/.gitignore +++ b/.gitignore @@ -21,4 +21,5 @@ remote-sync replay !replay/.placeholder logs/nohup.out +nohup.out gemp-lotr/docker/docker-compose.yml diff --git a/gemp-lotr/docker/docker-compose.yml b/gemp-lotr/docker/docker-compose.yml index 48fda0c59..f219010e7 100644 --- a/gemp-lotr/docker/docker-compose.yml +++ b/gemp-lotr/docker/docker-compose.yml @@ -29,26 +29,20 @@ services: - type: bind source: ../../gemp-lotr target: /etc/gemp-lotr - - type: bind - source: ../gemp-lotr-async/src/main/web - target: /var/www/localhost/htdocs/gemp-lotr #/etc/apache2/htdocs/gemp-lotr - type: bind source: ../../logs target: /logs - type: bind source: ../../replay target: /replay - - type: bind - source: ../.. - target: /gemp-src - type: bind source: ../../logs/nohup.out - target: /nohup.out + target: /etc/gemp-lotr/nohup.out networks: gemp_net_1: ipv4_address: ${APP_IP} tty: true - command: nohup java -jar /etc/gemp-lotr/gemp-lotr-async/target/web.jar & + command: nohup java -jar -Dlog4j2.contextSelector=org.apache.logging.log4j.core.async.AsyncLoggerContextSelector /etc/gemp-lotr/gemp-lotr-async/target/web.jar &> /logs/nohup.out & db: @@ -79,5 +73,5 @@ networks: ipam: driver: default config: - - subnet: 172.28.1.0/24 + - subnet: 172.28.${SERVID}.0/24 attachable: true diff --git a/gemp-lotr/docker/gemp_app.Dockerfile b/gemp-lotr/docker/gemp_app.Dockerfile index d1b158a99..f02e9cc4f 100644 --- a/gemp-lotr/docker/gemp_app.Dockerfile +++ b/gemp-lotr/docker/gemp_app.Dockerfile @@ -1,4 +1,4 @@ -FROM amazoncorretto:18-alpine-jdk +FROM amazoncorretto:21-alpine-jdk RUN apk update; \ apk update \ @@ -21,22 +21,19 @@ RUN apk update; \ ##################################################################### # The following is pulled from the official maven dockerfile: -# https://github.com/carlossg/docker-maven/blob/26ba49149787c85b9c51222b47c00879b2a0afde/openjdk-14/Dockerfile +# https://github.com/carlossg/docker-maven/blob/e545dcfa4d312e08330f4e07701763db3889db79/amazoncorretto-21/Dockerfile ##################################################################### -ARG MAVEN_VERSION=3.8.8 -ARG USER_HOME_DIR="/root" -ARG SHA=332088670d14fa9ff346e6858ca0acca304666596fec86eea89253bd496d3c90deae2be5091be199f48e09d46cec817c6419d5161fb4ee37871503f472765d00 -ARG BASE_URL=https://apache.osuosl.org/maven/maven-3/${MAVEN_VERSION}/binaries - -RUN mkdir -p /usr/share/maven /usr/share/maven/ref \ - && curl -fsSL -o /tmp/apache-maven.tar.gz ${BASE_URL}/apache-maven-${MAVEN_VERSION}-bin.tar.gz \ - && echo "${SHA} /tmp/apache-maven.tar.gz" | sha512sum -c - \ - && tar -xzf /tmp/apache-maven.tar.gz -C /usr/share/maven --strip-components=1 \ - && rm -f /tmp/apache-maven.tar.gz \ - && ln -s /usr/share/maven/bin/mvn /usr/bin/mvn - ENV MAVEN_HOME /usr/share/maven + +COPY --from=maven:3.9.6-eclipse-temurin-11 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=maven:3.9.6-eclipse-temurin-11 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=maven:3.9.6-eclipse-temurin-11 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=3.9.6 +ARG USER_HOME_DIR="/root" ENV MAVEN_CONFIG "$USER_HOME_DIR/.m2" # Enables the JRE remote debugging; perhaps comment this out in a production build @@ -51,6 +48,5 @@ RUN apk add --no-cache openrc; \ RUN touch /nohup.out -#RUN nohup java -jar /etc/gemp-lotr/gemp-lotr-async/target/web.jar & - +WORKDIR /etc/gemp-lotr diff --git a/gemp-lotr/gemp-lotr-async/pom.xml b/gemp-lotr/gemp-lotr-async/pom.xml index f709d675a..f54c671b6 100644 --- a/gemp-lotr/gemp-lotr-async/pom.xml +++ b/gemp-lotr/gemp-lotr-async/pom.xml @@ -7,7 +7,6 @@ 1.0-SNAPSHOT 4.0.0 - com.gempukku.lotro gemp-lotr-async 1.0-SNAPSHOT @@ -20,32 +19,37 @@ io.netty netty-all - 4.1.77.Final + 4.1.108.Final - log4j - log4j - 1.2.17 + org.apache.logging.log4j + log4j-core + 2.23.1 + + + com.lmax + disruptor + 3.4.4 com.google.code.gson gson - 2.9.0 + 2.10.1 org.commonmark commonmark - 0.19.0 + 0.22.0 org.commonmark commonmark-ext-gfm-strikethrough - 0.19.0 + 0.22.0 org.commonmark commonmark-ext-autolink - 0.19.0 + 0.22.0 @@ -63,12 +67,6 @@ jar-with-dependencies gemp-lotr-async - - - - org.apache.maven.plugins - maven-assembly-plugin - zip-web-descriptor.xml diff --git a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/GempukkuHttpRequestHandler.java b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/GempukkuHttpRequestHandler.java index 6c7c59e73..2af7508e6 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/GempukkuHttpRequestHandler.java +++ b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/GempukkuHttpRequestHandler.java @@ -10,8 +10,8 @@ import io.netty.channel.SimpleChannelInboundHandler; import io.netty.handler.codec.http.*; import io.netty.util.CharsetUtil; import org.apache.commons.io.IOUtils; -import org.apache.log4j.Logger; -import org.w3c.dom.Document; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger;import org.w3c.dom.Document; import javax.xml.transform.Transformer; import javax.xml.transform.TransformerFactory; @@ -32,8 +32,8 @@ import static io.netty.handler.codec.http.HttpVersion.HTTP_1_1; public class GempukkuHttpRequestHandler extends SimpleChannelInboundHandler { private final static long SIX_MONTHS = 1000L * 60L * 60L * 24L * 30L * 6L; - private static final Logger _log = Logger.getLogger(GempukkuHttpRequestHandler.class); - private static final Logger _accesslog = Logger.getLogger("access"); + private static final Logger _log = LogManager.getLogger(GempukkuHttpRequestHandler.class); + private static final Logger _accesslog = LogManager.getLogger("access"); private final Map _fileCache = Collections.synchronizedMap(new HashMap<>()); private final Map _objects; diff --git a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/GempukkuServer.java b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/GempukkuServer.java index 559fb0f5b..4fe6d5c29 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/GempukkuServer.java +++ b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/GempukkuServer.java @@ -2,8 +2,8 @@ package com.gempukku.lotro.async; import com.gempukku.lotro.builder.DaoBuilder; import com.gempukku.lotro.builder.ServerBuilder; -import org.apache.log4j.Logger; - +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import java.lang.reflect.Type; import java.util.HashMap; import java.util.Map; @@ -14,7 +14,7 @@ public class GempukkuServer { public GempukkuServer() { Map objects = new HashMap<>(); - var logger = Logger.getLogger(GempukkuServer.class); + var logger = LogManager.getLogger(GempukkuServer.class); //Libraries and other important prereq managers that are used by lots of other managers logger.info("GempukkuServer loading prerequisites..."); diff --git a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/AdminRequestHandler.java b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/AdminRequestHandler.java index e1471cd7c..32332bd54 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/AdminRequestHandler.java +++ b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/AdminRequestHandler.java @@ -24,8 +24,8 @@ import com.gempukku.lotro.tournament.TournamentService; import io.netty.handler.codec.http.HttpMethod; import io.netty.handler.codec.http.HttpRequest; import io.netty.handler.codec.http.multipart.HttpPostRequestDecoder; -import org.apache.log4j.Logger; -import org.w3c.dom.Document; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger;import org.w3c.dom.Document; import org.w3c.dom.Element; import javax.xml.parsers.DocumentBuilder; @@ -52,7 +52,7 @@ public class AdminRequestHandler extends LotroServerRequestHandler implements Ur private final AdminService _adminService; private final ChatServer _chatServer; - private static final Logger _log = Logger.getLogger(AdminRequestHandler.class); + private static final Logger _log = LogManager.getLogger(AdminRequestHandler.class); public AdminRequestHandler(Map context) { super(context); diff --git a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/ChatRequestHandler.java b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/ChatRequestHandler.java index a085f7ee3..d42e3de77 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/ChatRequestHandler.java +++ b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/ChatRequestHandler.java @@ -16,8 +16,8 @@ import io.netty.handler.codec.http.HttpMethod; import io.netty.handler.codec.http.HttpRequest; import io.netty.handler.codec.http.QueryStringDecoder; import io.netty.handler.codec.http.multipart.HttpPostRequestDecoder; -import org.apache.log4j.Logger; -import org.commonmark.Extension; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger;import org.commonmark.Extension; import org.commonmark.ext.autolink.AutolinkExtension; import org.commonmark.ext.gfm.strikethrough.StrikethroughExtension; import org.commonmark.node.Image; @@ -46,7 +46,7 @@ public class ChatRequestHandler extends LotroServerRequestHandler implements Uri private final Parser _markdownParser; private final HtmlRenderer _markdownRenderer; - private static final Logger _log = Logger.getLogger(ChatRequestHandler.class); + private static final Logger _log = LogManager.getLogger(ChatRequestHandler.class); public ChatRequestHandler(Map context, LongPollingSystem longPollingSystem) { super(context); diff --git a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/CollectionRequestHandler.java b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/CollectionRequestHandler.java index 39395fd82..9e5649582 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/CollectionRequestHandler.java +++ b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/CollectionRequestHandler.java @@ -18,8 +18,8 @@ import io.netty.handler.codec.http.HttpMethod; import io.netty.handler.codec.http.HttpRequest; import io.netty.handler.codec.http.QueryStringDecoder; import io.netty.handler.codec.http.multipart.HttpPostRequestDecoder; -import org.apache.log4j.Logger; -import org.w3c.dom.Document; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger;import org.w3c.dom.Document; import org.w3c.dom.Element; import javax.xml.parsers.DocumentBuilder; @@ -38,7 +38,7 @@ public class CollectionRequestHandler extends LotroServerRequestHandler implemen private final SortAndFilterCards _sortAndFilterCards; private final ImportCards _importCards; - private static final Logger _log = Logger.getLogger(CollectionRequestHandler.class); + private static final Logger _log = LogManager.getLogger(CollectionRequestHandler.class); public CollectionRequestHandler(Map context) { super(context); diff --git a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/DeckRequestHandler.java b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/DeckRequestHandler.java index 1de56f562..321776041 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/DeckRequestHandler.java +++ b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/DeckRequestHandler.java @@ -16,8 +16,9 @@ import io.netty.handler.codec.http.HttpMethod; import io.netty.handler.codec.http.HttpRequest; import io.netty.handler.codec.http.QueryStringDecoder; import io.netty.handler.codec.http.multipart.HttpPostRequestDecoder; -import org.apache.commons.lang.StringEscapeUtils; -import org.apache.log4j.Logger; +import org.apache.commons.lang3.StringEscapeUtils; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import org.w3c.dom.Document; import org.w3c.dom.Element; @@ -39,7 +40,7 @@ public class DeckRequestHandler extends LotroServerRequestHandler implements Uri private final SoloDraftDefinitions _draftLibrary; private final LotroServer _lotroServer; - private static final Logger _log = Logger.getLogger(DeckRequestHandler.class); + private static final Logger _log = LogManager.getLogger(DeckRequestHandler.class); public DeckRequestHandler(Map context) { super(context); @@ -100,7 +101,7 @@ public class DeckRequestHandler extends LotroServerRequestHandler implements Uri .collect(Collectors.toMap(x-> x.code, x-> x)); data.SealedTemplates = _formatLibrary.GetAllSealedTemplates().values().stream() .map(SealedLeagueDefinition::Serialize) - .collect(Collectors.toMap(x-> x.Name, x-> x)); + .collect(Collectors.toMap(x-> x.name, x-> x)); data.DraftTemplates = _draftLibrary.getAllSoloDrafts().values().stream() .map(soloDraft -> new JSONDefs.ItemStub(soloDraft.getCode(), soloDraft.getFormat())) .collect(Collectors.toMap(x-> x.code, x-> x)); @@ -355,10 +356,10 @@ public class DeckRequestHandler extends LotroServerRequestHandler implements Uri """); - result.append("

" + StringEscapeUtils.escapeHtml(deck.getDeckName()) + "

"); - result.append("

Format: " + StringEscapeUtils.escapeHtml(deck.getTargetFormat()) + "

"); + result.append("

" + StringEscapeUtils.escapeHtml3(deck.getDeckName()) + "

"); + result.append("

Format: " + StringEscapeUtils.escapeHtml3(deck.getTargetFormat()) + "

"); if(author != null) { - result.append("

Author: " + StringEscapeUtils.escapeHtml(author) + "

"); + result.append("

Author: " + StringEscapeUtils.escapeHtml3(author) + "

"); } String ringBearer = deck.getRingBearer(); if (ringBearer != null) diff --git a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/DeliveryRequestHandler.java b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/DeliveryRequestHandler.java index 593e55c3f..f71419e55 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/DeliveryRequestHandler.java +++ b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/DeliveryRequestHandler.java @@ -8,8 +8,8 @@ import com.gempukku.lotro.game.Player; import com.google.common.collect.Iterables; import io.netty.handler.codec.http.HttpMethod; import io.netty.handler.codec.http.HttpRequest; -import org.apache.log4j.Logger; -import org.w3c.dom.Document; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger;import org.w3c.dom.Document; import org.w3c.dom.Element; import javax.xml.parsers.DocumentBuilder; @@ -20,7 +20,7 @@ import java.util.Map; public class DeliveryRequestHandler extends LotroServerRequestHandler implements UriRequestHandler { private final TransferDAO _transferDAO; - private static final Logger _log = Logger.getLogger(DeliveryRequestHandler.class); + private static final Logger _log = LogManager.getLogger(DeliveryRequestHandler.class); public DeliveryRequestHandler(Map context) { super(context); diff --git a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/GameHistoryRequestHandler.java b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/GameHistoryRequestHandler.java index c70444bbf..28404b114 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/GameHistoryRequestHandler.java +++ b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/GameHistoryRequestHandler.java @@ -9,8 +9,8 @@ import com.gempukku.lotro.game.Player; import io.netty.handler.codec.http.HttpMethod; import io.netty.handler.codec.http.HttpRequest; import io.netty.handler.codec.http.QueryStringDecoder; -import org.apache.log4j.Logger; -import org.w3c.dom.Document; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger;import org.w3c.dom.Document; import org.w3c.dom.Element; import javax.xml.parsers.DocumentBuilder; @@ -23,7 +23,7 @@ import java.util.Map; public class GameHistoryRequestHandler extends LotroServerRequestHandler implements UriRequestHandler { private final GameHistoryService _gameHistoryService; - private static final Logger _log = Logger.getLogger(GameHistoryRequestHandler.class); + private static final Logger _log = LogManager.getLogger(GameHistoryRequestHandler.class); public GameHistoryRequestHandler(Map context) { super(context); diff --git a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/GameRequestHandler.java b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/GameRequestHandler.java index 6205e83ce..ed6d22e72 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/GameRequestHandler.java +++ b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/GameRequestHandler.java @@ -22,8 +22,8 @@ import io.netty.handler.codec.http.QueryStringDecoder; import io.netty.handler.codec.http.cookie.Cookie; import io.netty.handler.codec.http.cookie.ServerCookieDecoder; import io.netty.handler.codec.http.multipart.HttpPostRequestDecoder; -import org.apache.log4j.Logger; -import org.w3c.dom.Document; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger;import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.Node; @@ -40,7 +40,7 @@ public class GameRequestHandler extends LotroServerRequestHandler implements Uri private final LongPollingSystem longPollingSystem; private final Set _autoPassDefault = new HashSet<>(); - private static final Logger _log = Logger.getLogger(GameRequestHandler.class); + private static final Logger _log = LogManager.getLogger(GameRequestHandler.class); public GameRequestHandler(Map context, LongPollingSystem longPollingSystem) { super(context); diff --git a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/HallRequestHandler.java b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/HallRequestHandler.java index c7cbcf31a..fb2e1af40 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/HallRequestHandler.java +++ b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/HallRequestHandler.java @@ -21,8 +21,8 @@ import io.netty.handler.codec.http.HttpMethod; import io.netty.handler.codec.http.HttpRequest; import io.netty.handler.codec.http.QueryStringDecoder; import io.netty.handler.codec.http.multipart.HttpPostRequestDecoder; -import org.apache.log4j.Logger; -import org.w3c.dom.Document; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger;import org.w3c.dom.Document; import org.w3c.dom.Element; import javax.xml.parsers.DocumentBuilder; @@ -40,7 +40,7 @@ public class HallRequestHandler extends LotroServerRequestHandler implements Uri private final LotroServer _lotroServer; private final LongPollingSystem longPollingSystem; - private static final Logger _log = Logger.getLogger(HallRequestHandler.class); + private static final Logger _log = LogManager.getLogger(HallRequestHandler.class); public HallRequestHandler(Map context, LongPollingSystem longPollingSystem) { super(context); diff --git a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/LeagueRequestHandler.java b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/LeagueRequestHandler.java index 550225d45..13e86ebb1 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/LeagueRequestHandler.java +++ b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/LeagueRequestHandler.java @@ -18,8 +18,8 @@ import io.netty.handler.codec.http.HttpMethod; import io.netty.handler.codec.http.HttpRequest; import io.netty.handler.codec.http.QueryStringDecoder; import io.netty.handler.codec.http.multipart.HttpPostRequestDecoder; -import org.apache.log4j.Logger; -import org.w3c.dom.Document; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger;import org.w3c.dom.Document; import org.w3c.dom.Element; import javax.xml.parsers.DocumentBuilder; @@ -37,7 +37,7 @@ public class LeagueRequestHandler extends LotroServerRequestHandler implements U private final LotroCardBlueprintLibrary _library; private final ProductLibrary _productLibrary; - private static final Logger _log = Logger.getLogger(LeagueRequestHandler.class); + private static final Logger _log = LogManager.getLogger(LeagueRequestHandler.class); public LeagueRequestHandler(Map context) { super(context); diff --git a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/LoginRequestHandler.java b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/LoginRequestHandler.java index f675c78bc..dfb0af117 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/LoginRequestHandler.java +++ b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/LoginRequestHandler.java @@ -7,15 +7,15 @@ import com.mysql.cj.util.StringUtils; import io.netty.handler.codec.http.HttpMethod; import io.netty.handler.codec.http.HttpRequest; import io.netty.handler.codec.http.multipart.HttpPostRequestDecoder; -import org.apache.log4j.Logger; - +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import java.lang.reflect.Type; import java.util.Date; import java.util.Map; public class LoginRequestHandler extends LotroServerRequestHandler implements UriRequestHandler { - private static final Logger _log = Logger.getLogger(LoginRequestHandler.class); + private static final Logger _log = LogManager.getLogger(LoginRequestHandler.class); public LoginRequestHandler(Map context) { super(context); diff --git a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/LotroServerRequestHandler.java b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/LotroServerRequestHandler.java index 09ae0d5ae..d1f07c2f8 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/LotroServerRequestHandler.java +++ b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/LotroServerRequestHandler.java @@ -17,8 +17,8 @@ import io.netty.handler.codec.http.cookie.ServerCookieEncoder; import io.netty.handler.codec.http.multipart.Attribute; import io.netty.handler.codec.http.multipart.HttpPostRequestDecoder; import io.netty.handler.codec.http.multipart.InterfaceHttpData; -import org.apache.log4j.Logger; - +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import java.io.IOException; import java.lang.reflect.Type; import java.sql.SQLException; @@ -33,7 +33,7 @@ public class LotroServerRequestHandler { private final TransferDAO _transferDAO; private final CollectionsManager _collectionManager; - private static final Logger _log = Logger.getLogger(LotroServerRequestHandler.class); + private static final Logger _log = LogManager.getLogger(LotroServerRequestHandler.class); public LotroServerRequestHandler(Map context) { _playerDao = extractObject(context, PlayerDAO.class); diff --git a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/MerchantRequestHandler.java b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/MerchantRequestHandler.java index 387c72e67..c265a3079 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/MerchantRequestHandler.java +++ b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/MerchantRequestHandler.java @@ -11,8 +11,8 @@ import io.netty.handler.codec.http.HttpMethod; import io.netty.handler.codec.http.HttpRequest; import io.netty.handler.codec.http.QueryStringDecoder; import io.netty.handler.codec.http.multipart.HttpPostRequestDecoder; -import org.apache.log4j.Logger; -import org.w3c.dom.Document; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger;import org.w3c.dom.Document; import org.w3c.dom.Element; import javax.xml.parsers.DocumentBuilder; @@ -28,7 +28,7 @@ public class MerchantRequestHandler extends LotroServerRequestHandler implements private final LotroCardBlueprintLibrary _library; private final LotroFormatLibrary _formatLibrary; - private static final Logger _log = Logger.getLogger(MerchantRequestHandler.class); + private static final Logger _log = LogManager.getLogger(MerchantRequestHandler.class); public MerchantRequestHandler(Map context) { super(context); diff --git a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/PlayerInfoRequestHandler.java b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/PlayerInfoRequestHandler.java index f394bcf41..608cb43a0 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/PlayerInfoRequestHandler.java +++ b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/PlayerInfoRequestHandler.java @@ -7,14 +7,14 @@ import com.gempukku.lotro.game.Player; import io.netty.handler.codec.http.HttpMethod; import io.netty.handler.codec.http.HttpRequest; import io.netty.handler.codec.http.QueryStringDecoder; -import org.apache.log4j.Logger; - +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import java.lang.reflect.Type; import java.util.Map; public class PlayerInfoRequestHandler extends LotroServerRequestHandler implements UriRequestHandler { - private static final Logger _log = Logger.getLogger(PlayerInfoRequestHandler.class); + private static final Logger _log = LogManager.getLogger(PlayerInfoRequestHandler.class); public PlayerInfoRequestHandler(Map context) { super(context); diff --git a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/PlayerStatsRequestHandler.java b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/PlayerStatsRequestHandler.java index 9bae07d0b..8ac46665b 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/PlayerStatsRequestHandler.java +++ b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/PlayerStatsRequestHandler.java @@ -8,8 +8,8 @@ import com.gempukku.lotro.game.Player; import io.netty.handler.codec.http.HttpMethod; import io.netty.handler.codec.http.HttpRequest; import io.netty.handler.codec.http.QueryStringDecoder; -import org.apache.log4j.Logger; -import org.w3c.dom.Document; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger;import org.w3c.dom.Document; import org.w3c.dom.Element; import javax.xml.parsers.DocumentBuilder; @@ -22,7 +22,7 @@ import java.util.Map; public class PlayerStatsRequestHandler extends LotroServerRequestHandler implements UriRequestHandler { private final GameHistoryService _gameHistoryService; - private static final Logger _log = Logger.getLogger(PlayerStatsRequestHandler.class); + private static final Logger _log = LogManager.getLogger(PlayerStatsRequestHandler.class); public PlayerStatsRequestHandler(Map context) { super(context); diff --git a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/PlaytestRequestHandler.java b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/PlaytestRequestHandler.java index 8ba871619..467043c50 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/PlaytestRequestHandler.java +++ b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/PlaytestRequestHandler.java @@ -11,8 +11,8 @@ import com.google.gson.Gson; import io.netty.handler.codec.http.HttpMethod; import io.netty.handler.codec.http.HttpRequest; import io.netty.handler.codec.http.multipart.HttpPostRequestDecoder; -import org.apache.log4j.Logger; -import org.w3c.dom.Document; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger;import org.w3c.dom.Document; import org.w3c.dom.Element; import javax.xml.parsers.DocumentBuilder; @@ -27,7 +27,7 @@ public class PlaytestRequestHandler extends LotroServerRequestHandler implements private final GameHistoryService _gameHistoryService; private final Gson JsonConvert = new Gson(); - private static final Logger _log = Logger.getLogger(PlaytestRequestHandler.class); + private static final Logger _log = LogManager.getLogger(PlaytestRequestHandler.class); public PlaytestRequestHandler(Map context) { super(context); diff --git a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/RegisterRequestHandler.java b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/RegisterRequestHandler.java index ef17f1b01..af5db0bc9 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/RegisterRequestHandler.java +++ b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/RegisterRequestHandler.java @@ -6,14 +6,14 @@ import com.gempukku.lotro.db.LoginInvalidException; import io.netty.handler.codec.http.HttpMethod; import io.netty.handler.codec.http.HttpRequest; import io.netty.handler.codec.http.multipart.HttpPostRequestDecoder; -import org.apache.log4j.Logger; - +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import java.lang.reflect.Type; import java.util.Map; public class RegisterRequestHandler extends LotroServerRequestHandler implements UriRequestHandler { - private static final Logger _log = Logger.getLogger(RegisterRequestHandler.class); + private static final Logger _log = LogManager.getLogger(RegisterRequestHandler.class); public RegisterRequestHandler(Map context) { super(context); } diff --git a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/ReplayRequestHandler.java b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/ReplayRequestHandler.java index abc87b6ef..30ef2ca62 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/ReplayRequestHandler.java +++ b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/ReplayRequestHandler.java @@ -14,8 +14,8 @@ import io.netty.handler.codec.http.HttpMethod; import io.netty.handler.codec.http.HttpRequest; import io.netty.handler.codec.http.multipart.HttpPostRequestDecoder; import io.netty.util.AsciiString; -import org.apache.log4j.Logger; - +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; @@ -33,7 +33,7 @@ public class ReplayRequestHandler extends LotroServerRequestHandler implements U private final GameRecorder _gameRecorder; private final DeckRenderer _deckRenderer; - private static final Logger _log = Logger.getLogger(ReplayRequestHandler.class); + private static final Logger _log = LogManager.getLogger(ReplayRequestHandler.class); public ReplayRequestHandler(Map context) { super(context); diff --git a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/ServerStatsRequestHandler.java b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/ServerStatsRequestHandler.java index 7762a7ed3..6383f66f8 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/ServerStatsRequestHandler.java +++ b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/ServerStatsRequestHandler.java @@ -9,8 +9,8 @@ import com.gempukku.lotro.game.Player; import io.netty.handler.codec.http.HttpMethod; import io.netty.handler.codec.http.HttpRequest; import io.netty.handler.codec.http.QueryStringDecoder; -import org.apache.log4j.Logger; - +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import java.lang.reflect.Type; import java.text.SimpleDateFormat; import java.time.ZoneOffset; @@ -22,7 +22,7 @@ import java.util.TimeZone; public class ServerStatsRequestHandler extends LotroServerRequestHandler implements UriRequestHandler { private final GameHistoryService _gameHistoryService; - private static final Logger _log = Logger.getLogger(ServerStatsRequestHandler.class); + private static final Logger _log = LogManager.getLogger(ServerStatsRequestHandler.class); public ServerStatsRequestHandler(Map context) { super(context); diff --git a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/SoloDraftRequestHandler.java b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/SoloDraftRequestHandler.java index 2f778a60d..07880f39c 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/SoloDraftRequestHandler.java +++ b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/SoloDraftRequestHandler.java @@ -21,8 +21,8 @@ import io.netty.handler.codec.http.HttpMethod; import io.netty.handler.codec.http.HttpRequest; import io.netty.handler.codec.http.QueryStringDecoder; import io.netty.handler.codec.http.multipart.HttpPostRequestDecoder; -import org.apache.log4j.Logger; -import org.w3c.dom.Document; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger;import org.w3c.dom.Document; import org.w3c.dom.Element; import javax.xml.parsers.DocumentBuilder; @@ -38,7 +38,7 @@ public class SoloDraftRequestHandler extends LotroServerRequestHandler implement private final ProductLibrary _productLibrary; private final LeagueService _leagueService; - private static final Logger _log = Logger.getLogger(SoloDraftRequestHandler.class); + private static final Logger _log = LogManager.getLogger(SoloDraftRequestHandler.class); public SoloDraftRequestHandler(Map context) { super(context); diff --git a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/StatusRequestHandler.java b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/StatusRequestHandler.java index 2ad2dfd0e..e8eab2cf3 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/StatusRequestHandler.java +++ b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/StatusRequestHandler.java @@ -7,8 +7,8 @@ import com.gempukku.lotro.game.GameHistoryService; import com.gempukku.lotro.hall.HallServer; import io.netty.handler.codec.http.HttpMethod; import io.netty.handler.codec.http.HttpRequest; -import org.apache.log4j.Logger; - +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import java.lang.reflect.Type; import java.time.ZoneOffset; import java.time.ZonedDateTime; @@ -19,7 +19,7 @@ public class StatusRequestHandler extends LotroServerRequestHandler implements U private final GameHistoryService _gameHistoryService; private final ChatServer _chatServer; - private static final Logger _log = Logger.getLogger(StatusRequestHandler.class); + private static final Logger _log = LogManager.getLogger(StatusRequestHandler.class); public StatusRequestHandler(Map context) { super(context); diff --git a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/TournamentRequestHandler.java b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/TournamentRequestHandler.java index 65ad23ebe..2c9f1ca41 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/TournamentRequestHandler.java +++ b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/TournamentRequestHandler.java @@ -15,8 +15,9 @@ import com.gempukku.lotro.tournament.Tournament; import com.gempukku.lotro.tournament.TournamentService; import io.netty.handler.codec.http.HttpMethod; import io.netty.handler.codec.http.HttpRequest; -import org.apache.commons.lang.StringEscapeUtils; -import org.apache.log4j.Logger; +import org.apache.commons.lang3.StringEscapeUtils; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import org.w3c.dom.Document; import org.w3c.dom.Element; @@ -39,7 +40,7 @@ public class TournamentRequestHandler extends LotroServerRequestHandler implemen private final SortAndFilterCards _sortAndFilterCards; private final DeckRenderer _deckRenderer; - private static final Logger _log = Logger.getLogger(TournamentRequestHandler.class); + private static final Logger _log = LogManager.getLogger(TournamentRequestHandler.class); public TournamentRequestHandler(Map context) { super(context); diff --git a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/UriRequestHandler.java b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/UriRequestHandler.java index c77871dc9..0159c3d17 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/UriRequestHandler.java +++ b/gemp-lotr/gemp-lotr-async/src/main/java/com/gempukku/lotro/async/handler/UriRequestHandler.java @@ -2,8 +2,8 @@ package com.gempukku.lotro.async.handler; import com.gempukku.lotro.async.ResponseWriter; import io.netty.handler.codec.http.HttpRequest; -import org.apache.log4j.Logger; - +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import java.lang.reflect.Type; import java.util.Map; diff --git a/gemp-lotr/gemp-lotr-async/src/main/resources/log4j.xml b/gemp-lotr/gemp-lotr-async/src/main/resources/log4j.xml deleted file mode 100644 index e538519ce..000000000 --- a/gemp-lotr/gemp-lotr-async/src/main/resources/log4j.xml +++ /dev/null @@ -1,73 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/gemp-lotr/gemp-lotr-async/src/main/resources/log4j2.xml b/gemp-lotr/gemp-lotr-async/src/main/resources/log4j2.xml new file mode 100644 index 000000000..f2566ae67 --- /dev/null +++ b/gemp-lotr/gemp-lotr-async/src/main/resources/log4j2.xml @@ -0,0 +1,55 @@ + + + + + + + + + %d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n + + + + + + + + + + %d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n + + + + + + + + + + + %d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/gemp-lotr/gemp-lotr-async/zip-web-descriptor.xml b/gemp-lotr/gemp-lotr-async/zip-web-descriptor.xml index 2954b5053..ff7d105b2 100644 --- a/gemp-lotr/gemp-lotr-async/zip-web-descriptor.xml +++ b/gemp-lotr/gemp-lotr-async/zip-web-descriptor.xml @@ -3,6 +3,7 @@ xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd "> false + async zip diff --git a/gemp-lotr/gemp-lotr-cards/pom.xml b/gemp-lotr/gemp-lotr-cards/pom.xml index d626aa7b1..553f563d5 100644 --- a/gemp-lotr/gemp-lotr-cards/pom.xml +++ b/gemp-lotr/gemp-lotr-cards/pom.xml @@ -7,7 +7,6 @@ 1.0-SNAPSHOT 4.0.0 - com.gempukku.lotro gemp-lotr-cards 1.0-SNAPSHOT @@ -23,9 +22,9 @@ ${project.version} - log4j - log4j - 1.2.17 + org.apache.logging.log4j + log4j-core + 2.23.1 \ No newline at end of file diff --git a/gemp-lotr/gemp-lotr-common/pom.xml b/gemp-lotr/gemp-lotr-common/pom.xml index 9aaad234e..70a5a3e55 100644 --- a/gemp-lotr/gemp-lotr-common/pom.xml +++ b/gemp-lotr/gemp-lotr-common/pom.xml @@ -7,7 +7,6 @@ 1.0-SNAPSHOT 4.0.0 - com.gempukku.lotro gemp-lotr-common 1.0-SNAPSHOT @@ -17,9 +16,9 @@ r03 - log4j - log4j - 1.2.17 + org.apache.logging.log4j + log4j-core + 2.23.1 junit @@ -28,31 +27,31 @@ test - mysql - mysql-connector-java - 8.0.30 + com.mysql + mysql-connector-j + 8.3.0 org.json json - 20220320 + 20240303 org.hjson hjson - 3.0.0 + 3.1.0 compile - com.alibaba - fastjson - 2.0.7 + com.alibaba.fastjson2 + fastjson2 + 2.0.48 compile commons-io commons-io - 2.6 + 2.16.1 compile diff --git a/gemp-lotr/gemp-lotr-common/src/main/java/com/gempukku/lotro/common/AppConfig.java b/gemp-lotr/gemp-lotr-common/src/main/java/com/gempukku/lotro/common/AppConfig.java index 78a3cd50d..0c4ceac80 100644 --- a/gemp-lotr/gemp-lotr-common/src/main/java/com/gempukku/lotro/common/AppConfig.java +++ b/gemp-lotr/gemp-lotr-common/src/main/java/com/gempukku/lotro/common/AppConfig.java @@ -1,6 +1,7 @@ package com.gempukku.lotro.common; -import org.apache.log4j.Logger; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import java.io.File; import java.io.FileInputStream; @@ -9,7 +10,7 @@ import java.nio.file.Paths; import java.util.Properties; public class AppConfig { - private static final Logger LOGGER = Logger.getLogger(AppConfig.class); + private static final Logger LOGGER = LogManager.getLogger(AppConfig.class); private static Properties _properties; private static File _root; diff --git a/gemp-lotr/gemp-lotr-common/src/main/java/com/gempukku/lotro/common/DBDefs.java b/gemp-lotr/gemp-lotr-common/src/main/java/com/gempukku/lotro/common/DBDefs.java index 241861f53..3b573c039 100644 --- a/gemp-lotr/gemp-lotr-common/src/main/java/com/gempukku/lotro/common/DBDefs.java +++ b/gemp-lotr/gemp-lotr-common/src/main/java/com/gempukku/lotro/common/DBDefs.java @@ -70,8 +70,15 @@ public class DBDefs { public String product_variant; public String product; public String source; - public ZonedDateTime created_date; - public ZonedDateTime modified_date; + public LocalDateTime created_date; + public LocalDateTime modified_date; + public ZonedDateTime GetUTCCreatedDate() { + return ZonedDateTime.of(created_date, ZoneId.of("UTC")); + } + + public ZonedDateTime GetUTCModifiedDate() { + return ZonedDateTime.of(modified_date, ZoneId.of("UTC")); + } public String notes; } diff --git a/gemp-lotr/gemp-lotr-common/src/main/java/com/gempukku/lotro/common/JSONDefs.java b/gemp-lotr/gemp-lotr-common/src/main/java/com/gempukku/lotro/common/JSONDefs.java index 4243254de..3ff56d786 100644 --- a/gemp-lotr/gemp-lotr-common/src/main/java/com/gempukku/lotro/common/JSONDefs.java +++ b/gemp-lotr/gemp-lotr-common/src/main/java/com/gempukku/lotro/common/JSONDefs.java @@ -8,18 +8,18 @@ public class JSONDefs { SELECTION, PACK, RANDOM, TENGWAR, RANDOM_FOIL, BOOSTER } - public String Name; - public PackType Type; - public boolean Recursive = false; - public List Items; - public Map Data; + public String name; + public PackType type; + public boolean recursive = false; + public List items; + public Map data; } public static class SealedTemplate { - public String Name; - public String ID; - public String Format; - public List> SeriesProduct; + public String name; + public String id; + public String format; + public List> seriesProduct; } public static class ItemStub { diff --git a/gemp-lotr/gemp-lotr-common/src/main/java/com/gempukku/polling/LongPollingSystem.java b/gemp-lotr/gemp-lotr-common/src/main/java/com/gempukku/polling/LongPollingSystem.java index 2d9ac0143..384ef0f2c 100644 --- a/gemp-lotr/gemp-lotr-common/src/main/java/com/gempukku/polling/LongPollingSystem.java +++ b/gemp-lotr/gemp-lotr-common/src/main/java/com/gempukku/polling/LongPollingSystem.java @@ -1,6 +1,7 @@ package com.gempukku.polling; -import org.apache.log4j.Logger; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import java.util.Collections; import java.util.HashSet; @@ -12,7 +13,7 @@ import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; public class LongPollingSystem { - private static final Logger _log = Logger.getLogger(LongPollingSystem.class); + private static final Logger _log = LogManager.getLogger(LongPollingSystem.class); private final Set _waitingActions = Collections.synchronizedSet(new HashSet<>()); diff --git a/gemp-lotr/gemp-lotr-common/src/main/java/com/gempukku/util/JsonUtils.java b/gemp-lotr/gemp-lotr-common/src/main/java/com/gempukku/util/JsonUtils.java index a5c667858..ccc4f30f1 100644 --- a/gemp-lotr/gemp-lotr-common/src/main/java/com/gempukku/util/JsonUtils.java +++ b/gemp-lotr/gemp-lotr-common/src/main/java/com/gempukku/util/JsonUtils.java @@ -1,6 +1,6 @@ package com.gempukku.util; -import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson2.JSON; import org.apache.commons.io.FilenameUtils; import org.hjson.JsonValue; @@ -36,8 +36,8 @@ public final class JsonUtils { public static List ConvertArray(Reader reader, Class clazz) throws IOException { final String json = ReadJson(reader); try { - T[] jsonList = (T[]) JSON.parseObject(json, clazz.arrayType()); - return Arrays.stream(jsonList).toList(); + var array = JSON.parseArray(json, clazz); + return array.stream().toList(); } catch(Exception ex) { diff --git a/gemp-lotr/gemp-lotr-images/pom.xml b/gemp-lotr/gemp-lotr-images/pom.xml index 183742314..df773ab52 100644 --- a/gemp-lotr/gemp-lotr-images/pom.xml +++ b/gemp-lotr/gemp-lotr-images/pom.xml @@ -16,9 +16,9 @@ 1.1.1 - log4j - log4j - 1.2.17 + org.apache.logging.log4j + log4j-core + 2.23.1 junit diff --git a/gemp-lotr/gemp-lotr-logic/pom.xml b/gemp-lotr/gemp-lotr-logic/pom.xml index 8829e633c..82d383ff7 100644 --- a/gemp-lotr/gemp-lotr-logic/pom.xml +++ b/gemp-lotr/gemp-lotr-logic/pom.xml @@ -7,7 +7,6 @@ 1.0-SNAPSHOT 4.0.0 - com.gempukku.lotro gemp-lotr-logic 1.0-SNAPSHOT @@ -25,12 +24,12 @@ commons-io commons-io - 2.11.0 + 2.16.1 - log4j - log4j - 1.2.17 + org.apache.logging.log4j + log4j-core + 2.23.1 junit @@ -39,14 +38,15 @@ test - commons-lang - commons-lang - 2.5 + org.apache.commons + commons-lang3 + 3.14.0 org.hjson hjson - 3.0.0 + 3.1.0 + compile com.alibaba @@ -54,5 +54,4 @@ 2.0.7 - \ No newline at end of file diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/game/LotroCardBlueprintLibrary.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/game/LotroCardBlueprintLibrary.java index c18b65dc5..3b858330d 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/game/LotroCardBlueprintLibrary.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/game/LotroCardBlueprintLibrary.java @@ -9,8 +9,8 @@ import com.gempukku.lotro.game.packs.SetDefinition; import com.gempukku.lotro.logic.GameUtils; import com.gempukku.util.JsonUtils; import org.apache.commons.io.IOUtils; -import org.apache.log4j.Logger; -import org.hjson.JsonValue; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger;import org.hjson.JsonValue; import org.json.simple.JSONObject; import org.json.simple.parser.JSONParser; import org.json.simple.parser.ParseException; @@ -22,7 +22,7 @@ import java.util.*; import java.util.concurrent.Semaphore; public class LotroCardBlueprintLibrary { - private static final Logger logger = Logger.getLogger(LotroCardBlueprintLibrary.class); + private static final Logger logger = LogManager.getLogger(LotroCardBlueprintLibrary.class); private final String[] _packageNames = new String[]{ diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/game/state/GameState.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/game/state/GameState.java index 7fb808e8f..cd512f971 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/game/state/GameState.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/game/state/GameState.java @@ -7,14 +7,14 @@ import com.gempukku.lotro.logic.PlayerOrder; import com.gempukku.lotro.logic.decisions.AwaitingDecision; import com.gempukku.lotro.logic.modifiers.ModifierFlag; import com.gempukku.lotro.logic.timing.GameStats; -import org.apache.log4j.Logger; - +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import java.security.InvalidParameterException; import java.util.*; import java.util.concurrent.ThreadLocalRandom; public class GameState { - private static final Logger _log = Logger.getLogger(GameState.class); + private static final Logger _log = LogManager.getLogger(GameState.class); private static final int LAST_MESSAGE_STORED_COUNT = 15; private PlayerOrder _playerOrder; diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/game/state/actions/DefaultActionsEnvironment.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/game/state/actions/DefaultActionsEnvironment.java index 5e6947f31..6d79d3883 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/game/state/actions/DefaultActionsEnvironment.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/game/state/actions/DefaultActionsEnvironment.java @@ -10,12 +10,12 @@ import com.gempukku.lotro.logic.timing.Action; import com.gempukku.lotro.logic.timing.ActionStack; import com.gempukku.lotro.logic.timing.Effect; import com.gempukku.lotro.logic.timing.EffectResult; -import org.apache.log4j.Logger; - +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import java.util.*; public class DefaultActionsEnvironment implements ActionsEnvironment { - private static final Logger LOG = Logger.getLogger(DefaultActionsEnvironment.class); + private static final Logger LOG = LogManager.getLogger(DefaultActionsEnvironment.class); private final LotroGame _lotroGame; private final ActionStack _actionStack; private final List _actionProxies = new LinkedList<>(); diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/modifiers/LoggingThreadLocal.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/modifiers/LoggingThreadLocal.java index 977999e31..436550cad 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/modifiers/LoggingThreadLocal.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/modifiers/LoggingThreadLocal.java @@ -1,10 +1,10 @@ package com.gempukku.lotro.logic.modifiers; import com.gempukku.lotro.game.PhysicalCard; -import org.apache.log4j.Logger; - +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; public class LoggingThreadLocal { - private static final Logger LOG = Logger.getLogger(LoggingThreadLocal.class); + private static final Logger LOG = LogManager.getLogger(LoggingThreadLocal.class); // private static ThreadLocal _logLocal = new ThreadLocal(); // private static ThreadLocal _start = new ThreadLocal(); // private static ThreadLocal _level = new ThreadLocal(); diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/DefaultLotroGame.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/DefaultLotroGame.java index c9d123f72..cccf79096 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/DefaultLotroGame.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/DefaultLotroGame.java @@ -14,12 +14,12 @@ import com.gempukku.lotro.logic.modifiers.ModifiersLogic; import com.gempukku.lotro.logic.modifiers.ModifiersQuerying; import com.gempukku.lotro.logic.timing.rules.CharacterDeathRule; 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.*; public class DefaultLotroGame implements LotroGame { - private static final Logger log = Logger.getLogger(DefaultLotroGame.class); + private static final Logger log = LogManager.getLogger(DefaultLotroGame.class); private final GameState _gameState; private final ModifiersLogic _modifiersLogic = new ModifiersLogic(); diff --git a/gemp-lotr/gemp-lotr-server/pom.xml b/gemp-lotr/gemp-lotr-server/pom.xml index 2d060ad3f..bfea9b047 100644 --- a/gemp-lotr/gemp-lotr-server/pom.xml +++ b/gemp-lotr/gemp-lotr-server/pom.xml @@ -21,14 +21,14 @@ 1.15.3 - log4j - log4j - 1.2.17 + org.apache.logging.log4j + log4j-core + 2.23.1 - mysql - mysql-connector-java - 8.0.29 + com.mysql + mysql-connector-j + 8.3.0 com.googlecode.json-simple @@ -36,19 +36,19 @@ 1.1.1 - commons-dbcp - commons-dbcp - 1.4 + org.apache.commons + commons-dbcp2 + 2.12.0 - commons-collections - commons-collections - 3.2.2 + org.apache.commons + commons-collections4 + 4.5.0-M1 - commons-lang - commons-lang - 2.6 + org.apache.commons + commons-lang3 + 3.14.0 com.sun.jersey @@ -76,24 +76,24 @@ org.mockito mockito-core - 4.7.0 + 5.11.0 test org.mockito mockito-inline - 4.7.0 + 5.2.0 test org.sql2o sql2o - 1.6.0 + 1.7.0 com.alibaba fastjson - 2.0.12 + 2.0.48 diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/AbstractServer.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/AbstractServer.java index 5f0daff21..ae1d71a55 100644 --- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/AbstractServer.java +++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/AbstractServer.java @@ -1,12 +1,12 @@ package com.gempukku.lotro; -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; public abstract class AbstractServer { - private static final Logger _logger = Logger.getLogger(AbstractServer.class); + private static final Logger _logger = LogManager.getLogger(AbstractServer.class); private static final ServerCleaner _cleaningTask = new ServerCleaner(); private boolean _started; diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/ServerCleaner.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/ServerCleaner.java index 38f897781..6f712258a 100644 --- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/ServerCleaner.java +++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/ServerCleaner.java @@ -1,13 +1,13 @@ package com.gempukku.lotro; -import org.apache.log4j.Logger; - +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import java.util.Collections; import java.util.HashSet; import java.util.Set; public class ServerCleaner { - private static final Logger LOG = Logger.getLogger(ServerCleaner.class); + private static final Logger LOG = LogManager.getLogger(ServerCleaner.class); private final Set _servers = Collections.synchronizedSet(new HashSet<>()); private CleaningThread _thr; diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/chat/ChatRoomMediator.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/chat/ChatRoomMediator.java index f2b9b04e2..f695adc1f 100644 --- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/chat/ChatRoomMediator.java +++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/chat/ChatRoomMediator.java @@ -5,7 +5,8 @@ import com.gempukku.lotro.SubscriptionExpiredException; import com.gempukku.lotro.db.IgnoreDAO; import com.gempukku.lotro.db.PlayerDAO; import com.gempukku.lotro.game.ChatCommunicationChannel; -import org.apache.log4j.Logger; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import java.sql.SQLException; import java.util.*; diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/collection/CachedCollectionDAO.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/collection/CachedCollectionDAO.java index d54ecb912..1290b60e7 100644 --- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/collection/CachedCollectionDAO.java +++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/collection/CachedCollectionDAO.java @@ -5,7 +5,7 @@ import com.gempukku.lotro.common.DBDefs; import com.gempukku.lotro.db.CollectionDAO; import com.gempukku.lotro.db.vo.CollectionType; import com.gempukku.lotro.game.CardCollection; -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/collection/DeckRenderer.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/collection/DeckRenderer.java index 530914b29..4cd61c188 100644 --- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/collection/DeckRenderer.java +++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/collection/DeckRenderer.java @@ -6,7 +6,7 @@ import com.gempukku.lotro.game.*; import com.gempukku.lotro.game.formats.LotroFormatLibrary; import com.gempukku.lotro.logic.GameUtils; import com.gempukku.lotro.logic.vo.LotroDeck; -import org.apache.commons.lang.StringEscapeUtils; +import org.apache.commons.lang3.StringEscapeUtils; import java.util.ArrayList; import java.util.Collections; @@ -104,11 +104,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) { @@ -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}