You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nlpcraft.apache.org by se...@apache.org on 2022/08/23 16:30:43 UTC
[incubator-nlpcraft] 01/01: NCPropertyMap methods related fixes.
This is an automated email from the ASF dual-hosted git repository.
sergeykamov pushed a commit to branch NLPCRAFT-512
in repository https://gitbox.apache.org/repos/asf/incubator-nlpcraft.git
commit 30996df259cbb97a4fa9a0b83e23f03d92e77524
Author: Sergey Kamov <sk...@gmail.com>
AuthorDate: Tue Aug 23 19:30:33 2022 +0300
NCPropertyMap methods related fixes.
---
.../nlp/token/enricher/NCFrStopWordsTokenEnricher.scala | 4 ++--
.../nlp/token/enricher/NCRuStopWordsTokenEnricher.scala | 4 ++--
.../org/apache/nlpcraft/examples/pizzeria/PizzeriaModel.scala | 10 +++++-----
.../examples/pizzeria/components/PizzeriaOrderMapper.scala | 4 ++--
.../token/parser/stanford/NCStanfordNLPTokenParserSpec.scala | 4 ++--
.../src/main/scala/org/apache/nlpcraft/NCPropertyMap.scala | 4 ++--
.../main/scala/org/apache/nlpcraft/NCPropertyMapAdapter.scala | 6 ++----
.../apache/nlpcraft/internal/impl/NCModelPipelineManager.scala | 2 +-
.../nlpcraft/internal/intent/compiler/NCIDLCodeGenerator.scala | 4 ++--
.../internal/intent/matcher/NCIntentSolverManager.scala | 2 +-
.../nlpcraft/nlp/enrichers/NCEnDictionaryTokenEnricher.scala | 2 +-
.../nlpcraft/nlp/enrichers/NCEnQuotesTokenEnricher.scala | 2 +-
.../nlpcraft/nlp/enrichers/NCEnStopWordsTokenEnricher.scala | 6 +++---
.../org/apache/nlpcraft/nlp/parsers/NCNLPEntityParser.scala | 2 +-
.../apache/nlpcraft/nlp/parsers/NCSemanticEntityParser.scala | 6 +++---
.../internal/conversation/NCConversationTimeoutSpec.scala | 2 +-
.../org/apache/nlpcraft/internal/impl/NCModelClientSpec.scala | 2 +-
.../nlpcraft/nlp/enrichers/NCBracketsTokenEnricherSpec.scala | 2 +-
.../nlpcraft/nlp/enrichers/NCDictionaryTokenEnricherSpec.scala | 8 ++++----
.../nlpcraft/nlp/enrichers/NCQuotesTokenEnricherSpec.scala | 2 +-
.../nlpcraft/nlp/enrichers/NCStopWordsEnricherSpec.scala | 4 ++--
.../nlpcraft/nlp/enrichers/NCSwearWordsTokenEnricherSpec.scala | 8 ++++----
.../nlpcraft/nlp/parsers/NCOpenNLPEntityParserSpec.scala | 2 +-
.../apache/nlpcraft/nlp/parsers/NCOpenNLPTokenParserSpec.scala | 2 +-
.../nlpcraft/nlp/parsers/NCSemanticEntityParserJsonSpec.scala | 2 +-
.../nlpcraft/nlp/parsers/NCSemanticEntityParserLemmaSpec.scala | 2 +-
.../nlpcraft/nlp/parsers/NCSemanticEntityParserSpec.scala | 4 ++--
.../test/scala/org/apache/nlpcraft/nlp/util/NCTestUtils.scala | 4 ++--
28 files changed, 52 insertions(+), 54 deletions(-)
diff --git a/nlpcraft-examples/lightswitch-fr/src/main/scala/org/apache/nlpcraft/examples/lightswitch/nlp/token/enricher/NCFrStopWordsTokenEnricher.scala b/nlpcraft-examples/lightswitch-fr/src/main/scala/org/apache/nlpcraft/examples/lightswitch/nlp/token/enricher/NCFrStopWordsTokenEnricher.scala
index be791402..ffc68de0 100644
--- a/nlpcraft-examples/lightswitch-fr/src/main/scala/org/apache/nlpcraft/examples/lightswitch/nlp/token/enricher/NCFrStopWordsTokenEnricher.scala
+++ b/nlpcraft-examples/lightswitch-fr/src/main/scala/org/apache/nlpcraft/examples/lightswitch/nlp/token/enricher/NCFrStopWordsTokenEnricher.scala
@@ -29,8 +29,8 @@ import scala.jdk.CollectionConverters.*
class NCFrStopWordsTokenEnricher extends NCTokenEnricher:
private final val stops = FrenchAnalyzer.getDefaultStopSet
- private def getPos(t: NCToken): String = t.getOpt("pos").getOrElse(throw new NCException("POS not found in token."))
- private def getLemma(t: NCToken): String = t.getOpt("lemma").getOrElse(throw new NCException("Lemma not found in token."))
+ private def getPos(t: NCToken): String = t.get("pos").getOrElse(throw new NCException("POS not found in token."))
+ private def getLemma(t: NCToken): String = t.get("lemma").getOrElse(throw new NCException("Lemma not found in token."))
override def enrich(req: NCRequest, cfg: NCModelConfig, toks: List[NCToken]): Unit =
for (t <- toks)
diff --git a/nlpcraft-examples/lightswitch-ru/src/main/scala/org/apache/nlpcraft/examples/lightswitch/nlp/token/enricher/NCRuStopWordsTokenEnricher.scala b/nlpcraft-examples/lightswitch-ru/src/main/scala/org/apache/nlpcraft/examples/lightswitch/nlp/token/enricher/NCRuStopWordsTokenEnricher.scala
index 1759c70f..7871450f 100644
--- a/nlpcraft-examples/lightswitch-ru/src/main/scala/org/apache/nlpcraft/examples/lightswitch/nlp/token/enricher/NCRuStopWordsTokenEnricher.scala
+++ b/nlpcraft-examples/lightswitch-ru/src/main/scala/org/apache/nlpcraft/examples/lightswitch/nlp/token/enricher/NCRuStopWordsTokenEnricher.scala
@@ -26,8 +26,8 @@ import org.apache.nlpcraft.*
class NCRuStopWordsTokenEnricher extends NCTokenEnricher:
private final val stops = RussianAnalyzer.getDefaultStopSet
- private def getPos(t: NCToken): String = t.getOpt("pos").getOrElse(throw new NCException("POS not found in token."))
- private def getLemma(t: NCToken): String = t.getOpt("lemma").getOrElse(throw new NCException("Lemma not found in token."))
+ private def getPos(t: NCToken): String = t.get("pos").getOrElse(throw new NCException("POS not found in token."))
+ private def getLemma(t: NCToken): String = t.get("lemma").getOrElse(throw new NCException("Lemma not found in token."))
override def enrich(req: NCRequest, cfg: NCModelConfig, toks: List[NCToken]): Unit =
for (t <- toks)
diff --git a/nlpcraft-examples/pizzeria/src/main/java/org/apache/nlpcraft/examples/pizzeria/PizzeriaModel.scala b/nlpcraft-examples/pizzeria/src/main/java/org/apache/nlpcraft/examples/pizzeria/PizzeriaModel.scala
index d661b813..242f3b46 100644
--- a/nlpcraft-examples/pizzeria/src/main/java/org/apache/nlpcraft/examples/pizzeria/PizzeriaModel.scala
+++ b/nlpcraft-examples/pizzeria/src/main/java/org/apache/nlpcraft/examples/pizzeria/PizzeriaModel.scala
@@ -27,12 +27,12 @@ import org.apache.nlpcraft.examples.pizzeria.components.PizzeriaModelPipeline
import org.apache.nlpcraft.nlp.*
object PizzeriaExtractors:
- def extractPizzaSize(e: NCEntity): String = e.get[String]("ord:pizza:size:value")
- def extractQty(e: NCEntity, qty: String): Option[Int] = Option.when(e.contains(qty))(e.get[String](qty).toDouble.toInt)
+ def extractPizzaSize(e: NCEntity): String = e[String]("ord:pizza:size:value")
+ def extractQty(e: NCEntity, qty: String): Option[Int] = Option.when(e.contains(qty))(e[String](qty).toDouble.toInt)
def extractPizza(e: NCEntity): Pizza =
- Pizza(e.get[String]("ord:pizza:value"), e.getOpt[String]("ord:pizza:size"), extractQty(e, "ord:pizza:qty"))
+ Pizza(e[String]("ord:pizza:value"), e.get[String]("ord:pizza:size"), extractQty(e, "ord:pizza:qty"))
def extractDrink(e: NCEntity): Drink =
- Drink(e.get[String]("ord:drink:value"), extractQty(e, "ord:drink:qty"))
+ Drink(e[String]("ord:drink:value"), extractQty(e, "ord:drink:qty"))
import PizzeriaExtractors.*
@@ -46,7 +46,7 @@ object PizzeriaModel extends LazyLogging:
private def getCurrentOrder()(using ctx: NCContext): Order =
val sess = ctx.getConversation.getData
val usrId = ctx.getRequest.getUserId
- sess.getOpt[Order](usrId) match
+ sess.get[Order](usrId) match
case Some(ord) => ord
case None =>
val ord = new Order()
diff --git a/nlpcraft-examples/pizzeria/src/main/java/org/apache/nlpcraft/examples/pizzeria/components/PizzeriaOrderMapper.scala b/nlpcraft-examples/pizzeria/src/main/java/org/apache/nlpcraft/examples/pizzeria/components/PizzeriaOrderMapper.scala
index e267b332..673b62b8 100644
--- a/nlpcraft-examples/pizzeria/src/main/java/org/apache/nlpcraft/examples/pizzeria/components/PizzeriaOrderMapper.scala
+++ b/nlpcraft-examples/pizzeria/src/main/java/org/apache/nlpcraft/examples/pizzeria/components/PizzeriaOrderMapper.scala
@@ -59,8 +59,8 @@ case class PizzeriaOrderMapper(extra: PizzeriaOrderMapperDesc, dests: Seq[Pizzer
override def map(req: NCRequest, cfg: NCModelConfig, ents: List[NCEntity]): List[NCEntity] =
def map(destEnt: NCEntity, destProp: String, extraEnt: NCEntity): NCEntity =
new NCPropertyMapAdapter with NCEntity:
- destEnt.keysSet.foreach(k => put(k, destEnt.get(k)))
- put[String](destProp, extraEnt.get[String](extra.propertyName).toLowerCase)
+ destEnt.keysSet.foreach(k => put(k, destEnt(k)))
+ put[String](destProp, extraEnt[String](extra.propertyName).toLowerCase)
override val getTokens: List[NCToken] = (destEnt.tokens ++ extraEnt.tokens).sortBy(_.getIndex)
override val getRequestId: String = req.getRequestId
override val getId: String = destEnt.getId
diff --git a/nlpcraft-stanford/src/test/scala/org/apache/nlpcraft/nlp/token/parser/stanford/NCStanfordNLPTokenParserSpec.scala b/nlpcraft-stanford/src/test/scala/org/apache/nlpcraft/nlp/token/parser/stanford/NCStanfordNLPTokenParserSpec.scala
index 954078c2..bfbbaa90 100644
--- a/nlpcraft-stanford/src/test/scala/org/apache/nlpcraft/nlp/token/parser/stanford/NCStanfordNLPTokenParserSpec.scala
+++ b/nlpcraft-stanford/src/test/scala/org/apache/nlpcraft/nlp/token/parser/stanford/NCStanfordNLPTokenParserSpec.scala
@@ -37,5 +37,5 @@ class NCStanfordNLPTokenParserSpec:
NCTestUtils.printTokens(toks)
val words = toks.map(_.getText)
- require(toks.map(_.get["String"]("pos")).filter(_ != null).distinct.sizeIs > 1)
- require(toks.map(_.get[String]("lemma")).filter(_ != null).zip(words).exists {_ != _})
+ require(toks.map(_["String"]("pos")).filter(_ != null).distinct.sizeIs > 1)
+ require(toks.map(_[String]("lemma")).filter(_ != null).zip(words).exists {_ != _})
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/NCPropertyMap.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/NCPropertyMap.scala
index 5565b7fa..114453df 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/NCPropertyMap.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/NCPropertyMap.scala
@@ -30,7 +30,7 @@ trait NCPropertyMap:
* @param key The key whose associated value is to be returned.
* @param <T> Type of the returned value.
* @return The value to which the specified key is mapped, or `null` if this map contains no mapping for the key. */
- def get[T](key: String): T
+ def apply[T](key: String): T
/**
* Returns the value to which the specified key is mapped as an optional. This method is equivalent to:
@@ -41,7 +41,7 @@ trait NCPropertyMap:
* @param key The key whose associated value is to be returned.
* @param <T> Type of the returned value.
* @return The value to which the specified key is mapped as an optional. */
- def getOpt[T](key: String): Option[T]
+ def get[T](key: String): Option[T]
/**
* Associates the specified value with the specified key in this map. If the map previously contained a mapping
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/NCPropertyMapAdapter.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/NCPropertyMapAdapter.scala
index 44430183..2a56c952 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/NCPropertyMapAdapter.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/NCPropertyMapAdapter.scala
@@ -25,11 +25,9 @@ import java.util.concurrent.ConcurrentHashMap
class NCPropertyMapAdapter extends NCPropertyMap:
private val map = new ConcurrentHashMap[String, Any]
- // TODO: or error?
+ override def apply[T](key: String): T = get(key).getOrElse(throw new NoSuchElementException(s"Key not found: $key"))
- override def get[T](key: String): T = getOpt(key).orNull.asInstanceOf[T]
-
- override def getOpt[T](key: String): Option[T] =
+ override def get[T](key: String): Option[T] =
map.get(key) match
case null => None
case x => Some(x.asInstanceOf[T])
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/internal/impl/NCModelPipelineManager.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/internal/impl/NCModelPipelineManager.scala
index 78d9e5df..9e096efa 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/internal/impl/NCModelPipelineManager.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/internal/impl/NCModelPipelineManager.scala
@@ -90,7 +90,7 @@ class NCModelPipelineManager(cfg: NCModelConfig, pipeline: NCPipeline) extends L
*/
private def mkProps(m: NCPropertyMap): String =
if m.keysSet.isEmpty then ""
- else m.keysSet.toSeq.sorted.map(p => s"$p=${m.get[Any](p)}").mkString("{", ", ", "}")
+ else m.keysSet.toSeq.sorted.map(p => s"$p=${m(p)}").mkString("{", ", ", "}")
/**
*
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/internal/intent/compiler/NCIDLCodeGenerator.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/internal/intent/compiler/NCIDLCodeGenerator.scala
index 6c48be8c..cfc3352f 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/internal/intent/compiler/NCIDLCodeGenerator.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/internal/intent/compiler/NCIDLCodeGenerator.scala
@@ -895,8 +895,8 @@ trait NCIDLCodeGenerator:
try
fun match
// Metadata access.
- case "meta_ent" => z[ST](arg1, { x => val Z(v, _) = x(); Z(box(ent.impl.get[Object](toStr(v))), 0) })
- case "meta_cfg" => z[ST](arg1, { x => val Z(v, _) = x(); Z(box(idlCtx.mdlCfg.get[Object](toStr(v))), 0) })
+ case "meta_ent" => z[ST](arg1, { x => val Z(v, _) = x(); Z(box(ent.impl.get[Object](toStr(v)).orNull), 0) })
+ case "meta_cfg" => z[ST](arg1, { x => val Z(v, _) = x(); Z(box(idlCtx.mdlCfg.get[Object](toStr(v)).orNull), 0) })
case "meta_req" => z[ST](arg1, { x => val Z(v, _) = x(); Z(box(idlCtx.req.getRequestData.get(toStr(v)).orNull.asInstanceOf[Object]), 0) })
case "meta_intent" => z[ST](arg1, { x => val Z(v, _) = x(); Z(box(idlCtx.intentMeta.get(toStr(v)).orNull), 0) })
case "meta_conv" => z[ST](arg1, { x => val Z(v, _) = x(); Z(box(idlCtx.convMeta.get(toStr(v)).orNull), 0) })
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/internal/intent/matcher/NCIntentSolverManager.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/internal/intent/matcher/NCIntentSolverManager.scala
index a16a94d6..707c2cc1 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/internal/intent/matcher/NCIntentSolverManager.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/internal/intent/matcher/NCIntentSolverManager.scala
@@ -448,7 +448,7 @@ class NCIntentSolverManager(
var abort = false
var lastTermMatch: TermMatch = null
val sess = ctx.getConversation.getData // Conversation metadata (shared across all terms).
- val convMeta = sess.keysSet.map(k => k -> sess.get(k).asInstanceOf[Object]).toMap
+ val convMeta = sess.keysSet.map(k => k -> sess(k).asInstanceOf[Object]).toMap
val ents = senEnts.map(_.entity)
// Check terms.
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnDictionaryTokenEnricher.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnDictionaryTokenEnricher.scala
index 7960f2e8..7360ac3e 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnDictionaryTokenEnricher.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnDictionaryTokenEnricher.scala
@@ -29,7 +29,7 @@ class NCEnDictionaryTokenEnricher extends NCTokenEnricher:
init()
private def init(): Unit = dict = NCUtils.readResource("moby/354984si.ngl", "iso-8859-1").toSet
- private def getLemma(t: NCToken): String = t.getOpt("lemma").getOrElse(throw new NCException("Lemma not found in token."))
+ private def getLemma(t: NCToken): String = t.get("lemma").getOrElse(throw new NCException("Lemma not found in token."))
override def enrich(req: NCRequest, cfg: NCModelConfig, toks: List[NCToken]): Unit =
toks.foreach(t => t.put("dict", dict.contains(getLemma(t))))
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnQuotesTokenEnricher.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnQuotesTokenEnricher.scala
index 320ffe86..5c514a71 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnQuotesTokenEnricher.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnQuotesTokenEnricher.scala
@@ -25,7 +25,7 @@ import org.apache.nlpcraft.*
*/
class NCEnQuotesTokenEnricher extends NCTokenEnricher with LazyLogging:
private final val Q_POS: Set[String] = Set("``", "''")
- private def getPos(t: NCToken): String = t.getOpt("pos").getOrElse(throw new NCException("POS not found in token."))
+ private def getPos(t: NCToken): String = t.get("pos").getOrElse(throw new NCException("POS not found in token."))
private def isQuote(t: NCToken): Boolean = Q_POS.contains(getPos(t))
override def enrich(req: NCRequest, cfg: NCModelConfig, toks: List[NCToken]): Unit =
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnStopWordsTokenEnricher.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnStopWordsTokenEnricher.scala
index 1174a978..7a791630 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnStopWordsTokenEnricher.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnStopWordsTokenEnricher.scala
@@ -95,13 +95,13 @@ object NCEnStopWordsTokenEnricher:
"percent"
)
- private def getPos(t: NCToken): String = t.getOpt("pos").getOrElse(throw new NCException(s"POS not found in token: ${t.keysSet}"))
- private def getLemma(t: NCToken): String = t.getOpt("lemma").getOrElse(throw new NCException(s"Lemma not found in token: ${t.keysSet}"))
+ private def getPos(t: NCToken): String = t.get("pos").getOrElse(throw new NCException(s"POS not found in token: ${t.keysSet}"))
+ private def getLemma(t: NCToken): String = t.get("lemma").getOrElse(throw new NCException(s"Lemma not found in token: ${t.keysSet}"))
private def isQuote(t: NCToken): Boolean = Q_POS.contains(getPos(t))
private def toLemmaKey(toks: Seq[NCToken]): String = toks.map(getLemma).mkString(" ")
private def toValueKey(toks: Seq[NCToken]): String = toks.map(_.getText.toLowerCase).mkString(" ")
private def toOriginalKey(toks: Seq[NCToken]): String = toks.map(_.getText).mkString(" ")
- private def isStopWord(t: NCToken): Boolean = t.getOpt[Boolean]("stopword").getOrElse(false)
+ private def isStopWord(t: NCToken): Boolean = t.get[Boolean]("stopword").getOrElse(false)
/**
* Gets all sequential permutations of tokens in this NLP sentence.
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCNLPEntityParser.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCNLPEntityParser.scala
index def5527b..53ad9086 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCNLPEntityParser.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCNLPEntityParser.scala
@@ -41,7 +41,7 @@ class NCNLPEntityParser extends NCEntityParser:
put(s"$id:index", t.getIndex)
put(s"$id:startCharIndex", t.getStartCharIndex)
- t.keysSet.foreach(key => put(s"$id:$key", t.get(key)))
+ t.keysSet.foreach(key => put(s"$id:$key", t(key)))
override val getTokens: List[NCToken] = List(t)
override val getRequestId: String = req.getRequestId
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCSemanticEntityParser.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCSemanticEntityParser.scala
index ec9787d3..17952800 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCSemanticEntityParser.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCSemanticEntityParser.scala
@@ -99,7 +99,7 @@ object NCSemanticEntityParser:
* @param t
* @return
*/
- private def isStopWord(t: NCToken): Boolean = t.getOpt[Boolean]("stopword").getOrElse(false)
+ private def isStopWord(t: NCToken): Boolean = t.get[Boolean]("stopword").getOrElse(false)
/**
*
@@ -228,13 +228,13 @@ class NCSemanticEntityParser(
private def warnMissedProperty(name: String): Unit = logger.warn(s"'$name' property not found. Is proper token enricher configured?")
override def parse(req: NCRequest, cfg: NCModelConfig, toks: List[NCToken]): List[NCEntity] =
- if toks.exists(_.getOpt[String]("stopword").isEmpty) then warnMissedProperty("stopword")
+ if toks.exists(_.get[String]("stopword").isEmpty) then warnMissedProperty("stopword")
val stems = toks.map(p => p -> stemmer.stem(p.getText.toLowerCase)).toMap
val stems4Lemms =
var ok = true
val seq =
- for (t <- toks; lemmaOpt = t.getOpt[String]("lemma") if ok)
+ for (t <- toks; lemmaOpt = t.get[String]("lemma") if ok)
yield
ok = lemmaOpt.isDefined
t -> lemmaOpt.orNull
diff --git a/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/conversation/NCConversationTimeoutSpec.scala b/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/conversation/NCConversationTimeoutSpec.scala
index 3417b93b..c75f6cb4 100644
--- a/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/conversation/NCConversationTimeoutSpec.scala
+++ b/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/conversation/NCConversationTimeoutSpec.scala
@@ -55,7 +55,7 @@ class NCConversationTimeoutSpec:
@NCIntent("intent=i term(e)~{# == 'test'}")
def onMatch(ctx: NCContext, im: NCIntentMatch, @NCIntentTerm("e") e: NCEntity): NCResult =
val conv = ctx.getConversation
- val res = NCResult(conv.getData.getOpt("key").getOrElse(EMPTY), NCResultType.ASK_RESULT)
+ val res = NCResult(conv.getData.get("key").getOrElse(EMPTY), NCResultType.ASK_RESULT)
// For next calls.
conv.getData.put("key", VALUE)
diff --git a/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/impl/NCModelClientSpec.scala b/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/impl/NCModelClientSpec.scala
index 9b2140ef..714ac8b2 100644
--- a/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/impl/NCModelClientSpec.scala
+++ b/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/impl/NCModelClientSpec.scala
@@ -36,7 +36,7 @@ class NCModelClientSpec:
* @return
*/
private def s(e: NCEntity): String =
- s"Entity [id=${e.getId}, text=${e.mkText}, properties={${e.keysSet.map(k => s"$k=${e.get(k)}")}}]"
+ s"Entity [id=${e.getId}, text=${e.mkText}, properties={${e.keysSet.map(k => s"$k=${e(k)}")}}]"
/**
*
diff --git a/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/enrichers/NCBracketsTokenEnricherSpec.scala b/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/enrichers/NCBracketsTokenEnricherSpec.scala
index e9192d8d..6e3e195a 100644
--- a/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/enrichers/NCBracketsTokenEnricherSpec.scala
+++ b/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/enrichers/NCBracketsTokenEnricherSpec.scala
@@ -41,7 +41,7 @@ class NCBracketsTokenEnricherSpec:
NCTestUtils.printTokens(toks)
- toks.foreach (tok => require(!(tok.get[Boolean]("brackets") ^ brackets.contains(tok.getIndex))))
+ toks.foreach (tok => require(!(tok[Boolean]("brackets") ^ brackets.contains(tok.getIndex))))
@Test
def test(): Unit =
diff --git a/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/enrichers/NCDictionaryTokenEnricherSpec.scala b/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/enrichers/NCDictionaryTokenEnricherSpec.scala
index 0625f9c2..d17eafc6 100644
--- a/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/enrichers/NCDictionaryTokenEnricherSpec.scala
+++ b/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/enrichers/NCDictionaryTokenEnricherSpec.scala
@@ -37,8 +37,8 @@ class NCDictionaryTokenEnricherSpec:
val txt = "milk XYZ"
val toks = EN_TOK_PARSER.tokenize(txt)
- require(toks.head.getOpt[Boolean]("dict:en").isEmpty)
- require(toks.last.getOpt[Boolean]("dict:en").isEmpty)
+ require(toks.head.get[Boolean]("dict:en").isEmpty)
+ require(toks.last.get[Boolean]("dict:en").isEmpty)
val req = NCTestRequest(txt)
@@ -46,5 +46,5 @@ class NCDictionaryTokenEnricherSpec:
dictEnricher.enrich(req, CFG, toks)
NCTestUtils.printTokens(toks)
- require(toks.head.get[Boolean]("dict"))
- require(!toks.last.get[Boolean]("dict"))
\ No newline at end of file
+ require(toks.head[Boolean]("dict"))
+ require(!toks.last[Boolean]("dict"))
\ No newline at end of file
diff --git a/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/enrichers/NCQuotesTokenEnricherSpec.scala b/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/enrichers/NCQuotesTokenEnricherSpec.scala
index b2abca05..9be63daa 100644
--- a/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/enrichers/NCQuotesTokenEnricherSpec.scala
+++ b/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/enrichers/NCQuotesTokenEnricherSpec.scala
@@ -46,7 +46,7 @@ class NCQuotesTokenEnricherSpec:
quoteEnricher.enrich(req, CFG, toks)
NCTestUtils.printTokens(toks)
- toks.foreach (tok => require(!(tok.get[Boolean]("quoted") ^ quotes.contains(tok.getIndex))))
+ toks.foreach (tok => require(!(tok[Boolean]("quoted") ^ quotes.contains(tok.getIndex))))
@Test
def test(): Unit =
diff --git a/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/enrichers/NCStopWordsEnricherSpec.scala b/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/enrichers/NCStopWordsEnricherSpec.scala
index bf295066..118e2876 100644
--- a/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/enrichers/NCStopWordsEnricherSpec.scala
+++ b/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/enrichers/NCStopWordsEnricherSpec.scala
@@ -40,7 +40,7 @@ class NCStopWordsEnricherSpec:
val toks = EN_TOK_PARSER.tokenize(txt)
require(toks.size == boolVals.size)
- toks.foreach(tok => require(tok.getOpt[Boolean]("stopword").isEmpty))
+ toks.foreach(tok => require(tok.get[Boolean]("stopword").isEmpty))
val req = NCTestRequest(txt)
@@ -48,7 +48,7 @@ class NCStopWordsEnricherSpec:
stopEnricher.enrich(req, CFG, toks)
NCTestUtils.printTokens(toks)
- toks.zip(boolVals).foreach { (tok, boolVal) => require(tok.get[Boolean]("stopword") == boolVal) }
+ toks.zip(boolVals).foreach { (tok, boolVal) => require(tok[Boolean]("stopword") == boolVal) }
@Test
def test(): Unit =
diff --git a/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/enrichers/NCSwearWordsTokenEnricherSpec.scala b/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/enrichers/NCSwearWordsTokenEnricherSpec.scala
index 648f974c..930d3263 100644
--- a/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/enrichers/NCSwearWordsTokenEnricherSpec.scala
+++ b/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/enrichers/NCSwearWordsTokenEnricherSpec.scala
@@ -36,12 +36,12 @@ class NCSwearWordsTokenEnricherSpec:
def test(): Unit =
val toks = EN_TOK_PARSER.tokenize("english ass")
- require(toks.head.getOpt[Boolean]("swear:en").isEmpty)
- require(toks.last.getOpt[Boolean]("swear:en").isEmpty)
+ require(toks.head.get[Boolean]("swear:en").isEmpty)
+ require(toks.last.get[Boolean]("swear:en").isEmpty)
swEnricher.enrich(null, null, toks)
NCTestUtils.printTokens(toks)
- require(!toks.head.get[Boolean]("swear"))
- require(toks.last.get[Boolean]("swear"))
\ No newline at end of file
+ require(!toks.head[Boolean]("swear"))
+ require(toks.last[Boolean]("swear"))
\ No newline at end of file
diff --git a/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/parsers/NCOpenNLPEntityParserSpec.scala b/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/parsers/NCOpenNLPEntityParserSpec.scala
index 802cf372..72137148 100644
--- a/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/parsers/NCOpenNLPEntityParserSpec.scala
+++ b/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/parsers/NCOpenNLPEntityParserSpec.scala
@@ -61,7 +61,7 @@ class NCOpenNLPEntityParserSpec:
NCTestUtils.printEntities(txt, ents)
require(ents.sizeIs == 1)
- require(ents.exists(_.getOpt(s"opennlp:$expected:probability").isDefined))
+ require(ents.exists(_.get(s"opennlp:$expected:probability").isDefined))
/**
*
diff --git a/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/parsers/NCOpenNLPTokenParserSpec.scala b/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/parsers/NCOpenNLPTokenParserSpec.scala
index 7e58172f..cfa201c3 100644
--- a/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/parsers/NCOpenNLPTokenParserSpec.scala
+++ b/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/parsers/NCOpenNLPTokenParserSpec.scala
@@ -31,7 +31,7 @@ import scala.jdk.CollectionConverters.*
*
*/
class NCOpenNLPTokenParserSpec:
- private def isStopWord(t: NCToken): Boolean = t.get[Boolean]("stopword")
+ private def isStopWord(t: NCToken): Boolean = t[Boolean]("stopword")
private def test(txt: String, validate: Seq[NCToken] => _): Unit =
val toks = EN_TOK_PARSER.tokenize(txt)
diff --git a/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/parsers/NCSemanticEntityParserJsonSpec.scala b/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/parsers/NCSemanticEntityParserJsonSpec.scala
index bcab07ba..16b26160 100644
--- a/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/parsers/NCSemanticEntityParserJsonSpec.scala
+++ b/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/parsers/NCSemanticEntityParserJsonSpec.scala
@@ -50,7 +50,7 @@ class NCSemanticEntityParserJsonSpec:
require(tok.getId == id)
elemData match
- case Some(m) => m.foreach { (k, v) => require(tok.get[Any](s"$id:$k") == v) }
+ case Some(m) => m.foreach { (k, v) => require(tok[Any](s"$id:$k") == v) }
case None => // No-op.
/**
diff --git a/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/parsers/NCSemanticEntityParserLemmaSpec.scala b/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/parsers/NCSemanticEntityParserLemmaSpec.scala
index 15e9fd47..1f2168fa 100644
--- a/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/parsers/NCSemanticEntityParserLemmaSpec.scala
+++ b/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/parsers/NCSemanticEntityParserLemmaSpec.scala
@@ -62,7 +62,7 @@ class NCSemanticEntityParserLemmaSpec:
withTokenEnricher(EN_TOK_STOP_ENRICHER).
// 1. Wraps lemmas.
withTokenEnricher((_: NCRequest, _: NCModelConfig, toks: List[NCToken]) =>
- toks.foreach(t => t.put("lemma", wrap(t.get[String]("lemma"))))
+ toks.foreach(t => t.put("lemma", wrap(t[String]("lemma"))))
).
// 2. Semantic parser with fixed stemmer which stems only lemmas.
withEntityParser(NCSemanticEntityParser(lemmaStemmer, EN_TOK_PARSER, elems)).
diff --git a/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/parsers/NCSemanticEntityParserSpec.scala b/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/parsers/NCSemanticEntityParserSpec.scala
index 5be1b2f5..0a551023 100644
--- a/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/parsers/NCSemanticEntityParserSpec.scala
+++ b/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/parsers/NCSemanticEntityParserSpec.scala
@@ -78,10 +78,10 @@ class NCSemanticEntityParserSpec:
require(e.getId == id)
value match
- case Some(v) => require(e.get[Any](s"$id:value") == v)
+ case Some(v) => require(e[Any](s"$id:value") == v)
case None => // No-op.
elemData match
- case Some(m) => m.foreach { (k, v) => require(e.get[Any](s"$id:$k") == v) }
+ case Some(m) => m.foreach { (k, v) => require(e[Any](s"$id:$k") == v) }
case None => // No-op.
/**
diff --git a/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/util/NCTestUtils.scala b/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/util/NCTestUtils.scala
index 6b550e01..ffe60163 100644
--- a/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/util/NCTestUtils.scala
+++ b/nlpcraft/src/test/scala/org/apache/nlpcraft/nlp/util/NCTestUtils.scala
@@ -40,7 +40,7 @@ object NCTestUtils:
* @return
*/
private def mkProps(m: NCPropertyMap): String =
- m.keysSet.toSeq.sorted.map(p => s"$p=${m.get[Any](p)}").mkString("{", ", ", "}")
+ m.keysSet.toSeq.sorted.map(p => s"$p=${m[Any](p)}").mkString("{", ", ", "}")
/**
* @param toks
@@ -52,7 +52,7 @@ object NCTestUtils:
tbl += (
t.getText,
t.getIndex,
- t.getOpt[Boolean]("stopword") match
+ t.get[Boolean]("stopword") match
case Some(b) => b.toString
case None => "undef."
,