Class ArgumentGroupImpl

java.lang.Object
net.sourceforge.argparse4j.internal.ArgumentGroupImpl
All Implemented Interfaces:
ArgumentContainer, ArgumentGroup, MutuallyExclusiveGroup

public final class ArgumentGroupImpl extends Object implements ArgumentGroup, MutuallyExclusiveGroup
The application code must not use this class directly. This class implements both mutually exclusive group and just a conceptual group.
  • Field Details

    • index_

      private int index_
    • title_

      private final String title_
    • description_

      private String description_
    • argumentParser_

      private final ArgumentParserImpl argumentParser_
    • args_

      private final List<ArgumentImpl> args_
    • mutex_

      private boolean mutex_
      true if this is a mutually exclusive group.
    • required_

      private boolean required_
      true if one of the arguments in this group must be specified.
  • Constructor Details

  • Method Details

    • description

      public ArgumentGroupImpl description(String description)
      Description copied from interface: ArgumentContainer
      Sets the description for the arguments of this container.
      Specified by:
      description in interface ArgumentContainer
      Specified by:
      description in interface ArgumentGroup
      Specified by:
      description in interface MutuallyExclusiveGroup
      Parameters:
      description - The description of this container.
      Returns:
      this
    • addArgument

      public ArgumentImpl addArgument(String... nameOrFlags)
      Description copied from interface: ArgumentContainer

      Creates new Argument, adds it to this container and returns it.

      The nameOrFlags is either a single name of positional argument or a list of option strings for named argument, e.g. foo or -f, --foo.

      Specified by:
      addArgument in interface ArgumentContainer
      Parameters:
      nameOrFlags - A name or a list of option strings of new Argument.
      Returns:
      Argument object.
    • required

      public ArgumentGroupImpl required(boolean required)
      Description copied from interface: MutuallyExclusiveGroup

      If true is given, one of the arguments in this group must be specified otherwise error will be issued.

      The default value is false.

      Specified by:
      required in interface MutuallyExclusiveGroup
      Parameters:
      required - true or false
      Returns:
      this
    • printHelp

      public void printHelp(PrintWriter writer, int format_width)
    • getIndex

      int getIndex()
    • setIndex

      void setIndex(int index)
    • isMutex

      boolean isMutex()
    • setMutex

      void setMutex(boolean mutex)
    • isRequired

      public boolean isRequired()
    • getArgs

      public List<ArgumentImpl> getArgs()
    • isSeparateHelp

      boolean isSeparateHelp()
      Returns true if the help message for this group should be in separate group.
      Returns:
      true if the help message for this group should be in separate group.