Index: lutincommandline/src/java/org/codelutin/option/def/DefinitionParserFromProperties.java diff -u lutincommandline/src/java/org/codelutin/option/def/DefinitionParserFromProperties.java:1.3 lutincommandline/src/java/org/codelutin/option/def/DefinitionParserFromProperties.java:1.4 --- lutincommandline/src/java/org/codelutin/option/def/DefinitionParserFromProperties.java:1.3 Sun Mar 16 03:49:50 2008 +++ lutincommandline/src/java/org/codelutin/option/def/DefinitionParserFromProperties.java Sun Mar 16 11:08:27 2008 @@ -128,7 +128,7 @@ categoriesStr = sb.substring(1); } - List defaultOptions = DefaultOption.getConfigKeys(); + List defaultOptions = DefaultOptionAction.getConfigKeys(); for (Object o : properties.keySet()) { String fullKey = o.toString(); if (!fullKey.endsWith(DefinitionParserUtil.ODEFINITION_KEY_SUFFIX)) { @@ -140,7 +140,7 @@ // do not add this, this is a generated option log.warn("generic option " + key + " used instead of customize one, you should delete this option from your configuration..."); // use default definition - realDef = DefaultOption.valueOf(key).def(); + realDef = DefaultOptionAction.valueOf(key).def(); defaultOptions.remove(fullKey); } optionDefs.put(fullKey, realDef); @@ -149,7 +149,7 @@ // add default options not already found for (String optionKey : defaultOptions) { // get defaultOption - for (DefaultOption option : DefaultOption.values()) { + for (DefaultOptionAction option : DefaultOptionAction.values()) { if (option.configKey().equals(optionKey)) { optionDefs.put(optionKey, option.def()); } Index: lutincommandline/src/java/org/codelutin/option/def/DefaultOptionAction.java diff -u /dev/null lutincommandline/src/java/org/codelutin/option/def/DefaultOptionAction.java:1.1 --- /dev/null Sun Mar 16 11:08:32 2008 +++ lutincommandline/src/java/org/codelutin/option/def/DefaultOptionAction.java Sun Mar 16 11:08:27 2008 @@ -0,0 +1,73 @@ +package org.codelutin.option.def; + +import org.codelutin.option.OptionActionRunnable; +import org.codelutin.option.actions.OptionActionRunnableChangeConfig; +import org.codelutin.option.actions.OptionActionRunnableChangeFileConfig; +import org.codelutin.option.actions.OptionActionRunnableEditConfig; +import org.codelutin.option.actions.OptionActionRunnableHelp; +import org.codelutin.option.actions.OptionActionRunnableResetConfig; +import org.codelutin.option.actions.OptionActionRunnableShowConfig; +import org.codelutin.option.actions.OptionActionRunnableUi; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +/** + * les options gérées par commandline (config, help, usage...). + *

+ * Ces options seront générés par le plugin commandline car sont génériques. + * + * @author chemit + */ +public enum DefaultOptionAction { + + showConfig("--show-config * [normal|complete|tec]", OptionActionRunnableShowConfig.class), + + editConfig("--edit-config", OptionActionRunnableEditConfig.class), + + changeFileConfig("--config-file ", OptionActionRunnableChangeFileConfig.class), + + changeConfig("--config * [@categories@] ", OptionActionRunnableChangeConfig.class), + + help("--help|-h", OptionActionRunnableHelp.class), + + resetConfig("--reset-config", OptionActionRunnableResetConfig.class), + + ui("--ui ", OptionActionRunnableUi.class); + + private final String def; + private final Class action; + + public static boolean skipDefault = false; + + private DefaultOptionAction(String def, Class action) { + this.def = def; + this.action = action; + } + + public String def() { + return def; + } + + public String configKey() { + return name() + DefinitionParserUtil.ODEFINITION_KEY_SUFFIX; + } + + public Class action() { + return action; + } + + public static List getConfigKeys() { + List defaultOptions = new ArrayList(); + if (!skipDefault) { + for (DefaultOptionAction option : DefaultOptionAction.values()) { + defaultOptions.add(option.configKey()); + } + Collections.sort(defaultOptions); + } + return defaultOptions; + } + + +}