Open API in version 15.0 and later versions has changed together with changes in the UML 2.1.2 (2.2) specification. You should read this chapter if you want to migrate your plugin created for earlier MagicDraw version. 

Thereby we made a cleaner UML metamodel implementation API after the UML specification has been updated. There are no big changes in Open API, so migration will not be a long and complicate task for you.

The changes that have been made to Open API are the following:

Removed deprecated method

Substitution

BaseElement.getProject()
Project.getProject(BaseElement)
MainFrame.getDialogParent()
MDDialogParentProvider.getProvider().getDialogParent()
MainFrame.setDialogParent(Frame)
MDDialogParentProvider.getProvider().setDialogParent(Frame)
ElementListProperty.setStereotype(Stereotype)
ElementListProperty.setSelectableRestrictedElements(Collection)
  • Changes in libraries jars have been made. Open API classes now are packaged into md_api.jar and md_common_api.jar (was md.jar and md_common.jar). If your plugin was using API classes from some program build-in plugin, a plugin jar is also renamed with a “ProgramInitials_api.jar” pattern.
  • Changes in package names for build-in plugins have been made. In earlier program versions, some build-in plugins exposed their Open API, for example, patterns, transformations, emf, and etc. We have changed a package name pattern. Earlier API versions used a com.nomagic.magicdraw.plugins.impl.** pattern, now these plugins are moved to com.nomagic.magicdraw.*.*, for example com.nomagic.magicdraw.patterns.*. A simple import statement change in your java source will solve this migration issue.
Related pages