SoMoX Extractor
Overview
The SoMoX Extractor is an Eclipse-based tooling to extract an EMF-based G-AST representation of a software. It provides an extendible infrastructure to easily add
- new extraction plugins
- custom decorator models
- custom export plugins
- custom prepocessor plugins
Status
At the moment, the extractor is under development. The current status is available in the trunk of the Subversion system (See Installation section). If you are interested in more information or would like to bring in your personal thoughts or requirements, feel free to send an E-Mail to klatt(at)fzi.de
Extendible Workflow
The SoMoX Extractor makes use of the Palladio Workflow Engine and its capabilities for extendible workflows. The activity diagram below presents the main extractor workflow with the available workflow extensions and the related workflow ids.
The SoMoX Extractor provides abstract job classes for all of these workflow extension points that can be extended in a custom SoMoX Extractor plugin depending on the specific workflow type:
The basic workflow provided with the extractor core initializes the blackboard as well as the G-AST model and is able to build up the directory and generic file structure of the GAST model according to the provided source paths. Downstream extraction jobs are then able to read this information from the workflow blackboard.
Extractors
File System Extractor
JDT-Based Java Extractor
The SoMoX extractor provides an Eclipse JDT based java extractor out of the box. Further details of this extractor can be found on the according page: SoMoX Extractor / JDT-Based Java Extractor
Development
Source Code
The SoMoX extractor is available in the common svn of the palladio group. You can access the code itself at:
https://svnserver.informatik.kit.edu/i43/svn/code/SoMoXExtractor/trunk
Further resources required to build the SoMoX Extractor are:
- The Palladio Workflow Engine (we use the trunk at the moment):
https://svnserver.informatik.kit.edu/i43/svn/code/WorkflowEngine/trunk - The FZI GAST EMF Model:
svn://svn.forge.objectweb.org/svnroot/q-impress/qimpress-ide/trunk/metamodels/trunk
Coding Guideliness
We have a strong requirement to take care for coding guidelines as part of our quality ambition. To support applying the coding guidelines, we make use of the Checkstyle and Eclipse Formatter rules defined by the FZI SQools Project. These are defined ready to be imported into Eclipse and are available at:
http://svn.fzi.de/svn/sqools/commons/coding-conventions/