You can apply a standard structure for the projects of your Orchestrator plug-ins.

You can use a standard Maven structure with modules for your plug-in projects to bring clarity in where every piece of functionality resides.

Table 1. Structure of a Plug-In Project
Module Description
/myAwesomePlugin-plugin The root of the plug-in project.
/o11nplugin-myAwesomePlugin The module that composes the final plug-in DAR file.
/o11nplugin-myAwesomePlugin-config The module that contains the plug-in configuration Web application. It generates a standard WAR file.
/o11nplugin-myAwesomePlugin-core The module that contains all the classes that implement any of the standard Orchestrator plug-in interfaces and other auxiliary classes that they use. It generates a standard JAR file.
/o11nplugin-myAwesomePlugin-model The module that contains all the classes that help you integrate the third-party technology with Orchestrator through the plug-in. The classes should not contain any direct reference to the standard Orchestrator plug-in APIs.
/o11nplugin-myAwesomePlugin-package The module that imports an external Orchestrator package file with actions and workflows to include it inside the final plug-in DAR file. The module is optional.