Class Options

  • All Implemented Interfaces:
    Option

    public class Options
    extends java.lang.Object
    implements Option
    Yet another GNU long options parser. This one is configured by parsing its Usage string.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String NL  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.util.List<java.lang.Object> argObjects()
      get remaining non-options args as Objects.
      java.util.List<java.lang.String> args()
      get remaining non-options args as Strings.
      static Option compile​(java.lang.String optSpec)  
      static Option compile​(java.lang.String[] optSpec)  
      static Option compile​(java.lang.String[] optSpec, java.lang.String[] gspec)  
      static Option compile​(java.lang.String[] optSpec, Option gopt)  
      java.lang.String get​(java.lang.String name)
      get value of named option.
      java.util.List<java.lang.String> getList​(java.lang.String name)
      get list of all values for named option.
      int getNumber​(java.lang.String name)
      get value of named option as a Number.
      java.lang.Object getObject​(java.lang.String name)
      get value of named option as an Object.
      java.util.List<java.lang.Object> getObjectList​(java.lang.String name)
      get list of all Object values for named option.
      boolean isSet​(java.lang.String name)
      test whether specified option has been explicitly set.
      static void main​(java.lang.String[] args)  
      Option parse​(java.lang.Object[] argv)
      parse arguments.
      Option parse​(java.lang.Object[] argv, boolean skipArg0)
      parse arguments.
      Option parse​(java.util.List<? extends java.lang.Object> argv)
      parse arguments.
      Option parse​(java.util.List<? extends java.lang.Object> argv, boolean skipArg0)
      parse arguments.
      Option setOptionsFirst​(boolean optionsFirst)
      require options to precede args.
      Option setStopOnBadOption​(boolean stopOnBadOption)
      stop parsing on the first unknown option.
      java.lang.String toString()  
      void usage()
      print usage message to System.err.
      java.lang.IllegalArgumentException usageError​(java.lang.String s)
      prints usage message and returns IllegalArgumentException, for you to throw.
      • Methods inherited from class java.lang.Object

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

      • NL

        public static final java.lang.String NL
    • Method Detail

      • main

        public static void main​(java.lang.String[] args)
      • compile

        public static Option compile​(java.lang.String[] optSpec)
      • compile

        public static Option compile​(java.lang.String optSpec)
      • compile

        public static Option compile​(java.lang.String[] optSpec,
                                     Option gopt)
      • compile

        public static Option compile​(java.lang.String[] optSpec,
                                     java.lang.String[] gspec)
      • setStopOnBadOption

        public Option setStopOnBadOption​(boolean stopOnBadOption)
        Description copied from interface: Option
        stop parsing on the first unknown option. This allows one parser to get its own options and then pass the remaining options to another parser.
        Specified by:
        setStopOnBadOption in interface Option
      • setOptionsFirst

        public Option setOptionsFirst​(boolean optionsFirst)
        Description copied from interface: Option
        require options to precede args. Default is false, so options can appear between or after args.
        Specified by:
        setOptionsFirst in interface Option
      • isSet

        public boolean isSet​(java.lang.String name)
        Description copied from interface: Option
        test whether specified option has been explicitly set.
        Specified by:
        isSet in interface Option
        Returns:
      • getObject

        public java.lang.Object getObject​(java.lang.String name)
        Description copied from interface: Option
        get value of named option as an Object. If multiple options given, this method returns the last one. Use Option.getObjectList(String) to get all values.
        Specified by:
        getObject in interface Option
        Returns:
      • getObjectList

        public java.util.List<java.lang.Object> getObjectList​(java.lang.String name)
        Description copied from interface: Option
        get list of all Object values for named option.
        Specified by:
        getObjectList in interface Option
        Returns:
      • getList

        public java.util.List<java.lang.String> getList​(java.lang.String name)
        Description copied from interface: Option
        get list of all values for named option.
        Specified by:
        getList in interface Option
        Returns:
        empty list if option not given and no default specified.
      • get

        public java.lang.String get​(java.lang.String name)
        Description copied from interface: Option
        get value of named option. If multiple options given, this method returns the last one. Use Option.getList(String) to get all values.
        Specified by:
        get in interface Option
        Returns:
      • getNumber

        public int getNumber​(java.lang.String name)
        Description copied from interface: Option
        get value of named option as a Number.
        Specified by:
        getNumber in interface Option
        Returns:
      • argObjects

        public java.util.List<java.lang.Object> argObjects()
        Description copied from interface: Option
        get remaining non-options args as Objects.
        Specified by:
        argObjects in interface Option
        Returns:
      • args

        public java.util.List<java.lang.String> args()
        Description copied from interface: Option
        get remaining non-options args as Strings.
        Specified by:
        args in interface Option
        Returns:
      • usage

        public void usage()
        Description copied from interface: Option
        print usage message to System.err.
        Specified by:
        usage in interface Option
      • usageError

        public java.lang.IllegalArgumentException usageError​(java.lang.String s)
        prints usage message and returns IllegalArgumentException, for you to throw.
        Specified by:
        usageError in interface Option
        Returns:
        IllegalArgumentException
      • parse

        public Option parse​(java.lang.Object[] argv)
        Description copied from interface: Option
        parse arguments.
        Specified by:
        parse in interface Option
      • parse

        public Option parse​(java.util.List<? extends java.lang.Object> argv)
        Description copied from interface: Option
        parse arguments.
        Specified by:
        parse in interface Option
      • parse

        public Option parse​(java.lang.Object[] argv,
                            boolean skipArg0)
        Description copied from interface: Option
        parse arguments.
        Specified by:
        parse in interface Option
      • parse

        public Option parse​(java.util.List<? extends java.lang.Object> argv,
                            boolean skipArg0)
        Description copied from interface: Option
        parse arguments. If skipArgv0 is true, then parsing begins at arg1. This allows for commands where argv0 is the command name rather than a real argument.
        Specified by:
        parse in interface Option
        Returns:
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object