This is an automated email from the ASF dual-hosted git repository.
sergeykamov pushed a commit to branch NLPCRAFT-366
in repository https://gitbox.apache.org/repos/asf/incubator-nlpcraft.git
The following commit(s) were added to refs/heads/NLPCRAFT-366 by this push:
new f8c50b0 Minor REST API related fixes.
f8c50b0 is described below
commit f8c50b038805fb066017228afa0542e65b5ba163
Author: Sergey Kamov <[email protected]>
AuthorDate: Thu Aug 5 13:12:32 2021 +0300
Minor REST API related fixes.
---
.../nlpcraft/probe/mgrs/cmd/NCCommandManager.scala | 57 ++++++++++++++--------
1 file changed, 38 insertions(+), 19 deletions(-)
diff --git
a/nlpcraft/src/main/scala/org/apache/nlpcraft/probe/mgrs/cmd/NCCommandManager.scala
b/nlpcraft/src/main/scala/org/apache/nlpcraft/probe/mgrs/cmd/NCCommandManager.scala
index 75047c7..0a19ad2 100644
---
a/nlpcraft/src/main/scala/org/apache/nlpcraft/probe/mgrs/cmd/NCCommandManager.scala
+++
b/nlpcraft/src/main/scala/org/apache/nlpcraft/probe/mgrs/cmd/NCCommandManager.scala
@@ -39,9 +39,7 @@ import scala.jdk.CollectionConverters.{ListHasAsScala,
MapHasAsJava, MapHasAsSca
* Probe commands processor.
*/
object NCCommandManager extends NCService {
- private final val JS_MAPPER = new ObjectMapper()
-
- JS_MAPPER.registerModule(DefaultScalaModule)
+ private final val JS_MAPPER = new
ObjectMapper().registerModule(DefaultScalaModule)
override def start(parent: Span): NCService = startScopedSpan("start",
parent) { _ =>
ackStarting()
@@ -246,23 +244,44 @@ object NCCommandManager extends NCService {
override def getParsers:
JList[NCCustomParser] = null
// Converted.
- override def getElements:
util.Set[NCElement] = mdl.getElements.asScala.map(e =>
- new NCElement {
- // As is.
- override def getId: String =
e.getId
- override def getGroups:
JList[String] = e.getGroups
- override def getMetadata:
util.Map[String, AnyRef] = e.getMetadata
- override def getDescription:
String = e.getDescription
- override def getParentId:
String = e.getParentId
- override def getSynonyms:
JList[String] = e.getSynonyms
- override def
isPermutateSynonyms: Optional[lang.Boolean] = e.isPermutateSynonyms
- override def isSparse:
Optional[lang.Boolean] = e.isSparse
- override def getValues:
JList[NCValue] = e.getValues
-
- // Cleared.
- override def getValueLoader:
Optional[NCValueLoader] = null
+ override def getElements:
util.Set[NCElement] = mdl.getElements.asScala.map(e => {
+ // Jackson serializes `is` getters
but only for boolean return types,
+ // even with Jdk8Module.
+ // Below `is` getters data
provided as `get` getters data.
+ abstract class NCElementJs extends
NCElement {
+ // New method instead of
`isPermutateSynonyms`
+ def getPermutateSynonyms:
lang.Boolean
+
+ // New method instead of
`isSparse`
+ def getSparse: lang.Boolean
}
- ).asJava
+
+ val eJs: NCElement =
+ new NCElementJs {
+ // As is.
+ override def getId: String
= e.getId
+ override def getGroups:
JList[String] = e.getGroups
+ override def getMetadata:
util.Map[String, AnyRef] = e.getMetadata
+ override def
getDescription: String = e.getDescription
+ override def getParentId:
String = e.getParentId
+ override def getSynonyms:
JList[String] = e.getSynonyms
+ override def getValues:
JList[NCValue] = e.getValues
+
+ // Cleared.
+ override def
getValueLoader: Optional[NCValueLoader] = null
+
+ // Hidden.
+ override def
isPermutateSynonyms: Optional[lang.Boolean] = null
+ override def isSparse:
Optional[lang.Boolean] = null
+
+ // Wrapped.
+ override def
getPermutateSynonyms: lang.Boolean =
+
e.isPermutateSynonyms.orElse(null)
+ override def getSparse:
lang.Boolean =
+ e.isSparse.orElse(null)
+ }
+ eJs
+ }).asJava
}
NCProbeMessage(