You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by rg...@apache.org on 2017/02/01 08:42:00 UTC

logging-log4j2 git commit: Fix Java 9 error

Repository: logging-log4j2
Updated Branches:
  refs/heads/master f7dd76ede -> 7164e8b02


Fix Java 9 error


Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/7164e8b0
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/7164e8b0
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/7164e8b0

Branch: refs/heads/master
Commit: 7164e8b02fe5bbb50c9e301e1233cad8818bc6fb
Parents: f7dd76e
Author: Ralph Goers <ra...@dslextreme.com>
Authored: Wed Feb 1 01:41:46 2017 -0700
Committer: Ralph Goers <ra...@dslextreme.com>
Committed: Wed Feb 1 01:41:46 2017 -0700

----------------------------------------------------------------------
 .../org/apache/logging/log4j/util/Constants.java  | 18 ++++++++++++++++++
 .../log4j/message/FormattedMessageTest.java       |  5 ++++-
 2 files changed, 22 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/7164e8b0/log4j-api/src/main/java/org/apache/logging/log4j/util/Constants.java
----------------------------------------------------------------------
diff --git a/log4j-api/src/main/java/org/apache/logging/log4j/util/Constants.java b/log4j-api/src/main/java/org/apache/logging/log4j/util/Constants.java
index 1614057..ab300bf 100644
--- a/log4j-api/src/main/java/org/apache/logging/log4j/util/Constants.java
+++ b/log4j-api/src/main/java/org/apache/logging/log4j/util/Constants.java
@@ -40,6 +40,8 @@ public final class Constants {
     public static final boolean ENABLE_THREADLOCALS = !IS_WEB_APP && PropertiesUtil.getProperties().getBooleanProperty(
             "log4j2.enable.threadlocals", true);
 
+    public static final int JAVA_MAJOR_VERSION = getMajorVersion();
+
     /**
      * Determines if a named Class can be loaded or not.
      *
@@ -59,4 +61,20 @@ public final class Constants {
      */
     private Constants() {
     }
+
+    private static int getMajorVersion() {
+        final String version = System.getProperty("java.version");
+        final String[] parts = version.split("-|\\.");
+        boolean isJEP223;
+        try {
+            final int token = Integer.parseInt(parts[0]);
+            isJEP223 = token != 1;
+            if (isJEP223) {
+                return token;
+            }
+            return Integer.parseInt(parts[1]);
+        } catch (final Exception ex) {
+            return 0;
+        }
+    }
 }

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/7164e8b0/log4j-api/src/test/java/org/apache/logging/log4j/message/FormattedMessageTest.java
----------------------------------------------------------------------
diff --git a/log4j-api/src/test/java/org/apache/logging/log4j/message/FormattedMessageTest.java b/log4j-api/src/test/java/org/apache/logging/log4j/message/FormattedMessageTest.java
index 0a24ca9..061aaeb 100644
--- a/log4j-api/src/test/java/org/apache/logging/log4j/message/FormattedMessageTest.java
+++ b/log4j-api/src/test/java/org/apache/logging/log4j/message/FormattedMessageTest.java
@@ -17,6 +17,7 @@
 package org.apache.logging.log4j.message;
 
 import org.apache.logging.log4j.junit.Mutable;
+import org.apache.logging.log4j.util.Constants;
 import org.junit.Test;
 
 import static org.junit.Assert.*;
@@ -28,6 +29,8 @@ import java.util.Locale;
  */
 public class FormattedMessageTest {
 
+    private static final String SPACE = Constants.JAVA_MAJOR_VERSION < 9 ? " " : "\u00a0";
+
     private static final int LOOP_CNT = 500;
     String[] array = new String[LOOP_CNT];
 
@@ -67,7 +70,7 @@ public class FormattedMessageTest {
         final String testMsg = "Test message {0,number,currency}";
         final FormattedMessage msg = new FormattedMessage(Locale.FRANCE, testMsg, 12);
         final String result = msg.getFormattedMessage();
-        final String expected = "Test message 12,00 \u20ac";
+        final String expected = "Test message 12,00" + SPACE +"\u20ac";
         assertEquals(expected, result);
     }