This is an automated email from the ASF dual-hosted git repository. fhanik pushed a commit to branch 9.0.x in repository https://gitbox.apache.org/repos/asf/tomcat.git
commit 6a73695fa6d024ed9fc4adeb32073cbd94309c51 Author: Filip Hanik <fha...@pivotal.io> AuthorDate: Tue Jul 21 14:04:57 2020 -0700 Simpler way to determine Graal runtime Also, allows to mock the behavior https://www.graalvm.org/sdk/javadoc/org/graalvm/nativeimage/ImageInfo.html#PROPERTY_IMAGE_CODE_KEY --- java/org/apache/jasper/runtime/JspRuntimeLibrary.java | 16 +--------------- java/org/apache/naming/NamingContext.java | 15 +-------------- java/org/apache/tomcat/util/compat/GraalCompat.java | 15 +-------------- 3 files changed, 3 insertions(+), 43 deletions(-) diff --git a/java/org/apache/jasper/runtime/JspRuntimeLibrary.java b/java/org/apache/jasper/runtime/JspRuntimeLibrary.java index c0a7a63..d710f84 100644 --- a/java/org/apache/jasper/runtime/JspRuntimeLibrary.java +++ b/java/org/apache/jasper/runtime/JspRuntimeLibrary.java @@ -56,21 +56,7 @@ import org.apache.tomcat.InstanceManager; */ public class JspRuntimeLibrary { - public static final boolean GRAAL; - - static { - boolean result = false; - try { - Class<?> nativeImageClazz = Class.forName("org.graalvm.nativeimage.ImageInfo"); - result = nativeImageClazz.getMethod("inImageCode").invoke(null) != null; - // Note: This will also be true for the Graal substrate VM - } catch (ClassNotFoundException e) { - // Must be Graal - } catch (ReflectiveOperationException | IllegalArgumentException e) { - // Should never happen - } - GRAAL = result; - } + public static final boolean GRAAL = System.getProperty("org.graalvm.nativeimage.imagecode") != null; /** * Returns the value of the javax.servlet.error.exception request diff --git a/java/org/apache/naming/NamingContext.java b/java/org/apache/naming/NamingContext.java index 0471279..40f4085 100644 --- a/java/org/apache/naming/NamingContext.java +++ b/java/org/apache/naming/NamingContext.java @@ -792,20 +792,7 @@ public class NamingContext implements Context { // ------------------------------------------------------ Protected Methods - private static final boolean GRAAL; - - static { - boolean result = false; - try { - Class<?> nativeImageClazz = Class.forName("org.graalvm.nativeimage.ImageInfo"); - result = Boolean.TRUE.equals(nativeImageClazz.getMethod("inImageCode").invoke(null)); - } catch (ClassNotFoundException e) { - // Must be Graal - } catch (ReflectiveOperationException | IllegalArgumentException e) { - // Should never happen - } - GRAAL = result; - } + private static final boolean GRAAL = System.getProperty("org.graalvm.nativeimage.imagecode") != null; /** * Retrieves the named object. diff --git a/java/org/apache/tomcat/util/compat/GraalCompat.java b/java/org/apache/tomcat/util/compat/GraalCompat.java index 9fb835a..e3cb09d 100644 --- a/java/org/apache/tomcat/util/compat/GraalCompat.java +++ b/java/org/apache/tomcat/util/compat/GraalCompat.java @@ -20,20 +20,7 @@ import java.io.IOException; class GraalCompat extends Jre9Compat { - private static final boolean GRAAL; - - static { - boolean result = false; - try { - Class<?> nativeImageClazz = Class.forName("org.graalvm.nativeimage.ImageInfo"); - result = Boolean.TRUE.equals(nativeImageClazz.getMethod("inImageCode").invoke(null)); - } catch (ClassNotFoundException e) { - // Must be Graal - } catch (ReflectiveOperationException | IllegalArgumentException e) { - // Should never happen - } - GRAAL = result; - } + private static final boolean GRAAL = System.getProperty("org.graalvm.nativeimage.imagecode") != null; static boolean isSupported() { // This property does not exist for a native image --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org