This is an automated email from the ASF dual-hosted git repository.

rzo1 pushed a commit to branch tomee-8.x
in repository https://gitbox.apache.org/repos/asf/tomee.git


The following commit(s) were added to refs/heads/tomee-8.x by this push:
     new 14a034cc95 TOMEE-4014 - Re-add "tomee.keep-server-info"
14a034cc95 is described below

commit 14a034cc9528247d2c30c052412e730d64dea094
Author: Richard Zowalla <[email protected]>
AuthorDate: Mon Dec 19 10:06:27 2022 +0100

    TOMEE-4014 - Re-add "tomee.keep-server-info"
---
 .../java/org/apache/catalina/util/ServerInfo.java   | 21 ++++++++++++++++-----
 .../org/apache/tomee/catalina/ServerListener.java   |  5 -----
 2 files changed, 16 insertions(+), 10 deletions(-)

diff --git 
a/tomee/apache-tomee/src/patch/java/org/apache/catalina/util/ServerInfo.java 
b/tomee/apache-tomee/src/patch/java/org/apache/catalina/util/ServerInfo.java
index 3bfc21b404..7239364917 100644
--- a/tomee/apache-tomee/src/patch/java/org/apache/catalina/util/ServerInfo.java
+++ b/tomee/apache-tomee/src/patch/java/org/apache/catalina/util/ServerInfo.java
@@ -76,17 +76,28 @@ public class ServerInfo {
             number = "9.0.x";
         }
 
+        // TOMEE-4014 - PATCH START
         try {
-            final int slash = info.indexOf('/');
-            Class<?> versionClass = 
Class.forName("org.apache.openejb.util.OpenEjbVersion");
-            Object instance = 
versionClass.getDeclaredMethod("get").invoke(null);
-            final String tomeeVersion = (String) 
versionClass.getDeclaredMethod("getVersion").invoke(instance);
+            final Class<?> systemInstanceClass = 
Class.forName("org.apache.openejb.loader.SystemInstance");
+            final Class<?> optionsClass = 
Class.forName("org.apache.openejb.loader.Options");
+            final Object systemInstance = 
systemInstanceClass.getDeclaredMethod("get").invoke(null);
+            final Object optionsInstance = 
systemInstanceClass.getDeclaredMethod("getOptions").invoke(systemInstance);
 
-            info = info.substring(0, slash) + " (TomEE)" + 
info.substring(slash) + " (" + tomeeVersion + ")";
+            final boolean keepServerInfo = (boolean) 
optionsClass.getDeclaredMethod("get", String.class, 
boolean.class).invoke(optionsInstance, "tomee.keep-server-info", false);
+
+            if (!keepServerInfo) {
+                final int slash = info.indexOf('/');
+                final Class<?> versionClass = 
Class.forName("org.apache.openejb.util.OpenEjbVersion");
+                final Object instance = 
versionClass.getDeclaredMethod("get").invoke(null);
+                final String tomeeVersion = (String) 
versionClass.getDeclaredMethod("getVersion").invoke(instance);
+
+                info = info.substring(0, slash) + " (TomEE)" + 
info.substring(slash) + " (" + tomeeVersion + ")";
+            }
         } catch (Throwable t) {
             // ignore
             t.printStackTrace();
         }
+        // TOMEE-4041 - PATCH END
 
         serverInfo = info;
         serverBuilt = built;
diff --git 
a/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/ServerListener.java
 
b/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/ServerListener.java
index 56d77d030f..9384fcaf73 100644
--- 
a/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/ServerListener.java
+++ 
b/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/ServerListener.java
@@ -20,21 +20,17 @@ import org.apache.catalina.Lifecycle;
 import org.apache.catalina.LifecycleEvent;
 import org.apache.catalina.LifecycleListener;
 import org.apache.catalina.core.StandardServer;
-import org.apache.catalina.util.ServerInfo;
 import org.apache.openejb.classloader.ClassLoaderConfigurer;
 import org.apache.openejb.config.QuickJarsTxtParser;
 import org.apache.openejb.loader.IO;
 import org.apache.openejb.loader.ProvisioningUtil;
 import org.apache.openejb.loader.SystemInstance;
-import org.apache.openejb.util.OpenEjbVersion;
 import org.apache.tomee.loader.TomcatHelper;
 
 import java.io.File;
 import java.io.IOException;
-import java.lang.reflect.Field;
 import java.lang.reflect.InvocationTargetException;
 import java.lang.reflect.Method;
-import java.lang.reflect.Modifier;
 import java.net.MalformedURLException;
 import java.net.URL;
 import java.net.URLClassLoader;
@@ -48,7 +44,6 @@ import java.util.logging.Logger;
 import static java.util.Arrays.asList;
 
 // this listener is the real tomee one (the OpenEJBListener is more tomcat 
oriented)
-// so it even changes the server info
 public class ServerListener implements LifecycleListener {
     private static final Logger LOGGER = 
Logger.getLogger(ServerListener.class.getName());
 

Reply via email to