diff options
Diffstat (limited to 'base/java-tools/src/com/netscape/cmstools')
-rw-r--r-- | base/java-tools/src/com/netscape/cmstools/tps/token/TokenCLI.java | 2 | ||||
-rw-r--r-- | base/java-tools/src/com/netscape/cmstools/tps/token/TokenModifyCLI.java | 60 |
2 files changed, 54 insertions, 8 deletions
diff --git a/base/java-tools/src/com/netscape/cmstools/tps/token/TokenCLI.java b/base/java-tools/src/com/netscape/cmstools/tps/token/TokenCLI.java index e7dd6a308..328490a49 100644 --- a/base/java-tools/src/com/netscape/cmstools/tps/token/TokenCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/tps/token/TokenCLI.java @@ -18,6 +18,7 @@ package com.netscape.cmstools.tps.token; +import org.apache.commons.lang.StringUtils; import org.jboss.resteasy.plugins.providers.atom.Link; import com.netscape.certsrv.tps.token.TokenClient; @@ -54,6 +55,7 @@ public class TokenCLI extends CLI { if (token.getUserID() != null) System.out.println(" User ID: " + token.getUserID()); if (token.getType() != null) System.out.println(" Type: " + token.getType()); if (token.getStatus() != null) System.out.println(" Status: " + token.getStatus()); + if (token.getNextStates() != null) System.out.println(" Next States: " + StringUtils.join(token.getNextStates(), ", ")); if (token.getAppletID() != null) System.out.println(" Applet ID: " + token.getAppletID()); if (token.getKeyInfo() != null) System.out.println(" Key Info: " + token.getKeyInfo()); if (token.getPolicy() != null) System.out.println(" Policy: " + token.getPolicy()); diff --git a/base/java-tools/src/com/netscape/cmstools/tps/token/TokenModifyCLI.java b/base/java-tools/src/com/netscape/cmstools/tps/token/TokenModifyCLI.java index 38e9fb00d..071d15000 100644 --- a/base/java-tools/src/com/netscape/cmstools/tps/token/TokenModifyCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/tps/token/TokenModifyCLI.java @@ -24,6 +24,7 @@ import org.apache.commons.cli.CommandLine; import org.apache.commons.cli.Option; import com.netscape.certsrv.tps.token.TokenData; +import com.netscape.certsrv.tps.token.TokenStatus; import com.netscape.cmstools.cli.CLI; import com.netscape.cmstools.cli.MainCLI; @@ -65,6 +66,10 @@ public class TokenModifyCLI extends CLI { option = new Option(null, "policy", true, "Policy"); option.setArgName("Policy"); options.addOption(option); + + option = new Option(null, "status", true, "Status"); + option.setArgName("Status"); + options.addOption(option); } public void execute(String[] args) throws Exception { @@ -94,17 +99,56 @@ public class TokenModifyCLI extends CLI { System.exit(-1); } - String tokenID = cmdArgs[0]; - TokenData tokenData = new TokenData(); + boolean modify = false; + + String tokenID = cmdArgs[0]; tokenData.setID(tokenID); - tokenData.setUserID(cmd.getOptionValue("user")); - tokenData.setType(cmd.getOptionValue("type")); - tokenData.setAppletID(cmd.getOptionValue("applet")); - tokenData.setKeyInfo(cmd.getOptionValue("key-info")); - tokenData.setPolicy(cmd.getOptionValue("policy")); - tokenData = tokenCLI.tokenClient.modifyToken(tokenID, tokenData); + String userID = cmd.getOptionValue("user"); + if (userID != null) { + tokenData.setUserID(userID); + modify = true; + } + + String type = cmd.getOptionValue("type"); + if (type != null) { + tokenData.setType(type); + modify = true; + } + + String appletID = cmd.getOptionValue("applet"); + if (appletID != null) { + tokenData.setAppletID(appletID); + modify = true; + } + + String keyInfo = cmd.getOptionValue("key-info"); + if (keyInfo != null) { + tokenData.setKeyInfo(keyInfo); + modify = true; + } + + String policy = cmd.getOptionValue("policy"); + if (policy != null) { + tokenData.setPolicy(policy); + modify = true; + } + + if (modify) { + tokenData = tokenCLI.tokenClient.modifyToken(tokenID, tokenData); + } + + String status = cmd.getOptionValue("status"); + if (status != null) { + tokenData = tokenCLI.tokenClient.changeTokenStatus(tokenID, TokenStatus.valueOf(status)); + } + + if (!modify && status == null) { + System.err.println("Error: No modifications specified."); + printHelp(); + System.exit(-1); + } MainCLI.printMessage("Modified token \"" + tokenID + "\""); |