BUG 5413 - RestPerfClient: Hang on java.util.concurrent.CancellationException.
[netconf.git] / opendaylight / netconf / tools / netconf-testtool / src / main / java / org / opendaylight / netconf / test / tool / client / http / perf / Parameters.java
index 8ef49f3511a555073f421304ffb40c0dc2d9d51f..6f5736f0112b7cd67e3b24f0f18eeb848c1fab66 100644 (file)
@@ -53,6 +53,9 @@ public class Parameters {
     @Arg(dest = "auth")
     public ArrayList<String> auth;
 
+    @Arg(dest = "timeout")
+    public long timeout;
+
     static ArgumentParser getParser() {
         final ArgumentParser parser = ArgumentParsers.newArgumentParser("netconf stress client");
 
@@ -122,16 +125,26 @@ public class Parameters {
                 .help("Username and password for HTTP basic authentication in order username password.")
                 .dest("auth");
 
+        parser.addArgument("--timeout")
+                .type(Long.class)
+                .setDefault(5)
+                .help("Maximum time in minutes to wait for finishing all requests.")
+                .dest("timeout");
+
         return parser;
     }
 
     void validate() {
         Preconditions.checkArgument(port > 0, "Port =< 0");
         Preconditions.checkArgument(editCount > 0, "Edit count =< 0");
+        Preconditions.checkArgument(timeout > 0, "Timeout =< 0");
 
         Preconditions.checkArgument(editContent.exists(), "Edit content file missing");
         Preconditions.checkArgument(editContent.isDirectory() == false, "Edit content file is a dir");
         Preconditions.checkArgument(editContent.canRead(), "Edit content file is unreadable");
+
+        Preconditions.checkArgument(destination.startsWith("/"), "Destination should start with a '/'");
+
         // TODO validate
     }