Papyrus Oxygen API Migration Guide
This document provides a guide to migrating applications that extend Papyrus to the new Oxygen version APIs.
API Evolution Report
An API Evolution Report is generated for "Neon to Oxygen" and it is available here: API Evolution Report
Following deprecated types have been removed:
|Deprectated Types||New Types|
ElementTypesConfiguration Metamodel Changes
The metamodel for the ElementTypesConfigurations has been changed to use model-based defintion of specialization relationships among elementtypes and advice ordering specification.
Although these changes don't change the underlying concepts of the elementtypesconfigurations and their extensions, they impact the
*.elementtypesconfigurations models created with this metamodel.
You'll find all the details of the changes below. A little developer tool has been developed to assist the migration in the
org.eclipse.papyrus.types.dev plugin (namely:
org.eclipse.papyrus.dev.types.handlers.MigrateSpecializations). Note that if there are specializations of elementtypes coming from multiple files, you must select all the files to migrate.
Migration of the NsURI
|Old Namespace URI||New Namespace URI|
Migration of the SpecializationTypeConfiguration
specializedTypesID attribute of
org.eclipse.papyrus.infra.types.SpecializationTypeConfiguration is now
specializedTypes. Instead of being a list of String-based identifiers of elementtypes, developers can now reference to the
org.eclipse.papyrus.infra.types.ElementTypeConfiguration to specialize at a model level directly.
Should the elementtype to reference be already defined using the extension point mechanism, developers may use an
org.eclipse.papyrus.infra.types.ExternallyRegisteredType to have a model element that is a "proxy" to the extension point definition.
Migration of the AdviceConfiguration
after attributes of
org.eclipse.papyrus.infra.types.AdviceConfiguration are now lists of
org.eclipse.papyrus.infra.types.AdviceConfiguration instead of being lists of String-based qualified names of Java classes implementing
org.eclipse.gmf.runtime.emf.type.core.edithelper.IEditHelperAdvice. Developers can now reference to the
org.eclipse.papyrus.infra.types.AdviceConfiguration to force advice execution order at a model level directly.
Should the advice to reference be already defined using the extension point mechanism, developers may use an
org.eclipse.papyrus.infra.types.ExternallyRegisteredAdvice to have a model element that is a "proxy" to the extension point definition.