diff options
Diffstat (limited to 'framework/src/main/java/org/onap/cli/fw/cmd')
6 files changed, 55 insertions, 27 deletions
diff --git a/framework/src/main/java/org/onap/cli/fw/cmd/BasicAuthLoginCommand.java b/framework/src/main/java/org/onap/cli/fw/cmd/BasicAuthLoginCommand.java index df1892fb..e4c89a7a 100644 --- a/framework/src/main/java/org/onap/cli/fw/cmd/BasicAuthLoginCommand.java +++ b/framework/src/main/java/org/onap/cli/fw/cmd/BasicAuthLoginCommand.java @@ -20,14 +20,13 @@ import java.util.Map; import org.apache.http.auth.UsernamePasswordCredentials; import org.apache.http.impl.auth.BasicScheme; -import org.onap.cli.fw.OnapCommand; import org.onap.cli.fw.OnapCommandSchema; import org.onap.cli.fw.conf.Constants; import org.onap.cli.fw.error.OnapCommandException; import org.onap.cli.fw.input.OnapCommandParameter; -@OnapCommandSchema(name = "basic-login", version = "cli-1.0", type = "auth", schema = "basic-login.yaml") -public class BasicAuthLoginCommand extends OnapCommand { +@OnapCommandSchema(name = "basic-login", version = "open-cli", type = "auth", schema = "basic-login.yaml") +public class BasicAuthLoginCommand extends OnapHttpCommand { @Override protected void run() throws OnapCommandException { @@ -36,7 +35,7 @@ public class BasicAuthLoginCommand extends OnapCommand { Map<String, OnapCommandParameter> paramMap = getParametersMap(); OnapCommandParameter usernameParam = paramMap.get(Constants.DEAFULT_PARAMETER_USERNAME); String username = usernameParam.getValue().toString(); - OnapCommandParameter usernamePassword = paramMap.get(Constants.DEAFULT_PARAMETER_PASS_WORD); + OnapCommandParameter usernamePassword = paramMap.get(Constants.DEAFULT_PARAMETER_PASSWORD); String password = usernamePassword.getValue().toString(); //Execute the command to get token diff --git a/framework/src/main/java/org/onap/cli/fw/cmd/BasicAuthLogoutCommand.java b/framework/src/main/java/org/onap/cli/fw/cmd/BasicAuthLogoutCommand.java index a6d22944..085f93c8 100644 --- a/framework/src/main/java/org/onap/cli/fw/cmd/BasicAuthLogoutCommand.java +++ b/framework/src/main/java/org/onap/cli/fw/cmd/BasicAuthLogoutCommand.java @@ -16,12 +16,11 @@ package org.onap.cli.fw.cmd; -import org.onap.cli.fw.OnapCommand; import org.onap.cli.fw.OnapCommandSchema; import org.onap.cli.fw.error.OnapCommandException; -@OnapCommandSchema(name = "basic-logout", version = "cli-1.0", type = "auth", schema = "basic-logout.yaml") -public class BasicAuthLogoutCommand extends OnapCommand { +@OnapCommandSchema(name = "basic-logout", version = "open-cli", type = "auth", schema = "basic-logout.yaml") +public class BasicAuthLogoutCommand extends OnapHttpCommand { @Override protected void run() throws OnapCommandException { diff --git a/framework/src/main/java/org/onap/cli/fw/cmd/CatalogCommand.java b/framework/src/main/java/org/onap/cli/fw/cmd/CatalogCommand.java index b17fbe3d..d377b78d 100644 --- a/framework/src/main/java/org/onap/cli/fw/cmd/CatalogCommand.java +++ b/framework/src/main/java/org/onap/cli/fw/cmd/CatalogCommand.java @@ -16,12 +16,11 @@ package org.onap.cli.fw.cmd; -import org.onap.cli.fw.OnapCommand; import org.onap.cli.fw.OnapCommandSchema; import org.onap.cli.fw.error.OnapCommandException; -@OnapCommandSchema(name = "catalog", version = "cli-1.0", type = "catalog", schema = "catalog.yaml") -public class CatalogCommand extends OnapCommand { +@OnapCommandSchema(name = "catalog", version = "open-cli", type = "catalog", schema = "catalog.yaml") +public class CatalogCommand extends OnapHttpCommand { @Override protected void run() throws OnapCommandException { diff --git a/framework/src/main/java/org/onap/cli/fw/cmd/OnapHttpCommand.java b/framework/src/main/java/org/onap/cli/fw/cmd/OnapHttpCommand.java index b541181e..3edcee40 100644 --- a/framework/src/main/java/org/onap/cli/fw/cmd/OnapHttpCommand.java +++ b/framework/src/main/java/org/onap/cli/fw/cmd/OnapHttpCommand.java @@ -24,6 +24,7 @@ import java.util.Map; import org.onap.cli.fw.OnapCommand; import org.onap.cli.fw.ad.OnapAuthClient; +import org.onap.cli.fw.ad.OnapService; import org.onap.cli.fw.conf.Constants; import org.onap.cli.fw.conf.OnapCommandConfg; import org.onap.cli.fw.error.OnapCommandException; @@ -31,6 +32,7 @@ import org.onap.cli.fw.error.OnapCommandExecutionFailed; import org.onap.cli.fw.error.OnapCommandFailedMocoGenerate; import org.onap.cli.fw.http.HttpInput; import org.onap.cli.fw.http.HttpResult; +import org.onap.cli.fw.input.OnapCommandParameter; import org.onap.cli.fw.output.OnapCommandResultAttribute; import org.onap.cli.fw.utils.OnapCommandUtils; import org.onap.cli.http.mock.MockJsonGenerator; @@ -51,6 +53,8 @@ public class OnapHttpCommand extends OnapCommand { protected OnapAuthClient authClient; + private OnapService onapService = new OnapService(); + public void setInput(HttpInput input) { this.input = input; } @@ -80,24 +84,51 @@ public class OnapHttpCommand extends OnapCommand { return resultMap; } + /* + * Onap service, this command uses to execute it. + */ + public OnapService getService() { + return this.onapService; + } + + public void setService(OnapService service) { + this.onapService = service; + } + @Override protected void initializeProfileSchema() throws OnapCommandException { - OnapCommandUtils.loadHTTPSchemaSection(this, this.getSchemaName(), false); + OnapCommandUtils.loadHttpSchema(this, this.getSchemaName(), true, false); + } + + @Override + protected void validate() throws OnapCommandException { + if (! this.isAuthRequired()) { + if (this.getParametersMap().containsKey(Constants.DEAFULT_PARAMETER_USERNAME)) { + this.getParametersMap().get(Constants.DEAFULT_PARAMETER_USERNAME).setOptional(true); + } + if (this.getParametersMap().containsKey(Constants.DEAFULT_PARAMETER_PASSWORD)) { + this.getParametersMap().get(Constants.DEAFULT_PARAMETER_PASSWORD).setOptional(true); + } + } + + super.validate(); + } + + private boolean isAuthRequired() { + return !this.getService().isNoAuth() + && "false".equals(this.getParametersMap().get(Constants.DEFAULT_PARAMETER_NO_AUTH).getValue()) + && this.getInfo().getCommandType().equals(CommandType.CMD); } @Override protected void run() throws OnapCommandException { try { - // For auth type commands, login and logout logic is not required - boolean isAuthRequired = !this.getService().isNoAuth() - && "false".equals(this.getParametersMap().get(Constants.DEFAULT_PARAMETER_OUTPUT_NO_AUTH).getValue()) - && this.getType().equals(CommandType.CMD); - - if (!isCommandInternal()) { - this.authClient = new OnapAuthClient( - this, - this.getResult().isDebug()); - } + // For auth/catalog type commands, login and logout logic is not required + boolean isAuthRequired = this.isAuthRequired(); + + this.authClient = new OnapAuthClient( + this, + this.getResult().isDebug()); if (isAuthRequired) { this.authClient.login(); diff --git a/framework/src/main/java/org/onap/cli/fw/cmd/OnapSchemaRefreshCommand.java b/framework/src/main/java/org/onap/cli/fw/cmd/OnapSchemaRefreshCommand.java index 823f0d77..a6e2e2b0 100644 --- a/framework/src/main/java/org/onap/cli/fw/cmd/OnapSchemaRefreshCommand.java +++ b/framework/src/main/java/org/onap/cli/fw/cmd/OnapSchemaRefreshCommand.java @@ -30,7 +30,7 @@ import java.util.List; * Refresh external schema. * */ -@OnapCommandSchema(name = "schema-refresh", version = "cli-1.0", schema = "schema-refresh.yaml") +@OnapCommandSchema(name = "schema-refresh", version = "open-cli", schema = "schema-refresh.yaml") public class OnapSchemaRefreshCommand extends OnapCommand { @Override @@ -59,11 +59,11 @@ public class OnapSchemaRefreshCommand extends OnapCommand { attribute.setValues(slNumbers); } else if ("command".equals(attribute.getName())) { attribute.setValues(cmdNames); - } else if ("product-version".equals(attribute.getName())) { + } else if ("product".equals(attribute.getName())) { attribute.setValues(cmdVersions); } else if ("schema".equals(attribute.getName())) { attribute.setValues(cmdFiles); - } else if ("version".equals(attribute.getName())) { + } else if ("ocs-version".equals(attribute.getName())) { attribute.setValues(versions); } } diff --git a/framework/src/main/java/org/onap/cli/fw/cmd/OnapSchemaValidateCommand.java b/framework/src/main/java/org/onap/cli/fw/cmd/OnapSchemaValidateCommand.java index 4028cc94..3366cf65 100644 --- a/framework/src/main/java/org/onap/cli/fw/cmd/OnapSchemaValidateCommand.java +++ b/framework/src/main/java/org/onap/cli/fw/cmd/OnapSchemaValidateCommand.java @@ -29,7 +29,7 @@ import java.util.Map; /** * Validate schema command. */ -@OnapCommandSchema(name = "schema-validate", version = "cli-1.0", schema = "schema-validate.yaml") +@OnapCommandSchema(name = "schema-validate", version = "open-cli", schema = "schema-validate.yaml") public class OnapSchemaValidateCommand extends OnapCommand { @Override @@ -50,8 +50,8 @@ public class OnapSchemaValidateCommand extends OnapCommand { }, location, true, true); - error.addAll(OnapCommandUtils.loadHTTPSchemaSection(new OnapHttpCommand(), - location, true)); + error.addAll(OnapCommandUtils.loadHttpSchema(new OnapHttpCommand(), + location, true, true)); List<String> slNumber = new ArrayList<>(); for (int i = 1; i <= error.size(); i++) { |