summaryrefslogtreecommitdiff
path: root/tools/gnu/classpath/tools/keytool/PrintCertCmd.java
diff options
context:
space:
mode:
Diffstat (limited to 'tools/gnu/classpath/tools/keytool/PrintCertCmd.java')
-rw-r--r--tools/gnu/classpath/tools/keytool/PrintCertCmd.java73
1 files changed, 45 insertions, 28 deletions
diff --git a/tools/gnu/classpath/tools/keytool/PrintCertCmd.java b/tools/gnu/classpath/tools/keytool/PrintCertCmd.java
index 9ba1d5970..d259258e7 100644
--- a/tools/gnu/classpath/tools/keytool/PrintCertCmd.java
+++ b/tools/gnu/classpath/tools/keytool/PrintCertCmd.java
@@ -38,6 +38,12 @@ exception statement from your version. */
package gnu.classpath.tools.keytool;
+import gnu.classpath.tools.getopt.ClasspathToolParser;
+import gnu.classpath.tools.getopt.Option;
+import gnu.classpath.tools.getopt.OptionException;
+import gnu.classpath.tools.getopt.OptionGroup;
+import gnu.classpath.tools.getopt.Parser;
+
import java.io.PrintWriter;
import java.security.cert.Certificate;
import java.security.cert.CertificateException;
@@ -63,7 +69,7 @@ import java.util.logging.Logger;
class PrintCertCmd extends Command
{
private static final Logger log = Logger.getLogger(PrintCertCmd.class.getName());
- private String _certFileName;
+ protected String _certFileName;
// default 0-arguments constructor
@@ -77,40 +83,18 @@ class PrintCertCmd extends Command
// life-cycle methods -------------------------------------------------------
- int processArgs(String[] args, int i)
- {
- int limit = args.length;
- String opt;
- while (++i < limit)
- {
- opt = args[i];
- log.finest("args[" + i + "]=" + opt);
- if (opt == null || opt.length() == 0)
- continue;
-
- if ("-file".equals(opt)) // -file FILE_NAME
- _certFileName = args[++i];
- else if ("-v".equals(opt))
- verbose = true;
- else
- break;
- }
-
- return i;
- }
-
void setup() throws Exception
{
setInputStreamParam(_certFileName);
- log.finer("-printcert handler will use the following options:");
- log.finer(" -file=" + _certFileName);
- log.finer(" -v=" + verbose);
+ log.finer("-printcert handler will use the following options:"); //$NON-NLS-1$
+ log.finer(" -file=" + _certFileName); //$NON-NLS-1$
+ log.finer(" -v=" + verbose); //$NON-NLS-1$
}
void start() throws CertificateException
{
- log.entering(getClass().getName(), "start");
+ log.entering(getClass().getName(), "start"); //$NON-NLS-1$
CertificateFactory x509Factory = CertificateFactory.getInstance(Main.X_509);
Certificate certificate = x509Factory.generateCertificate(inStream);
@@ -118,6 +102,39 @@ class PrintCertCmd extends Command
writer.println();
printVerbose(certificate, writer);
- log.exiting(getClass().getName(), "start");
+ log.exiting(getClass().getName(), "start"); //$NON-NLS-1$
+ }
+
+ // own methods --------------------------------------------------------------
+
+ Parser getParser()
+ {
+ log.entering(this.getClass().getName(), "getParser"); //$NON-NLS-1$
+
+ Parser result = new ClasspathToolParser(Main.PRINTCERT_CMD, true);
+ result.setHeader(Messages.getString("PrintCertCmd.5")); //$NON-NLS-1$
+ result.setFooter(Messages.getString("PrintCertCmd.6")); //$NON-NLS-1$
+ OptionGroup options = new OptionGroup(Messages.getString("PrintCertCmd.7")); //$NON-NLS-1$
+ options.add(new Option(Main.FILE_OPT,
+ Messages.getString("PrintCertCmd.8"), //$NON-NLS-1$
+ Messages.getString("PrintCertCmd.9")) //$NON-NLS-1$
+ {
+ public void parsed(String argument) throws OptionException
+ {
+ _certFileName = argument;
+ }
+ });
+ options.add(new Option(Main.VERBOSE_OPT,
+ Messages.getString("PrintCertCmd.10")) //$NON-NLS-1$
+ {
+ public void parsed(String argument) throws OptionException
+ {
+ verbose = true;
+ }
+ });
+ result.add(options);
+
+ log.exiting(this.getClass().getName(), "getParser", result); //$NON-NLS-1$
+ return result;
}
}