Class DefaultParser

    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected CommandLine cmd
      The command-line instance.
      protected Option currentOption
      The last option parsed.
      protected java.lang.String currentToken
      The token currently processed.
      protected java.util.List expectedOpts
      The required options and groups expected to be found when parsing the command line.
      protected Options options
      The current options.
      protected boolean skipParsing
      Flag indicating if tokens should no longer be analyzed and simply added as arguments of the command line.
      protected boolean stopAtNonOption
      Flag indicating how unrecognized tokens are handled.
    • Constructor Summary

      Constructors 
      Constructor Description
      DefaultParser()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void handleConcatenatedOptions​(java.lang.String token)
      Breaks token into its constituent parts using the following algorithm.
      CommandLine parse​(Options options, java.lang.String[] arguments)
      Parse the arguments according to the specified options.
      CommandLine parse​(Options options, java.lang.String[] arguments, boolean stopAtNonOption)
      Parse the arguments according to the specified options.
      CommandLine parse​(Options options, java.lang.String[] arguments, java.util.Properties properties)
      Parse the arguments according to the specified options and properties.
      CommandLine parse​(Options options, java.lang.String[] arguments, java.util.Properties properties, boolean stopAtNonOption)
      Parse the arguments according to the specified options and properties.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • stopAtNonOption

        protected boolean stopAtNonOption
        Flag indicating how unrecognized tokens are handled. true to stop the parsing and add the remaining tokens to the args list. false to throw an exception.
      • currentToken

        protected java.lang.String currentToken
        The token currently processed.
      • skipParsing

        protected boolean skipParsing
        Flag indicating if tokens should no longer be analyzed and simply added as arguments of the command line.
      • expectedOpts

        protected java.util.List expectedOpts
        The required options and groups expected to be found when parsing the command line.
    • Method Detail

      • parse

        public CommandLine parse​(Options options,
                                 java.lang.String[] arguments)
                          throws ParseException
        Description copied from interface: CommandLineParser
        Parse the arguments according to the specified options.
        Specified by:
        parse in interface CommandLineParser
        Parameters:
        options - the specified Options
        arguments - the command line arguments
        Returns:
        the list of atomic option and value tokens
        Throws:
        ParseException - if there are any problems encountered while parsing the command line tokens.
      • parse

        public CommandLine parse​(Options options,
                                 java.lang.String[] arguments,
                                 java.util.Properties properties)
                          throws ParseException
        Parse the arguments according to the specified options and properties.
        Parameters:
        options - the specified Options
        arguments - the command line arguments
        properties - command line option name-value pairs
        Returns:
        the list of atomic option and value tokens
        Throws:
        ParseException - if there are any problems encountered while parsing the command line tokens.
      • parse

        public CommandLine parse​(Options options,
                                 java.lang.String[] arguments,
                                 boolean stopAtNonOption)
                          throws ParseException
        Description copied from interface: CommandLineParser
        Parse the arguments according to the specified options.
        Specified by:
        parse in interface CommandLineParser
        Parameters:
        options - the specified Options
        arguments - the command line arguments
        stopAtNonOption - if true an unrecognized argument stops the parsing and the remaining arguments are added to the CommandLines args list. If false an unrecognized argument triggers a ParseException.
        Returns:
        the list of atomic option and value tokens
        Throws:
        ParseException - if there are any problems encountered while parsing the command line tokens.
      • parse

        public CommandLine parse​(Options options,
                                 java.lang.String[] arguments,
                                 java.util.Properties properties,
                                 boolean stopAtNonOption)
                          throws ParseException
        Parse the arguments according to the specified options and properties.
        Parameters:
        options - the specified Options
        arguments - the command line arguments
        properties - command line option name-value pairs
        stopAtNonOption - if true an unrecognized argument stops the parsing and the remaining arguments are added to the CommandLines args list. If false an unrecognized argument triggers a ParseException.
        Returns:
        the list of atomic option and value tokens
        Throws:
        ParseException - if there are any problems encountered while parsing the command line tokens.
      • handleConcatenatedOptions

        protected void handleConcatenatedOptions​(java.lang.String token)
                                          throws ParseException
        Breaks token into its constituent parts using the following algorithm.
        • ignore the first character ("-")
        • for each remaining character check if an Option exists with that id.
        • if an Option does exist then add that character prepended with "-" to the list of processed tokens.
        • if the Option can have an argument value and there are remaining characters in the token then add the remaining characters as a token to the list of processed tokens.
        • if an Option does NOT exist AND stopAtNonOption IS set then add the special token "--" followed by the remaining characters and also the remaining tokens directly to the processed tokens list.
        • if an Option does NOT exist AND stopAtNonOption IS NOT set then add that character prepended with "-".
        Parameters:
        token - The current token to be burst at the first non-Option encountered.
        Throws:
        ParseException - if there are any problems encountered while parsing the command line token.