This is an automated email from the ASF dual-hosted git repository.
aradzinski pushed a commit to branch NLPCRAFT-108
in repository https://gitbox.apache.org/repos/asf/incubator-nlpcraft.git
The following commit(s) were added to refs/heads/NLPCRAFT-108 by this push:
new 393c049 WIP.
393c049 is described below
commit 393c049bb4ee91c4587feb961442b32bef82783a
Author: Aaron Radzinski <[email protected]>
AuthorDate: Sat Oct 3 22:58:20 2020 -0700
WIP.
---
.../nlpcraft/model/tools/cmdline/NCCli.scala | 24 ++++++---
...CliServerBeacon.scala => NCCliAnsiBleach.scala} | 61 +++++++++-------------
.../model/tools/cmdline/NCCliServerBeacon.scala | 2 +-
3 files changed, 43 insertions(+), 44 deletions(-)
diff --git
a/nlpcraft/src/main/scala/org/apache/nlpcraft/model/tools/cmdline/NCCli.scala
b/nlpcraft/src/main/scala/org/apache/nlpcraft/model/tools/cmdline/NCCli.scala
index 6e90df5..f2e8df7 100644
---
a/nlpcraft/src/main/scala/org/apache/nlpcraft/model/tools/cmdline/NCCli.scala
+++
b/nlpcraft/src/main/scala/org/apache/nlpcraft/model/tools/cmdline/NCCli.scala
@@ -442,7 +442,7 @@ object NCCli extends App {
case None ⇒ ()
}
- val pb = new ProcessBuilder(
+ val srvPb = new ProcessBuilder(
JAVA,
"-ea",
"-Xms2048m",
@@ -470,14 +470,24 @@ object NCCli extends App {
},
)
- pb.directory(new File(INSTALL_HOME))
- pb.redirectErrorStream(true)
- pb.redirectOutput(Redirect.appendTo(output))
+ srvPb.directory(new File(INSTALL_HOME))
+ srvPb.redirectErrorStream(true)
+
+ val bleachPb = new ProcessBuilder(
+ JAVA,
+ "-ea",
+ "-cp",
+ s"$JAVA_CP",
+ "org.apache.nlpcraft.model.tools.cmdline.NCCliAnsiBleach"
+ )
+
+ bleachPb.directory(new File(INSTALL_HOME))
+ bleachPb.redirectOutput(Redirect.appendTo(output))
try {
- pb.start()
+ ProcessBuilder.startPipeline(Seq(srvPb, bleachPb).asJava)
- logln(s"Server output: ${c(output.getAbsolutePath)}")
+ logln(s"Server output > ${c(output.getAbsolutePath)}")
if (noWait)
logln(s"Server is starting...")
@@ -1039,7 +1049,7 @@ object NCCli extends App {
logln(s"${VER.date}")
}
else
- error(s"Invalid parameters for command '${cmd.name}':
${args.mkString(", ")}")
+ error(s"Invalid parameters: ${args.mkString(", ")}")
}
diff --git
a/nlpcraft/src/main/scala/org/apache/nlpcraft/model/tools/cmdline/NCCliServerBeacon.scala
b/nlpcraft/src/main/scala/org/apache/nlpcraft/model/tools/cmdline/NCCliAnsiBleach.scala
similarity index 54%
copy from
nlpcraft/src/main/scala/org/apache/nlpcraft/model/tools/cmdline/NCCliServerBeacon.scala
copy to
nlpcraft/src/main/scala/org/apache/nlpcraft/model/tools/cmdline/NCCliAnsiBleach.scala
index 335f8f1..51459ad 100644
---
a/nlpcraft/src/main/scala/org/apache/nlpcraft/model/tools/cmdline/NCCliServerBeacon.scala
+++
b/nlpcraft/src/main/scala/org/apache/nlpcraft/model/tools/cmdline/NCCliAnsiBleach.scala
@@ -17,42 +17,31 @@
package org.apache.nlpcraft.model.tools.cmdline
+import java.io.{BufferedInputStream, BufferedReader}
+
+import org.apache.nlpcraft.common._
+import org.jline.utils.InputStreamReader
+import resource.managed
+
/**
- *
- * @param pid
- * @param dbUrl
- * @param dbDriver
- * @param dbPoolMin
- * @param dbPoolMax
- * @param dbPoolInit
- * @param dbPoolInc
- * @param initDb
- * @param restEndpoint
- * @param upLink
- * @param downLink
- * @param startMs
- * @param nlpEngine
- * @param tokenProviders
- * @param extConfigUrl
- * @param ph
+ * Pipe filter to remove ANSI escape sequences.
*/
-case class NCCliServerBeacon(
- pid: Long,
- dbUrl: String,
- dbDriver: String,
- dbPoolMin: Int,
- dbPoolMax: Int,
- dbPoolInit: Int,
- dbPoolInc: Int,
- dbInit: Boolean,
- restEndpoint: String,
- upLink: String,
- downLink: String,
- startMs: Long,
- nlpEngine: String,
- tokenProviders: String,
- extConfigUrl: String,
- filePath: String,
- @transient var ph: ProcessHandle = null
-)
+object NCCliAnsiBleach extends App {
+ managed(
+ new BufferedReader(
+ new InputStreamReader(
+ new BufferedInputStream(System.in)
+ )
+ )
+ ) acquireAndGet { in ⇒
+ var line = in.readLine()
+
+ while (line != null) {
+ System.out.println(U.stripAnsi(line))
+
+ line = in.readLine()
+ }
+ }
+ System.exit(0)
+}
diff --git
a/nlpcraft/src/main/scala/org/apache/nlpcraft/model/tools/cmdline/NCCliServerBeacon.scala
b/nlpcraft/src/main/scala/org/apache/nlpcraft/model/tools/cmdline/NCCliServerBeacon.scala
index 335f8f1..2847318 100644
---
a/nlpcraft/src/main/scala/org/apache/nlpcraft/model/tools/cmdline/NCCliServerBeacon.scala
+++
b/nlpcraft/src/main/scala/org/apache/nlpcraft/model/tools/cmdline/NCCliServerBeacon.scala
@@ -26,7 +26,7 @@ package org.apache.nlpcraft.model.tools.cmdline
* @param dbPoolMax
* @param dbPoolInit
* @param dbPoolInc
- * @param initDb
+ * @param dbInit
* @param restEndpoint
* @param upLink
* @param downLink