Skip to content

Commit

Permalink
Fixed arguments bug
Browse files Browse the repository at this point in the history
  • Loading branch information
gastaldi committed Aug 20, 2013
1 parent 5a2ddf1 commit 2f732f6
Showing 1 changed file with 28 additions and 21 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
import org.jboss.aesh.cl.ParserBuilder;
import org.jboss.aesh.cl.builder.OptionBuilder;
import org.jboss.aesh.cl.exception.OptionParserException;
import org.jboss.aesh.cl.internal.OptionInt;
import org.jboss.aesh.cl.internal.ParameterInt;
import org.jboss.forge.addon.convert.Converter;
import org.jboss.forge.addon.convert.ConverterFactory;
Expand Down Expand Up @@ -56,34 +57,40 @@ public CommandLineParser generateParser(UICommand command,

UICommandMetadata metadata = command.getMetadata();
ParameterInt parameter = new ParameterInt(ShellUtil.shellifyName(metadata.getName()), metadata.getDescription());

for (InputComponent<?, Object> input : inputs.values())
{
if (!input.getName().equals("arguments"))
Object defaultValue = InputComponents.getValueFor(input);
boolean isMultiple = input instanceof ManyValued;
boolean hasValue = (InputComponents.getInputType(input) != InputType.CHECKBOX);
try
{
Object defaultValue = InputComponents.getValueFor(input);
boolean isMultiple = input instanceof ManyValued;
boolean hasValue = (InputComponents.getInputType(input) != InputType.CHECKBOX);
try
{
OptionBuilder optionBuilder = new OptionBuilder();
OptionBuilder optionBuilder = new OptionBuilder();

optionBuilder.name(input.getName())
.defaultValue(defaultValue == null ? null : defaultValue.toString())
.description(input.getLabel())
.hasMultipleValues(isMultiple)
.hasValue(hasValue)
.required(input.isRequired());
optionBuilder.name(input.getName())
.defaultValue(defaultValue == null ? null : defaultValue.toString())
.description(input.getLabel())
.hasMultipleValues(isMultiple)
.hasValue(hasValue)
.required(input.isRequired());

if (input.getShortName() != InputComponents.DEFAULT_SHORT_NAME)
{
optionBuilder.shortName(input.getShortName());
}
parameter.addOption(optionBuilder.create());
if (input.getShortName() != InputComponents.DEFAULT_SHORT_NAME)
{
optionBuilder.shortName(input.getShortName());
}
catch (OptionParserException e)
OptionInt option = optionBuilder.create();
if (input.getName().equals("arguments"))
{
logger.log(Level.SEVERE, "Error while parsing command option", e);
parameter.setArgument(option);
}
else
{
parameter.addOption(option);
}
}
catch (OptionParserException e)
{
logger.log(Level.SEVERE, "Error while parsing command option", e);
}
}
builder.parameter(parameter);
Expand All @@ -100,7 +107,7 @@ public void populateUIInputs(CommandLine commandLine,
if (input.getName().equals("arguments") &&
input instanceof UIInputMany)
{
InputComponents.setValueFor(converterFactory, input, commandLine.getArgument());
InputComponents.setValueFor(converterFactory, input, commandLine.getArgument().getValue());
}
else if (input instanceof UIInputMany)
{
Expand Down

0 comments on commit 2f732f6

Please sign in to comment.