You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by gg...@apache.org on 2020/11/21 22:24:57 UTC

[logging-log4j2] 10/12: Use switch.

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

ggregory pushed a commit to branch release-2.x
in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git

commit 205227679e83aabfdeb1f4850c7169cd53134a52
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Sat Nov 21 16:46:57 2020 -0500

    Use switch.
---
 .../logging/log4j/core/util/CronExpression.java    | 78 ++++++++++++----------
 .../apache/logging/log4j/core/util/Transform.java  | 29 +++++---
 2 files changed, 61 insertions(+), 46 deletions(-)

diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/util/CronExpression.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/util/CronExpression.java
index 8a86da7..5097179 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/util/CronExpression.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/util/CronExpression.java
@@ -574,7 +574,8 @@ public final class CronExpression {
             return (i + 3);
         }
 
-        if (c == '?') {
+        switch (c) {
+        case '?':
             i++;
             if ((i + 1) < s.length()
                     && (s.charAt(i) != ' ' && s.charAt(i + 1) != '\t')) {
@@ -594,12 +595,10 @@ public final class CronExpression {
                             i);
                 }
             }
-
             addToSet(NO_SPEC_INT, -1, 0, type);
             return i;
-        }
-
-        if (c == '*' || c == '/') {
+        case '*':
+        case '/':
             if (c == '*' && (i + 1) >= s.length()) {
                 addToSet(ALL_SPEC_INT, -1, incr, type);
                 return i + 1;
@@ -637,10 +636,9 @@ public final class CronExpression {
             } else {
                 incr = 1;
             }
-
             addToSet(ALL_SPEC_INT, -1, incr, type);
             return i;
-        } else if (c == 'L') {
+        case 'L':
             i++;
             if (type == DAY_OF_MONTH) {
                 lastdayOfMonth = true;
@@ -667,23 +665,26 @@ public final class CronExpression {
                 }
             }
             return i;
-        } else if (c >= '0' && c <= '9') {
-            int val = Integer.parseInt(String.valueOf(c));
-            i++;
-            if (i >= s.length()) {
-                addToSet(val, -1, -1, type);
-            } else {
-                c = s.charAt(i);
-                if (c >= '0' && c <= '9') {
-                    final ValueSet vs = getValue(val, s, i);
-                    val = vs.value;
-                    i = vs.pos;
+        default:
+            if (c >= '0' && c <= '9') {
+                int val = Integer.parseInt(String.valueOf(c));
+                i++;
+                if (i >= s.length()) {
+                    addToSet(val, -1, -1, type);
+                } else {
+                    c = s.charAt(i);
+                    if (c >= '0' && c <= '9') {
+                        final ValueSet vs = getValue(val, s, i);
+                        val = vs.value;
+                        i = vs.pos;
+                    }
+                    i = checkNext(i, s, val, type);
+                    return i;
                 }
-                i = checkNext(i, s, val, type);
-                return i;
+            } else {
+                throw new ParseException("Unexpected character: " + c, i);
             }
-        } else {
-            throw new ParseException("Unexpected character: " + c, i);
+            break;
         }
 
         return i;
@@ -732,7 +733,8 @@ public final class CronExpression {
             return i;
         }
 
-        if (c == '#') {
+        switch (c) {
+        case '#':
             if (type != DAY_OF_WEEK) {
                 throw new ParseException("'#' option is not valid here. (pos=" + i + ")", i);
             }
@@ -747,14 +749,11 @@ public final class CronExpression {
                         "A numeric value between 1 and 5 must follow the '#' option",
                         i);
             }
-
             final TreeSet<Integer> set = getSet(type);
             set.add(val);
             i++;
             return i;
-        }
-
-        if (c == '-') {
+        case '-':
             i++;
             c = s.charAt(i);
             final int v = Integer.parseInt(String.valueOf(c));
@@ -794,9 +793,7 @@ public final class CronExpression {
                 addToSet(val, end, 1, type);
                 return i;
             }
-        }
-
-        if (c == '/') {
+        case '/':
             i++;
             c = s.charAt(i);
             final int v2 = Integer.parseInt(String.valueOf(c));
@@ -815,6 +812,8 @@ public final class CronExpression {
             } else {
                 throw new ParseException("Unexpected character '" + c + "' after '/'", i);
             }
+        default:
+            break;
         }
 
         addToSet(val, end, 0, type);
@@ -939,34 +938,43 @@ public final class CronExpression {
 
         final TreeSet<Integer> set = getSet(type);
 
-        if (type == SECOND || type == MINUTE) {
+        switch (type) {
+        case SECOND:
+        case MINUTE:
             if ((val < 0 || val > 59 || end > 59) && (val != ALL_SPEC_INT)) {
                 throw new ParseException(
                         "Minute and Second values must be between 0 and 59",
                         -1);
             }
-        } else if (type == HOUR) {
+            break;
+        case HOUR:
             if ((val < 0 || val > 23 || end > 23) && (val != ALL_SPEC_INT)) {
                 throw new ParseException(
                         "Hour values must be between 0 and 23", -1);
             }
-        } else if (type == DAY_OF_MONTH) {
+            break;
+        case DAY_OF_MONTH:
             if ((val < 1 || val > 31 || end > 31) && (val != ALL_SPEC_INT)
                     && (val != NO_SPEC_INT)) {
                 throw new ParseException(
                         "Day of month values must be between 1 and 31", -1);
             }
-        } else if (type == MONTH) {
+            break;
+        case MONTH:
             if ((val < 1 || val > 12 || end > 12) && (val != ALL_SPEC_INT)) {
                 throw new ParseException(
                         "Month values must be between 1 and 12", -1);
             }
-        } else if (type == DAY_OF_WEEK) {
+            break;
+        case DAY_OF_WEEK:
             if ((val == 0 || val > 7 || end > 7) && (val != ALL_SPEC_INT)
                     && (val != NO_SPEC_INT)) {
                 throw new ParseException(
                         "Day-of-Week values must be between 1 and 7", -1);
             }
+            break;
+        default:
+            break;
         }
 
         if ((incr == 0 || incr == -1) && val != ALL_SPEC_INT) {
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/util/Transform.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/util/Transform.java
index 90f3a39..83a2784 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/util/Transform.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/util/Transform.java
@@ -64,17 +64,24 @@ public final class Transform {
             final char ch = input.charAt(i);
             if (ch > '>') {
                 buf.append(ch);
-            } else if (ch == '<') {
-                buf.append("&lt;");
-            } else if (ch == '>') {
-                buf.append("&gt;");
-            } else if (ch == '&') {
-                buf.append("&amp;");
-            } else if (ch == '"') {
-                buf.append("&quot;");
-            } else {
-                buf.append(ch);
-            }
+            } else
+                switch (ch) {
+                case '<':
+                    buf.append("&lt;");
+                    break;
+                case '>':
+                    buf.append("&gt;");
+                    break;
+                case '&':
+                    buf.append("&amp;");
+                    break;
+                case '"':
+                    buf.append("&quot;");
+                    break;
+                default:
+                    buf.append(ch);
+                    break;
+                }
         }
         return buf.toString();
     }