From 5ecfb47f0b7bd064d853bcaa1d7585196ddb9be8 Mon Sep 17 00:00:00 2001 From: cramakri <cramakri> Date: Mon, 21 Jun 2010 10:44:09 +0000 Subject: [PATCH] LMS-1594 Added jline to the referenced libraries and re-order handling of command line options to not request user/password unless all other required arguments have been supplied. SVN: 16638 --- datastore_server/build/build.xml | 2 +- .../cisd/openbis/dss/client/api/cli/CommandPut.java | 6 +++--- .../openbis/dss/client/api/cli/DataSetArguments.java | 6 +++--- .../openbis/dss/client/api/cli/GlobalArguments.java | 12 ++++++++---- 4 files changed, 15 insertions(+), 11 deletions(-) diff --git a/datastore_server/build/build.xml b/datastore_server/build/build.xml index 59d75c083f1..5e884d8cf5c 100644 --- a/datastore_server/build/build.xml +++ b/datastore_server/build/build.xml @@ -167,7 +167,7 @@ <attribute name="Main-Class" value="ch.systemsx.cisd.openbis.dss.client.api.cli.DssClient" /> <attribute name="Class-Path" value="cisd-base.jar cisd-args4j.jar stream-supporting-httpinvoker.jar log4j.jar commons-lang.jar commons-io.jar commons-logging.jar - commons-codec.jar commons-httpclient.jar spring.jar" /> + commons-codec.jar commons-httpclient.jar spring.jar jline.jar" /> <attribute name="Version" value="${version.number}" /> <attribute name="Build-Number" value="${version.number} (r${revision.number},${clean.flag})" /> diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/client/api/cli/CommandPut.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/client/api/cli/CommandPut.java index c40c4159432..881d58de6bb 100644 --- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/client/api/cli/CommandPut.java +++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/client/api/cli/CommandPut.java @@ -97,9 +97,6 @@ class CommandPut extends AbstractCommand @Override public boolean isComplete() { - if (false == super.isComplete()) - return false; - if (getArguments().size() < 3) return false; @@ -121,6 +118,9 @@ class CommandPut extends AbstractCommand return false; } + if (false == super.isComplete()) + return false; + return true; } } diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/client/api/cli/DataSetArguments.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/client/api/cli/DataSetArguments.java index bce2b8ad1ce..db62d9afaed 100644 --- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/client/api/cli/DataSetArguments.java +++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/client/api/cli/DataSetArguments.java @@ -56,14 +56,14 @@ class DataSetArguments extends GlobalArguments @Override public boolean isComplete() { - if (false == super.isComplete()) - return false; - if (getDataSetCode().length() < 1) { return false; } + if (false == super.isComplete()) + return false; + return true; } } diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/client/api/cli/GlobalArguments.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/client/api/cli/GlobalArguments.java index d7f13bd9ec5..261c83bce6a 100644 --- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/client/api/cli/GlobalArguments.java +++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/client/api/cli/GlobalArguments.java @@ -100,6 +100,9 @@ class GlobalArguments /** * Check that the arguments make sense. + * <p> + * Note to subclassers -- this command might prompt the user for username and/or password and + * thus should be called as the last part of subclass overrides of this method. */ public boolean isComplete() { @@ -108,6 +111,11 @@ class GlobalArguments return true; } + if (serverBaseUrl.length() < 1) + { + return false; + } + // At the moment, username, passowrd, and server base url should all be non-empty // If username wasn't specified, read username and password from console @@ -146,10 +154,6 @@ class GlobalArguments return false; } } - if (serverBaseUrl.length() < 1) - { - return false; - } return true; } -- GitLab