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

sergeykamov pushed a commit to branch NLPCRAFT-471
in repository https://gitbox.apache.org/repos/asf/incubator-nlpcraft.git

commit 56a5894f4acaf9d90ccf990b9bc3b9981b1a0b29
Author: Sergey Kamov <[email protected]>
AuthorDate: Tue Dec 28 22:40:20 2021 +0300

    WIP.
---
 .../src/main/scala/org/apache/nlpcraft/NCModelClient.java   |  8 +++-----
 .../nlp/entity/parser/opennlp/NCOpenNlpEntityParser.java    | 13 +++++++++----
 .../parser/opennlp/impl/NCOpenNlpEntityParserImpl.scala     |  4 ++--
 .../entity/parser/opennlp/NCOpenNlpEntityParserSpec.scala   |  1 -
 .../token/parser/opennlp/NCEnOpenNlpTokenParserSpec.scala   |  2 +-
 .../org/apache/nlpcraft/internal/nlp/util/NCTestUtils.scala |  5 +++--
 6 files changed, 18 insertions(+), 15 deletions(-)

diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/NCModelClient.java 
b/nlpcraft/src/main/scala/org/apache/nlpcraft/NCModelClient.java
index b70b2d1..603a481 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/NCModelClient.java
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/NCModelClient.java
@@ -43,7 +43,7 @@ public class NCModelClient implements NCLifecycle {
         // TODO:
     }
 
