Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
MoDisco/Workflow
MoDisco workflow provides a mechanism to initialize and launch a workflow of discoverers, generators and model transformations. This project uses mainly two existing components in eclipse platform: LaunchConfiguration and MWE (Model Workflow Engine).
Contents
Description
Requirements
To use the plug-in you need:
- JDK 1.5 or above
- Eclipse Modeling Ganymede SR2 (Version: 3.4.2) because it incorporates JET, QVTo and ATL.
Install MoDiscoWorkflow
Install
Follow these various steps:
- Open Eclipse platform
- Click on the "Help" menu of Eclipse
- Click on the "Software Updates" menu
- Click on the "Available software" thumbnail
- Click on the "Add site" button
- Enter this address: http://... (soon in MoDisco)
- Click on the "Ok" button.
- Choose your drivers and select "Plug-in MoDiscoWorkflow".
- Click on the "Install..." button
Dependencies errors
After you clicked on the "Install..." button, you could have any dependencies errors. In that case, you must install the missing packages at the origin of the errors. Then restart the operation.
If you didn't have dependencies errors, click on the "Finish" button. The installation of the MoDiscoWorkflow plug-in and his selected drivers is finished. Congratulation!
Build your MoDiscoWorkflow
The user interface of MoDiscoWorkflow
To reach MoDiscoWorkflow plug-in user interface, you have to click on this button and then click on the “Run Configuration” menu.
You can now build your MoDiscoWorkflow. Various properties are proposed to you:
- Add a MoDiscoWork in the MoDiscoWorkflow from the “New…” button
- Edit a MoDiscoWork from the button “Edit…”
- Remove a MoDiscoWork from the button “Remove”
- Up a MoDiscoWork in the MoDiscoWorkflow from the “Up” button
- Down a MoDiscoWork in the MoDiscoWorkflow from the “Down” button
- Load a MoDiscoWork in the MoDiscoWorkflow from the “Load…” button
Create a MoDiscoWork
After having clicked on the "New.." button, you must choose the type of transformation you want to add. According to the installed drivers, you have more or less choice.
After choosing the type of MoDiscoWork, click on the "Next" button to configure your transformation. For the example, we have chosen "Transformation Java". Now, you can configure your MoDiscoWork of java type.
Edit a MoDiscoWork
To edit a MoDiscoWork, click on the “Edit…” button after selecting the desired MoDiscoWork. A new wizard opens to configure the selected MoDiscoWork.
Remove a MoDiscoWork
To remove a MoDiscoWork, you must select a MoDiscoWork in the MoDiscoWorkflow and click on the "Delete" button. A new window opens proposing these various choices:
- "Delete from launcher": To delete the MoDiscoWork selected in the MoDiscoWorkflow and its associated launcher.
- "Delete from workflow" To delete the MoDiscoWork selected in the MoDiscoWorkflow
- Cancel : To cancel
Load a MoDiscoWork
When you want to load a launcher (MoDiscoWork) in the MoDiscoWorkflow, click on the "Load…" button. A new window opens proposing every launchers present in the workspace which have a driver defined for the type of launcher. To load a MoDisocoWork, select a launcher and click on the “Finish” button.
Run your MoDiscoWorkflow
When you finished building your MoDiscoWorkflow, click on the “Run” button. An error window opens if one or more MoDiscoWork are not valid. Every MoDiscoWork must be valid to run MoDiscoWorkflow.
Create a driver for MoDiscoWorkflow
"driver" extension point
The MoDiscoWorkflow plug-in proposes an extension point named "driver". This extension point contains a sequence one..one of "driverUI" extension point and "execution" extension point. The "id" field is required. It allows binding both extension points.
===="driverUI" extension point====" This extension point defines:
- A field name: This name will be used to the list of transformation types.
- A field icon: It’s driver icon path.
- A field class: The class has to implement this interface "org.eclipse.gmt.modisco.workflow.DriverInterface".
"execution" extension point
This extension point defines:
- A field class: The class has to implement this interface "org.eclipse.gmt.modisco.workflow.ExecutionInterface"
Papyrus driver example
In this example, we are creating a new driver for launcher of papyrus. Follow these steps:
- Create a new plug-in project
- Name this project "org.eclipse.gmt.modisco.driver.papyrus"
- Add the "com.cea.papyrus.extensionpoints.transformation" plug-in to the list of plug-ins required for the operation of this plug-in (dependencies)
- Create a class ("LaunchDriverPapyrus.java") whish implements the interface "org.eclipse.gmt.modisco.workflow.DriverInterface"
- Create a class ("TransformationExecute.java") whish implements the interface "org.eclipse.gmt.modisco.workflow.ExecutionInterface"
- Add a new extension named "org.eclipse.gmt.driver"
- Name the "id" field of extension point "idPapyrus"
- For the "driverUI" point extension:
- Name the "name" field "Papyrus Generation"
- Indicate the icon papyrus path in the plug-in
- Indicate the class which implements the interface "org.eclipse.gmt.modisco.workflow.DriverInterface"
- For the "execution" point extension:
- Indicate the class which implements the interface "org.eclipse.gmt.modisco.workflow.ExecutionInterface"
Team
Nicolas Payneau (Mia-Software)