Uploaded image for project: 'Commons CLI'
  1. Commons CLI
  2. CLI-154

Incomplete usage documentation about Java property option

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 1.0, 1.1
    • 1.2
    • Documentation
    • None

    Description

      On Usage Scenarios page http://jakarta.apache.org/commons/cli/usage.html, in the "Java property option" section of "Ant example", after the creation of the property Option, ie :

      Option property = OptionBuilder.withArgName( "property=value" )
      .hasArg()
      .withValueSeparator()
      .withDescription( "use value for given property" )
      .create( "D" );

      One should add :

      property.setArgs(Option.UNLIMITED_VALUES);

      for the example to work properly.

      In the "Querying the commandline" section, the code line :
      this.buildfile = line.getValue( "buildfile" );

      should be :
      this.buildfile = line.getOptionValue( "buildfile" );

      Also some parsing code could be given about the special property option, for instance :

      Properties props = new Properties();

      if( line.hasOption( "D" ) ) {

      String[] args = line.getOptionValues( "D" );

      for (int i = 0; i < args.length; i += 2)

      { String propertyName = args[i]; String propertyValue = null; if (i + 1 < args.length) propertyValue = args[i + 1]; props.put(propertyName, propertyValue); }

      }

      Attachments

        Activity

          People

            Unassigned Unassigned
            haution HAUTION Philippe
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Time Tracking

                Estimated:
                Original Estimate - 1h
                1h
                Remaining:
                Remaining Estimate - 1h
                1h
                Logged:
                Time Spent - Not Specified
                Not Specified