Migration

Migrate from oAW 4.1.2 to oAW 4.2

This chapter describes how to migrate between the various versions of oAW.

Migrate from oAW 4.1.2 to oAW 4.2

Here's what you need to do when migrating from oAW 4.1.2 to oAW 4.2:

Plugin-Dependencies

org.openarchitectureware.core.check has been merged with org.openarchitectureware.core.expressions. So this dependency can simply be removed. Remove plugin dependencies to all org.openarchitectureware.core.* plugins and add a dependency to the new org.openarchitectureware.dependencies plugin. This plugin bundles all dependent plugins and reexports these.

Xtext

Although we have many cool new features in Xtext from oAW 4.2, we needed to rework most of the API. This is a step by step migration tutorial. Please use the Xtext forum if you have any trouble migrating to the latest version.

Migrating the grammar

The grammar language has changed a bit.

  1. The 'Abstract' keyword has been removed. All you need to do is remove it from your grammar.
  2. The boolean assignment operator (prior it was '?') conflicted with the optional cardinality. So we changed it to '?='.

Migrating the core project

Within the main project the 'Extensions.ext' and 'Check.chk' files have been added. They replace the old '[langname]Checks.ch' resp. '[langname]Extensions.ext' files. You just have to copy and paste the content from the old files to the new ones. (start the generator once if you don't see the new files).

Migrating the editor

The editor project has some more changes:

  1. The ...Plugin class as well as the ...Editor class names start with a capital (rename them if necessary).
  2. The method getPlugin() in the ...Editor class is public now.
  3. The content of the [langname]EditorExtensions.ext has been separated into several files.
  4. The label() and image() extensions can be copy and pasted to EditorExtension.ext.
  5. The content assist logic is contained in ContentAssist.ext.

Although your old projects should work now it's recommended to read the updated Xtext reference documentation.