OSATE 2 Plug-ins

From AadlWiki

Jump to: navigation, search

The analysis plug-in implementations are available at git://github.com/osate/osate2-plugins.

The implementation of the original Error Model Annex frontend is available at git://github.com/osate/error-model-v1. It is implemented using ANTLR and the Annex extension point interface to OSATE described in Sublanguage extensions.

We also have a prototype implementation of the Error Model V2 Annex utilizing Xtext, which in turn uses ANTLR. Please contact Peter Feiler for details.

For tutorial information on plug-in development please see OSATE Tool Developer#Plug-in Tutorials and http://www.aadl.info/aadl/currentsite/tool/index.html. Although this material is for OSATE 1.5, much of it still applies.

Two Types of Analysis Plug-ins

An analysis plug-in operates on the declarative model or the instance model. You will want to perform most analyses on the instance model.

When operating on the declarative model, the analysis can be included as an additional validation method in the EMF validation framework. This framework is used by Xtext and we have implemented the semantic check through it. Validation methods can be defined to be executed incrementally at the granularity of incremental parsing by Xtext, on save of the model, or by explicit invocation of the Validate command in the context menu.

The analysis can also be implemented using the EMF switch mechanism for AADL as it was available under OSATE 1.5. It is then invoked as a separate command in the tool bar or menu. The Model Statistics plug-in is implemented that way.

Analysis plug-ins operating on the instance model use the EMF switch mechanism for AADL as it was available under OSATE 1.5. The Model Statistics plug-in is implemented that way.

The plug-in development guide from OSATE 1.5 is available at http://www.aadl.info/aadl/currentsite/tool/index.html.

Additional information is available on the public AADL Wiki at OSATE Tool Developer.

Annex Plug-ins

Annex plug-ins provide front-end processing of annex-specific sublanguages. This was already supported under OSATE 1.5. Annex plug-ins can be implemented with your own parser and name resolution mechanisms or you can implement such a front-end via Xtext.

The original Error model Annex has been implemented via ANTLR and is available at git://github.com/osate/error-model-v1.

The Error Model V2 Annex is being prototyped using Xtext and its interface to OSATE V2 as a set of extension points is still being refined. Contact Peter Feiler is you are interested in seeing this prototype.

See Sublanguage extensions for a discussion of the extension points to support such plug-ins.

Plug-in Development Changes for OSATE V2

For information on changes and new methods available for plug-in development please see OSATE V2 Plugin Development

Personal tools