Class CommandCatalog


  • public class CommandCatalog
    extends Object
    List of all commands known by jgit's command line tools.

    Commands are implementations of TextBuiltin, with an optional Command class annotation to insert additional documentation or override the default command name (which is guessed from the class name).

    Commands may be registered by adding them to a services file in the same JAR (or classes directory) as the command implementation. The service file name is META-INF/services/org.eclipse.jgit.pgm.TextBuiltin and it contains one concrete implementation class name per line.

    Command registration is identical to Java 6's services, however the catalog uses a lightweight wrapper to delay creating a command instance as much as possible. This avoids initializing the AWT or SWT GUI toolkits even if the command's constructor might require them.

    • Method Detail

      • get

        public static CommandRef get​(String name)
        Locate a single command by its user friendly name.
        Parameters:
        name - name of the command. Typically in dash-lower-case-form, which was derived from the DashLowerCaseForm class name.
        Returns:
        the command instance; null if no command exists by that name.
      • all

        public static CommandRef[] all()
        Get all commands sorted by their name
        Returns:
        all known commands, sorted by command name.
      • common

        public static CommandRef[] common()
        Get all common commands sorted by their name
        Returns:
        all common commands, sorted by command name.