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

mawiesne pushed a commit to branch 
OPENNLP-1674-Make-use-of-enhanced-switch-expression-introduced-in-Java-14
in repository https://gitbox.apache.org/repos/asf/opennlp.git

commit d962feb36631f1b1b0c0c7c13b1bf8da00bbd88b
Author: Martin Wiesner <[email protected]>
AuthorDate: Thu Dec 19 20:24:39 2024 +0100

    OPENNLP-1674 Make use of enhanced switch expression introduced in Java 14
---
 .../tools/formats/Conll02NameSampleStream.java     | 23 +++++++--------------
 .../tools/formats/EvalitaNameSampleStream.java     | 23 +++++++--------------
 .../conllu/ConlluLemmaSampleStreamFactory.java     | 17 +++++----------
 .../conllu/ConlluPOSSampleStreamFactory.java       | 17 +++++----------
 .../tools/formats/conllu/ConlluWordLine.java       | 13 +++++-------
 .../opennlp/tools/ml/model/DataIndexerFactory.java | 24 +++++++---------------
 .../java/opennlp/tools/stemmer/PorterStemmer.java  | 17 +++++----------
 .../tools/tokenize/lang/en/TokenSampleStream.java  | 21 +++++++------------
 8 files changed, 48 insertions(+), 107 deletions(-)

diff --git 
a/opennlp-tools/src/main/java/opennlp/tools/formats/Conll02NameSampleStream.java
 
b/opennlp-tools/src/main/java/opennlp/tools/formats/Conll02NameSampleStream.java
index ef6de3b9..7feac5b4 100644
--- 
a/opennlp-tools/src/main/java/opennlp/tools/formats/Conll02NameSampleStream.java
+++ 
b/opennlp-tools/src/main/java/opennlp/tools/formats/Conll02NameSampleStream.java
@@ -111,22 +111,13 @@ public class Conll02NameSampleStream implements 
ObjectStream<NameSample> {
 
     String type = beginTag.substring(2);
 
-    switch (type) {
-      case "PER":
-        type = "person";
-        break;
-      case "LOC":
-        type = "location";
-        break;
-      case "MISC":
-        type = "misc";
-        break;
-      case "ORG":
-        type = "organization";
-        break;
-      default:
-        throw new InvalidFormatException("Unknown type: " + type);
-    }
+    type = switch (type) {
+      case "PER" -> "person";
+      case "LOC" -> "location";
+      case "MISC" -> "misc";
+      case "ORG" -> "organization";
+      default -> throw new InvalidFormatException("Unknown type: " + type);
+    };
 
     return new Span(begin, end, type);
   }
diff --git 
a/opennlp-tools/src/main/java/opennlp/tools/formats/EvalitaNameSampleStream.java
 
b/opennlp-tools/src/main/java/opennlp/tools/formats/EvalitaNameSampleStream.java
index 52b7f549..76574500 100644
--- 
a/opennlp-tools/src/main/java/opennlp/tools/formats/EvalitaNameSampleStream.java
+++ 
b/opennlp-tools/src/main/java/opennlp/tools/formats/EvalitaNameSampleStream.java
@@ -89,22 +89,13 @@ public class EvalitaNameSampleStream implements 
ObjectStream<NameSample> {
 
     String type = beginTag.substring(2);
 
-    switch (type) {
-      case "PER":
-        type = "person";
-        break;
-      case "LOC":
-        type = "location";
-        break;
-      case "GPE":
-        type = "gpe";
-        break;
-      case "ORG":
-        type = "organization";
-        break;
-      default:
-        throw new InvalidFormatException("Unknown type: " + type);
-    }
+    type = switch (type) {
+      case "PER" -> "person";
+      case "LOC" -> "location";
+      case "GPE" -> "gpe";
+      case "ORG" -> "organization";
+      default -> throw new InvalidFormatException("Unknown type: " + type);
+    };
 
     return new Span(begin, end, type);
   }
diff --git 
a/opennlp-tools/src/main/java/opennlp/tools/formats/conllu/ConlluLemmaSampleStreamFactory.java
 
