The plugin.xml file

The plugin.xml file defines the plug-in.

The structure of this file consists of the following elements:
  • A header element
  • One or more step-type elements
The header element identifies the plug-in. Each step-type element defines a step. Steps are available to users in the process editor and are used to construct component processes.

After the document type declaration, the plugin root element identifies the XML schema type, PluginXMLSchema_v1.xsd, which all plug-ins use.

Example

The following code sample presents the basic structure of the plugin.xml file for plug-ins:

<?xml version="1.0" encoding="UTF-8"?>
<plugin xmlns="http://www.urbancode.com/PluginXMLSchema_v1" 
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  xmlns:server="http://www.urbancode.com/PluginServerXMLSchema_v1">
  <header>
    <identifier id="plugin_id" version="version_number" name="Plug-in Name"/>
    <description>Example plug-in<description/>
    <tag>Change</tag>
    <plugin-type>Connector</plugin-type>
  </header>
  <step-type name="Step_Name">
    <description/>
    <properties>
        <property name="exampleTextBox">
            <property-ui type="textBox" label="Example text box"  description="A box for text" />
        </property>
    </properties>
    <post-processing>
      <![CDATA[
        if (properties.get("exitCode") != 0) {
            properties.put(new java.lang.String("Status"), new java.lang.String("Failure"));
        }
        else {
            properties.put("Status", "Success");
        }
     ]]&gt;
    </post-processing>

    <command program="${path_to_tool">
      <arg value="parameters_passed_to_tool"/>
      <arg path="${p:jdbcJar}"/>
      <arg file="command_to_run"/>
      <arg file="${PLUGIN_INPUT_PROPS}"/>
      <arg file="${PLUGIN_OUTPUT_PROPS}"/>
    </command>
  </step-type>

</plugin>