diff options
author | tkellner <tkellner@174cde9d-5d70-4d2a-aa98-46368bc2aaf7> | 2013-04-10 19:28:04 +0000 |
---|---|---|
committer | tkellner <tkellner@174cde9d-5d70-4d2a-aa98-46368bc2aaf7> | 2013-04-10 19:28:04 +0000 |
commit | c2602f46edd68e81cf66fffca3d0dccfdfab4ddc (patch) | |
tree | eaf399ea3fa1844c13f707a70f8950570ddd81f7 /pdf-over-gui/src/main/java/at/asit/pdfover/gui/cliarguments/ArgumentHandler.java | |
parent | 07c7efdfe42ccde13d777df7a6ba0a5c3e335b4f (diff) | |
download | pdf-over-c2602f46edd68e81cf66fffca3d0dccfdfab4ddc.tar.gz pdf-over-c2602f46edd68e81cf66fffca3d0dccfdfab4ddc.tar.bz2 pdf-over-c2602f46edd68e81cf66fffca3d0dccfdfab4ddc.zip |
Configuration overlay added
* Commandline configuration will be stored in an overlay
* This overlay won't be shown on the configuration page
* This overlay won't be saved
* Also slightly reworked CLI Argument creation
git-svn-id: https://joinup.ec.europa.eu/svn/pdf-over/trunk@336 174cde9d-5d70-4d2a-aa98-46368bc2aaf7
Diffstat (limited to 'pdf-over-gui/src/main/java/at/asit/pdfover/gui/cliarguments/ArgumentHandler.java')
-rw-r--r-- | pdf-over-gui/src/main/java/at/asit/pdfover/gui/cliarguments/ArgumentHandler.java | 35 |
1 files changed, 19 insertions, 16 deletions
diff --git a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/cliarguments/ArgumentHandler.java b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/cliarguments/ArgumentHandler.java index dbc61e24..378588eb 100644 --- a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/cliarguments/ArgumentHandler.java +++ b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/cliarguments/ArgumentHandler.java @@ -34,7 +34,6 @@ public class ArgumentHandler { /** * SLF4J Logger instance **/ - @SuppressWarnings("unused") private static final Logger log = LoggerFactory .getLogger(ArgumentHandler.class); @@ -65,21 +64,27 @@ public class ArgumentHandler { /** * Adds a CLIArgument to the handler * - * @param arg + * @param cliArgument the CLIArgument subclass to add */ - public void addCLIArgument(CLIArgument arg) { - if (arg == null) { - return; - } + public void addCLIArgument(Class<? extends CLIArgument> cliArgument) { - String[] commandOptions = arg.getCommandOptions(); + CLIArgument arg; + try { + arg = cliArgument.newInstance(); - if (commandOptions == null) { - return; - } + arg.setStateMachine(this.stateMachine); + + String[] commandOptions = arg.getCommandOptions(); - for (int i = 0; i < commandOptions.length; i++) { - this.cliArguments.put(commandOptions[i], arg); + if (commandOptions == null) { + return; + } + + for (int i = 0; i < commandOptions.length; i++) { + this.cliArguments.put(commandOptions[i], arg); + } + } catch (Exception e) { + log.error("Error instantiating CLI argument" , e); //$NON-NLS-1$ } } @@ -93,13 +98,11 @@ public class ArgumentHandler { for (int i = 0; i < args.length; i++) { if (this.cliArguments.containsKey(args[i])) { - i = this.cliArguments.get(args[i]).handleArgument(args, i, - this.stateMachine, this); + i = this.cliArguments.get(args[i]).handleArgument(args, i, this); } else { // Assume we got the document we want to sign if (this.cliArguments.containsKey("-i")) { //$NON-NLS-1$ - i = this.cliArguments.get("-i").handleArgument(args, i-1, //$NON-NLS-1$ - this.stateMachine, this); + i = this.cliArguments.get("-i").handleArgument(args, i-1, this); //$NON-NLS-1$ } } } |