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 2cecaf6  Update NCCli.scala
2cecaf6 is described below

commit 2cecaf68294126ccf333f111f295a56cfe141b48
Author: Aaron Radzinski <[email protected]>
AuthorDate: Wed Oct 7 00:08:11 2020 -0700

    Update NCCli.scala
---
 .../nlpcraft/model/tools/cmdline/NCCli.scala       | 31 ++++++++++++++--------
 1 file changed, 20 insertions(+), 11 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 9d1c0ce..86e0b00 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
@@ -129,14 +129,21 @@ object NCCli extends App {
 
     private val gson = new GsonBuilder().setPrettyPrinting().create
 
-    case class SplitError(index: Int) extends Exception
-    case class NoLocalServer() extends IllegalStateException(s"Local REST 
server not found.")
-    case class MissingParameter(cmd: Command, paramId: String) extends 
IllegalArgumentException(
-        s"Missing mandatory parameter: $C${"'" + cmd.params.find(_.id == 
paramId).get.names.head + "'"}$RST, " +
-        s"type $C${"'help --cmd="}${c(cmd.name) + "'"}$RST to get help."
-    )
-    case class HttpError(httpCode: Int) extends IllegalStateException(s"REST 
error (HTTP ${c(httpCode)}).")
-    case class TooManyArguments() extends IllegalArgumentException("Too many 
arguments.")
+    case class SplitError(index: Int)
+        extends Exception
+    case class NoLocalServer()
+        extends IllegalStateException(s"Local REST server not found.")
+    case class MissingParameter(cmd: Command, paramId: String)
+        extends IllegalArgumentException(
+            s"Missing mandatory parameter: $C${"'" + cmd.params.find(_.id == 
paramId).get.names.head + "'"}$RST, " +
+            s"type $C'help --cmd=${cmd.name}'$RST to get help."
+        )
+    case class HttpError(httpCode: Int)
+        extends IllegalStateException(s"REST error (HTTP ${c(httpCode)}).")
+    case class TooManyArguments(cmd: Command)
+        extends IllegalArgumentException(s"Too many arguments, type $C'help 
--cmd=${cmd.name}'$RST to get help.")
+    case class NotEnoughArguments(cmd: Command)
+        extends IllegalArgumentException(s"Not enough arguments, type $C'help 
--cmd=${cmd.name}'$RST to get help.")
 
     case class HttpRestResponse(
         code: Int,
@@ -1252,7 +1259,7 @@ object NCCli extends App {
      */
     private def cmdNano(cmd: Command, args: Seq[Argument], repl: Boolean): 
Unit = {
         if (args.size > 1)
-            throw TooManyArguments()
+            throw TooManyArguments(cmd)
 
         Commands.nano(term,
             System.out,
@@ -1301,8 +1308,10 @@ object NCCli extends App {
      * @param repl Whether or not executing from REPL.
      */
     private def cmdLess(cmd: Command, args: Seq[Argument], repl: Boolean): 
Unit = {
-        if (args.size > 1)
-            throw TooManyArguments()
+        if (args.isEmpty)
+            throw NotEnoughArguments(cmd)
+        else if  (args.size > 1)
+            throw TooManyArguments(cmd)
 
         Commands.less(term,
             System.in,

Reply via email to