With this example, we will create a plugin that displays a message on the program startup. To create the plugin, you need to write a plugin descriptor.
Step #1: Create your plugin folder in a plugins folder
Create a myplugin folder in the plugins folder in the installation directory of the modeling tool.
Step #2: Write a plugin code
The plugin must contain at least one class derived from the com.nomagic.magicdraw.plugins.Plugin class.
package myplugin; import com.nomagic.magicdraw.plugins.Plugin; import javax.swing.*; public class MyPlugin extends Plugin { @Override public void init() { JOptionPane.showMessageDialog(null, "My Plugin init"); } @Override public boolean close() { JOptionPane.showMessageDialog( null, "My Plugin close"); return true; } @Override public boolean isSupported() { //plugin can check here for specific conditions //if false is returned plugin is not loaded. return true; } }
This plugin shows the one message when it is initialized, and another message when it is closed.
Step #3: Compile and pack the plugin to a .jar file
For more information on the classpath specification details, see Classpath.
The compiled code must be packed to a .jar file.
To create a .jar file, use a jar command in the plugins directory:
jar -cf myplugin.jar myplugin/*.class
Step #4: Write a plugin descriptor
The plugin descriptor is a file named plugin.xml. This file should be placed in the myplugin folder.
<?xml version="1.0" encoding="UTF-8"?> <plugin id="my.first.plugin" name="My First Plugin" version="1.0" provider-name="Coder" class="myplugin.MyPlugin"> <requires> <api version="1.0"/> </requires> <runtime> <library name="myplugin.jar"/> </runtime> </plugin>
For detailed information about the plugin descriptor, see Plugin descriptor.