You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2022/11/07 16:20:47 UTC

[commons-net] 07/09: Use switch instead of cascading if-else chain

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

ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-net.git

commit f3acec7241c2c285861170e62b9c4a9b8e5cac5d
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Mon Nov 7 11:11:53 2022 -0500

    Use switch instead of cascading if-else chain
---
 .../commons/net/ftp/parser/MVSFTPEntryParser.java       | 17 ++++++++---------
 .../commons/net/io/DotTerminatedMessageReader.java      | 12 +++++++-----
 .../org/apache/commons/net/telnet/TelnetClientTest.java | 15 +++++++++++----
 3 files changed, 26 insertions(+), 18 deletions(-)

diff --git a/src/main/java/org/apache/commons/net/ftp/parser/MVSFTPEntryParser.java b/src/main/java/org/apache/commons/net/ftp/parser/MVSFTPEntryParser.java
index d961b77d..4b974941 100644
--- a/src/main/java/org/apache/commons/net/ftp/parser/MVSFTPEntryParser.java
+++ b/src/main/java/org/apache/commons/net/ftp/parser/MVSFTPEntryParser.java
@@ -288,20 +288,19 @@ public class MVSFTPEntryParser extends ConfigurableFTPFileEntryParserImpl {
      */
     @Override
     public FTPFile parseFTPEntry(final String entry) {
-        if (isType == FILE_LIST_TYPE) {
+        switch (isType) {
+        case FILE_LIST_TYPE:
             return parseFileList(entry);
-        }
-        if (isType == MEMBER_LIST_TYPE) {
+        case MEMBER_LIST_TYPE:
             return parseMemberList(entry);
-        }
-        if (isType == UNIX_LIST_TYPE) {
+        case UNIX_LIST_TYPE:
             return unixFTPEntryParser.parseFTPEntry(entry);
-        }
-        if (isType == JES_LEVEL_1_LIST_TYPE) {
+        case JES_LEVEL_1_LIST_TYPE:
             return parseJeslevel1List(entry);
-        }
-        if (isType == JES_LEVEL_2_LIST_TYPE) {
+        case JES_LEVEL_2_LIST_TYPE:
             return parseJeslevel2List(entry);
+        default:
+            break;
         }
 
         return null;
diff --git a/src/main/java/org/apache/commons/net/io/DotTerminatedMessageReader.java b/src/main/java/org/apache/commons/net/io/DotTerminatedMessageReader.java
index e56c52fa..d8d76c5d 100644
--- a/src/main/java/org/apache/commons/net/io/DotTerminatedMessageReader.java
+++ b/src/main/java/org/apache/commons/net/io/DotTerminatedMessageReader.java
@@ -101,16 +101,15 @@ public final class DotTerminatedMessageReader extends BufferedReader {
                 if (chint == DOT) { // Have DOT
                     mark(2); // need to check for CR LF or DOT
                     chint = super.read();
-                    if (chint == NetConstants.EOS) { // Should not happen
+                    switch (chint) {
+                    case NetConstants.EOS:
                         // new Throwable("Trailing DOT").printStackTrace();
                         eof = true;
                         return DOT; // return the trailing DOT
-                    }
-                    if (chint == DOT) { // Have DOT DOT
+                    case DOT:
                         // no need to reset as we want to lose the first DOT
                         return chint; // i.e. DOT
-                    }
-                    if (chint == CR) { // Have DOT CR
+                    case CR:
                         chint = super.read();
                         if (chint == NetConstants.EOS) { // Still only DOT CR - should not happen
                             // new Throwable("Trailing DOT CR").printStackTrace();
@@ -123,6 +122,9 @@ public final class DotTerminatedMessageReader extends BufferedReader {
                             // Do we need to clear the mark somehow?
                             return NetConstants.EOS;
                         }
+                        break;
+                    default:
+                        break;
                     }
                     // Should not happen - lone DOT at beginning
                     // new Throwable("Lone DOT followed by "+(char)chint).printStackTrace();
diff --git a/src/test/java/org/apache/commons/net/telnet/TelnetClientTest.java b/src/test/java/org/apache/commons/net/telnet/TelnetClientTest.java
index ae60b2ff..298076e8 100644
--- a/src/test/java/org/apache/commons/net/telnet/TelnetClientTest.java
+++ b/src/test/java/org/apache/commons/net/telnet/TelnetClientTest.java
@@ -107,14 +107,21 @@ public class TelnetClientTest extends TestCase implements TelnetNotificationHand
      */
     @Override
     public void receivedNegotiation(final int negotiation_code, final int option_code) {
-        if (negotiation_code == TelnetNotificationHandler.RECEIVED_DO) {
+        switch (negotiation_code) {
+        case TelnetNotificationHandler.RECEIVED_DO:
             numdo++;
-        } else if (negotiation_code == TelnetNotificationHandler.RECEIVED_DONT) {
+            break;
+        case TelnetNotificationHandler.RECEIVED_DONT:
             numdont++;
-        } else if (negotiation_code == TelnetNotificationHandler.RECEIVED_WILL) {
+            break;
+        case TelnetNotificationHandler.RECEIVED_WILL:
             numwill++;
-        } else if (negotiation_code == TelnetNotificationHandler.RECEIVED_WONT) {
+            break;
+        case TelnetNotificationHandler.RECEIVED_WONT:
             numwont++;
+            break;
+        default:
+            break;
         }
     }