SOFA 2.0 Editor - GUI Repository Designer for Eclipse



SOFA 2.0 repository editor v. 1.3.0 released. Changes »


SOFA 2.0 repository editor v. 1.0.149 released.


Work on the plug-in is started. History »


Compiling and installation

User's manual

Usage scenarios

Developer's manual

UML diagrams

Java docs

Author MaViNes (c)


OSGI Framework

Eclipse plugin basics

RCP basics

SWT draw basics

jFace tips

SWT Linux/Windows differences

Author MaViNes (c)

<< Previous | Table of contents | Next >>

Chapter 1 Structure of the plug-in

The core of the plug-in is located in the project named plugin.core. This project includes all main functionality of the plug-in and all configuration details for the plug-in deploying. The plug-in folder structure consists of the following:

Root folder/

This structure is used when the plug-in is being deployed and installed by the Eclipse IDE. The icons/ folder contains all icons, which are used in the project. The lib folder contains all jar libraries which are needed for the proper plug-in work. The META_INF/ folder contains just the file, which is the main file for the plug-in initialization. The plugin.xml file defines all extension points for the Eclipse UI contribution.

Class packages structure

The java class files are located in the bin/ folder. The package structure of the class files is the following:

org.objectweb.dsrg.sofa.repository.plugin - the root package of the plug-in. It contains the Activator.class file which is invoked when plug-in is initialized.

org.objectweb.dsrg.sofa.repository.plugin.actions - action commands for the repository related actions.

org.objectweb.dsrg.sofa.repository.plugin.cushion - the package which contains all cushion related implementations. This includes implementation of cushion graphic elements, cushion data handlers, cushion structure handlers, cushion listeners, container classes etc. - the package contains file to save changes made using the properties editor. The package is used for each data saving event.

org.objectweb.dsrg.sofa.repository.plugin.cushion.elements - cushion logic containers. They are used to keep all data, received from the adl files.

org.objectweb.dsrg.sofa.repository.plugin.handlers - structure handlers for the cushion data

org.objectweb.dsrg.sofa.repository.plugin.cushion.listeners - cushion related listeners, like rename listener for cushion graphic elements, moving listener, etc.

org.objectweb.dsrg.sofa.repository.plugin.cushion.queues - cushion queue of graphic elements.

org.objectweb.dsrg.sofa.repository.plugin.readers - cushion readers from the adl files.

org.objectweb.dsrg.sofa.repository.plugin.cushion.stubs - graphic elements, which represents cushion objects.

org.objectweb.dsrg.sofa.repository.plugin.cushion.utils - miscellaneous utility classes used to support cushion related part of the plug-in.

org.objectweb.dsrg.sofa.repository.plugin.editors - editors, which contributed to Eclipse's workbench. - java source code editor with syntax highlight.

org.objectweb.dsrg.sofa.repository.plugin.editors.xml - xml source code editor with syntax highlight.

org.objectweb.dsrg.sofa.repository.plugin.perspectives - perspectives used in the plug-in. Actually it is one SOFA 2.0 perspective.

org.objectweb.dsrg.sofa.repository.plugin.popup.actions - actions, which are invoked when Project Explorer context menu is called.

org.objectweb.dsrg.sofa.repository.plugin.views - contribution to the Eclipse's views.

org.objectweb.dsrg.sofa.repository.plugin.widgets - graphical elements which are used when it is needed to work directly with repository server.

org.objectweb.dsrg.sofa.repository.plugin.widgets.handlers - data handlers for logical part of repository widget representation.

org.objectweb.dsrg.sofa.repository.plugin.widgets.listeners - listeners which are listening to changes on the properties view or drawing area.

org.objectweb.dsrg.sofa.repository.plugin.widget.queues - queues with widget graphical elements and links.

org.objectweb.dsrg.sofa.repository.plugin.widget.utils - miscellaneous utility classes which are used to support the part of the plug-in which is related to the direct work with repository.

org.objectweb.dsrg.sofa.repository.plugin.wizards - wizards used in project (independently from purpose).

<< Previous | Table of contents | Next >>

Learn More