-    private static void start(ExecutorService s, List<? extends NCLifecycle> 
list) {
+    private static void start(ExecutorService s, List<? extends NCLifecycle> 
list, NCModelConfig cfg) {
         assert s != null;
 
         if (list != null)
@@ -74,11 +74,10 @@ public class NCModelClient implements NCLifecycle {
     public void start(NCModelConfig cfg) {
         verify();
 
-        NCModelConfig cfg = mdl.getConfig();
         ExecutorService s = getExecutorService();
 
         try {
-            s.execute(() -> cfg.getTokenParser().start());
+            start(s, cfg.getTokenParsers(), cfg);
             start(s, cfg.getEntityParsers(), cfg);
             start(s, cfg.getEntityEnrichers(), cfg);
             start(s, cfg.getTokenEnrichers(), cfg);
@@ -97,8 +96,7 @@ public class NCModelClient implements NCLifecycle {
             stop(s, cfg.getTokenEnrichers());
             stop(s, cfg.getEntityEnrichers());
             stop(s, cfg.getEntityParsers());
-            s.execute(() -> cfg.getTokenParser().stop());
-
+            stop(s, cfg.getTokenEnrichers());
         }
         finally {
             stopExecutorService(s);
diff --git 
a/nlpcraft/src/main/scala/org/apache/nlpcraft/internal/nlp/entity/parser/opennlp/NCOpenNlpEntityParser.java
 
b/nlpcraft/src/main/scala/org/apache/nlpcraft/internal/nlp/entity/parser/opennlp/NCOpenNlpEntityParser.java
index 3425af8..b02a6f8 100644
--- 
a/nlpcraft/src/main/scala/org/apache/nlpcraft/internal/nlp/entity/parser/opennlp/NCOpenNlpEntityParser.java
+++ 
b/nlpcraft/src/main/scala/org/apache/nlpcraft/internal/nlp/entity/parser/opennlp/NCOpenNlpEntityParser.java
@@ -17,11 +17,16 @@
 
 package org.apache.nlpcraft.internal.nlp.entity.parser.opennlp;
 
-import org.apache.nlpcraft.*;
+import org.apache.nlpcraft.NCEntity;
+import org.apache.nlpcraft.NCEntityParser;
+import org.apache.nlpcraft.NCModelConfig;
+import org.apache.nlpcraft.NCRequest;
+import org.apache.nlpcraft.NCToken;
 import 
org.apache.nlpcraft.internal.nlp.entity.parser.opennlp.impl.NCOpenNlpEntityParserImpl;
 
 import java.io.File;
-import java.util.*;
+import java.util.List;
+import java.util.Objects;
 
 /**
  * Generates entities with
@@ -58,8 +63,8 @@ public class NCOpenNlpEntityParser implements NCEntityParser {
     }
 
     @Override
-    public void start() {
-        impl.start();
+    public void start(NCModelConfig cfg) {
+        impl.start(cfg);
     }
 
     @Override
diff --git 
a/nlpcraft/src/main/scala/org/apache/nlpcraft/internal/nlp/entity/parser/opennlp/impl/NCOpenNlpEntityParserImpl.scala
 
b/nlpcraft/src/main/scala/org/apache/nlpcraft/internal/nlp/entity/parser/opennlp/impl/NCOpenNlpEntityParserImpl.scala
index 588923a..70a59bf 100644
--- 
a/nlpcraft/src/main/scala/org/apache/nlpcraft/internal/nlp/entity/parser/opennlp/impl/NCOpenNlpEntityParserImpl.scala
+++ 
b/nlpcraft/src/main/scala/org/apache/nlpcraft/internal/nlp/entity/parser/opennlp/impl/NCOpenNlpEntityParserImpl.scala
@@ -46,7 +46,7 @@ class NCOpenNlpEntityParserImpl(is: InputStream, res: String) 
extends NCEntityPa
 
     private case class Holder(start: Int, end: Int, name: String, probability: 
Double)
 
-    override def start(): Unit =
+    override def start(cfg: NCModelConfig): Unit =
         finder = new NameFinderME(new 
TokenNameFinderModel(NCUtils.getStream(res)))
         logger.trace(s"Loaded resource: $res")
 
@@ -63,7 +63,7 @@ class NCOpenNlpEntityParserImpl(is: InputStream, res: String) 
extends NCEntityPa
     override def parse(req: NCRequest, cfg: NCModelConfig, toks: 
JList[NCToken]): JList[NCEntity] =
         val toksSeq = toks.asScala
 
-        find(toksSeq.map(_.getOriginalText).toArray).flatMap(h =>
+        find(toksSeq.map(_.getText).toArray).flatMap(h =>
             def calcIndex(getHolderIndex: Holder => Int): Int =
                 toksSeq.find(_.getIndex == getHolderIndex(h)) match
                     case Some(t) => t.getIndex
diff --git 
a/nlpcraft/src/test/java/org/apache/nlpcraft/internal/nlp/entity/parser/opennlp/NCOpenNlpEntityParserSpec.scala
 
b/nlpcraft/src/test/java/org/apache/nlpcraft/internal/nlp/entity/parser/opennlp/NCOpenNlpEntityParserSpec.scala
index 0192085..f4762cc 100644
--- 
a/nlpcraft/src/test/java/org/apache/nlpcraft/internal/nlp/entity/parser/opennlp/NCOpenNlpEntityParserSpec.scala
+++ 
b/nlpcraft/src/test/java/org/apache/nlpcraft/internal/nlp/entity/parser/opennlp/NCOpenNlpEntityParserSpec.scala
@@ -62,7 +62,6 @@ class NCOpenNlpEntityParserSpec:
         require(resSeq.size == 1)
 
         val res = resSeq.head
-
         NCTestUtils.printEntities(txt, res)
         
require(res.exists(_.getOpt(s"opennlp:$expected:probability").isPresent))
 
diff --git 
a/nlpcraft/src/test/java/org/apache/nlpcraft/internal/nlp/token/parser/opennlp/NCEnOpenNlpTokenParserSpec.scala
 
b/nlpcraft/src/test/java/org/apache/nlpcraft/internal/nlp/token/parser/opennlp/NCEnOpenNlpTokenParserSpec.scala
index 6eae9d3..3ba6869 100644
--- 
a/nlpcraft/src/test/java/org/apache/nlpcraft/internal/nlp/token/parser/opennlp/NCEnOpenNlpTokenParserSpec.scala
+++ 
b/nlpcraft/src/test/java/org/apache/nlpcraft/internal/nlp/token/parser/opennlp/NCEnOpenNlpTokenParserSpec.scala
@@ -87,5 +87,5 @@ class NCEnOpenNlpTokenParserSpec:
         test(
             // Nested brackets.
             "< < [ A ] > >",
-            toks => require(!toks.find(_.getText == "a").get.isStopWord)
+            toks => require(!toks.find(_.getText == "A").get.isStopWord)
         )
diff --git 
a/nlpcraft/src/test/java/org/apache/nlpcraft/internal/nlp/util/NCTestUtils.scala
 
b/nlpcraft/src/test/java/org/apache/nlpcraft/internal/nlp/util/NCTestUtils.scala
index 6ef2feb..0afda8a 100644
--- 
a/nlpcraft/src/test/java/org/apache/nlpcraft/internal/nlp/util/NCTestUtils.scala
+++ 
b/nlpcraft/src/test/java/org/apache/nlpcraft/internal/nlp/util/NCTestUtils.scala
@@ -32,10 +32,11 @@ object NCTestUtils:
     def printTokens(toks: Seq[NCToken]): Unit =
         val tbl = new NCAsciiTable()
 
-        tbl #= ("Text", "POS", "Stem", "Lemma", "Start", "End", "Length", 
"Stopword", "Properties")
+        tbl #= ("Text", "Index", "POS", "Stem", "Lemma", "Start", "End", 
"Length", "Stopword", "Properties")
         for (t <- toks)
             tbl += (
                 t.getText,
+                t.getIndex,
                 t.getPos,
                 t.getStem,
                 t.getLemma,
@@ -61,7 +62,7 @@ object NCTestUtils:
         for (e <- ents)
             tbl += (
                 e.getId,
-                e.getTokens.asScala.map(_.getOriginalText).mkString("|"),
+                e.getTokens.asScala.map(_.getText).mkString("|"),
                 e.keysSet().asScala.map(p => 
s"$p=${e.get[Any](p)}").mkString("{", ", ", "}")
             )
 

Reply via email to