b/opennlp-tools/src/main/java/opennlp/tools/formats/conllu/ConlluLemmaSampleStreamFactory.java
index 452ae15c..c7b1f77b 100644
--- 
a/opennlp-tools/src/main/java/opennlp/tools/formats/conllu/ConlluLemmaSampleStreamFactory.java
+++ 
b/opennlp-tools/src/main/java/opennlp/tools/formats/conllu/ConlluLemmaSampleStreamFactory.java
@@ -56,18 +56,11 @@ public class ConlluLemmaSampleStreamFactory<P> extends 
AbstractSampleStreamFacto
   public ObjectStream<LemmaSample> create(String[] args) {
     Parameters params = ArgumentParser.parse(args, Parameters.class);
 
-    ConlluTagset tagset;
-
-    switch (params.getTagset()) {
-      case "u":
-        tagset = ConlluTagset.U;
-        break;
-      case  "x":
-        tagset = ConlluTagset.X;
-        break;
-      default:
-        throw new TerminateToolException(-1, "Unknown tagset parameter: " + 
params.getTagset());
-    }
+    ConlluTagset tagset = switch (params.getTagset()) {
+      case "u" -> ConlluTagset.U;
+      case "x" -> ConlluTagset.X;
+      default -> throw new TerminateToolException(-1, "Unknown tagset 
parameter: " + params.getTagset());
+    };
 
     InputStreamFactory inFactory =
         CmdLineUtil.createInputStreamFactory(params.getData());
diff --git 
a/opennlp-tools/src/main/java/opennlp/tools/formats/conllu/ConlluPOSSampleStreamFactory.java
 
b/opennlp-tools/src/main/java/opennlp/tools/formats/conllu/ConlluPOSSampleStreamFactory.java
index 76a3277c..6601dbb6 100644
--- 
a/opennlp-tools/src/main/java/opennlp/tools/formats/conllu/ConlluPOSSampleStreamFactory.java
+++ 
b/opennlp-tools/src/main/java/opennlp/tools/formats/conllu/ConlluPOSSampleStreamFactory.java
@@ -57,18 +57,11 @@ public class ConlluPOSSampleStreamFactory<P> extends 
AbstractSampleStreamFactory
   public ObjectStream<POSSample> create(String[] args) {
     Parameters params = ArgumentParser.parse(args, Parameters.class);
 
-    ConlluTagset tagset;
-
-    switch (params.getTagset()) {
-      case "u":
-        tagset = ConlluTagset.U;
-        break;
-      case  "x":
-        tagset = ConlluTagset.X;
-        break;
-      default:
-        throw new TerminateToolException(-1, "Unknown tagset parameter: " + 
params.getTagset());
-    }
+    ConlluTagset tagset = switch (params.getTagset()) {
+      case "u" -> ConlluTagset.U;
+      case "x" -> ConlluTagset.X;
+      default -> throw new TerminateToolException(-1, "Unknown tagset 
parameter: " + params.getTagset());
+    };
 
     InputStreamFactory inFactory =
         CmdLineUtil.createInputStreamFactory(params.getData());
diff --git 
a/opennlp-tools/src/main/java/opennlp/tools/formats/conllu/ConlluWordLine.java 
b/opennlp-tools/src/main/java/opennlp/tools/formats/conllu/ConlluWordLine.java
index 0e3129f3..900d637e 100644
--- 
a/opennlp-tools/src/main/java/opennlp/tools/formats/conllu/ConlluWordLine.java
+++ 
b/opennlp-tools/src/main/java/opennlp/tools/formats/conllu/ConlluWordLine.java
@@ -97,14 +97,11 @@ public class ConlluWordLine {
    * @throws IllegalStateException Thrown if a non-supported {@link 
ConlluTagset} was specified.
    */
   public String getPosTag(ConlluTagset tagset) {
-    switch (tagset) {
-      case U:
-        return uPosTag;
-      case X:
-        return xPosTag;
-      default:
-        throw new IllegalStateException("Unexpected tagset value: " + tagset);
-    }
+    return switch (tagset) {
+      case U -> uPosTag;
+      case X -> xPosTag;
+      default -> throw new IllegalStateException("Unexpected tagset value: " + 
tagset);
+    };
   }
 
   /**
diff --git 
a/opennlp-tools/src/main/java/opennlp/tools/ml/model/DataIndexerFactory.java 
b/opennlp-tools/src/main/java/opennlp/tools/ml/model/DataIndexerFactory.java
index d14b2f2a..1e491148 100644
--- a/opennlp-tools/src/main/java/opennlp/tools/ml/model/DataIndexerFactory.java
+++ b/opennlp-tools/src/main/java/opennlp/tools/ml/model/DataIndexerFactory.java
@@ -53,24 +53,14 @@ public class DataIndexerFactory {
       reportMap = new HashMap<>();
     }
 
-    DataIndexer indexer;
-    switch (indexerParam) {
-      case AbstractEventTrainer.DATA_INDEXER_ONE_PASS_VALUE:
-        indexer = new OnePassDataIndexer();
-        break;
-
-      case AbstractEventTrainer.DATA_INDEXER_TWO_PASS_VALUE:
-        indexer = new TwoPassDataIndexer();
-        break;
-
-      case AbstractEventTrainer.DATA_INDEXER_ONE_PASS_REAL_VALUE:
-        indexer = new OnePassRealValueDataIndexer();
-        break;
-
-      default:
+    DataIndexer indexer = switch (indexerParam) {
+      case AbstractEventTrainer.DATA_INDEXER_ONE_PASS_VALUE -> new 
OnePassDataIndexer();
+      case AbstractEventTrainer.DATA_INDEXER_TWO_PASS_VALUE -> new 
TwoPassDataIndexer();
+      case AbstractEventTrainer.DATA_INDEXER_ONE_PASS_REAL_VALUE -> new 
OnePassRealValueDataIndexer();
+      default ->
         // if the user passes in a class name for the indexer, try to 
instantiate the class.
-        indexer = ExtensionLoader.instantiateExtension(DataIndexer.class, 
indexerParam);
-    }
+              ExtensionLoader.instantiateExtension(DataIndexer.class, 
indexerParam);
+    };
 
     indexer.init(parameters, reportMap);
 
diff --git 
a/opennlp-tools/src/main/java/opennlp/tools/stemmer/PorterStemmer.java 
b/opennlp-tools/src/main/java/opennlp/tools/stemmer/PorterStemmer.java
index f57e3127..623a2d3d 100644
--- a/opennlp-tools/src/main/java/opennlp/tools/stemmer/PorterStemmer.java
+++ b/opennlp-tools/src/main/java/opennlp/tools/stemmer/PorterStemmer.java
@@ -119,18 +119,11 @@ public class PorterStemmer implements Stemmer {
   /* cons(i) is true <=> b[i] is a consonant. */
 
   private boolean cons(int i) {
-    switch (b[i]) {
-      case 'a':
-      case 'e':
-      case 'i':
-      case 'o':
-      case 'u':
-        return false;
-      case 'y':
-        return (i == k0) || !cons(i - 1);
-      default:
-        return true;
-    }
+    return switch (b[i]) {
+      case 'a', 'e', 'i', 'o', 'u' -> false;
+      case 'y' -> (i == k0) || !cons(i - 1);
+      default -> true;
+    };
   }
 
   /* m() measures the number of consonant sequences between k0 and j. if c is
diff --git 
a/opennlp-tools/src/main/java/opennlp/tools/tokenize/lang/en/TokenSampleStream.java
 
b/opennlp-tools/src/main/java/opennlp/tools/tokenize/lang/en/TokenSampleStream.java
index e723215a..951fca5b 100644
--- 
a/opennlp-tools/src/main/java/opennlp/tools/tokenize/lang/en/TokenSampleStream.java
+++ 
b/opennlp-tools/src/main/java/opennlp/tools/tokenize/lang/en/TokenSampleStream.java
@@ -65,20 +65,13 @@ public class TokenSampleStream implements 
Iterator<TokenSample> {
     for (int ti = 0; ti < tokens.length; ti++) {
       String token = tokens[ti];
       String lastToken = ti - 1 >= 0 ? tokens[ti - 1] : "";
-      switch (token) {
-        case "-LRB-":
-          token = "(";
-          break;
-        case "-LCB-":
-          token = "{";
-          break;
-        case "-RRB-":
-          token = ")";
-          break;
-        case "-RCB-":
-          token = "}";
-          break;
-      }
+      token = switch (token) {
+        case "-LRB-" -> "(";
+        case "-LCB-" -> "{";
+        case "-RRB-" -> ")";
+        case "-RCB-" -> "}";
+        default -> token;
+      };
       if (sb.length() != 0) {
         if (!alphaNumeric.matcher(token).find() || token.startsWith("'") || 
token.equalsIgnoreCase("n't")) {
           if ((token.equals("``") || token.equals("--") || token.equals("$") ||

Reply via email to