From af4dd2a771a97e9639f84ff7f3f53ceb960150f5 Mon Sep 17 00:00:00 2001 From: Darin Kelkhoff Date: Mon, 12 May 2025 09:16:52 -0500 Subject: [PATCH] Updated to decide which javalinMetaData to use (either from this object or the QInstance) --- .../javalin/QApplicationJavalinServer.java | 28 +++++++++++++++++-- 1 file changed, 25 insertions(+), 3 deletions(-) diff --git a/qqq-middleware-javalin/src/main/java/com/kingsrook/qqq/middleware/javalin/QApplicationJavalinServer.java b/qqq-middleware-javalin/src/main/java/com/kingsrook/qqq/middleware/javalin/QApplicationJavalinServer.java index b0ed8bce..998f5523 100644 --- a/qqq-middleware-javalin/src/main/java/com/kingsrook/qqq/middleware/javalin/QApplicationJavalinServer.java +++ b/qqq-middleware-javalin/src/main/java/com/kingsrook/qqq/middleware/javalin/QApplicationJavalinServer.java @@ -106,10 +106,10 @@ public class QApplicationJavalinServer { QInstance qInstance = application.defineValidatedQInstance(); - QJavalinMetaData qJavalinMetaData = QJavalinMetaData.of(qInstance); - if(qJavalinMetaData != null) + QJavalinMetaData javalinMetaData = getJavalinMetaDataToUse(qInstance); + if(javalinMetaData != null) { - addRouteProvidersFromMetaData(qJavalinMetaData); + addRouteProvidersFromMetaData(javalinMetaData); } service = Javalin.create(config -> @@ -234,6 +234,28 @@ public class QApplicationJavalinServer + /*************************************************************************** + ** + ***************************************************************************/ + private QJavalinMetaData getJavalinMetaDataToUse(QInstance qInstance) + { + if(this.javalinMetaData != null && QJavalinMetaData.of(qInstance) != null) + { + LOG.warn("JavalinMetaData is defined both in the QInstance and the QApplicationJavalinServer. The one from the QInstance will be ignored - the one from the QJavalinApplicationServer will be used."); + return (this.javalinMetaData); + } + else if (this.javalinMetaData != null) + { + return (this.javalinMetaData); + } + else + { + return QJavalinMetaData.of(qInstance); + } + } + + + /*************************************************************************** ** initial tests with the SimpleFileSystemDirectoryRouter would sometimes ** have a Content-Type:text/html;charset=null !