# Command Line

Capella provides a command line functionality. This functionality helps users to launch some Capella commands from a shell or a build engine like Jenkins.

The set of command proposals can be extended with additional specific commands that can be contributed through an extension point.

The extension point is provided by:

- the plug-in org.polarsys.capella.core.commandline.core
- and its identifier commandline.

The contribution to the extension point is done in the plugin.xml file of the plugin. Open this file and focus on the plugin.xml tab:

    <?xml version="1.0" encoding="UTF-8"?>
    <?eclipse version="3.4"?>
    <plugin>
       <extension point="org.polarsys.capella.core.commandline.core.commandline">
          <CommandlineExtension
             class=""
             id="">
          </CommandlineExtension>
       </extension>
    </plugin>

## Detail of the different fields

- `class`: a java class inheriting of org.polarsys.capelle.core.commandline.core.ICommandLine
- `id`: an unique identifier for the command

## CommandLine implementation

The org.polarsys.capelle.core.commandline.core.ICommandLine class provides some facilities to manage messages.

You can also inherits of
org.polarsys.capelle.core.commandline.core.AbstractCommandLine providing some helpers.

## Sample

The validation can be triggered by command line

- The Java class defining the quickfix
- Its registration within plugin.xml
- In MANIFEST/MANIFEST.MF file we need to depend on `org.polarsys.capella.core.commandline.core`