All Downloads are FREE. Search and download functionalities are using the official Maven repository.

xapi.args.ArgHandler Maven / Gradle / Ivy

Go to download

This module exists solely to package all other gwt modules into a single uber jar. This makes deploying to non-mavenized targets much easier. Of course, you would be wise to inherit your dependencies individually; the uber jar is intended for projects like collide, which have complex configuration, and adding many jars would be a pain.

The newest version!
package xapi.args;

/**
 * Base class for command line argument handlers. 
 * 
 * @author GWT team "gwtproject.org"
 * @author James X. Nelson "[email protected]"
 *
 */
public abstract class ArgHandler {

  protected static final String[] EMPTY = new String[0];
  
  public String[] getDefaultArgs() {
    return null;
  }

  public abstract String getPurpose();

  public abstract String getTag();

  /**
   * A list of words representing the arguments in help text.
   */
  public abstract String[] getTagArgs();

  /**
   * Attempts to process one flag or "extra" command-line argument (that appears
   * without a flag).
   * @param args  the arguments passed in to main()
   * @param tagIndex  an index into args indicating the first argument to use.
   * If this is a handler for a flag argument. Otherwise it's the index of the
   * "extra" argument.
   * @return the number of additional arguments consumed, not including the flag or
   * extra argument. Alternately, returns -1 if the argument cannot be used. This will
   * causes the program to abort and usage to be displayed.
   */
  public abstract int handle(String[] args, int tagIndex);

  public boolean isRequired() {
    return false;
  }

  public boolean isUndocumented() {
    return false;
  }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy