Developing in an existing OSGi framework is a good way to have structured plugins to develop with Java. Sometimes however, hierarchies and dependencies between bundles, packages, products, etc. can be quite cumbersome to visualize within Eclipse alone.
The OSGi model visualization is a first prototype of visualizing such connections within a custom OSGi model.
Note that currently no model generation or model data is included here yet.
The ECore model defining the OSGi model developed by Scheidt & Bachmann System Technik GmbH.
The default generated Eclipse edit functionality for the OSG model.
The default generated Eclipse editor for the OSG model.
The Visualization of the OSGi model within KLighD.
Installing the Model and Visualization
To install the current version of the visualization, you have to install new features in your Eclipse environment via the Help→Install new Software... Menu.
Select Add... and add a new update site to work with:
Name it something like Pragmatics OSGi nightly and continue.
In the list of available features, choose the following two features:
- KIELER Lightweight Diagrams → KIELER Lightweight Diagrams Generic Diagram View
- OSGi Model Visualization (the single equally named item in that category)
After installing the selected items and restarting Eclipse, it is ready to start visualizing an interactive view on your OSGi model files! To do that, open a .model file via rightclick → Open With → other... → Osgimodel Model Editor.
That view does not show much information at all, but it is necessary for the automatic diagram generation to work.
Next, open the Diagram view via the Quick Access menu or via the menu Window → Show View→ Other... → KIELER Lightweight Diagrams → Diagram.
In the top right of the diagram view, click on the down arrow and choose Syntheses → OsgiDiagramSynthesis.
Now, the diagram view shows the visualized model of the model opened in the editor. For browsing in the model it is recommended to pull the diagram widget to fullscreen to use the entire available screen space.
The provided plugins are not yet well tested and lack a lot of functionality. Furthermore, the code on the update site may change or even break during further development, whereas we try to keep this to a minimum.